From e7f6a4141b0f24d0adf1f6d405cbf32720df409e Mon Sep 17 00:00:00 2001 From: guozhengxin Date: Tue, 5 Sep 2023 17:51:56 +0800 Subject: [PATCH] update to v0.26.0 (cherry picked from commit 965909d4d75d6aae95e2e282f592b698f657034f) --- ...pdate-sys-and-net-to-support-loong64.patch | 156571 --------------- 0001-use-local-promu.patch | 25 + alertmanager.spec | 28 +- v0.21.0.tar.gz | Bin 5704209 -> 0 bytes v0.26.0.tar.gz | Bin 0 -> 2176877 bytes vendor.tar.gz | Bin 0 -> 5200923 bytes 6 files changed, 43 insertions(+), 156581 deletions(-) delete mode 100644 0001-update-sys-and-net-to-support-loong64.patch create mode 100644 0001-use-local-promu.patch delete mode 100644 v0.21.0.tar.gz create mode 100644 v0.26.0.tar.gz create mode 100644 vendor.tar.gz diff --git a/0001-update-sys-and-net-to-support-loong64.patch b/0001-update-sys-and-net-to-support-loong64.patch deleted file mode 100644 index 87796c7..0000000 --- a/0001-update-sys-and-net-to-support-loong64.patch +++ /dev/null @@ -1,156571 +0,0 @@ -From 1846835fb6a16e0d11d8a8eb1875869da1150529 Mon Sep 17 00:00:00 2001 -From: Wenlong Zhang -Date: Thu, 1 Jun 2023 03:35:53 +0000 -Subject: [PATCH] update sys and net to support loong64 - -go get -d golang.org/x/net@ca03788e71a2a44e572151b901183c887c0ff4e6 -go get -d golang.org/x/sys@27713097b9563e84e4e03a2ed9652ef9fe62263a -go mod tidy -go mod vendor ---- - go.mod | 3 +- - go.sum | 56 +- - vendor/golang.org/x/net/AUTHORS | 3 - - vendor/golang.org/x/net/CONTRIBUTORS | 3 - - vendor/golang.org/x/net/bpf/doc.go | 6 +- - .../golang.org/x/net/bpf/vm_instructions.go | 4 +- - .../golang.org/x/net/http/httpguts/httplex.go | 64 +- - vendor/golang.org/x/net/http2/Dockerfile | 2 +- - vendor/golang.org/x/net/http2/README | 20 - - vendor/golang.org/x/net/http2/ascii.go | 53 + - .../x/net/http2/client_conn_pool.go | 123 +- - vendor/golang.org/x/net/http2/errors.go | 14 +- - vendor/golang.org/x/net/http2/frame.go | 87 +- - vendor/golang.org/x/net/http2/go111.go | 1 + - vendor/golang.org/x/net/http2/go115.go | 27 + - vendor/golang.org/x/net/http2/go118.go | 17 + - vendor/golang.org/x/net/http2/headermap.go | 7 +- - vendor/golang.org/x/net/http2/hpack/encode.go | 2 +- - vendor/golang.org/x/net/http2/hpack/hpack.go | 16 +- - .../golang.org/x/net/http2/hpack/huffman.go | 125 +- - vendor/golang.org/x/net/http2/http2.go | 22 +- - vendor/golang.org/x/net/http2/not_go111.go | 1 + - vendor/golang.org/x/net/http2/not_go115.go | 31 + - vendor/golang.org/x/net/http2/not_go118.go | 17 + - vendor/golang.org/x/net/http2/pipe.go | 11 + - vendor/golang.org/x/net/http2/server.go | 354 +- - vendor/golang.org/x/net/http2/transport.go | 1726 ++-- - vendor/golang.org/x/net/http2/write.go | 7 +- - vendor/golang.org/x/net/http2/writesched.go | 4 +- - .../x/net/http2/writesched_priority.go | 9 +- - .../x/net/http2/writesched_random.go | 6 +- - vendor/golang.org/x/net/idna/go118.go | 14 + - vendor/golang.org/x/net/idna/idna10.0.0.go | 118 +- - vendor/golang.org/x/net/idna/idna9.0.0.go | 98 +- - vendor/golang.org/x/net/idna/pre_go118.go | 12 + - vendor/golang.org/x/net/idna/punycode.go | 36 +- - vendor/golang.org/x/net/idna/tables10.0.0.go | 1 + - vendor/golang.org/x/net/idna/tables11.0.0.go | 1 + - .../idna/{tables12.00.go => tables12.0.0.go} | 3 +- - vendor/golang.org/x/net/idna/tables13.0.0.go | 4840 ++++++++++ - vendor/golang.org/x/net/idna/tables9.0.0.go | 1 + - vendor/golang.org/x/net/idna/trieval.go | 34 +- - .../x/net/internal/socket/cmsghdr.go | 3 +- - .../x/net/internal/socket/cmsghdr_bsd.go | 1 + - .../internal/socket/cmsghdr_linux_32bit.go | 3 +- - .../internal/socket/cmsghdr_linux_64bit.go | 3 +- - .../internal/socket/cmsghdr_solaris_64bit.go | 4 +- - .../x/net/internal/socket/cmsghdr_stub.go | 17 +- - .../x/net/internal/socket/cmsghdr_unix.go | 22 + - .../net/internal/socket/cmsghdr_zos_s390x.go | 11 + - .../net/internal/socket/complete_dontwait.go | 26 + - .../internal/socket/complete_nodontwait.go | 22 + - .../golang.org/x/net/internal/socket/empty.s | 1 + - .../x/net/internal/socket/error_unix.go | 3 +- - .../x/net/internal/socket/iovec_32bit.go | 3 +- - .../x/net/internal/socket/iovec_64bit.go | 5 +- - .../internal/socket/iovec_solaris_64bit.go | 4 +- - .../x/net/internal/socket/iovec_stub.go | 3 +- - .../x/net/internal/socket/mmsghdr_stub.go | 1 + - .../x/net/internal/socket/mmsghdr_unix.go | 170 +- - .../x/net/internal/socket/msghdr_bsd.go | 1 + - .../x/net/internal/socket/msghdr_bsdvar.go | 1 + - .../x/net/internal/socket/msghdr_linux.go | 3 + - .../net/internal/socket/msghdr_linux_32bit.go | 3 +- - .../net/internal/socket/msghdr_linux_64bit.go | 3 +- - .../internal/socket/msghdr_solaris_64bit.go | 4 +- - .../x/net/internal/socket/msghdr_stub.go | 3 +- - .../x/net/internal/socket/msghdr_zos_s390x.go | 36 + - .../x/net/internal/socket/norace.go | 1 + - .../golang.org/x/net/internal/socket/race.go | 1 + - .../x/net/internal/socket/rawconn.go | 33 +- - .../x/net/internal/socket/rawconn_mmsg.go | 49 +- - .../x/net/internal/socket/rawconn_msg.go | 60 +- - .../x/net/internal/socket/rawconn_nommsg.go | 1 + - .../x/net/internal/socket/rawconn_nomsg.go | 3 +- - .../x/net/internal/socket/socket.go | 10 +- - .../golang.org/x/net/internal/socket/sys.go | 14 +- - .../x/net/internal/socket/sys_bsd.go | 3 +- - .../x/net/internal/socket/sys_bsdvar.go | 23 - - .../x/net/internal/socket/sys_const_unix.go | 6 +- - .../x/net/internal/socket/sys_dragonfly.go | 32 - - .../net/internal/socket/sys_go1_11_darwin.go | 33 - - .../x/net/internal/socket/sys_linkname.go | 42 - - .../x/net/internal/socket/sys_linux.go | 6 +- - .../x/net/internal/socket/sys_linux_386.go | 31 +- - .../net/internal/socket/sys_linux_loong64.go | 13 + - .../{sys_darwin.go => sys_linux_ppc.go} | 7 +- - .../net/internal/socket/sys_linux_riscv64.go | 1 + - .../x/net/internal/socket/sys_linux_s390x.go | 31 +- - .../x/net/internal/socket/sys_posix.go | 30 +- - .../x/net/internal/socket/sys_solaris.go | 70 - - .../x/net/internal/socket/sys_solaris_amd64.s | 11 - - .../x/net/internal/socket/sys_stub.go | 28 +- - .../x/net/internal/socket/sys_unix.go | 113 +- - .../x/net/internal/socket/sys_windows.go | 26 +- - .../x/net/internal/socket/sys_zos_s390x.go | 66 + - .../x/net/internal/socket/sys_zos_s390x.s | 11 + - .../x/net/internal/socket/zsys_aix_ppc64.go | 26 +- - .../x/net/internal/socket/zsys_darwin_386.go | 51 - - .../net/internal/socket/zsys_darwin_amd64.go | 25 +- - .../x/net/internal/socket/zsys_darwin_arm.go | 51 - - .../net/internal/socket/zsys_darwin_arm64.go | 25 +- - .../internal/socket/zsys_dragonfly_amd64.go | 25 +- - .../x/net/internal/socket/zsys_freebsd_386.go | 25 +- - .../net/internal/socket/zsys_freebsd_amd64.go | 25 +- - .../x/net/internal/socket/zsys_freebsd_arm.go | 25 +- - .../net/internal/socket/zsys_freebsd_arm64.go | 25 +- - .../internal/socket/zsys_freebsd_riscv64.go | 30 + - .../x/net/internal/socket/zsys_linux_386.go | 23 +- - .../x/net/internal/socket/zsys_linux_amd64.go | 23 +- - .../x/net/internal/socket/zsys_linux_arm.go | 20 - - .../x/net/internal/socket/zsys_linux_arm64.go | 20 - - .../net/internal/socket/zsys_linux_loong64.go | 40 + - .../x/net/internal/socket/zsys_linux_mips.go | 20 - - .../net/internal/socket/zsys_linux_mips64.go | 20 - - .../internal/socket/zsys_linux_mips64le.go | 20 - - .../net/internal/socket/zsys_linux_mipsle.go | 20 - - .../x/net/internal/socket/zsys_linux_ppc.go | 35 + - .../x/net/internal/socket/zsys_linux_ppc64.go | 20 - - .../net/internal/socket/zsys_linux_ppc64le.go | 20 - - .../net/internal/socket/zsys_linux_riscv64.go | 21 +- - .../x/net/internal/socket/zsys_linux_s390x.go | 20 - - .../x/net/internal/socket/zsys_netbsd_386.go | 22 - - .../net/internal/socket/zsys_netbsd_amd64.go | 22 - - .../x/net/internal/socket/zsys_netbsd_arm.go | 22 - - .../net/internal/socket/zsys_netbsd_arm64.go | 25 +- - .../x/net/internal/socket/zsys_openbsd_386.go | 25 +- - .../net/internal/socket/zsys_openbsd_amd64.go | 25 +- - .../x/net/internal/socket/zsys_openbsd_arm.go | 25 +- - .../net/internal/socket/zsys_openbsd_arm64.go | 25 +- - .../internal/socket/zsys_openbsd_mips64.go | 30 + - .../net/internal/socket/zsys_solaris_amd64.go | 24 +- - .../x/net/internal/socket/zsys_zos_s390x.go | 28 + - vendor/golang.org/x/net/ipv4/control_bsd.go | 7 +- - .../golang.org/x/net/ipv4/control_pktinfo.go | 5 +- - vendor/golang.org/x/net/ipv4/control_stub.go | 3 +- - vendor/golang.org/x/net/ipv4/control_unix.go | 5 +- - vendor/golang.org/x/net/ipv4/control_zos.go | 88 + - vendor/golang.org/x/net/ipv4/doc.go | 12 +- - vendor/golang.org/x/net/ipv4/header.go | 4 +- - vendor/golang.org/x/net/ipv4/icmp_stub.go | 1 + - vendor/golang.org/x/net/ipv4/payload_cmsg.go | 3 +- - .../golang.org/x/net/ipv4/payload_nocmsg.go | 3 +- - vendor/golang.org/x/net/ipv4/sockopt_posix.go | 3 +- - vendor/golang.org/x/net/ipv4/sockopt_stub.go | 3 +- - vendor/golang.org/x/net/ipv4/sys_aix.go | 34 +- - vendor/golang.org/x/net/ipv4/sys_asmreq.go | 1 + - .../golang.org/x/net/ipv4/sys_asmreq_stub.go | 1 + - vendor/golang.org/x/net/ipv4/sys_asmreqn.go | 9 +- - .../golang.org/x/net/ipv4/sys_asmreqn_stub.go | 1 + - vendor/golang.org/x/net/ipv4/sys_bpf.go | 1 + - vendor/golang.org/x/net/ipv4/sys_bpf_stub.go | 1 + - vendor/golang.org/x/net/ipv4/sys_bsd.go | 33 +- - vendor/golang.org/x/net/ipv4/sys_darwin.go | 46 +- - vendor/golang.org/x/net/ipv4/sys_dragonfly.go | 32 +- - vendor/golang.org/x/net/ipv4/sys_freebsd.go | 42 +- - vendor/golang.org/x/net/ipv4/sys_linux.go | 35 +- - vendor/golang.org/x/net/ipv4/sys_solaris.go | 36 +- - vendor/golang.org/x/net/ipv4/sys_ssmreq.go | 1 + - .../golang.org/x/net/ipv4/sys_ssmreq_stub.go | 1 + - vendor/golang.org/x/net/ipv4/sys_stub.go | 3 +- - vendor/golang.org/x/net/ipv4/sys_windows.go | 43 +- - vendor/golang.org/x/net/ipv4/sys_zos.go | 57 + - .../golang.org/x/net/ipv4/zsys_aix_ppc64.go | 18 +- - vendor/golang.org/x/net/ipv4/zsys_darwin.go | 40 - - .../golang.org/x/net/ipv4/zsys_dragonfly.go | 18 - - .../golang.org/x/net/ipv4/zsys_freebsd_386.go | 41 - - .../x/net/ipv4/zsys_freebsd_amd64.go | 41 - - .../golang.org/x/net/ipv4/zsys_freebsd_arm.go | 41 - - .../x/net/ipv4/zsys_freebsd_arm64.go | 41 - - .../x/net/ipv4/zsys_freebsd_riscv64.go | 52 + - .../golang.org/x/net/ipv4/zsys_linux_386.go | 58 - - .../golang.org/x/net/ipv4/zsys_linux_amd64.go | 58 - - .../golang.org/x/net/ipv4/zsys_linux_arm.go | 58 - - .../golang.org/x/net/ipv4/zsys_linux_arm64.go | 58 - - .../x/net/ipv4/zsys_linux_loong64.go | 77 + - .../golang.org/x/net/ipv4/zsys_linux_mips.go | 58 - - .../x/net/ipv4/zsys_linux_mips64.go | 58 - - .../x/net/ipv4/zsys_linux_mips64le.go | 58 - - .../x/net/ipv4/zsys_linux_mipsle.go | 58 - - .../golang.org/x/net/ipv4/zsys_linux_ppc.go | 58 - - .../golang.org/x/net/ipv4/zsys_linux_ppc64.go | 58 - - .../x/net/ipv4/zsys_linux_ppc64le.go | 58 - - .../x/net/ipv4/zsys_linux_riscv64.go | 59 +- - .../golang.org/x/net/ipv4/zsys_linux_s390x.go | 58 - - vendor/golang.org/x/net/ipv4/zsys_netbsd.go | 17 - - vendor/golang.org/x/net/ipv4/zsys_openbsd.go | 17 - - vendor/golang.org/x/net/ipv4/zsys_solaris.go | 43 - - .../golang.org/x/net/ipv4/zsys_zos_s390x.go | 56 + - .../x/net/ipv6/control_rfc2292_unix.go | 9 +- - .../x/net/ipv6/control_rfc3542_unix.go | 15 +- - vendor/golang.org/x/net/ipv6/control_stub.go | 3 +- - vendor/golang.org/x/net/ipv6/control_unix.go | 3 +- - vendor/golang.org/x/net/ipv6/doc.go | 12 +- - vendor/golang.org/x/net/ipv6/icmp_bsd.go | 1 + - vendor/golang.org/x/net/ipv6/icmp_stub.go | 3 +- - vendor/golang.org/x/net/ipv6/icmp_zos.go | 29 + - vendor/golang.org/x/net/ipv6/payload_cmsg.go | 3 +- - .../golang.org/x/net/ipv6/payload_nocmsg.go | 3 +- - vendor/golang.org/x/net/ipv6/sockopt_posix.go | 3 +- - vendor/golang.org/x/net/ipv6/sockopt_stub.go | 3 +- - vendor/golang.org/x/net/ipv6/sys_aix.go | 41 +- - vendor/golang.org/x/net/ipv6/sys_asmreq.go | 1 + - .../golang.org/x/net/ipv6/sys_asmreq_stub.go | 1 + - vendor/golang.org/x/net/ipv6/sys_bpf.go | 1 + - vendor/golang.org/x/net/ipv6/sys_bpf_stub.go | 1 + - vendor/golang.org/x/net/ipv6/sys_bsd.go | 41 +- - vendor/golang.org/x/net/ipv6/sys_darwin.go | 48 +- - vendor/golang.org/x/net/ipv6/sys_freebsd.go | 48 +- - vendor/golang.org/x/net/ipv6/sys_linux.go | 45 +- - vendor/golang.org/x/net/ipv6/sys_solaris.go | 48 +- - vendor/golang.org/x/net/ipv6/sys_ssmreq.go | 3 +- - .../golang.org/x/net/ipv6/sys_ssmreq_stub.go | 3 +- - vendor/golang.org/x/net/ipv6/sys_stub.go | 3 +- - vendor/golang.org/x/net/ipv6/sys_windows.go | 23 +- - vendor/golang.org/x/net/ipv6/sys_zos.go | 72 + - .../golang.org/x/net/ipv6/zsys_aix_ppc64.go | 36 +- - vendor/golang.org/x/net/ipv6/zsys_darwin.go | 67 - - .../golang.org/x/net/ipv6/zsys_dragonfly.go | 46 - - .../golang.org/x/net/ipv6/zsys_freebsd_386.go | 58 - - .../x/net/ipv6/zsys_freebsd_amd64.go | 58 - - .../golang.org/x/net/ipv6/zsys_freebsd_arm.go | 58 - - .../x/net/ipv6/zsys_freebsd_arm64.go | 58 - - .../x/net/ipv6/zsys_freebsd_riscv64.go | 64 + - .../golang.org/x/net/ipv6/zsys_linux_386.go | 80 - - .../golang.org/x/net/ipv6/zsys_linux_amd64.go | 80 - - .../golang.org/x/net/ipv6/zsys_linux_arm.go | 80 - - .../golang.org/x/net/ipv6/zsys_linux_arm64.go | 80 - - .../x/net/ipv6/zsys_linux_loong64.go | 77 + - .../golang.org/x/net/ipv6/zsys_linux_mips.go | 80 - - .../x/net/ipv6/zsys_linux_mips64.go | 80 - - .../x/net/ipv6/zsys_linux_mips64le.go | 80 - - .../x/net/ipv6/zsys_linux_mipsle.go | 80 - - .../golang.org/x/net/ipv6/zsys_linux_ppc.go | 80 - - .../golang.org/x/net/ipv6/zsys_linux_ppc64.go | 80 - - .../x/net/ipv6/zsys_linux_ppc64le.go | 80 - - .../x/net/ipv6/zsys_linux_riscv64.go | 81 +- - .../golang.org/x/net/ipv6/zsys_linux_s390x.go | 80 - - vendor/golang.org/x/net/ipv6/zsys_netbsd.go | 42 - - vendor/golang.org/x/net/ipv6/zsys_openbsd.go | 51 - - vendor/golang.org/x/net/ipv6/zsys_solaris.go | 68 - - .../golang.org/x/net/ipv6/zsys_zos_s390x.go | 62 + - vendor/golang.org/x/net/netutil/listen.go | 25 +- - vendor/golang.org/x/sys/AUTHORS | 3 - - vendor/golang.org/x/sys/CONTRIBUTORS | 3 - - .../sys/internal/unsafeheader/unsafeheader.go | 30 + - vendor/golang.org/x/sys/unix/README.md | 8 +- - vendor/golang.org/x/sys/unix/aliases.go | 3 +- - vendor/golang.org/x/sys/unix/asm_aix_ppc64.s | 3 +- - .../unix/{asm_freebsd_386.s => asm_bsd_386.s} | 12 +- - .../{asm_darwin_amd64.s => asm_bsd_amd64.s} | 10 +- - .../unix/{asm_freebsd_arm.s => asm_bsd_arm.s} | 10 +- - .../{asm_netbsd_amd64.s => asm_bsd_arm64.s} | 10 +- - ...{asm_openbsd_amd64.s => asm_bsd_riscv64.s} | 10 +- - vendor/golang.org/x/sys/unix/asm_darwin_386.s | 29 - - vendor/golang.org/x/sys/unix/asm_darwin_arm.s | 30 - - .../golang.org/x/sys/unix/asm_darwin_arm64.s | 30 - - .../x/sys/unix/asm_dragonfly_amd64.s | 29 - - .../golang.org/x/sys/unix/asm_freebsd_amd64.s | 29 - - .../golang.org/x/sys/unix/asm_freebsd_arm64.s | 29 - - vendor/golang.org/x/sys/unix/asm_linux_386.s | 3 +- - .../golang.org/x/sys/unix/asm_linux_amd64.s | 3 +- - vendor/golang.org/x/sys/unix/asm_linux_arm.s | 3 +- - .../golang.org/x/sys/unix/asm_linux_arm64.s | 3 +- - .../golang.org/x/sys/unix/asm_linux_loong64.s | 54 + - .../golang.org/x/sys/unix/asm_linux_mips64x.s | 3 +- - .../golang.org/x/sys/unix/asm_linux_mipsx.s | 3 +- - .../golang.org/x/sys/unix/asm_linux_ppc64x.s | 3 +- - .../golang.org/x/sys/unix/asm_linux_riscv64.s | 4 +- - .../golang.org/x/sys/unix/asm_linux_s390x.s | 5 +- - vendor/golang.org/x/sys/unix/asm_netbsd_386.s | 29 - - vendor/golang.org/x/sys/unix/asm_netbsd_arm.s | 29 - - .../golang.org/x/sys/unix/asm_netbsd_arm64.s | 29 - - .../golang.org/x/sys/unix/asm_openbsd_386.s | 29 - - .../golang.org/x/sys/unix/asm_openbsd_arm.s | 29 - - ...m_openbsd_arm64.s => asm_openbsd_mips64.s} | 5 +- - .../golang.org/x/sys/unix/asm_solaris_amd64.s | 3 +- - vendor/golang.org/x/sys/unix/asm_zos_s390x.s | 426 + - vendor/golang.org/x/sys/unix/cap_freebsd.go | 1 + - vendor/golang.org/x/sys/unix/constants.go | 3 +- - vendor/golang.org/x/sys/unix/dev_aix_ppc.go | 4 +- - vendor/golang.org/x/sys/unix/dev_aix_ppc64.go | 4 +- - vendor/golang.org/x/sys/unix/dev_zos.go | 29 + - vendor/golang.org/x/sys/unix/dirent.go | 1 + - vendor/golang.org/x/sys/unix/endian_big.go | 3 +- - vendor/golang.org/x/sys/unix/endian_little.go | 3 +- - vendor/golang.org/x/sys/unix/env_unix.go | 3 +- - vendor/golang.org/x/sys/unix/epoll_zos.go | 221 + - .../x/sys/unix/errors_freebsd_386.go | 233 - - .../x/sys/unix/errors_freebsd_amd64.go | 233 - - .../x/sys/unix/errors_freebsd_arm.go | 226 - - .../x/sys/unix/errors_freebsd_arm64.go | 17 - - vendor/golang.org/x/sys/unix/fcntl.go | 1 + - vendor/golang.org/x/sys/unix/fcntl_darwin.go | 6 + - .../x/sys/unix/fcntl_linux_32bit.go | 5 +- - vendor/golang.org/x/sys/unix/fdset.go | 3 +- - vendor/golang.org/x/sys/unix/fstatfs_zos.go | 164 + - vendor/golang.org/x/sys/unix/gccgo.go | 6 +- - vendor/golang.org/x/sys/unix/gccgo_c.c | 6 + - .../x/sys/unix/gccgo_linux_amd64.go | 1 + - vendor/golang.org/x/sys/unix/ifreq_linux.go | 142 + - vendor/golang.org/x/sys/unix/ioctl.go | 10 + - vendor/golang.org/x/sys/unix/ioctl_linux.go | 233 + - vendor/golang.org/x/sys/unix/ioctl_zos.go | 74 + - vendor/golang.org/x/sys/unix/mkall.sh | 62 +- - vendor/golang.org/x/sys/unix/mkerrors.sh | 98 +- - vendor/golang.org/x/sys/unix/pagesize_unix.go | 1 + - vendor/golang.org/x/sys/unix/ptrace_darwin.go | 12 + - vendor/golang.org/x/sys/unix/ptrace_ios.go | 12 + - vendor/golang.org/x/sys/unix/race.go | 1 + - vendor/golang.org/x/sys/unix/race0.go | 3 +- - .../x/sys/unix/readdirent_getdents.go | 1 + - .../x/sys/unix/readdirent_getdirentries.go | 1 + - .../golang.org/x/sys/unix/sockcmsg_linux.go | 49 + - vendor/golang.org/x/sys/unix/sockcmsg_unix.go | 3 +- - .../x/sys/unix/sockcmsg_unix_other.go | 13 +- - vendor/golang.org/x/sys/unix/str.go | 26 - - vendor/golang.org/x/sys/unix/syscall.go | 46 +- - vendor/golang.org/x/sys/unix/syscall_aix.go | 132 +- - .../golang.org/x/sys/unix/syscall_aix_ppc.go | 4 +- - .../x/sys/unix/syscall_aix_ppc64.go | 4 +- - vendor/golang.org/x/sys/unix/syscall_bsd.go | 146 +- - .../x/sys/unix/syscall_darwin.1_12.go | 5 +- - .../x/sys/unix/syscall_darwin.1_13.go | 27 +- - .../golang.org/x/sys/unix/syscall_darwin.go | 321 +- - .../x/sys/unix/syscall_darwin_386.1_11.go | 9 - - .../x/sys/unix/syscall_darwin_386.go | 68 - - .../x/sys/unix/syscall_darwin_amd64.1_11.go | 9 - - .../x/sys/unix/syscall_darwin_amd64.go | 23 +- - .../x/sys/unix/syscall_darwin_arm.1_11.go | 11 - - .../x/sys/unix/syscall_darwin_arm.go | 68 - - .../x/sys/unix/syscall_darwin_arm64.1_11.go | 11 - - .../x/sys/unix/syscall_darwin_arm64.go | 25 +- - .../x/sys/unix/syscall_darwin_libSystem.go | 10 +- - .../x/sys/unix/syscall_dragonfly.go | 59 +- - .../x/sys/unix/syscall_dragonfly_amd64.go | 1 + - .../golang.org/x/sys/unix/syscall_freebsd.go | 378 +- - .../x/sys/unix/syscall_freebsd_386.go | 7 +- - .../x/sys/unix/syscall_freebsd_amd64.go | 7 +- - .../x/sys/unix/syscall_freebsd_arm.go | 5 +- - .../x/sys/unix/syscall_freebsd_arm64.go | 5 +- - .../x/sys/unix/syscall_freebsd_riscv64.go | 63 + - .../golang.org/x/sys/unix/syscall_illumos.go | 146 +- - vendor/golang.org/x/sys/unix/syscall_linux.go | 734 +- - .../x/sys/unix/syscall_linux_386.go | 66 +- - .../x/sys/unix/syscall_linux_alarm.go | 14 + - .../x/sys/unix/syscall_linux_amd64.go | 59 +- - .../x/sys/unix/syscall_linux_amd64_gc.go | 4 +- - .../x/sys/unix/syscall_linux_arm.go | 65 +- - .../x/sys/unix/syscall_linux_arm64.go | 72 +- - .../golang.org/x/sys/unix/syscall_linux_gc.go | 3 +- - .../x/sys/unix/syscall_linux_gc_386.go | 3 +- - .../x/sys/unix/syscall_linux_gc_arm.go | 14 + - .../x/sys/unix/syscall_linux_gccgo_386.go | 1 + - .../x/sys/unix/syscall_linux_gccgo_arm.go | 1 + - .../x/sys/unix/syscall_linux_loong64.go | 222 + - .../x/sys/unix/syscall_linux_mips64x.go | 49 +- - .../x/sys/unix/syscall_linux_mipsx.go | 53 +- - .../x/sys/unix/syscall_linux_ppc.go | 232 + - .../x/sys/unix/syscall_linux_ppc64x.go | 48 +- - .../x/sys/unix/syscall_linux_riscv64.go | 62 +- - .../x/sys/unix/syscall_linux_s390x.go | 60 +- - .../x/sys/unix/syscall_linux_sparc64.go | 47 +- - .../golang.org/x/sys/unix/syscall_netbsd.go | 49 +- - .../x/sys/unix/syscall_netbsd_386.go | 1 + - .../x/sys/unix/syscall_netbsd_amd64.go | 1 + - .../x/sys/unix/syscall_netbsd_arm.go | 1 + - .../x/sys/unix/syscall_netbsd_arm64.go | 1 + - .../golang.org/x/sys/unix/syscall_openbsd.go | 40 +- - .../x/sys/unix/syscall_openbsd_386.go | 1 + - .../x/sys/unix/syscall_openbsd_amd64.go | 1 + - .../x/sys/unix/syscall_openbsd_arm.go | 1 + - .../x/sys/unix/syscall_openbsd_arm64.go | 1 + - .../x/sys/unix/syscall_openbsd_libc.go | 27 + - .../x/sys/unix/syscall_openbsd_mips64.go | 39 + - .../golang.org/x/sys/unix/syscall_solaris.go | 432 +- - .../x/sys/unix/syscall_solaris_amd64.go | 1 + - vendor/golang.org/x/sys/unix/syscall_unix.go | 143 +- - .../golang.org/x/sys/unix/syscall_unix_gc.go | 5 +- - .../x/sys/unix/syscall_unix_gc_ppc64x.go | 3 +- - .../x/sys/unix/syscall_zos_s390x.go | 1823 ++++ - vendor/golang.org/x/sys/unix/sysvshm_linux.go | 21 + - vendor/golang.org/x/sys/unix/sysvshm_unix.go | 61 + - .../x/sys/unix/sysvshm_unix_other.go | 14 + - vendor/golang.org/x/sys/unix/timestruct.go | 29 +- - vendor/golang.org/x/sys/unix/xattr_bsd.go | 1 + - .../golang.org/x/sys/unix/zerrors_aix_ppc.go | 1 + - .../x/sys/unix/zerrors_aix_ppc64.go | 1 + - .../x/sys/unix/zerrors_darwin_amd64.go | 3046 +++---- - .../x/sys/unix/zerrors_darwin_arm.go | 1784 ---- - .../x/sys/unix/zerrors_darwin_arm64.go | 3046 +++---- - .../x/sys/unix/zerrors_dragonfly_amd64.go | 139 +- - .../x/sys/unix/zerrors_freebsd_386.go | 125 +- - .../x/sys/unix/zerrors_freebsd_amd64.go | 123 +- - .../x/sys/unix/zerrors_freebsd_arm.go | 245 +- - .../x/sys/unix/zerrors_freebsd_arm64.go | 116 +- - .../x/sys/unix/zerrors_freebsd_riscv64.go | 2148 +++++ - vendor/golang.org/x/sys/unix/zerrors_linux.go | 1134 ++- - .../x/sys/unix/zerrors_linux_386.go | 48 +- - .../x/sys/unix/zerrors_linux_amd64.go | 48 +- - .../x/sys/unix/zerrors_linux_arm.go | 48 +- - .../x/sys/unix/zerrors_linux_arm64.go | 53 +- - .../x/sys/unix/zerrors_linux_loong64.go | 818 ++ - .../x/sys/unix/zerrors_linux_mips.go | 48 +- - .../x/sys/unix/zerrors_linux_mips64.go | 48 +- - .../x/sys/unix/zerrors_linux_mips64le.go | 48 +- - .../x/sys/unix/zerrors_linux_mipsle.go | 48 +- - .../x/sys/unix/zerrors_linux_ppc.go | 887 ++ - .../x/sys/unix/zerrors_linux_ppc64.go | 48 +- - .../x/sys/unix/zerrors_linux_ppc64le.go | 48 +- - .../x/sys/unix/zerrors_linux_riscv64.go | 48 +- - .../x/sys/unix/zerrors_linux_s390x.go | 50 +- - .../x/sys/unix/zerrors_linux_sparc64.go | 48 +- - .../x/sys/unix/zerrors_netbsd_386.go | 7 + - .../x/sys/unix/zerrors_netbsd_amd64.go | 7 + - .../x/sys/unix/zerrors_netbsd_arm.go | 7 + - .../x/sys/unix/zerrors_netbsd_arm64.go | 7 + - .../x/sys/unix/zerrors_openbsd_386.go | 11 + - .../x/sys/unix/zerrors_openbsd_amd64.go | 8 + - .../x/sys/unix/zerrors_openbsd_arm.go | 11 + - .../x/sys/unix/zerrors_openbsd_arm64.go | 8 + - ...arwin_386.go => zerrors_openbsd_mips64.go} | 1663 ++-- - .../x/sys/unix/zerrors_solaris_amd64.go | 26 +- - .../x/sys/unix/zerrors_zos_s390x.go | 860 ++ - .../x/sys/unix/zptrace_armnn_linux.go | 1 + - .../x/sys/unix/zptrace_mipsnn_linux.go | 1 + - .../x/sys/unix/zptrace_mipsnnle_linux.go | 1 + - .../x/sys/unix/zptrace_x86_linux.go | 1 + - .../golang.org/x/sys/unix/zsyscall_aix_ppc.go | 27 +- - .../x/sys/unix/zsyscall_aix_ppc64.go | 25 +- - .../x/sys/unix/zsyscall_aix_ppc64_gc.go | 24 +- - .../x/sys/unix/zsyscall_aix_ppc64_gccgo.go | 22 +- - .../x/sys/unix/zsyscall_darwin_386.1_11.go | 1811 ---- - .../x/sys/unix/zsyscall_darwin_386.1_13.go | 41 - - .../x/sys/unix/zsyscall_darwin_386.1_13.s | 12 - - .../x/sys/unix/zsyscall_darwin_386.go | 2499 ------ - .../x/sys/unix/zsyscall_darwin_386.s | 284 - - .../x/sys/unix/zsyscall_darwin_amd64.1_13.go | 11 +- - .../x/sys/unix/zsyscall_darwin_amd64.1_13.s | 21 +- - .../x/sys/unix/zsyscall_darwin_amd64.go | 948 +- - .../x/sys/unix/zsyscall_darwin_amd64.s | 893 +- - .../x/sys/unix/zsyscall_darwin_arm.1_11.go | 1784 ---- - .../x/sys/unix/zsyscall_darwin_arm.1_13.go | 41 - - .../x/sys/unix/zsyscall_darwin_arm.1_13.s | 12 - - .../x/sys/unix/zsyscall_darwin_arm.go | 2484 ------ - .../x/sys/unix/zsyscall_darwin_arm.s | 282 - - .../x/sys/unix/zsyscall_darwin_arm64.1_13.go | 11 +- - .../x/sys/unix/zsyscall_darwin_arm64.1_13.s | 21 +- - .../x/sys/unix/zsyscall_darwin_arm64.go | 933 +- - .../x/sys/unix/zsyscall_darwin_arm64.s | 891 +- - .../x/sys/unix/zsyscall_dragonfly_amd64.go | 45 +- - .../x/sys/unix/zsyscall_freebsd_386.go | 146 +- - .../x/sys/unix/zsyscall_freebsd_amd64.go | 144 +- - .../x/sys/unix/zsyscall_freebsd_arm.go | 178 +- - .../x/sys/unix/zsyscall_freebsd_arm64.go | 144 +- - ...64.1_11.go => zsyscall_freebsd_riscv64.go} | 558 +- - .../x/sys/unix/zsyscall_illumos_amd64.go | 43 +- - .../golang.org/x/sys/unix/zsyscall_linux.go | 336 +- - .../x/sys/unix/zsyscall_linux_386.go | 95 +- - .../x/sys/unix/zsyscall_linux_amd64.go | 129 +- - .../x/sys/unix/zsyscall_linux_arm.go | 109 +- - .../x/sys/unix/zsyscall_linux_arm64.go | 71 +- - .../x/sys/unix/zsyscall_linux_loong64.go | 487 ++ - .../x/sys/unix/zsyscall_linux_mips.go | 108 +- - .../x/sys/unix/zsyscall_linux_mips64.go | 85 +- - .../x/sys/unix/zsyscall_linux_mips64le.go | 88 +- - .../x/sys/unix/zsyscall_linux_mipsle.go | 108 +- - .../x/sys/unix/zsyscall_linux_ppc.go | 669 ++ - .../x/sys/unix/zsyscall_linux_ppc64.go | 122 +- - .../x/sys/unix/zsyscall_linux_ppc64le.go | 122 +- - .../x/sys/unix/zsyscall_linux_riscv64.go | 67 +- - .../x/sys/unix/zsyscall_linux_s390x.go | 99 +- - .../x/sys/unix/zsyscall_linux_sparc64.go | 95 +- - .../x/sys/unix/zsyscall_netbsd_386.go | 11 +- - .../x/sys/unix/zsyscall_netbsd_amd64.go | 11 +- - .../x/sys/unix/zsyscall_netbsd_arm.go | 11 +- - .../x/sys/unix/zsyscall_netbsd_arm64.go | 11 +- - .../x/sys/unix/zsyscall_openbsd_386.go | 803 +- - .../x/sys/unix/zsyscall_openbsd_386.s | 796 ++ - .../x/sys/unix/zsyscall_openbsd_amd64.go | 803 +- - .../x/sys/unix/zsyscall_openbsd_amd64.s | 796 ++ - .../x/sys/unix/zsyscall_openbsd_arm.go | 803 +- - .../x/sys/unix/zsyscall_openbsd_arm.s | 796 ++ - .../x/sys/unix/zsyscall_openbsd_arm64.go | 803 +- - .../x/sys/unix/zsyscall_openbsd_arm64.s | 796 ++ - ...m64.1_11.go => zsyscall_openbsd_mips64.go} | 519 +- - .../x/sys/unix/zsyscall_solaris_amd64.go | 135 +- - .../x/sys/unix/zsyscall_zos_s390x.go | 1255 +++ - .../x/sys/unix/zsysctl_openbsd_386.go | 4 +- - .../x/sys/unix/zsysctl_openbsd_amd64.go | 2 + - .../x/sys/unix/zsysctl_openbsd_arm.go | 2 + - .../x/sys/unix/zsysctl_openbsd_arm64.go | 1 + - .../x/sys/unix/zsysctl_openbsd_mips64.go | 280 + - .../x/sys/unix/zsysnum_darwin_386.go | 436 - - .../x/sys/unix/zsysnum_darwin_amd64.go | 2 + - .../x/sys/unix/zsysnum_darwin_arm.go | 436 - - .../x/sys/unix/zsysnum_darwin_arm64.go | 2 + - .../x/sys/unix/zsysnum_dragonfly_amd64.go | 256 +- - .../x/sys/unix/zsysnum_freebsd_386.go | 108 +- - .../x/sys/unix/zsysnum_freebsd_amd64.go | 108 +- - .../x/sys/unix/zsysnum_freebsd_arm.go | 108 +- - .../x/sys/unix/zsysnum_freebsd_arm64.go | 108 +- - .../x/sys/unix/zsysnum_freebsd_riscv64.go | 394 + - .../x/sys/unix/zsysnum_linux_386.go | 16 +- - .../x/sys/unix/zsysnum_linux_amd64.go | 714 +- - .../x/sys/unix/zsysnum_linux_arm.go | 16 +- - .../x/sys/unix/zsysnum_linux_arm64.go | 604 +- - .../x/sys/unix/zsysnum_linux_loong64.go | 311 + - .../x/sys/unix/zsysnum_linux_mips.go | 15 +- - .../x/sys/unix/zsysnum_linux_mips64.go | 699 +- - .../x/sys/unix/zsysnum_linux_mips64le.go | 699 +- - .../x/sys/unix/zsysnum_linux_mipsle.go | 15 +- - .../x/sys/unix/zsysnum_linux_ppc.go | 441 + - .../x/sys/unix/zsysnum_linux_ppc64.go | 797 +- - .../x/sys/unix/zsysnum_linux_ppc64le.go | 797 +- - .../x/sys/unix/zsysnum_linux_riscv64.go | 602 +- - .../x/sys/unix/zsysnum_linux_s390x.go | 727 +- - .../x/sys/unix/zsysnum_linux_sparc64.go | 755 +- - .../x/sys/unix/zsysnum_netbsd_386.go | 1 + - .../x/sys/unix/zsysnum_netbsd_amd64.go | 1 + - .../x/sys/unix/zsysnum_netbsd_arm.go | 1 + - .../x/sys/unix/zsysnum_netbsd_arm64.go | 1 + - .../x/sys/unix/zsysnum_openbsd_386.go | 2 + - .../x/sys/unix/zsysnum_openbsd_amd64.go | 2 + - .../x/sys/unix/zsysnum_openbsd_arm.go | 2 + - .../x/sys/unix/zsysnum_openbsd_arm64.go | 2 + - .../x/sys/unix/zsysnum_openbsd_mips64.go | 221 + - .../x/sys/unix/zsysnum_zos_s390x.go | 2670 ++++++ - .../golang.org/x/sys/unix/ztypes_aix_ppc.go | 2 + - .../golang.org/x/sys/unix/ztypes_aix_ppc64.go | 2 + - .../x/sys/unix/ztypes_darwin_386.go | 499 -- - .../x/sys/unix/ztypes_darwin_amd64.go | 346 +- - .../x/sys/unix/ztypes_darwin_arm.go | 500 -- - .../x/sys/unix/ztypes_darwin_arm64.go | 346 +- - .../x/sys/unix/ztypes_dragonfly_amd64.go | 51 +- - .../x/sys/unix/ztypes_freebsd_386.go | 132 +- - .../x/sys/unix/ztypes_freebsd_amd64.go | 130 +- - .../x/sys/unix/ztypes_freebsd_arm.go | 185 +- - .../x/sys/unix/ztypes_freebsd_arm64.go | 128 +- - .../x/sys/unix/ztypes_freebsd_riscv64.go | 638 ++ - .../x/sys/unix/ztypes_illumos_amd64.go | 42 + - vendor/golang.org/x/sys/unix/ztypes_linux.go | 4413 ++++++++-- - .../golang.org/x/sys/unix/ztypes_linux_386.go | 99 +- - .../x/sys/unix/ztypes_linux_amd64.go | 99 +- - .../golang.org/x/sys/unix/ztypes_linux_arm.go | 102 +- - .../x/sys/unix/ztypes_linux_arm64.go | 99 +- - .../x/sys/unix/ztypes_linux_loong64.go | 685 ++ - .../x/sys/unix/ztypes_linux_mips.go | 101 +- - .../x/sys/unix/ztypes_linux_mips64.go | 99 +- - .../x/sys/unix/ztypes_linux_mips64le.go | 99 +- - .../x/sys/unix/ztypes_linux_mipsle.go | 101 +- - .../golang.org/x/sys/unix/ztypes_linux_ppc.go | 698 ++ - .../x/sys/unix/ztypes_linux_ppc64.go | 98 +- - .../x/sys/unix/ztypes_linux_ppc64le.go | 98 +- - .../x/sys/unix/ztypes_linux_riscv64.go | 99 +- - .../x/sys/unix/ztypes_linux_s390x.go | 102 +- - .../x/sys/unix/ztypes_linux_sparc64.go | 98 +- - .../x/sys/unix/ztypes_netbsd_386.go | 6 +- - .../x/sys/unix/ztypes_netbsd_amd64.go | 6 +- - .../x/sys/unix/ztypes_netbsd_arm.go | 6 +- - .../x/sys/unix/ztypes_netbsd_arm64.go | 6 +- - .../x/sys/unix/ztypes_openbsd_386.go | 25 +- - .../x/sys/unix/ztypes_openbsd_amd64.go | 25 +- - .../x/sys/unix/ztypes_openbsd_arm.go | 25 +- - .../x/sys/unix/ztypes_openbsd_arm64.go | 25 +- - .../x/sys/unix/ztypes_openbsd_mips64.go | 568 ++ - .../x/sys/unix/ztypes_solaris_amd64.go | 75 +- - .../golang.org/x/sys/unix/ztypes_zos_s390x.go | 406 + - vendor/golang.org/x/sys/windows/aliases.go | 4 +- - .../golang.org/x/sys/windows/dll_windows.go | 32 +- - vendor/golang.org/x/sys/windows/empty.s | 1 + - .../golang.org/x/sys/windows/env_windows.go | 11 +- - vendor/golang.org/x/sys/windows/eventlog.go | 1 + - .../golang.org/x/sys/windows/exec_windows.go | 91 +- - .../x/sys/windows/memory_windows.go | 36 +- - vendor/golang.org/x/sys/windows/mkerrors.bash | 7 + - vendor/golang.org/x/sys/windows/mksyscall.go | 3 +- - vendor/golang.org/x/sys/windows/race.go | 1 + - vendor/golang.org/x/sys/windows/race0.go | 1 + - .../x/sys/windows/security_windows.go | 60 +- - vendor/golang.org/x/sys/windows/service.go | 22 +- - .../x/sys/windows/setupapi_windows.go | 1425 +++ - vendor/golang.org/x/sys/windows/str.go | 1 + - vendor/golang.org/x/sys/windows/syscall.go | 47 +- - .../x/sys/windows/syscall_windows.go | 488 +- - .../golang.org/x/sys/windows/types_windows.go | 1541 +++- - .../x/sys/windows/types_windows_386.go | 13 + - .../x/sys/windows/types_windows_amd64.go | 12 + - .../x/sys/windows/types_windows_arm.go | 13 + - .../x/sys/windows/types_windows_arm64.go | 34 + - .../x/sys/windows/zerrors_windows.go | 2619 +++++- - .../x/sys/windows/zsyscall_windows.go | 5459 ++++++------ - .../x/text/secure/bidirule/bidirule10.0.0.go | 1 + - .../x/text/secure/bidirule/bidirule9.0.0.go | 1 + - .../golang.org/x/text/transform/transform.go | 6 +- - vendor/golang.org/x/text/unicode/bidi/bidi.go | 221 +- - vendor/golang.org/x/text/unicode/bidi/core.go | 71 +- - .../x/text/unicode/bidi/tables10.0.0.go | 1 + - .../x/text/unicode/bidi/tables11.0.0.go | 3 +- - .../x/text/unicode/bidi/tables12.0.0.go | 1924 ++++ - .../x/text/unicode/bidi/tables13.0.0.go | 1956 +++++ - .../x/text/unicode/bidi/tables9.0.0.go | 1 + - .../x/text/unicode/norm/tables10.0.0.go | 1 + - .../x/text/unicode/norm/tables11.0.0.go | 3 +- - .../x/text/unicode/norm/tables12.0.0.go | 7711 ++++++++++++++++ - .../x/text/unicode/norm/tables13.0.0.go | 7761 +++++++++++++++++ - .../x/text/unicode/norm/tables9.0.0.go | 1 + - .../golang.org/x/text/width/tables10.0.0.go | 1 + - .../golang.org/x/text/width/tables11.0.0.go | 3 +- - .../golang.org/x/text/width/tables12.0.0.go | 1351 +++ - .../golang.org/x/text/width/tables13.0.0.go | 1352 +++ - vendor/golang.org/x/text/width/tables9.0.0.go | 1 + - vendor/modules.txt | 8 +- - 613 files changed, 86556 insertions(+), 36719 deletions(-) - delete mode 100644 vendor/golang.org/x/net/AUTHORS - delete mode 100644 vendor/golang.org/x/net/CONTRIBUTORS - delete mode 100644 vendor/golang.org/x/net/http2/README - create mode 100644 vendor/golang.org/x/net/http2/ascii.go - create mode 100644 vendor/golang.org/x/net/http2/go115.go - create mode 100644 vendor/golang.org/x/net/http2/go118.go - create mode 100644 vendor/golang.org/x/net/http2/not_go115.go - create mode 100644 vendor/golang.org/x/net/http2/not_go118.go - create mode 100644 vendor/golang.org/x/net/idna/go118.go - create mode 100644 vendor/golang.org/x/net/idna/pre_go118.go - rename vendor/golang.org/x/net/idna/{tables12.00.go => tables12.0.0.go} (99%) - create mode 100644 vendor/golang.org/x/net/idna/tables13.0.0.go - create mode 100644 vendor/golang.org/x/net/internal/socket/cmsghdr_unix.go - create mode 100644 vendor/golang.org/x/net/internal/socket/cmsghdr_zos_s390x.go - create mode 100644 vendor/golang.org/x/net/internal/socket/complete_dontwait.go - create mode 100644 vendor/golang.org/x/net/internal/socket/complete_nodontwait.go - create mode 100644 vendor/golang.org/x/net/internal/socket/msghdr_zos_s390x.go - delete mode 100644 vendor/golang.org/x/net/internal/socket/sys_bsdvar.go - delete mode 100644 vendor/golang.org/x/net/internal/socket/sys_dragonfly.go - delete mode 100644 vendor/golang.org/x/net/internal/socket/sys_go1_11_darwin.go - delete mode 100644 vendor/golang.org/x/net/internal/socket/sys_linkname.go - create mode 100644 vendor/golang.org/x/net/internal/socket/sys_linux_loong64.go - rename vendor/golang.org/x/net/internal/socket/{sys_darwin.go => sys_linux_ppc.go} (53%) - delete mode 100644 vendor/golang.org/x/net/internal/socket/sys_solaris.go - delete mode 100644 vendor/golang.org/x/net/internal/socket/sys_solaris_amd64.s - create mode 100644 vendor/golang.org/x/net/internal/socket/sys_zos_s390x.go - create mode 100644 vendor/golang.org/x/net/internal/socket/sys_zos_s390x.s - delete mode 100644 vendor/golang.org/x/net/internal/socket/zsys_darwin_386.go - delete mode 100644 vendor/golang.org/x/net/internal/socket/zsys_darwin_arm.go - create mode 100644 vendor/golang.org/x/net/internal/socket/zsys_freebsd_riscv64.go - create mode 100644 vendor/golang.org/x/net/internal/socket/zsys_linux_loong64.go - create mode 100644 vendor/golang.org/x/net/internal/socket/zsys_linux_ppc.go - create mode 100644 vendor/golang.org/x/net/internal/socket/zsys_openbsd_mips64.go - create mode 100644 vendor/golang.org/x/net/internal/socket/zsys_zos_s390x.go - create mode 100644 vendor/golang.org/x/net/ipv4/control_zos.go - create mode 100644 vendor/golang.org/x/net/ipv4/sys_zos.go - create mode 100644 vendor/golang.org/x/net/ipv4/zsys_freebsd_riscv64.go - create mode 100644 vendor/golang.org/x/net/ipv4/zsys_linux_loong64.go - create mode 100644 vendor/golang.org/x/net/ipv4/zsys_zos_s390x.go - create mode 100644 vendor/golang.org/x/net/ipv6/icmp_zos.go - create mode 100644 vendor/golang.org/x/net/ipv6/sys_zos.go - create mode 100644 vendor/golang.org/x/net/ipv6/zsys_freebsd_riscv64.go - create mode 100644 vendor/golang.org/x/net/ipv6/zsys_linux_loong64.go - create mode 100644 vendor/golang.org/x/net/ipv6/zsys_zos_s390x.go - delete mode 100644 vendor/golang.org/x/sys/AUTHORS - delete mode 100644 vendor/golang.org/x/sys/CONTRIBUTORS - create mode 100644 vendor/golang.org/x/sys/internal/unsafeheader/unsafeheader.go - rename vendor/golang.org/x/sys/unix/{asm_freebsd_386.s => asm_bsd_386.s} (70%) - rename vendor/golang.org/x/sys/unix/{asm_darwin_amd64.s => asm_bsd_amd64.s} (71%) - rename vendor/golang.org/x/sys/unix/{asm_freebsd_arm.s => asm_bsd_arm.s} (74%) - rename vendor/golang.org/x/sys/unix/{asm_netbsd_amd64.s => asm_bsd_arm64.s} (73%) - rename vendor/golang.org/x/sys/unix/{asm_openbsd_amd64.s => asm_bsd_riscv64.s} (73%) - delete mode 100644 vendor/golang.org/x/sys/unix/asm_darwin_386.s - delete mode 100644 vendor/golang.org/x/sys/unix/asm_darwin_arm.s - delete mode 100644 vendor/golang.org/x/sys/unix/asm_darwin_arm64.s - delete mode 100644 vendor/golang.org/x/sys/unix/asm_dragonfly_amd64.s - delete mode 100644 vendor/golang.org/x/sys/unix/asm_freebsd_amd64.s - delete mode 100644 vendor/golang.org/x/sys/unix/asm_freebsd_arm64.s - create mode 100644 vendor/golang.org/x/sys/unix/asm_linux_loong64.s - delete mode 100644 vendor/golang.org/x/sys/unix/asm_netbsd_386.s - delete mode 100644 vendor/golang.org/x/sys/unix/asm_netbsd_arm.s - delete mode 100644 vendor/golang.org/x/sys/unix/asm_netbsd_arm64.s - delete mode 100644 vendor/golang.org/x/sys/unix/asm_openbsd_386.s - delete mode 100644 vendor/golang.org/x/sys/unix/asm_openbsd_arm.s - rename vendor/golang.org/x/sys/unix/{asm_openbsd_arm64.s => asm_openbsd_mips64.s} (89%) - create mode 100644 vendor/golang.org/x/sys/unix/asm_zos_s390x.s - create mode 100644 vendor/golang.org/x/sys/unix/dev_zos.go - create mode 100644 vendor/golang.org/x/sys/unix/epoll_zos.go - delete mode 100644 vendor/golang.org/x/sys/unix/errors_freebsd_386.go - delete mode 100644 vendor/golang.org/x/sys/unix/errors_freebsd_amd64.go - delete mode 100644 vendor/golang.org/x/sys/unix/errors_freebsd_arm.go - delete mode 100644 vendor/golang.org/x/sys/unix/errors_freebsd_arm64.go - create mode 100644 vendor/golang.org/x/sys/unix/fstatfs_zos.go - create mode 100644 vendor/golang.org/x/sys/unix/ifreq_linux.go - create mode 100644 vendor/golang.org/x/sys/unix/ioctl_linux.go - create mode 100644 vendor/golang.org/x/sys/unix/ioctl_zos.go - create mode 100644 vendor/golang.org/x/sys/unix/ptrace_darwin.go - create mode 100644 vendor/golang.org/x/sys/unix/ptrace_ios.go - delete mode 100644 vendor/golang.org/x/sys/unix/str.go - delete mode 100644 vendor/golang.org/x/sys/unix/syscall_darwin_386.1_11.go - delete mode 100644 vendor/golang.org/x/sys/unix/syscall_darwin_386.go - delete mode 100644 vendor/golang.org/x/sys/unix/syscall_darwin_amd64.1_11.go - delete mode 100644 vendor/golang.org/x/sys/unix/syscall_darwin_arm.1_11.go - delete mode 100644 vendor/golang.org/x/sys/unix/syscall_darwin_arm.go - delete mode 100644 vendor/golang.org/x/sys/unix/syscall_darwin_arm64.1_11.go - create mode 100644 vendor/golang.org/x/sys/unix/syscall_freebsd_riscv64.go - create mode 100644 vendor/golang.org/x/sys/unix/syscall_linux_alarm.go - create mode 100644 vendor/golang.org/x/sys/unix/syscall_linux_gc_arm.go - create mode 100644 vendor/golang.org/x/sys/unix/syscall_linux_loong64.go - create mode 100644 vendor/golang.org/x/sys/unix/syscall_linux_ppc.go - create mode 100644 vendor/golang.org/x/sys/unix/syscall_openbsd_libc.go - create mode 100644 vendor/golang.org/x/sys/unix/syscall_openbsd_mips64.go - create mode 100644 vendor/golang.org/x/sys/unix/syscall_zos_s390x.go - create mode 100644 vendor/golang.org/x/sys/unix/sysvshm_linux.go - create mode 100644 vendor/golang.org/x/sys/unix/sysvshm_unix.go - create mode 100644 vendor/golang.org/x/sys/unix/sysvshm_unix_other.go - delete mode 100644 vendor/golang.org/x/sys/unix/zerrors_darwin_arm.go - create mode 100644 vendor/golang.org/x/sys/unix/zerrors_freebsd_riscv64.go - create mode 100644 vendor/golang.org/x/sys/unix/zerrors_linux_loong64.go - create mode 100644 vendor/golang.org/x/sys/unix/zerrors_linux_ppc.go - rename vendor/golang.org/x/sys/unix/{zerrors_darwin_386.go => zerrors_openbsd_mips64.go} (52%) - create mode 100644 vendor/golang.org/x/sys/unix/zerrors_zos_s390x.go - delete mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_11.go - delete mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.go - delete mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.s - delete mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go - delete mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_386.s - delete mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_11.go - delete mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.go - delete mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.s - delete mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go - delete mode 100644 vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.s - rename vendor/golang.org/x/sys/unix/{zsyscall_darwin_amd64.1_11.go => zsyscall_freebsd_riscv64.go} (82%) - create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_linux_loong64.go - create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_linux_ppc.go - create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.s - create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.s - create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.s - create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.s - rename vendor/golang.org/x/sys/unix/{zsyscall_darwin_arm64.1_11.go => zsyscall_openbsd_mips64.go} (85%) - create mode 100644 vendor/golang.org/x/sys/unix/zsyscall_zos_s390x.go - create mode 100644 vendor/golang.org/x/sys/unix/zsysctl_openbsd_mips64.go - delete mode 100644 vendor/golang.org/x/sys/unix/zsysnum_darwin_386.go - delete mode 100644 vendor/golang.org/x/sys/unix/zsysnum_darwin_arm.go - create mode 100644 vendor/golang.org/x/sys/unix/zsysnum_freebsd_riscv64.go - create mode 100644 vendor/golang.org/x/sys/unix/zsysnum_linux_loong64.go - create mode 100644 vendor/golang.org/x/sys/unix/zsysnum_linux_ppc.go - create mode 100644 vendor/golang.org/x/sys/unix/zsysnum_openbsd_mips64.go - create mode 100644 vendor/golang.org/x/sys/unix/zsysnum_zos_s390x.go - delete mode 100644 vendor/golang.org/x/sys/unix/ztypes_darwin_386.go - delete mode 100644 vendor/golang.org/x/sys/unix/ztypes_darwin_arm.go - create mode 100644 vendor/golang.org/x/sys/unix/ztypes_freebsd_riscv64.go - create mode 100644 vendor/golang.org/x/sys/unix/ztypes_illumos_amd64.go - create mode 100644 vendor/golang.org/x/sys/unix/ztypes_linux_loong64.go - create mode 100644 vendor/golang.org/x/sys/unix/ztypes_linux_ppc.go - create mode 100644 vendor/golang.org/x/sys/unix/ztypes_openbsd_mips64.go - create mode 100644 vendor/golang.org/x/sys/unix/ztypes_zos_s390x.go - create mode 100644 vendor/golang.org/x/sys/windows/setupapi_windows.go - create mode 100644 vendor/golang.org/x/sys/windows/types_windows_arm64.go - create mode 100644 vendor/golang.org/x/text/unicode/bidi/tables12.0.0.go - create mode 100644 vendor/golang.org/x/text/unicode/bidi/tables13.0.0.go - create mode 100644 vendor/golang.org/x/text/unicode/norm/tables12.0.0.go - create mode 100644 vendor/golang.org/x/text/unicode/norm/tables13.0.0.go - create mode 100644 vendor/golang.org/x/text/width/tables12.0.0.go - create mode 100644 vendor/golang.org/x/text/width/tables13.0.0.go - -diff --git a/go.mod b/go.mod -index e86ed58..e57c24e 100644 ---- a/go.mod -+++ b/go.mod -@@ -29,7 +29,8 @@ require ( - github.com/shurcooL/vfsgen v0.0.0-20181202132449-6a9ea43bcacd - github.com/stretchr/testify v1.5.1 - github.com/xlab/treeprint v1.0.0 -- golang.org/x/net v0.0.0-20200513185701-a91f0712d120 -+ golang.org/x/net v0.0.0-20220919225225-ca03788e71a2 -+ golang.org/x/sys v0.0.0-20220908164124-27713097b956 // indirect - golang.org/x/tools v0.0.0-20200513201620-d5fe73897c97 - gopkg.in/alecthomas/kingpin.v2 v2.2.6 - gopkg.in/yaml.v2 v2.3.0 -diff --git a/go.sum b/go.sum -index 84f99c0..6c8847b 100644 ---- a/go.sum -+++ b/go.sum -@@ -29,7 +29,6 @@ github.com/armon/go-metrics v0.0.0-20180917152333-f0300d1749da/go.mod h1:Q73ZrmV - github.com/armon/go-radix v0.0.0-20180808171621-7fddfc383310/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8= - github.com/aryann/difflib v0.0.0-20170710044230-e206f873d14a/go.mod h1:DAHtR1m6lCRdSC2Tm3DSWRPvIPr6xNKyeHdqDQSQT+A= - github.com/asaskevich/govalidator v0.0.0-20180720115003-f9ffefc3facf/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY= --github.com/asaskevich/govalidator v0.0.0-20190424111038-f61b66f89f4a h1:idn718Q4B6AGu/h5Sxe66HYVdqdGu2l9Iebqhi/AEoA= - github.com/asaskevich/govalidator v0.0.0-20190424111038-f61b66f89f4a/go.mod h1:lB+ZfQJz7igIIfQNfa7Ml4HSf2uFQQRzpGGRXenZAgY= - github.com/asaskevich/govalidator v0.0.0-20200108200545-475eaeb16496 h1:zV3ejI06GQ59hwDQAvmK1qxOQGB3WuVTRoY0okPTAv0= - github.com/asaskevich/govalidator v0.0.0-20200108200545-475eaeb16496/go.mod h1:oGkLhpf+kjZl6xBf758TQhh5XrAeiJv/7FRz/2spLIg= -@@ -83,19 +82,16 @@ github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeME - github.com/globalsign/mgo v0.0.0-20180905125535-1ca0a4f7cbcb/go.mod h1:xkRDCp4j0OGD1HRkm4kmhM+pmpv3AKq5SU7GMg4oO/Q= - github.com/globalsign/mgo v0.0.0-20181015135952-eeefdecb41b8/go.mod h1:xkRDCp4j0OGD1HRkm4kmhM+pmpv3AKq5SU7GMg4oO/Q= - github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= --github.com/go-kit/kit v0.9.0 h1:wDJmvq38kDhkVxi50ni9ykkdUr1PKgqKOoi01fa0Mdk= - github.com/go-kit/kit v0.9.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= - github.com/go-kit/kit v0.10.0 h1:dXFJfIHVvUcpSgDOV+Ne6t7jXri8Tfv2uOLHUZ2XNuo= - github.com/go-kit/kit v0.10.0/go.mod h1:xUsJbQ/Fp4kEt7AFgCuvyX4a71u8h9jB8tj/ORgOZ7o= - github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= --github.com/go-logfmt/logfmt v0.4.0 h1:MP4Eh7ZCb31lleYCFuwm0oe4/YGak+5l1vA2NOE80nA= - github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= - github.com/go-logfmt/logfmt v0.5.0 h1:TrB8swr/68K7m9CcGut2g3UOihhbcbiMAYiuTXdEih4= - github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A= - github.com/go-openapi/analysis v0.0.0-20180825180245-b006789cd277/go.mod h1:k70tL6pCuVxPJOHXQ+wIac1FUrvNkHolPie/cLEU6hI= - github.com/go-openapi/analysis v0.17.0/go.mod h1:IowGgpVeD0vNm45So8nr+IcQ3pxVtpRoBWb8PVZO0ik= - github.com/go-openapi/analysis v0.18.0/go.mod h1:IowGgpVeD0vNm45So8nr+IcQ3pxVtpRoBWb8PVZO0ik= --github.com/go-openapi/analysis v0.19.2 h1:ophLETFestFZHk3ji7niPEL4d466QjW+0Tdg5VyDq7E= - github.com/go-openapi/analysis v0.19.2/go.mod h1:3P1osvZa9jKjb8ed2TPng3f0i/UY9snX6gxi44djMjk= - github.com/go-openapi/analysis v0.19.4/go.mod h1:3P1osvZa9jKjb8ed2TPng3f0i/UY9snX6gxi44djMjk= - github.com/go-openapi/analysis v0.19.5/go.mod h1:hkEAkxagaIvIP7VTn8ygJNkd4kAYON2rCu0v0ObL0AU= -@@ -103,27 +99,23 @@ github.com/go-openapi/analysis v0.19.10 h1:5BHISBAXOc/aJK25irLZnx2D3s6WyYaY9D4gm - github.com/go-openapi/analysis v0.19.10/go.mod h1:qmhS3VNFxBlquFJ0RGoDtylO9y4pgTAUNE9AEEMdlJQ= - github.com/go-openapi/errors v0.17.0/go.mod h1:LcZQpmvG4wyF5j4IhA73wkLFQg+QJXOQHVjmcZxhka0= - github.com/go-openapi/errors v0.18.0/go.mod h1:LcZQpmvG4wyF5j4IhA73wkLFQg+QJXOQHVjmcZxhka0= --github.com/go-openapi/errors v0.19.2 h1:a2kIyV3w+OS3S97zxUndRVD46+FhGOUBDFY7nmu4CsY= - github.com/go-openapi/errors v0.19.2/go.mod h1:qX0BLWsyaKfvhluLejVpVNwNRdXZhEbTA4kxxpKBC94= - github.com/go-openapi/errors v0.19.3/go.mod h1:qX0BLWsyaKfvhluLejVpVNwNRdXZhEbTA4kxxpKBC94= - github.com/go-openapi/errors v0.19.4 h1:fSGwO1tSYHFu70NKaWJt5Qh0qoBRtCm/mXS1yhf+0W0= - github.com/go-openapi/errors v0.19.4/go.mod h1:qX0BLWsyaKfvhluLejVpVNwNRdXZhEbTA4kxxpKBC94= - github.com/go-openapi/jsonpointer v0.17.0/go.mod h1:cOnomiV+CVVwFLk0A/MExoFMjwdsUdVpsRhURCKh+3M= - github.com/go-openapi/jsonpointer v0.18.0/go.mod h1:cOnomiV+CVVwFLk0A/MExoFMjwdsUdVpsRhURCKh+3M= --github.com/go-openapi/jsonpointer v0.19.2 h1:A9+F4Dc/MCNB5jibxf6rRvOvR/iFgQdyNx9eIhnGqq0= - github.com/go-openapi/jsonpointer v0.19.2/go.mod h1:3akKfEdA7DF1sugOqz1dVQHBcuDBPKZGEoHC/NkiQRg= - github.com/go-openapi/jsonpointer v0.19.3 h1:gihV7YNZK1iK6Tgwwsxo2rJbD1GTbdm72325Bq8FI3w= - github.com/go-openapi/jsonpointer v0.19.3/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= - github.com/go-openapi/jsonreference v0.17.0/go.mod h1:g4xxGn04lDIRh0GJb5QlpE3HfopLOL6uZrK/VgnsK9I= - github.com/go-openapi/jsonreference v0.18.0/go.mod h1:g4xxGn04lDIRh0GJb5QlpE3HfopLOL6uZrK/VgnsK9I= --github.com/go-openapi/jsonreference v0.19.2 h1:o20suLFB4Ri0tuzpWtyHlh7E7HnkqTNLq6aR6WVNS1w= - github.com/go-openapi/jsonreference v0.19.2/go.mod h1:jMjeRr2HHw6nAVajTXJ4eiUwohSTlpa0o73RUL1owJc= - github.com/go-openapi/jsonreference v0.19.3 h1:5cxNfTy0UVC3X8JL5ymxzyoUZmo8iZb+jeTWn7tUa8o= - github.com/go-openapi/jsonreference v0.19.3/go.mod h1:rjx6GuL8TTa9VaixXglHmQmIL98+wF9xc8zWvFonSJ8= - github.com/go-openapi/loads v0.17.0/go.mod h1:72tmFy5wsWx89uEVddd0RjRWPZm92WRLhf7AC+0+OOU= - github.com/go-openapi/loads v0.18.0/go.mod h1:72tmFy5wsWx89uEVddd0RjRWPZm92WRLhf7AC+0+OOU= - github.com/go-openapi/loads v0.19.0/go.mod h1:72tmFy5wsWx89uEVddd0RjRWPZm92WRLhf7AC+0+OOU= --github.com/go-openapi/loads v0.19.2 h1:rf5ArTHmIJxyV5Oiks+Su0mUens1+AjpkPoWr5xFRcI= - github.com/go-openapi/loads v0.19.2/go.mod h1:QAskZPMX5V0C2gvfkGZzJlINuP7Hx/4+ix5jWFxsNPs= - github.com/go-openapi/loads v0.19.3/go.mod h1:YVfqhUCdahYwR3f3iiwQLhicVRvLlU/WO5WPaZvcvSI= - github.com/go-openapi/loads v0.19.4/go.mod h1:zZVHonKd8DXyxyw4yfnVjPzBjIQcLt0CCsn0N0ZrQsk= -@@ -131,40 +123,32 @@ github.com/go-openapi/loads v0.19.5 h1:jZVYWawIQiA1NBnHla28ktg6hrcfTHsCE+3QLVRBI - github.com/go-openapi/loads v0.19.5/go.mod h1:dswLCAdonkRufe/gSUC3gN8nTSaB9uaS2es0x5/IbjY= - github.com/go-openapi/runtime v0.0.0-20180920151709-4f900dc2ade9/go.mod h1:6v9a6LTXWQCdL8k1AO3cvqx5OtZY/Y9wKTgaoP6YRfA= - github.com/go-openapi/runtime v0.19.0/go.mod h1:OwNfisksmmaZse4+gpV3Ne9AyMOlP1lt4sK4FXt0O64= --github.com/go-openapi/runtime v0.19.4 h1:csnOgcgAiuGoM/Po7PEpKDoNulCcF3FGbSnbHfxgjMI= - github.com/go-openapi/runtime v0.19.4/go.mod h1:X277bwSUBxVlCYR3r7xgZZGKVvBd/29gLDlFGtJ8NL4= - github.com/go-openapi/runtime v0.19.15 h1:2GIefxs9Rx1vCDNghRtypRq+ig8KSLrjHbAYI/gCLCM= - github.com/go-openapi/runtime v0.19.15/go.mod h1:dhGWCTKRXlAfGnQG0ONViOZpjfg0m2gUt9nTQPQZuoo= - github.com/go-openapi/spec v0.17.0/go.mod h1:XkF/MOi14NmjsfZ8VtAKf8pIlbZzyoTvZsdfssdxcBI= - github.com/go-openapi/spec v0.18.0/go.mod h1:XkF/MOi14NmjsfZ8VtAKf8pIlbZzyoTvZsdfssdxcBI= --github.com/go-openapi/spec v0.19.2 h1:SStNd1jRcYtfKCN7R0laGNs80WYYvn5CbBjM2sOmCrE= - github.com/go-openapi/spec v0.19.2/go.mod h1:sCxk3jxKgioEJikev4fgkNmwS+3kuYdJtcsZsD5zxMY= - github.com/go-openapi/spec v0.19.3/go.mod h1:FpwSN1ksY1eteniUU7X0N/BgJ7a4WvBFVA8Lj9mJglo= --github.com/go-openapi/spec v0.19.6 h1:rMMMj8cV38KVXK7SFc+I2MWClbEfbK705+j+dyqun5g= - github.com/go-openapi/spec v0.19.6/go.mod h1:Hm2Jr4jv8G1ciIAo+frC/Ft+rR2kQDh8JHKHb3gWUSk= - github.com/go-openapi/spec v0.19.8 h1:qAdZLh1r6QF/hI/gTq+TJTvsQUodZsM7KLqkAJdiJNg= - github.com/go-openapi/spec v0.19.8/go.mod h1:Hm2Jr4jv8G1ciIAo+frC/Ft+rR2kQDh8JHKHb3gWUSk= - github.com/go-openapi/strfmt v0.17.0/go.mod h1:P82hnJI0CXkErkXi8IKjPbNBM6lV6+5pLP5l494TcyU= - github.com/go-openapi/strfmt v0.18.0/go.mod h1:P82hnJI0CXkErkXi8IKjPbNBM6lV6+5pLP5l494TcyU= - github.com/go-openapi/strfmt v0.19.0/go.mod h1:+uW+93UVvGGq2qGaZxdDeJqSAqBqBdl+ZPMF/cC8nDY= --github.com/go-openapi/strfmt v0.19.2 h1:clPGfBnJohokno0e+d7hs6Yocrzjlgz6EsQSDncCRnE= - github.com/go-openapi/strfmt v0.19.2/go.mod h1:0yX7dbo8mKIvc3XSKp7MNfxw4JytCfCD6+bY1AVL9LU= - github.com/go-openapi/strfmt v0.19.3/go.mod h1:0yX7dbo8mKIvc3XSKp7MNfxw4JytCfCD6+bY1AVL9LU= --github.com/go-openapi/strfmt v0.19.4 h1:eRvaqAhpL0IL6Trh5fDsGnGhiXndzHFuA05w6sXH6/g= - github.com/go-openapi/strfmt v0.19.4/go.mod h1:eftuHTlB/dI8Uq8JJOyRlieZf+WkkxUuk0dgdHXr2Qk= - github.com/go-openapi/strfmt v0.19.5 h1:0utjKrw+BAh8s57XE9Xz8DUBsVvPmRUB6styvl9wWIM= - github.com/go-openapi/strfmt v0.19.5/go.mod h1:eftuHTlB/dI8Uq8JJOyRlieZf+WkkxUuk0dgdHXr2Qk= - github.com/go-openapi/swag v0.17.0/go.mod h1:AByQ+nYG6gQg71GINrmuDXCPWdL640yX49/kXLo40Tg= - github.com/go-openapi/swag v0.18.0/go.mod h1:AByQ+nYG6gQg71GINrmuDXCPWdL640yX49/kXLo40Tg= - github.com/go-openapi/swag v0.19.2/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= --github.com/go-openapi/swag v0.19.5 h1:lTz6Ys4CmqqCQmZPBlbQENR1/GucA2bzYTE12Pw4tFY= - github.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= --github.com/go-openapi/swag v0.19.7 h1:VRuXN2EnMSsZdauzdss6JBC29YotDqG59BZ+tdlIL1s= - github.com/go-openapi/swag v0.19.7/go.mod h1:ao+8BpOPyKdpQz3AOJfbeEVpLmWAvlT1IfTe5McPyhY= - github.com/go-openapi/swag v0.19.9 h1:1IxuqvBUU3S2Bi4YC7tlP9SJF1gVpCvqN0T2Qof4azE= - github.com/go-openapi/swag v0.19.9/go.mod h1:ao+8BpOPyKdpQz3AOJfbeEVpLmWAvlT1IfTe5McPyhY= - github.com/go-openapi/validate v0.18.0/go.mod h1:Uh4HdOzKt19xGIGm1qHf/ofbX1YQ4Y+MYsct2VUrAJ4= --github.com/go-openapi/validate v0.19.2 h1:ky5l57HjyVRrsJfd2+Ro5Z9PjGuKbsmftwyMtk8H7js= - github.com/go-openapi/validate v0.19.2/go.mod h1:1tRCw7m3jtI8eNWEEliiAqUIcBztB2KDnRCRMUi7GTA= - github.com/go-openapi/validate v0.19.3/go.mod h1:90Vh6jjkTn+OT1Eefm0ZixWNFjhtOH7vS9k0lo6zwJo= - github.com/go-openapi/validate v0.19.8 h1:YFzsdWIDfVuLvIOF+ZmKjVg1MbPJ1QgY9PihMwei1ys= -@@ -208,7 +192,6 @@ github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4er - github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= - github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= - github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= --github.com/golang/protobuf v1.3.2 h1:6nsPYzhq5kReh6QImI3k5qWzO4PEbvbIW2cwSfR/6xs= - github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= - github.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8= - github.com/golang/protobuf v1.4.0-rc.1.0.20200221234624-67d41d38c208/go.mod h1:xKAWHe0F5eneWXFV3EuXVDTCmh+JuBKY0li0aMyXATA= -@@ -218,12 +201,10 @@ github.com/golang/protobuf v1.4.0 h1:oOuy+ugB+P/kBdUnG5QaMXSIyJ1q38wWSojYCb3z5VQ - github.com/golang/protobuf v1.4.0/go.mod h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvqG2KuDX0= - github.com/golang/snappy v0.0.0-20180518054509-2e65f85255db/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= - github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= --github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c h1:964Od4U6p2jUkFxvCydnIczKteheJEzHRToSGK3Bnlw= - github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= - github.com/google/btree v1.0.0 h1:0udJVsspx3VBr5FwtLhQQtuAsVc79tTq0ocGIPAU6qo= - github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= - github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= --github.com/google/go-cmp v0.3.0 h1:crn/baboCvb5fXaQ0IJ1SGTsTVrWpDsCWC8EGETZijY= - github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= - github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= - github.com/google/go-cmp v0.4.0 h1:xsAVV57WRhGj6kEIi8ReJzQlHHqcBYCElAvkovg3B/4= -@@ -257,13 +238,11 @@ github.com/hashicorp/go-sockaddr v1.0.0/go.mod h1:7Xibr9yA9JjQq1JpNB2Vw7kxv8xerX - github.com/hashicorp/go-sockaddr v1.0.2 h1:ztczhD1jLxIRjVejw8gFomI1BQZOe2WoVOu0SyteCQc= - github.com/hashicorp/go-sockaddr v1.0.2/go.mod h1:rB4wwRAUzs07qva3c5SdrY/NEtAUjGlgmH/UkBUC97A= - github.com/hashicorp/go-syslog v1.0.0/go.mod h1:qPfqrKkXGihmCqbJM2mZgkZGvKG1dFdvsLplgctolz4= --github.com/hashicorp/go-uuid v1.0.0 h1:RS8zrF7PhGwyNPOtxSClXXj9HA8feRnJzgnI1RJCSnM= - github.com/hashicorp/go-uuid v1.0.0/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= - github.com/hashicorp/go-uuid v1.0.1 h1:fv1ep09latC32wFoVwnqcnKJGnMSdBanPczbHAYm1BE= - github.com/hashicorp/go-uuid v1.0.1/go.mod h1:6SBZvOh/SIDV7/2o3Jml5SYk/TvGqwFJ/bN7x4byOro= - github.com/hashicorp/go-version v1.2.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09ZGVZPK5anwXA= - github.com/hashicorp/go.net v0.0.1/go.mod h1:hjKkEWcCURg++eb33jQU7oqQcI9XDCnUzHA0oac0k90= --github.com/hashicorp/golang-lru v0.5.0 h1:CL2msUPvZTLb5O648aiLNJw3hnBxN2+1Jq8rCOH9wdo= - github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= - github.com/hashicorp/golang-lru v0.5.1 h1:0hERBMJE1eitiLkihrMvRVBYAkpHzc/J3QdDN+dAcgU= - github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= -@@ -285,7 +264,6 @@ github.com/jonboulle/clockwork v0.1.0/go.mod h1:Ii8DK3G1RaLaWxj9trq07+26W01tbo22 - github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= - github.com/json-iterator/go v1.1.7/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= - github.com/json-iterator/go v1.1.8/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= --github.com/json-iterator/go v1.1.9 h1:9yzud/Ht36ygwatGx56VwCZtlI/2AD15T1X2sjSuGns= - github.com/json-iterator/go v1.1.9/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= - github.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= - github.com/julienschmidt/httprouter v1.2.0 h1:TDTW5Yz1mjftljbcKqRcrYhd4XeOoI98t+9HbQbYf7g= -@@ -298,7 +276,6 @@ github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+o - github.com/klauspost/compress v1.9.5/go.mod h1:RyIbtBH6LamlWaDj8nUwkbUhJ87Yi3uG0guNDohfE1A= - github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= - github.com/konsorten/go-windows-terminal-sequences v1.0.2/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= --github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515 h1:T+h1c/A9Gawja4Y9mFVWj2vyii2bbUNDw3kt9VxK2EY= - github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc= - github.com/kr/pretty v0.1.0 h1:L/CwN0zerZDmRFUapSPitk6f+Q3+0za1rQkzVuMiMFI= - github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= -@@ -313,7 +290,6 @@ github.com/lightstep/lightstep-tracer-go v0.18.1/go.mod h1:jlF1pusYV4pidLvZ+XD0U - github.com/lyft/protoc-gen-validate v0.0.13/go.mod h1:XbGvPuh87YZc5TdIa2/I4pLk0QoUACkjt2znoq26NVQ= - github.com/mailru/easyjson v0.0.0-20180823135443-60711f1a8329/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= - github.com/mailru/easyjson v0.0.0-20190312143242-1de009706dbe/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= --github.com/mailru/easyjson v0.0.0-20190614124828-94de47d64c63 h1:nTT4s92Dgz2HlrB2NaMgvlfqHH39OgMhA7z3PK7PGD4= - github.com/mailru/easyjson v0.0.0-20190614124828-94de47d64c63/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= - github.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= - github.com/mailru/easyjson v0.7.0/go.mod h1:KAzv3t3aY1NaHWoQz1+4F1ccyAH66Jk7yos7ldAVICs= -@@ -327,7 +303,6 @@ github.com/mattn/go-isatty v0.0.4/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNx - github.com/mattn/go-runewidth v0.0.2/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= - github.com/matttproud/golang_protobuf_extensions v1.0.1 h1:4hp9jkHxhMHkqkrB3Ix0jegS5sx/RkqARlsWZ6pIwiU= - github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= --github.com/miekg/dns v1.0.14 h1:9jZdLNd/P4+SfEJ0TNyxYpsK8N4GtfylBLqtbYN1sbA= - github.com/miekg/dns v1.0.14/go.mod h1:W1PPwlIAgtquWBMBEV9nkV9Cazfe8ScdGz/Lj7v3Nrg= - github.com/miekg/dns v1.1.26 h1:gPxPSwALAeHJSjarOs00QjVdV9QoBvc1D2ujQUr5BzU= - github.com/miekg/dns v1.1.26/go.mod h1:bPDLeHnStXmXAq1m/Ch/hvfNHr14JKNPMBo3VZKjuso= -@@ -341,10 +316,8 @@ github.com/mitchellh/mapstructure v0.0.0-20160808181253-ca63d7c062ee/go.mod h1:F - github.com/mitchellh/mapstructure v1.1.2 h1:fmNYVwqnSfB9mZU6OS2O6GsXM+wcskZDuKQzvN1EDeE= - github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= - github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= --github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= - github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= - github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= --github.com/modern-go/reflect2 v1.0.1 h1:9f412s+6RmYXLWZSEzVVgPGK7C2PphHj5RJrvfx9AWI= - github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= - github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe/go.mod h1:wL8QJuTMNUDYhXwkmfOly8iTdp5TEcJFWZD2D7SIkUc= - github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223 h1:F9x/1yl3T2AeKLr2AMdilSD8+f9bvMnNN8VS5iDtovc= -@@ -357,7 +330,6 @@ github.com/nats-io/nkeys v0.1.0/go.mod h1:xpnFELMwJABBLVhffcfd1MZx6VsNRFpEugbxzi - github.com/nats-io/nkeys v0.1.3/go.mod h1:xpnFELMwJABBLVhffcfd1MZx6VsNRFpEugbxziKVo7w= - github.com/nats-io/nuid v1.0.1/go.mod h1:19wcPz3Ph3q0Jbyiqsd0kePYG7A95tJPxeL+1OSON2c= - github.com/oklog/oklog v0.3.2/go.mod h1:FCV+B7mhrz4o+ueLpx+KqkyXRGMWOYEvfiXtdGtbWGs= --github.com/oklog/run v1.0.0 h1:Ru7dDtJNOyC66gQ5dQmaCa0qIsAUFY3sFpK1Xk8igrw= - github.com/oklog/run v1.0.0/go.mod h1:dlhp/R75TPv97u0XWUtDeV/lRKWPKSdTuV0TZvrmrQA= - github.com/oklog/run v1.1.0 h1:GEenZ1cK0+q0+wsJew9qUg/DyD8k3JzYsZAi5gYi2mA= - github.com/oklog/run v1.1.0/go.mod h1:sVPdnTZT1zYwAJeCMu2Th4T21pA3FPOQRfWjQlk7DVU= -@@ -385,7 +357,6 @@ github.com/performancecopilot/speed v3.0.0+incompatible/go.mod h1:/CLtqpZ5gBg1M9 - github.com/pierrec/lz4 v1.0.2-0.20190131084431-473cd7ce01a1/go.mod h1:3/3N9NVKO0jef7pBehbT1qWhCMrIgbYNnFAZCqQ5LRc= - github.com/pierrec/lz4 v2.0.5+incompatible/go.mod h1:pdkljMzZIN41W+lC3N2tnIh5sFi+IEE17M5jbnwPHcY= - github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= --github.com/pkg/errors v0.8.1 h1:iURUrRGxPUNPdy5/HRSm+Yj6okJ6UtLINN0Q9M4+h3I= - github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= - github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= - github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= -@@ -401,16 +372,13 @@ github.com/prometheus/client_golang v1.6.0 h1:YVPodQOcK15POxhgARIvnDRVpLcuK8mgln - github.com/prometheus/client_golang v1.6.0/go.mod h1:ZLOG9ck3JLRdB5MgO8f+lLTe83AXG6ro35rLTxvnIl4= - github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= - github.com/prometheus/client_model v0.0.0-20190115171406-56726106282f/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= --github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90 h1:S/YWwWx/RA8rT8tKFRuGUZhuA90OyIBpPCXkcbwU8DE= - github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= --github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4 h1:gQz4mCbXsO+nc9n1hCxHcGA3Zx3Eo+UHZoInFGUIXNM= - github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= - github.com/prometheus/client_model v0.1.0/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= - github.com/prometheus/client_model v0.2.0 h1:uq5h0d+GuxiXLJLNABMgp2qUWDPiLvgCzz2dUR+/W/M= - github.com/prometheus/client_model v0.2.0/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= - github.com/prometheus/common v0.2.0/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= - github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= --github.com/prometheus/common v0.7.0 h1:L+1lyG48J1zAQXA3RBX/nG/B3gjlHq0zTt2tlbJLyCY= - github.com/prometheus/common v0.7.0/go.mod h1:DjGbpBbp5NYNiECxcL/VnbXCCaQpKd3tt26CguLLsqA= - github.com/prometheus/common v0.9.1/go.mod h1:yhUN8i9wzaXS3w1O07YhxHEBxD+W35wd8bs7vj7HSQ4= - github.com/prometheus/common v0.10.0 h1:RyRA7RzGXQZiW+tGMr7sxa85G1z0yOpM1qq5c8lNawc= -@@ -460,10 +428,8 @@ github.com/streadway/amqp v0.0.0-20190827072141-edfb9018d271/go.mod h1:AZpEONHx3 - github.com/streadway/handy v0.0.0-20190108123426-d5acb3125c2a/go.mod h1:qNTQ5P5JnDBl6z3cMAg/SywNDC5ABu5ApDIw6lUbRmI= - github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= - github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= --github.com/stretchr/objx v0.2.0 h1:Hbg2NidpLE8veEBkEZTL3CvlkUIVzuU9jDplZO54c48= - github.com/stretchr/objx v0.2.0/go.mod h1:qt09Ya8vawLte6SNmTgCsAVtYtaKzEcn8ATUoHMkEqE= - github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= --github.com/stretchr/testify v1.3.0 h1:TivCn/peBQ7UY8ooIcPgZFpTNSz0Q2U6UrFlUfqbe0Q= - github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= - github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= - github.com/stretchr/testify v1.5.1 h1:nOGnQDM7FYENwehXlg/kFVnos3rEvtKTjRvOWSzb6H4= -@@ -482,7 +448,6 @@ github.com/xlab/treeprint v1.0.0/go.mod h1:IoImgRak9i3zJyuxOKUP1v4UZd1tMoKkq/Cim - github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= - go.etcd.io/bbolt v1.3.3/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU= - go.etcd.io/etcd v0.0.0-20191023171146-3cf2f69b5738/go.mod h1:dnLIgRNXwCJa5e+c6mIZCrds/GIG4ncV9HhK5PX7jPg= --go.mongodb.org/mongo-driver v1.0.3 h1:GKoji1ld3tw2aC+GX1wbr/J2fX13yNacEYoJ8Nhr0yU= - go.mongodb.org/mongo-driver v1.0.3/go.mod h1:u7ryQJ+DOzQmeO7zB6MHyr8jkEQvC8vH7qLUO4lqsUM= - go.mongodb.org/mongo-driver v1.1.1/go.mod h1:u7ryQJ+DOzQmeO7zB6MHyr8jkEQvC8vH7qLUO4lqsUM= - go.mongodb.org/mongo-driver v1.1.2/go.mod h1:u7ryQJ+DOzQmeO7zB6MHyr8jkEQvC8vH7qLUO4lqsUM= -@@ -506,7 +471,6 @@ golang.org/x/crypto v0.0.0-20190422162423-af44ce270edf/go.mod h1:WFFai1msRO1wXaE - golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= - golang.org/x/crypto v0.0.0-20190530122614-20be4c3c3ed5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= - golang.org/x/crypto v0.0.0-20190611184440-5c40567a22f8/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= --golang.org/x/crypto v0.0.0-20190617133340-57b3e21c3d56 h1:ZpKuNIejY8P0ExLOVyKhb0WsgG8UdvHXe6TWjY7eL6k= - golang.org/x/crypto v0.0.0-20190617133340-57b3e21c3d56/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= - golang.org/x/crypto v0.0.0-20190701094942-4def268fd1a4/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= - golang.org/x/crypto v0.0.0-20190923035154-9ee001bba392/go.mod h1:/lpIB1dKB+9EgE3H3cr1v9wB50oz8l4C4h62xy7jSTY= -@@ -542,10 +506,9 @@ golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLL - golang.org/x/net v0.0.0-20190813141303-74dc4d7220e7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= - golang.org/x/net v0.0.0-20190827160401-ba9fcec4b297/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= - golang.org/x/net v0.0.0-20190923162816-aa69164e4478/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= --golang.org/x/net v0.0.0-20200226121028-0de0cce0169b h1:0mm1VjtFUOIlE1SbDlwjYaDxZVDP2S5ou6y0gSgXHu8= - golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= --golang.org/x/net v0.0.0-20200513185701-a91f0712d120 h1:EZ3cVSzKOlJxAd8e8YAJ7no8nNypTxexh/YE/xW3ZEY= --golang.org/x/net v0.0.0-20200513185701-a91f0712d120/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= -+golang.org/x/net v0.0.0-20220919225225-ca03788e71a2 h1:b2bvUxYIDQC+GPK2Ud4nUQw7Q9u3zQ1dvYlxu5kKRAA= -+golang.org/x/net v0.0.0-20220919225225-ca03788e71a2/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk= - golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= - golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= - golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -@@ -553,7 +516,6 @@ golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJ - golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= - golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= - golang.org/x/sync v0.0.0-20190412183630-56d357773e84/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= --golang.org/x/sync v0.0.0-20190423024810-112230192c58 h1:8gQV6CLnAEikrhgkHFbMAEhagSSnXWGV915qUMm9mrU= - golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= - golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e h1:vcxGaoTs7kV8m5Np9uUNQin4BrLOthgV7252N8V+FwY= - golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -@@ -578,15 +540,18 @@ golang.org/x/sys v0.0.0-20190726091711-fc99dfbffb4e/go.mod h1:h1NjWce9XRLGQEsW7w - golang.org/x/sys v0.0.0-20190826190057-c7b8b68b1456/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= - golang.org/x/sys v0.0.0-20190922100055-0a153f010e69/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= - golang.org/x/sys v0.0.0-20190924154521-2837fb4f24fe/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= --golang.org/x/sys v0.0.0-20191220142924-d4481acd189f h1:68K/z8GLUxV76xGSqwTWw2gyk/jwn79LUL43rES2g8o= - golang.org/x/sys v0.0.0-20191220142924-d4481acd189f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= - golang.org/x/sys v0.0.0-20200106162015-b016eb3dc98e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= --golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= --golang.org/x/sys v0.0.0-20200420163511-1957bb5e6d1f h1:gWF768j/LaZugp8dyS4UwsslYCYz9XgFxvlgsn0n9H8= - golang.org/x/sys v0.0.0-20200420163511-1957bb5e6d1f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -+golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -+golang.org/x/sys v0.0.0-20220728004956-3c1f35247d10/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -+golang.org/x/sys v0.0.0-20220908164124-27713097b956 h1:XeJjHH1KiLpKGb6lvMiksZ9l0fVUh+AmGcm0nOMEBOY= -+golang.org/x/sys v0.0.0-20220908164124-27713097b956/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -+golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= - golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= --golang.org/x/text v0.3.2 h1:tW2bmiBqwgJj/UpqtC8EpXEZVYOwU0yG4iWbprSVAcs= - golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= -+golang.org/x/text v0.3.7 h1:olpwvP2KacW1ZWvsR7uQhoyTYvKAupfQrRGBFM352Gk= -+golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= - golang.org/x/time v0.0.0-20180412165947-fbb02b2291d2/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= - golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= - golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= -@@ -645,7 +610,6 @@ google.golang.org/protobuf v1.21.0/go.mod h1:47Nbq4nVaFHyn7ilMalzfO3qCViNmqZ2kzi - gopkg.in/alecthomas/kingpin.v2 v2.2.6 h1:jMFz6MfLP0/4fUyZle81rXUoxOBFi19VUFKVDOQfozc= - gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= - gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= --gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 h1:qIbj1fsPNlZgppZ+VLlY7N33q108Sa+fhmuc+sWQYwY= - gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= - gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 h1:YR8cESwS4TdDjEe65xsg0ogRM/Nc3DYOhEAlW+xobZo= - gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -@@ -658,11 +622,9 @@ gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWD - gopkg.in/warnings.v0 v0.1.2/go.mod h1:jksf8JmL6Qr/oQM2OXTHunEvvTAsrWBLb6OOjuVWRNI= - gopkg.in/yaml.v2 v2.0.0-20170812160011-eb3733d160e7/go.mod h1:JAlM8MvJe8wmxCU4Bli9HhUf9+ttbYbLASfIpnQbh74= - gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= --gopkg.in/yaml.v2 v2.2.2 h1:ZCJp+EgiOT7lHqUV2J862kp8Qj64Jo6az82+3Td9dZw= - gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= - gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= - gopkg.in/yaml.v2 v2.2.5/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= --gopkg.in/yaml.v2 v2.2.8 h1:obN1ZagJSUGI0Ek/LBmuj4SNLPfIny3KsKFopxRdj10= - gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= - gopkg.in/yaml.v2 v2.3.0 h1:clyUAQHOM3G0M3f5vQj7LuJrETvjVot3Z5el9nffUtU= - gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -diff --git a/vendor/golang.org/x/net/AUTHORS b/vendor/golang.org/x/net/AUTHORS -deleted file mode 100644 -index 15167cd..0000000 ---- a/vendor/golang.org/x/net/AUTHORS -+++ /dev/null -@@ -1,3 +0,0 @@ --# This source code refers to The Go Authors for copyright purposes. --# The master list of authors is in the main Go distribution, --# visible at http://tip.golang.org/AUTHORS. -diff --git a/vendor/golang.org/x/net/CONTRIBUTORS b/vendor/golang.org/x/net/CONTRIBUTORS -deleted file mode 100644 -index 1c4577e..0000000 ---- a/vendor/golang.org/x/net/CONTRIBUTORS -+++ /dev/null -@@ -1,3 +0,0 @@ --# This source code was written by the Go contributors. --# The master list of contributors is in the main Go distribution, --# visible at http://tip.golang.org/CONTRIBUTORS. -diff --git a/vendor/golang.org/x/net/bpf/doc.go b/vendor/golang.org/x/net/bpf/doc.go -index ae62feb..04ec1c8 100644 ---- a/vendor/golang.org/x/net/bpf/doc.go -+++ b/vendor/golang.org/x/net/bpf/doc.go -@@ -3,7 +3,6 @@ - // license that can be found in the LICENSE file. - - /* -- - Package bpf implements marshaling and unmarshaling of programs for the - Berkeley Packet Filter virtual machine, and provides a Go implementation - of the virtual machine. -@@ -21,7 +20,7 @@ access to kernel functions, and while conditional branches are - allowed, they can only jump forwards, to guarantee that there are no - infinite loops. - --The virtual machine -+# The virtual machine - - The BPF VM is an accumulator machine. Its main register, called - register A, is an implicit source and destination in all arithmetic -@@ -50,7 +49,7 @@ to extensions, which are essentially calls to kernel utility - functions. Currently, the only extensions supported by this package - are the Linux packet filter extensions. - --Examples -+# Examples - - This packet filter selects all ARP packets. - -@@ -77,6 +76,5 @@ This packet filter captures a random 1% sample of traffic. - // Ignore. - bpf.RetConstant{Val: 0}, - }) -- - */ - package bpf // import "golang.org/x/net/bpf" -diff --git a/vendor/golang.org/x/net/bpf/vm_instructions.go b/vendor/golang.org/x/net/bpf/vm_instructions.go -index cf8947c..0aa307c 100644 ---- a/vendor/golang.org/x/net/bpf/vm_instructions.go -+++ b/vendor/golang.org/x/net/bpf/vm_instructions.go -@@ -94,7 +94,7 @@ func jumpIfCommon(cond JumpTest, skipTrue, skipFalse uint8, regA uint32, value u - - func loadAbsolute(ins LoadAbsolute, in []byte) (uint32, bool) { - offset := int(ins.Off) -- size := int(ins.Size) -+ size := ins.Size - - return loadCommon(in, offset, size) - } -@@ -121,7 +121,7 @@ func loadExtension(ins LoadExtension, in []byte) uint32 { - - func loadIndirect(ins LoadIndirect, in []byte, regX uint32) (uint32, bool) { - offset := int(ins.Off) + int(regX) -- size := int(ins.Size) -+ size := ins.Size - - return loadCommon(in, offset, size) - } -diff --git a/vendor/golang.org/x/net/http/httpguts/httplex.go b/vendor/golang.org/x/net/http/httpguts/httplex.go -index e7de24e..6e071e8 100644 ---- a/vendor/golang.org/x/net/http/httpguts/httplex.go -+++ b/vendor/golang.org/x/net/http/httpguts/httplex.go -@@ -137,11 +137,13 @@ func trimOWS(x string) string { - // contains token amongst its comma-separated tokens, ASCII - // case-insensitively. - func headerValueContainsToken(v string, token string) bool { -- v = trimOWS(v) -- if comma := strings.IndexByte(v, ','); comma != -1 { -- return tokenEqual(trimOWS(v[:comma]), token) || headerValueContainsToken(v[comma+1:], token) -+ for comma := strings.IndexByte(v, ','); comma != -1; comma = strings.IndexByte(v, ',') { -+ if tokenEqual(trimOWS(v[:comma]), token) { -+ return true -+ } -+ v = v[comma+1:] - } -- return tokenEqual(v, token) -+ return tokenEqual(trimOWS(v), token) - } - - // lowerASCII returns the ASCII lowercase version of b. -@@ -171,13 +173,15 @@ func tokenEqual(t1, t2 string) bool { - - // isLWS reports whether b is linear white space, according - // to http://www.w3.org/Protocols/rfc2616/rfc2616-sec2.html#sec2.2 --// LWS = [CRLF] 1*( SP | HT ) -+// -+// LWS = [CRLF] 1*( SP | HT ) - func isLWS(b byte) bool { return b == ' ' || b == '\t' } - - // isCTL reports whether b is a control byte, according - // to http://www.w3.org/Protocols/rfc2616/rfc2616-sec2.html#sec2.2 --// CTL = -+// -+// CTL = - func isCTL(b byte) bool { - const del = 0x7f // a CTL - return b < ' ' || b == del -@@ -187,12 +191,13 @@ func isCTL(b byte) bool { - // HTTP/2 imposes the additional restriction that uppercase ASCII - // letters are not allowed. - // --// RFC 7230 says: --// header-field = field-name ":" OWS field-value OWS --// field-name = token --// token = 1*tchar --// tchar = "!" / "#" / "$" / "%" / "&" / "'" / "*" / "+" / "-" / "." / --// "^" / "_" / "`" / "|" / "~" / DIGIT / ALPHA -+// RFC 7230 says: -+// -+// header-field = field-name ":" OWS field-value OWS -+// field-name = token -+// token = 1*tchar -+// tchar = "!" / "#" / "$" / "%" / "&" / "'" / "*" / "+" / "-" / "." / -+// "^" / "_" / "`" / "|" / "~" / DIGIT / ALPHA - func ValidHeaderFieldName(v string) bool { - if len(v) == 0 { - return false -@@ -265,27 +270,28 @@ var validHostByte = [256]bool{ - // ValidHeaderFieldValue reports whether v is a valid "field-value" according to - // http://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html#sec4.2 : - // --// message-header = field-name ":" [ field-value ] --// field-value = *( field-content | LWS ) --// field-content = -+// message-header = field-name ":" [ field-value ] -+// field-value = *( field-content | LWS ) -+// field-content = - // - // http://www.w3.org/Protocols/rfc2616/rfc2616-sec2.html#sec2.2 : - // --// TEXT = --// LWS = [CRLF] 1*( SP | HT ) --// CTL = -+// TEXT = -+// LWS = [CRLF] 1*( SP | HT ) -+// CTL = - // - // RFC 7230 says: --// field-value = *( field-content / obs-fold ) --// obj-fold = N/A to http2, and deprecated --// field-content = field-vchar [ 1*( SP / HTAB ) field-vchar ] --// field-vchar = VCHAR / obs-text --// obs-text = %x80-FF --// VCHAR = "any visible [USASCII] character" -+// -+// field-value = *( field-content / obs-fold ) -+// obj-fold = N/A to http2, and deprecated -+// field-content = field-vchar [ 1*( SP / HTAB ) field-vchar ] -+// field-vchar = VCHAR / obs-text -+// obs-text = %x80-FF -+// VCHAR = "any visible [USASCII] character" - // - // http2 further says: "Similarly, HTTP/2 allows header field values - // that are not valid. While most of the values that can be encoded -diff --git a/vendor/golang.org/x/net/http2/Dockerfile b/vendor/golang.org/x/net/http2/Dockerfile -index 53fc525..8512245 100644 ---- a/vendor/golang.org/x/net/http2/Dockerfile -+++ b/vendor/golang.org/x/net/http2/Dockerfile -@@ -38,7 +38,7 @@ RUN make - RUN make install - - WORKDIR /root --RUN wget http://curl.haxx.se/download/curl-7.45.0.tar.gz -+RUN wget https://curl.se/download/curl-7.45.0.tar.gz - RUN tar -zxvf curl-7.45.0.tar.gz - WORKDIR /root/curl-7.45.0 - RUN ./configure --with-ssl --with-nghttp2=/usr/local -diff --git a/vendor/golang.org/x/net/http2/README b/vendor/golang.org/x/net/http2/README -deleted file mode 100644 -index 360d5aa..0000000 ---- a/vendor/golang.org/x/net/http2/README -+++ /dev/null -@@ -1,20 +0,0 @@ --This is a work-in-progress HTTP/2 implementation for Go. -- --It will eventually live in the Go standard library and won't require --any changes to your code to use. It will just be automatic. -- --Status: -- --* The server support is pretty good. A few things are missing -- but are being worked on. --* The client work has just started but shares a lot of code -- is coming along much quicker. -- --Docs are at https://godoc.org/golang.org/x/net/http2 -- --Demo test server at https://http2.golang.org/ -- --Help & bug reports welcome! -- --Contributing: https://golang.org/doc/contribute.html --Bugs: https://golang.org/issue/new?title=x/net/http2:+ -diff --git a/vendor/golang.org/x/net/http2/ascii.go b/vendor/golang.org/x/net/http2/ascii.go -new file mode 100644 -index 0000000..17caa20 ---- /dev/null -+++ b/vendor/golang.org/x/net/http2/ascii.go -@@ -0,0 +1,53 @@ -+// Copyright 2021 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+package http2 -+ -+import "strings" -+ -+// The HTTP protocols are defined in terms of ASCII, not Unicode. This file -+// contains helper functions which may use Unicode-aware functions which would -+// otherwise be unsafe and could introduce vulnerabilities if used improperly. -+ -+// asciiEqualFold is strings.EqualFold, ASCII only. It reports whether s and t -+// are equal, ASCII-case-insensitively. -+func asciiEqualFold(s, t string) bool { -+ if len(s) != len(t) { -+ return false -+ } -+ for i := 0; i < len(s); i++ { -+ if lower(s[i]) != lower(t[i]) { -+ return false -+ } -+ } -+ return true -+} -+ -+// lower returns the ASCII lowercase version of b. -+func lower(b byte) byte { -+ if 'A' <= b && b <= 'Z' { -+ return b + ('a' - 'A') -+ } -+ return b -+} -+ -+// isASCIIPrint returns whether s is ASCII and printable according to -+// https://tools.ietf.org/html/rfc20#section-4.2. -+func isASCIIPrint(s string) bool { -+ for i := 0; i < len(s); i++ { -+ if s[i] < ' ' || s[i] > '~' { -+ return false -+ } -+ } -+ return true -+} -+ -+// asciiToLower returns the lowercase version of s if s is ASCII and printable, -+// and whether or not it was. -+func asciiToLower(s string) (lower string, ok bool) { -+ if !isASCIIPrint(s) { -+ return "", false -+ } -+ return strings.ToLower(s), true -+} -diff --git a/vendor/golang.org/x/net/http2/client_conn_pool.go b/vendor/golang.org/x/net/http2/client_conn_pool.go -index 3a67636..780968d 100644 ---- a/vendor/golang.org/x/net/http2/client_conn_pool.go -+++ b/vendor/golang.org/x/net/http2/client_conn_pool.go -@@ -7,13 +7,21 @@ - package http2 - - import ( -+ "context" - "crypto/tls" -+ "errors" - "net/http" - "sync" - ) - - // ClientConnPool manages a pool of HTTP/2 client connections. - type ClientConnPool interface { -+ // GetClientConn returns a specific HTTP/2 connection (usually -+ // a TLS-TCP connection) to an HTTP/2 server. On success, the -+ // returned ClientConn accounts for the upcoming RoundTrip -+ // call, so the caller should not omit it. If the caller needs -+ // to, ClientConn.RoundTrip can be called with a bogus -+ // new(http.Request) to release the stream reservation. - GetClientConn(req *http.Request, addr string) (*ClientConn, error) - MarkDead(*ClientConn) - } -@@ -40,7 +48,7 @@ type clientConnPool struct { - conns map[string][]*ClientConn // key is host:port - dialing map[string]*dialCall // currently in-flight dials - keys map[*ClientConn][]string -- addConnCalls map[string]*addConnCall // in-flight addConnIfNeede calls -+ addConnCalls map[string]*addConnCall // in-flight addConnIfNeeded calls - } - - func (p *clientConnPool) GetClientConn(req *http.Request, addr string) (*ClientConn, error) { -@@ -52,88 +60,85 @@ const ( - noDialOnMiss = false - ) - --// shouldTraceGetConn reports whether getClientConn should call any --// ClientTrace.GetConn hook associated with the http.Request. --// --// This complexity is needed to avoid double calls of the GetConn hook --// during the back-and-forth between net/http and x/net/http2 (when the --// net/http.Transport is upgraded to also speak http2), as well as support --// the case where x/net/http2 is being used directly. --func (p *clientConnPool) shouldTraceGetConn(st clientConnIdleState) bool { -- // If our Transport wasn't made via ConfigureTransport, always -- // trace the GetConn hook if provided, because that means the -- // http2 package is being used directly and it's the one -- // dialing, as opposed to net/http. -- if _, ok := p.t.ConnPool.(noDialClientConnPool); !ok { -- return true -- } -- // Otherwise, only use the GetConn hook if this connection has -- // been used previously for other requests. For fresh -- // connections, the net/http package does the dialing. -- return !st.freshConn --} -- - func (p *clientConnPool) getClientConn(req *http.Request, addr string, dialOnMiss bool) (*ClientConn, error) { -+ // TODO(dneil): Dial a new connection when t.DisableKeepAlives is set? - if isConnectionCloseRequest(req) && dialOnMiss { - // It gets its own connection. - traceGetConn(req, addr) - const singleUse = true -- cc, err := p.t.dialClientConn(addr, singleUse) -+ cc, err := p.t.dialClientConn(req.Context(), addr, singleUse) - if err != nil { - return nil, err - } - return cc, nil - } -- p.mu.Lock() -- for _, cc := range p.conns[addr] { -- if st := cc.idleState(); st.canTakeNewRequest { -- if p.shouldTraceGetConn(st) { -- traceGetConn(req, addr) -+ for { -+ p.mu.Lock() -+ for _, cc := range p.conns[addr] { -+ if cc.ReserveNewRequest() { -+ // When a connection is presented to us by the net/http package, -+ // the GetConn hook has already been called. -+ // Don't call it a second time here. -+ if !cc.getConnCalled { -+ traceGetConn(req, addr) -+ } -+ cc.getConnCalled = false -+ p.mu.Unlock() -+ return cc, nil - } -+ } -+ if !dialOnMiss { - p.mu.Unlock() -- return cc, nil -+ return nil, ErrNoCachedConn - } -- } -- if !dialOnMiss { -+ traceGetConn(req, addr) -+ call := p.getStartDialLocked(req.Context(), addr) - p.mu.Unlock() -- return nil, ErrNoCachedConn -+ <-call.done -+ if shouldRetryDial(call, req) { -+ continue -+ } -+ cc, err := call.res, call.err -+ if err != nil { -+ return nil, err -+ } -+ if cc.ReserveNewRequest() { -+ return cc, nil -+ } - } -- traceGetConn(req, addr) -- call := p.getStartDialLocked(addr) -- p.mu.Unlock() -- <-call.done -- return call.res, call.err - } - - // dialCall is an in-flight Transport dial call to a host. - type dialCall struct { -- _ incomparable -- p *clientConnPool -+ _ incomparable -+ p *clientConnPool -+ // the context associated with the request -+ // that created this dialCall -+ ctx context.Context - done chan struct{} // closed when done - res *ClientConn // valid after done is closed - err error // valid after done is closed - } - - // requires p.mu is held. --func (p *clientConnPool) getStartDialLocked(addr string) *dialCall { -+func (p *clientConnPool) getStartDialLocked(ctx context.Context, addr string) *dialCall { - if call, ok := p.dialing[addr]; ok { - // A dial is already in-flight. Don't start another. - return call - } -- call := &dialCall{p: p, done: make(chan struct{})} -+ call := &dialCall{p: p, done: make(chan struct{}), ctx: ctx} - if p.dialing == nil { - p.dialing = make(map[string]*dialCall) - } - p.dialing[addr] = call -- go call.dial(addr) -+ go call.dial(call.ctx, addr) - return call - } - - // run in its own goroutine. --func (c *dialCall) dial(addr string) { -+func (c *dialCall) dial(ctx context.Context, addr string) { - const singleUse = false // shared conn -- c.res, c.err = c.p.t.dialClientConn(addr, singleUse) -- close(c.done) -+ c.res, c.err = c.p.t.dialClientConn(ctx, addr, singleUse) - - c.p.mu.Lock() - delete(c.p.dialing, addr) -@@ -141,6 +146,8 @@ func (c *dialCall) dial(addr string) { - c.p.addConnLocked(addr, c.res) - } - c.p.mu.Unlock() -+ -+ close(c.done) - } - - // addConnIfNeeded makes a NewClientConn out of c if a connection for key doesn't -@@ -195,6 +202,7 @@ func (c *addConnCall) run(t *Transport, key string, tc *tls.Conn) { - if err != nil { - c.err = err - } else { -+ cc.getConnCalled = true // already called by the net/http package - p.addConnLocked(key, cc) - } - delete(p.addConnCalls, key) -@@ -276,3 +284,28 @@ type noDialClientConnPool struct{ *clientConnPool } - func (p noDialClientConnPool) GetClientConn(req *http.Request, addr string) (*ClientConn, error) { - return p.getClientConn(req, addr, noDialOnMiss) - } -+ -+// shouldRetryDial reports whether the current request should -+// retry dialing after the call finished unsuccessfully, for example -+// if the dial was canceled because of a context cancellation or -+// deadline expiry. -+func shouldRetryDial(call *dialCall, req *http.Request) bool { -+ if call.err == nil { -+ // No error, no need to retry -+ return false -+ } -+ if call.ctx == req.Context() { -+ // If the call has the same context as the request, the dial -+ // should not be retried, since any cancellation will have come -+ // from this request. -+ return false -+ } -+ if !errors.Is(call.err, context.Canceled) && !errors.Is(call.err, context.DeadlineExceeded) { -+ // If the call error is not because of a context cancellation or a deadline expiry, -+ // the dial should not be retried. -+ return false -+ } -+ // Only retry if the error is a context cancellation error or deadline expiry -+ // and the context associated with the call was canceled or expired. -+ return call.ctx.Err() != nil -+} -diff --git a/vendor/golang.org/x/net/http2/errors.go b/vendor/golang.org/x/net/http2/errors.go -index 71f2c46..f2067da 100644 ---- a/vendor/golang.org/x/net/http2/errors.go -+++ b/vendor/golang.org/x/net/http2/errors.go -@@ -53,6 +53,13 @@ func (e ErrCode) String() string { - return fmt.Sprintf("unknown error code 0x%x", uint32(e)) - } - -+func (e ErrCode) stringToken() string { -+ if s, ok := errCodeName[e]; ok { -+ return s -+ } -+ return fmt.Sprintf("ERR_UNKNOWN_%d", uint32(e)) -+} -+ - // ConnectionError is an error that results in the termination of the - // entire connection. - type ConnectionError ErrCode -@@ -67,6 +74,11 @@ type StreamError struct { - Cause error // optional additional detail - } - -+// errFromPeer is a sentinel error value for StreamError.Cause to -+// indicate that the StreamError was sent from the peer over the wire -+// and wasn't locally generated in the Transport. -+var errFromPeer = errors.New("received from peer") -+ - func streamError(id uint32, code ErrCode) StreamError { - return StreamError{StreamID: id, Code: code} - } -@@ -124,7 +136,7 @@ func (e headerFieldNameError) Error() string { - type headerFieldValueError string - - func (e headerFieldValueError) Error() string { -- return fmt.Sprintf("invalid header field value %q", string(e)) -+ return fmt.Sprintf("invalid header field value for %q", string(e)) - } - - var ( -diff --git a/vendor/golang.org/x/net/http2/frame.go b/vendor/golang.org/x/net/http2/frame.go -index 514c126..184ac45 100644 ---- a/vendor/golang.org/x/net/http2/frame.go -+++ b/vendor/golang.org/x/net/http2/frame.go -@@ -23,7 +23,7 @@ const frameHeaderLen = 9 - var padZeros = make([]byte, 255) // zeros for padding - - // A FrameType is a registered frame type as defined in --// http://http2.github.io/http2-spec/#rfc.section.11.2 -+// https://httpwg.org/specs/rfc7540.html#rfc.section.11.2 - type FrameType uint8 - - const ( -@@ -122,7 +122,7 @@ var flagName = map[FrameType]map[Flags]string{ - // a frameParser parses a frame given its FrameHeader and payload - // bytes. The length of payload will always equal fh.Length (which - // might be 0). --type frameParser func(fc *frameCache, fh FrameHeader, payload []byte) (Frame, error) -+type frameParser func(fc *frameCache, fh FrameHeader, countError func(string), payload []byte) (Frame, error) - - var frameParsers = map[FrameType]frameParser{ - FrameData: parseDataFrame, -@@ -146,7 +146,7 @@ func typeFrameParser(t FrameType) frameParser { - - // A FrameHeader is the 9 byte header of all HTTP/2 frames. - // --// See http://http2.github.io/http2-spec/#FrameHeader -+// See https://httpwg.org/specs/rfc7540.html#FrameHeader - type FrameHeader struct { - valid bool // caller can access []byte fields in the Frame - -@@ -267,6 +267,11 @@ type Framer struct { - lastFrame Frame - errDetail error - -+ // countError is a non-nil func that's called on a frame parse -+ // error with some unique error path token. It's initialized -+ // from Transport.CountError or Server.CountError. -+ countError func(errToken string) -+ - // lastHeaderStream is non-zero if the last frame was an - // unfinished HEADERS/CONTINUATION. - lastHeaderStream uint32 -@@ -426,6 +431,7 @@ func NewFramer(w io.Writer, r io.Reader) *Framer { - fr := &Framer{ - w: w, - r: r, -+ countError: func(string) {}, - logReads: logFrameReads, - logWrites: logFrameWrites, - debugReadLoggerf: log.Printf, -@@ -500,7 +506,7 @@ func (fr *Framer) ReadFrame() (Frame, error) { - if _, err := io.ReadFull(fr.r, payload); err != nil { - return nil, err - } -- f, err := typeFrameParser(fh.Type)(fr.frameCache, fh, payload) -+ f, err := typeFrameParser(fh.Type)(fr.frameCache, fh, fr.countError, payload) - if err != nil { - if ce, ok := err.(connError); ok { - return nil, fr.connError(ce.Code, ce.Reason) -@@ -569,7 +575,7 @@ func (fr *Framer) checkFrameOrder(f Frame) error { - - // A DataFrame conveys arbitrary, variable-length sequences of octets - // associated with a stream. --// See http://http2.github.io/http2-spec/#rfc.section.6.1 -+// See https://httpwg.org/specs/rfc7540.html#rfc.section.6.1 - type DataFrame struct { - FrameHeader - data []byte -@@ -588,13 +594,14 @@ func (f *DataFrame) Data() []byte { - return f.data - } - --func parseDataFrame(fc *frameCache, fh FrameHeader, payload []byte) (Frame, error) { -+func parseDataFrame(fc *frameCache, fh FrameHeader, countError func(string), payload []byte) (Frame, error) { - if fh.StreamID == 0 { - // DATA frames MUST be associated with a stream. If a - // DATA frame is received whose stream identifier - // field is 0x0, the recipient MUST respond with a - // connection error (Section 5.4.1) of type - // PROTOCOL_ERROR. -+ countError("frame_data_stream_0") - return nil, connError{ErrCodeProtocol, "DATA frame with stream ID 0"} - } - f := fc.getDataFrame() -@@ -605,6 +612,7 @@ func parseDataFrame(fc *frameCache, fh FrameHeader, payload []byte) (Frame, erro - var err error - payload, padSize, err = readByte(payload) - if err != nil { -+ countError("frame_data_pad_byte_short") - return nil, err - } - } -@@ -613,6 +621,7 @@ func parseDataFrame(fc *frameCache, fh FrameHeader, payload []byte) (Frame, erro - // length of the frame payload, the recipient MUST - // treat this as a connection error. - // Filed: https://github.com/http2/http2-spec/issues/610 -+ countError("frame_data_pad_too_big") - return nil, connError{ErrCodeProtocol, "pad size larger than data payload"} - } - f.data = payload[:len(payload)-int(padSize)] -@@ -689,13 +698,13 @@ func (f *Framer) WriteDataPadded(streamID uint32, endStream bool, data, pad []by - // endpoints communicate, such as preferences and constraints on peer - // behavior. - // --// See http://http2.github.io/http2-spec/#SETTINGS -+// See https://httpwg.org/specs/rfc7540.html#SETTINGS - type SettingsFrame struct { - FrameHeader - p []byte - } - --func parseSettingsFrame(_ *frameCache, fh FrameHeader, p []byte) (Frame, error) { -+func parseSettingsFrame(_ *frameCache, fh FrameHeader, countError func(string), p []byte) (Frame, error) { - if fh.Flags.Has(FlagSettingsAck) && fh.Length > 0 { - // When this (ACK 0x1) bit is set, the payload of the - // SETTINGS frame MUST be empty. Receipt of a -@@ -703,6 +712,7 @@ func parseSettingsFrame(_ *frameCache, fh FrameHeader, p []byte) (Frame, error) - // field value other than 0 MUST be treated as a - // connection error (Section 5.4.1) of type - // FRAME_SIZE_ERROR. -+ countError("frame_settings_ack_with_length") - return nil, ConnectionError(ErrCodeFrameSize) - } - if fh.StreamID != 0 { -@@ -713,14 +723,17 @@ func parseSettingsFrame(_ *frameCache, fh FrameHeader, p []byte) (Frame, error) - // field is anything other than 0x0, the endpoint MUST - // respond with a connection error (Section 5.4.1) of - // type PROTOCOL_ERROR. -+ countError("frame_settings_has_stream") - return nil, ConnectionError(ErrCodeProtocol) - } - if len(p)%6 != 0 { -+ countError("frame_settings_mod_6") - // Expecting even number of 6 byte settings. - return nil, ConnectionError(ErrCodeFrameSize) - } - f := &SettingsFrame{FrameHeader: fh, p: p} - if v, ok := f.Value(SettingInitialWindowSize); ok && v > (1<<31)-1 { -+ countError("frame_settings_window_size_too_big") - // Values above the maximum flow control window size of 2^31 - 1 MUST - // be treated as a connection error (Section 5.4.1) of type - // FLOW_CONTROL_ERROR. -@@ -824,7 +837,7 @@ func (f *Framer) WriteSettingsAck() error { - // A PingFrame is a mechanism for measuring a minimal round trip time - // from the sender, as well as determining whether an idle connection - // is still functional. --// See http://http2.github.io/http2-spec/#rfc.section.6.7 -+// See https://httpwg.org/specs/rfc7540.html#rfc.section.6.7 - type PingFrame struct { - FrameHeader - Data [8]byte -@@ -832,11 +845,13 @@ type PingFrame struct { - - func (f *PingFrame) IsAck() bool { return f.Flags.Has(FlagPingAck) } - --func parsePingFrame(_ *frameCache, fh FrameHeader, payload []byte) (Frame, error) { -+func parsePingFrame(_ *frameCache, fh FrameHeader, countError func(string), payload []byte) (Frame, error) { - if len(payload) != 8 { -+ countError("frame_ping_length") - return nil, ConnectionError(ErrCodeFrameSize) - } - if fh.StreamID != 0 { -+ countError("frame_ping_has_stream") - return nil, ConnectionError(ErrCodeProtocol) - } - f := &PingFrame{FrameHeader: fh} -@@ -855,7 +870,7 @@ func (f *Framer) WritePing(ack bool, data [8]byte) error { - } - - // A GoAwayFrame informs the remote peer to stop creating streams on this connection. --// See http://http2.github.io/http2-spec/#rfc.section.6.8 -+// See https://httpwg.org/specs/rfc7540.html#rfc.section.6.8 - type GoAwayFrame struct { - FrameHeader - LastStreamID uint32 -@@ -872,11 +887,13 @@ func (f *GoAwayFrame) DebugData() []byte { - return f.debugData - } - --func parseGoAwayFrame(_ *frameCache, fh FrameHeader, p []byte) (Frame, error) { -+func parseGoAwayFrame(_ *frameCache, fh FrameHeader, countError func(string), p []byte) (Frame, error) { - if fh.StreamID != 0 { -+ countError("frame_goaway_has_stream") - return nil, ConnectionError(ErrCodeProtocol) - } - if len(p) < 8 { -+ countError("frame_goaway_short") - return nil, ConnectionError(ErrCodeFrameSize) - } - return &GoAwayFrame{ -@@ -912,19 +929,20 @@ func (f *UnknownFrame) Payload() []byte { - return f.p - } - --func parseUnknownFrame(_ *frameCache, fh FrameHeader, p []byte) (Frame, error) { -+func parseUnknownFrame(_ *frameCache, fh FrameHeader, countError func(string), p []byte) (Frame, error) { - return &UnknownFrame{fh, p}, nil - } - - // A WindowUpdateFrame is used to implement flow control. --// See http://http2.github.io/http2-spec/#rfc.section.6.9 -+// See https://httpwg.org/specs/rfc7540.html#rfc.section.6.9 - type WindowUpdateFrame struct { - FrameHeader - Increment uint32 // never read with high bit set - } - --func parseWindowUpdateFrame(_ *frameCache, fh FrameHeader, p []byte) (Frame, error) { -+func parseWindowUpdateFrame(_ *frameCache, fh FrameHeader, countError func(string), p []byte) (Frame, error) { - if len(p) != 4 { -+ countError("frame_windowupdate_bad_len") - return nil, ConnectionError(ErrCodeFrameSize) - } - inc := binary.BigEndian.Uint32(p[:4]) & 0x7fffffff // mask off high reserved bit -@@ -936,8 +954,10 @@ func parseWindowUpdateFrame(_ *frameCache, fh FrameHeader, p []byte) (Frame, err - // control window MUST be treated as a connection - // error (Section 5.4.1). - if fh.StreamID == 0 { -+ countError("frame_windowupdate_zero_inc_conn") - return nil, ConnectionError(ErrCodeProtocol) - } -+ countError("frame_windowupdate_zero_inc_stream") - return nil, streamError(fh.StreamID, ErrCodeProtocol) - } - return &WindowUpdateFrame{ -@@ -988,7 +1008,7 @@ func (f *HeadersFrame) HasPriority() bool { - return f.FrameHeader.Flags.Has(FlagHeadersPriority) - } - --func parseHeadersFrame(_ *frameCache, fh FrameHeader, p []byte) (_ Frame, err error) { -+func parseHeadersFrame(_ *frameCache, fh FrameHeader, countError func(string), p []byte) (_ Frame, err error) { - hf := &HeadersFrame{ - FrameHeader: fh, - } -@@ -997,11 +1017,13 @@ func parseHeadersFrame(_ *frameCache, fh FrameHeader, p []byte) (_ Frame, err er - // is received whose stream identifier field is 0x0, the recipient MUST - // respond with a connection error (Section 5.4.1) of type - // PROTOCOL_ERROR. -+ countError("frame_headers_zero_stream") - return nil, connError{ErrCodeProtocol, "HEADERS frame with stream ID 0"} - } - var padLength uint8 - if fh.Flags.Has(FlagHeadersPadded) { - if p, padLength, err = readByte(p); err != nil { -+ countError("frame_headers_pad_short") - return - } - } -@@ -1009,16 +1031,19 @@ func parseHeadersFrame(_ *frameCache, fh FrameHeader, p []byte) (_ Frame, err er - var v uint32 - p, v, err = readUint32(p) - if err != nil { -+ countError("frame_headers_prio_short") - return nil, err - } - hf.Priority.StreamDep = v & 0x7fffffff - hf.Priority.Exclusive = (v != hf.Priority.StreamDep) // high bit was set - p, hf.Priority.Weight, err = readByte(p) - if err != nil { -+ countError("frame_headers_prio_weight_short") - return nil, err - } - } -- if len(p)-int(padLength) <= 0 { -+ if len(p)-int(padLength) < 0 { -+ countError("frame_headers_pad_too_big") - return nil, streamError(fh.StreamID, ErrCodeProtocol) - } - hf.headerFragBuf = p[:len(p)-int(padLength)] -@@ -1098,7 +1123,7 @@ func (f *Framer) WriteHeaders(p HeadersFrameParam) error { - } - - // A PriorityFrame specifies the sender-advised priority of a stream. --// See http://http2.github.io/http2-spec/#rfc.section.6.3 -+// See https://httpwg.org/specs/rfc7540.html#rfc.section.6.3 - type PriorityFrame struct { - FrameHeader - PriorityParam -@@ -1125,11 +1150,13 @@ func (p PriorityParam) IsZero() bool { - return p == PriorityParam{} - } - --func parsePriorityFrame(_ *frameCache, fh FrameHeader, payload []byte) (Frame, error) { -+func parsePriorityFrame(_ *frameCache, fh FrameHeader, countError func(string), payload []byte) (Frame, error) { - if fh.StreamID == 0 { -+ countError("frame_priority_zero_stream") - return nil, connError{ErrCodeProtocol, "PRIORITY frame with stream ID 0"} - } - if len(payload) != 5 { -+ countError("frame_priority_bad_length") - return nil, connError{ErrCodeFrameSize, fmt.Sprintf("PRIORITY frame payload size was %d; want 5", len(payload))} - } - v := binary.BigEndian.Uint32(payload[:4]) -@@ -1166,17 +1193,19 @@ func (f *Framer) WritePriority(streamID uint32, p PriorityParam) error { - } - - // A RSTStreamFrame allows for abnormal termination of a stream. --// See http://http2.github.io/http2-spec/#rfc.section.6.4 -+// See https://httpwg.org/specs/rfc7540.html#rfc.section.6.4 - type RSTStreamFrame struct { - FrameHeader - ErrCode ErrCode - } - --func parseRSTStreamFrame(_ *frameCache, fh FrameHeader, p []byte) (Frame, error) { -+func parseRSTStreamFrame(_ *frameCache, fh FrameHeader, countError func(string), p []byte) (Frame, error) { - if len(p) != 4 { -+ countError("frame_rststream_bad_len") - return nil, ConnectionError(ErrCodeFrameSize) - } - if fh.StreamID == 0 { -+ countError("frame_rststream_zero_stream") - return nil, ConnectionError(ErrCodeProtocol) - } - return &RSTStreamFrame{fh, ErrCode(binary.BigEndian.Uint32(p[:4]))}, nil -@@ -1196,14 +1225,15 @@ func (f *Framer) WriteRSTStream(streamID uint32, code ErrCode) error { - } - - // A ContinuationFrame is used to continue a sequence of header block fragments. --// See http://http2.github.io/http2-spec/#rfc.section.6.10 -+// See https://httpwg.org/specs/rfc7540.html#rfc.section.6.10 - type ContinuationFrame struct { - FrameHeader - headerFragBuf []byte - } - --func parseContinuationFrame(_ *frameCache, fh FrameHeader, p []byte) (Frame, error) { -+func parseContinuationFrame(_ *frameCache, fh FrameHeader, countError func(string), p []byte) (Frame, error) { - if fh.StreamID == 0 { -+ countError("frame_continuation_zero_stream") - return nil, connError{ErrCodeProtocol, "CONTINUATION frame with stream ID 0"} - } - return &ContinuationFrame{fh, p}, nil -@@ -1236,7 +1266,7 @@ func (f *Framer) WriteContinuation(streamID uint32, endHeaders bool, headerBlock - } - - // A PushPromiseFrame is used to initiate a server stream. --// See http://http2.github.io/http2-spec/#rfc.section.6.6 -+// See https://httpwg.org/specs/rfc7540.html#rfc.section.6.6 - type PushPromiseFrame struct { - FrameHeader - PromiseID uint32 -@@ -1252,7 +1282,7 @@ func (f *PushPromiseFrame) HeadersEnded() bool { - return f.FrameHeader.Flags.Has(FlagPushPromiseEndHeaders) - } - --func parsePushPromise(_ *frameCache, fh FrameHeader, p []byte) (_ Frame, err error) { -+func parsePushPromise(_ *frameCache, fh FrameHeader, countError func(string), p []byte) (_ Frame, err error) { - pp := &PushPromiseFrame{ - FrameHeader: fh, - } -@@ -1263,6 +1293,7 @@ func parsePushPromise(_ *frameCache, fh FrameHeader, p []byte) (_ Frame, err err - // with. If the stream identifier field specifies the value - // 0x0, a recipient MUST respond with a connection error - // (Section 5.4.1) of type PROTOCOL_ERROR. -+ countError("frame_pushpromise_zero_stream") - return nil, ConnectionError(ErrCodeProtocol) - } - // The PUSH_PROMISE frame includes optional padding. -@@ -1270,18 +1301,21 @@ func parsePushPromise(_ *frameCache, fh FrameHeader, p []byte) (_ Frame, err err - var padLength uint8 - if fh.Flags.Has(FlagPushPromisePadded) { - if p, padLength, err = readByte(p); err != nil { -+ countError("frame_pushpromise_pad_short") - return - } - } - - p, pp.PromiseID, err = readUint32(p) - if err != nil { -+ countError("frame_pushpromise_promiseid_short") - return - } - pp.PromiseID = pp.PromiseID & (1<<31 - 1) - - if int(padLength) > len(p) { - // like the DATA frame, error out if padding is longer than the body. -+ countError("frame_pushpromise_pad_too_big") - return nil, ConnectionError(ErrCodeProtocol) - } - pp.headerFragBuf = p[:len(p)-int(padLength)] -@@ -1498,7 +1532,8 @@ func (fr *Framer) readMetaFrame(hf *HeadersFrame) (*MetaHeadersFrame, error) { - fr.debugReadLoggerf("http2: decoded hpack field %+v", hf) - } - if !httpguts.ValidHeaderFieldValue(hf.Value) { -- invalid = headerFieldValueError(hf.Value) -+ // Don't include the value in the error, because it may be sensitive. -+ invalid = headerFieldValueError(hf.Name) - } - isPseudo := strings.HasPrefix(hf.Name, ":") - if isPseudo { -diff --git a/vendor/golang.org/x/net/http2/go111.go b/vendor/golang.org/x/net/http2/go111.go -index 3a13101..5bf62b0 100644 ---- a/vendor/golang.org/x/net/http2/go111.go -+++ b/vendor/golang.org/x/net/http2/go111.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build go1.11 - // +build go1.11 - - package http2 -diff --git a/vendor/golang.org/x/net/http2/go115.go b/vendor/golang.org/x/net/http2/go115.go -new file mode 100644 -index 0000000..908af1a ---- /dev/null -+++ b/vendor/golang.org/x/net/http2/go115.go -@@ -0,0 +1,27 @@ -+// Copyright 2021 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build go1.15 -+// +build go1.15 -+ -+package http2 -+ -+import ( -+ "context" -+ "crypto/tls" -+) -+ -+// dialTLSWithContext uses tls.Dialer, added in Go 1.15, to open a TLS -+// connection. -+func (t *Transport) dialTLSWithContext(ctx context.Context, network, addr string, cfg *tls.Config) (*tls.Conn, error) { -+ dialer := &tls.Dialer{ -+ Config: cfg, -+ } -+ cn, err := dialer.DialContext(ctx, network, addr) -+ if err != nil { -+ return nil, err -+ } -+ tlsCn := cn.(*tls.Conn) // DialContext comment promises this will always succeed -+ return tlsCn, nil -+} -diff --git a/vendor/golang.org/x/net/http2/go118.go b/vendor/golang.org/x/net/http2/go118.go -new file mode 100644 -index 0000000..aca4b2b ---- /dev/null -+++ b/vendor/golang.org/x/net/http2/go118.go -@@ -0,0 +1,17 @@ -+// Copyright 2021 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build go1.18 -+// +build go1.18 -+ -+package http2 -+ -+import ( -+ "crypto/tls" -+ "net" -+) -+ -+func tlsUnderlyingConn(tc *tls.Conn) net.Conn { -+ return tc.NetConn() -+} -diff --git a/vendor/golang.org/x/net/http2/headermap.go b/vendor/golang.org/x/net/http2/headermap.go -index c3ff3fa..9e12941 100644 ---- a/vendor/golang.org/x/net/http2/headermap.go -+++ b/vendor/golang.org/x/net/http2/headermap.go -@@ -6,7 +6,6 @@ package http2 - - import ( - "net/http" -- "strings" - "sync" - ) - -@@ -79,10 +78,10 @@ func buildCommonHeaderMaps() { - } - } - --func lowerHeader(v string) string { -+func lowerHeader(v string) (lower string, ascii bool) { - buildCommonHeaderMapsOnce() - if s, ok := commonLowerHeader[v]; ok { -- return s -+ return s, true - } -- return strings.ToLower(v) -+ return asciiToLower(v) - } -diff --git a/vendor/golang.org/x/net/http2/hpack/encode.go b/vendor/golang.org/x/net/http2/hpack/encode.go -index 97f1783..6886dc1 100644 ---- a/vendor/golang.org/x/net/http2/hpack/encode.go -+++ b/vendor/golang.org/x/net/http2/hpack/encode.go -@@ -191,7 +191,7 @@ func appendTableSize(dst []byte, v uint32) []byte { - // bit prefix, to dst and returns the extended buffer. - // - // See --// http://http2.github.io/http2-spec/compression.html#integer.representation -+// https://httpwg.org/specs/rfc7541.html#integer.representation - func appendVarInt(dst []byte, n byte, i uint64) []byte { - k := uint64((1 << n) - 1) - if i < k { -diff --git a/vendor/golang.org/x/net/http2/hpack/hpack.go b/vendor/golang.org/x/net/http2/hpack/hpack.go -index 85f18a2..ebdfbee 100644 ---- a/vendor/golang.org/x/net/http2/hpack/hpack.go -+++ b/vendor/golang.org/x/net/http2/hpack/hpack.go -@@ -59,7 +59,7 @@ func (hf HeaderField) String() string { - - // Size returns the size of an entry per RFC 7541 section 4.1. - func (hf HeaderField) Size() uint32 { -- // http://http2.github.io/http2-spec/compression.html#rfc.section.4.1 -+ // https://httpwg.org/specs/rfc7541.html#rfc.section.4.1 - // "The size of the dynamic table is the sum of the size of - // its entries. The size of an entry is the sum of its name's - // length in octets (as defined in Section 5.2), its value's -@@ -158,7 +158,7 @@ func (d *Decoder) SetAllowedMaxDynamicTableSize(v uint32) { - } - - type dynamicTable struct { -- // http://http2.github.io/http2-spec/compression.html#rfc.section.2.3.2 -+ // https://httpwg.org/specs/rfc7541.html#rfc.section.2.3.2 - table headerFieldTable - size uint32 // in bytes - maxSize uint32 // current maxSize -@@ -307,27 +307,27 @@ func (d *Decoder) parseHeaderFieldRepr() error { - case b&128 != 0: - // Indexed representation. - // High bit set? -- // http://http2.github.io/http2-spec/compression.html#rfc.section.6.1 -+ // https://httpwg.org/specs/rfc7541.html#rfc.section.6.1 - return d.parseFieldIndexed() - case b&192 == 64: - // 6.2.1 Literal Header Field with Incremental Indexing - // 0b10xxxxxx: top two bits are 10 -- // http://http2.github.io/http2-spec/compression.html#rfc.section.6.2.1 -+ // https://httpwg.org/specs/rfc7541.html#rfc.section.6.2.1 - return d.parseFieldLiteral(6, indexedTrue) - case b&240 == 0: - // 6.2.2 Literal Header Field without Indexing - // 0b0000xxxx: top four bits are 0000 -- // http://http2.github.io/http2-spec/compression.html#rfc.section.6.2.2 -+ // https://httpwg.org/specs/rfc7541.html#rfc.section.6.2.2 - return d.parseFieldLiteral(4, indexedFalse) - case b&240 == 16: - // 6.2.3 Literal Header Field never Indexed - // 0b0001xxxx: top four bits are 0001 -- // http://http2.github.io/http2-spec/compression.html#rfc.section.6.2.3 -+ // https://httpwg.org/specs/rfc7541.html#rfc.section.6.2.3 - return d.parseFieldLiteral(4, indexedNever) - case b&224 == 32: - // 6.3 Dynamic Table Size Update - // Top three bits are '001'. -- // http://http2.github.io/http2-spec/compression.html#rfc.section.6.3 -+ // https://httpwg.org/specs/rfc7541.html#rfc.section.6.3 - return d.parseDynamicTableSizeUpdate() - } - -@@ -420,7 +420,7 @@ var errVarintOverflow = DecodingError{errors.New("varint integer overflow")} - - // readVarInt reads an unsigned variable length integer off the - // beginning of p. n is the parameter as described in --// http://http2.github.io/http2-spec/compression.html#rfc.section.5.1. -+// https://httpwg.org/specs/rfc7541.html#rfc.section.5.1. - // - // n must always be between 1 and 8. - // -diff --git a/vendor/golang.org/x/net/http2/hpack/huffman.go b/vendor/golang.org/x/net/http2/hpack/huffman.go -index a1ab2f0..20d083a 100644 ---- a/vendor/golang.org/x/net/http2/hpack/huffman.go -+++ b/vendor/golang.org/x/net/http2/hpack/huffman.go -@@ -140,50 +140,79 @@ func buildRootHuffmanNode() { - panic("unexpected size") - } - lazyRootHuffmanNode = newInternalNode() -- for i, code := range huffmanCodes { -- addDecoderNode(byte(i), code, huffmanCodeLen[i]) -- } --} -+ // allocate a leaf node for each of the 256 symbols -+ leaves := new([256]node) -+ -+ for sym, code := range huffmanCodes { -+ codeLen := huffmanCodeLen[sym] -+ -+ cur := lazyRootHuffmanNode -+ for codeLen > 8 { -+ codeLen -= 8 -+ i := uint8(code >> codeLen) -+ if cur.children[i] == nil { -+ cur.children[i] = newInternalNode() -+ } -+ cur = cur.children[i] -+ } -+ shift := 8 - codeLen -+ start, end := int(uint8(code< 8 { -- codeLen -= 8 -- i := uint8(code >> codeLen) -- if cur.children[i] == nil { -- cur.children[i] = newInternalNode() -+ leaves[sym].sym = byte(sym) -+ leaves[sym].codeLen = codeLen -+ for i := start; i < start+end; i++ { -+ cur.children[i] = &leaves[sym] - } -- cur = cur.children[i] -- } -- shift := 8 - codeLen -- start, end := int(uint8(code<= 32 { -+ n %= 32 // Normally would be -= 32 but %= 32 informs compiler 0 <= n <= 31 for upcoming shift -+ y := uint32(x >> n) // Compiler doesn't combine memory writes if y isn't uint32 -+ dst = append(dst, byte(y>>24), byte(y>>16), byte(y>>8), byte(y)) - } -- dst, rembits = appendByteToHuffmanCode(dst, rembits, s[i]) - } -- -- if rembits < 8 { -- // special EOS symbol -- code := uint32(0x3fffffff) -- nbits := uint8(30) -- -- t := uint8(code >> (nbits - rembits)) -- dst[len(dst)-1] |= t -+ // Add padding bits if necessary -+ if over := n % 8; over > 0 { -+ const ( -+ eosCode = 0x3fffffff -+ eosNBits = 30 -+ eosPadByte = eosCode >> (eosNBits - 8) -+ ) -+ pad := 8 - over -+ x = (x << pad) | (eosPadByte >> over) -+ n += pad // 8 now divides into n exactly - } -- -- return dst -+ // n in (0, 8, 16, 24, 32) -+ switch n / 8 { -+ case 0: -+ return dst -+ case 1: -+ return append(dst, byte(x)) -+ case 2: -+ y := uint16(x) -+ return append(dst, byte(y>>8), byte(y)) -+ case 3: -+ y := uint16(x >> 8) -+ return append(dst, byte(y>>8), byte(y), byte(x)) -+ } -+ // case 4: -+ y := uint32(x) -+ return append(dst, byte(y>>24), byte(y>>16), byte(y>>8), byte(y)) - } - - // HuffmanEncodeLength returns the number of bytes required to encode -@@ -195,35 +224,3 @@ func HuffmanEncodeLength(s string) uint64 { - } - return (n + 7) / 8 - } -- --// appendByteToHuffmanCode appends Huffman code for c to dst and --// returns the extended buffer and the remaining bits in the last --// element. The appending is not byte aligned and the remaining bits --// in the last element of dst is given in rembits. --func appendByteToHuffmanCode(dst []byte, rembits uint8, c byte) ([]byte, uint8) { -- code := huffmanCodes[c] -- nbits := huffmanCodeLen[c] -- -- for { -- if rembits > nbits { -- t := uint8(code << (rembits - nbits)) -- dst[len(dst)-1] |= t -- rembits -= nbits -- break -- } -- -- t := uint8(code >> (nbits - rembits)) -- dst[len(dst)-1] |= t -- -- nbits -= rembits -- rembits = 8 -- -- if nbits == 0 { -- break -- } -- -- dst = append(dst, 0) -- } -- -- return dst, rembits --} -diff --git a/vendor/golang.org/x/net/http2/http2.go b/vendor/golang.org/x/net/http2/http2.go -index 5571ccf..6f2df28 100644 ---- a/vendor/golang.org/x/net/http2/http2.go -+++ b/vendor/golang.org/x/net/http2/http2.go -@@ -13,7 +13,6 @@ - // See https://http2.github.io/ for more information on HTTP/2. - // - // See https://http2.golang.org/ for a test server running this code. --// - package http2 // import "golang.org/x/net/http2" - - import ( -@@ -56,14 +55,14 @@ const ( - ClientPreface = "PRI * HTTP/2.0\r\n\r\nSM\r\n\r\n" - - // SETTINGS_MAX_FRAME_SIZE default -- // http://http2.github.io/http2-spec/#rfc.section.6.5.2 -+ // https://httpwg.org/specs/rfc7540.html#rfc.section.6.5.2 - initialMaxFrameSize = 16384 - - // NextProtoTLS is the NPN/ALPN protocol negotiated during - // HTTP/2's TLS setup. - NextProtoTLS = "h2" - -- // http://http2.github.io/http2-spec/#SettingValues -+ // https://httpwg.org/specs/rfc7540.html#SettingValues - initialHeaderTableSize = 4096 - - initialWindowSize = 65535 // 6.9.2 Initial Flow Control Window Size -@@ -112,7 +111,7 @@ func (st streamState) String() string { - // Setting is a setting parameter: which setting it is, and its value. - type Setting struct { - // ID is which setting is being set. -- // See http://http2.github.io/http2-spec/#SettingValues -+ // See https://httpwg.org/specs/rfc7540.html#SettingFormat - ID SettingID - - // Val is the value. -@@ -144,7 +143,7 @@ func (s Setting) Valid() error { - } - - // A SettingID is an HTTP/2 setting as defined in --// http://http2.github.io/http2-spec/#iana-settings -+// https://httpwg.org/specs/rfc7540.html#iana-settings - type SettingID uint16 - - const ( -@@ -176,10 +175,11 @@ func (s SettingID) String() string { - // name (key). See httpguts.ValidHeaderName for the base rules. - // - // Further, http2 says: --// "Just as in HTTP/1.x, header field names are strings of ASCII --// characters that are compared in a case-insensitive --// fashion. However, header field names MUST be converted to --// lowercase prior to their encoding in HTTP/2. " -+// -+// "Just as in HTTP/1.x, header field names are strings of ASCII -+// characters that are compared in a case-insensitive -+// fashion. However, header field names MUST be converted to -+// lowercase prior to their encoding in HTTP/2. " - func validWireHeaderFieldName(v string) bool { - if len(v) == 0 { - return false -@@ -365,8 +365,8 @@ func (s *sorter) SortStrings(ss []string) { - // validPseudoPath reports whether v is a valid :path pseudo-header - // value. It must be either: - // --// *) a non-empty string starting with '/' --// *) the string '*', for OPTIONS requests. -+// - a non-empty string starting with '/' -+// - the string '*', for OPTIONS requests. - // - // For now this is only used a quick check for deciding when to clean - // up Opaque URLs before sending requests from the Transport. -diff --git a/vendor/golang.org/x/net/http2/not_go111.go b/vendor/golang.org/x/net/http2/not_go111.go -index 161bca7..cc0baa8 100644 ---- a/vendor/golang.org/x/net/http2/not_go111.go -+++ b/vendor/golang.org/x/net/http2/not_go111.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build !go1.11 - // +build !go1.11 - - package http2 -diff --git a/vendor/golang.org/x/net/http2/not_go115.go b/vendor/golang.org/x/net/http2/not_go115.go -new file mode 100644 -index 0000000..e6c04cf ---- /dev/null -+++ b/vendor/golang.org/x/net/http2/not_go115.go -@@ -0,0 +1,31 @@ -+// Copyright 2021 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build !go1.15 -+// +build !go1.15 -+ -+package http2 -+ -+import ( -+ "context" -+ "crypto/tls" -+) -+ -+// dialTLSWithContext opens a TLS connection. -+func (t *Transport) dialTLSWithContext(ctx context.Context, network, addr string, cfg *tls.Config) (*tls.Conn, error) { -+ cn, err := tls.Dial(network, addr, cfg) -+ if err != nil { -+ return nil, err -+ } -+ if err := cn.Handshake(); err != nil { -+ return nil, err -+ } -+ if cfg.InsecureSkipVerify { -+ return cn, nil -+ } -+ if err := cn.VerifyHostname(cfg.ServerName); err != nil { -+ return nil, err -+ } -+ return cn, nil -+} -diff --git a/vendor/golang.org/x/net/http2/not_go118.go b/vendor/golang.org/x/net/http2/not_go118.go -new file mode 100644 -index 0000000..eab532c ---- /dev/null -+++ b/vendor/golang.org/x/net/http2/not_go118.go -@@ -0,0 +1,17 @@ -+// Copyright 2021 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build !go1.18 -+// +build !go1.18 -+ -+package http2 -+ -+import ( -+ "crypto/tls" -+ "net" -+) -+ -+func tlsUnderlyingConn(tc *tls.Conn) net.Conn { -+ return nil -+} -diff --git a/vendor/golang.org/x/net/http2/pipe.go b/vendor/golang.org/x/net/http2/pipe.go -index 2a5399e..c15b8a7 100644 ---- a/vendor/golang.org/x/net/http2/pipe.go -+++ b/vendor/golang.org/x/net/http2/pipe.go -@@ -30,6 +30,17 @@ type pipeBuffer interface { - io.Reader - } - -+// setBuffer initializes the pipe buffer. -+// It has no effect if the pipe is already closed. -+func (p *pipe) setBuffer(b pipeBuffer) { -+ p.mu.Lock() -+ defer p.mu.Unlock() -+ if p.err != nil || p.breakErr != nil { -+ return -+ } -+ p.b = b -+} -+ - func (p *pipe) Len() int { - p.mu.Lock() - defer p.mu.Unlock() -diff --git a/vendor/golang.org/x/net/http2/server.go b/vendor/golang.org/x/net/http2/server.go -index 345b7cd..d2e52f3 100644 ---- a/vendor/golang.org/x/net/http2/server.go -+++ b/vendor/golang.org/x/net/http2/server.go -@@ -130,6 +130,12 @@ type Server struct { - // If nil, a default scheduler is chosen. - NewWriteScheduler func() WriteScheduler - -+ // CountError, if non-nil, is called on HTTP/2 server errors. -+ // It's intended to increment a metric for monitoring, such -+ // as an expvar or Prometheus metric. -+ // The errType consists of only ASCII word characters. -+ CountError func(errType string) -+ - // Internal state. This is a pointer (rather than embedded directly) - // so that we don't embed a Mutex in this struct, which will make the - // struct non-copyable, which might break some callers. -@@ -231,13 +237,12 @@ func ConfigureServer(s *http.Server, conf *Server) error { - - if s.TLSConfig == nil { - s.TLSConfig = new(tls.Config) -- } else if s.TLSConfig.CipherSuites != nil { -- // If they already provided a CipherSuite list, return -- // an error if it has a bad order or is missing -- // ECDHE_RSA_WITH_AES_128_GCM_SHA256 or ECDHE_ECDSA_WITH_AES_128_GCM_SHA256. -+ } else if s.TLSConfig.CipherSuites != nil && s.TLSConfig.MinVersion < tls.VersionTLS13 { -+ // If they already provided a TLS 1.0–1.2 CipherSuite list, return an -+ // error if it is missing ECDHE_RSA_WITH_AES_128_GCM_SHA256 or -+ // ECDHE_ECDSA_WITH_AES_128_GCM_SHA256. - haveRequired := false -- sawBad := false -- for i, cs := range s.TLSConfig.CipherSuites { -+ for _, cs := range s.TLSConfig.CipherSuites { - switch cs { - case tls.TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, - // Alternative MTI cipher to not discourage ECDSA-only servers. -@@ -245,14 +250,9 @@ func ConfigureServer(s *http.Server, conf *Server) error { - tls.TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256: - haveRequired = true - } -- if isBadCipher(cs) { -- sawBad = true -- } else if sawBad { -- return fmt.Errorf("http2: TLSConfig.CipherSuites index %d contains an HTTP/2-approved cipher suite (%#04x), but it comes after unapproved cipher suites. With this configuration, clients that don't support previous, approved cipher suites may be given an unapproved one and reject the connection.", i, cs) -- } - } - if !haveRequired { -- return fmt.Errorf("http2: TLSConfig.CipherSuites is missing an HTTP/2-required AES_128_GCM_SHA256 cipher (need at least one of TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 or TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256).") -+ return fmt.Errorf("http2: TLSConfig.CipherSuites is missing an HTTP/2-required AES_128_GCM_SHA256 cipher (need at least one of TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 or TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256)") - } - } - -@@ -265,16 +265,12 @@ func ConfigureServer(s *http.Server, conf *Server) error { - - s.TLSConfig.PreferServerCipherSuites = true - -- haveNPN := false -- for _, p := range s.TLSConfig.NextProtos { -- if p == NextProtoTLS { -- haveNPN = true -- break -- } -- } -- if !haveNPN { -+ if !strSliceContains(s.TLSConfig.NextProtos, NextProtoTLS) { - s.TLSConfig.NextProtos = append(s.TLSConfig.NextProtos, NextProtoTLS) - } -+ if !strSliceContains(s.TLSConfig.NextProtos, "http/1.1") { -+ s.TLSConfig.NextProtos = append(s.TLSConfig.NextProtos, "http/1.1") -+ } - - if s.TLSNextProto == nil { - s.TLSNextProto = map[string]func(*http.Server, *tls.Conn, http.Handler){} -@@ -319,6 +315,20 @@ type ServeConnOpts struct { - // requests. If nil, BaseConfig.Handler is used. If BaseConfig - // or BaseConfig.Handler is nil, http.DefaultServeMux is used. - Handler http.Handler -+ -+ // UpgradeRequest is an initial request received on a connection -+ // undergoing an h2c upgrade. The request body must have been -+ // completely read from the connection before calling ServeConn, -+ // and the 101 Switching Protocols response written. -+ UpgradeRequest *http.Request -+ -+ // Settings is the decoded contents of the HTTP2-Settings header -+ // in an h2c upgrade request. -+ Settings []byte -+ -+ // SawClientPreface is set if the HTTP/2 connection preface -+ // has already been read from the connection. -+ SawClientPreface bool - } - - func (o *ServeConnOpts) context() context.Context { -@@ -387,6 +397,7 @@ func (s *Server) ServeConn(c net.Conn, opts *ServeConnOpts) { - headerTableSize: initialHeaderTableSize, - serveG: newGoroutineLock(), - pushEnabled: true, -+ sawClientPreface: opts.SawClientPreface, - } - - s.state.registerConn(sc) -@@ -404,7 +415,7 @@ func (s *Server) ServeConn(c net.Conn, opts *ServeConnOpts) { - if s.NewWriteScheduler != nil { - sc.writeSched = s.NewWriteScheduler() - } else { -- sc.writeSched = NewRandomWriteScheduler() -+ sc.writeSched = NewPriorityWriteScheduler(nil) - } - - // These start at the RFC-specified defaults. If there is a higher -@@ -415,6 +426,9 @@ func (s *Server) ServeConn(c net.Conn, opts *ServeConnOpts) { - sc.hpackEncoder = hpack.NewEncoder(&sc.headerWriteBuf) - - fr := NewFramer(sc.bw, c) -+ if s.CountError != nil { -+ fr.countError = s.CountError -+ } - fr.ReadMetaHeaders = hpack.NewDecoder(initialHeaderTableSize, nil) - fr.MaxHeaderListSize = sc.maxHeaderListSize() - fr.SetMaxReadFrameSize(s.maxReadFrameSize()) -@@ -466,9 +480,27 @@ func (s *Server) ServeConn(c net.Conn, opts *ServeConnOpts) { - } - } - -+ if opts.Settings != nil { -+ fr := &SettingsFrame{ -+ FrameHeader: FrameHeader{valid: true}, -+ p: opts.Settings, -+ } -+ if err := fr.ForeachSetting(sc.processSetting); err != nil { -+ sc.rejectConn(ErrCodeProtocol, "invalid settings") -+ return -+ } -+ opts.Settings = nil -+ } -+ - if hook := testHookGetServerConn; hook != nil { - hook(sc) - } -+ -+ if opts.UpgradeRequest != nil { -+ sc.upgradeRequest(opts.UpgradeRequest) -+ opts.UpgradeRequest = nil -+ } -+ - sc.serve() - } - -@@ -513,6 +545,7 @@ type serverConn struct { - // Everything following is owned by the serve loop; use serveG.check(): - serveG goroutineLock // used to verify funcs are on serve() - pushEnabled bool -+ sawClientPreface bool // preface has already been read, used in h2c upgrade - sawFirstSettings bool // got the initial SETTINGS frame after the preface - needToSendSettingsAck bool - unackedSettings int // how many SETTINGS have we sent without ACKs? -@@ -720,7 +753,15 @@ func (sc *serverConn) canonicalHeader(v string) string { - sc.canonHeader = make(map[string]string) - } - cv = http.CanonicalHeaderKey(v) -- sc.canonHeader[v] = cv -+ // maxCachedCanonicalHeaders is an arbitrarily-chosen limit on the number of -+ // entries in the canonHeader cache. This should be larger than the number -+ // of unique, uncommon header keys likely to be sent by the peer, while not -+ // so high as to permit unreasonable memory usage if the peer sends an unbounded -+ // number of unique header keys. -+ const maxCachedCanonicalHeaders = 32 -+ if len(sc.canonHeader) < maxCachedCanonicalHeaders { -+ sc.canonHeader[v] = cv -+ } - return cv - } - -@@ -826,7 +867,7 @@ func (sc *serverConn) serve() { - }) - sc.unackedSettings++ - -- // Each connection starts with intialWindowSize inflow tokens. -+ // Each connection starts with initialWindowSize inflow tokens. - // If a higher value is configured, we add more tokens. - if diff := sc.srv.initialConnRecvWindowSize() - initialWindowSize; diff > 0 { - sc.sendWindowUpdate(nil, int(diff)) -@@ -866,6 +907,15 @@ func (sc *serverConn) serve() { - case res := <-sc.wroteFrameCh: - sc.wroteFrame(res) - case res := <-sc.readFrameCh: -+ // Process any written frames before reading new frames from the client since a -+ // written frame could have triggered a new stream to be started. -+ if sc.writingFrameAsync { -+ select { -+ case wroteRes := <-sc.wroteFrameCh: -+ sc.wroteFrame(wroteRes) -+ default: -+ } -+ } - if !sc.processFrameFromReader(res) { - return - } -@@ -958,6 +1008,9 @@ var errPrefaceTimeout = errors.New("timeout waiting for client preface") - // returns errPrefaceTimeout on timeout, or an error if the greeting - // is invalid. - func (sc *serverConn) readPreface() error { -+ if sc.sawClientPreface { -+ return nil -+ } - errc := make(chan error, 1) - go func() { - // Read the client preface -@@ -1293,7 +1346,9 @@ func (sc *serverConn) startGracefulShutdown() { - sc.shutdownOnce.Do(func() { sc.sendServeMsg(gracefulShutdownMsg) }) - } - --// After sending GOAWAY, the connection will close after goAwayTimeout. -+// After sending GOAWAY with an error code (non-graceful shutdown), the -+// connection will close after goAwayTimeout. -+// - // If we close the connection immediately after sending GOAWAY, there may - // be unsent data in our kernel receive buffer, which will cause the kernel - // to send a TCP RST on close() instead of a FIN. This RST will abort the -@@ -1316,6 +1371,9 @@ func (sc *serverConn) startGracefulShutdownInternal() { - func (sc *serverConn) goAway(code ErrCode) { - sc.serveG.check() - if sc.inGoAway { -+ if sc.goAwayCode == ErrCodeNo { -+ sc.goAwayCode = code -+ } - return - } - sc.inGoAway = true -@@ -1398,7 +1456,7 @@ func (sc *serverConn) processFrame(f Frame) error { - // First frame received must be SETTINGS. - if !sc.sawFirstSettings { - if _, ok := f.(*SettingsFrame); !ok { -- return ConnectionError(ErrCodeProtocol) -+ return sc.countError("first_settings", ConnectionError(ErrCodeProtocol)) - } - sc.sawFirstSettings = true - } -@@ -1423,7 +1481,7 @@ func (sc *serverConn) processFrame(f Frame) error { - case *PushPromiseFrame: - // A client cannot push. Thus, servers MUST treat the receipt of a PUSH_PROMISE - // frame as a connection error (Section 5.4.1) of type PROTOCOL_ERROR. -- return ConnectionError(ErrCodeProtocol) -+ return sc.countError("push_promise", ConnectionError(ErrCodeProtocol)) - default: - sc.vlogf("http2: server ignoring frame: %v", f.Header()) - return nil -@@ -1443,7 +1501,7 @@ func (sc *serverConn) processPing(f *PingFrame) error { - // identifier field value other than 0x0, the recipient MUST - // respond with a connection error (Section 5.4.1) of type - // PROTOCOL_ERROR." -- return ConnectionError(ErrCodeProtocol) -+ return sc.countError("ping_on_stream", ConnectionError(ErrCodeProtocol)) - } - if sc.inGoAway && sc.goAwayCode != ErrCodeNo { - return nil -@@ -1462,7 +1520,7 @@ func (sc *serverConn) processWindowUpdate(f *WindowUpdateFrame) error { - // or PRIORITY on a stream in this state MUST be - // treated as a connection error (Section 5.4.1) of - // type PROTOCOL_ERROR." -- return ConnectionError(ErrCodeProtocol) -+ return sc.countError("stream_idle", ConnectionError(ErrCodeProtocol)) - } - if st == nil { - // "WINDOW_UPDATE can be sent by a peer that has sent a -@@ -1473,7 +1531,7 @@ func (sc *serverConn) processWindowUpdate(f *WindowUpdateFrame) error { - return nil - } - if !st.flow.add(int32(f.Increment)) { -- return streamError(f.StreamID, ErrCodeFlowControl) -+ return sc.countError("bad_flow", streamError(f.StreamID, ErrCodeFlowControl)) - } - default: // connection-level flow control - if !sc.flow.add(int32(f.Increment)) { -@@ -1494,7 +1552,7 @@ func (sc *serverConn) processResetStream(f *RSTStreamFrame) error { - // identifying an idle stream is received, the - // recipient MUST treat this as a connection error - // (Section 5.4.1) of type PROTOCOL_ERROR. -- return ConnectionError(ErrCodeProtocol) -+ return sc.countError("reset_idle_stream", ConnectionError(ErrCodeProtocol)) - } - if st != nil { - st.cancelCtx() -@@ -1546,7 +1604,7 @@ func (sc *serverConn) processSettings(f *SettingsFrame) error { - // Why is the peer ACKing settings we never sent? - // The spec doesn't mention this case, but - // hang up on them anyway. -- return ConnectionError(ErrCodeProtocol) -+ return sc.countError("ack_mystery", ConnectionError(ErrCodeProtocol)) - } - return nil - } -@@ -1554,7 +1612,7 @@ func (sc *serverConn) processSettings(f *SettingsFrame) error { - // This isn't actually in the spec, but hang up on - // suspiciously large settings frames or those with - // duplicate entries. -- return ConnectionError(ErrCodeProtocol) -+ return sc.countError("settings_big_or_dups", ConnectionError(ErrCodeProtocol)) - } - if err := f.ForeachSetting(sc.processSetting); err != nil { - return err -@@ -1621,7 +1679,7 @@ func (sc *serverConn) processSettingInitialWindowSize(val uint32) error { - // control window to exceed the maximum size as a - // connection error (Section 5.4.1) of type - // FLOW_CONTROL_ERROR." -- return ConnectionError(ErrCodeFlowControl) -+ return sc.countError("setting_win_size", ConnectionError(ErrCodeFlowControl)) - } - } - return nil -@@ -1629,23 +1687,37 @@ func (sc *serverConn) processSettingInitialWindowSize(val uint32) error { - - func (sc *serverConn) processData(f *DataFrame) error { - sc.serveG.check() -- if sc.inGoAway && sc.goAwayCode != ErrCodeNo { -+ id := f.Header().StreamID -+ if sc.inGoAway && (sc.goAwayCode != ErrCodeNo || id > sc.maxClientStreamID) { -+ // Discard all DATA frames if the GOAWAY is due to an -+ // error, or: -+ // -+ // Section 6.8: After sending a GOAWAY frame, the sender -+ // can discard frames for streams initiated by the -+ // receiver with identifiers higher than the identified -+ // last stream. - return nil - } -- data := f.Data() - -- // "If a DATA frame is received whose stream is not in "open" -- // or "half closed (local)" state, the recipient MUST respond -- // with a stream error (Section 5.4.2) of type STREAM_CLOSED." -- id := f.Header().StreamID -+ data := f.Data() - state, st := sc.state(id) - if id == 0 || state == stateIdle { -+ // Section 6.1: "DATA frames MUST be associated with a -+ // stream. If a DATA frame is received whose stream -+ // identifier field is 0x0, the recipient MUST respond -+ // with a connection error (Section 5.4.1) of type -+ // PROTOCOL_ERROR." -+ // - // Section 5.1: "Receiving any frame other than HEADERS - // or PRIORITY on a stream in this state MUST be - // treated as a connection error (Section 5.4.1) of - // type PROTOCOL_ERROR." -- return ConnectionError(ErrCodeProtocol) -+ return sc.countError("data_on_idle", ConnectionError(ErrCodeProtocol)) - } -+ -+ // "If a DATA frame is received whose stream is not in "open" -+ // or "half closed (local)" state, the recipient MUST respond -+ // with a stream error (Section 5.4.2) of type STREAM_CLOSED." - if st == nil || state != stateOpen || st.gotTrailerHeader || st.resetQueued { - // This includes sending a RST_STREAM if the stream is - // in stateHalfClosedLocal (which currently means that -@@ -1657,7 +1729,7 @@ func (sc *serverConn) processData(f *DataFrame) error { - // and return any flow control bytes since we're not going - // to consume them. - if sc.inflow.available() < int32(f.Length) { -- return streamError(id, ErrCodeFlowControl) -+ return sc.countError("data_flow", streamError(id, ErrCodeFlowControl)) - } - // Deduct the flow control from inflow, since we're - // going to immediately add it back in -@@ -1670,7 +1742,7 @@ func (sc *serverConn) processData(f *DataFrame) error { - // Already have a stream error in flight. Don't send another. - return nil - } -- return streamError(id, ErrCodeStreamClosed) -+ return sc.countError("closed", streamError(id, ErrCodeStreamClosed)) - } - if st.body == nil { - panic("internal error: should have a body in this state") -@@ -1678,23 +1750,30 @@ func (sc *serverConn) processData(f *DataFrame) error { - - // Sender sending more than they'd declared? - if st.declBodyBytes != -1 && st.bodyBytes+int64(len(data)) > st.declBodyBytes { -+ if sc.inflow.available() < int32(f.Length) { -+ return sc.countError("data_flow", streamError(id, ErrCodeFlowControl)) -+ } -+ sc.inflow.take(int32(f.Length)) -+ sc.sendWindowUpdate(nil, int(f.Length)) // conn-level -+ - st.body.CloseWithError(fmt.Errorf("sender tried to send more than declared Content-Length of %d bytes", st.declBodyBytes)) - // RFC 7540, sec 8.1.2.6: A request or response is also malformed if the - // value of a content-length header field does not equal the sum of the - // DATA frame payload lengths that form the body. -- return streamError(id, ErrCodeProtocol) -+ return sc.countError("send_too_much", streamError(id, ErrCodeProtocol)) - } - if f.Length > 0 { - // Check whether the client has flow control quota. - if st.inflow.available() < int32(f.Length) { -- return streamError(id, ErrCodeFlowControl) -+ return sc.countError("flow_on_data_length", streamError(id, ErrCodeFlowControl)) - } - st.inflow.take(int32(f.Length)) - - if len(data) > 0 { - wrote, err := st.body.Write(data) - if err != nil { -- return streamError(id, ErrCodeStreamClosed) -+ sc.sendWindowUpdate(nil, int(f.Length)-wrote) -+ return sc.countError("body_write_err", streamError(id, ErrCodeStreamClosed)) - } - if wrote != len(data) { - panic("internal error: bad Writer") -@@ -1780,7 +1859,7 @@ func (sc *serverConn) processHeaders(f *MetaHeadersFrame) error { - // stream identifier MUST respond with a connection error - // (Section 5.4.1) of type PROTOCOL_ERROR. - if id%2 != 1 { -- return ConnectionError(ErrCodeProtocol) -+ return sc.countError("headers_even", ConnectionError(ErrCodeProtocol)) - } - // A HEADERS frame can be used to create a new stream or - // send a trailer for an open one. If we already have a stream -@@ -1797,7 +1876,7 @@ func (sc *serverConn) processHeaders(f *MetaHeadersFrame) error { - // this state, it MUST respond with a stream error (Section 5.4.2) of - // type STREAM_CLOSED. - if st.state == stateHalfClosedRemote { -- return streamError(id, ErrCodeStreamClosed) -+ return sc.countError("headers_half_closed", streamError(id, ErrCodeStreamClosed)) - } - return st.processTrailerHeaders(f) - } -@@ -1808,7 +1887,7 @@ func (sc *serverConn) processHeaders(f *MetaHeadersFrame) error { - // receives an unexpected stream identifier MUST respond with - // a connection error (Section 5.4.1) of type PROTOCOL_ERROR. - if id <= sc.maxClientStreamID { -- return ConnectionError(ErrCodeProtocol) -+ return sc.countError("stream_went_down", ConnectionError(ErrCodeProtocol)) - } - sc.maxClientStreamID = id - -@@ -1825,14 +1904,14 @@ func (sc *serverConn) processHeaders(f *MetaHeadersFrame) error { - if sc.curClientStreams+1 > sc.advMaxStreams { - if sc.unackedSettings == 0 { - // They should know better. -- return streamError(id, ErrCodeProtocol) -+ return sc.countError("over_max_streams", streamError(id, ErrCodeProtocol)) - } - // Assume it's a network race, where they just haven't - // received our last SETTINGS update. But actually - // this can't happen yet, because we don't yet provide - // a way for users to adjust server parameters at - // runtime. -- return streamError(id, ErrCodeRefusedStream) -+ return sc.countError("over_max_streams_race", streamError(id, ErrCodeRefusedStream)) - } - - initialState := stateOpen -@@ -1842,7 +1921,7 @@ func (sc *serverConn) processHeaders(f *MetaHeadersFrame) error { - st := sc.newStream(id, 0, initialState) - - if f.HasPriority() { -- if err := checkPriority(f.StreamID, f.Priority); err != nil { -+ if err := sc.checkPriority(f.StreamID, f.Priority); err != nil { - return err - } - sc.writeSched.AdjustStream(st.id, f.Priority) -@@ -1882,19 +1961,39 @@ func (sc *serverConn) processHeaders(f *MetaHeadersFrame) error { - return nil - } - -+func (sc *serverConn) upgradeRequest(req *http.Request) { -+ sc.serveG.check() -+ id := uint32(1) -+ sc.maxClientStreamID = id -+ st := sc.newStream(id, 0, stateHalfClosedRemote) -+ st.reqTrailer = req.Trailer -+ if st.reqTrailer != nil { -+ st.trailer = make(http.Header) -+ } -+ rw := sc.newResponseWriter(st, req) -+ -+ // Disable any read deadline set by the net/http package -+ // prior to the upgrade. -+ if sc.hs.ReadTimeout != 0 { -+ sc.conn.SetReadDeadline(time.Time{}) -+ } -+ -+ go sc.runHandler(rw, req, sc.handler.ServeHTTP) -+} -+ - func (st *stream) processTrailerHeaders(f *MetaHeadersFrame) error { - sc := st.sc - sc.serveG.check() - if st.gotTrailerHeader { -- return ConnectionError(ErrCodeProtocol) -+ return sc.countError("dup_trailers", ConnectionError(ErrCodeProtocol)) - } - st.gotTrailerHeader = true - if !f.StreamEnded() { -- return streamError(st.id, ErrCodeProtocol) -+ return sc.countError("trailers_not_ended", streamError(st.id, ErrCodeProtocol)) - } - - if len(f.PseudoFields()) > 0 { -- return streamError(st.id, ErrCodeProtocol) -+ return sc.countError("trailers_pseudo", streamError(st.id, ErrCodeProtocol)) - } - if st.trailer != nil { - for _, hf := range f.RegularFields() { -@@ -1903,7 +2002,7 @@ func (st *stream) processTrailerHeaders(f *MetaHeadersFrame) error { - // TODO: send more details to the peer somehow. But http2 has - // no way to send debug data at a stream level. Discuss with - // HTTP folk. -- return streamError(st.id, ErrCodeProtocol) -+ return sc.countError("trailers_bogus", streamError(st.id, ErrCodeProtocol)) - } - st.trailer[key] = append(st.trailer[key], hf.Value) - } -@@ -1912,13 +2011,13 @@ func (st *stream) processTrailerHeaders(f *MetaHeadersFrame) error { - return nil - } - --func checkPriority(streamID uint32, p PriorityParam) error { -+func (sc *serverConn) checkPriority(streamID uint32, p PriorityParam) error { - if streamID == p.StreamDep { - // Section 5.3.1: "A stream cannot depend on itself. An endpoint MUST treat - // this as a stream error (Section 5.4.2) of type PROTOCOL_ERROR." - // Section 5.3.3 says that a stream can depend on one of its dependencies, - // so it's only self-dependencies that are forbidden. -- return streamError(streamID, ErrCodeProtocol) -+ return sc.countError("priority", streamError(streamID, ErrCodeProtocol)) - } - return nil - } -@@ -1927,7 +2026,7 @@ func (sc *serverConn) processPriority(f *PriorityFrame) error { - if sc.inGoAway { - return nil - } -- if err := checkPriority(f.StreamID, f.PriorityParam); err != nil { -+ if err := sc.checkPriority(f.StreamID, f.PriorityParam); err != nil { - return err - } - sc.writeSched.AdjustStream(f.StreamID, f.PriorityParam) -@@ -1984,7 +2083,7 @@ func (sc *serverConn) newWriterAndRequest(st *stream, f *MetaHeadersFrame) (*res - isConnect := rp.method == "CONNECT" - if isConnect { - if rp.path != "" || rp.scheme != "" || rp.authority == "" { -- return nil, nil, streamError(f.StreamID, ErrCodeProtocol) -+ return nil, nil, sc.countError("bad_connect", streamError(f.StreamID, ErrCodeProtocol)) - } - } else if rp.method == "" || rp.path == "" || (rp.scheme != "https" && rp.scheme != "http") { - // See 8.1.2.6 Malformed Requests and Responses: -@@ -1997,13 +2096,7 @@ func (sc *serverConn) newWriterAndRequest(st *stream, f *MetaHeadersFrame) (*res - // "All HTTP/2 requests MUST include exactly one valid - // value for the :method, :scheme, and :path - // pseudo-header fields" -- return nil, nil, streamError(f.StreamID, ErrCodeProtocol) -- } -- -- bodyOpen := !f.StreamEnded() -- if rp.method == "HEAD" && bodyOpen { -- // HEAD requests can't have bodies -- return nil, nil, streamError(f.StreamID, ErrCodeProtocol) -+ return nil, nil, sc.countError("bad_path_method", streamError(f.StreamID, ErrCodeProtocol)) - } - - rp.header = make(http.Header) -@@ -2018,9 +2111,14 @@ func (sc *serverConn) newWriterAndRequest(st *stream, f *MetaHeadersFrame) (*res - if err != nil { - return nil, nil, err - } -+ bodyOpen := !f.StreamEnded() - if bodyOpen { - if vv, ok := rp.header["Content-Length"]; ok { -- req.ContentLength, _ = strconv.ParseInt(vv[0], 10, 64) -+ if cl, err := strconv.ParseUint(vv[0], 10, 63); err == nil { -+ req.ContentLength = int64(cl) -+ } else { -+ req.ContentLength = 0 -+ } - } else { - req.ContentLength = -1 - } -@@ -2082,7 +2180,7 @@ func (sc *serverConn) newWriterAndRequestNoBody(st *stream, rp requestParam) (*r - var err error - url_, err = url.ParseRequestURI(rp.path) - if err != nil { -- return nil, nil, streamError(st.id, ErrCodeProtocol) -+ return nil, nil, sc.countError("bad_path", streamError(st.id, ErrCodeProtocol)) - } - requestURI = rp.path - } -@@ -2108,6 +2206,11 @@ func (sc *serverConn) newWriterAndRequestNoBody(st *stream, rp requestParam) (*r - } - req = req.WithContext(st.ctx) - -+ rw := sc.newResponseWriter(st, req) -+ return rw, req, nil -+} -+ -+func (sc *serverConn) newResponseWriter(st *stream, req *http.Request) *responseWriter { - rws := responseWriterStatePool.Get().(*responseWriterState) - bwSave := rws.bw - *rws = responseWriterState{} // zero all the fields -@@ -2116,10 +2219,7 @@ func (sc *serverConn) newWriterAndRequestNoBody(st *stream, rp requestParam) (*r - rws.bw.Reset(chunkWriter{rws}) - rws.stream = st - rws.req = req -- rws.body = body -- -- rw := &responseWriter{rws: rws} -- return rw, req, nil -+ return &responseWriter{rws: rws} - } - - // Run on its own goroutine. -@@ -2127,6 +2227,9 @@ func (sc *serverConn) runHandler(rw *responseWriter, req *http.Request, handler - didPanic := true - defer func() { - rw.rws.stream.cancelCtx() -+ if req.MultipartForm != nil { -+ req.MultipartForm.RemoveAll() -+ } - if didPanic { - e := recover() - sc.writeFrameFromHandler(FrameWriteRequest{ -@@ -2279,17 +2382,18 @@ type requestBody struct { - _ incomparable - stream *stream - conn *serverConn -- closed bool // for use by Close only -- sawEOF bool // for use by Read only -- pipe *pipe // non-nil if we have a HTTP entity message body -- needsContinue bool // need to send a 100-continue -+ closeOnce sync.Once // for use by Close only -+ sawEOF bool // for use by Read only -+ pipe *pipe // non-nil if we have a HTTP entity message body -+ needsContinue bool // need to send a 100-continue - } - - func (b *requestBody) Close() error { -- if b.pipe != nil && !b.closed { -- b.pipe.BreakWithError(errClosedBody) -- } -- b.closed = true -+ b.closeOnce.Do(func() { -+ if b.pipe != nil { -+ b.pipe.BreakWithError(errClosedBody) -+ } -+ }) - return nil - } - -@@ -2333,7 +2437,6 @@ type responseWriterState struct { - // immutable within a request: - stream *stream - req *http.Request -- body *requestBody // to close at end of request, if DATA frames didn't - conn *serverConn - - // TODO: adjust buffer writing sizes based on server config, frame size updates from peer, etc -@@ -2403,9 +2506,8 @@ func (rws *responseWriterState) writeChunk(p []byte) (n int, err error) { - var ctype, clen string - if clen = rws.snapHeader.Get("Content-Length"); clen != "" { - rws.snapHeader.Del("Content-Length") -- clen64, err := strconv.ParseInt(clen, 10, 64) -- if err == nil && clen64 >= 0 { -- rws.sentContentLen = clen64 -+ if cl, err := strconv.ParseUint(clen, 10, 63); err == nil { -+ rws.sentContentLen = int64(cl) - } else { - clen = "" - } -@@ -2510,8 +2612,9 @@ func (rws *responseWriterState) writeChunk(p []byte) (n int, err error) { - // prior to the headers being written. If the set of trailers is fixed - // or known before the header is written, the normal Go trailers mechanism - // is preferred: --// https://golang.org/pkg/net/http/#ResponseWriter --// https://golang.org/pkg/net/http/#example_ResponseWriter_trailers -+// -+// https://golang.org/pkg/net/http/#ResponseWriter -+// https://golang.org/pkg/net/http/#example_ResponseWriter_trailers - const TrailerPrefix = "Trailer:" - - // promoteUndeclaredTrailers permits http.Handlers to set trailers -@@ -2607,8 +2710,7 @@ func checkWriteHeaderCode(code int) { - // Issue 22880: require valid WriteHeader status codes. - // For now we only enforce that it's three digits. - // In the future we might block things over 599 (600 and above aren't defined -- // at http://httpwg.org/specs/rfc7231.html#status.codes) -- // and we might block under 200 (once we have more mature 1xx support). -+ // at http://httpwg.org/specs/rfc7231.html#status.codes). - // But for now any three digits. - // - // We used to send "HTTP/1.1 000 0" on the wire in responses but there's -@@ -2629,13 +2731,41 @@ func (w *responseWriter) WriteHeader(code int) { - } - - func (rws *responseWriterState) writeHeader(code int) { -- if !rws.wroteHeader { -- checkWriteHeaderCode(code) -- rws.wroteHeader = true -- rws.status = code -- if len(rws.handlerHeader) > 0 { -- rws.snapHeader = cloneHeader(rws.handlerHeader) -+ if rws.wroteHeader { -+ return -+ } -+ -+ checkWriteHeaderCode(code) -+ -+ // Handle informational headers -+ if code >= 100 && code <= 199 { -+ // Per RFC 8297 we must not clear the current header map -+ h := rws.handlerHeader -+ -+ _, cl := h["Content-Length"] -+ _, te := h["Transfer-Encoding"] -+ if cl || te { -+ h = h.Clone() -+ h.Del("Content-Length") -+ h.Del("Transfer-Encoding") - } -+ -+ if rws.conn.writeHeaders(rws.stream, &writeResHeaders{ -+ streamID: rws.stream.id, -+ httpResCode: code, -+ h: h, -+ endStream: rws.handlerDone && !rws.hasTrailers(), -+ }) != nil { -+ rws.dirty = true -+ } -+ -+ return -+ } -+ -+ rws.wroteHeader = true -+ rws.status = code -+ if len(rws.handlerHeader) > 0 { -+ rws.snapHeader = cloneHeader(rws.handlerHeader) - } - } - -@@ -2769,8 +2899,12 @@ func (w *responseWriter) Push(target string, opts *http.PushOptions) error { - // but PUSH_PROMISE requests cannot have a body. - // http://tools.ietf.org/html/rfc7540#section-8.2 - // Also disallow Host, since the promised URL must be absolute. -- switch strings.ToLower(k) { -- case "content-length", "content-encoding", "trailer", "te", "expect", "host": -+ if asciiEqualFold(k, "content-length") || -+ asciiEqualFold(k, "content-encoding") || -+ asciiEqualFold(k, "trailer") || -+ asciiEqualFold(k, "te") || -+ asciiEqualFold(k, "expect") || -+ asciiEqualFold(k, "host") { - return fmt.Errorf("promised request headers cannot include %q", k) - } - } -@@ -2962,3 +3096,31 @@ func h1ServerKeepAlivesDisabled(hs *http.Server) bool { - } - return false - } -+ -+func (sc *serverConn) countError(name string, err error) error { -+ if sc == nil || sc.srv == nil { -+ return err -+ } -+ f := sc.srv.CountError -+ if f == nil { -+ return err -+ } -+ var typ string -+ var code ErrCode -+ switch e := err.(type) { -+ case ConnectionError: -+ typ = "conn" -+ code = ErrCode(e) -+ case StreamError: -+ typ = "stream" -+ code = ErrCode(e.Code) -+ default: -+ return err -+ } -+ codeStr := errCodeName[code] -+ if codeStr == "" { -+ codeStr = strconv.Itoa(int(code)) -+ } -+ f(fmt.Sprintf("%s_%s_%s", typ, codeStr, name)) -+ return err -+} -diff --git a/vendor/golang.org/x/net/http2/transport.go b/vendor/golang.org/x/net/http2/transport.go -index 54acc1e..90fdc28 100644 ---- a/vendor/golang.org/x/net/http2/transport.go -+++ b/vendor/golang.org/x/net/http2/transport.go -@@ -16,7 +16,6 @@ import ( - "errors" - "fmt" - "io" -- "io/ioutil" - "log" - "math" - mathrand "math/rand" -@@ -24,6 +23,7 @@ import ( - "net/http" - "net/http/httptrace" - "net/textproto" -+ "os" - "sort" - "strconv" - "strings" -@@ -51,6 +51,15 @@ const ( - transportDefaultStreamMinRefresh = 4 << 10 - - defaultUserAgent = "Go-http-client/2.0" -+ -+ // initialMaxConcurrentStreams is a connections maxConcurrentStreams until -+ // it's received servers initial SETTINGS frame, which corresponds with the -+ // spec's minimum recommended value. -+ initialMaxConcurrentStreams = 100 -+ -+ // defaultMaxConcurrentStreams is a connections default maxConcurrentStreams -+ // if the server doesn't include one in its initial SETTINGS frame. -+ defaultMaxConcurrentStreams = 1000 - ) - - // Transport is an HTTP/2 Transport. -@@ -58,13 +67,23 @@ const ( - // A Transport internally caches connections to servers. It is safe - // for concurrent use by multiple goroutines. - type Transport struct { -- // DialTLS specifies an optional dial function for creating -- // TLS connections for requests. -+ // DialTLSContext specifies an optional dial function with context for -+ // creating TLS connections for requests. - // -- // If DialTLS is nil, tls.Dial is used. -+ // If DialTLSContext and DialTLS is nil, tls.Dial is used. - // - // If the returned net.Conn has a ConnectionState method like tls.Conn, - // it will be used to set http.Response.TLS. -+ DialTLSContext func(ctx context.Context, network, addr string, cfg *tls.Config) (net.Conn, error) -+ -+ // DialTLS specifies an optional dial function for creating -+ // TLS connections for requests. -+ // -+ // If DialTLSContext and DialTLS is nil, tls.Dial is used. -+ // -+ // Deprecated: Use DialTLSContext instead, which allows the transport -+ // to cancel dials as soon as they are no longer needed. -+ // If both are set, DialTLSContext takes priority. - DialTLS func(network, addr string, cfg *tls.Config) (net.Conn, error) - - // TLSClientConfig specifies the TLS configuration to use with -@@ -108,6 +127,30 @@ type Transport struct { - // waiting for their turn. - StrictMaxConcurrentStreams bool - -+ // ReadIdleTimeout is the timeout after which a health check using ping -+ // frame will be carried out if no frame is received on the connection. -+ // Note that a ping response will is considered a received frame, so if -+ // there is no other traffic on the connection, the health check will -+ // be performed every ReadIdleTimeout interval. -+ // If zero, no health check is performed. -+ ReadIdleTimeout time.Duration -+ -+ // PingTimeout is the timeout after which the connection will be closed -+ // if a response to Ping is not received. -+ // Defaults to 15s. -+ PingTimeout time.Duration -+ -+ // WriteByteTimeout is the timeout after which the connection will be -+ // closed no data can be written to it. The timeout begins when data is -+ // available to write, and is extended whenever any bytes are written. -+ WriteByteTimeout time.Duration -+ -+ // CountError, if non-nil, is called on HTTP/2 transport errors. -+ // It's intended to increment a metric for monitoring, such -+ // as an expvar or Prometheus metric. -+ // The errType consists of only ASCII word characters. -+ CountError func(errType string) -+ - // t1, if non-nil, is the standard library Transport using - // this transport. Its settings are used (but not its - // RoundTrip method, etc). -@@ -131,14 +174,31 @@ func (t *Transport) disableCompression() bool { - return t.DisableCompression || (t.t1 != nil && t.t1.DisableCompression) - } - -+func (t *Transport) pingTimeout() time.Duration { -+ if t.PingTimeout == 0 { -+ return 15 * time.Second -+ } -+ return t.PingTimeout -+ -+} -+ - // ConfigureTransport configures a net/http HTTP/1 Transport to use HTTP/2. - // It returns an error if t1 has already been HTTP/2-enabled. -+// -+// Use ConfigureTransports instead to configure the HTTP/2 Transport. - func ConfigureTransport(t1 *http.Transport) error { -- _, err := configureTransport(t1) -+ _, err := ConfigureTransports(t1) - return err - } - --func configureTransport(t1 *http.Transport) (*Transport, error) { -+// ConfigureTransports configures a net/http HTTP/1 Transport to use HTTP/2. -+// It returns a new HTTP/2 Transport for further configuration. -+// It returns an error if t1 has already been HTTP/2-enabled. -+func ConfigureTransports(t1 *http.Transport) (*Transport, error) { -+ return configureTransports(t1) -+} -+ -+func configureTransports(t1 *http.Transport) (*Transport, error) { - connPool := new(clientConnPool) - t2 := &Transport{ - ConnPool: noDialClientConnPool{connPool}, -@@ -197,11 +257,12 @@ func (t *Transport) initConnPool() { - // ClientConn is the state of a single HTTP/2 client connection to an - // HTTP/2 server. - type ClientConn struct { -- t *Transport -- tconn net.Conn // usually *tls.Conn, except specialized impls -- tlsState *tls.ConnectionState // nil only for specialized impls -- reused uint32 // whether conn is being reused; atomic -- singleUse bool // whether being used for a single http.Request -+ t *Transport -+ tconn net.Conn // usually *tls.Conn, except specialized impls -+ tlsState *tls.ConnectionState // nil only for specialized impls -+ reused uint32 // whether conn is being reused; atomic -+ singleUse bool // whether being used for a single http.Request -+ getConnCalled bool // used by clientConnPool - - // readLoop goroutine fields: - readerDone chan struct{} // closed on error -@@ -214,87 +275,94 @@ type ClientConn struct { - cond *sync.Cond // hold mu; broadcast on flow/closed changes - flow flow // our conn-level flow control quota (cs.flow is per stream) - inflow flow // peer's conn-level flow control -+ doNotReuse bool // whether conn is marked to not be reused for any future requests - closing bool - closed bool -+ seenSettings bool // true if we've seen a settings frame, false otherwise - wantSettingsAck bool // we sent a SETTINGS frame and haven't heard back - goAway *GoAwayFrame // if non-nil, the GoAwayFrame we received - goAwayDebug string // goAway frame's debug data, retained as a string - streams map[uint32]*clientStream // client-initiated -+ streamsReserved int // incr by ReserveNewRequest; decr on RoundTrip - nextStreamID uint32 - pendingRequests int // requests blocked and waiting to be sent because len(streams) == maxConcurrentStreams - pings map[[8]byte]chan struct{} // in flight ping data to notification channel -- bw *bufio.Writer - br *bufio.Reader -- fr *Framer - lastActive time.Time - lastIdle time.Time // time last idle -- // Settings from peer: (also guarded by mu) -+ // Settings from peer: (also guarded by wmu) - maxFrameSize uint32 - maxConcurrentStreams uint32 - peerMaxHeaderListSize uint64 - initialWindowSize uint32 - -- hbuf bytes.Buffer // HPACK encoder writes into this -- henc *hpack.Encoder -- freeBuf [][]byte -+ // reqHeaderMu is a 1-element semaphore channel controlling access to sending new requests. -+ // Write to reqHeaderMu to lock it, read from it to unlock. -+ // Lock reqmu BEFORE mu or wmu. -+ reqHeaderMu chan struct{} - -- wmu sync.Mutex // held while writing; acquire AFTER mu if holding both -- werr error // first write error that has occurred -+ // wmu is held while writing. -+ // Acquire BEFORE mu when holding both, to avoid blocking mu on network writes. -+ // Only acquire both at the same time when changing peer settings. -+ wmu sync.Mutex -+ bw *bufio.Writer -+ fr *Framer -+ werr error // first write error that has occurred -+ hbuf bytes.Buffer // HPACK encoder writes into this -+ henc *hpack.Encoder - } - - // clientStream is the state for a single HTTP/2 stream. One of these - // is created for each Transport.RoundTrip call. - type clientStream struct { -- cc *ClientConn -- req *http.Request -+ cc *ClientConn -+ -+ // Fields of Request that we may access even after the response body is closed. -+ ctx context.Context -+ reqCancel <-chan struct{} -+ - trace *httptrace.ClientTrace // or nil - ID uint32 -- resc chan resAndError - bufPipe pipe // buffered pipe with the flow-controlled response payload -- startedWrite bool // started request body write; guarded by cc.mu - requestedGzip bool -- on100 func() // optional code to run if get a 100 continue response -+ isHead bool -+ -+ abortOnce sync.Once -+ abort chan struct{} // closed to signal stream should end immediately -+ abortErr error // set if abort is closed -+ -+ peerClosed chan struct{} // closed when the peer sends an END_STREAM flag -+ donec chan struct{} // closed after the stream is in the closed state -+ on100 chan struct{} // buffered; written to if a 100 is received -+ -+ respHeaderRecv chan struct{} // closed when headers are received -+ res *http.Response // set if respHeaderRecv is closed - - flow flow // guarded by cc.mu - inflow flow // guarded by cc.mu - bytesRemain int64 // -1 means unknown; owned by transportResponseBody.Read - readErr error // sticky read error; owned by transportResponseBody.Read -- stopReqBody error // if non-nil, stop writing req body; guarded by cc.mu -- didReset bool // whether we sent a RST_STREAM to the server; guarded by cc.mu - -- peerReset chan struct{} // closed on peer reset -- resetErr error // populated before peerReset is closed -+ reqBody io.ReadCloser -+ reqBodyContentLength int64 // -1 means unknown -+ reqBodyClosed bool // body has been closed; guarded by cc.mu - -- done chan struct{} // closed when stream remove from cc.streams map; close calls guarded by cc.mu -+ // owned by writeRequest: -+ sentEndStream bool // sent an END_STREAM flag to the peer -+ sentHeaders bool - - // owned by clientConnReadLoop: - firstByte bool // got the first response byte - pastHeaders bool // got first MetaHeadersFrame (actual headers) - pastTrailers bool // got optional second MetaHeadersFrame (trailers) - num1xx uint8 // number of 1xx responses seen -+ readClosed bool // peer sent an END_STREAM flag -+ readAborted bool // read loop reset the stream - - trailer http.Header // accumulated trailers - resTrailer *http.Header // client's Response.Trailer - } - --// awaitRequestCancel waits for the user to cancel a request or for the done --// channel to be signaled. A non-nil error is returned only if the request was --// canceled. --func awaitRequestCancel(req *http.Request, done <-chan struct{}) error { -- ctx := req.Context() -- if req.Cancel == nil && ctx.Done() == nil { -- return nil -- } -- select { -- case <-req.Cancel: -- return errRequestCanceled -- case <-ctx.Done(): -- return ctx.Err() -- case <-done: -- return nil -- } --} -- - var got1xxFuncForTests func(int, textproto.MIMEHeader) error - - // get1xxTraceFunc returns the value of request's httptrace.ClientTrace.Got1xxResponse func, -@@ -306,73 +374,65 @@ func (cs *clientStream) get1xxTraceFunc() func(int, textproto.MIMEHeader) error - return traceGot1xxResponseFunc(cs.trace) - } - --// awaitRequestCancel waits for the user to cancel a request, its context to --// expire, or for the request to be done (any way it might be removed from the --// cc.streams map: peer reset, successful completion, TCP connection breakage, --// etc). If the request is canceled, then cs will be canceled and closed. --func (cs *clientStream) awaitRequestCancel(req *http.Request) { -- if err := awaitRequestCancel(req, cs.done); err != nil { -- cs.cancelStream() -- cs.bufPipe.CloseWithError(err) -- } -+func (cs *clientStream) abortStream(err error) { -+ cs.cc.mu.Lock() -+ defer cs.cc.mu.Unlock() -+ cs.abortStreamLocked(err) - } - --func (cs *clientStream) cancelStream() { -- cc := cs.cc -- cc.mu.Lock() -- didReset := cs.didReset -- cs.didReset = true -- cc.mu.Unlock() -- -- if !didReset { -- cc.writeStreamReset(cs.ID, ErrCodeCancel, nil) -- cc.forgetStreamID(cs.ID) -+func (cs *clientStream) abortStreamLocked(err error) { -+ cs.abortOnce.Do(func() { -+ cs.abortErr = err -+ close(cs.abort) -+ }) -+ if cs.reqBody != nil && !cs.reqBodyClosed { -+ cs.reqBody.Close() -+ cs.reqBodyClosed = true - } --} -- --// checkResetOrDone reports any error sent in a RST_STREAM frame by the --// server, or errStreamClosed if the stream is complete. --func (cs *clientStream) checkResetOrDone() error { -- select { -- case <-cs.peerReset: -- return cs.resetErr -- case <-cs.done: -- return errStreamClosed -- default: -- return nil -+ // TODO(dneil): Clean up tests where cs.cc.cond is nil. -+ if cs.cc.cond != nil { -+ // Wake up writeRequestBody if it is waiting on flow control. -+ cs.cc.cond.Broadcast() - } - } - --func (cs *clientStream) getStartedWrite() bool { -+func (cs *clientStream) abortRequestBodyWrite() { - cc := cs.cc - cc.mu.Lock() - defer cc.mu.Unlock() -- return cs.startedWrite --} -- --func (cs *clientStream) abortRequestBodyWrite(err error) { -- if err == nil { -- panic("nil error") -+ if cs.reqBody != nil && !cs.reqBodyClosed { -+ cs.reqBody.Close() -+ cs.reqBodyClosed = true -+ cc.cond.Broadcast() - } -- cc := cs.cc -- cc.mu.Lock() -- cs.stopReqBody = err -- cc.cond.Broadcast() -- cc.mu.Unlock() - } - - type stickyErrWriter struct { -- w io.Writer -- err *error -+ conn net.Conn -+ timeout time.Duration -+ err *error - } - - func (sew stickyErrWriter) Write(p []byte) (n int, err error) { - if *sew.err != nil { - return 0, *sew.err - } -- n, err = sew.w.Write(p) -- *sew.err = err -- return -+ for { -+ if sew.timeout != 0 { -+ sew.conn.SetWriteDeadline(time.Now().Add(sew.timeout)) -+ } -+ nn, err := sew.conn.Write(p[n:]) -+ n += nn -+ if n < len(p) && nn > 0 && errors.Is(err, os.ErrDeadlineExceeded) { -+ // Keep extending the deadline so long as we're making progress. -+ continue -+ } -+ if sew.timeout != 0 { -+ sew.conn.SetWriteDeadline(time.Time{}) -+ } -+ *sew.err = err -+ return n, err -+ } - } - - // noCachedConnError is the concrete type of ErrNoCachedConn, which -@@ -445,20 +505,22 @@ func (t *Transport) RoundTripOpt(req *http.Request, opt RoundTripOpt) (*http.Res - } - reused := !atomic.CompareAndSwapUint32(&cc.reused, 0, 1) - traceGotConn(req, cc, reused) -- res, gotErrAfterReqBodyWrite, err := cc.roundTrip(req) -+ res, err := cc.RoundTrip(req) - if err != nil && retry <= 6 { -- if req, err = shouldRetryRequest(req, err, gotErrAfterReqBodyWrite); err == nil { -+ if req, err = shouldRetryRequest(req, err); err == nil { - // After the first retry, do exponential backoff with 10% jitter. - if retry == 0 { -+ t.vlogf("RoundTrip retrying after failure: %v", err) - continue - } - backoff := float64(uint(1) << (uint(retry) - 1)) - backoff += backoff * (0.1 * mathrand.Float64()) - select { - case <-time.After(time.Second * time.Duration(backoff)): -+ t.vlogf("RoundTrip retrying after failure: %v", err) - continue - case <-req.Context().Done(): -- return nil, req.Context().Err() -+ err = req.Context().Err() - } - } - } -@@ -489,7 +551,7 @@ var ( - // response headers. It is always called with a non-nil error. - // It returns either a request to retry (either the same request, or a - // modified clone), or an error if the request can't be replayed. --func shouldRetryRequest(req *http.Request, err error, afterBodyWrite bool) (*http.Request, error) { -+func shouldRetryRequest(req *http.Request, err error) (*http.Request, error) { - if !canRetryError(err) { - return nil, err - } -@@ -502,7 +564,6 @@ func shouldRetryRequest(req *http.Request, err error, afterBodyWrite bool) (*htt - // If the request body can be reset back to its original - // state via the optional req.GetBody, do that. - if req.GetBody != nil { -- // TODO: consider a req.Body.Close here? or audit that all caller paths do? - body, err := req.GetBody() - if err != nil { - return nil, err -@@ -514,10 +575,8 @@ func shouldRetryRequest(req *http.Request, err error, afterBodyWrite bool) (*htt - - // The Request.Body can't reset back to the beginning, but we - // don't seem to have started to read from it yet, so reuse -- // the request directly. The "afterBodyWrite" means the -- // bodyWrite process has started, which becomes true before -- // the first Read. -- if !afterBodyWrite { -+ // the request directly. -+ if err == errClientConnUnusable { - return req, nil - } - -@@ -529,17 +588,21 @@ func canRetryError(err error) bool { - return true - } - if se, ok := err.(StreamError); ok { -+ if se.Code == ErrCodeProtocol && se.Cause == errFromPeer { -+ // See golang/go#47635, golang/go#42777 -+ return true -+ } - return se.Code == ErrCodeRefusedStream - } - return false - } - --func (t *Transport) dialClientConn(addr string, singleUse bool) (*ClientConn, error) { -+func (t *Transport) dialClientConn(ctx context.Context, addr string, singleUse bool) (*ClientConn, error) { - host, _, err := net.SplitHostPort(addr) - if err != nil { - return nil, err - } -- tconn, err := t.dialTLS()("tcp", addr, t.newTLSConfig(host)) -+ tconn, err := t.dialTLS(ctx, "tcp", addr, t.newTLSConfig(host)) - if err != nil { - return nil, err - } -@@ -560,34 +623,25 @@ func (t *Transport) newTLSConfig(host string) *tls.Config { - return cfg - } - --func (t *Transport) dialTLS() func(string, string, *tls.Config) (net.Conn, error) { -- if t.DialTLS != nil { -- return t.DialTLS -+func (t *Transport) dialTLS(ctx context.Context, network, addr string, tlsCfg *tls.Config) (net.Conn, error) { -+ if t.DialTLSContext != nil { -+ return t.DialTLSContext(ctx, network, addr, tlsCfg) -+ } else if t.DialTLS != nil { -+ return t.DialTLS(network, addr, tlsCfg) - } -- return t.dialTLSDefault --} - --func (t *Transport) dialTLSDefault(network, addr string, cfg *tls.Config) (net.Conn, error) { -- cn, err := tls.Dial(network, addr, cfg) -+ tlsCn, err := t.dialTLSWithContext(ctx, network, addr, tlsCfg) - if err != nil { - return nil, err - } -- if err := cn.Handshake(); err != nil { -- return nil, err -- } -- if !cfg.InsecureSkipVerify { -- if err := cn.VerifyHostname(cfg.ServerName); err != nil { -- return nil, err -- } -- } -- state := cn.ConnectionState() -+ state := tlsCn.ConnectionState() - if p := state.NegotiatedProtocol; p != NextProtoTLS { - return nil, fmt.Errorf("http2: unexpected ALPN protocol %q; want %q", p, NextProtoTLS) - } - if !state.NegotiatedProtocolIsMutual { - return nil, errors.New("http2: could not negotiate protocol mutually") - } -- return cn, nil -+ return tlsCn, nil - } - - // disableKeepAlives reports whether connections should be closed as -@@ -613,14 +667,15 @@ func (t *Transport) newClientConn(c net.Conn, singleUse bool) (*ClientConn, erro - tconn: c, - readerDone: make(chan struct{}), - nextStreamID: 1, -- maxFrameSize: 16 << 10, // spec default -- initialWindowSize: 65535, // spec default -- maxConcurrentStreams: 1000, // "infinite", per spec. 1000 seems good enough. -- peerMaxHeaderListSize: 0xffffffffffffffff, // "infinite", per spec. Use 2^64-1 instead. -+ maxFrameSize: 16 << 10, // spec default -+ initialWindowSize: 65535, // spec default -+ maxConcurrentStreams: initialMaxConcurrentStreams, // "infinite", per spec. Use a smaller value until we have received server settings. -+ peerMaxHeaderListSize: 0xffffffffffffffff, // "infinite", per spec. Use 2^64-1 instead. - streams: make(map[uint32]*clientStream), - singleUse: singleUse, - wantSettingsAck: true, - pings: make(map[[8]byte]chan struct{}), -+ reqHeaderMu: make(chan struct{}, 1), - } - if d := t.idleConnTimeout(); d != 0 { - cc.idleTimeout = d -@@ -635,9 +690,16 @@ func (t *Transport) newClientConn(c net.Conn, singleUse bool) (*ClientConn, erro - - // TODO: adjust this writer size to account for frame size + - // MTU + crypto/tls record padding. -- cc.bw = bufio.NewWriter(stickyErrWriter{c, &cc.werr}) -+ cc.bw = bufio.NewWriter(stickyErrWriter{ -+ conn: c, -+ timeout: t.WriteByteTimeout, -+ err: &cc.werr, -+ }) - cc.br = bufio.NewReader(c) - cc.fr = NewFramer(cc.bw, cc.br) -+ if t.CountError != nil { -+ cc.fr.countError = t.CountError -+ } - cc.fr.ReadMetaHeaders = hpack.NewDecoder(initialHeaderTableSize, nil) - cc.fr.MaxHeaderListSize = t.maxHeaderListSize() - -@@ -668,6 +730,7 @@ func (t *Transport) newClientConn(c net.Conn, singleUse bool) (*ClientConn, erro - cc.inflow.add(transportDefaultConnFlow + initialWindowSize) - cc.bw.Flush() - if cc.werr != nil { -+ cc.Close() - return nil, cc.werr - } - -@@ -675,6 +738,29 @@ func (t *Transport) newClientConn(c net.Conn, singleUse bool) (*ClientConn, erro - return cc, nil - } - -+func (cc *ClientConn) healthCheck() { -+ pingTimeout := cc.t.pingTimeout() -+ // We don't need to periodically ping in the health check, because the readLoop of ClientConn will -+ // trigger the healthCheck again if there is no frame received. -+ ctx, cancel := context.WithTimeout(context.Background(), pingTimeout) -+ defer cancel() -+ cc.vlogf("http2: Transport sending health check") -+ err := cc.Ping(ctx) -+ if err != nil { -+ cc.vlogf("http2: Transport health check failure: %v", err) -+ cc.closeForLostPing() -+ } else { -+ cc.vlogf("http2: Transport health check success") -+ } -+} -+ -+// SetDoNotReuse marks cc as not reusable for future HTTP requests. -+func (cc *ClientConn) SetDoNotReuse() { -+ cc.mu.Lock() -+ defer cc.mu.Unlock() -+ cc.doNotReuse = true -+} -+ - func (cc *ClientConn) setGoAway(f *GoAwayFrame) { - cc.mu.Lock() - defer cc.mu.Unlock() -@@ -692,27 +778,94 @@ func (cc *ClientConn) setGoAway(f *GoAwayFrame) { - last := f.LastStreamID - for streamID, cs := range cc.streams { - if streamID > last { -- select { -- case cs.resc <- resAndError{err: errClientConnGotGoAway}: -- default: -- } -+ cs.abortStreamLocked(errClientConnGotGoAway) - } - } - } - - // CanTakeNewRequest reports whether the connection can take a new request, - // meaning it has not been closed or received or sent a GOAWAY. -+// -+// If the caller is going to immediately make a new request on this -+// connection, use ReserveNewRequest instead. - func (cc *ClientConn) CanTakeNewRequest() bool { - cc.mu.Lock() - defer cc.mu.Unlock() - return cc.canTakeNewRequestLocked() - } - -+// ReserveNewRequest is like CanTakeNewRequest but also reserves a -+// concurrent stream in cc. The reservation is decremented on the -+// next call to RoundTrip. -+func (cc *ClientConn) ReserveNewRequest() bool { -+ cc.mu.Lock() -+ defer cc.mu.Unlock() -+ if st := cc.idleStateLocked(); !st.canTakeNewRequest { -+ return false -+ } -+ cc.streamsReserved++ -+ return true -+} -+ -+// ClientConnState describes the state of a ClientConn. -+type ClientConnState struct { -+ // Closed is whether the connection is closed. -+ Closed bool -+ -+ // Closing is whether the connection is in the process of -+ // closing. It may be closing due to shutdown, being a -+ // single-use connection, being marked as DoNotReuse, or -+ // having received a GOAWAY frame. -+ Closing bool -+ -+ // StreamsActive is how many streams are active. -+ StreamsActive int -+ -+ // StreamsReserved is how many streams have been reserved via -+ // ClientConn.ReserveNewRequest. -+ StreamsReserved int -+ -+ // StreamsPending is how many requests have been sent in excess -+ // of the peer's advertised MaxConcurrentStreams setting and -+ // are waiting for other streams to complete. -+ StreamsPending int -+ -+ // MaxConcurrentStreams is how many concurrent streams the -+ // peer advertised as acceptable. Zero means no SETTINGS -+ // frame has been received yet. -+ MaxConcurrentStreams uint32 -+ -+ // LastIdle, if non-zero, is when the connection last -+ // transitioned to idle state. -+ LastIdle time.Time -+} -+ -+// State returns a snapshot of cc's state. -+func (cc *ClientConn) State() ClientConnState { -+ cc.wmu.Lock() -+ maxConcurrent := cc.maxConcurrentStreams -+ if !cc.seenSettings { -+ maxConcurrent = 0 -+ } -+ cc.wmu.Unlock() -+ -+ cc.mu.Lock() -+ defer cc.mu.Unlock() -+ return ClientConnState{ -+ Closed: cc.closed, -+ Closing: cc.closing || cc.singleUse || cc.doNotReuse || cc.goAway != nil, -+ StreamsActive: len(cc.streams), -+ StreamsReserved: cc.streamsReserved, -+ StreamsPending: cc.pendingRequests, -+ LastIdle: cc.lastIdle, -+ MaxConcurrentStreams: maxConcurrent, -+ } -+} -+ - // clientConnIdleState describes the suitability of a client - // connection to initiate a new RoundTrip request. - type clientConnIdleState struct { - canTakeNewRequest bool -- freshConn bool // whether it's unused by any previous request - } - - func (cc *ClientConn) idleState() clientConnIdleState { -@@ -733,13 +886,13 @@ func (cc *ClientConn) idleStateLocked() (st clientConnIdleState) { - // writing it. - maxConcurrentOkay = true - } else { -- maxConcurrentOkay = int64(len(cc.streams)+1) < int64(cc.maxConcurrentStreams) -+ maxConcurrentOkay = int64(len(cc.streams)+cc.streamsReserved+1) <= int64(cc.maxConcurrentStreams) - } - - st.canTakeNewRequest = cc.goAway == nil && !cc.closed && !cc.closing && maxConcurrentOkay && -+ !cc.doNotReuse && - int64(cc.nextStreamID)+2*int64(cc.pendingRequests) < math.MaxInt32 && - !cc.tooIdleLocked() -- st.freshConn = cc.nextStreamID == 1 && st.canTakeNewRequest - return - } - -@@ -768,9 +921,27 @@ func (cc *ClientConn) onIdleTimeout() { - cc.closeIfIdle() - } - -+func (cc *ClientConn) closeConn() error { -+ t := time.AfterFunc(250*time.Millisecond, cc.forceCloseConn) -+ defer t.Stop() -+ return cc.tconn.Close() -+} -+ -+// A tls.Conn.Close can hang for a long time if the peer is unresponsive. -+// Try to shut it down more aggressively. -+func (cc *ClientConn) forceCloseConn() { -+ tc, ok := cc.tconn.(*tls.Conn) -+ if !ok { -+ return -+ } -+ if nc := tlsUnderlyingConn(tc); nc != nil { -+ nc.Close() -+ } -+} -+ - func (cc *ClientConn) closeIfIdle() { - cc.mu.Lock() -- if len(cc.streams) > 0 { -+ if len(cc.streams) > 0 || cc.streamsReserved > 0 { - cc.mu.Unlock() - return - } -@@ -782,18 +953,24 @@ func (cc *ClientConn) closeIfIdle() { - if VerboseLogs { - cc.vlogf("http2: Transport closing idle conn %p (forSingleUse=%v, maxStream=%v)", cc, cc.singleUse, nextID-2) - } -- cc.tconn.Close() -+ cc.closeConn() -+} -+ -+func (cc *ClientConn) isDoNotReuseAndIdle() bool { -+ cc.mu.Lock() -+ defer cc.mu.Unlock() -+ return cc.doNotReuse && len(cc.streams) == 0 - } - - var shutdownEnterWaitStateHook = func() {} - --// Shutdown gracefully close the client connection, waiting for running streams to complete. -+// Shutdown gracefully closes the client connection, waiting for running streams to complete. - func (cc *ClientConn) Shutdown(ctx context.Context) error { - if err := cc.sendGoAway(); err != nil { - return err - } - // Wait for all in-flight streams to complete or connection to close -- done := make(chan error, 1) -+ done := make(chan struct{}) - cancelled := false // guarded by cc.mu - go func() { - cc.mu.Lock() -@@ -801,7 +978,7 @@ func (cc *ClientConn) Shutdown(ctx context.Context) error { - for { - if len(cc.streams) == 0 || cc.closed { - cc.closed = true -- done <- cc.tconn.Close() -+ close(done) - break - } - if cancelled { -@@ -812,8 +989,8 @@ func (cc *ClientConn) Shutdown(ctx context.Context) error { - }() - shutdownEnterWaitStateHook() - select { -- case err := <-done: -- return err -+ case <-done: -+ return cc.closeConn() - case <-ctx.Done(): - cc.mu.Lock() - // Free the goroutine above -@@ -826,15 +1003,18 @@ func (cc *ClientConn) Shutdown(ctx context.Context) error { - - func (cc *ClientConn) sendGoAway() error { - cc.mu.Lock() -- defer cc.mu.Unlock() -- cc.wmu.Lock() -- defer cc.wmu.Unlock() -- if cc.closing { -+ closing := cc.closing -+ cc.closing = true -+ maxStreamID := cc.nextStreamID -+ cc.mu.Unlock() -+ if closing { - // GOAWAY sent already - return nil - } -+ -+ cc.wmu.Lock() -+ defer cc.wmu.Unlock() - // Send a graceful shutdown frame to server -- maxStreamID := cc.nextStreamID - if err := cc.fr.WriteGoAway(maxStreamID, ErrCodeNo, nil); err != nil { - return err - } -@@ -842,68 +1022,37 @@ func (cc *ClientConn) sendGoAway() error { - return err - } - // Prevent new requests -- cc.closing = true - return nil - } - -+// closes the client connection immediately. In-flight requests are interrupted. -+// err is sent to streams. -+func (cc *ClientConn) closeForError(err error) error { -+ cc.mu.Lock() -+ cc.closed = true -+ for _, cs := range cc.streams { -+ cs.abortStreamLocked(err) -+ } -+ cc.cond.Broadcast() -+ cc.mu.Unlock() -+ return cc.closeConn() -+} -+ - // Close closes the client connection immediately. - // - // In-flight requests are interrupted. For a graceful shutdown, use Shutdown instead. - func (cc *ClientConn) Close() error { -- cc.mu.Lock() -- defer cc.cond.Broadcast() -- defer cc.mu.Unlock() - err := errors.New("http2: client connection force closed via ClientConn.Close") -- for id, cs := range cc.streams { -- select { -- case cs.resc <- resAndError{err: err}: -- default: -- } -- cs.bufPipe.CloseWithError(err) -- delete(cc.streams, id) -- } -- cc.closed = true -- return cc.tconn.Close() --} -- --const maxAllocFrameSize = 512 << 10 -- --// frameBuffer returns a scratch buffer suitable for writing DATA frames. --// They're capped at the min of the peer's max frame size or 512KB --// (kinda arbitrarily), but definitely capped so we don't allocate 4GB --// bufers. --func (cc *ClientConn) frameScratchBuffer() []byte { -- cc.mu.Lock() -- size := cc.maxFrameSize -- if size > maxAllocFrameSize { -- size = maxAllocFrameSize -- } -- for i, buf := range cc.freeBuf { -- if len(buf) >= int(size) { -- cc.freeBuf[i] = nil -- cc.mu.Unlock() -- return buf[:size] -- } -- } -- cc.mu.Unlock() -- return make([]byte, size) -+ return cc.closeForError(err) - } - --func (cc *ClientConn) putFrameScratchBuffer(buf []byte) { -- cc.mu.Lock() -- defer cc.mu.Unlock() -- const maxBufs = 4 // arbitrary; 4 concurrent requests per conn? investigate. -- if len(cc.freeBuf) < maxBufs { -- cc.freeBuf = append(cc.freeBuf, buf) -- return -+// closes the client connection immediately. In-flight requests are interrupted. -+func (cc *ClientConn) closeForLostPing() error { -+ err := errors.New("http2: client connection lost") -+ if f := cc.t.CountError; f != nil { -+ f("conn_close_lost_ping") - } -- for i, old := range cc.freeBuf { -- if old == nil { -- cc.freeBuf[i] = buf -- return -- } -- } -- // forget about it. -+ return cc.closeForError(err) - } - - // errRequestCanceled is a copy of net/http's errRequestCanceled because it's not -@@ -948,7 +1097,7 @@ func checkConnHeaders(req *http.Request) error { - if vv := req.Header["Transfer-Encoding"]; len(vv) > 0 && (len(vv) > 1 || vv[0] != "" && vv[0] != "chunked") { - return fmt.Errorf("http2: invalid Transfer-Encoding request header: %q", vv) - } -- if vv := req.Header["Connection"]; len(vv) > 0 && (len(vv) > 1 || vv[0] != "" && !strings.EqualFold(vv[0], "close") && !strings.EqualFold(vv[0], "keep-alive")) { -+ if vv := req.Header["Connection"]; len(vv) > 0 && (len(vv) > 1 || vv[0] != "" && !asciiEqualFold(vv[0], "close") && !asciiEqualFold(vv[0], "keep-alive")) { - return fmt.Errorf("http2: invalid Connection request header: %q", vv) - } - return nil -@@ -967,41 +1116,158 @@ func actualContentLength(req *http.Request) int64 { - return -1 - } - -+func (cc *ClientConn) decrStreamReservations() { -+ cc.mu.Lock() -+ defer cc.mu.Unlock() -+ cc.decrStreamReservationsLocked() -+} -+ -+func (cc *ClientConn) decrStreamReservationsLocked() { -+ if cc.streamsReserved > 0 { -+ cc.streamsReserved-- -+ } -+} -+ - func (cc *ClientConn) RoundTrip(req *http.Request) (*http.Response, error) { -- resp, _, err := cc.roundTrip(req) -- return resp, err -+ ctx := req.Context() -+ cs := &clientStream{ -+ cc: cc, -+ ctx: ctx, -+ reqCancel: req.Cancel, -+ isHead: req.Method == "HEAD", -+ reqBody: req.Body, -+ reqBodyContentLength: actualContentLength(req), -+ trace: httptrace.ContextClientTrace(ctx), -+ peerClosed: make(chan struct{}), -+ abort: make(chan struct{}), -+ respHeaderRecv: make(chan struct{}), -+ donec: make(chan struct{}), -+ } -+ go cs.doRequest(req) -+ -+ waitDone := func() error { -+ select { -+ case <-cs.donec: -+ return nil -+ case <-ctx.Done(): -+ return ctx.Err() -+ case <-cs.reqCancel: -+ return errRequestCanceled -+ } -+ } -+ -+ handleResponseHeaders := func() (*http.Response, error) { -+ res := cs.res -+ if res.StatusCode > 299 { -+ // On error or status code 3xx, 4xx, 5xx, etc abort any -+ // ongoing write, assuming that the server doesn't care -+ // about our request body. If the server replied with 1xx or -+ // 2xx, however, then assume the server DOES potentially -+ // want our body (e.g. full-duplex streaming: -+ // golang.org/issue/13444). If it turns out the server -+ // doesn't, they'll RST_STREAM us soon enough. This is a -+ // heuristic to avoid adding knobs to Transport. Hopefully -+ // we can keep it. -+ cs.abortRequestBodyWrite() -+ } -+ res.Request = req -+ res.TLS = cc.tlsState -+ if res.Body == noBody && actualContentLength(req) == 0 { -+ // If there isn't a request or response body still being -+ // written, then wait for the stream to be closed before -+ // RoundTrip returns. -+ if err := waitDone(); err != nil { -+ return nil, err -+ } -+ } -+ return res, nil -+ } -+ -+ for { -+ select { -+ case <-cs.respHeaderRecv: -+ return handleResponseHeaders() -+ case <-cs.abort: -+ select { -+ case <-cs.respHeaderRecv: -+ // If both cs.respHeaderRecv and cs.abort are signaling, -+ // pick respHeaderRecv. The server probably wrote the -+ // response and immediately reset the stream. -+ // golang.org/issue/49645 -+ return handleResponseHeaders() -+ default: -+ waitDone() -+ return nil, cs.abortErr -+ } -+ case <-ctx.Done(): -+ err := ctx.Err() -+ cs.abortStream(err) -+ return nil, err -+ case <-cs.reqCancel: -+ cs.abortStream(errRequestCanceled) -+ return nil, errRequestCanceled -+ } -+ } - } - --func (cc *ClientConn) roundTrip(req *http.Request) (res *http.Response, gotErrAfterReqBodyWrite bool, err error) { -+// doRequest runs for the duration of the request lifetime. -+// -+// It sends the request and performs post-request cleanup (closing Request.Body, etc.). -+func (cs *clientStream) doRequest(req *http.Request) { -+ err := cs.writeRequest(req) -+ cs.cleanupWriteRequest(err) -+} -+ -+// writeRequest sends a request. -+// -+// It returns nil after the request is written, the response read, -+// and the request stream is half-closed by the peer. -+// -+// It returns non-nil if the request ends otherwise. -+// If the returned error is StreamError, the error Code may be used in resetting the stream. -+func (cs *clientStream) writeRequest(req *http.Request) (err error) { -+ cc := cs.cc -+ ctx := cs.ctx -+ - if err := checkConnHeaders(req); err != nil { -- return nil, false, err -- } -- if cc.idleTimer != nil { -- cc.idleTimer.Stop() -+ return err - } - -- trailers, err := commaSeparatedTrailers(req) -- if err != nil { -- return nil, false, err -+ // Acquire the new-request lock by writing to reqHeaderMu. -+ // This lock guards the critical section covering allocating a new stream ID -+ // (requires mu) and creating the stream (requires wmu). -+ if cc.reqHeaderMu == nil { -+ panic("RoundTrip on uninitialized ClientConn") // for tests -+ } -+ select { -+ case cc.reqHeaderMu <- struct{}{}: -+ case <-cs.reqCancel: -+ return errRequestCanceled -+ case <-ctx.Done(): -+ return ctx.Err() - } -- hasTrailers := trailers != "" - - cc.mu.Lock() -- if err := cc.awaitOpenSlotForRequest(req); err != nil { -+ if cc.idleTimer != nil { -+ cc.idleTimer.Stop() -+ } -+ cc.decrStreamReservationsLocked() -+ if err := cc.awaitOpenSlotForStreamLocked(cs); err != nil { - cc.mu.Unlock() -- return nil, false, err -+ <-cc.reqHeaderMu -+ return err - } -- -- body := req.Body -- contentLen := actualContentLength(req) -- hasBody := contentLen != 0 -+ cc.addStreamLocked(cs) // assigns stream ID -+ if isConnectionCloseRequest(req) { -+ cc.doNotReuse = true -+ } -+ cc.mu.Unlock() - - // TODO(bradfitz): this is a copy of the logic in net/http. Unify somewhere? -- var requestedGzip bool - if !cc.t.disableCompression() && - req.Header.Get("Accept-Encoding") == "" && - req.Header.Get("Range") == "" && -- req.Method != "HEAD" { -+ !cs.isHead { - // Request gzip only, not deflate. Deflate is ambiguous and - // not as universally supported anyway. - // See: https://zlib.net/zlib_faq.html#faq39 -@@ -1014,180 +1280,224 @@ func (cc *ClientConn) roundTrip(req *http.Request) (res *http.Response, gotErrAf - // We don't request gzip if the request is for a range, since - // auto-decoding a portion of a gzipped document will just fail - // anyway. See https://golang.org/issue/8923 -- requestedGzip = true -+ cs.requestedGzip = true - } - -- // we send: HEADERS{1}, CONTINUATION{0,} + DATA{0,} (DATA is -- // sent by writeRequestBody below, along with any Trailers, -- // again in form HEADERS{1}, CONTINUATION{0,}) -- hdrs, err := cc.encodeHeaders(req, requestedGzip, trailers, contentLen) -- if err != nil { -- cc.mu.Unlock() -- return nil, false, err -+ continueTimeout := cc.t.expectContinueTimeout() -+ if continueTimeout != 0 { -+ if !httpguts.HeaderValuesContainsToken(req.Header["Expect"], "100-continue") { -+ continueTimeout = 0 -+ } else { -+ cs.on100 = make(chan struct{}, 1) -+ } - } - -- cs := cc.newStream() -- cs.req = req -- cs.trace = httptrace.ContextClientTrace(req.Context()) -- cs.requestedGzip = requestedGzip -- bodyWriter := cc.t.getBodyWriterState(cs, body) -- cs.on100 = bodyWriter.on100 -+ // Past this point (where we send request headers), it is possible for -+ // RoundTrip to return successfully. Since the RoundTrip contract permits -+ // the caller to "mutate or reuse" the Request after closing the Response's Body, -+ // we must take care when referencing the Request from here on. -+ err = cs.encodeAndWriteHeaders(req) -+ <-cc.reqHeaderMu -+ if err != nil { -+ return err -+ } - -- cc.wmu.Lock() -- endStream := !hasBody && !hasTrailers -- werr := cc.writeHeaders(cs.ID, endStream, int(cc.maxFrameSize), hdrs) -- cc.wmu.Unlock() -- traceWroteHeaders(cs.trace) -- cc.mu.Unlock() -+ hasBody := cs.reqBodyContentLength != 0 -+ if !hasBody { -+ cs.sentEndStream = true -+ } else { -+ if continueTimeout != 0 { -+ traceWait100Continue(cs.trace) -+ timer := time.NewTimer(continueTimeout) -+ select { -+ case <-timer.C: -+ err = nil -+ case <-cs.on100: -+ err = nil -+ case <-cs.abort: -+ err = cs.abortErr -+ case <-ctx.Done(): -+ err = ctx.Err() -+ case <-cs.reqCancel: -+ err = errRequestCanceled -+ } -+ timer.Stop() -+ if err != nil { -+ traceWroteRequest(cs.trace, err) -+ return err -+ } -+ } - -- if werr != nil { -- if hasBody { -- req.Body.Close() // per RoundTripper contract -- bodyWriter.cancel() -+ if err = cs.writeRequestBody(req); err != nil { -+ if err != errStopReqBodyWrite { -+ traceWroteRequest(cs.trace, err) -+ return err -+ } -+ } else { -+ cs.sentEndStream = true - } -- cc.forgetStreamID(cs.ID) -- // Don't bother sending a RST_STREAM (our write already failed; -- // no need to keep writing) -- traceWroteRequest(cs.trace, werr) -- return nil, false, werr - } - -+ traceWroteRequest(cs.trace, err) -+ - var respHeaderTimer <-chan time.Time -- if hasBody { -- bodyWriter.scheduleBodyWrite() -- } else { -- traceWroteRequest(cs.trace, nil) -- if d := cc.responseHeaderTimeout(); d != 0 { -- timer := time.NewTimer(d) -- defer timer.Stop() -- respHeaderTimer = timer.C -+ var respHeaderRecv chan struct{} -+ if d := cc.responseHeaderTimeout(); d != 0 { -+ timer := time.NewTimer(d) -+ defer timer.Stop() -+ respHeaderTimer = timer.C -+ respHeaderRecv = cs.respHeaderRecv -+ } -+ // Wait until the peer half-closes its end of the stream, -+ // or until the request is aborted (via context, error, or otherwise), -+ // whichever comes first. -+ for { -+ select { -+ case <-cs.peerClosed: -+ return nil -+ case <-respHeaderTimer: -+ return errTimeout -+ case <-respHeaderRecv: -+ respHeaderRecv = nil -+ respHeaderTimer = nil // keep waiting for END_STREAM -+ case <-cs.abort: -+ return cs.abortErr -+ case <-ctx.Done(): -+ return ctx.Err() -+ case <-cs.reqCancel: -+ return errRequestCanceled - } - } -+} - -- readLoopResCh := cs.resc -- bodyWritten := false -- ctx := req.Context() -+func (cs *clientStream) encodeAndWriteHeaders(req *http.Request) error { -+ cc := cs.cc -+ ctx := cs.ctx - -- handleReadLoopResponse := func(re resAndError) (*http.Response, bool, error) { -- res := re.res -- if re.err != nil || res.StatusCode > 299 { -- // On error or status code 3xx, 4xx, 5xx, etc abort any -- // ongoing write, assuming that the server doesn't care -- // about our request body. If the server replied with 1xx or -- // 2xx, however, then assume the server DOES potentially -- // want our body (e.g. full-duplex streaming: -- // golang.org/issue/13444). If it turns out the server -- // doesn't, they'll RST_STREAM us soon enough. This is a -- // heuristic to avoid adding knobs to Transport. Hopefully -- // we can keep it. -- bodyWriter.cancel() -- cs.abortRequestBodyWrite(errStopReqBodyWrite) -- } -- if re.err != nil { -- cc.forgetStreamID(cs.ID) -- return nil, cs.getStartedWrite(), re.err -- } -- res.Request = req -- res.TLS = cc.tlsState -- return res, false, nil -+ cc.wmu.Lock() -+ defer cc.wmu.Unlock() -+ -+ // If the request was canceled while waiting for cc.mu, just quit. -+ select { -+ case <-cs.abort: -+ return cs.abortErr -+ case <-ctx.Done(): -+ return ctx.Err() -+ case <-cs.reqCancel: -+ return errRequestCanceled -+ default: - } - -- for { -+ // Encode headers. -+ // -+ // we send: HEADERS{1}, CONTINUATION{0,} + DATA{0,} (DATA is -+ // sent by writeRequestBody below, along with any Trailers, -+ // again in form HEADERS{1}, CONTINUATION{0,}) -+ trailers, err := commaSeparatedTrailers(req) -+ if err != nil { -+ return err -+ } -+ hasTrailers := trailers != "" -+ contentLen := actualContentLength(req) -+ hasBody := contentLen != 0 -+ hdrs, err := cc.encodeHeaders(req, cs.requestedGzip, trailers, contentLen) -+ if err != nil { -+ return err -+ } -+ -+ // Write the request. -+ endStream := !hasBody && !hasTrailers -+ cs.sentHeaders = true -+ err = cc.writeHeaders(cs.ID, endStream, int(cc.maxFrameSize), hdrs) -+ traceWroteHeaders(cs.trace) -+ return err -+} -+ -+// cleanupWriteRequest performs post-request tasks. -+// -+// If err (the result of writeRequest) is non-nil and the stream is not closed, -+// cleanupWriteRequest will send a reset to the peer. -+func (cs *clientStream) cleanupWriteRequest(err error) { -+ cc := cs.cc -+ -+ if cs.ID == 0 { -+ // We were canceled before creating the stream, so return our reservation. -+ cc.decrStreamReservations() -+ } -+ -+ // TODO: write h12Compare test showing whether -+ // Request.Body is closed by the Transport, -+ // and in multiple cases: server replies <=299 and >299 -+ // while still writing request body -+ cc.mu.Lock() -+ bodyClosed := cs.reqBodyClosed -+ cs.reqBodyClosed = true -+ cc.mu.Unlock() -+ if !bodyClosed && cs.reqBody != nil { -+ cs.reqBody.Close() -+ } -+ -+ if err != nil && cs.sentEndStream { -+ // If the connection is closed immediately after the response is read, -+ // we may be aborted before finishing up here. If the stream was closed -+ // cleanly on both sides, there is no error. - select { -- case re := <-readLoopResCh: -- return handleReadLoopResponse(re) -- case <-respHeaderTimer: -- if !hasBody || bodyWritten { -- cc.writeStreamReset(cs.ID, ErrCodeCancel, nil) -- } else { -- bodyWriter.cancel() -- cs.abortRequestBodyWrite(errStopReqBodyWriteAndCancel) -- } -- cc.forgetStreamID(cs.ID) -- return nil, cs.getStartedWrite(), errTimeout -- case <-ctx.Done(): -- if !hasBody || bodyWritten { -- cc.writeStreamReset(cs.ID, ErrCodeCancel, nil) -- } else { -- bodyWriter.cancel() -- cs.abortRequestBodyWrite(errStopReqBodyWriteAndCancel) -- } -- cc.forgetStreamID(cs.ID) -- return nil, cs.getStartedWrite(), ctx.Err() -- case <-req.Cancel: -- if !hasBody || bodyWritten { -- cc.writeStreamReset(cs.ID, ErrCodeCancel, nil) -+ case <-cs.peerClosed: -+ err = nil -+ default: -+ } -+ } -+ if err != nil { -+ cs.abortStream(err) // possibly redundant, but harmless -+ if cs.sentHeaders { -+ if se, ok := err.(StreamError); ok { -+ if se.Cause != errFromPeer { -+ cc.writeStreamReset(cs.ID, se.Code, err) -+ } - } else { -- bodyWriter.cancel() -- cs.abortRequestBodyWrite(errStopReqBodyWriteAndCancel) -- } -- cc.forgetStreamID(cs.ID) -- return nil, cs.getStartedWrite(), errRequestCanceled -- case <-cs.peerReset: -- // processResetStream already removed the -- // stream from the streams map; no need for -- // forgetStreamID. -- return nil, cs.getStartedWrite(), cs.resetErr -- case err := <-bodyWriter.resc: -- // Prefer the read loop's response, if available. Issue 16102. -- select { -- case re := <-readLoopResCh: -- return handleReadLoopResponse(re) -- default: -- } -- if err != nil { -- cc.forgetStreamID(cs.ID) -- return nil, cs.getStartedWrite(), err -- } -- bodyWritten = true -- if d := cc.responseHeaderTimeout(); d != 0 { -- timer := time.NewTimer(d) -- defer timer.Stop() -- respHeaderTimer = timer.C -+ cc.writeStreamReset(cs.ID, ErrCodeCancel, err) - } - } -+ cs.bufPipe.CloseWithError(err) // no-op if already closed -+ } else { -+ if cs.sentHeaders && !cs.sentEndStream { -+ cc.writeStreamReset(cs.ID, ErrCodeNo, nil) -+ } -+ cs.bufPipe.CloseWithError(errRequestCanceled) -+ } -+ if cs.ID != 0 { -+ cc.forgetStreamID(cs.ID) -+ } -+ -+ cc.wmu.Lock() -+ werr := cc.werr -+ cc.wmu.Unlock() -+ if werr != nil { -+ cc.Close() - } -+ -+ close(cs.donec) - } - --// awaitOpenSlotForRequest waits until len(streams) < maxConcurrentStreams. -+// awaitOpenSlotForStream waits until len(streams) < maxConcurrentStreams. - // Must hold cc.mu. --func (cc *ClientConn) awaitOpenSlotForRequest(req *http.Request) error { -- var waitingForConn chan struct{} -- var waitingForConnErr error // guarded by cc.mu -+func (cc *ClientConn) awaitOpenSlotForStreamLocked(cs *clientStream) error { - for { - cc.lastActive = time.Now() - if cc.closed || !cc.canTakeNewRequestLocked() { -- if waitingForConn != nil { -- close(waitingForConn) -- } - return errClientConnUnusable - } - cc.lastIdle = time.Time{} -- if int64(len(cc.streams))+1 <= int64(cc.maxConcurrentStreams) { -- if waitingForConn != nil { -- close(waitingForConn) -- } -+ if int64(len(cc.streams)) < int64(cc.maxConcurrentStreams) { - return nil - } -- // Unfortunately, we cannot wait on a condition variable and channel at -- // the same time, so instead, we spin up a goroutine to check if the -- // request is canceled while we wait for a slot to open in the connection. -- if waitingForConn == nil { -- waitingForConn = make(chan struct{}) -- go func() { -- if err := awaitRequestCancel(req, waitingForConn); err != nil { -- cc.mu.Lock() -- waitingForConnErr = err -- cc.cond.Broadcast() -- cc.mu.Unlock() -- } -- }() -- } - cc.pendingRequests++ - cc.cond.Wait() - cc.pendingRequests-- -- if waitingForConnErr != nil { -- return waitingForConnErr -+ select { -+ case <-cs.abort: -+ return cs.abortErr -+ default: - } - } - } -@@ -1214,10 +1524,6 @@ func (cc *ClientConn) writeHeaders(streamID uint32, endStream bool, maxFrameSize - cc.fr.WriteContinuation(streamID, endHeaders, chunk) - } - } -- // TODO(bradfitz): this Flush could potentially block (as -- // could the WriteHeaders call(s) above), which means they -- // wouldn't respond to Request.Cancel being readable. That's -- // rare, but this should probably be in a goroutine. - cc.bw.Flush() - return cc.werr - } -@@ -1233,32 +1539,59 @@ var ( - errReqBodyTooLong = errors.New("http2: request body larger than specified content length") - ) - --func (cs *clientStream) writeRequestBody(body io.Reader, bodyCloser io.Closer) (err error) { -+// frameScratchBufferLen returns the length of a buffer to use for -+// outgoing request bodies to read/write to/from. -+// -+// It returns max(1, min(peer's advertised max frame size, -+// Request.ContentLength+1, 512KB)). -+func (cs *clientStream) frameScratchBufferLen(maxFrameSize int) int { -+ const max = 512 << 10 -+ n := int64(maxFrameSize) -+ if n > max { -+ n = max -+ } -+ if cl := cs.reqBodyContentLength; cl != -1 && cl+1 < n { -+ // Add an extra byte past the declared content-length to -+ // give the caller's Request.Body io.Reader a chance to -+ // give us more bytes than they declared, so we can catch it -+ // early. -+ n = cl + 1 -+ } -+ if n < 1 { -+ return 1 -+ } -+ return int(n) // doesn't truncate; max is 512K -+} -+ -+var bufPool sync.Pool // of *[]byte -+ -+func (cs *clientStream) writeRequestBody(req *http.Request) (err error) { - cc := cs.cc -+ body := cs.reqBody - sentEnd := false // whether we sent the final DATA frame w/ END_STREAM -- buf := cc.frameScratchBuffer() -- defer cc.putFrameScratchBuffer(buf) -- -- defer func() { -- traceWroteRequest(cs.trace, err) -- // TODO: write h12Compare test showing whether -- // Request.Body is closed by the Transport, -- // and in multiple cases: server replies <=299 and >299 -- // while still writing request body -- cerr := bodyCloser.Close() -- if err == nil { -- err = cerr -- } -- }() - -- req := cs.req - hasTrailers := req.Trailer != nil -- remainLen := actualContentLength(req) -+ remainLen := cs.reqBodyContentLength - hasContentLen := remainLen != -1 - -+ cc.mu.Lock() -+ maxFrameSize := int(cc.maxFrameSize) -+ cc.mu.Unlock() -+ -+ // Scratch buffer for reading into & writing from. -+ scratchLen := cs.frameScratchBufferLen(maxFrameSize) -+ var buf []byte -+ if bp, ok := bufPool.Get().(*[]byte); ok && len(*bp) >= scratchLen { -+ defer bufPool.Put(bp) -+ buf = *bp -+ } else { -+ buf = make([]byte, scratchLen) -+ defer bufPool.Put(&buf) -+ } -+ - var sawEOF bool - for !sawEOF { -- n, err := body.Read(buf[:len(buf)-1]) -+ n, err := body.Read(buf[:len(buf)]) - if hasContentLen { - remainLen -= int64(n) - if remainLen == 0 && err == nil { -@@ -1269,35 +1602,36 @@ func (cs *clientStream) writeRequestBody(body io.Reader, bodyCloser io.Closer) ( - // to send the END_STREAM bit early, double-check that we're actually - // at EOF. Subsequent reads should return (0, EOF) at this point. - // If either value is different, we return an error in one of two ways below. -+ var scratch [1]byte - var n1 int -- n1, err = body.Read(buf[n:]) -+ n1, err = body.Read(scratch[:]) - remainLen -= int64(n1) - } - if remainLen < 0 { - err = errReqBodyTooLong -- cc.writeStreamReset(cs.ID, ErrCodeCancel, err) - return err - } - } -- if err == io.EOF { -- sawEOF = true -- err = nil -- } else if err != nil { -- cc.writeStreamReset(cs.ID, ErrCodeCancel, err) -- return err -+ if err != nil { -+ cc.mu.Lock() -+ bodyClosed := cs.reqBodyClosed -+ cc.mu.Unlock() -+ switch { -+ case bodyClosed: -+ return errStopReqBodyWrite -+ case err == io.EOF: -+ sawEOF = true -+ err = nil -+ default: -+ return err -+ } - } - - remain := buf[:n] - for len(remain) > 0 && err == nil { - var allowed int32 - allowed, err = cs.awaitFlowControl(len(remain)) -- switch { -- case err == errStopReqBodyWrite: -- return err -- case err == errStopReqBodyWriteAndCancel: -- cc.writeStreamReset(cs.ID, ErrCodeCancel, nil) -- return err -- case err != nil: -+ if err != nil { - return err - } - cc.wmu.Lock() -@@ -1328,24 +1662,26 @@ func (cs *clientStream) writeRequestBody(body io.Reader, bodyCloser io.Closer) ( - return nil - } - -- var trls []byte -- if hasTrailers { -- cc.mu.Lock() -- trls, err = cc.encodeTrailers(req) -- cc.mu.Unlock() -- if err != nil { -- cc.writeStreamReset(cs.ID, ErrCodeInternal, err) -- cc.forgetStreamID(cs.ID) -- return err -- } -- } -- -+ // Since the RoundTrip contract permits the caller to "mutate or reuse" -+ // a request after the Response's Body is closed, verify that this hasn't -+ // happened before accessing the trailers. - cc.mu.Lock() -- maxFrameSize := int(cc.maxFrameSize) -+ trailer := req.Trailer -+ err = cs.abortErr - cc.mu.Unlock() -+ if err != nil { -+ return err -+ } - - cc.wmu.Lock() - defer cc.wmu.Unlock() -+ var trls []byte -+ if len(trailer) > 0 { -+ trls, err = cc.encodeTrailers(trailer) -+ if err != nil { -+ return err -+ } -+ } - - // Two ways to send END_STREAM: either with trailers, or - // with an empty DATA frame. -@@ -1366,17 +1702,24 @@ func (cs *clientStream) writeRequestBody(body io.Reader, bodyCloser io.Closer) ( - // if the stream is dead. - func (cs *clientStream) awaitFlowControl(maxBytes int) (taken int32, err error) { - cc := cs.cc -+ ctx := cs.ctx - cc.mu.Lock() - defer cc.mu.Unlock() - for { - if cc.closed { - return 0, errClientConnClosed - } -- if cs.stopReqBody != nil { -- return 0, cs.stopReqBody -+ if cs.reqBodyClosed { -+ return 0, errStopReqBodyWrite - } -- if err := cs.checkResetOrDone(); err != nil { -- return 0, err -+ select { -+ case <-cs.abort: -+ return 0, cs.abortErr -+ case <-ctx.Done(): -+ return 0, ctx.Err() -+ case <-cs.reqCancel: -+ return 0, errRequestCanceled -+ default: - } - if a := cs.flow.available(); a > 0 { - take := a -@@ -1394,9 +1737,14 @@ func (cs *clientStream) awaitFlowControl(maxBytes int) (taken int32, err error) - } - } - --// requires cc.mu be held. -+var errNilRequestURL = errors.New("http2: Request.URI is nil") -+ -+// requires cc.wmu be held. - func (cc *ClientConn) encodeHeaders(req *http.Request, addGzipHeader bool, trailers string, contentLength int64) ([]byte, error) { - cc.hbuf.Reset() -+ if req.URL == nil { -+ return nil, errNilRequestURL -+ } - - host := req.Host - if host == "" { -@@ -1432,7 +1780,8 @@ func (cc *ClientConn) encodeHeaders(req *http.Request, addGzipHeader bool, trail - } - for _, v := range vv { - if !httpguts.ValidHeaderFieldValue(v) { -- return nil, fmt.Errorf("invalid HTTP header value %q for header %q", v, k) -+ // Don't include the value in the error, because it may be sensitive. -+ return nil, fmt.Errorf("invalid HTTP header value for header %q", k) - } - } - } -@@ -1459,19 +1808,21 @@ func (cc *ClientConn) encodeHeaders(req *http.Request, addGzipHeader bool, trail - - var didUA bool - for k, vv := range req.Header { -- if strings.EqualFold(k, "host") || strings.EqualFold(k, "content-length") { -+ if asciiEqualFold(k, "host") || asciiEqualFold(k, "content-length") { - // Host is :authority, already sent. - // Content-Length is automatic, set below. - continue -- } else if strings.EqualFold(k, "connection") || strings.EqualFold(k, "proxy-connection") || -- strings.EqualFold(k, "transfer-encoding") || strings.EqualFold(k, "upgrade") || -- strings.EqualFold(k, "keep-alive") { -+ } else if asciiEqualFold(k, "connection") || -+ asciiEqualFold(k, "proxy-connection") || -+ asciiEqualFold(k, "transfer-encoding") || -+ asciiEqualFold(k, "upgrade") || -+ asciiEqualFold(k, "keep-alive") { - // Per 8.1.2.2 Connection-Specific Header - // Fields, don't send connection-specific - // fields. We have already checked if any - // are error-worthy so just ignore the rest. - continue -- } else if strings.EqualFold(k, "user-agent") { -+ } else if asciiEqualFold(k, "user-agent") { - // Match Go's http1 behavior: at most one - // User-Agent. If set to nil or empty string, - // then omit it. Otherwise if not mentioned, -@@ -1484,7 +1835,7 @@ func (cc *ClientConn) encodeHeaders(req *http.Request, addGzipHeader bool, trail - if vv[0] == "" { - continue - } -- } else if strings.EqualFold(k, "cookie") { -+ } else if asciiEqualFold(k, "cookie") { - // Per 8.1.2.5 To allow for better compression efficiency, the - // Cookie header field MAY be split into separate header fields, - // each with one or more cookie-pairs. -@@ -1543,7 +1894,12 @@ func (cc *ClientConn) encodeHeaders(req *http.Request, addGzipHeader bool, trail - - // Header list size is ok. Write the headers. - enumerateHeaders(func(name, value string) { -- name = strings.ToLower(name) -+ name, ascii := asciiToLower(name) -+ if !ascii { -+ // Skip writing invalid headers. Per RFC 7540, Section 8.1.2, header -+ // field names have to be ASCII characters (just as in HTTP/1.x). -+ return -+ } - cc.writeHeader(name, value) - if traceHeaders { - traceWroteHeaderField(trace, name, value) -@@ -1575,12 +1931,12 @@ func shouldSendReqContentLength(method string, contentLength int64) bool { - } - } - --// requires cc.mu be held. --func (cc *ClientConn) encodeTrailers(req *http.Request) ([]byte, error) { -+// requires cc.wmu be held. -+func (cc *ClientConn) encodeTrailers(trailer http.Header) ([]byte, error) { - cc.hbuf.Reset() - - hlSize := uint64(0) -- for k, vv := range req.Trailer { -+ for k, vv := range trailer { - for _, v := range vv { - hf := hpack.HeaderField{Name: k, Value: v} - hlSize += uint64(hf.Size()) -@@ -1590,10 +1946,15 @@ func (cc *ClientConn) encodeTrailers(req *http.Request) ([]byte, error) { - return nil, errRequestHeaderListSize - } - -- for k, vv := range req.Trailer { -+ for k, vv := range trailer { -+ lowKey, ascii := asciiToLower(k) -+ if !ascii { -+ // Skip writing invalid headers. Per RFC 7540, Section 8.1.2, header -+ // field names have to be ASCII characters (just as in HTTP/1.x). -+ continue -+ } - // Transfer-Encoding, etc.. have already been filtered at the - // start of RoundTrip -- lowKey := strings.ToLower(k) - for _, v := range vv { - cc.writeHeader(lowKey, v) - } -@@ -1615,51 +1976,51 @@ type resAndError struct { - } - - // requires cc.mu be held. --func (cc *ClientConn) newStream() *clientStream { -- cs := &clientStream{ -- cc: cc, -- ID: cc.nextStreamID, -- resc: make(chan resAndError, 1), -- peerReset: make(chan struct{}), -- done: make(chan struct{}), -- } -+func (cc *ClientConn) addStreamLocked(cs *clientStream) { - cs.flow.add(int32(cc.initialWindowSize)) - cs.flow.setConnFlow(&cc.flow) - cs.inflow.add(transportDefaultStreamFlow) - cs.inflow.setConnFlow(&cc.inflow) -+ cs.ID = cc.nextStreamID - cc.nextStreamID += 2 - cc.streams[cs.ID] = cs -- return cs -+ if cs.ID == 0 { -+ panic("assigned stream ID 0") -+ } - } - - func (cc *ClientConn) forgetStreamID(id uint32) { -- cc.streamByID(id, true) --} -- --func (cc *ClientConn) streamByID(id uint32, andRemove bool) *clientStream { - cc.mu.Lock() -- defer cc.mu.Unlock() -- cs := cc.streams[id] -- if andRemove && cs != nil && !cc.closed { -- cc.lastActive = time.Now() -- delete(cc.streams, id) -- if len(cc.streams) == 0 && cc.idleTimer != nil { -- cc.idleTimer.Reset(cc.idleTimeout) -- cc.lastIdle = time.Now() -- } -- close(cs.done) -- // Wake up checkResetOrDone via clientStream.awaitFlowControl and -- // wake up RoundTrip if there is a pending request. -- cc.cond.Broadcast() -+ slen := len(cc.streams) -+ delete(cc.streams, id) -+ if len(cc.streams) != slen-1 { -+ panic("forgetting unknown stream id") -+ } -+ cc.lastActive = time.Now() -+ if len(cc.streams) == 0 && cc.idleTimer != nil { -+ cc.idleTimer.Reset(cc.idleTimeout) -+ cc.lastIdle = time.Now() -+ } -+ // Wake up writeRequestBody via clientStream.awaitFlowControl and -+ // wake up RoundTrip if there is a pending request. -+ cc.cond.Broadcast() -+ -+ closeOnIdle := cc.singleUse || cc.doNotReuse || cc.t.disableKeepAlives() -+ if closeOnIdle && cc.streamsReserved == 0 && len(cc.streams) == 0 { -+ if VerboseLogs { -+ cc.vlogf("http2: Transport closing idle conn %p (forSingleUse=%v, maxStream=%v)", cc, cc.singleUse, cc.nextStreamID-2) -+ } -+ cc.closed = true -+ defer cc.closeConn() - } -- return cs -+ -+ cc.mu.Unlock() - } - - // clientConnReadLoop is the state owned by the clientConn's frame-reading readLoop. - type clientConnReadLoop struct { -- _ incomparable -- cc *ClientConn -- closeWhenIdle bool -+ _ incomparable -+ cc *ClientConn - } - - // readLoop runs in its own goroutine and reads and dispatches frames. -@@ -1697,8 +2058,8 @@ func isEOFOrNetReadError(err error) bool { - - func (rl *clientConnReadLoop) cleanup() { - cc := rl.cc -- defer cc.tconn.Close() -- defer cc.t.connPool().MarkDead(cc) -+ cc.t.connPool().MarkDead(cc) -+ defer cc.closeConn() - defer close(cc.readerDone) - - if cc.idleTimer != nil { -@@ -1719,33 +2080,66 @@ func (rl *clientConnReadLoop) cleanup() { - } else if err == io.EOF { - err = io.ErrUnexpectedEOF - } -+ cc.closed = true - for _, cs := range cc.streams { -- cs.bufPipe.CloseWithError(err) // no-op if already closed - select { -- case cs.resc <- resAndError{err: err}: -+ case <-cs.peerClosed: -+ // The server closed the stream before closing the conn, -+ // so no need to interrupt it. - default: -+ cs.abortStreamLocked(err) - } -- close(cs.done) - } -- cc.closed = true - cc.cond.Broadcast() - cc.mu.Unlock() - } - -+// countReadFrameError calls Transport.CountError with a string -+// representing err. -+func (cc *ClientConn) countReadFrameError(err error) { -+ f := cc.t.CountError -+ if f == nil || err == nil { -+ return -+ } -+ if ce, ok := err.(ConnectionError); ok { -+ errCode := ErrCode(ce) -+ f(fmt.Sprintf("read_frame_conn_error_%s", errCode.stringToken())) -+ return -+ } -+ if errors.Is(err, io.EOF) { -+ f("read_frame_eof") -+ return -+ } -+ if errors.Is(err, io.ErrUnexpectedEOF) { -+ f("read_frame_unexpected_eof") -+ return -+ } -+ if errors.Is(err, ErrFrameTooLarge) { -+ f("read_frame_too_large") -+ return -+ } -+ f("read_frame_other") -+} -+ - func (rl *clientConnReadLoop) run() error { - cc := rl.cc -- rl.closeWhenIdle = cc.t.disableKeepAlives() || cc.singleUse -- gotReply := false // ever saw a HEADERS reply - gotSettings := false -+ readIdleTimeout := cc.t.ReadIdleTimeout -+ var t *time.Timer -+ if readIdleTimeout != 0 { -+ t = time.AfterFunc(readIdleTimeout, cc.healthCheck) -+ defer t.Stop() -+ } - for { - f, err := cc.fr.ReadFrame() -+ if t != nil { -+ t.Reset(readIdleTimeout) -+ } - if err != nil { - cc.vlogf("http2: Transport readFrame error on conn %p: (%T) %v", cc, err, err) - } - if se, ok := err.(StreamError); ok { -- if cs := cc.streamByID(se.StreamID, false); cs != nil { -- cs.cc.writeStreamReset(cs.ID, se.Code, err) -- cs.cc.forgetStreamID(cs.ID) -+ if cs := rl.streamByID(se.StreamID); cs != nil { - if se.Cause == nil { - se.Cause = cc.fr.errDetail - } -@@ -1753,6 +2147,7 @@ func (rl *clientConnReadLoop) run() error { - } - continue - } else if err != nil { -+ cc.countReadFrameError(err) - return err - } - if VerboseLogs { -@@ -1765,22 +2160,16 @@ func (rl *clientConnReadLoop) run() error { - } - gotSettings = true - } -- maybeIdle := false // whether frame might transition us to idle - - switch f := f.(type) { - case *MetaHeadersFrame: - err = rl.processHeaders(f) -- maybeIdle = true -- gotReply = true - case *DataFrame: - err = rl.processData(f) -- maybeIdle = true - case *GoAwayFrame: - err = rl.processGoAway(f) -- maybeIdle = true - case *RSTStreamFrame: - err = rl.processResetStream(f) -- maybeIdle = true - case *SettingsFrame: - err = rl.processSettings(f) - case *PushPromiseFrame: -@@ -1798,38 +2187,24 @@ func (rl *clientConnReadLoop) run() error { - } - return err - } -- if rl.closeWhenIdle && gotReply && maybeIdle { -- cc.closeIfIdle() -- } - } - } - - func (rl *clientConnReadLoop) processHeaders(f *MetaHeadersFrame) error { -- cc := rl.cc -- cs := cc.streamByID(f.StreamID, false) -+ cs := rl.streamByID(f.StreamID) - if cs == nil { - // We'd get here if we canceled a request while the - // server had its response still in flight. So if this - // was just something we canceled, ignore it. - return nil - } -- if f.StreamEnded() { -- // Issue 20521: If the stream has ended, streamByID() causes -- // clientStream.done to be closed, which causes the request's bodyWriter -- // to be closed with an errStreamClosed, which may be received by -- // clientConn.RoundTrip before the result of processing these headers. -- // Deferring stream closure allows the header processing to occur first. -- // clientConn.RoundTrip may still receive the bodyWriter error first, but -- // the fix for issue 16102 prioritises any response. -- // -- // Issue 22413: If there is no request body, we should close the -- // stream before writing to cs.resc so that the stream is closed -- // immediately once RoundTrip returns. -- if cs.req.Body != nil { -- defer cc.forgetStreamID(f.StreamID) -- } else { -- cc.forgetStreamID(f.StreamID) -- } -+ if cs.readClosed { -+ rl.endStreamError(cs, StreamError{ -+ StreamID: f.StreamID, -+ Code: ErrCodeProtocol, -+ Cause: errors.New("protocol error: headers after END_STREAM"), -+ }) -+ return nil - } - if !cs.firstByte { - if cs.trace != nil { -@@ -1853,9 +2228,11 @@ func (rl *clientConnReadLoop) processHeaders(f *MetaHeadersFrame) error { - return err - } - // Any other error type is a stream error. -- cs.cc.writeStreamReset(f.StreamID, ErrCodeProtocol, err) -- cc.forgetStreamID(cs.ID) -- cs.resc <- resAndError{err: err} -+ rl.endStreamError(cs, StreamError{ -+ StreamID: f.StreamID, -+ Code: ErrCodeProtocol, -+ Cause: err, -+ }) - return nil // return nil from process* funcs to keep conn alive - } - if res == nil { -@@ -1863,7 +2240,11 @@ func (rl *clientConnReadLoop) processHeaders(f *MetaHeadersFrame) error { - return nil - } - cs.resTrailer = &res.Trailer -- cs.resc <- resAndError{res: res} -+ cs.res = res -+ close(cs.respHeaderRecv) -+ if f.StreamEnded() { -+ rl.endStream(cs) -+ } - return nil - } - -@@ -1925,6 +2306,9 @@ func (rl *clientConnReadLoop) handleResponse(cs *clientStream, f *MetaHeadersFra - } - - if statusCode >= 100 && statusCode <= 199 { -+ if f.StreamEnded() { -+ return nil, errors.New("1xx informational response with END_STREAM flag") -+ } - cs.num1xx++ - const max1xxResponses = 5 // arbitrary bound on number of informational responses, same as net/http - if cs.num1xx > max1xxResponses { -@@ -1937,42 +2321,49 @@ func (rl *clientConnReadLoop) handleResponse(cs *clientStream, f *MetaHeadersFra - } - if statusCode == 100 { - traceGot100Continue(cs.trace) -- if cs.on100 != nil { -- cs.on100() // forces any write delay timer to fire -+ select { -+ case cs.on100 <- struct{}{}: -+ default: - } - } - cs.pastHeaders = false // do it all again - return nil, nil - } - -- streamEnded := f.StreamEnded() -- isHead := cs.req.Method == "HEAD" -- if !streamEnded || isHead { -- res.ContentLength = -1 -- if clens := res.Header["Content-Length"]; len(clens) == 1 { -- if clen64, err := strconv.ParseInt(clens[0], 10, 64); err == nil { -- res.ContentLength = clen64 -- } else { -- // TODO: care? unlike http/1, it won't mess up our framing, so it's -- // more safe smuggling-wise to ignore. -- } -- } else if len(clens) > 1 { -+ res.ContentLength = -1 -+ if clens := res.Header["Content-Length"]; len(clens) == 1 { -+ if cl, err := strconv.ParseUint(clens[0], 10, 63); err == nil { -+ res.ContentLength = int64(cl) -+ } else { - // TODO: care? unlike http/1, it won't mess up our framing, so it's - // more safe smuggling-wise to ignore. - } -+ } else if len(clens) > 1 { -+ // TODO: care? unlike http/1, it won't mess up our framing, so it's -+ // more safe smuggling-wise to ignore. -+ } else if f.StreamEnded() && !cs.isHead { -+ res.ContentLength = 0 - } - -- if streamEnded || isHead { -+ if cs.isHead { - res.Body = noBody - return res, nil - } - -- cs.bufPipe = pipe{b: &dataBuffer{expected: res.ContentLength}} -+ if f.StreamEnded() { -+ if res.ContentLength > 0 { -+ res.Body = missingBody{} -+ } else { -+ res.Body = noBody -+ } -+ return res, nil -+ } -+ -+ cs.bufPipe.setBuffer(&dataBuffer{expected: res.ContentLength}) - cs.bytesRemain = res.ContentLength - res.Body = transportResponseBody{cs} -- go cs.awaitRequestCancel(cs.req) - -- if cs.requestedGzip && res.Header.Get("Content-Encoding") == "gzip" { -+ if cs.requestedGzip && asciiEqualFold(res.Header.Get("Content-Encoding"), "gzip") { - res.Header.Del("Content-Encoding") - res.Header.Del("Content-Length") - res.ContentLength = -1 -@@ -2011,8 +2402,7 @@ func (rl *clientConnReadLoop) processTrailers(cs *clientStream, f *MetaHeadersFr - } - - // transportResponseBody is the concrete type of Transport.RoundTrip's --// Response.Body. It is an io.ReadCloser. On Read, it reads from cs.body. --// On Close it sends RST_STREAM if EOF wasn't already seen. -+// Response.Body. It is an io.ReadCloser. - type transportResponseBody struct { - cs *clientStream - } -@@ -2030,7 +2420,7 @@ func (b transportResponseBody) Read(p []byte) (n int, err error) { - n = int(cs.bytesRemain) - if err == nil { - err = errors.New("net/http: server replied with more than declared Content-Length; truncated") -- cc.writeStreamReset(cs.ID, ErrCodeProtocol, err) -+ cs.abortStream(err) - } - cs.readErr = err - return int(cs.bytesRemain), err -@@ -2048,8 +2438,6 @@ func (b transportResponseBody) Read(p []byte) (n int, err error) { - } - - cc.mu.Lock() -- defer cc.mu.Unlock() -- - var connAdd, streamAdd int32 - // Check the conn-level first, before the stream-level. - if v := cc.inflow.available(); v < transportDefaultConnFlow/2 { -@@ -2066,6 +2454,8 @@ func (b transportResponseBody) Read(p []byte) (n int, err error) { - cs.inflow.add(streamAdd) - } - } -+ cc.mu.Unlock() -+ - if connAdd != 0 || streamAdd != 0 { - cc.wmu.Lock() - defer cc.wmu.Unlock() -@@ -2086,34 +2476,45 @@ func (b transportResponseBody) Close() error { - cs := b.cs - cc := cs.cc - -- serverSentStreamEnd := cs.bufPipe.Err() == io.EOF - unread := cs.bufPipe.Len() -- -- if unread > 0 || !serverSentStreamEnd { -+ if unread > 0 { - cc.mu.Lock() -- cc.wmu.Lock() -- if !serverSentStreamEnd { -- cc.fr.WriteRSTStream(cs.ID, ErrCodeCancel) -- cs.didReset = true -- } - // Return connection-level flow control. - if unread > 0 { - cc.inflow.add(int32(unread)) -+ } -+ cc.mu.Unlock() -+ -+ // TODO(dneil): Acquiring this mutex can block indefinitely. -+ // Move flow control return to a goroutine? -+ cc.wmu.Lock() -+ // Return connection-level flow control. -+ if unread > 0 { - cc.fr.WriteWindowUpdate(0, uint32(unread)) - } - cc.bw.Flush() - cc.wmu.Unlock() -- cc.mu.Unlock() - } - - cs.bufPipe.BreakWithError(errClosedResponseBody) -- cc.forgetStreamID(cs.ID) -+ cs.abortStream(errClosedResponseBody) -+ -+ select { -+ case <-cs.donec: -+ case <-cs.ctx.Done(): -+ // See golang/go#49366: The net/http package can cancel the -+ // request context after the response body is fully read. -+ // Don't treat this as an error. -+ return nil -+ case <-cs.reqCancel: -+ return errRequestCanceled -+ } - return nil - } - - func (rl *clientConnReadLoop) processData(f *DataFrame) error { - cc := rl.cc -- cs := cc.streamByID(f.StreamID, f.StreamEnded()) -+ cs := rl.streamByID(f.StreamID) - data := f.Data() - if cs == nil { - cc.mu.Lock() -@@ -2142,6 +2543,14 @@ func (rl *clientConnReadLoop) processData(f *DataFrame) error { - } - return nil - } -+ if cs.readClosed { -+ cc.logf("protocol error: received DATA after END_STREAM") -+ rl.endStreamError(cs, StreamError{ -+ StreamID: f.StreamID, -+ Code: ErrCodeProtocol, -+ }) -+ return nil -+ } - if !cs.firstByte { - cc.logf("protocol error: received DATA before a HEADERS frame") - rl.endStreamError(cs, StreamError{ -@@ -2151,7 +2560,7 @@ func (rl *clientConnReadLoop) processData(f *DataFrame) error { - return nil - } - if f.Length > 0 { -- if cs.req.Method == "HEAD" && len(data) > 0 { -+ if cs.isHead && len(data) > 0 { - cc.logf("protocol error: received DATA on a HEAD request") - rl.endStreamError(cs, StreamError{ - StreamID: f.StreamID, -@@ -2173,30 +2582,39 @@ func (rl *clientConnReadLoop) processData(f *DataFrame) error { - if pad := int(f.Length) - len(data); pad > 0 { - refund += pad - } -- // Return len(data) now if the stream is already closed, -- // since data will never be read. -- didReset := cs.didReset -- if didReset { -- refund += len(data) -+ -+ didReset := false -+ var err error -+ if len(data) > 0 { -+ if _, err = cs.bufPipe.Write(data); err != nil { -+ // Return len(data) now if the stream is already closed, -+ // since data will never be read. -+ didReset = true -+ refund += len(data) -+ } - } -+ - if refund > 0 { - cc.inflow.add(int32(refund)) -+ if !didReset { -+ cs.inflow.add(int32(refund)) -+ } -+ } -+ cc.mu.Unlock() -+ -+ if refund > 0 { - cc.wmu.Lock() - cc.fr.WriteWindowUpdate(0, uint32(refund)) - if !didReset { -- cs.inflow.add(int32(refund)) - cc.fr.WriteWindowUpdate(cs.ID, uint32(refund)) - } - cc.bw.Flush() - cc.wmu.Unlock() - } -- cc.mu.Unlock() - -- if len(data) > 0 && !didReset { -- if _, err := cs.bufPipe.Write(data); err != nil { -- rl.endStreamError(cs, err) -- return err -- } -+ if err != nil { -+ rl.endStreamError(cs, err) -+ return nil - } - } - -@@ -2209,24 +2627,32 @@ func (rl *clientConnReadLoop) processData(f *DataFrame) error { - func (rl *clientConnReadLoop) endStream(cs *clientStream) { - // TODO: check that any declared content-length matches, like - // server.go's (*stream).endStream method. -- rl.endStreamError(cs, nil) -+ if !cs.readClosed { -+ cs.readClosed = true -+ // Close cs.bufPipe and cs.peerClosed with cc.mu held to avoid a -+ // race condition: The caller can read io.EOF from Response.Body -+ // and close the body before we close cs.peerClosed, causing -+ // cleanupWriteRequest to send a RST_STREAM. -+ rl.cc.mu.Lock() -+ defer rl.cc.mu.Unlock() -+ cs.bufPipe.closeWithErrorAndCode(io.EOF, cs.copyTrailers) -+ close(cs.peerClosed) -+ } - } - - func (rl *clientConnReadLoop) endStreamError(cs *clientStream, err error) { -- var code func() -- if err == nil { -- err = io.EOF -- code = cs.copyTrailers -- } -- if isConnectionCloseRequest(cs.req) { -- rl.closeWhenIdle = true -- } -- cs.bufPipe.closeWithErrorAndCode(err, code) -+ cs.readAborted = true -+ cs.abortStream(err) -+} - -- select { -- case cs.resc <- resAndError{err: err}: -- default: -+func (rl *clientConnReadLoop) streamByID(id uint32) *clientStream { -+ rl.cc.mu.Lock() -+ defer rl.cc.mu.Unlock() -+ cs := rl.cc.streams[id] -+ if cs != nil && !cs.readAborted { -+ return cs - } -+ return nil - } - - func (cs *clientStream) copyTrailers() { -@@ -2245,12 +2671,33 @@ func (rl *clientConnReadLoop) processGoAway(f *GoAwayFrame) error { - if f.ErrCode != 0 { - // TODO: deal with GOAWAY more. particularly the error code - cc.vlogf("transport got GOAWAY with error code = %v", f.ErrCode) -+ if fn := cc.t.CountError; fn != nil { -+ fn("recv_goaway_" + f.ErrCode.stringToken()) -+ } -+ - } - cc.setGoAway(f) - return nil - } - - func (rl *clientConnReadLoop) processSettings(f *SettingsFrame) error { -+ cc := rl.cc -+ // Locking both mu and wmu here allows frame encoding to read settings with only wmu held. -+ // Acquiring wmu when f.IsAck() is unnecessary, but convenient and mostly harmless. -+ cc.wmu.Lock() -+ defer cc.wmu.Unlock() -+ -+ if err := rl.processSettingsNoWrite(f); err != nil { -+ return err -+ } -+ if !f.IsAck() { -+ cc.fr.WriteSettingsAck() -+ cc.bw.Flush() -+ } -+ return nil -+} -+ -+func (rl *clientConnReadLoop) processSettingsNoWrite(f *SettingsFrame) error { - cc := rl.cc - cc.mu.Lock() - defer cc.mu.Unlock() -@@ -2263,12 +2710,14 @@ func (rl *clientConnReadLoop) processSettings(f *SettingsFrame) error { - return ConnectionError(ErrCodeProtocol) - } - -+ var seenMaxConcurrentStreams bool - err := f.ForeachSetting(func(s Setting) error { - switch s.ID { - case SettingMaxFrameSize: - cc.maxFrameSize = s.Val - case SettingMaxConcurrentStreams: - cc.maxConcurrentStreams = s.Val -+ seenMaxConcurrentStreams = true - case SettingMaxHeaderListSize: - cc.peerMaxHeaderListSize = uint64(s.Val) - case SettingInitialWindowSize: -@@ -2300,17 +2749,23 @@ func (rl *clientConnReadLoop) processSettings(f *SettingsFrame) error { - return err - } - -- cc.wmu.Lock() -- defer cc.wmu.Unlock() -+ if !cc.seenSettings { -+ if !seenMaxConcurrentStreams { -+ // This was the servers initial SETTINGS frame and it -+ // didn't contain a MAX_CONCURRENT_STREAMS field so -+ // increase the number of concurrent streams this -+ // connection can establish to our default. -+ cc.maxConcurrentStreams = defaultMaxConcurrentStreams -+ } -+ cc.seenSettings = true -+ } - -- cc.fr.WriteSettingsAck() -- cc.bw.Flush() -- return cc.werr -+ return nil - } - - func (rl *clientConnReadLoop) processWindowUpdate(f *WindowUpdateFrame) error { - cc := rl.cc -- cs := cc.streamByID(f.StreamID, false) -+ cs := rl.streamByID(f.StreamID) - if f.StreamID != 0 && cs == nil { - return nil - } -@@ -2330,24 +2785,22 @@ func (rl *clientConnReadLoop) processWindowUpdate(f *WindowUpdateFrame) error { - } - - func (rl *clientConnReadLoop) processResetStream(f *RSTStreamFrame) error { -- cs := rl.cc.streamByID(f.StreamID, true) -+ cs := rl.streamByID(f.StreamID) - if cs == nil { -- // TODO: return error if server tries to RST_STEAM an idle stream -+ // TODO: return error if server tries to RST_STREAM an idle stream - return nil - } -- select { -- case <-cs.peerReset: -- // Already reset. -- // This is the only goroutine -- // which closes this, so there -- // isn't a race. -- default: -- err := streamError(cs.ID, f.ErrCode) -- cs.resetErr = err -- close(cs.peerReset) -- cs.bufPipe.CloseWithError(err) -- cs.cc.cond.Broadcast() // wake up checkResetOrDone via clientStream.awaitFlowControl -+ serr := streamError(cs.ID, f.ErrCode) -+ serr.Cause = errFromPeer -+ if f.ErrCode == ErrCodeProtocol { -+ rl.cc.SetDoNotReuse() -+ } -+ if fn := cs.cc.t.CountError; fn != nil { -+ fn("recv_rststream_" + f.ErrCode.stringToken()) - } -+ cs.abortStream(serr) -+ -+ cs.bufPipe.CloseWithError(serr) - return nil - } - -@@ -2369,19 +2822,24 @@ func (cc *ClientConn) Ping(ctx context.Context) error { - } - cc.mu.Unlock() - } -- cc.wmu.Lock() -- if err := cc.fr.WritePing(false, p); err != nil { -- cc.wmu.Unlock() -- return err -- } -- if err := cc.bw.Flush(); err != nil { -- cc.wmu.Unlock() -- return err -- } -- cc.wmu.Unlock() -+ errc := make(chan error, 1) -+ go func() { -+ cc.wmu.Lock() -+ defer cc.wmu.Unlock() -+ if err := cc.fr.WritePing(false, p); err != nil { -+ errc <- err -+ return -+ } -+ if err := cc.bw.Flush(); err != nil { -+ errc <- err -+ return -+ } -+ }() - select { - case <-c: - return nil -+ case err := <-errc: -+ return err - case <-ctx.Done(): - return ctx.Err() - case <-cc.readerDone: -@@ -2456,7 +2914,17 @@ func (t *Transport) logf(format string, args ...interface{}) { - log.Printf(format, args...) - } - --var noBody io.ReadCloser = ioutil.NopCloser(bytes.NewReader(nil)) -+var noBody io.ReadCloser = noBodyReader{} -+ -+type noBodyReader struct{} -+ -+func (noBodyReader) Close() error { return nil } -+func (noBodyReader) Read([]byte) (int, error) { return 0, io.EOF } -+ -+type missingBody struct{} -+ -+func (missingBody) Close() error { return nil } -+func (missingBody) Read([]byte) (int, error) { return 0, io.ErrUnexpectedEOF } - - func strSliceContains(ss []string, s string) bool { - for _, v := range ss { -@@ -2469,6 +2937,7 @@ func strSliceContains(ss []string, s string) bool { - - type erringRoundTripper struct{ err error } - -+func (rt erringRoundTripper) RoundTripErr() error { return rt.err } - func (rt erringRoundTripper) RoundTrip(*http.Request) (*http.Response, error) { return nil, rt.err } - - // gzipReader wraps a response body so it can lazily -@@ -2502,85 +2971,6 @@ type errorReader struct{ err error } - - func (r errorReader) Read(p []byte) (int, error) { return 0, r.err } - --// bodyWriterState encapsulates various state around the Transport's writing --// of the request body, particularly regarding doing delayed writes of the body --// when the request contains "Expect: 100-continue". --type bodyWriterState struct { -- cs *clientStream -- timer *time.Timer // if non-nil, we're doing a delayed write -- fnonce *sync.Once // to call fn with -- fn func() // the code to run in the goroutine, writing the body -- resc chan error // result of fn's execution -- delay time.Duration // how long we should delay a delayed write for --} -- --func (t *Transport) getBodyWriterState(cs *clientStream, body io.Reader) (s bodyWriterState) { -- s.cs = cs -- if body == nil { -- return -- } -- resc := make(chan error, 1) -- s.resc = resc -- s.fn = func() { -- cs.cc.mu.Lock() -- cs.startedWrite = true -- cs.cc.mu.Unlock() -- resc <- cs.writeRequestBody(body, cs.req.Body) -- } -- s.delay = t.expectContinueTimeout() -- if s.delay == 0 || -- !httpguts.HeaderValuesContainsToken( -- cs.req.Header["Expect"], -- "100-continue") { -- return -- } -- s.fnonce = new(sync.Once) -- -- // Arm the timer with a very large duration, which we'll -- // intentionally lower later. It has to be large now because -- // we need a handle to it before writing the headers, but the -- // s.delay value is defined to not start until after the -- // request headers were written. -- const hugeDuration = 365 * 24 * time.Hour -- s.timer = time.AfterFunc(hugeDuration, func() { -- s.fnonce.Do(s.fn) -- }) -- return --} -- --func (s bodyWriterState) cancel() { -- if s.timer != nil { -- s.timer.Stop() -- } --} -- --func (s bodyWriterState) on100() { -- if s.timer == nil { -- // If we didn't do a delayed write, ignore the server's -- // bogus 100 continue response. -- return -- } -- s.timer.Stop() -- go func() { s.fnonce.Do(s.fn) }() --} -- --// scheduleBodyWrite starts writing the body, either immediately (in --// the common case) or after the delay timeout. It should not be --// called until after the headers have been written. --func (s bodyWriterState) scheduleBodyWrite() { -- if s.timer == nil { -- // We're not doing a delayed write (see -- // getBodyWriterState), so just start the writing -- // goroutine immediately. -- go s.fn() -- return -- } -- traceWait100Continue(s.cs.trace) -- if s.timer.Stop() { -- s.timer.Reset(s.delay) -- } --} -- - // isConnectionCloseRequest reports whether req should use its own - // connection for a single request and then close the connection. - func isConnectionCloseRequest(req *http.Request) bool { -diff --git a/vendor/golang.org/x/net/http2/write.go b/vendor/golang.org/x/net/http2/write.go -index 3849bc2..33f6139 100644 ---- a/vendor/golang.org/x/net/http2/write.go -+++ b/vendor/golang.org/x/net/http2/write.go -@@ -341,7 +341,12 @@ func encodeHeaders(enc *hpack.Encoder, h http.Header, keys []string) { - } - for _, k := range keys { - vv := h[k] -- k = lowerHeader(k) -+ k, ascii := lowerHeader(k) -+ if !ascii { -+ // Skip writing invalid headers. Per RFC 7540, Section 8.1.2, header -+ // field names have to be ASCII characters (just as in HTTP/1.x). -+ continue -+ } - if !validWireHeaderFieldName(k) { - // Skip it as backup paranoia. Per - // golang.org/issue/14048, these should -diff --git a/vendor/golang.org/x/net/http2/writesched.go b/vendor/golang.org/x/net/http2/writesched.go -index f24d2b1..c7cd001 100644 ---- a/vendor/golang.org/x/net/http2/writesched.go -+++ b/vendor/golang.org/x/net/http2/writesched.go -@@ -32,7 +32,8 @@ type WriteScheduler interface { - - // Pop dequeues the next frame to write. Returns false if no frames can - // be written. Frames with a given wr.StreamID() are Pop'd in the same -- // order they are Push'd. No frames should be discarded except by CloseStream. -+ // order they are Push'd, except RST_STREAM frames. No frames should be -+ // discarded except by CloseStream. - Pop() (wr FrameWriteRequest, ok bool) - } - -@@ -52,6 +53,7 @@ type FrameWriteRequest struct { - - // stream is the stream on which this frame will be written. - // nil for non-stream frames like PING and SETTINGS. -+ // nil for RST_STREAM streams, which use the StreamError.StreamID field instead. - stream *stream - - // done, if non-nil, must be a buffered channel with space for -diff --git a/vendor/golang.org/x/net/http2/writesched_priority.go b/vendor/golang.org/x/net/http2/writesched_priority.go -index 2618b2c..0a242c6 100644 ---- a/vendor/golang.org/x/net/http2/writesched_priority.go -+++ b/vendor/golang.org/x/net/http2/writesched_priority.go -@@ -383,16 +383,15 @@ func (ws *priorityWriteScheduler) AdjustStream(streamID uint32, priority Priorit - - func (ws *priorityWriteScheduler) Push(wr FrameWriteRequest) { - var n *priorityNode -- if id := wr.StreamID(); id == 0 { -+ if wr.isControl() { - n = &ws.root - } else { -+ id := wr.StreamID() - n = ws.nodes[id] - if n == nil { - // id is an idle or closed stream. wr should not be a HEADERS or -- // DATA frame. However, wr can be a RST_STREAM. In this case, we -- // push wr onto the root, rather than creating a new priorityNode, -- // since RST_STREAM is tiny and the stream's priority is unknown -- // anyway. See issue #17919. -+ // DATA frame. In other case, we push wr onto the root, rather -+ // than creating a new priorityNode. - if wr.DataSize() > 0 { - panic("add DATA on non-open stream") - } -diff --git a/vendor/golang.org/x/net/http2/writesched_random.go b/vendor/golang.org/x/net/http2/writesched_random.go -index 9a7b9e5..f2e55e0 100644 ---- a/vendor/golang.org/x/net/http2/writesched_random.go -+++ b/vendor/golang.org/x/net/http2/writesched_random.go -@@ -45,11 +45,11 @@ func (ws *randomWriteScheduler) AdjustStream(streamID uint32, priority PriorityP - } - - func (ws *randomWriteScheduler) Push(wr FrameWriteRequest) { -- id := wr.StreamID() -- if id == 0 { -+ if wr.isControl() { - ws.zero.push(wr) - return - } -+ id := wr.StreamID() - q, ok := ws.sq[id] - if !ok { - q = ws.queuePool.get() -@@ -59,7 +59,7 @@ func (ws *randomWriteScheduler) Push(wr FrameWriteRequest) { - } - - func (ws *randomWriteScheduler) Pop() (FrameWriteRequest, bool) { -- // Control frames first. -+ // Control and RST_STREAM frames first. - if !ws.zero.empty() { - return ws.zero.shift(), true - } -diff --git a/vendor/golang.org/x/net/idna/go118.go b/vendor/golang.org/x/net/idna/go118.go -new file mode 100644 -index 0000000..c5c4338 ---- /dev/null -+++ b/vendor/golang.org/x/net/idna/go118.go -@@ -0,0 +1,14 @@ -+// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. -+ -+// Copyright 2021 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build go1.18 -+// +build go1.18 -+ -+package idna -+ -+// Transitional processing is disabled by default in Go 1.18. -+// https://golang.org/issue/47510 -+const transitionalLookup = false -diff --git a/vendor/golang.org/x/net/idna/idna10.0.0.go b/vendor/golang.org/x/net/idna/idna10.0.0.go -index a98a31f..64ccf85 100644 ---- a/vendor/golang.org/x/net/idna/idna10.0.0.go -+++ b/vendor/golang.org/x/net/idna/idna10.0.0.go -@@ -4,6 +4,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build go1.10 - // +build go1.10 - - // Package idna implements IDNA2008 using the compatibility processing -@@ -58,23 +59,22 @@ type Option func(*options) - // Transitional sets a Profile to use the Transitional mapping as defined in UTS - // #46. This will cause, for example, "ß" to be mapped to "ss". Using the - // transitional mapping provides a compromise between IDNA2003 and IDNA2008 --// compatibility. It is used by most browsers when resolving domain names. This -+// compatibility. It is used by some browsers when resolving domain names. This - // option is only meaningful if combined with MapForLookup. - func Transitional(transitional bool) Option { -- return func(o *options) { o.transitional = true } -+ return func(o *options) { o.transitional = transitional } - } - - // VerifyDNSLength sets whether a Profile should fail if any of the IDN parts - // are longer than allowed by the RFC. -+// -+// This option corresponds to the VerifyDnsLength flag in UTS #46. - func VerifyDNSLength(verify bool) Option { - return func(o *options) { o.verifyDNSLength = verify } - } - - // RemoveLeadingDots removes leading label separators. Leading runes that map to - // dots, such as U+3002 IDEOGRAPHIC FULL STOP, are removed as well. --// --// This is the behavior suggested by the UTS #46 and is adopted by some --// browsers. - func RemoveLeadingDots(remove bool) Option { - return func(o *options) { o.removeLeadingDots = remove } - } -@@ -82,6 +82,8 @@ func RemoveLeadingDots(remove bool) Option { - // ValidateLabels sets whether to check the mandatory label validation criteria - // as defined in Section 5.4 of RFC 5891. This includes testing for correct use - // of hyphens ('-'), normalization, validity of runes, and the context rules. -+// In particular, ValidateLabels also sets the CheckHyphens and CheckJoiners flags -+// in UTS #46. - func ValidateLabels(enable bool) Option { - return func(o *options) { - // Don't override existing mappings, but set one that at least checks -@@ -90,25 +92,48 @@ func ValidateLabels(enable bool) Option { - o.mapping = normalize - } - o.trie = trie -- o.validateLabels = enable -- o.fromPuny = validateFromPunycode -+ o.checkJoiners = enable -+ o.checkHyphens = enable -+ if enable { -+ o.fromPuny = validateFromPunycode -+ } else { -+ o.fromPuny = nil -+ } -+ } -+} -+ -+// CheckHyphens sets whether to check for correct use of hyphens ('-') in -+// labels. Most web browsers do not have this option set, since labels such as -+// "r3---sn-apo3qvuoxuxbt-j5pe" are in common use. -+// -+// This option corresponds to the CheckHyphens flag in UTS #46. -+func CheckHyphens(enable bool) Option { -+ return func(o *options) { o.checkHyphens = enable } -+} -+ -+// CheckJoiners sets whether to check the ContextJ rules as defined in Appendix -+// A of RFC 5892, concerning the use of joiner runes. -+// -+// This option corresponds to the CheckJoiners flag in UTS #46. -+func CheckJoiners(enable bool) Option { -+ return func(o *options) { -+ o.trie = trie -+ o.checkJoiners = enable - } - } - - // StrictDomainName limits the set of permissible ASCII characters to those - // allowed in domain names as defined in RFC 1034 (A-Z, a-z, 0-9 and the --// hyphen). This is set by default for MapForLookup and ValidateForRegistration. -+// hyphen). This is set by default for MapForLookup and ValidateForRegistration, -+// but is only useful if ValidateLabels is set. - // - // This option is useful, for instance, for browsers that allow characters - // outside this range, for example a '_' (U+005F LOW LINE). See --// http://www.rfc-editor.org/std/std3.txt for more details This option --// corresponds to the UseSTD3ASCIIRules option in UTS #46. -+// http://www.rfc-editor.org/std/std3.txt for more details. -+// -+// This option corresponds to the UseSTD3ASCIIRules flag in UTS #46. - func StrictDomainName(use bool) Option { -- return func(o *options) { -- o.trie = trie -- o.useSTD3Rules = use -- o.fromPuny = validateFromPunycode -- } -+ return func(o *options) { o.useSTD3Rules = use } - } - - // NOTE: the following options pull in tables. The tables should not be linked -@@ -116,6 +141,8 @@ func StrictDomainName(use bool) Option { - - // BidiRule enables the Bidi rule as defined in RFC 5893. Any application - // that relies on proper validation of labels should include this rule. -+// -+// This option corresponds to the CheckBidi flag in UTS #46. - func BidiRule() Option { - return func(o *options) { o.bidirule = bidirule.ValidString } - } -@@ -151,7 +178,8 @@ func MapForLookup() Option { - type options struct { - transitional bool - useSTD3Rules bool -- validateLabels bool -+ checkHyphens bool -+ checkJoiners bool - verifyDNSLength bool - removeLeadingDots bool - -@@ -224,8 +252,11 @@ func (p *Profile) String() string { - if p.useSTD3Rules { - s += ":UseSTD3Rules" - } -- if p.validateLabels { -- s += ":ValidateLabels" -+ if p.checkHyphens { -+ s += ":CheckHyphens" -+ } -+ if p.checkJoiners { -+ s += ":CheckJoiners" - } - if p.verifyDNSLength { - s += ":VerifyDNSLength" -@@ -253,26 +284,29 @@ var ( - - punycode = &Profile{} - lookup = &Profile{options{ -- transitional: true, -- useSTD3Rules: true, -- validateLabels: true, -- trie: trie, -- fromPuny: validateFromPunycode, -- mapping: validateAndMap, -- bidirule: bidirule.ValidString, -+ transitional: transitionalLookup, -+ useSTD3Rules: true, -+ checkHyphens: true, -+ checkJoiners: true, -+ trie: trie, -+ fromPuny: validateFromPunycode, -+ mapping: validateAndMap, -+ bidirule: bidirule.ValidString, - }} - display = &Profile{options{ -- useSTD3Rules: true, -- validateLabels: true, -- trie: trie, -- fromPuny: validateFromPunycode, -- mapping: validateAndMap, -- bidirule: bidirule.ValidString, -+ useSTD3Rules: true, -+ checkHyphens: true, -+ checkJoiners: true, -+ trie: trie, -+ fromPuny: validateFromPunycode, -+ mapping: validateAndMap, -+ bidirule: bidirule.ValidString, - }} - registration = &Profile{options{ - useSTD3Rules: true, -- validateLabels: true, - verifyDNSLength: true, -+ checkHyphens: true, -+ checkJoiners: true, - trie: trie, - fromPuny: validateFromPunycode, - mapping: validateRegistration, -@@ -339,7 +373,7 @@ func (p *Profile) process(s string, toASCII bool) (string, error) { - } - isBidi = isBidi || bidirule.DirectionString(u) != bidi.LeftToRight - labels.set(u) -- if err == nil && p.validateLabels { -+ if err == nil && p.fromPuny != nil { - err = p.fromPuny(p, u) - } - if err == nil { -@@ -680,16 +714,18 @@ func (p *Profile) validateLabel(s string) (err error) { - } - return nil - } -- if !p.validateLabels { -- return nil -- } -- trie := p.trie // p.validateLabels is only set if trie is set. -- if len(s) > 4 && s[2] == '-' && s[3] == '-' { -- return &labelError{s, "V2"} -+ if p.checkHyphens { -+ if len(s) > 4 && s[2] == '-' && s[3] == '-' { -+ return &labelError{s, "V2"} -+ } -+ if s[0] == '-' || s[len(s)-1] == '-' { -+ return &labelError{s, "V3"} -+ } - } -- if s[0] == '-' || s[len(s)-1] == '-' { -- return &labelError{s, "V3"} -+ if !p.checkJoiners { -+ return nil - } -+ trie := p.trie // p.checkJoiners is only set if trie is set. - // TODO: merge the use of this in the trie. - v, sz := trie.lookupString(s) - x := info(v) -diff --git a/vendor/golang.org/x/net/idna/idna9.0.0.go b/vendor/golang.org/x/net/idna/idna9.0.0.go -index 8842146..aae6aac 100644 ---- a/vendor/golang.org/x/net/idna/idna9.0.0.go -+++ b/vendor/golang.org/x/net/idna/idna9.0.0.go -@@ -4,6 +4,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build !go1.10 - // +build !go1.10 - - // Package idna implements IDNA2008 using the compatibility processing -@@ -57,23 +58,22 @@ type Option func(*options) - // Transitional sets a Profile to use the Transitional mapping as defined in UTS - // #46. This will cause, for example, "ß" to be mapped to "ss". Using the - // transitional mapping provides a compromise between IDNA2003 and IDNA2008 --// compatibility. It is used by most browsers when resolving domain names. This -+// compatibility. It is used by some browsers when resolving domain names. This - // option is only meaningful if combined with MapForLookup. - func Transitional(transitional bool) Option { -- return func(o *options) { o.transitional = true } -+ return func(o *options) { o.transitional = transitional } - } - - // VerifyDNSLength sets whether a Profile should fail if any of the IDN parts - // are longer than allowed by the RFC. -+// -+// This option corresponds to the VerifyDnsLength flag in UTS #46. - func VerifyDNSLength(verify bool) Option { - return func(o *options) { o.verifyDNSLength = verify } - } - - // RemoveLeadingDots removes leading label separators. Leading runes that map to - // dots, such as U+3002 IDEOGRAPHIC FULL STOP, are removed as well. --// --// This is the behavior suggested by the UTS #46 and is adopted by some --// browsers. - func RemoveLeadingDots(remove bool) Option { - return func(o *options) { o.removeLeadingDots = remove } - } -@@ -81,6 +81,8 @@ func RemoveLeadingDots(remove bool) Option { - // ValidateLabels sets whether to check the mandatory label validation criteria - // as defined in Section 5.4 of RFC 5891. This includes testing for correct use - // of hyphens ('-'), normalization, validity of runes, and the context rules. -+// In particular, ValidateLabels also sets the CheckHyphens and CheckJoiners flags -+// in UTS #46. - func ValidateLabels(enable bool) Option { - return func(o *options) { - // Don't override existing mappings, but set one that at least checks -@@ -89,25 +91,48 @@ func ValidateLabels(enable bool) Option { - o.mapping = normalize - } - o.trie = trie -- o.validateLabels = enable -- o.fromPuny = validateFromPunycode -+ o.checkJoiners = enable -+ o.checkHyphens = enable -+ if enable { -+ o.fromPuny = validateFromPunycode -+ } else { -+ o.fromPuny = nil -+ } -+ } -+} -+ -+// CheckHyphens sets whether to check for correct use of hyphens ('-') in -+// labels. Most web browsers do not have this option set, since labels such as -+// "r3---sn-apo3qvuoxuxbt-j5pe" are in common use. -+// -+// This option corresponds to the CheckHyphens flag in UTS #46. -+func CheckHyphens(enable bool) Option { -+ return func(o *options) { o.checkHyphens = enable } -+} -+ -+// CheckJoiners sets whether to check the ContextJ rules as defined in Appendix -+// A of RFC 5892, concerning the use of joiner runes. -+// -+// This option corresponds to the CheckJoiners flag in UTS #46. -+func CheckJoiners(enable bool) Option { -+ return func(o *options) { -+ o.trie = trie -+ o.checkJoiners = enable - } - } - - // StrictDomainName limits the set of permissable ASCII characters to those - // allowed in domain names as defined in RFC 1034 (A-Z, a-z, 0-9 and the --// hyphen). This is set by default for MapForLookup and ValidateForRegistration. -+// hyphen). This is set by default for MapForLookup and ValidateForRegistration, -+// but is only useful if ValidateLabels is set. - // - // This option is useful, for instance, for browsers that allow characters - // outside this range, for example a '_' (U+005F LOW LINE). See --// http://www.rfc-editor.org/std/std3.txt for more details This option --// corresponds to the UseSTD3ASCIIRules option in UTS #46. -+// http://www.rfc-editor.org/std/std3.txt for more details. -+// -+// This option corresponds to the UseSTD3ASCIIRules flag in UTS #46. - func StrictDomainName(use bool) Option { -- return func(o *options) { -- o.trie = trie -- o.useSTD3Rules = use -- o.fromPuny = validateFromPunycode -- } -+ return func(o *options) { o.useSTD3Rules = use } - } - - // NOTE: the following options pull in tables. The tables should not be linked -@@ -115,6 +140,8 @@ func StrictDomainName(use bool) Option { - - // BidiRule enables the Bidi rule as defined in RFC 5893. Any application - // that relies on proper validation of labels should include this rule. -+// -+// This option corresponds to the CheckBidi flag in UTS #46. - func BidiRule() Option { - return func(o *options) { o.bidirule = bidirule.ValidString } - } -@@ -151,7 +178,8 @@ func MapForLookup() Option { - type options struct { - transitional bool - useSTD3Rules bool -- validateLabels bool -+ checkHyphens bool -+ checkJoiners bool - verifyDNSLength bool - removeLeadingDots bool - -@@ -224,8 +252,11 @@ func (p *Profile) String() string { - if p.useSTD3Rules { - s += ":UseSTD3Rules" - } -- if p.validateLabels { -- s += ":ValidateLabels" -+ if p.checkHyphens { -+ s += ":CheckHyphens" -+ } -+ if p.checkJoiners { -+ s += ":CheckJoiners" - } - if p.verifyDNSLength { - s += ":VerifyDNSLength" -@@ -254,9 +285,10 @@ var ( - punycode = &Profile{} - lookup = &Profile{options{ - transitional: true, -- useSTD3Rules: true, -- validateLabels: true, - removeLeadingDots: true, -+ useSTD3Rules: true, -+ checkHyphens: true, -+ checkJoiners: true, - trie: trie, - fromPuny: validateFromPunycode, - mapping: validateAndMap, -@@ -264,8 +296,9 @@ var ( - }} - display = &Profile{options{ - useSTD3Rules: true, -- validateLabels: true, - removeLeadingDots: true, -+ checkHyphens: true, -+ checkJoiners: true, - trie: trie, - fromPuny: validateFromPunycode, - mapping: validateAndMap, -@@ -273,8 +306,9 @@ var ( - }} - registration = &Profile{options{ - useSTD3Rules: true, -- validateLabels: true, - verifyDNSLength: true, -+ checkHyphens: true, -+ checkJoiners: true, - trie: trie, - fromPuny: validateFromPunycode, - mapping: validateRegistration, -@@ -338,7 +372,7 @@ func (p *Profile) process(s string, toASCII bool) (string, error) { - continue - } - labels.set(u) -- if err == nil && p.validateLabels { -+ if err == nil && p.fromPuny != nil { - err = p.fromPuny(p, u) - } - if err == nil { -@@ -628,16 +662,18 @@ func (p *Profile) validateLabel(s string) error { - if p.bidirule != nil && !p.bidirule(s) { - return &labelError{s, "B"} - } -- if !p.validateLabels { -- return nil -- } -- trie := p.trie // p.validateLabels is only set if trie is set. -- if len(s) > 4 && s[2] == '-' && s[3] == '-' { -- return &labelError{s, "V2"} -+ if p.checkHyphens { -+ if len(s) > 4 && s[2] == '-' && s[3] == '-' { -+ return &labelError{s, "V2"} -+ } -+ if s[0] == '-' || s[len(s)-1] == '-' { -+ return &labelError{s, "V3"} -+ } - } -- if s[0] == '-' || s[len(s)-1] == '-' { -- return &labelError{s, "V3"} -+ if !p.checkJoiners { -+ return nil - } -+ trie := p.trie // p.checkJoiners is only set if trie is set. - // TODO: merge the use of this in the trie. - v, sz := trie.lookupString(s) - x := info(v) -diff --git a/vendor/golang.org/x/net/idna/pre_go118.go b/vendor/golang.org/x/net/idna/pre_go118.go -new file mode 100644 -index 0000000..3aaccab ---- /dev/null -+++ b/vendor/golang.org/x/net/idna/pre_go118.go -@@ -0,0 +1,12 @@ -+// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. -+ -+// Copyright 2021 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build !go1.18 -+// +build !go1.18 -+ -+package idna -+ -+const transitionalLookup = true -diff --git a/vendor/golang.org/x/net/idna/punycode.go b/vendor/golang.org/x/net/idna/punycode.go -index 02c7d59..e8e3ac1 100644 ---- a/vendor/golang.org/x/net/idna/punycode.go -+++ b/vendor/golang.org/x/net/idna/punycode.go -@@ -49,6 +49,7 @@ func decode(encoded string) (string, error) { - } - } - i, n, bias := int32(0), initialN, initialBias -+ overflow := false - for pos < len(encoded) { - oldI, w := i, int32(1) - for k := base; ; k += base { -@@ -60,29 +61,32 @@ func decode(encoded string) (string, error) { - return "", punyError(encoded) - } - pos++ -- i += digit * w -- if i < 0 { -+ i, overflow = madd(i, digit, w) -+ if overflow { - return "", punyError(encoded) - } - t := k - bias -- if t < tmin { -+ if k <= bias { - t = tmin -- } else if t > tmax { -+ } else if k >= bias+tmax { - t = tmax - } - if digit < t { - break - } -- w *= base - t -- if w >= math.MaxInt32/base { -+ w, overflow = madd(0, w, base-t) -+ if overflow { - return "", punyError(encoded) - } - } -+ if len(output) >= 1024 { -+ return "", punyError(encoded) -+ } - x := int32(len(output) + 1) - bias = adapt(i-oldI, x, oldI == 0) - n += i / x - i %= x -- if n > utf8.MaxRune || len(output) >= 1024 { -+ if n < 0 || n > utf8.MaxRune { - return "", punyError(encoded) - } - output = append(output, 0) -@@ -115,6 +119,7 @@ func encode(prefix, s string) (string, error) { - if b > 0 { - output = append(output, '-') - } -+ overflow := false - for remaining != 0 { - m := int32(0x7fffffff) - for _, r := range s { -@@ -122,8 +127,8 @@ func encode(prefix, s string) (string, error) { - m = r - } - } -- delta += (m - n) * (h + 1) -- if delta < 0 { -+ delta, overflow = madd(delta, m-n, h+1) -+ if overflow { - return "", punyError(s) - } - n = m -@@ -141,9 +146,9 @@ func encode(prefix, s string) (string, error) { - q := delta - for k := base; ; k += base { - t := k - bias -- if t < tmin { -+ if k <= bias { - t = tmin -- } else if t > tmax { -+ } else if k >= bias+tmax { - t = tmax - } - if q < t { -@@ -164,6 +169,15 @@ func encode(prefix, s string) (string, error) { - return string(output), nil - } - -+// madd computes a + (b * c), detecting overflow. -+func madd(a, b, c int32) (next int32, overflow bool) { -+ p := int64(b) * int64(c) -+ if p > math.MaxInt32-int64(a) { -+ return 0, true -+ } -+ return a + int32(p), false -+} -+ - func decodeDigit(x byte) (digit int32, ok bool) { - switch { - case '0' <= x && x <= '9': -diff --git a/vendor/golang.org/x/net/idna/tables10.0.0.go b/vendor/golang.org/x/net/idna/tables10.0.0.go -index 54fddb4..d1d62ef 100644 ---- a/vendor/golang.org/x/net/idna/tables10.0.0.go -+++ b/vendor/golang.org/x/net/idna/tables10.0.0.go -@@ -1,5 +1,6 @@ - // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. - -+//go:build go1.10 && !go1.13 - // +build go1.10,!go1.13 - - package idna -diff --git a/vendor/golang.org/x/net/idna/tables11.0.0.go b/vendor/golang.org/x/net/idna/tables11.0.0.go -index 8ce0811..167efba 100644 ---- a/vendor/golang.org/x/net/idna/tables11.0.0.go -+++ b/vendor/golang.org/x/net/idna/tables11.0.0.go -@@ -1,5 +1,6 @@ - // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. - -+//go:build go1.13 && !go1.14 - // +build go1.13,!go1.14 - - package idna -diff --git a/vendor/golang.org/x/net/idna/tables12.00.go b/vendor/golang.org/x/net/idna/tables12.0.0.go -similarity index 99% -rename from vendor/golang.org/x/net/idna/tables12.00.go -rename to vendor/golang.org/x/net/idna/tables12.0.0.go -index f4b8ea3..ab40f7b 100644 ---- a/vendor/golang.org/x/net/idna/tables12.00.go -+++ b/vendor/golang.org/x/net/idna/tables12.0.0.go -@@ -1,6 +1,7 @@ - // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. - --// +build go1.14 -+//go:build go1.14 && !go1.16 -+// +build go1.14,!go1.16 - - package idna - -diff --git a/vendor/golang.org/x/net/idna/tables13.0.0.go b/vendor/golang.org/x/net/idna/tables13.0.0.go -new file mode 100644 -index 0000000..390c5e5 ---- /dev/null -+++ b/vendor/golang.org/x/net/idna/tables13.0.0.go -@@ -0,0 +1,4840 @@ -+// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. -+ -+//go:build go1.16 -+// +build go1.16 -+ -+package idna -+ -+// UnicodeVersion is the Unicode version from which the tables in this package are derived. -+const UnicodeVersion = "13.0.0" -+ -+var mappings string = "" + // Size: 8188 bytes -+ "\x00\x01 \x03 ̈\x01a\x03 ̄\x012\x013\x03 ́\x03 ̧\x011\x01o\x051⁄4\x051⁄2" + -+ "\x053⁄4\x03i̇\x03l·\x03ʼn\x01s\x03dž\x03ⱥ\x03ⱦ\x01h\x01j\x01r\x01w\x01y" + -+ "\x03 ̆\x03 ̇\x03 ̊\x03 ̨\x03 ̃\x03 ̋\x01l\x01x\x04̈́\x03 ι\x01;\x05 ̈́" + -+ "\x04եւ\x04اٴ\x04وٴ\x04ۇٴ\x04يٴ\x06क़\x06ख़\x06ग़\x06ज़\x06ड़\x06ढ़\x06फ़" + -+ "\x06य़\x06ড়\x06ঢ়\x06য়\x06ਲ਼\x06ਸ਼\x06ਖ਼\x06ਗ਼\x06ਜ਼\x06ਫ਼\x06ଡ଼\x06ଢ଼" + -+ "\x06ํา\x06ໍາ\x06ຫນ\x06ຫມ\x06གྷ\x06ཌྷ\x06དྷ\x06བྷ\x06ཛྷ\x06ཀྵ\x06ཱི\x06ཱུ" + -+ "\x06ྲྀ\x09ྲཱྀ\x06ླྀ\x09ླཱྀ\x06ཱྀ\x06ྒྷ\x06ྜྷ\x06ྡྷ\x06ྦྷ\x06ྫྷ\x06ྐྵ\x02" + -+ "в\x02д\x02о\x02с\x02т\x02ъ\x02ѣ\x02æ\x01b\x01d\x01e\x02ǝ\x01g\x01i\x01k" + -+ "\x01m\x01n\x02ȣ\x01p\x01t\x01u\x02ɐ\x02ɑ\x02ə\x02ɛ\x02ɜ\x02ŋ\x02ɔ\x02ɯ" + -+ "\x01v\x02β\x02γ\x02δ\x02φ\x02χ\x02ρ\x02н\x02ɒ\x01c\x02ɕ\x02ð\x01f\x02ɟ" + -+ "\x02ɡ\x02ɥ\x02ɨ\x02ɩ\x02ɪ\x02ʝ\x02ɭ\x02ʟ\x02ɱ\x02ɰ\x02ɲ\x02ɳ\x02ɴ\x02ɵ" + -+ "\x02ɸ\x02ʂ\x02ʃ\x02ƫ\x02ʉ\x02ʊ\x02ʋ\x02ʌ\x01z\x02ʐ\x02ʑ\x02ʒ\x02θ\x02ss" + -+ "\x02ά\x02έ\x02ή\x02ί\x02ό\x02ύ\x02ώ\x05ἀι\x05ἁι\x05ἂι\x05ἃι\x05ἄι\x05ἅι" + -+ "\x05ἆι\x05ἇι\x05ἠι\x05ἡι\x05ἢι\x05ἣι\x05ἤι\x05ἥι\x05ἦι\x05ἧι\x05ὠι\x05ὡι" + -+ "\x05ὢι\x05ὣι\x05ὤι\x05ὥι\x05ὦι\x05ὧι\x05ὰι\x04αι\x04άι\x05ᾶι\x02ι\x05 ̈͂" + -+ "\x05ὴι\x04ηι\x04ήι\x05ῆι\x05 ̓̀\x05 ̓́\x05 ̓͂\x02ΐ\x05 ̔̀\x05 ̔́\x05 ̔͂" + -+ "\x02ΰ\x05 ̈̀\x01`\x05ὼι\x04ωι\x04ώι\x05ῶι\x06′′\x09′′′\x06‵‵\x09‵‵‵\x02!" + -+ "!\x02??\x02?!\x02!?\x0c′′′′\x010\x014\x015\x016\x017\x018\x019\x01+\x01=" + -+ "\x01(\x01)\x02rs\x02ħ\x02no\x01q\x02sm\x02tm\x02ω\x02å\x02א\x02ב\x02ג" + -+ "\x02ד\x02π\x051⁄7\x051⁄9\x061⁄10\x051⁄3\x052⁄3\x051⁄5\x052⁄5\x053⁄5\x054" + -+ "⁄5\x051⁄6\x055⁄6\x051⁄8\x053⁄8\x055⁄8\x057⁄8\x041⁄\x02ii\x02iv\x02vi" + -+ "\x04viii\x02ix\x02xi\x050⁄3\x06∫∫\x09∫∫∫\x06∮∮\x09∮∮∮\x0210\x0211\x0212" + -+ "\x0213\x0214\x0215\x0216\x0217\x0218\x0219\x0220\x04(10)\x04(11)\x04(12)" + -+ "\x04(13)\x04(14)\x04(15)\x04(16)\x04(17)\x04(18)\x04(19)\x04(20)\x0c∫∫∫∫" + -+ "\x02==\x05⫝̸\x02ɫ\x02ɽ\x02ȿ\x02ɀ\x01.\x04 ゙\x04 ゚\x06より\x06コト\x05(ᄀ)\x05" + -+ "(ᄂ)\x05(ᄃ)\x05(ᄅ)\x05(ᄆ)\x05(ᄇ)\x05(ᄉ)\x05(ᄋ)\x05(ᄌ)\x05(ᄎ)\x05(ᄏ)\x05(ᄐ" + -+ ")\x05(ᄑ)\x05(ᄒ)\x05(가)\x05(나)\x05(다)\x05(라)\x05(마)\x05(바)\x05(사)\x05(아)" + -+ "\x05(자)\x05(차)\x05(카)\x05(타)\x05(파)\x05(하)\x05(주)\x08(오전)\x08(오후)\x05(一)" + -+ "\x05(二)\x05(三)\x05(四)\x05(五)\x05(六)\x05(七)\x05(八)\x05(九)\x05(十)\x05(月)" + -+ "\x05(火)\x05(水)\x05(木)\x05(金)\x05(土)\x05(日)\x05(株)\x05(有)\x05(社)\x05(名)" + -+ "\x05(特)\x05(財)\x05(祝)\x05(労)\x05(代)\x05(呼)\x05(学)\x05(監)\x05(企)\x05(資)" + -+ "\x05(協)\x05(祭)\x05(休)\x05(自)\x05(至)\x0221\x0222\x0223\x0224\x0225\x0226" + -+ "\x0227\x0228\x0229\x0230\x0231\x0232\x0233\x0234\x0235\x06참고\x06주의\x0236" + -+ "\x0237\x0238\x0239\x0240\x0241\x0242\x0243\x0244\x0245\x0246\x0247\x0248" + -+ "\x0249\x0250\x041月\x042月\x043月\x044月\x045月\x046月\x047月\x048月\x049月\x0510" + -+ "月\x0511月\x0512月\x02hg\x02ev\x06令和\x0cアパート\x0cアルファ\x0cアンペア\x09アール\x0cイニ" + -+ "ング\x09インチ\x09ウォン\x0fエスクード\x0cエーカー\x09オンス\x09オーム\x09カイリ\x0cカラット\x0cカロリー" + -+ "\x09ガロン\x09ガンマ\x06ギガ\x09ギニー\x0cキュリー\x0cギルダー\x06キロ\x0fキログラム\x12キロメートル\x0f" + -+ "キロワット\x09グラム\x0fグラムトン\x0fクルゼイロ\x0cクローネ\x09ケース\x09コルナ\x09コーポ\x0cサイクル" + -+ "\x0fサンチーム\x0cシリング\x09センチ\x09セント\x09ダース\x06デシ\x06ドル\x06トン\x06ナノ\x09ノット" + -+ "\x09ハイツ\x0fパーセント\x09パーツ\x0cバーレル\x0fピアストル\x09ピクル\x06ピコ\x06ビル\x0fファラッド\x0c" + -+ "フィート\x0fブッシェル\x09フラン\x0fヘクタール\x06ペソ\x09ペニヒ\x09ヘルツ\x09ペンス\x09ページ\x09ベータ" + -+ "\x0cポイント\x09ボルト\x06ホン\x09ポンド\x09ホール\x09ホーン\x0cマイクロ\x09マイル\x09マッハ\x09マルク" + -+ "\x0fマンション\x0cミクロン\x06ミリ\x0fミリバール\x06メガ\x0cメガトン\x0cメートル\x09ヤード\x09ヤール\x09" + -+ "ユアン\x0cリットル\x06リラ\x09ルピー\x0cルーブル\x06レム\x0fレントゲン\x09ワット\x040点\x041点\x04" + -+ "2点\x043点\x044点\x045点\x046点\x047点\x048点\x049点\x0510点\x0511点\x0512点\x0513点" + -+ "\x0514点\x0515点\x0516点\x0517点\x0518点\x0519点\x0520点\x0521点\x0522点\x0523点" + -+ "\x0524点\x02da\x02au\x02ov\x02pc\x02dm\x02iu\x06平成\x06昭和\x06大正\x06明治\x0c株" + -+ "式会社\x02pa\x02na\x02ma\x02ka\x02kb\x02mb\x02gb\x04kcal\x02pf\x02nf\x02m" + -+ "g\x02kg\x02hz\x02ml\x02dl\x02kl\x02fm\x02nm\x02mm\x02cm\x02km\x02m2\x02m" + -+ "3\x05m∕s\x06m∕s2\x07rad∕s\x08rad∕s2\x02ps\x02ns\x02ms\x02pv\x02nv\x02mv" + -+ "\x02kv\x02pw\x02nw\x02mw\x02kw\x02bq\x02cc\x02cd\x06c∕kg\x02db\x02gy\x02" + -+ "ha\x02hp\x02in\x02kk\x02kt\x02lm\x02ln\x02lx\x02ph\x02pr\x02sr\x02sv\x02" + -+ "wb\x05v∕m\x05a∕m\x041日\x042日\x043日\x044日\x045日\x046日\x047日\x048日\x049日" + -+ "\x0510日\x0511日\x0512日\x0513日\x0514日\x0515日\x0516日\x0517日\x0518日\x0519日" + -+ "\x0520日\x0521日\x0522日\x0523日\x0524日\x0525日\x0526日\x0527日\x0528日\x0529日" + -+ "\x0530日\x0531日\x02ь\x02ɦ\x02ɬ\x02ʞ\x02ʇ\x02œ\x02ʍ\x04𤋮\x04𢡊\x04𢡄\x04𣏕" + -+ "\x04𥉉\x04𥳐\x04𧻓\x02ff\x02fi\x02fl\x02st\x04մն\x04մե\x04մի\x04վն\x04մխ" + -+ "\x04יִ\x04ײַ\x02ע\x02ה\x02כ\x02ל\x02ם\x02ר\x02ת\x04שׁ\x04שׂ\x06שּׁ\x06שּ" + -+ "ׂ\x04אַ\x04אָ\x04אּ\x04בּ\x04גּ\x04דּ\x04הּ\x04וּ\x04זּ\x04טּ\x04יּ\x04" + -+ "ךּ\x04כּ\x04לּ\x04מּ\x04נּ\x04סּ\x04ףּ\x04פּ\x04צּ\x04קּ\x04רּ\x04שּ" + -+ "\x04תּ\x04וֹ\x04בֿ\x04כֿ\x04פֿ\x04אל\x02ٱ\x02ٻ\x02پ\x02ڀ\x02ٺ\x02ٿ\x02ٹ" + -+ "\x02ڤ\x02ڦ\x02ڄ\x02ڃ\x02چ\x02ڇ\x02ڍ\x02ڌ\x02ڎ\x02ڈ\x02ژ\x02ڑ\x02ک\x02گ" + -+ "\x02ڳ\x02ڱ\x02ں\x02ڻ\x02ۀ\x02ہ\x02ھ\x02ے\x02ۓ\x02ڭ\x02ۇ\x02ۆ\x02ۈ\x02ۋ" + -+ "\x02ۅ\x02ۉ\x02ې\x02ى\x04ئا\x04ئە\x04ئو\x04ئۇ\x04ئۆ\x04ئۈ\x04ئې\x04ئى\x02" + -+ "ی\x04ئج\x04ئح\x04ئم\x04ئي\x04بج\x04بح\x04بخ\x04بم\x04بى\x04بي\x04تج\x04" + -+ "تح\x04تخ\x04تم\x04تى\x04تي\x04ثج\x04ثم\x04ثى\x04ثي\x04جح\x04جم\x04حج" + -+ "\x04حم\x04خج\x04خح\x04خم\x04سج\x04سح\x04سخ\x04سم\x04صح\x04صم\x04ضج\x04ضح" + -+ "\x04ضخ\x04ضم\x04طح\x04طم\x04ظم\x04عج\x04عم\x04غج\x04غم\x04فج\x04فح\x04فخ" + -+ "\x04فم\x04فى\x04في\x04قح\x04قم\x04قى\x04قي\x04كا\x04كج\x04كح\x04كخ\x04كل" + -+ "\x04كم\x04كى\x04كي\x04لج\x04لح\x04لخ\x04لم\x04لى\x04لي\x04مج\x04مح\x04مخ" + -+ "\x04مم\x04مى\x04مي\x04نج\x04نح\x04نخ\x04نم\x04نى\x04ني\x04هج\x04هم\x04هى" + -+ "\x04هي\x04يج\x04يح\x04يخ\x04يم\x04يى\x04يي\x04ذٰ\x04رٰ\x04ىٰ\x05 ٌّ\x05 " + -+ "ٍّ\x05 َّ\x05 ُّ\x05 ِّ\x05 ّٰ\x04ئر\x04ئز\x04ئن\x04بر\x04بز\x04بن\x04ت" + -+ "ر\x04تز\x04تن\x04ثر\x04ثز\x04ثن\x04ما\x04نر\x04نز\x04نن\x04ير\x04يز\x04" + -+ "ين\x04ئخ\x04ئه\x04به\x04ته\x04صخ\x04له\x04نه\x04هٰ\x04يه\x04ثه\x04سه" + -+ "\x04شم\x04شه\x06ـَّ\x06ـُّ\x06ـِّ\x04طى\x04طي\x04عى\x04عي\x04غى\x04غي" + -+ "\x04سى\x04سي\x04شى\x04شي\x04حى\x04حي\x04جى\x04جي\x04خى\x04خي\x04صى\x04صي" + -+ "\x04ضى\x04ضي\x04شج\x04شح\x04شخ\x04شر\x04سر\x04صر\x04ضر\x04اً\x06تجم\x06ت" + -+ "حج\x06تحم\x06تخم\x06تمج\x06تمح\x06تمخ\x06جمح\x06حمي\x06حمى\x06سحج\x06سج" + -+ "ح\x06سجى\x06سمح\x06سمج\x06سمم\x06صحح\x06صمم\x06شحم\x06شجي\x06شمخ\x06شمم" + -+ "\x06ضحى\x06ضخم\x06طمح\x06طمم\x06طمي\x06عجم\x06عمم\x06عمى\x06غمم\x06غمي" + -+ "\x06غمى\x06فخم\x06قمح\x06قمم\x06لحم\x06لحي\x06لحى\x06لجج\x06لخم\x06لمح" + -+ "\x06محج\x06محم\x06محي\x06مجح\x06مجم\x06مخج\x06مخم\x06مجخ\x06همج\x06همم" + -+ "\x06نحم\x06نحى\x06نجم\x06نجى\x06نمي\x06نمى\x06يمم\x06بخي\x06تجي\x06تجى" + -+ "\x06تخي\x06تخى\x06تمي\x06تمى\x06جمي\x06جحى\x06جمى\x06سخى\x06صحي\x06شحي" + -+ "\x06ضحي\x06لجي\x06لمي\x06يحي\x06يجي\x06يمي\x06ممي\x06قمي\x06نحي\x06عمي" + -+ "\x06كمي\x06نجح\x06مخي\x06لجم\x06كمم\x06جحي\x06حجي\x06مجي\x06فمي\x06بحي" + -+ "\x06سخي\x06نجي\x06صلے\x06قلے\x08الله\x08اكبر\x08محمد\x08صلعم\x08رسول\x08" + -+ "عليه\x08وسلم\x06صلى!صلى الله عليه وسلم\x0fجل جلاله\x08ریال\x01,\x01:" + -+ "\x01!\x01?\x01_\x01{\x01}\x01[\x01]\x01#\x01&\x01*\x01-\x01<\x01>\x01\\" + -+ "\x01$\x01%\x01@\x04ـً\x04ـَ\x04ـُ\x04ـِ\x04ـّ\x04ـْ\x02ء\x02آ\x02أ\x02ؤ" + -+ "\x02إ\x02ئ\x02ا\x02ب\x02ة\x02ت\x02ث\x02ج\x02ح\x02خ\x02د\x02ذ\x02ر\x02ز" + -+ "\x02س\x02ش\x02ص\x02ض\x02ط\x02ظ\x02ع\x02غ\x02ف\x02ق\x02ك\x02ل\x02م\x02ن" + -+ "\x02ه\x02و\x02ي\x04لآ\x04لأ\x04لإ\x04لا\x01\x22\x01'\x01/\x01^\x01|\x01~" + -+ "\x02¢\x02£\x02¬\x02¦\x02¥\x08𝅗𝅥\x08𝅘𝅥\x0c𝅘𝅥𝅮\x0c𝅘𝅥𝅯\x0c𝅘𝅥𝅰\x0c𝅘𝅥𝅱\x0c𝅘𝅥𝅲" + -+ "\x08𝆹𝅥\x08𝆺𝅥\x0c𝆹𝅥𝅮\x0c𝆺𝅥𝅮\x0c𝆹𝅥𝅯\x0c𝆺𝅥𝅯\x02ı\x02ȷ\x02α\x02ε\x02ζ\x02η" + -+ "\x02κ\x02λ\x02μ\x02ν\x02ξ\x02ο\x02σ\x02τ\x02υ\x02ψ\x03∇\x03∂\x02ϝ\x02ٮ" + -+ "\x02ڡ\x02ٯ\x020,\x021,\x022,\x023,\x024,\x025,\x026,\x027,\x028,\x029," + -+ "\x03(a)\x03(b)\x03(c)\x03(d)\x03(e)\x03(f)\x03(g)\x03(h)\x03(i)\x03(j)" + -+ "\x03(k)\x03(l)\x03(m)\x03(n)\x03(o)\x03(p)\x03(q)\x03(r)\x03(s)\x03(t)" + -+ "\x03(u)\x03(v)\x03(w)\x03(x)\x03(y)\x03(z)\x07〔s〕\x02wz\x02hv\x02sd\x03p" + -+ "pv\x02wc\x02mc\x02md\x02mr\x02dj\x06ほか\x06ココ\x03サ\x03手\x03字\x03双\x03デ" + -+ "\x03二\x03多\x03解\x03天\x03交\x03映\x03無\x03料\x03前\x03後\x03再\x03新\x03初\x03終" + -+ "\x03生\x03販\x03声\x03吹\x03演\x03投\x03捕\x03一\x03三\x03遊\x03左\x03中\x03右\x03指" + -+ "\x03走\x03打\x03禁\x03空\x03合\x03満\x03有\x03月\x03申\x03割\x03営\x03配\x09〔本〕\x09〔" + -+ "三〕\x09〔二〕\x09〔安〕\x09〔点〕\x09〔打〕\x09〔盗〕\x09〔勝〕\x09〔敗〕\x03得\x03可\x03丽\x03" + -+ "丸\x03乁\x03你\x03侮\x03侻\x03倂\x03偺\x03備\x03僧\x03像\x03㒞\x03免\x03兔\x03兤\x03" + -+ "具\x03㒹\x03內\x03冗\x03冤\x03仌\x03冬\x03况\x03凵\x03刃\x03㓟\x03刻\x03剆\x03剷\x03" + -+ "㔕\x03勇\x03勉\x03勤\x03勺\x03包\x03匆\x03北\x03卉\x03卑\x03博\x03即\x03卽\x03卿\x03" + -+ "灰\x03及\x03叟\x03叫\x03叱\x03吆\x03咞\x03吸\x03呈\x03周\x03咢\x03哶\x03唐\x03啓\x03" + -+ "啣\x03善\x03喙\x03喫\x03喳\x03嗂\x03圖\x03嘆\x03圗\x03噑\x03噴\x03切\x03壮\x03城\x03" + -+ "埴\x03堍\x03型\x03堲\x03報\x03墬\x03売\x03壷\x03夆\x03夢\x03奢\x03姬\x03娛\x03娧\x03" + -+ "姘\x03婦\x03㛮\x03嬈\x03嬾\x03寃\x03寘\x03寧\x03寳\x03寿\x03将\x03尢\x03㞁\x03屠\x03" + -+ "屮\x03峀\x03岍\x03嵃\x03嵮\x03嵫\x03嵼\x03巡\x03巢\x03㠯\x03巽\x03帨\x03帽\x03幩\x03" + -+ "㡢\x03㡼\x03庰\x03庳\x03庶\x03廊\x03廾\x03舁\x03弢\x03㣇\x03形\x03彫\x03㣣\x03徚\x03" + -+ "忍\x03志\x03忹\x03悁\x03㤺\x03㤜\x03悔\x03惇\x03慈\x03慌\x03慎\x03慺\x03憎\x03憲\x03" + -+ "憤\x03憯\x03懞\x03懲\x03懶\x03成\x03戛\x03扝\x03抱\x03拔\x03捐\x03挽\x03拼\x03捨\x03" + -+ "掃\x03揤\x03搢\x03揅\x03掩\x03㨮\x03摩\x03摾\x03撝\x03摷\x03㩬\x03敏\x03敬\x03旣\x03" + -+ "書\x03晉\x03㬙\x03暑\x03㬈\x03㫤\x03冒\x03冕\x03最\x03暜\x03肭\x03䏙\x03朗\x03望\x03" + -+ "朡\x03杞\x03杓\x03㭉\x03柺\x03枅\x03桒\x03梅\x03梎\x03栟\x03椔\x03㮝\x03楂\x03榣\x03" + -+ "槪\x03檨\x03櫛\x03㰘\x03次\x03歔\x03㱎\x03歲\x03殟\x03殺\x03殻\x03汎\x03沿\x03泍\x03" + -+ "汧\x03洖\x03派\x03海\x03流\x03浩\x03浸\x03涅\x03洴\x03港\x03湮\x03㴳\x03滋\x03滇\x03" + -+ "淹\x03潮\x03濆\x03瀹\x03瀞\x03瀛\x03㶖\x03灊\x03災\x03灷\x03炭\x03煅\x03熜\x03爨\x03" + -+ "爵\x03牐\x03犀\x03犕\x03獺\x03王\x03㺬\x03玥\x03㺸\x03瑇\x03瑜\x03瑱\x03璅\x03瓊\x03" + -+ "㼛\x03甤\x03甾\x03異\x03瘐\x03㿼\x03䀈\x03直\x03眞\x03真\x03睊\x03䀹\x03瞋\x03䁆\x03" + -+ "䂖\x03硎\x03碌\x03磌\x03䃣\x03祖\x03福\x03秫\x03䄯\x03穀\x03穊\x03穏\x03䈂\x03篆\x03" + -+ "築\x03䈧\x03糒\x03䊠\x03糨\x03糣\x03紀\x03絣\x03䌁\x03緇\x03縂\x03繅\x03䌴\x03䍙\x03" + -+ "罺\x03羕\x03翺\x03者\x03聠\x03聰\x03䏕\x03育\x03脃\x03䐋\x03脾\x03媵\x03舄\x03辞\x03" + -+ "䑫\x03芑\x03芋\x03芝\x03劳\x03花\x03芳\x03芽\x03苦\x03若\x03茝\x03荣\x03莭\x03茣\x03" + -+ "莽\x03菧\x03著\x03荓\x03菊\x03菌\x03菜\x03䔫\x03蓱\x03蓳\x03蔖\x03蕤\x03䕝\x03䕡\x03" + -+ "䕫\x03虐\x03虜\x03虧\x03虩\x03蚩\x03蚈\x03蜎\x03蛢\x03蝹\x03蜨\x03蝫\x03螆\x03蟡\x03" + -+ "蠁\x03䗹\x03衠\x03衣\x03裗\x03裞\x03䘵\x03裺\x03㒻\x03䚾\x03䛇\x03誠\x03諭\x03變\x03" + -+ "豕\x03貫\x03賁\x03贛\x03起\x03跋\x03趼\x03跰\x03軔\x03輸\x03邔\x03郱\x03鄑\x03鄛\x03" + -+ "鈸\x03鋗\x03鋘\x03鉼\x03鏹\x03鐕\x03開\x03䦕\x03閷\x03䧦\x03雃\x03嶲\x03霣\x03䩮\x03" + -+ "䩶\x03韠\x03䪲\x03頋\x03頩\x03飢\x03䬳\x03餩\x03馧\x03駂\x03駾\x03䯎\x03鬒\x03鱀\x03" + -+ "鳽\x03䳎\x03䳭\x03鵧\x03䳸\x03麻\x03䵖\x03黹\x03黾\x03鼅\x03鼏\x03鼖\x03鼻" -+ -+var xorData string = "" + // Size: 4862 bytes -+ "\x02\x0c\x09\x02\xb0\xec\x02\xad\xd8\x02\xad\xd9\x02\x06\x07\x02\x0f\x12" + -+ "\x02\x0f\x1f\x02\x0f\x1d\x02\x01\x13\x02\x0f\x16\x02\x0f\x0b\x02\x0f3" + -+ "\x02\x0f7\x02\x0f?\x02\x0f/\x02\x0f*\x02\x0c&\x02\x0c*\x02\x0c;\x02\x0c9" + -+ "\x02\x0c%\x02\xab\xed\x02\xab\xe2\x02\xab\xe3\x02\xa9\xe0\x02\xa9\xe1" + -+ "\x02\xa9\xe6\x02\xa3\xcb\x02\xa3\xc8\x02\xa3\xc9\x02\x01#\x02\x01\x08" + -+ "\x02\x0e>\x02\x0e'\x02\x0f\x03\x02\x03\x0d\x02\x03\x09\x02\x03\x17\x02" + -+ "\x03\x0e\x02\x02\x03\x02\x011\x02\x01\x00\x02\x01\x10\x02\x03<\x02\x07" + -+ "\x0d\x02\x02\x0c\x02\x0c0\x02\x01\x03\x02\x01\x01\x02\x01 \x02\x01\x22" + -+ "\x02\x01)\x02\x01\x0a\x02\x01\x0c\x02\x02\x06\x02\x02\x02\x02\x03\x10" + -+ "\x03\x037 \x03\x0b+\x03\x021\x00\x02\x01\x04\x02\x01\x02\x02\x019\x02" + -+ "\x03\x1c\x02\x02$\x03\x80p$\x02\x03:\x02\x03\x0a\x03\xc1r.\x03\xc1r,\x03" + -+ "\xc1r\x02\x02\x02:\x02\x02>\x02\x02,\x02\x02\x10\x02\x02\x00\x03\xc1s<" + -+ "\x03\xc1s*\x03\xc2L$\x03\xc2L;\x02\x09)\x02\x0a\x19\x03\x83\xab\xe3\x03" + -+ "\x83\xab\xf2\x03 4\xe0\x03\x81\xab\xea\x03\x81\xab\xf3\x03 4\xef\x03\x96" + -+ "\xe1\xcd\x03\x84\xe5\xc3\x02\x0d\x11\x03\x8b\xec\xcb\x03\x94\xec\xcf\x03" + -+ "\x9a\xec\xc2\x03\x8b\xec\xdb\x03\x94\xec\xdf\x03\x9a\xec\xd2\x03\x01\x0c" + -+ "!\x03\x01\x0c#\x03ʠ\x9d\x03ʣ\x9c\x03ʢ\x9f\x03ʥ\x9e\x03ʤ\x91\x03ʧ\x90\x03" + -+ "ʦ\x93\x03ʩ\x92\x03ʨ\x95\x03\xca\xf3\xb5\x03\xca\xf0\xb4\x03\xca\xf1\xb7" + -+ "\x03\xca\xf6\xb6\x03\xca\xf7\x89\x03\xca\xf4\x88\x03\xca\xf5\x8b\x03\xca" + -+ "\xfa\x8a\x03\xca\xfb\x8d\x03\xca\xf8\x8c\x03\xca\xf9\x8f\x03\xca\xfe\x8e" + -+ "\x03\xca\xff\x81\x03\xca\xfc\x80\x03\xca\xfd\x83\x03\xca\xe2\x82\x03\xca" + -+ "\xe3\x85\x03\xca\xe0\x84\x03\xca\xe1\x87\x03\xca\xe6\x86\x03\xca\xe7\x99" + -+ "\x03\xca\xe4\x98\x03\xca\xe5\x9b\x03\xca\xea\x9a\x03\xca\xeb\x9d\x03\xca" + -+ "\xe8\x9c\x03ؓ\x89\x03ߔ\x8b\x02\x010\x03\x03\x04\x1e\x03\x04\x15\x12\x03" + -+ "\x0b\x05,\x03\x06\x04\x00\x03\x06\x04)\x03\x06\x044\x03\x06\x04<\x03\x06" + -+ "\x05\x1d\x03\x06\x06\x00\x03\x06\x06\x0a\x03\x06\x06'\x03\x06\x062\x03" + -+ "\x0786\x03\x079/\x03\x079 \x03\x07:\x0e\x03\x07:\x1b\x03\x07:%\x03\x07;/" + -+ "\x03\x07;%\x03\x074\x11\x03\x076\x09\x03\x077*\x03\x070\x01\x03\x070\x0f" + -+ "\x03\x070.\x03\x071\x16\x03\x071\x04\x03\x0710\x03\x072\x18\x03\x072-" + -+ "\x03\x073\x14\x03\x073>\x03\x07'\x09\x03\x07 \x00\x03\x07\x1f\x0b\x03" + -+ "\x07\x18#\x03\x07\x18(\x03\x07\x186\x03\x07\x18\x03\x03\x07\x19\x16\x03" + -+ "\x07\x116\x03\x07\x12'\x03\x07\x13\x10\x03\x07\x0c&\x03\x07\x0c\x08\x03" + -+ "\x07\x0c\x13\x03\x07\x0d\x02\x03\x07\x0d\x1c\x03\x07\x0b5\x03\x07\x0b" + -+ "\x0a\x03\x07\x0b\x01\x03\x07\x0b\x0f\x03\x07\x05\x00\x03\x07\x05\x09\x03" + -+ "\x07\x05\x0b\x03\x07\x07\x01\x03\x07\x07\x08\x03\x07\x00<\x03\x07\x00+" + -+ "\x03\x07\x01)\x03\x07\x01\x1b\x03\x07\x01\x08\x03\x07\x03?\x03\x0445\x03" + -+ "\x044\x08\x03\x0454\x03\x04)/\x03\x04)5\x03\x04+\x05\x03\x04+\x14\x03" + -+ "\x04+ \x03\x04+<\x03\x04*&\x03\x04*\x22\x03\x04&8\x03\x04!\x01\x03\x04!" + -+ "\x22\x03\x04\x11+\x03\x04\x10.\x03\x04\x104\x03\x04\x13=\x03\x04\x12\x04" + -+ "\x03\x04\x12\x0a\x03\x04\x0d\x1d\x03\x04\x0d\x07\x03\x04\x0d \x03\x05<>" + -+ "\x03\x055<\x03\x055!\x03\x055#\x03\x055&\x03\x054\x1d\x03\x054\x02\x03" + -+ "\x054\x07\x03\x0571\x03\x053\x1a\x03\x053\x16\x03\x05.<\x03\x05.\x07\x03" + -+ "\x05):\x03\x05)<\x03\x05)\x0c\x03\x05)\x15\x03\x05+-\x03\x05+5\x03\x05$" + -+ "\x1e\x03\x05$\x14\x03\x05'\x04\x03\x05'\x14\x03\x05&\x02\x03\x05\x226" + -+ "\x03\x05\x22\x0c\x03\x05\x22\x1c\x03\x05\x19\x0a\x03\x05\x1b\x09\x03\x05" + -+ "\x1b\x0c\x03\x05\x14\x07\x03\x05\x16?\x03\x05\x16\x0c\x03\x05\x0c\x05" + -+ "\x03\x05\x0e\x0f\x03\x05\x01\x0e\x03\x05\x00(\x03\x05\x030\x03\x05\x03" + -+ "\x06\x03\x0a==\x03\x0a=1\x03\x0a=,\x03\x0a=\x0c\x03\x0a??\x03\x0a<\x08" + -+ "\x03\x0a9!\x03\x0a9)\x03\x0a97\x03\x0a99\x03\x0a6\x0a\x03\x0a6\x1c\x03" + -+ "\x0a6\x17\x03\x0a7'\x03\x0a78\x03\x0a73\x03\x0a'\x01\x03\x0a'&\x03\x0a" + -+ "\x1f\x0e\x03\x0a\x1f\x03\x03\x0a\x1f3\x03\x0a\x1b/\x03\x0a\x18\x19\x03" + -+ "\x0a\x19\x01\x03\x0a\x16\x14\x03\x0a\x0e\x22\x03\x0a\x0f\x10\x03\x0a\x0f" + -+ "\x02\x03\x0a\x0f \x03\x0a\x0c\x04\x03\x0a\x0b>\x03\x0a\x0b+\x03\x0a\x08/" + -+ "\x03\x0a\x046\x03\x0a\x05\x14\x03\x0a\x00\x04\x03\x0a\x00\x10\x03\x0a" + -+ "\x00\x14\x03\x0b<3\x03\x0b;*\x03\x0b9\x22\x03\x0b9)\x03\x0b97\x03\x0b+" + -+ "\x10\x03\x0b((\x03\x0b&5\x03\x0b$\x1c\x03\x0b$\x12\x03\x0b%\x04\x03\x0b#" + -+ "<\x03\x0b#0\x03\x0b#\x0d\x03\x0b#\x19\x03\x0b!:\x03\x0b!\x1f\x03\x0b!" + -+ "\x00\x03\x0b\x1e5\x03\x0b\x1c\x1d\x03\x0b\x1d-\x03\x0b\x1d(\x03\x0b\x18." + -+ "\x03\x0b\x18 \x03\x0b\x18\x16\x03\x0b\x14\x13\x03\x0b\x15$\x03\x0b\x15" + -+ "\x22\x03\x0b\x12\x1b\x03\x0b\x12\x10\x03\x0b\x132\x03\x0b\x13=\x03\x0b" + -+ "\x12\x18\x03\x0b\x0c&\x03\x0b\x061\x03\x0b\x06:\x03\x0b\x05#\x03\x0b\x05" + -+ "<\x03\x0b\x04\x0b\x03\x0b\x04\x04\x03\x0b\x04\x1b\x03\x0b\x042\x03\x0b" + -+ "\x041\x03\x0b\x03\x03\x03\x0b\x03\x1d\x03\x0b\x03/\x03\x0b\x03+\x03\x0b" + -+ "\x02\x1b\x03\x0b\x02\x00\x03\x0b\x01\x1e\x03\x0b\x01\x08\x03\x0b\x015" + -+ "\x03\x06\x0d9\x03\x06\x0d=\x03\x06\x0d?\x03\x02\x001\x03\x02\x003\x03" + -+ "\x02\x02\x19\x03\x02\x006\x03\x02\x02\x1b\x03\x02\x004\x03\x02\x00<\x03" + -+ "\x02\x02\x0a\x03\x02\x02\x0e\x03\x02\x01\x1a\x03\x02\x01\x07\x03\x02\x01" + -+ "\x05\x03\x02\x01\x0b\x03\x02\x01%\x03\x02\x01\x0c\x03\x02\x01\x04\x03" + -+ "\x02\x01\x1c\x03\x02\x00.\x03\x02\x002\x03\x02\x00>\x03\x02\x00\x12\x03" + -+ "\x02\x00\x16\x03\x02\x011\x03\x02\x013\x03\x02\x02 \x03\x02\x02%\x03\x02" + -+ "\x02$\x03\x02\x028\x03\x02\x02;\x03\x02\x024\x03\x02\x012\x03\x02\x022" + -+ "\x03\x02\x02/\x03\x02\x01,\x03\x02\x01\x13\x03\x02\x01\x16\x03\x02\x01" + -+ "\x11\x03\x02\x01\x1e\x03\x02\x01\x15\x03\x02\x01\x17\x03\x02\x01\x0f\x03" + -+ "\x02\x01\x08\x03\x02\x00?\x03\x02\x03\x07\x03\x02\x03\x0d\x03\x02\x03" + -+ "\x13\x03\x02\x03\x1d\x03\x02\x03\x1f\x03\x02\x00\x03\x03\x02\x00\x0d\x03" + -+ "\x02\x00\x01\x03\x02\x00\x1b\x03\x02\x00\x19\x03\x02\x00\x18\x03\x02\x00" + -+ "\x13\x03\x02\x00/\x03\x07>\x12\x03\x07<\x1f\x03\x07>\x1d\x03\x06\x1d\x0e" + -+ "\x03\x07>\x1c\x03\x07>:\x03\x07>\x13\x03\x04\x12+\x03\x07?\x03\x03\x07>" + -+ "\x02\x03\x06\x224\x03\x06\x1a.\x03\x07<%\x03\x06\x1c\x0b\x03\x0609\x03" + -+ "\x05\x1f\x01\x03\x04'\x08\x03\x93\xfd\xf5\x03\x02\x0d \x03\x02\x0d#\x03" + -+ "\x02\x0d!\x03\x02\x0d&\x03\x02\x0d\x22\x03\x02\x0d/\x03\x02\x0d,\x03\x02" + -+ "\x0d$\x03\x02\x0d'\x03\x02\x0d%\x03\x02\x0d;\x03\x02\x0d=\x03\x02\x0d?" + -+ "\x03\x099.\x03\x08\x0b7\x03\x08\x02\x14\x03\x08\x14\x0d\x03\x08.:\x03" + -+ "\x089'\x03\x0f\x0b\x18\x03\x0f\x1c1\x03\x0f\x17&\x03\x0f9\x1f\x03\x0f0" + -+ "\x0c\x03\x0e\x0a9\x03\x0e\x056\x03\x0e\x1c#\x03\x0f\x13\x0e\x03\x072\x00" + -+ "\x03\x070\x0d\x03\x072\x0b\x03\x06\x11\x18\x03\x070\x10\x03\x06\x0f(\x03" + -+ "\x072\x05\x03\x06\x0f,\x03\x073\x15\x03\x06\x07\x08\x03\x05\x16\x02\x03" + -+ "\x04\x0b \x03\x05:8\x03\x05\x16%\x03\x0a\x0d\x1f\x03\x06\x16\x10\x03\x05" + -+ "\x1d5\x03\x05*;\x03\x05\x16\x1b\x03\x04.-\x03\x06\x1a\x19\x03\x04\x03," + -+ "\x03\x0b87\x03\x04/\x0a\x03\x06\x00,\x03\x04-\x01\x03\x04\x1e-\x03\x06/(" + -+ "\x03\x0a\x0b5\x03\x06\x0e7\x03\x06\x07.\x03\x0597\x03\x0a*%\x03\x0760" + -+ "\x03\x06\x0c;\x03\x05'\x00\x03\x072.\x03\x072\x08\x03\x06=\x01\x03\x06" + -+ "\x05\x1b\x03\x06\x06\x12\x03\x06$=\x03\x06'\x0d\x03\x04\x11\x0f\x03\x076" + -+ ",\x03\x06\x07;\x03\x06.,\x03\x86\xf9\xea\x03\x8f\xff\xeb\x02\x092\x02" + -+ "\x095\x02\x094\x02\x09;\x02\x09>\x02\x098\x02\x09*\x02\x09/\x02\x09,\x02" + -+ "\x09%\x02\x09&\x02\x09#\x02\x09 \x02\x08!\x02\x08%\x02\x08$\x02\x08+\x02" + -+ "\x08.\x02\x08*\x02\x08&\x02\x088\x02\x08>\x02\x084\x02\x086\x02\x080\x02" + -+ "\x08\x10\x02\x08\x17\x02\x08\x12\x02\x08\x1d\x02\x08\x1f\x02\x08\x13\x02" + -+ "\x08\x15\x02\x08\x14\x02\x08\x0c\x03\x8b\xfd\xd0\x03\x81\xec\xc6\x03\x87" + -+ "\xe0\x8a\x03-2\xe3\x03\x80\xef\xe4\x03-2\xea\x03\x88\xe6\xeb\x03\x8e\xe6" + -+ "\xe8\x03\x84\xe6\xe9\x03\x97\xe6\xee\x03-2\xf9\x03-2\xf6\x03\x8e\xe3\xad" + -+ "\x03\x80\xe3\x92\x03\x88\xe3\x90\x03\x8e\xe3\x90\x03\x80\xe3\x97\x03\x88" + -+ "\xe3\x95\x03\x88\xfe\xcb\x03\x8e\xfe\xca\x03\x84\xfe\xcd\x03\x91\xef\xc9" + -+ "\x03-2\xc1\x03-2\xc0\x03-2\xcb\x03\x88@\x09\x03\x8e@\x08\x03\x8f\xe0\xf5" + -+ "\x03\x8e\xe6\xf9\x03\x8e\xe0\xfa\x03\x93\xff\xf4\x03\x84\xee\xd3\x03\x0b" + -+ "(\x04\x023 \x03\x0b)\x08\x021;\x02\x01*\x03\x0b#\x10\x03\x0b 0\x03\x0b!" + -+ "\x10\x03\x0b!0\x03\x07\x15\x08\x03\x09?5\x03\x07\x1f\x08\x03\x07\x17\x0b" + -+ "\x03\x09\x1f\x15\x03\x0b\x1c7\x03\x0a+#\x03\x06\x1a\x1b\x03\x06\x1a\x14" + -+ "\x03\x0a\x01\x18\x03\x06#\x1b\x03\x0a2\x0c\x03\x0a\x01\x04\x03\x09#;\x03" + -+ "\x08='\x03\x08\x1a\x0a\x03\x07\x03\x0a\x111\x03\x09\x1b\x09\x03\x073.\x03\x07" + -+ "\x01\x00\x03\x09/,\x03\x07#>\x03\x07\x048\x03\x0a\x1f\x22\x03\x098>\x03" + -+ "\x09\x11\x00\x03\x08/\x17\x03\x06'\x22\x03\x0b\x1a+\x03\x0a\x22\x19\x03" + -+ "\x0a/1\x03\x0974\x03\x09\x0f\x22\x03\x08,\x22\x03\x08?\x14\x03\x07$5\x03" + -+ "\x07<3\x03\x07=*\x03\x07\x13\x18\x03\x068\x0a\x03\x06\x09\x16\x03\x06" + -+ "\x13\x00\x03\x08\x067\x03\x08\x01\x03\x03\x08\x12\x1d\x03\x07+7\x03\x06(" + -+ ";\x03\x06\x1c?\x03\x07\x0e\x17\x03\x0a\x06\x1d\x03\x0a\x19\x07\x03\x08" + -+ "\x14$\x03\x07$;\x03\x08,$\x03\x08\x06\x0d\x03\x07\x16\x0a\x03\x06>>\x03" + -+ "\x0a\x06\x12\x03\x0a\x14)\x03\x09\x0d\x1f\x03\x09\x12\x17\x03\x09\x19" + -+ "\x01\x03\x08\x11 \x03\x08\x1d'\x03\x06<\x1a\x03\x0a.\x00\x03\x07'\x18" + -+ "\x03\x0a\x22\x08\x03\x08\x0d\x0a\x03\x08\x13)\x03\x07*)\x03\x06<,\x03" + -+ "\x07\x0b\x1a\x03\x09.\x14\x03\x09\x0d\x1e\x03\x07\x0e#\x03\x0b\x1d'\x03" + -+ "\x0a\x0a8\x03\x09%2\x03\x08+&\x03\x080\x12\x03\x0a)4\x03\x08\x06\x1f\x03" + -+ "\x0b\x1b\x1a\x03\x0a\x1b\x0f\x03\x0b\x1d*\x03\x09\x16$\x03\x090\x11\x03" + -+ "\x08\x11\x08\x03\x0a*(\x03\x0a\x042\x03\x089,\x03\x074'\x03\x07\x0f\x05" + -+ "\x03\x09\x0b\x0a\x03\x07\x1b\x01\x03\x09\x17:\x03\x09.\x0d\x03\x07.\x11" + -+ "\x03\x09+\x15\x03\x080\x13\x03\x0b\x1f\x19\x03\x0a \x11\x03\x0a\x220\x03" + -+ "\x09\x07;\x03\x08\x16\x1c\x03\x07,\x13\x03\x07\x0e/\x03\x06\x221\x03\x0a" + -+ ".\x0a\x03\x0a7\x02\x03\x0a\x032\x03\x0a\x1d.\x03\x091\x06\x03\x09\x19:" + -+ "\x03\x08\x02/\x03\x060+\x03\x06\x0f-\x03\x06\x1c\x1f\x03\x06\x1d\x07\x03" + -+ "\x0a,\x11\x03\x09=\x0d\x03\x09\x0b;\x03\x07\x1b/\x03\x0a\x1f:\x03\x09 " + -+ "\x1f\x03\x09.\x10\x03\x094\x0b\x03\x09\x1a1\x03\x08#\x1a\x03\x084\x1d" + -+ "\x03\x08\x01\x1f\x03\x08\x11\x22\x03\x07'8\x03\x07\x1a>\x03\x0757\x03" + -+ "\x06&9\x03\x06+\x11\x03\x0a.\x0b\x03\x0a,>\x03\x0a4#\x03\x08%\x17\x03" + -+ "\x07\x05\x22\x03\x07\x0c\x0b\x03\x0a\x1d+\x03\x0a\x19\x16\x03\x09+\x1f" + -+ "\x03\x09\x08\x0b\x03\x08\x16\x18\x03\x08+\x12\x03\x0b\x1d\x0c\x03\x0a=" + -+ "\x10\x03\x0a\x09\x0d\x03\x0a\x10\x11\x03\x09&0\x03\x08(\x1f\x03\x087\x07" + -+ "\x03\x08\x185\x03\x07'6\x03\x06.\x05\x03\x06=\x04\x03\x06;;\x03\x06\x06," + -+ "\x03\x0b\x18>\x03\x08\x00\x18\x03\x06 \x03\x03\x06<\x00\x03\x09%\x18\x03" + -+ "\x0b\x1c<\x03\x0a%!\x03\x0a\x09\x12\x03\x0a\x16\x02\x03\x090'\x03\x09" + -+ "\x0e=\x03\x08 \x0e\x03\x08>\x03\x03\x074>\x03\x06&?\x03\x06\x19\x09\x03" + -+ "\x06?(\x03\x0a-\x0e\x03\x09:3\x03\x098:\x03\x09\x12\x0b\x03\x09\x1d\x17" + -+ "\x03\x087\x05\x03\x082\x14\x03\x08\x06%\x03\x08\x13\x1f\x03\x06\x06\x0e" + -+ "\x03\x0a\x22<\x03\x09/<\x03\x06>+\x03\x0a'?\x03\x0a\x13\x0c\x03\x09\x10<" + -+ "\x03\x07\x1b=\x03\x0a\x19\x13\x03\x09\x22\x1d\x03\x09\x07\x0d\x03\x08)" + -+ "\x1c\x03\x06=\x1a\x03\x0a/4\x03\x0a7\x11\x03\x0a\x16:\x03\x09?3\x03\x09:" + -+ "/\x03\x09\x05\x0a\x03\x09\x14\x06\x03\x087\x22\x03\x080\x07\x03\x08\x1a" + -+ "\x1f\x03\x07\x04(\x03\x07\x04\x09\x03\x06 %\x03\x06<\x08\x03\x0a+\x14" + -+ "\x03\x09\x1d\x16\x03\x0a70\x03\x08 >\x03\x0857\x03\x070\x0a\x03\x06=\x12" + -+ "\x03\x06\x16%\x03\x06\x1d,\x03\x099#\x03\x09\x10>\x03\x07 \x1e\x03\x08" + -+ "\x0c<\x03\x08\x0b\x18\x03\x08\x15+\x03\x08,:\x03\x08%\x22\x03\x07\x0a$" + -+ "\x03\x0b\x1c=\x03\x07+\x08\x03\x0a/\x05\x03\x0a \x07\x03\x0a\x12'\x03" + -+ "\x09#\x11\x03\x08\x1b\x15\x03\x0a\x06\x01\x03\x09\x1c\x1b\x03\x0922\x03" + -+ "\x07\x14<\x03\x07\x09\x04\x03\x061\x04\x03\x07\x0e\x01\x03\x0a\x13\x18" + -+ "\x03\x0a-\x0c\x03\x0a?\x0d\x03\x0a\x09\x0a\x03\x091&\x03\x0a/\x0b\x03" + -+ "\x08$<\x03\x083\x1d\x03\x08\x0c$\x03\x08\x0d\x07\x03\x08\x0d?\x03\x08" + -+ "\x0e\x14\x03\x065\x0a\x03\x08\x1a#\x03\x08\x16#\x03\x0702\x03\x07\x03" + -+ "\x1a\x03\x06(\x1d\x03\x06+\x1b\x03\x06\x0b\x05\x03\x06\x0b\x17\x03\x06" + -+ "\x0c\x04\x03\x06\x1e\x19\x03\x06+0\x03\x062\x18\x03\x0b\x16\x1e\x03\x0a+" + -+ "\x16\x03\x0a-?\x03\x0a#:\x03\x0a#\x10\x03\x0a%$\x03\x0a>+\x03\x0a01\x03" + -+ "\x0a1\x10\x03\x0a\x099\x03\x0a\x0a\x12\x03\x0a\x19\x1f\x03\x0a\x19\x12" + -+ "\x03\x09*)\x03\x09-\x16\x03\x09.1\x03\x09.2\x03\x09<\x0e\x03\x09> \x03" + -+ "\x093\x12\x03\x09\x0b\x01\x03\x09\x1c2\x03\x09\x11\x1c\x03\x09\x15%\x03" + -+ "\x08,&\x03\x08!\x22\x03\x089(\x03\x08\x0b\x1a\x03\x08\x0d2\x03\x08\x0c" + -+ "\x04\x03\x08\x0c\x06\x03\x08\x0c\x1f\x03\x08\x0c\x0c\x03\x08\x0f\x1f\x03" + -+ "\x08\x0f\x1d\x03\x08\x00\x14\x03\x08\x03\x14\x03\x08\x06\x16\x03\x08\x1e" + -+ "#\x03\x08\x11\x11\x03\x08\x10\x18\x03\x08\x14(\x03\x07)\x1e\x03\x07.1" + -+ "\x03\x07 $\x03\x07 '\x03\x078\x08\x03\x07\x0d0\x03\x07\x0f7\x03\x07\x05#" + -+ "\x03\x07\x05\x1a\x03\x07\x1a7\x03\x07\x1d-\x03\x07\x17\x10\x03\x06)\x1f" + -+ "\x03\x062\x0b\x03\x066\x16\x03\x06\x09\x11\x03\x09(\x1e\x03\x07!5\x03" + -+ "\x0b\x11\x16\x03\x0a/\x04\x03\x0a,\x1a\x03\x0b\x173\x03\x0a,1\x03\x0a/5" + -+ "\x03\x0a\x221\x03\x0a\x22\x0d\x03\x0a?%\x03\x0a<,\x03\x0a?#\x03\x0a>\x19" + -+ "\x03\x0a\x08&\x03\x0a\x0b\x0e\x03\x0a\x0c:\x03\x0a\x0c+\x03\x0a\x03\x22" + -+ "\x03\x0a\x06)\x03\x0a\x11\x10\x03\x0a\x11\x1a\x03\x0a\x17-\x03\x0a\x14(" + -+ "\x03\x09)\x1e\x03\x09/\x09\x03\x09.\x00\x03\x09,\x07\x03\x09/*\x03\x09-9" + -+ "\x03\x09\x228\x03\x09%\x09\x03\x09:\x12\x03\x09;\x1d\x03\x09?\x06\x03" + -+ "\x093%\x03\x096\x05\x03\x096\x08\x03\x097\x02\x03\x09\x07,\x03\x09\x04," + -+ "\x03\x09\x1f\x16\x03\x09\x11\x03\x03\x09\x11\x12\x03\x09\x168\x03\x08*" + -+ "\x05\x03\x08/2\x03\x084:\x03\x08\x22+\x03\x08 0\x03\x08&\x0a\x03\x08;" + -+ "\x10\x03\x08>$\x03\x08>\x18\x03\x0829\x03\x082:\x03\x081,\x03\x081<\x03" + -+ "\x081\x1c\x03\x087#\x03\x087*\x03\x08\x09'\x03\x08\x00\x1d\x03\x08\x05-" + -+ "\x03\x08\x1f4\x03\x08\x1d\x04\x03\x08\x16\x0f\x03\x07*7\x03\x07'!\x03" + -+ "\x07%\x1b\x03\x077\x0c\x03\x07\x0c1\x03\x07\x0c.\x03\x07\x00\x06\x03\x07" + -+ "\x01\x02\x03\x07\x010\x03\x07\x06=\x03\x07\x01\x03\x03\x07\x01\x13\x03" + -+ "\x07\x06\x06\x03\x07\x05\x0a\x03\x07\x1f\x09\x03\x07\x17:\x03\x06*1\x03" + -+ "\x06-\x1d\x03\x06\x223\x03\x062:\x03\x060$\x03\x066\x1e\x03\x064\x12\x03" + -+ "\x0645\x03\x06\x0b\x00\x03\x06\x0b7\x03\x06\x07\x1f\x03\x06\x15\x12\x03" + -+ "\x0c\x05\x0f\x03\x0b+\x0b\x03\x0b+-\x03\x06\x16\x1b\x03\x06\x15\x17\x03" + -+ "\x89\xca\xea\x03\x89\xca\xe8\x03\x0c8\x10\x03\x0c8\x01\x03\x0c8\x0f\x03" + -+ "\x0d8%\x03\x0d8!\x03\x0c8-\x03\x0c8/\x03\x0c8+\x03\x0c87\x03\x0c85\x03" + -+ "\x0c9\x09\x03\x0c9\x0d\x03\x0c9\x0f\x03\x0c9\x0b\x03\xcfu\x0c\x03\xcfu" + -+ "\x0f\x03\xcfu\x0e\x03\xcfu\x09\x03\x0c9\x10\x03\x0d9\x0c\x03\xcf`;\x03" + -+ "\xcf`>\x03\xcf`9\x03\xcf`8\x03\xcf`7\x03\xcf`*\x03\xcf`-\x03\xcf`,\x03" + -+ "\x0d\x1b\x1a\x03\x0d\x1b&\x03\x0c=.\x03\x0c=%\x03\x0c>\x1e\x03\x0c>\x14" + -+ "\x03\x0c?\x06\x03\x0c?\x0b\x03\x0c?\x0c\x03\x0c?\x0d\x03\x0c?\x02\x03" + -+ "\x0c>\x0f\x03\x0c>\x08\x03\x0c>\x09\x03\x0c>,\x03\x0c>\x0c\x03\x0c?\x13" + -+ "\x03\x0c?\x16\x03\x0c?\x15\x03\x0c?\x1c\x03\x0c?\x1f\x03\x0c?\x1d\x03" + -+ "\x0c?\x1a\x03\x0c?\x17\x03\x0c?\x08\x03\x0c?\x09\x03\x0c?\x0e\x03\x0c?" + -+ "\x04\x03\x0c?\x05\x03\x0c" + -+ "\x03\x0c=2\x03\x0c=6\x03\x0c<\x07\x03\x0c<\x05\x03\x0e:!\x03\x0e:#\x03" + -+ "\x0e8\x09\x03\x0e:&\x03\x0e8\x0b\x03\x0e:$\x03\x0e:,\x03\x0e8\x1a\x03" + -+ "\x0e8\x1e\x03\x0e:*\x03\x0e:7\x03\x0e:5\x03\x0e:;\x03\x0e:\x15\x03\x0e:<" + -+ "\x03\x0e:4\x03\x0e:'\x03\x0e:-\x03\x0e:%\x03\x0e:?\x03\x0e:=\x03\x0e:)" + -+ "\x03\x0e:/\x03\xcfs'\x03\x0d=\x0f\x03\x0d+*\x03\x0d99\x03\x0d9;\x03\x0d9" + -+ "?\x03\x0d)\x0d\x03\x0d(%\x02\x01\x18\x02\x01(\x02\x01\x1e\x03\x0f$!\x03" + -+ "\x0f87\x03\x0f4\x0e\x03\x0f5\x1d\x03\x06'\x03\x03\x0f\x08\x18\x03\x0f" + -+ "\x0d\x1b\x03\x0e2=\x03\x0e;\x08\x03\x0e:\x0b\x03\x0e\x06$\x03\x0e\x0d)" + -+ "\x03\x0e\x16\x1f\x03\x0e\x16\x1b\x03\x0d$\x0a\x03\x05,\x1d\x03\x0d. \x03" + -+ "\x0d.#\x03\x0c(/\x03\x09%\x02\x03\x0d90\x03\x0d\x0e4\x03\x0d\x0d\x0f\x03" + -+ "\x0c#\x00\x03\x0c,\x1e\x03\x0c2\x0e\x03\x0c\x01\x17\x03\x0c\x09:\x03\x0e" + -+ "\x173\x03\x0c\x08\x03\x03\x0c\x11\x07\x03\x0c\x10\x18\x03\x0c\x1f\x1c" + -+ "\x03\x0c\x19\x0e\x03\x0c\x1a\x1f\x03\x0f0>\x03\x0b->\x03\x0b<+\x03\x0b8" + -+ "\x13\x03\x0b\x043\x03\x0b\x14\x03\x03\x0b\x16%\x03\x0d\x22&\x03\x0b\x1a" + -+ "\x1a\x03\x0b\x1a\x04\x03\x0a%9\x03\x0a&2\x03\x0a&0\x03\x0a!\x1a\x03\x0a!" + -+ "7\x03\x0a5\x10\x03\x0a=4\x03\x0a?\x0e\x03\x0a>\x10\x03\x0a\x00 \x03\x0a" + -+ "\x0f:\x03\x0a\x0f9\x03\x0a\x0b\x0a\x03\x0a\x17%\x03\x0a\x1b-\x03\x09-" + -+ "\x1a\x03\x09,4\x03\x09.,\x03\x09)\x09\x03\x096!\x03\x091\x1f\x03\x093" + -+ "\x16\x03\x0c+\x1f\x03\x098 \x03\x098=\x03\x0c(\x1a\x03\x0c(\x16\x03\x09" + -+ "\x0a+\x03\x09\x16\x12\x03\x09\x13\x0e\x03\x09\x153\x03\x08)!\x03\x09\x1a" + -+ "\x01\x03\x09\x18\x01\x03\x08%#\x03\x08>\x22\x03\x08\x05%\x03\x08\x02*" + -+ "\x03\x08\x15;\x03\x08\x1b7\x03\x0f\x07\x1d\x03\x0f\x04\x03\x03\x070\x0c" + -+ "\x03\x07;\x0b\x03\x07\x08\x17\x03\x07\x12\x06\x03\x06/-\x03\x0671\x03" + -+ "\x065+\x03\x06>7\x03\x06\x049\x03\x05+\x1e\x03\x05,\x17\x03\x05 \x1d\x03" + -+ "\x05\x22\x05\x03\x050\x1d" -+ -+// lookup returns the trie value for the first UTF-8 encoding in s and -+// the width in bytes of this encoding. The size will be 0 if s does not -+// hold enough bytes to complete the encoding. len(s) must be greater than 0. -+func (t *idnaTrie) lookup(s []byte) (v uint16, sz int) { -+ c0 := s[0] -+ switch { -+ case c0 < 0x80: // is ASCII -+ return idnaValues[c0], 1 -+ case c0 < 0xC2: -+ return 0, 1 // Illegal UTF-8: not a starter, not ASCII. -+ case c0 < 0xE0: // 2-byte UTF-8 -+ if len(s) < 2 { -+ return 0, 0 -+ } -+ i := idnaIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c1), 2 -+ case c0 < 0xF0: // 3-byte UTF-8 -+ if len(s) < 3 { -+ return 0, 0 -+ } -+ i := idnaIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = idnaIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c2), 3 -+ case c0 < 0xF8: // 4-byte UTF-8 -+ if len(s) < 4 { -+ return 0, 0 -+ } -+ i := idnaIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = idnaIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ o = uint32(i)<<6 + uint32(c2) -+ i = idnaIndex[o] -+ c3 := s[3] -+ if c3 < 0x80 || 0xC0 <= c3 { -+ return 0, 3 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c3), 4 -+ } -+ // Illegal rune -+ return 0, 1 -+} -+ -+// lookupUnsafe returns the trie value for the first UTF-8 encoding in s. -+// s must start with a full and valid UTF-8 encoded rune. -+func (t *idnaTrie) lookupUnsafe(s []byte) uint16 { -+ c0 := s[0] -+ if c0 < 0x80 { // is ASCII -+ return idnaValues[c0] -+ } -+ i := idnaIndex[c0] -+ if c0 < 0xE0 { // 2-byte UTF-8 -+ return t.lookupValue(uint32(i), s[1]) -+ } -+ i = idnaIndex[uint32(i)<<6+uint32(s[1])] -+ if c0 < 0xF0 { // 3-byte UTF-8 -+ return t.lookupValue(uint32(i), s[2]) -+ } -+ i = idnaIndex[uint32(i)<<6+uint32(s[2])] -+ if c0 < 0xF8 { // 4-byte UTF-8 -+ return t.lookupValue(uint32(i), s[3]) -+ } -+ return 0 -+} -+ -+// lookupString returns the trie value for the first UTF-8 encoding in s and -+// the width in bytes of this encoding. The size will be 0 if s does not -+// hold enough bytes to complete the encoding. len(s) must be greater than 0. -+func (t *idnaTrie) lookupString(s string) (v uint16, sz int) { -+ c0 := s[0] -+ switch { -+ case c0 < 0x80: // is ASCII -+ return idnaValues[c0], 1 -+ case c0 < 0xC2: -+ return 0, 1 // Illegal UTF-8: not a starter, not ASCII. -+ case c0 < 0xE0: // 2-byte UTF-8 -+ if len(s) < 2 { -+ return 0, 0 -+ } -+ i := idnaIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c1), 2 -+ case c0 < 0xF0: // 3-byte UTF-8 -+ if len(s) < 3 { -+ return 0, 0 -+ } -+ i := idnaIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = idnaIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c2), 3 -+ case c0 < 0xF8: // 4-byte UTF-8 -+ if len(s) < 4 { -+ return 0, 0 -+ } -+ i := idnaIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = idnaIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ o = uint32(i)<<6 + uint32(c2) -+ i = idnaIndex[o] -+ c3 := s[3] -+ if c3 < 0x80 || 0xC0 <= c3 { -+ return 0, 3 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c3), 4 -+ } -+ // Illegal rune -+ return 0, 1 -+} -+ -+// lookupStringUnsafe returns the trie value for the first UTF-8 encoding in s. -+// s must start with a full and valid UTF-8 encoded rune. -+func (t *idnaTrie) lookupStringUnsafe(s string) uint16 { -+ c0 := s[0] -+ if c0 < 0x80 { // is ASCII -+ return idnaValues[c0] -+ } -+ i := idnaIndex[c0] -+ if c0 < 0xE0 { // 2-byte UTF-8 -+ return t.lookupValue(uint32(i), s[1]) -+ } -+ i = idnaIndex[uint32(i)<<6+uint32(s[1])] -+ if c0 < 0xF0 { // 3-byte UTF-8 -+ return t.lookupValue(uint32(i), s[2]) -+ } -+ i = idnaIndex[uint32(i)<<6+uint32(s[2])] -+ if c0 < 0xF8 { // 4-byte UTF-8 -+ return t.lookupValue(uint32(i), s[3]) -+ } -+ return 0 -+} -+ -+// idnaTrie. Total size: 30288 bytes (29.58 KiB). Checksum: c0cd84404a2f6f19. -+type idnaTrie struct{} -+ -+func newIdnaTrie(i int) *idnaTrie { -+ return &idnaTrie{} -+} -+ -+// lookupValue determines the type of block n and looks up the value for b. -+func (t *idnaTrie) lookupValue(n uint32, b byte) uint16 { -+ switch { -+ case n < 126: -+ return uint16(idnaValues[n<<6+uint32(b)]) -+ default: -+ n -= 126 -+ return uint16(idnaSparse.lookup(n, b)) -+ } -+} -+ -+// idnaValues: 128 blocks, 8192 entries, 16384 bytes -+// The third block is the zero block. -+var idnaValues = [8192]uint16{ -+ // Block 0x0, offset 0x0 -+ 0x00: 0x0080, 0x01: 0x0080, 0x02: 0x0080, 0x03: 0x0080, 0x04: 0x0080, 0x05: 0x0080, -+ 0x06: 0x0080, 0x07: 0x0080, 0x08: 0x0080, 0x09: 0x0080, 0x0a: 0x0080, 0x0b: 0x0080, -+ 0x0c: 0x0080, 0x0d: 0x0080, 0x0e: 0x0080, 0x0f: 0x0080, 0x10: 0x0080, 0x11: 0x0080, -+ 0x12: 0x0080, 0x13: 0x0080, 0x14: 0x0080, 0x15: 0x0080, 0x16: 0x0080, 0x17: 0x0080, -+ 0x18: 0x0080, 0x19: 0x0080, 0x1a: 0x0080, 0x1b: 0x0080, 0x1c: 0x0080, 0x1d: 0x0080, -+ 0x1e: 0x0080, 0x1f: 0x0080, 0x20: 0x0080, 0x21: 0x0080, 0x22: 0x0080, 0x23: 0x0080, -+ 0x24: 0x0080, 0x25: 0x0080, 0x26: 0x0080, 0x27: 0x0080, 0x28: 0x0080, 0x29: 0x0080, -+ 0x2a: 0x0080, 0x2b: 0x0080, 0x2c: 0x0080, 0x2d: 0x0008, 0x2e: 0x0008, 0x2f: 0x0080, -+ 0x30: 0x0008, 0x31: 0x0008, 0x32: 0x0008, 0x33: 0x0008, 0x34: 0x0008, 0x35: 0x0008, -+ 0x36: 0x0008, 0x37: 0x0008, 0x38: 0x0008, 0x39: 0x0008, 0x3a: 0x0080, 0x3b: 0x0080, -+ 0x3c: 0x0080, 0x3d: 0x0080, 0x3e: 0x0080, 0x3f: 0x0080, -+ // Block 0x1, offset 0x40 -+ 0x40: 0x0080, 0x41: 0xe105, 0x42: 0xe105, 0x43: 0xe105, 0x44: 0xe105, 0x45: 0xe105, -+ 0x46: 0xe105, 0x47: 0xe105, 0x48: 0xe105, 0x49: 0xe105, 0x4a: 0xe105, 0x4b: 0xe105, -+ 0x4c: 0xe105, 0x4d: 0xe105, 0x4e: 0xe105, 0x4f: 0xe105, 0x50: 0xe105, 0x51: 0xe105, -+ 0x52: 0xe105, 0x53: 0xe105, 0x54: 0xe105, 0x55: 0xe105, 0x56: 0xe105, 0x57: 0xe105, -+ 0x58: 0xe105, 0x59: 0xe105, 0x5a: 0xe105, 0x5b: 0x0080, 0x5c: 0x0080, 0x5d: 0x0080, -+ 0x5e: 0x0080, 0x5f: 0x0080, 0x60: 0x0080, 0x61: 0x0008, 0x62: 0x0008, 0x63: 0x0008, -+ 0x64: 0x0008, 0x65: 0x0008, 0x66: 0x0008, 0x67: 0x0008, 0x68: 0x0008, 0x69: 0x0008, -+ 0x6a: 0x0008, 0x6b: 0x0008, 0x6c: 0x0008, 0x6d: 0x0008, 0x6e: 0x0008, 0x6f: 0x0008, -+ 0x70: 0x0008, 0x71: 0x0008, 0x72: 0x0008, 0x73: 0x0008, 0x74: 0x0008, 0x75: 0x0008, -+ 0x76: 0x0008, 0x77: 0x0008, 0x78: 0x0008, 0x79: 0x0008, 0x7a: 0x0008, 0x7b: 0x0080, -+ 0x7c: 0x0080, 0x7d: 0x0080, 0x7e: 0x0080, 0x7f: 0x0080, -+ // Block 0x2, offset 0x80 -+ // Block 0x3, offset 0xc0 -+ 0xc0: 0x0040, 0xc1: 0x0040, 0xc2: 0x0040, 0xc3: 0x0040, 0xc4: 0x0040, 0xc5: 0x0040, -+ 0xc6: 0x0040, 0xc7: 0x0040, 0xc8: 0x0040, 0xc9: 0x0040, 0xca: 0x0040, 0xcb: 0x0040, -+ 0xcc: 0x0040, 0xcd: 0x0040, 0xce: 0x0040, 0xcf: 0x0040, 0xd0: 0x0040, 0xd1: 0x0040, -+ 0xd2: 0x0040, 0xd3: 0x0040, 0xd4: 0x0040, 0xd5: 0x0040, 0xd6: 0x0040, 0xd7: 0x0040, -+ 0xd8: 0x0040, 0xd9: 0x0040, 0xda: 0x0040, 0xdb: 0x0040, 0xdc: 0x0040, 0xdd: 0x0040, -+ 0xde: 0x0040, 0xdf: 0x0040, 0xe0: 0x000a, 0xe1: 0x0018, 0xe2: 0x0018, 0xe3: 0x0018, -+ 0xe4: 0x0018, 0xe5: 0x0018, 0xe6: 0x0018, 0xe7: 0x0018, 0xe8: 0x001a, 0xe9: 0x0018, -+ 0xea: 0x0039, 0xeb: 0x0018, 0xec: 0x0018, 0xed: 0x03c0, 0xee: 0x0018, 0xef: 0x004a, -+ 0xf0: 0x0018, 0xf1: 0x0018, 0xf2: 0x0069, 0xf3: 0x0079, 0xf4: 0x008a, 0xf5: 0x0005, -+ 0xf6: 0x0018, 0xf7: 0x0008, 0xf8: 0x00aa, 0xf9: 0x00c9, 0xfa: 0x00d9, 0xfb: 0x0018, -+ 0xfc: 0x00e9, 0xfd: 0x0119, 0xfe: 0x0149, 0xff: 0x0018, -+ // Block 0x4, offset 0x100 -+ 0x100: 0xe00d, 0x101: 0x0008, 0x102: 0xe00d, 0x103: 0x0008, 0x104: 0xe00d, 0x105: 0x0008, -+ 0x106: 0xe00d, 0x107: 0x0008, 0x108: 0xe00d, 0x109: 0x0008, 0x10a: 0xe00d, 0x10b: 0x0008, -+ 0x10c: 0xe00d, 0x10d: 0x0008, 0x10e: 0xe00d, 0x10f: 0x0008, 0x110: 0xe00d, 0x111: 0x0008, -+ 0x112: 0xe00d, 0x113: 0x0008, 0x114: 0xe00d, 0x115: 0x0008, 0x116: 0xe00d, 0x117: 0x0008, -+ 0x118: 0xe00d, 0x119: 0x0008, 0x11a: 0xe00d, 0x11b: 0x0008, 0x11c: 0xe00d, 0x11d: 0x0008, -+ 0x11e: 0xe00d, 0x11f: 0x0008, 0x120: 0xe00d, 0x121: 0x0008, 0x122: 0xe00d, 0x123: 0x0008, -+ 0x124: 0xe00d, 0x125: 0x0008, 0x126: 0xe00d, 0x127: 0x0008, 0x128: 0xe00d, 0x129: 0x0008, -+ 0x12a: 0xe00d, 0x12b: 0x0008, 0x12c: 0xe00d, 0x12d: 0x0008, 0x12e: 0xe00d, 0x12f: 0x0008, -+ 0x130: 0x0179, 0x131: 0x0008, 0x132: 0x0035, 0x133: 0x004d, 0x134: 0xe00d, 0x135: 0x0008, -+ 0x136: 0xe00d, 0x137: 0x0008, 0x138: 0x0008, 0x139: 0xe01d, 0x13a: 0x0008, 0x13b: 0xe03d, -+ 0x13c: 0x0008, 0x13d: 0xe01d, 0x13e: 0x0008, 0x13f: 0x0199, -+ // Block 0x5, offset 0x140 -+ 0x140: 0x0199, 0x141: 0xe01d, 0x142: 0x0008, 0x143: 0xe03d, 0x144: 0x0008, 0x145: 0xe01d, -+ 0x146: 0x0008, 0x147: 0xe07d, 0x148: 0x0008, 0x149: 0x01b9, 0x14a: 0xe00d, 0x14b: 0x0008, -+ 0x14c: 0xe00d, 0x14d: 0x0008, 0x14e: 0xe00d, 0x14f: 0x0008, 0x150: 0xe00d, 0x151: 0x0008, -+ 0x152: 0xe00d, 0x153: 0x0008, 0x154: 0xe00d, 0x155: 0x0008, 0x156: 0xe00d, 0x157: 0x0008, -+ 0x158: 0xe00d, 0x159: 0x0008, 0x15a: 0xe00d, 0x15b: 0x0008, 0x15c: 0xe00d, 0x15d: 0x0008, -+ 0x15e: 0xe00d, 0x15f: 0x0008, 0x160: 0xe00d, 0x161: 0x0008, 0x162: 0xe00d, 0x163: 0x0008, -+ 0x164: 0xe00d, 0x165: 0x0008, 0x166: 0xe00d, 0x167: 0x0008, 0x168: 0xe00d, 0x169: 0x0008, -+ 0x16a: 0xe00d, 0x16b: 0x0008, 0x16c: 0xe00d, 0x16d: 0x0008, 0x16e: 0xe00d, 0x16f: 0x0008, -+ 0x170: 0xe00d, 0x171: 0x0008, 0x172: 0xe00d, 0x173: 0x0008, 0x174: 0xe00d, 0x175: 0x0008, -+ 0x176: 0xe00d, 0x177: 0x0008, 0x178: 0x0065, 0x179: 0xe01d, 0x17a: 0x0008, 0x17b: 0xe03d, -+ 0x17c: 0x0008, 0x17d: 0xe01d, 0x17e: 0x0008, 0x17f: 0x01d9, -+ // Block 0x6, offset 0x180 -+ 0x180: 0x0008, 0x181: 0x007d, 0x182: 0xe00d, 0x183: 0x0008, 0x184: 0xe00d, 0x185: 0x0008, -+ 0x186: 0x007d, 0x187: 0xe07d, 0x188: 0x0008, 0x189: 0x0095, 0x18a: 0x00ad, 0x18b: 0xe03d, -+ 0x18c: 0x0008, 0x18d: 0x0008, 0x18e: 0x00c5, 0x18f: 0x00dd, 0x190: 0x00f5, 0x191: 0xe01d, -+ 0x192: 0x0008, 0x193: 0x010d, 0x194: 0x0125, 0x195: 0x0008, 0x196: 0x013d, 0x197: 0x013d, -+ 0x198: 0xe00d, 0x199: 0x0008, 0x19a: 0x0008, 0x19b: 0x0008, 0x19c: 0x010d, 0x19d: 0x0155, -+ 0x19e: 0x0008, 0x19f: 0x016d, 0x1a0: 0xe00d, 0x1a1: 0x0008, 0x1a2: 0xe00d, 0x1a3: 0x0008, -+ 0x1a4: 0xe00d, 0x1a5: 0x0008, 0x1a6: 0x0185, 0x1a7: 0xe07d, 0x1a8: 0x0008, 0x1a9: 0x019d, -+ 0x1aa: 0x0008, 0x1ab: 0x0008, 0x1ac: 0xe00d, 0x1ad: 0x0008, 0x1ae: 0x0185, 0x1af: 0xe0fd, -+ 0x1b0: 0x0008, 0x1b1: 0x01b5, 0x1b2: 0x01cd, 0x1b3: 0xe03d, 0x1b4: 0x0008, 0x1b5: 0xe01d, -+ 0x1b6: 0x0008, 0x1b7: 0x01e5, 0x1b8: 0xe00d, 0x1b9: 0x0008, 0x1ba: 0x0008, 0x1bb: 0x0008, -+ 0x1bc: 0xe00d, 0x1bd: 0x0008, 0x1be: 0x0008, 0x1bf: 0x0008, -+ // Block 0x7, offset 0x1c0 -+ 0x1c0: 0x0008, 0x1c1: 0x0008, 0x1c2: 0x0008, 0x1c3: 0x0008, 0x1c4: 0x01e9, 0x1c5: 0x01e9, -+ 0x1c6: 0x01e9, 0x1c7: 0x01fd, 0x1c8: 0x0215, 0x1c9: 0x022d, 0x1ca: 0x0245, 0x1cb: 0x025d, -+ 0x1cc: 0x0275, 0x1cd: 0xe01d, 0x1ce: 0x0008, 0x1cf: 0xe0fd, 0x1d0: 0x0008, 0x1d1: 0xe01d, -+ 0x1d2: 0x0008, 0x1d3: 0xe03d, 0x1d4: 0x0008, 0x1d5: 0xe01d, 0x1d6: 0x0008, 0x1d7: 0xe07d, -+ 0x1d8: 0x0008, 0x1d9: 0xe01d, 0x1da: 0x0008, 0x1db: 0xe03d, 0x1dc: 0x0008, 0x1dd: 0x0008, -+ 0x1de: 0xe00d, 0x1df: 0x0008, 0x1e0: 0xe00d, 0x1e1: 0x0008, 0x1e2: 0xe00d, 0x1e3: 0x0008, -+ 0x1e4: 0xe00d, 0x1e5: 0x0008, 0x1e6: 0xe00d, 0x1e7: 0x0008, 0x1e8: 0xe00d, 0x1e9: 0x0008, -+ 0x1ea: 0xe00d, 0x1eb: 0x0008, 0x1ec: 0xe00d, 0x1ed: 0x0008, 0x1ee: 0xe00d, 0x1ef: 0x0008, -+ 0x1f0: 0x0008, 0x1f1: 0x028d, 0x1f2: 0x02a5, 0x1f3: 0x02bd, 0x1f4: 0xe00d, 0x1f5: 0x0008, -+ 0x1f6: 0x02d5, 0x1f7: 0x02ed, 0x1f8: 0xe00d, 0x1f9: 0x0008, 0x1fa: 0xe00d, 0x1fb: 0x0008, -+ 0x1fc: 0xe00d, 0x1fd: 0x0008, 0x1fe: 0xe00d, 0x1ff: 0x0008, -+ // Block 0x8, offset 0x200 -+ 0x200: 0xe00d, 0x201: 0x0008, 0x202: 0xe00d, 0x203: 0x0008, 0x204: 0xe00d, 0x205: 0x0008, -+ 0x206: 0xe00d, 0x207: 0x0008, 0x208: 0xe00d, 0x209: 0x0008, 0x20a: 0xe00d, 0x20b: 0x0008, -+ 0x20c: 0xe00d, 0x20d: 0x0008, 0x20e: 0xe00d, 0x20f: 0x0008, 0x210: 0xe00d, 0x211: 0x0008, -+ 0x212: 0xe00d, 0x213: 0x0008, 0x214: 0xe00d, 0x215: 0x0008, 0x216: 0xe00d, 0x217: 0x0008, -+ 0x218: 0xe00d, 0x219: 0x0008, 0x21a: 0xe00d, 0x21b: 0x0008, 0x21c: 0xe00d, 0x21d: 0x0008, -+ 0x21e: 0xe00d, 0x21f: 0x0008, 0x220: 0x0305, 0x221: 0x0008, 0x222: 0xe00d, 0x223: 0x0008, -+ 0x224: 0xe00d, 0x225: 0x0008, 0x226: 0xe00d, 0x227: 0x0008, 0x228: 0xe00d, 0x229: 0x0008, -+ 0x22a: 0xe00d, 0x22b: 0x0008, 0x22c: 0xe00d, 0x22d: 0x0008, 0x22e: 0xe00d, 0x22f: 0x0008, -+ 0x230: 0xe00d, 0x231: 0x0008, 0x232: 0xe00d, 0x233: 0x0008, 0x234: 0x0008, 0x235: 0x0008, -+ 0x236: 0x0008, 0x237: 0x0008, 0x238: 0x0008, 0x239: 0x0008, 0x23a: 0x0209, 0x23b: 0xe03d, -+ 0x23c: 0x0008, 0x23d: 0x031d, 0x23e: 0x0229, 0x23f: 0x0008, -+ // Block 0x9, offset 0x240 -+ 0x240: 0x0008, 0x241: 0x0008, 0x242: 0x0018, 0x243: 0x0018, 0x244: 0x0018, 0x245: 0x0018, -+ 0x246: 0x0008, 0x247: 0x0008, 0x248: 0x0008, 0x249: 0x0008, 0x24a: 0x0008, 0x24b: 0x0008, -+ 0x24c: 0x0008, 0x24d: 0x0008, 0x24e: 0x0008, 0x24f: 0x0008, 0x250: 0x0008, 0x251: 0x0008, -+ 0x252: 0x0018, 0x253: 0x0018, 0x254: 0x0018, 0x255: 0x0018, 0x256: 0x0018, 0x257: 0x0018, -+ 0x258: 0x029a, 0x259: 0x02ba, 0x25a: 0x02da, 0x25b: 0x02fa, 0x25c: 0x031a, 0x25d: 0x033a, -+ 0x25e: 0x0018, 0x25f: 0x0018, 0x260: 0x03ad, 0x261: 0x0359, 0x262: 0x01d9, 0x263: 0x0369, -+ 0x264: 0x03c5, 0x265: 0x0018, 0x266: 0x0018, 0x267: 0x0018, 0x268: 0x0018, 0x269: 0x0018, -+ 0x26a: 0x0018, 0x26b: 0x0018, 0x26c: 0x0008, 0x26d: 0x0018, 0x26e: 0x0008, 0x26f: 0x0018, -+ 0x270: 0x0018, 0x271: 0x0018, 0x272: 0x0018, 0x273: 0x0018, 0x274: 0x0018, 0x275: 0x0018, -+ 0x276: 0x0018, 0x277: 0x0018, 0x278: 0x0018, 0x279: 0x0018, 0x27a: 0x0018, 0x27b: 0x0018, -+ 0x27c: 0x0018, 0x27d: 0x0018, 0x27e: 0x0018, 0x27f: 0x0018, -+ // Block 0xa, offset 0x280 -+ 0x280: 0x03dd, 0x281: 0x03dd, 0x282: 0x3308, 0x283: 0x03f5, 0x284: 0x0379, 0x285: 0x040d, -+ 0x286: 0x3308, 0x287: 0x3308, 0x288: 0x3308, 0x289: 0x3308, 0x28a: 0x3308, 0x28b: 0x3308, -+ 0x28c: 0x3308, 0x28d: 0x3308, 0x28e: 0x3308, 0x28f: 0x33c0, 0x290: 0x3308, 0x291: 0x3308, -+ 0x292: 0x3308, 0x293: 0x3308, 0x294: 0x3308, 0x295: 0x3308, 0x296: 0x3308, 0x297: 0x3308, -+ 0x298: 0x3308, 0x299: 0x3308, 0x29a: 0x3308, 0x29b: 0x3308, 0x29c: 0x3308, 0x29d: 0x3308, -+ 0x29e: 0x3308, 0x29f: 0x3308, 0x2a0: 0x3308, 0x2a1: 0x3308, 0x2a2: 0x3308, 0x2a3: 0x3308, -+ 0x2a4: 0x3308, 0x2a5: 0x3308, 0x2a6: 0x3308, 0x2a7: 0x3308, 0x2a8: 0x3308, 0x2a9: 0x3308, -+ 0x2aa: 0x3308, 0x2ab: 0x3308, 0x2ac: 0x3308, 0x2ad: 0x3308, 0x2ae: 0x3308, 0x2af: 0x3308, -+ 0x2b0: 0xe00d, 0x2b1: 0x0008, 0x2b2: 0xe00d, 0x2b3: 0x0008, 0x2b4: 0x0425, 0x2b5: 0x0008, -+ 0x2b6: 0xe00d, 0x2b7: 0x0008, 0x2b8: 0x0040, 0x2b9: 0x0040, 0x2ba: 0x03a2, 0x2bb: 0x0008, -+ 0x2bc: 0x0008, 0x2bd: 0x0008, 0x2be: 0x03c2, 0x2bf: 0x043d, -+ // Block 0xb, offset 0x2c0 -+ 0x2c0: 0x0040, 0x2c1: 0x0040, 0x2c2: 0x0040, 0x2c3: 0x0040, 0x2c4: 0x008a, 0x2c5: 0x03d2, -+ 0x2c6: 0xe155, 0x2c7: 0x0455, 0x2c8: 0xe12d, 0x2c9: 0xe13d, 0x2ca: 0xe12d, 0x2cb: 0x0040, -+ 0x2cc: 0x03dd, 0x2cd: 0x0040, 0x2ce: 0x046d, 0x2cf: 0x0485, 0x2d0: 0x0008, 0x2d1: 0xe105, -+ 0x2d2: 0xe105, 0x2d3: 0xe105, 0x2d4: 0xe105, 0x2d5: 0xe105, 0x2d6: 0xe105, 0x2d7: 0xe105, -+ 0x2d8: 0xe105, 0x2d9: 0xe105, 0x2da: 0xe105, 0x2db: 0xe105, 0x2dc: 0xe105, 0x2dd: 0xe105, -+ 0x2de: 0xe105, 0x2df: 0xe105, 0x2e0: 0x049d, 0x2e1: 0x049d, 0x2e2: 0x0040, 0x2e3: 0x049d, -+ 0x2e4: 0x049d, 0x2e5: 0x049d, 0x2e6: 0x049d, 0x2e7: 0x049d, 0x2e8: 0x049d, 0x2e9: 0x049d, -+ 0x2ea: 0x049d, 0x2eb: 0x049d, 0x2ec: 0x0008, 0x2ed: 0x0008, 0x2ee: 0x0008, 0x2ef: 0x0008, -+ 0x2f0: 0x0008, 0x2f1: 0x0008, 0x2f2: 0x0008, 0x2f3: 0x0008, 0x2f4: 0x0008, 0x2f5: 0x0008, -+ 0x2f6: 0x0008, 0x2f7: 0x0008, 0x2f8: 0x0008, 0x2f9: 0x0008, 0x2fa: 0x0008, 0x2fb: 0x0008, -+ 0x2fc: 0x0008, 0x2fd: 0x0008, 0x2fe: 0x0008, 0x2ff: 0x0008, -+ // Block 0xc, offset 0x300 -+ 0x300: 0x0008, 0x301: 0x0008, 0x302: 0xe00f, 0x303: 0x0008, 0x304: 0x0008, 0x305: 0x0008, -+ 0x306: 0x0008, 0x307: 0x0008, 0x308: 0x0008, 0x309: 0x0008, 0x30a: 0x0008, 0x30b: 0x0008, -+ 0x30c: 0x0008, 0x30d: 0x0008, 0x30e: 0x0008, 0x30f: 0xe0c5, 0x310: 0x04b5, 0x311: 0x04cd, -+ 0x312: 0xe0bd, 0x313: 0xe0f5, 0x314: 0xe0fd, 0x315: 0xe09d, 0x316: 0xe0b5, 0x317: 0x0008, -+ 0x318: 0xe00d, 0x319: 0x0008, 0x31a: 0xe00d, 0x31b: 0x0008, 0x31c: 0xe00d, 0x31d: 0x0008, -+ 0x31e: 0xe00d, 0x31f: 0x0008, 0x320: 0xe00d, 0x321: 0x0008, 0x322: 0xe00d, 0x323: 0x0008, -+ 0x324: 0xe00d, 0x325: 0x0008, 0x326: 0xe00d, 0x327: 0x0008, 0x328: 0xe00d, 0x329: 0x0008, -+ 0x32a: 0xe00d, 0x32b: 0x0008, 0x32c: 0xe00d, 0x32d: 0x0008, 0x32e: 0xe00d, 0x32f: 0x0008, -+ 0x330: 0x04e5, 0x331: 0xe185, 0x332: 0xe18d, 0x333: 0x0008, 0x334: 0x04fd, 0x335: 0x03dd, -+ 0x336: 0x0018, 0x337: 0xe07d, 0x338: 0x0008, 0x339: 0xe1d5, 0x33a: 0xe00d, 0x33b: 0x0008, -+ 0x33c: 0x0008, 0x33d: 0x0515, 0x33e: 0x052d, 0x33f: 0x052d, -+ // Block 0xd, offset 0x340 -+ 0x340: 0x0008, 0x341: 0x0008, 0x342: 0x0008, 0x343: 0x0008, 0x344: 0x0008, 0x345: 0x0008, -+ 0x346: 0x0008, 0x347: 0x0008, 0x348: 0x0008, 0x349: 0x0008, 0x34a: 0x0008, 0x34b: 0x0008, -+ 0x34c: 0x0008, 0x34d: 0x0008, 0x34e: 0x0008, 0x34f: 0x0008, 0x350: 0x0008, 0x351: 0x0008, -+ 0x352: 0x0008, 0x353: 0x0008, 0x354: 0x0008, 0x355: 0x0008, 0x356: 0x0008, 0x357: 0x0008, -+ 0x358: 0x0008, 0x359: 0x0008, 0x35a: 0x0008, 0x35b: 0x0008, 0x35c: 0x0008, 0x35d: 0x0008, -+ 0x35e: 0x0008, 0x35f: 0x0008, 0x360: 0xe00d, 0x361: 0x0008, 0x362: 0xe00d, 0x363: 0x0008, -+ 0x364: 0xe00d, 0x365: 0x0008, 0x366: 0xe00d, 0x367: 0x0008, 0x368: 0xe00d, 0x369: 0x0008, -+ 0x36a: 0xe00d, 0x36b: 0x0008, 0x36c: 0xe00d, 0x36d: 0x0008, 0x36e: 0xe00d, 0x36f: 0x0008, -+ 0x370: 0xe00d, 0x371: 0x0008, 0x372: 0xe00d, 0x373: 0x0008, 0x374: 0xe00d, 0x375: 0x0008, -+ 0x376: 0xe00d, 0x377: 0x0008, 0x378: 0xe00d, 0x379: 0x0008, 0x37a: 0xe00d, 0x37b: 0x0008, -+ 0x37c: 0xe00d, 0x37d: 0x0008, 0x37e: 0xe00d, 0x37f: 0x0008, -+ // Block 0xe, offset 0x380 -+ 0x380: 0xe00d, 0x381: 0x0008, 0x382: 0x0018, 0x383: 0x3308, 0x384: 0x3308, 0x385: 0x3308, -+ 0x386: 0x3308, 0x387: 0x3308, 0x388: 0x3318, 0x389: 0x3318, 0x38a: 0xe00d, 0x38b: 0x0008, -+ 0x38c: 0xe00d, 0x38d: 0x0008, 0x38e: 0xe00d, 0x38f: 0x0008, 0x390: 0xe00d, 0x391: 0x0008, -+ 0x392: 0xe00d, 0x393: 0x0008, 0x394: 0xe00d, 0x395: 0x0008, 0x396: 0xe00d, 0x397: 0x0008, -+ 0x398: 0xe00d, 0x399: 0x0008, 0x39a: 0xe00d, 0x39b: 0x0008, 0x39c: 0xe00d, 0x39d: 0x0008, -+ 0x39e: 0xe00d, 0x39f: 0x0008, 0x3a0: 0xe00d, 0x3a1: 0x0008, 0x3a2: 0xe00d, 0x3a3: 0x0008, -+ 0x3a4: 0xe00d, 0x3a5: 0x0008, 0x3a6: 0xe00d, 0x3a7: 0x0008, 0x3a8: 0xe00d, 0x3a9: 0x0008, -+ 0x3aa: 0xe00d, 0x3ab: 0x0008, 0x3ac: 0xe00d, 0x3ad: 0x0008, 0x3ae: 0xe00d, 0x3af: 0x0008, -+ 0x3b0: 0xe00d, 0x3b1: 0x0008, 0x3b2: 0xe00d, 0x3b3: 0x0008, 0x3b4: 0xe00d, 0x3b5: 0x0008, -+ 0x3b6: 0xe00d, 0x3b7: 0x0008, 0x3b8: 0xe00d, 0x3b9: 0x0008, 0x3ba: 0xe00d, 0x3bb: 0x0008, -+ 0x3bc: 0xe00d, 0x3bd: 0x0008, 0x3be: 0xe00d, 0x3bf: 0x0008, -+ // Block 0xf, offset 0x3c0 -+ 0x3c0: 0x0040, 0x3c1: 0xe01d, 0x3c2: 0x0008, 0x3c3: 0xe03d, 0x3c4: 0x0008, 0x3c5: 0xe01d, -+ 0x3c6: 0x0008, 0x3c7: 0xe07d, 0x3c8: 0x0008, 0x3c9: 0xe01d, 0x3ca: 0x0008, 0x3cb: 0xe03d, -+ 0x3cc: 0x0008, 0x3cd: 0xe01d, 0x3ce: 0x0008, 0x3cf: 0x0008, 0x3d0: 0xe00d, 0x3d1: 0x0008, -+ 0x3d2: 0xe00d, 0x3d3: 0x0008, 0x3d4: 0xe00d, 0x3d5: 0x0008, 0x3d6: 0xe00d, 0x3d7: 0x0008, -+ 0x3d8: 0xe00d, 0x3d9: 0x0008, 0x3da: 0xe00d, 0x3db: 0x0008, 0x3dc: 0xe00d, 0x3dd: 0x0008, -+ 0x3de: 0xe00d, 0x3df: 0x0008, 0x3e0: 0xe00d, 0x3e1: 0x0008, 0x3e2: 0xe00d, 0x3e3: 0x0008, -+ 0x3e4: 0xe00d, 0x3e5: 0x0008, 0x3e6: 0xe00d, 0x3e7: 0x0008, 0x3e8: 0xe00d, 0x3e9: 0x0008, -+ 0x3ea: 0xe00d, 0x3eb: 0x0008, 0x3ec: 0xe00d, 0x3ed: 0x0008, 0x3ee: 0xe00d, 0x3ef: 0x0008, -+ 0x3f0: 0xe00d, 0x3f1: 0x0008, 0x3f2: 0xe00d, 0x3f3: 0x0008, 0x3f4: 0xe00d, 0x3f5: 0x0008, -+ 0x3f6: 0xe00d, 0x3f7: 0x0008, 0x3f8: 0xe00d, 0x3f9: 0x0008, 0x3fa: 0xe00d, 0x3fb: 0x0008, -+ 0x3fc: 0xe00d, 0x3fd: 0x0008, 0x3fe: 0xe00d, 0x3ff: 0x0008, -+ // Block 0x10, offset 0x400 -+ 0x400: 0xe00d, 0x401: 0x0008, 0x402: 0xe00d, 0x403: 0x0008, 0x404: 0xe00d, 0x405: 0x0008, -+ 0x406: 0xe00d, 0x407: 0x0008, 0x408: 0xe00d, 0x409: 0x0008, 0x40a: 0xe00d, 0x40b: 0x0008, -+ 0x40c: 0xe00d, 0x40d: 0x0008, 0x40e: 0xe00d, 0x40f: 0x0008, 0x410: 0xe00d, 0x411: 0x0008, -+ 0x412: 0xe00d, 0x413: 0x0008, 0x414: 0xe00d, 0x415: 0x0008, 0x416: 0xe00d, 0x417: 0x0008, -+ 0x418: 0xe00d, 0x419: 0x0008, 0x41a: 0xe00d, 0x41b: 0x0008, 0x41c: 0xe00d, 0x41d: 0x0008, -+ 0x41e: 0xe00d, 0x41f: 0x0008, 0x420: 0xe00d, 0x421: 0x0008, 0x422: 0xe00d, 0x423: 0x0008, -+ 0x424: 0xe00d, 0x425: 0x0008, 0x426: 0xe00d, 0x427: 0x0008, 0x428: 0xe00d, 0x429: 0x0008, -+ 0x42a: 0xe00d, 0x42b: 0x0008, 0x42c: 0xe00d, 0x42d: 0x0008, 0x42e: 0xe00d, 0x42f: 0x0008, -+ 0x430: 0x0040, 0x431: 0x03f5, 0x432: 0x03f5, 0x433: 0x03f5, 0x434: 0x03f5, 0x435: 0x03f5, -+ 0x436: 0x03f5, 0x437: 0x03f5, 0x438: 0x03f5, 0x439: 0x03f5, 0x43a: 0x03f5, 0x43b: 0x03f5, -+ 0x43c: 0x03f5, 0x43d: 0x03f5, 0x43e: 0x03f5, 0x43f: 0x03f5, -+ // Block 0x11, offset 0x440 -+ 0x440: 0x0840, 0x441: 0x0840, 0x442: 0x0840, 0x443: 0x0840, 0x444: 0x0840, 0x445: 0x0840, -+ 0x446: 0x0018, 0x447: 0x0018, 0x448: 0x0818, 0x449: 0x0018, 0x44a: 0x0018, 0x44b: 0x0818, -+ 0x44c: 0x0018, 0x44d: 0x0818, 0x44e: 0x0018, 0x44f: 0x0018, 0x450: 0x3308, 0x451: 0x3308, -+ 0x452: 0x3308, 0x453: 0x3308, 0x454: 0x3308, 0x455: 0x3308, 0x456: 0x3308, 0x457: 0x3308, -+ 0x458: 0x3308, 0x459: 0x3308, 0x45a: 0x3308, 0x45b: 0x0818, 0x45c: 0x0b40, 0x45d: 0x0040, -+ 0x45e: 0x0818, 0x45f: 0x0818, 0x460: 0x0a08, 0x461: 0x0808, 0x462: 0x0c08, 0x463: 0x0c08, -+ 0x464: 0x0c08, 0x465: 0x0c08, 0x466: 0x0a08, 0x467: 0x0c08, 0x468: 0x0a08, 0x469: 0x0c08, -+ 0x46a: 0x0a08, 0x46b: 0x0a08, 0x46c: 0x0a08, 0x46d: 0x0a08, 0x46e: 0x0a08, 0x46f: 0x0c08, -+ 0x470: 0x0c08, 0x471: 0x0c08, 0x472: 0x0c08, 0x473: 0x0a08, 0x474: 0x0a08, 0x475: 0x0a08, -+ 0x476: 0x0a08, 0x477: 0x0a08, 0x478: 0x0a08, 0x479: 0x0a08, 0x47a: 0x0a08, 0x47b: 0x0a08, -+ 0x47c: 0x0a08, 0x47d: 0x0a08, 0x47e: 0x0a08, 0x47f: 0x0a08, -+ // Block 0x12, offset 0x480 -+ 0x480: 0x0818, 0x481: 0x0a08, 0x482: 0x0a08, 0x483: 0x0a08, 0x484: 0x0a08, 0x485: 0x0a08, -+ 0x486: 0x0a08, 0x487: 0x0a08, 0x488: 0x0c08, 0x489: 0x0a08, 0x48a: 0x0a08, 0x48b: 0x3308, -+ 0x48c: 0x3308, 0x48d: 0x3308, 0x48e: 0x3308, 0x48f: 0x3308, 0x490: 0x3308, 0x491: 0x3308, -+ 0x492: 0x3308, 0x493: 0x3308, 0x494: 0x3308, 0x495: 0x3308, 0x496: 0x3308, 0x497: 0x3308, -+ 0x498: 0x3308, 0x499: 0x3308, 0x49a: 0x3308, 0x49b: 0x3308, 0x49c: 0x3308, 0x49d: 0x3308, -+ 0x49e: 0x3308, 0x49f: 0x3308, 0x4a0: 0x0808, 0x4a1: 0x0808, 0x4a2: 0x0808, 0x4a3: 0x0808, -+ 0x4a4: 0x0808, 0x4a5: 0x0808, 0x4a6: 0x0808, 0x4a7: 0x0808, 0x4a8: 0x0808, 0x4a9: 0x0808, -+ 0x4aa: 0x0018, 0x4ab: 0x0818, 0x4ac: 0x0818, 0x4ad: 0x0818, 0x4ae: 0x0a08, 0x4af: 0x0a08, -+ 0x4b0: 0x3308, 0x4b1: 0x0c08, 0x4b2: 0x0c08, 0x4b3: 0x0c08, 0x4b4: 0x0808, 0x4b5: 0x0429, -+ 0x4b6: 0x0451, 0x4b7: 0x0479, 0x4b8: 0x04a1, 0x4b9: 0x0a08, 0x4ba: 0x0a08, 0x4bb: 0x0a08, -+ 0x4bc: 0x0a08, 0x4bd: 0x0a08, 0x4be: 0x0a08, 0x4bf: 0x0a08, -+ // Block 0x13, offset 0x4c0 -+ 0x4c0: 0x0c08, 0x4c1: 0x0a08, 0x4c2: 0x0a08, 0x4c3: 0x0c08, 0x4c4: 0x0c08, 0x4c5: 0x0c08, -+ 0x4c6: 0x0c08, 0x4c7: 0x0c08, 0x4c8: 0x0c08, 0x4c9: 0x0c08, 0x4ca: 0x0c08, 0x4cb: 0x0c08, -+ 0x4cc: 0x0a08, 0x4cd: 0x0c08, 0x4ce: 0x0a08, 0x4cf: 0x0c08, 0x4d0: 0x0a08, 0x4d1: 0x0a08, -+ 0x4d2: 0x0c08, 0x4d3: 0x0c08, 0x4d4: 0x0818, 0x4d5: 0x0c08, 0x4d6: 0x3308, 0x4d7: 0x3308, -+ 0x4d8: 0x3308, 0x4d9: 0x3308, 0x4da: 0x3308, 0x4db: 0x3308, 0x4dc: 0x3308, 0x4dd: 0x0840, -+ 0x4de: 0x0018, 0x4df: 0x3308, 0x4e0: 0x3308, 0x4e1: 0x3308, 0x4e2: 0x3308, 0x4e3: 0x3308, -+ 0x4e4: 0x3308, 0x4e5: 0x0808, 0x4e6: 0x0808, 0x4e7: 0x3308, 0x4e8: 0x3308, 0x4e9: 0x0018, -+ 0x4ea: 0x3308, 0x4eb: 0x3308, 0x4ec: 0x3308, 0x4ed: 0x3308, 0x4ee: 0x0c08, 0x4ef: 0x0c08, -+ 0x4f0: 0x0008, 0x4f1: 0x0008, 0x4f2: 0x0008, 0x4f3: 0x0008, 0x4f4: 0x0008, 0x4f5: 0x0008, -+ 0x4f6: 0x0008, 0x4f7: 0x0008, 0x4f8: 0x0008, 0x4f9: 0x0008, 0x4fa: 0x0a08, 0x4fb: 0x0a08, -+ 0x4fc: 0x0a08, 0x4fd: 0x0808, 0x4fe: 0x0808, 0x4ff: 0x0a08, -+ // Block 0x14, offset 0x500 -+ 0x500: 0x0818, 0x501: 0x0818, 0x502: 0x0818, 0x503: 0x0818, 0x504: 0x0818, 0x505: 0x0818, -+ 0x506: 0x0818, 0x507: 0x0818, 0x508: 0x0818, 0x509: 0x0818, 0x50a: 0x0818, 0x50b: 0x0818, -+ 0x50c: 0x0818, 0x50d: 0x0818, 0x50e: 0x0040, 0x50f: 0x0b40, 0x510: 0x0c08, 0x511: 0x3308, -+ 0x512: 0x0a08, 0x513: 0x0a08, 0x514: 0x0a08, 0x515: 0x0c08, 0x516: 0x0c08, 0x517: 0x0c08, -+ 0x518: 0x0c08, 0x519: 0x0c08, 0x51a: 0x0a08, 0x51b: 0x0a08, 0x51c: 0x0a08, 0x51d: 0x0a08, -+ 0x51e: 0x0c08, 0x51f: 0x0a08, 0x520: 0x0a08, 0x521: 0x0a08, 0x522: 0x0a08, 0x523: 0x0a08, -+ 0x524: 0x0a08, 0x525: 0x0a08, 0x526: 0x0a08, 0x527: 0x0a08, 0x528: 0x0c08, 0x529: 0x0a08, -+ 0x52a: 0x0c08, 0x52b: 0x0a08, 0x52c: 0x0c08, 0x52d: 0x0a08, 0x52e: 0x0a08, 0x52f: 0x0c08, -+ 0x530: 0x3308, 0x531: 0x3308, 0x532: 0x3308, 0x533: 0x3308, 0x534: 0x3308, 0x535: 0x3308, -+ 0x536: 0x3308, 0x537: 0x3308, 0x538: 0x3308, 0x539: 0x3308, 0x53a: 0x3308, 0x53b: 0x3308, -+ 0x53c: 0x3308, 0x53d: 0x3308, 0x53e: 0x3308, 0x53f: 0x3308, -+ // Block 0x15, offset 0x540 -+ 0x540: 0x0c08, 0x541: 0x0a08, 0x542: 0x0a08, 0x543: 0x0a08, 0x544: 0x0a08, 0x545: 0x0a08, -+ 0x546: 0x0c08, 0x547: 0x0c08, 0x548: 0x0a08, 0x549: 0x0c08, 0x54a: 0x0a08, 0x54b: 0x0a08, -+ 0x54c: 0x0a08, 0x54d: 0x0a08, 0x54e: 0x0a08, 0x54f: 0x0a08, 0x550: 0x0a08, 0x551: 0x0a08, -+ 0x552: 0x0a08, 0x553: 0x0a08, 0x554: 0x0c08, 0x555: 0x0a08, 0x556: 0x0c08, 0x557: 0x0c08, -+ 0x558: 0x0c08, 0x559: 0x3308, 0x55a: 0x3308, 0x55b: 0x3308, 0x55c: 0x0040, 0x55d: 0x0040, -+ 0x55e: 0x0818, 0x55f: 0x0040, 0x560: 0x0a08, 0x561: 0x0808, 0x562: 0x0a08, 0x563: 0x0a08, -+ 0x564: 0x0a08, 0x565: 0x0a08, 0x566: 0x0808, 0x567: 0x0c08, 0x568: 0x0a08, 0x569: 0x0c08, -+ 0x56a: 0x0c08, 0x56b: 0x0040, 0x56c: 0x0040, 0x56d: 0x0040, 0x56e: 0x0040, 0x56f: 0x0040, -+ 0x570: 0x0040, 0x571: 0x0040, 0x572: 0x0040, 0x573: 0x0040, 0x574: 0x0040, 0x575: 0x0040, -+ 0x576: 0x0040, 0x577: 0x0040, 0x578: 0x0040, 0x579: 0x0040, 0x57a: 0x0040, 0x57b: 0x0040, -+ 0x57c: 0x0040, 0x57d: 0x0040, 0x57e: 0x0040, 0x57f: 0x0040, -+ // Block 0x16, offset 0x580 -+ 0x580: 0x3008, 0x581: 0x3308, 0x582: 0x3308, 0x583: 0x3308, 0x584: 0x3308, 0x585: 0x3308, -+ 0x586: 0x3308, 0x587: 0x3308, 0x588: 0x3308, 0x589: 0x3008, 0x58a: 0x3008, 0x58b: 0x3008, -+ 0x58c: 0x3008, 0x58d: 0x3b08, 0x58e: 0x3008, 0x58f: 0x3008, 0x590: 0x0008, 0x591: 0x3308, -+ 0x592: 0x3308, 0x593: 0x3308, 0x594: 0x3308, 0x595: 0x3308, 0x596: 0x3308, 0x597: 0x3308, -+ 0x598: 0x04c9, 0x599: 0x0501, 0x59a: 0x0539, 0x59b: 0x0571, 0x59c: 0x05a9, 0x59d: 0x05e1, -+ 0x59e: 0x0619, 0x59f: 0x0651, 0x5a0: 0x0008, 0x5a1: 0x0008, 0x5a2: 0x3308, 0x5a3: 0x3308, -+ 0x5a4: 0x0018, 0x5a5: 0x0018, 0x5a6: 0x0008, 0x5a7: 0x0008, 0x5a8: 0x0008, 0x5a9: 0x0008, -+ 0x5aa: 0x0008, 0x5ab: 0x0008, 0x5ac: 0x0008, 0x5ad: 0x0008, 0x5ae: 0x0008, 0x5af: 0x0008, -+ 0x5b0: 0x0018, 0x5b1: 0x0008, 0x5b2: 0x0008, 0x5b3: 0x0008, 0x5b4: 0x0008, 0x5b5: 0x0008, -+ 0x5b6: 0x0008, 0x5b7: 0x0008, 0x5b8: 0x0008, 0x5b9: 0x0008, 0x5ba: 0x0008, 0x5bb: 0x0008, -+ 0x5bc: 0x0008, 0x5bd: 0x0008, 0x5be: 0x0008, 0x5bf: 0x0008, -+ // Block 0x17, offset 0x5c0 -+ 0x5c0: 0x0008, 0x5c1: 0x3308, 0x5c2: 0x3008, 0x5c3: 0x3008, 0x5c4: 0x0040, 0x5c5: 0x0008, -+ 0x5c6: 0x0008, 0x5c7: 0x0008, 0x5c8: 0x0008, 0x5c9: 0x0008, 0x5ca: 0x0008, 0x5cb: 0x0008, -+ 0x5cc: 0x0008, 0x5cd: 0x0040, 0x5ce: 0x0040, 0x5cf: 0x0008, 0x5d0: 0x0008, 0x5d1: 0x0040, -+ 0x5d2: 0x0040, 0x5d3: 0x0008, 0x5d4: 0x0008, 0x5d5: 0x0008, 0x5d6: 0x0008, 0x5d7: 0x0008, -+ 0x5d8: 0x0008, 0x5d9: 0x0008, 0x5da: 0x0008, 0x5db: 0x0008, 0x5dc: 0x0008, 0x5dd: 0x0008, -+ 0x5de: 0x0008, 0x5df: 0x0008, 0x5e0: 0x0008, 0x5e1: 0x0008, 0x5e2: 0x0008, 0x5e3: 0x0008, -+ 0x5e4: 0x0008, 0x5e5: 0x0008, 0x5e6: 0x0008, 0x5e7: 0x0008, 0x5e8: 0x0008, 0x5e9: 0x0040, -+ 0x5ea: 0x0008, 0x5eb: 0x0008, 0x5ec: 0x0008, 0x5ed: 0x0008, 0x5ee: 0x0008, 0x5ef: 0x0008, -+ 0x5f0: 0x0008, 0x5f1: 0x0040, 0x5f2: 0x0008, 0x5f3: 0x0040, 0x5f4: 0x0040, 0x5f5: 0x0040, -+ 0x5f6: 0x0008, 0x5f7: 0x0008, 0x5f8: 0x0008, 0x5f9: 0x0008, 0x5fa: 0x0040, 0x5fb: 0x0040, -+ 0x5fc: 0x3308, 0x5fd: 0x0008, 0x5fe: 0x3008, 0x5ff: 0x3008, -+ // Block 0x18, offset 0x600 -+ 0x600: 0x3008, 0x601: 0x3308, 0x602: 0x3308, 0x603: 0x3308, 0x604: 0x3308, 0x605: 0x0040, -+ 0x606: 0x0040, 0x607: 0x3008, 0x608: 0x3008, 0x609: 0x0040, 0x60a: 0x0040, 0x60b: 0x3008, -+ 0x60c: 0x3008, 0x60d: 0x3b08, 0x60e: 0x0008, 0x60f: 0x0040, 0x610: 0x0040, 0x611: 0x0040, -+ 0x612: 0x0040, 0x613: 0x0040, 0x614: 0x0040, 0x615: 0x0040, 0x616: 0x0040, 0x617: 0x3008, -+ 0x618: 0x0040, 0x619: 0x0040, 0x61a: 0x0040, 0x61b: 0x0040, 0x61c: 0x0689, 0x61d: 0x06c1, -+ 0x61e: 0x0040, 0x61f: 0x06f9, 0x620: 0x0008, 0x621: 0x0008, 0x622: 0x3308, 0x623: 0x3308, -+ 0x624: 0x0040, 0x625: 0x0040, 0x626: 0x0008, 0x627: 0x0008, 0x628: 0x0008, 0x629: 0x0008, -+ 0x62a: 0x0008, 0x62b: 0x0008, 0x62c: 0x0008, 0x62d: 0x0008, 0x62e: 0x0008, 0x62f: 0x0008, -+ 0x630: 0x0008, 0x631: 0x0008, 0x632: 0x0018, 0x633: 0x0018, 0x634: 0x0018, 0x635: 0x0018, -+ 0x636: 0x0018, 0x637: 0x0018, 0x638: 0x0018, 0x639: 0x0018, 0x63a: 0x0018, 0x63b: 0x0018, -+ 0x63c: 0x0008, 0x63d: 0x0018, 0x63e: 0x3308, 0x63f: 0x0040, -+ // Block 0x19, offset 0x640 -+ 0x640: 0x0040, 0x641: 0x3308, 0x642: 0x3308, 0x643: 0x3008, 0x644: 0x0040, 0x645: 0x0008, -+ 0x646: 0x0008, 0x647: 0x0008, 0x648: 0x0008, 0x649: 0x0008, 0x64a: 0x0008, 0x64b: 0x0040, -+ 0x64c: 0x0040, 0x64d: 0x0040, 0x64e: 0x0040, 0x64f: 0x0008, 0x650: 0x0008, 0x651: 0x0040, -+ 0x652: 0x0040, 0x653: 0x0008, 0x654: 0x0008, 0x655: 0x0008, 0x656: 0x0008, 0x657: 0x0008, -+ 0x658: 0x0008, 0x659: 0x0008, 0x65a: 0x0008, 0x65b: 0x0008, 0x65c: 0x0008, 0x65d: 0x0008, -+ 0x65e: 0x0008, 0x65f: 0x0008, 0x660: 0x0008, 0x661: 0x0008, 0x662: 0x0008, 0x663: 0x0008, -+ 0x664: 0x0008, 0x665: 0x0008, 0x666: 0x0008, 0x667: 0x0008, 0x668: 0x0008, 0x669: 0x0040, -+ 0x66a: 0x0008, 0x66b: 0x0008, 0x66c: 0x0008, 0x66d: 0x0008, 0x66e: 0x0008, 0x66f: 0x0008, -+ 0x670: 0x0008, 0x671: 0x0040, 0x672: 0x0008, 0x673: 0x0731, 0x674: 0x0040, 0x675: 0x0008, -+ 0x676: 0x0769, 0x677: 0x0040, 0x678: 0x0008, 0x679: 0x0008, 0x67a: 0x0040, 0x67b: 0x0040, -+ 0x67c: 0x3308, 0x67d: 0x0040, 0x67e: 0x3008, 0x67f: 0x3008, -+ // Block 0x1a, offset 0x680 -+ 0x680: 0x3008, 0x681: 0x3308, 0x682: 0x3308, 0x683: 0x0040, 0x684: 0x0040, 0x685: 0x0040, -+ 0x686: 0x0040, 0x687: 0x3308, 0x688: 0x3308, 0x689: 0x0040, 0x68a: 0x0040, 0x68b: 0x3308, -+ 0x68c: 0x3308, 0x68d: 0x3b08, 0x68e: 0x0040, 0x68f: 0x0040, 0x690: 0x0040, 0x691: 0x3308, -+ 0x692: 0x0040, 0x693: 0x0040, 0x694: 0x0040, 0x695: 0x0040, 0x696: 0x0040, 0x697: 0x0040, -+ 0x698: 0x0040, 0x699: 0x07a1, 0x69a: 0x07d9, 0x69b: 0x0811, 0x69c: 0x0008, 0x69d: 0x0040, -+ 0x69e: 0x0849, 0x69f: 0x0040, 0x6a0: 0x0040, 0x6a1: 0x0040, 0x6a2: 0x0040, 0x6a3: 0x0040, -+ 0x6a4: 0x0040, 0x6a5: 0x0040, 0x6a6: 0x0008, 0x6a7: 0x0008, 0x6a8: 0x0008, 0x6a9: 0x0008, -+ 0x6aa: 0x0008, 0x6ab: 0x0008, 0x6ac: 0x0008, 0x6ad: 0x0008, 0x6ae: 0x0008, 0x6af: 0x0008, -+ 0x6b0: 0x3308, 0x6b1: 0x3308, 0x6b2: 0x0008, 0x6b3: 0x0008, 0x6b4: 0x0008, 0x6b5: 0x3308, -+ 0x6b6: 0x0018, 0x6b7: 0x0040, 0x6b8: 0x0040, 0x6b9: 0x0040, 0x6ba: 0x0040, 0x6bb: 0x0040, -+ 0x6bc: 0x0040, 0x6bd: 0x0040, 0x6be: 0x0040, 0x6bf: 0x0040, -+ // Block 0x1b, offset 0x6c0 -+ 0x6c0: 0x0040, 0x6c1: 0x3308, 0x6c2: 0x3308, 0x6c3: 0x3008, 0x6c4: 0x0040, 0x6c5: 0x0008, -+ 0x6c6: 0x0008, 0x6c7: 0x0008, 0x6c8: 0x0008, 0x6c9: 0x0008, 0x6ca: 0x0008, 0x6cb: 0x0008, -+ 0x6cc: 0x0008, 0x6cd: 0x0008, 0x6ce: 0x0040, 0x6cf: 0x0008, 0x6d0: 0x0008, 0x6d1: 0x0008, -+ 0x6d2: 0x0040, 0x6d3: 0x0008, 0x6d4: 0x0008, 0x6d5: 0x0008, 0x6d6: 0x0008, 0x6d7: 0x0008, -+ 0x6d8: 0x0008, 0x6d9: 0x0008, 0x6da: 0x0008, 0x6db: 0x0008, 0x6dc: 0x0008, 0x6dd: 0x0008, -+ 0x6de: 0x0008, 0x6df: 0x0008, 0x6e0: 0x0008, 0x6e1: 0x0008, 0x6e2: 0x0008, 0x6e3: 0x0008, -+ 0x6e4: 0x0008, 0x6e5: 0x0008, 0x6e6: 0x0008, 0x6e7: 0x0008, 0x6e8: 0x0008, 0x6e9: 0x0040, -+ 0x6ea: 0x0008, 0x6eb: 0x0008, 0x6ec: 0x0008, 0x6ed: 0x0008, 0x6ee: 0x0008, 0x6ef: 0x0008, -+ 0x6f0: 0x0008, 0x6f1: 0x0040, 0x6f2: 0x0008, 0x6f3: 0x0008, 0x6f4: 0x0040, 0x6f5: 0x0008, -+ 0x6f6: 0x0008, 0x6f7: 0x0008, 0x6f8: 0x0008, 0x6f9: 0x0008, 0x6fa: 0x0040, 0x6fb: 0x0040, -+ 0x6fc: 0x3308, 0x6fd: 0x0008, 0x6fe: 0x3008, 0x6ff: 0x3008, -+ // Block 0x1c, offset 0x700 -+ 0x700: 0x3008, 0x701: 0x3308, 0x702: 0x3308, 0x703: 0x3308, 0x704: 0x3308, 0x705: 0x3308, -+ 0x706: 0x0040, 0x707: 0x3308, 0x708: 0x3308, 0x709: 0x3008, 0x70a: 0x0040, 0x70b: 0x3008, -+ 0x70c: 0x3008, 0x70d: 0x3b08, 0x70e: 0x0040, 0x70f: 0x0040, 0x710: 0x0008, 0x711: 0x0040, -+ 0x712: 0x0040, 0x713: 0x0040, 0x714: 0x0040, 0x715: 0x0040, 0x716: 0x0040, 0x717: 0x0040, -+ 0x718: 0x0040, 0x719: 0x0040, 0x71a: 0x0040, 0x71b: 0x0040, 0x71c: 0x0040, 0x71d: 0x0040, -+ 0x71e: 0x0040, 0x71f: 0x0040, 0x720: 0x0008, 0x721: 0x0008, 0x722: 0x3308, 0x723: 0x3308, -+ 0x724: 0x0040, 0x725: 0x0040, 0x726: 0x0008, 0x727: 0x0008, 0x728: 0x0008, 0x729: 0x0008, -+ 0x72a: 0x0008, 0x72b: 0x0008, 0x72c: 0x0008, 0x72d: 0x0008, 0x72e: 0x0008, 0x72f: 0x0008, -+ 0x730: 0x0018, 0x731: 0x0018, 0x732: 0x0040, 0x733: 0x0040, 0x734: 0x0040, 0x735: 0x0040, -+ 0x736: 0x0040, 0x737: 0x0040, 0x738: 0x0040, 0x739: 0x0008, 0x73a: 0x3308, 0x73b: 0x3308, -+ 0x73c: 0x3308, 0x73d: 0x3308, 0x73e: 0x3308, 0x73f: 0x3308, -+ // Block 0x1d, offset 0x740 -+ 0x740: 0x0040, 0x741: 0x3308, 0x742: 0x3008, 0x743: 0x3008, 0x744: 0x0040, 0x745: 0x0008, -+ 0x746: 0x0008, 0x747: 0x0008, 0x748: 0x0008, 0x749: 0x0008, 0x74a: 0x0008, 0x74b: 0x0008, -+ 0x74c: 0x0008, 0x74d: 0x0040, 0x74e: 0x0040, 0x74f: 0x0008, 0x750: 0x0008, 0x751: 0x0040, -+ 0x752: 0x0040, 0x753: 0x0008, 0x754: 0x0008, 0x755: 0x0008, 0x756: 0x0008, 0x757: 0x0008, -+ 0x758: 0x0008, 0x759: 0x0008, 0x75a: 0x0008, 0x75b: 0x0008, 0x75c: 0x0008, 0x75d: 0x0008, -+ 0x75e: 0x0008, 0x75f: 0x0008, 0x760: 0x0008, 0x761: 0x0008, 0x762: 0x0008, 0x763: 0x0008, -+ 0x764: 0x0008, 0x765: 0x0008, 0x766: 0x0008, 0x767: 0x0008, 0x768: 0x0008, 0x769: 0x0040, -+ 0x76a: 0x0008, 0x76b: 0x0008, 0x76c: 0x0008, 0x76d: 0x0008, 0x76e: 0x0008, 0x76f: 0x0008, -+ 0x770: 0x0008, 0x771: 0x0040, 0x772: 0x0008, 0x773: 0x0008, 0x774: 0x0040, 0x775: 0x0008, -+ 0x776: 0x0008, 0x777: 0x0008, 0x778: 0x0008, 0x779: 0x0008, 0x77a: 0x0040, 0x77b: 0x0040, -+ 0x77c: 0x3308, 0x77d: 0x0008, 0x77e: 0x3008, 0x77f: 0x3308, -+ // Block 0x1e, offset 0x780 -+ 0x780: 0x3008, 0x781: 0x3308, 0x782: 0x3308, 0x783: 0x3308, 0x784: 0x3308, 0x785: 0x0040, -+ 0x786: 0x0040, 0x787: 0x3008, 0x788: 0x3008, 0x789: 0x0040, 0x78a: 0x0040, 0x78b: 0x3008, -+ 0x78c: 0x3008, 0x78d: 0x3b08, 0x78e: 0x0040, 0x78f: 0x0040, 0x790: 0x0040, 0x791: 0x0040, -+ 0x792: 0x0040, 0x793: 0x0040, 0x794: 0x0040, 0x795: 0x3308, 0x796: 0x3308, 0x797: 0x3008, -+ 0x798: 0x0040, 0x799: 0x0040, 0x79a: 0x0040, 0x79b: 0x0040, 0x79c: 0x0881, 0x79d: 0x08b9, -+ 0x79e: 0x0040, 0x79f: 0x0008, 0x7a0: 0x0008, 0x7a1: 0x0008, 0x7a2: 0x3308, 0x7a3: 0x3308, -+ 0x7a4: 0x0040, 0x7a5: 0x0040, 0x7a6: 0x0008, 0x7a7: 0x0008, 0x7a8: 0x0008, 0x7a9: 0x0008, -+ 0x7aa: 0x0008, 0x7ab: 0x0008, 0x7ac: 0x0008, 0x7ad: 0x0008, 0x7ae: 0x0008, 0x7af: 0x0008, -+ 0x7b0: 0x0018, 0x7b1: 0x0008, 0x7b2: 0x0018, 0x7b3: 0x0018, 0x7b4: 0x0018, 0x7b5: 0x0018, -+ 0x7b6: 0x0018, 0x7b7: 0x0018, 0x7b8: 0x0040, 0x7b9: 0x0040, 0x7ba: 0x0040, 0x7bb: 0x0040, -+ 0x7bc: 0x0040, 0x7bd: 0x0040, 0x7be: 0x0040, 0x7bf: 0x0040, -+ // Block 0x1f, offset 0x7c0 -+ 0x7c0: 0x0040, 0x7c1: 0x0040, 0x7c2: 0x3308, 0x7c3: 0x0008, 0x7c4: 0x0040, 0x7c5: 0x0008, -+ 0x7c6: 0x0008, 0x7c7: 0x0008, 0x7c8: 0x0008, 0x7c9: 0x0008, 0x7ca: 0x0008, 0x7cb: 0x0040, -+ 0x7cc: 0x0040, 0x7cd: 0x0040, 0x7ce: 0x0008, 0x7cf: 0x0008, 0x7d0: 0x0008, 0x7d1: 0x0040, -+ 0x7d2: 0x0008, 0x7d3: 0x0008, 0x7d4: 0x0008, 0x7d5: 0x0008, 0x7d6: 0x0040, 0x7d7: 0x0040, -+ 0x7d8: 0x0040, 0x7d9: 0x0008, 0x7da: 0x0008, 0x7db: 0x0040, 0x7dc: 0x0008, 0x7dd: 0x0040, -+ 0x7de: 0x0008, 0x7df: 0x0008, 0x7e0: 0x0040, 0x7e1: 0x0040, 0x7e2: 0x0040, 0x7e3: 0x0008, -+ 0x7e4: 0x0008, 0x7e5: 0x0040, 0x7e6: 0x0040, 0x7e7: 0x0040, 0x7e8: 0x0008, 0x7e9: 0x0008, -+ 0x7ea: 0x0008, 0x7eb: 0x0040, 0x7ec: 0x0040, 0x7ed: 0x0040, 0x7ee: 0x0008, 0x7ef: 0x0008, -+ 0x7f0: 0x0008, 0x7f1: 0x0008, 0x7f2: 0x0008, 0x7f3: 0x0008, 0x7f4: 0x0008, 0x7f5: 0x0008, -+ 0x7f6: 0x0008, 0x7f7: 0x0008, 0x7f8: 0x0008, 0x7f9: 0x0008, 0x7fa: 0x0040, 0x7fb: 0x0040, -+ 0x7fc: 0x0040, 0x7fd: 0x0040, 0x7fe: 0x3008, 0x7ff: 0x3008, -+ // Block 0x20, offset 0x800 -+ 0x800: 0x3308, 0x801: 0x3008, 0x802: 0x3008, 0x803: 0x3008, 0x804: 0x3008, 0x805: 0x0040, -+ 0x806: 0x3308, 0x807: 0x3308, 0x808: 0x3308, 0x809: 0x0040, 0x80a: 0x3308, 0x80b: 0x3308, -+ 0x80c: 0x3308, 0x80d: 0x3b08, 0x80e: 0x0040, 0x80f: 0x0040, 0x810: 0x0040, 0x811: 0x0040, -+ 0x812: 0x0040, 0x813: 0x0040, 0x814: 0x0040, 0x815: 0x3308, 0x816: 0x3308, 0x817: 0x0040, -+ 0x818: 0x0008, 0x819: 0x0008, 0x81a: 0x0008, 0x81b: 0x0040, 0x81c: 0x0040, 0x81d: 0x0040, -+ 0x81e: 0x0040, 0x81f: 0x0040, 0x820: 0x0008, 0x821: 0x0008, 0x822: 0x3308, 0x823: 0x3308, -+ 0x824: 0x0040, 0x825: 0x0040, 0x826: 0x0008, 0x827: 0x0008, 0x828: 0x0008, 0x829: 0x0008, -+ 0x82a: 0x0008, 0x82b: 0x0008, 0x82c: 0x0008, 0x82d: 0x0008, 0x82e: 0x0008, 0x82f: 0x0008, -+ 0x830: 0x0040, 0x831: 0x0040, 0x832: 0x0040, 0x833: 0x0040, 0x834: 0x0040, 0x835: 0x0040, -+ 0x836: 0x0040, 0x837: 0x0018, 0x838: 0x0018, 0x839: 0x0018, 0x83a: 0x0018, 0x83b: 0x0018, -+ 0x83c: 0x0018, 0x83d: 0x0018, 0x83e: 0x0018, 0x83f: 0x0018, -+ // Block 0x21, offset 0x840 -+ 0x840: 0x0008, 0x841: 0x3308, 0x842: 0x3008, 0x843: 0x3008, 0x844: 0x0018, 0x845: 0x0008, -+ 0x846: 0x0008, 0x847: 0x0008, 0x848: 0x0008, 0x849: 0x0008, 0x84a: 0x0008, 0x84b: 0x0008, -+ 0x84c: 0x0008, 0x84d: 0x0040, 0x84e: 0x0008, 0x84f: 0x0008, 0x850: 0x0008, 0x851: 0x0040, -+ 0x852: 0x0008, 0x853: 0x0008, 0x854: 0x0008, 0x855: 0x0008, 0x856: 0x0008, 0x857: 0x0008, -+ 0x858: 0x0008, 0x859: 0x0008, 0x85a: 0x0008, 0x85b: 0x0008, 0x85c: 0x0008, 0x85d: 0x0008, -+ 0x85e: 0x0008, 0x85f: 0x0008, 0x860: 0x0008, 0x861: 0x0008, 0x862: 0x0008, 0x863: 0x0008, -+ 0x864: 0x0008, 0x865: 0x0008, 0x866: 0x0008, 0x867: 0x0008, 0x868: 0x0008, 0x869: 0x0040, -+ 0x86a: 0x0008, 0x86b: 0x0008, 0x86c: 0x0008, 0x86d: 0x0008, 0x86e: 0x0008, 0x86f: 0x0008, -+ 0x870: 0x0008, 0x871: 0x0008, 0x872: 0x0008, 0x873: 0x0008, 0x874: 0x0040, 0x875: 0x0008, -+ 0x876: 0x0008, 0x877: 0x0008, 0x878: 0x0008, 0x879: 0x0008, 0x87a: 0x0040, 0x87b: 0x0040, -+ 0x87c: 0x3308, 0x87d: 0x0008, 0x87e: 0x3008, 0x87f: 0x3308, -+ // Block 0x22, offset 0x880 -+ 0x880: 0x3008, 0x881: 0x3008, 0x882: 0x3008, 0x883: 0x3008, 0x884: 0x3008, 0x885: 0x0040, -+ 0x886: 0x3308, 0x887: 0x3008, 0x888: 0x3008, 0x889: 0x0040, 0x88a: 0x3008, 0x88b: 0x3008, -+ 0x88c: 0x3308, 0x88d: 0x3b08, 0x88e: 0x0040, 0x88f: 0x0040, 0x890: 0x0040, 0x891: 0x0040, -+ 0x892: 0x0040, 0x893: 0x0040, 0x894: 0x0040, 0x895: 0x3008, 0x896: 0x3008, 0x897: 0x0040, -+ 0x898: 0x0040, 0x899: 0x0040, 0x89a: 0x0040, 0x89b: 0x0040, 0x89c: 0x0040, 0x89d: 0x0040, -+ 0x89e: 0x0008, 0x89f: 0x0040, 0x8a0: 0x0008, 0x8a1: 0x0008, 0x8a2: 0x3308, 0x8a3: 0x3308, -+ 0x8a4: 0x0040, 0x8a5: 0x0040, 0x8a6: 0x0008, 0x8a7: 0x0008, 0x8a8: 0x0008, 0x8a9: 0x0008, -+ 0x8aa: 0x0008, 0x8ab: 0x0008, 0x8ac: 0x0008, 0x8ad: 0x0008, 0x8ae: 0x0008, 0x8af: 0x0008, -+ 0x8b0: 0x0040, 0x8b1: 0x0008, 0x8b2: 0x0008, 0x8b3: 0x0040, 0x8b4: 0x0040, 0x8b5: 0x0040, -+ 0x8b6: 0x0040, 0x8b7: 0x0040, 0x8b8: 0x0040, 0x8b9: 0x0040, 0x8ba: 0x0040, 0x8bb: 0x0040, -+ 0x8bc: 0x0040, 0x8bd: 0x0040, 0x8be: 0x0040, 0x8bf: 0x0040, -+ // Block 0x23, offset 0x8c0 -+ 0x8c0: 0x3008, 0x8c1: 0x3308, 0x8c2: 0x3308, 0x8c3: 0x3308, 0x8c4: 0x3308, 0x8c5: 0x0040, -+ 0x8c6: 0x3008, 0x8c7: 0x3008, 0x8c8: 0x3008, 0x8c9: 0x0040, 0x8ca: 0x3008, 0x8cb: 0x3008, -+ 0x8cc: 0x3008, 0x8cd: 0x3b08, 0x8ce: 0x0008, 0x8cf: 0x0018, 0x8d0: 0x0040, 0x8d1: 0x0040, -+ 0x8d2: 0x0040, 0x8d3: 0x0040, 0x8d4: 0x0008, 0x8d5: 0x0008, 0x8d6: 0x0008, 0x8d7: 0x3008, -+ 0x8d8: 0x0018, 0x8d9: 0x0018, 0x8da: 0x0018, 0x8db: 0x0018, 0x8dc: 0x0018, 0x8dd: 0x0018, -+ 0x8de: 0x0018, 0x8df: 0x0008, 0x8e0: 0x0008, 0x8e1: 0x0008, 0x8e2: 0x3308, 0x8e3: 0x3308, -+ 0x8e4: 0x0040, 0x8e5: 0x0040, 0x8e6: 0x0008, 0x8e7: 0x0008, 0x8e8: 0x0008, 0x8e9: 0x0008, -+ 0x8ea: 0x0008, 0x8eb: 0x0008, 0x8ec: 0x0008, 0x8ed: 0x0008, 0x8ee: 0x0008, 0x8ef: 0x0008, -+ 0x8f0: 0x0018, 0x8f1: 0x0018, 0x8f2: 0x0018, 0x8f3: 0x0018, 0x8f4: 0x0018, 0x8f5: 0x0018, -+ 0x8f6: 0x0018, 0x8f7: 0x0018, 0x8f8: 0x0018, 0x8f9: 0x0018, 0x8fa: 0x0008, 0x8fb: 0x0008, -+ 0x8fc: 0x0008, 0x8fd: 0x0008, 0x8fe: 0x0008, 0x8ff: 0x0008, -+ // Block 0x24, offset 0x900 -+ 0x900: 0x0040, 0x901: 0x0008, 0x902: 0x0008, 0x903: 0x0040, 0x904: 0x0008, 0x905: 0x0040, -+ 0x906: 0x0008, 0x907: 0x0008, 0x908: 0x0008, 0x909: 0x0008, 0x90a: 0x0008, 0x90b: 0x0040, -+ 0x90c: 0x0008, 0x90d: 0x0008, 0x90e: 0x0008, 0x90f: 0x0008, 0x910: 0x0008, 0x911: 0x0008, -+ 0x912: 0x0008, 0x913: 0x0008, 0x914: 0x0008, 0x915: 0x0008, 0x916: 0x0008, 0x917: 0x0008, -+ 0x918: 0x0008, 0x919: 0x0008, 0x91a: 0x0008, 0x91b: 0x0008, 0x91c: 0x0008, 0x91d: 0x0008, -+ 0x91e: 0x0008, 0x91f: 0x0008, 0x920: 0x0008, 0x921: 0x0008, 0x922: 0x0008, 0x923: 0x0008, -+ 0x924: 0x0040, 0x925: 0x0008, 0x926: 0x0040, 0x927: 0x0008, 0x928: 0x0008, 0x929: 0x0008, -+ 0x92a: 0x0008, 0x92b: 0x0008, 0x92c: 0x0008, 0x92d: 0x0008, 0x92e: 0x0008, 0x92f: 0x0008, -+ 0x930: 0x0008, 0x931: 0x3308, 0x932: 0x0008, 0x933: 0x0929, 0x934: 0x3308, 0x935: 0x3308, -+ 0x936: 0x3308, 0x937: 0x3308, 0x938: 0x3308, 0x939: 0x3308, 0x93a: 0x3b08, 0x93b: 0x3308, -+ 0x93c: 0x3308, 0x93d: 0x0008, 0x93e: 0x0040, 0x93f: 0x0040, -+ // Block 0x25, offset 0x940 -+ 0x940: 0x0008, 0x941: 0x0008, 0x942: 0x0008, 0x943: 0x09d1, 0x944: 0x0008, 0x945: 0x0008, -+ 0x946: 0x0008, 0x947: 0x0008, 0x948: 0x0040, 0x949: 0x0008, 0x94a: 0x0008, 0x94b: 0x0008, -+ 0x94c: 0x0008, 0x94d: 0x0a09, 0x94e: 0x0008, 0x94f: 0x0008, 0x950: 0x0008, 0x951: 0x0008, -+ 0x952: 0x0a41, 0x953: 0x0008, 0x954: 0x0008, 0x955: 0x0008, 0x956: 0x0008, 0x957: 0x0a79, -+ 0x958: 0x0008, 0x959: 0x0008, 0x95a: 0x0008, 0x95b: 0x0008, 0x95c: 0x0ab1, 0x95d: 0x0008, -+ 0x95e: 0x0008, 0x95f: 0x0008, 0x960: 0x0008, 0x961: 0x0008, 0x962: 0x0008, 0x963: 0x0008, -+ 0x964: 0x0008, 0x965: 0x0008, 0x966: 0x0008, 0x967: 0x0008, 0x968: 0x0008, 0x969: 0x0ae9, -+ 0x96a: 0x0008, 0x96b: 0x0008, 0x96c: 0x0008, 0x96d: 0x0040, 0x96e: 0x0040, 0x96f: 0x0040, -+ 0x970: 0x0040, 0x971: 0x3308, 0x972: 0x3308, 0x973: 0x0b21, 0x974: 0x3308, 0x975: 0x0b59, -+ 0x976: 0x0b91, 0x977: 0x0bc9, 0x978: 0x0c19, 0x979: 0x0c51, 0x97a: 0x3308, 0x97b: 0x3308, -+ 0x97c: 0x3308, 0x97d: 0x3308, 0x97e: 0x3308, 0x97f: 0x3008, -+ // Block 0x26, offset 0x980 -+ 0x980: 0x3308, 0x981: 0x0ca1, 0x982: 0x3308, 0x983: 0x3308, 0x984: 0x3b08, 0x985: 0x0018, -+ 0x986: 0x3308, 0x987: 0x3308, 0x988: 0x0008, 0x989: 0x0008, 0x98a: 0x0008, 0x98b: 0x0008, -+ 0x98c: 0x0008, 0x98d: 0x3308, 0x98e: 0x3308, 0x98f: 0x3308, 0x990: 0x3308, 0x991: 0x3308, -+ 0x992: 0x3308, 0x993: 0x0cd9, 0x994: 0x3308, 0x995: 0x3308, 0x996: 0x3308, 0x997: 0x3308, -+ 0x998: 0x0040, 0x999: 0x3308, 0x99a: 0x3308, 0x99b: 0x3308, 0x99c: 0x3308, 0x99d: 0x0d11, -+ 0x99e: 0x3308, 0x99f: 0x3308, 0x9a0: 0x3308, 0x9a1: 0x3308, 0x9a2: 0x0d49, 0x9a3: 0x3308, -+ 0x9a4: 0x3308, 0x9a5: 0x3308, 0x9a6: 0x3308, 0x9a7: 0x0d81, 0x9a8: 0x3308, 0x9a9: 0x3308, -+ 0x9aa: 0x3308, 0x9ab: 0x3308, 0x9ac: 0x0db9, 0x9ad: 0x3308, 0x9ae: 0x3308, 0x9af: 0x3308, -+ 0x9b0: 0x3308, 0x9b1: 0x3308, 0x9b2: 0x3308, 0x9b3: 0x3308, 0x9b4: 0x3308, 0x9b5: 0x3308, -+ 0x9b6: 0x3308, 0x9b7: 0x3308, 0x9b8: 0x3308, 0x9b9: 0x0df1, 0x9ba: 0x3308, 0x9bb: 0x3308, -+ 0x9bc: 0x3308, 0x9bd: 0x0040, 0x9be: 0x0018, 0x9bf: 0x0018, -+ // Block 0x27, offset 0x9c0 -+ 0x9c0: 0x0008, 0x9c1: 0x0008, 0x9c2: 0x0008, 0x9c3: 0x0008, 0x9c4: 0x0008, 0x9c5: 0x0008, -+ 0x9c6: 0x0008, 0x9c7: 0x0008, 0x9c8: 0x0008, 0x9c9: 0x0008, 0x9ca: 0x0008, 0x9cb: 0x0008, -+ 0x9cc: 0x0008, 0x9cd: 0x0008, 0x9ce: 0x0008, 0x9cf: 0x0008, 0x9d0: 0x0008, 0x9d1: 0x0008, -+ 0x9d2: 0x0008, 0x9d3: 0x0008, 0x9d4: 0x0008, 0x9d5: 0x0008, 0x9d6: 0x0008, 0x9d7: 0x0008, -+ 0x9d8: 0x0008, 0x9d9: 0x0008, 0x9da: 0x0008, 0x9db: 0x0008, 0x9dc: 0x0008, 0x9dd: 0x0008, -+ 0x9de: 0x0008, 0x9df: 0x0008, 0x9e0: 0x0008, 0x9e1: 0x0008, 0x9e2: 0x0008, 0x9e3: 0x0008, -+ 0x9e4: 0x0008, 0x9e5: 0x0008, 0x9e6: 0x0008, 0x9e7: 0x0008, 0x9e8: 0x0008, 0x9e9: 0x0008, -+ 0x9ea: 0x0008, 0x9eb: 0x0008, 0x9ec: 0x0039, 0x9ed: 0x0ed1, 0x9ee: 0x0ee9, 0x9ef: 0x0008, -+ 0x9f0: 0x0ef9, 0x9f1: 0x0f09, 0x9f2: 0x0f19, 0x9f3: 0x0f31, 0x9f4: 0x0249, 0x9f5: 0x0f41, -+ 0x9f6: 0x0259, 0x9f7: 0x0f51, 0x9f8: 0x0359, 0x9f9: 0x0f61, 0x9fa: 0x0f71, 0x9fb: 0x0008, -+ 0x9fc: 0x00d9, 0x9fd: 0x0f81, 0x9fe: 0x0f99, 0x9ff: 0x0269, -+ // Block 0x28, offset 0xa00 -+ 0xa00: 0x0fa9, 0xa01: 0x0fb9, 0xa02: 0x0279, 0xa03: 0x0039, 0xa04: 0x0fc9, 0xa05: 0x0fe1, -+ 0xa06: 0x05b5, 0xa07: 0x0ee9, 0xa08: 0x0ef9, 0xa09: 0x0f09, 0xa0a: 0x0ff9, 0xa0b: 0x1011, -+ 0xa0c: 0x1029, 0xa0d: 0x0f31, 0xa0e: 0x0008, 0xa0f: 0x0f51, 0xa10: 0x0f61, 0xa11: 0x1041, -+ 0xa12: 0x00d9, 0xa13: 0x1059, 0xa14: 0x05cd, 0xa15: 0x05cd, 0xa16: 0x0f99, 0xa17: 0x0fa9, -+ 0xa18: 0x0fb9, 0xa19: 0x05b5, 0xa1a: 0x1071, 0xa1b: 0x1089, 0xa1c: 0x05e5, 0xa1d: 0x1099, -+ 0xa1e: 0x10b1, 0xa1f: 0x10c9, 0xa20: 0x10e1, 0xa21: 0x10f9, 0xa22: 0x0f41, 0xa23: 0x0269, -+ 0xa24: 0x0fb9, 0xa25: 0x1089, 0xa26: 0x1099, 0xa27: 0x10b1, 0xa28: 0x1111, 0xa29: 0x10e1, -+ 0xa2a: 0x10f9, 0xa2b: 0x0008, 0xa2c: 0x0008, 0xa2d: 0x0008, 0xa2e: 0x0008, 0xa2f: 0x0008, -+ 0xa30: 0x0008, 0xa31: 0x0008, 0xa32: 0x0008, 0xa33: 0x0008, 0xa34: 0x0008, 0xa35: 0x0008, -+ 0xa36: 0x0008, 0xa37: 0x0008, 0xa38: 0x1129, 0xa39: 0x0008, 0xa3a: 0x0008, 0xa3b: 0x0008, -+ 0xa3c: 0x0008, 0xa3d: 0x0008, 0xa3e: 0x0008, 0xa3f: 0x0008, -+ // Block 0x29, offset 0xa40 -+ 0xa40: 0x0008, 0xa41: 0x0008, 0xa42: 0x0008, 0xa43: 0x0008, 0xa44: 0x0008, 0xa45: 0x0008, -+ 0xa46: 0x0008, 0xa47: 0x0008, 0xa48: 0x0008, 0xa49: 0x0008, 0xa4a: 0x0008, 0xa4b: 0x0008, -+ 0xa4c: 0x0008, 0xa4d: 0x0008, 0xa4e: 0x0008, 0xa4f: 0x0008, 0xa50: 0x0008, 0xa51: 0x0008, -+ 0xa52: 0x0008, 0xa53: 0x0008, 0xa54: 0x0008, 0xa55: 0x0008, 0xa56: 0x0008, 0xa57: 0x0008, -+ 0xa58: 0x0008, 0xa59: 0x0008, 0xa5a: 0x0008, 0xa5b: 0x1141, 0xa5c: 0x1159, 0xa5d: 0x1169, -+ 0xa5e: 0x1181, 0xa5f: 0x1029, 0xa60: 0x1199, 0xa61: 0x11a9, 0xa62: 0x11c1, 0xa63: 0x11d9, -+ 0xa64: 0x11f1, 0xa65: 0x1209, 0xa66: 0x1221, 0xa67: 0x05fd, 0xa68: 0x1239, 0xa69: 0x1251, -+ 0xa6a: 0xe17d, 0xa6b: 0x1269, 0xa6c: 0x1281, 0xa6d: 0x1299, 0xa6e: 0x12b1, 0xa6f: 0x12c9, -+ 0xa70: 0x12e1, 0xa71: 0x12f9, 0xa72: 0x1311, 0xa73: 0x1329, 0xa74: 0x1341, 0xa75: 0x1359, -+ 0xa76: 0x1371, 0xa77: 0x1389, 0xa78: 0x0615, 0xa79: 0x13a1, 0xa7a: 0x13b9, 0xa7b: 0x13d1, -+ 0xa7c: 0x13e1, 0xa7d: 0x13f9, 0xa7e: 0x1411, 0xa7f: 0x1429, -+ // Block 0x2a, offset 0xa80 -+ 0xa80: 0xe00d, 0xa81: 0x0008, 0xa82: 0xe00d, 0xa83: 0x0008, 0xa84: 0xe00d, 0xa85: 0x0008, -+ 0xa86: 0xe00d, 0xa87: 0x0008, 0xa88: 0xe00d, 0xa89: 0x0008, 0xa8a: 0xe00d, 0xa8b: 0x0008, -+ 0xa8c: 0xe00d, 0xa8d: 0x0008, 0xa8e: 0xe00d, 0xa8f: 0x0008, 0xa90: 0xe00d, 0xa91: 0x0008, -+ 0xa92: 0xe00d, 0xa93: 0x0008, 0xa94: 0xe00d, 0xa95: 0x0008, 0xa96: 0xe00d, 0xa97: 0x0008, -+ 0xa98: 0xe00d, 0xa99: 0x0008, 0xa9a: 0xe00d, 0xa9b: 0x0008, 0xa9c: 0xe00d, 0xa9d: 0x0008, -+ 0xa9e: 0xe00d, 0xa9f: 0x0008, 0xaa0: 0xe00d, 0xaa1: 0x0008, 0xaa2: 0xe00d, 0xaa3: 0x0008, -+ 0xaa4: 0xe00d, 0xaa5: 0x0008, 0xaa6: 0xe00d, 0xaa7: 0x0008, 0xaa8: 0xe00d, 0xaa9: 0x0008, -+ 0xaaa: 0xe00d, 0xaab: 0x0008, 0xaac: 0xe00d, 0xaad: 0x0008, 0xaae: 0xe00d, 0xaaf: 0x0008, -+ 0xab0: 0xe00d, 0xab1: 0x0008, 0xab2: 0xe00d, 0xab3: 0x0008, 0xab4: 0xe00d, 0xab5: 0x0008, -+ 0xab6: 0xe00d, 0xab7: 0x0008, 0xab8: 0xe00d, 0xab9: 0x0008, 0xaba: 0xe00d, 0xabb: 0x0008, -+ 0xabc: 0xe00d, 0xabd: 0x0008, 0xabe: 0xe00d, 0xabf: 0x0008, -+ // Block 0x2b, offset 0xac0 -+ 0xac0: 0xe00d, 0xac1: 0x0008, 0xac2: 0xe00d, 0xac3: 0x0008, 0xac4: 0xe00d, 0xac5: 0x0008, -+ 0xac6: 0xe00d, 0xac7: 0x0008, 0xac8: 0xe00d, 0xac9: 0x0008, 0xaca: 0xe00d, 0xacb: 0x0008, -+ 0xacc: 0xe00d, 0xacd: 0x0008, 0xace: 0xe00d, 0xacf: 0x0008, 0xad0: 0xe00d, 0xad1: 0x0008, -+ 0xad2: 0xe00d, 0xad3: 0x0008, 0xad4: 0xe00d, 0xad5: 0x0008, 0xad6: 0x0008, 0xad7: 0x0008, -+ 0xad8: 0x0008, 0xad9: 0x0008, 0xada: 0x062d, 0xadb: 0x064d, 0xadc: 0x0008, 0xadd: 0x0008, -+ 0xade: 0x1441, 0xadf: 0x0008, 0xae0: 0xe00d, 0xae1: 0x0008, 0xae2: 0xe00d, 0xae3: 0x0008, -+ 0xae4: 0xe00d, 0xae5: 0x0008, 0xae6: 0xe00d, 0xae7: 0x0008, 0xae8: 0xe00d, 0xae9: 0x0008, -+ 0xaea: 0xe00d, 0xaeb: 0x0008, 0xaec: 0xe00d, 0xaed: 0x0008, 0xaee: 0xe00d, 0xaef: 0x0008, -+ 0xaf0: 0xe00d, 0xaf1: 0x0008, 0xaf2: 0xe00d, 0xaf3: 0x0008, 0xaf4: 0xe00d, 0xaf5: 0x0008, -+ 0xaf6: 0xe00d, 0xaf7: 0x0008, 0xaf8: 0xe00d, 0xaf9: 0x0008, 0xafa: 0xe00d, 0xafb: 0x0008, -+ 0xafc: 0xe00d, 0xafd: 0x0008, 0xafe: 0xe00d, 0xaff: 0x0008, -+ // Block 0x2c, offset 0xb00 -+ 0xb00: 0x0008, 0xb01: 0x0008, 0xb02: 0x0008, 0xb03: 0x0008, 0xb04: 0x0008, 0xb05: 0x0008, -+ 0xb06: 0x0040, 0xb07: 0x0040, 0xb08: 0xe045, 0xb09: 0xe045, 0xb0a: 0xe045, 0xb0b: 0xe045, -+ 0xb0c: 0xe045, 0xb0d: 0xe045, 0xb0e: 0x0040, 0xb0f: 0x0040, 0xb10: 0x0008, 0xb11: 0x0008, -+ 0xb12: 0x0008, 0xb13: 0x0008, 0xb14: 0x0008, 0xb15: 0x0008, 0xb16: 0x0008, 0xb17: 0x0008, -+ 0xb18: 0x0040, 0xb19: 0xe045, 0xb1a: 0x0040, 0xb1b: 0xe045, 0xb1c: 0x0040, 0xb1d: 0xe045, -+ 0xb1e: 0x0040, 0xb1f: 0xe045, 0xb20: 0x0008, 0xb21: 0x0008, 0xb22: 0x0008, 0xb23: 0x0008, -+ 0xb24: 0x0008, 0xb25: 0x0008, 0xb26: 0x0008, 0xb27: 0x0008, 0xb28: 0xe045, 0xb29: 0xe045, -+ 0xb2a: 0xe045, 0xb2b: 0xe045, 0xb2c: 0xe045, 0xb2d: 0xe045, 0xb2e: 0xe045, 0xb2f: 0xe045, -+ 0xb30: 0x0008, 0xb31: 0x1459, 0xb32: 0x0008, 0xb33: 0x1471, 0xb34: 0x0008, 0xb35: 0x1489, -+ 0xb36: 0x0008, 0xb37: 0x14a1, 0xb38: 0x0008, 0xb39: 0x14b9, 0xb3a: 0x0008, 0xb3b: 0x14d1, -+ 0xb3c: 0x0008, 0xb3d: 0x14e9, 0xb3e: 0x0040, 0xb3f: 0x0040, -+ // Block 0x2d, offset 0xb40 -+ 0xb40: 0x1501, 0xb41: 0x1531, 0xb42: 0x1561, 0xb43: 0x1591, 0xb44: 0x15c1, 0xb45: 0x15f1, -+ 0xb46: 0x1621, 0xb47: 0x1651, 0xb48: 0x1501, 0xb49: 0x1531, 0xb4a: 0x1561, 0xb4b: 0x1591, -+ 0xb4c: 0x15c1, 0xb4d: 0x15f1, 0xb4e: 0x1621, 0xb4f: 0x1651, 0xb50: 0x1681, 0xb51: 0x16b1, -+ 0xb52: 0x16e1, 0xb53: 0x1711, 0xb54: 0x1741, 0xb55: 0x1771, 0xb56: 0x17a1, 0xb57: 0x17d1, -+ 0xb58: 0x1681, 0xb59: 0x16b1, 0xb5a: 0x16e1, 0xb5b: 0x1711, 0xb5c: 0x1741, 0xb5d: 0x1771, -+ 0xb5e: 0x17a1, 0xb5f: 0x17d1, 0xb60: 0x1801, 0xb61: 0x1831, 0xb62: 0x1861, 0xb63: 0x1891, -+ 0xb64: 0x18c1, 0xb65: 0x18f1, 0xb66: 0x1921, 0xb67: 0x1951, 0xb68: 0x1801, 0xb69: 0x1831, -+ 0xb6a: 0x1861, 0xb6b: 0x1891, 0xb6c: 0x18c1, 0xb6d: 0x18f1, 0xb6e: 0x1921, 0xb6f: 0x1951, -+ 0xb70: 0x0008, 0xb71: 0x0008, 0xb72: 0x1981, 0xb73: 0x19b1, 0xb74: 0x19d9, 0xb75: 0x0040, -+ 0xb76: 0x0008, 0xb77: 0x1a01, 0xb78: 0xe045, 0xb79: 0xe045, 0xb7a: 0x0665, 0xb7b: 0x1459, -+ 0xb7c: 0x19b1, 0xb7d: 0x067e, 0xb7e: 0x1a31, 0xb7f: 0x069e, -+ // Block 0x2e, offset 0xb80 -+ 0xb80: 0x06be, 0xb81: 0x1a4a, 0xb82: 0x1a79, 0xb83: 0x1aa9, 0xb84: 0x1ad1, 0xb85: 0x0040, -+ 0xb86: 0x0008, 0xb87: 0x1af9, 0xb88: 0x06dd, 0xb89: 0x1471, 0xb8a: 0x06f5, 0xb8b: 0x1489, -+ 0xb8c: 0x1aa9, 0xb8d: 0x1b2a, 0xb8e: 0x1b5a, 0xb8f: 0x1b8a, 0xb90: 0x0008, 0xb91: 0x0008, -+ 0xb92: 0x0008, 0xb93: 0x1bb9, 0xb94: 0x0040, 0xb95: 0x0040, 0xb96: 0x0008, 0xb97: 0x0008, -+ 0xb98: 0xe045, 0xb99: 0xe045, 0xb9a: 0x070d, 0xb9b: 0x14a1, 0xb9c: 0x0040, 0xb9d: 0x1bd2, -+ 0xb9e: 0x1c02, 0xb9f: 0x1c32, 0xba0: 0x0008, 0xba1: 0x0008, 0xba2: 0x0008, 0xba3: 0x1c61, -+ 0xba4: 0x0008, 0xba5: 0x0008, 0xba6: 0x0008, 0xba7: 0x0008, 0xba8: 0xe045, 0xba9: 0xe045, -+ 0xbaa: 0x0725, 0xbab: 0x14d1, 0xbac: 0xe04d, 0xbad: 0x1c7a, 0xbae: 0x03d2, 0xbaf: 0x1caa, -+ 0xbb0: 0x0040, 0xbb1: 0x0040, 0xbb2: 0x1cb9, 0xbb3: 0x1ce9, 0xbb4: 0x1d11, 0xbb5: 0x0040, -+ 0xbb6: 0x0008, 0xbb7: 0x1d39, 0xbb8: 0x073d, 0xbb9: 0x14b9, 0xbba: 0x0515, 0xbbb: 0x14e9, -+ 0xbbc: 0x1ce9, 0xbbd: 0x0756, 0xbbe: 0x0776, 0xbbf: 0x0040, -+ // Block 0x2f, offset 0xbc0 -+ 0xbc0: 0x000a, 0xbc1: 0x000a, 0xbc2: 0x000a, 0xbc3: 0x000a, 0xbc4: 0x000a, 0xbc5: 0x000a, -+ 0xbc6: 0x000a, 0xbc7: 0x000a, 0xbc8: 0x000a, 0xbc9: 0x000a, 0xbca: 0x000a, 0xbcb: 0x03c0, -+ 0xbcc: 0x0003, 0xbcd: 0x0003, 0xbce: 0x0340, 0xbcf: 0x0b40, 0xbd0: 0x0018, 0xbd1: 0xe00d, -+ 0xbd2: 0x0018, 0xbd3: 0x0018, 0xbd4: 0x0018, 0xbd5: 0x0018, 0xbd6: 0x0018, 0xbd7: 0x0796, -+ 0xbd8: 0x0018, 0xbd9: 0x0018, 0xbda: 0x0018, 0xbdb: 0x0018, 0xbdc: 0x0018, 0xbdd: 0x0018, -+ 0xbde: 0x0018, 0xbdf: 0x0018, 0xbe0: 0x0018, 0xbe1: 0x0018, 0xbe2: 0x0018, 0xbe3: 0x0018, -+ 0xbe4: 0x0040, 0xbe5: 0x0040, 0xbe6: 0x0040, 0xbe7: 0x0018, 0xbe8: 0x0040, 0xbe9: 0x0040, -+ 0xbea: 0x0340, 0xbeb: 0x0340, 0xbec: 0x0340, 0xbed: 0x0340, 0xbee: 0x0340, 0xbef: 0x000a, -+ 0xbf0: 0x0018, 0xbf1: 0x0018, 0xbf2: 0x0018, 0xbf3: 0x1d69, 0xbf4: 0x1da1, 0xbf5: 0x0018, -+ 0xbf6: 0x1df1, 0xbf7: 0x1e29, 0xbf8: 0x0018, 0xbf9: 0x0018, 0xbfa: 0x0018, 0xbfb: 0x0018, -+ 0xbfc: 0x1e7a, 0xbfd: 0x0018, 0xbfe: 0x07b6, 0xbff: 0x0018, -+ // Block 0x30, offset 0xc00 -+ 0xc00: 0x0018, 0xc01: 0x0018, 0xc02: 0x0018, 0xc03: 0x0018, 0xc04: 0x0018, 0xc05: 0x0018, -+ 0xc06: 0x0018, 0xc07: 0x1e92, 0xc08: 0x1eaa, 0xc09: 0x1ec2, 0xc0a: 0x0018, 0xc0b: 0x0018, -+ 0xc0c: 0x0018, 0xc0d: 0x0018, 0xc0e: 0x0018, 0xc0f: 0x0018, 0xc10: 0x0018, 0xc11: 0x0018, -+ 0xc12: 0x0018, 0xc13: 0x0018, 0xc14: 0x0018, 0xc15: 0x0018, 0xc16: 0x0018, 0xc17: 0x1ed9, -+ 0xc18: 0x0018, 0xc19: 0x0018, 0xc1a: 0x0018, 0xc1b: 0x0018, 0xc1c: 0x0018, 0xc1d: 0x0018, -+ 0xc1e: 0x0018, 0xc1f: 0x000a, 0xc20: 0x03c0, 0xc21: 0x0340, 0xc22: 0x0340, 0xc23: 0x0340, -+ 0xc24: 0x03c0, 0xc25: 0x0040, 0xc26: 0x0040, 0xc27: 0x0040, 0xc28: 0x0040, 0xc29: 0x0040, -+ 0xc2a: 0x0340, 0xc2b: 0x0340, 0xc2c: 0x0340, 0xc2d: 0x0340, 0xc2e: 0x0340, 0xc2f: 0x0340, -+ 0xc30: 0x1f41, 0xc31: 0x0f41, 0xc32: 0x0040, 0xc33: 0x0040, 0xc34: 0x1f51, 0xc35: 0x1f61, -+ 0xc36: 0x1f71, 0xc37: 0x1f81, 0xc38: 0x1f91, 0xc39: 0x1fa1, 0xc3a: 0x1fb2, 0xc3b: 0x07d5, -+ 0xc3c: 0x1fc2, 0xc3d: 0x1fd2, 0xc3e: 0x1fe2, 0xc3f: 0x0f71, -+ // Block 0x31, offset 0xc40 -+ 0xc40: 0x1f41, 0xc41: 0x00c9, 0xc42: 0x0069, 0xc43: 0x0079, 0xc44: 0x1f51, 0xc45: 0x1f61, -+ 0xc46: 0x1f71, 0xc47: 0x1f81, 0xc48: 0x1f91, 0xc49: 0x1fa1, 0xc4a: 0x1fb2, 0xc4b: 0x07ed, -+ 0xc4c: 0x1fc2, 0xc4d: 0x1fd2, 0xc4e: 0x1fe2, 0xc4f: 0x0040, 0xc50: 0x0039, 0xc51: 0x0f09, -+ 0xc52: 0x00d9, 0xc53: 0x0369, 0xc54: 0x0ff9, 0xc55: 0x0249, 0xc56: 0x0f51, 0xc57: 0x0359, -+ 0xc58: 0x0f61, 0xc59: 0x0f71, 0xc5a: 0x0f99, 0xc5b: 0x01d9, 0xc5c: 0x0fa9, 0xc5d: 0x0040, -+ 0xc5e: 0x0040, 0xc5f: 0x0040, 0xc60: 0x0018, 0xc61: 0x0018, 0xc62: 0x0018, 0xc63: 0x0018, -+ 0xc64: 0x0018, 0xc65: 0x0018, 0xc66: 0x0018, 0xc67: 0x0018, 0xc68: 0x1ff1, 0xc69: 0x0018, -+ 0xc6a: 0x0018, 0xc6b: 0x0018, 0xc6c: 0x0018, 0xc6d: 0x0018, 0xc6e: 0x0018, 0xc6f: 0x0018, -+ 0xc70: 0x0018, 0xc71: 0x0018, 0xc72: 0x0018, 0xc73: 0x0018, 0xc74: 0x0018, 0xc75: 0x0018, -+ 0xc76: 0x0018, 0xc77: 0x0018, 0xc78: 0x0018, 0xc79: 0x0018, 0xc7a: 0x0018, 0xc7b: 0x0018, -+ 0xc7c: 0x0018, 0xc7d: 0x0018, 0xc7e: 0x0018, 0xc7f: 0x0018, -+ // Block 0x32, offset 0xc80 -+ 0xc80: 0x0806, 0xc81: 0x0826, 0xc82: 0x1159, 0xc83: 0x0845, 0xc84: 0x0018, 0xc85: 0x0866, -+ 0xc86: 0x0886, 0xc87: 0x1011, 0xc88: 0x0018, 0xc89: 0x08a5, 0xc8a: 0x0f31, 0xc8b: 0x0249, -+ 0xc8c: 0x0249, 0xc8d: 0x0249, 0xc8e: 0x0249, 0xc8f: 0x2009, 0xc90: 0x0f41, 0xc91: 0x0f41, -+ 0xc92: 0x0359, 0xc93: 0x0359, 0xc94: 0x0018, 0xc95: 0x0f71, 0xc96: 0x2021, 0xc97: 0x0018, -+ 0xc98: 0x0018, 0xc99: 0x0f99, 0xc9a: 0x2039, 0xc9b: 0x0269, 0xc9c: 0x0269, 0xc9d: 0x0269, -+ 0xc9e: 0x0018, 0xc9f: 0x0018, 0xca0: 0x2049, 0xca1: 0x08c5, 0xca2: 0x2061, 0xca3: 0x0018, -+ 0xca4: 0x13d1, 0xca5: 0x0018, 0xca6: 0x2079, 0xca7: 0x0018, 0xca8: 0x13d1, 0xca9: 0x0018, -+ 0xcaa: 0x0f51, 0xcab: 0x2091, 0xcac: 0x0ee9, 0xcad: 0x1159, 0xcae: 0x0018, 0xcaf: 0x0f09, -+ 0xcb0: 0x0f09, 0xcb1: 0x1199, 0xcb2: 0x0040, 0xcb3: 0x0f61, 0xcb4: 0x00d9, 0xcb5: 0x20a9, -+ 0xcb6: 0x20c1, 0xcb7: 0x20d9, 0xcb8: 0x20f1, 0xcb9: 0x0f41, 0xcba: 0x0018, 0xcbb: 0x08e5, -+ 0xcbc: 0x2109, 0xcbd: 0x10b1, 0xcbe: 0x10b1, 0xcbf: 0x2109, -+ // Block 0x33, offset 0xcc0 -+ 0xcc0: 0x0905, 0xcc1: 0x0018, 0xcc2: 0x0018, 0xcc3: 0x0018, 0xcc4: 0x0018, 0xcc5: 0x0ef9, -+ 0xcc6: 0x0ef9, 0xcc7: 0x0f09, 0xcc8: 0x0f41, 0xcc9: 0x0259, 0xcca: 0x0018, 0xccb: 0x0018, -+ 0xccc: 0x0018, 0xccd: 0x0018, 0xcce: 0x0008, 0xccf: 0x0018, 0xcd0: 0x2121, 0xcd1: 0x2151, -+ 0xcd2: 0x2181, 0xcd3: 0x21b9, 0xcd4: 0x21e9, 0xcd5: 0x2219, 0xcd6: 0x2249, 0xcd7: 0x2279, -+ 0xcd8: 0x22a9, 0xcd9: 0x22d9, 0xcda: 0x2309, 0xcdb: 0x2339, 0xcdc: 0x2369, 0xcdd: 0x2399, -+ 0xcde: 0x23c9, 0xcdf: 0x23f9, 0xce0: 0x0f41, 0xce1: 0x2421, 0xce2: 0x091d, 0xce3: 0x2439, -+ 0xce4: 0x1089, 0xce5: 0x2451, 0xce6: 0x093d, 0xce7: 0x2469, 0xce8: 0x2491, 0xce9: 0x0369, -+ 0xcea: 0x24a9, 0xceb: 0x095d, 0xcec: 0x0359, 0xced: 0x1159, 0xcee: 0x0ef9, 0xcef: 0x0f61, -+ 0xcf0: 0x0f41, 0xcf1: 0x2421, 0xcf2: 0x097d, 0xcf3: 0x2439, 0xcf4: 0x1089, 0xcf5: 0x2451, -+ 0xcf6: 0x099d, 0xcf7: 0x2469, 0xcf8: 0x2491, 0xcf9: 0x0369, 0xcfa: 0x24a9, 0xcfb: 0x09bd, -+ 0xcfc: 0x0359, 0xcfd: 0x1159, 0xcfe: 0x0ef9, 0xcff: 0x0f61, -+ // Block 0x34, offset 0xd00 -+ 0xd00: 0x0018, 0xd01: 0x0018, 0xd02: 0x0018, 0xd03: 0x0018, 0xd04: 0x0018, 0xd05: 0x0018, -+ 0xd06: 0x0018, 0xd07: 0x0018, 0xd08: 0x0018, 0xd09: 0x0018, 0xd0a: 0x0018, 0xd0b: 0x0040, -+ 0xd0c: 0x0040, 0xd0d: 0x0040, 0xd0e: 0x0040, 0xd0f: 0x0040, 0xd10: 0x0040, 0xd11: 0x0040, -+ 0xd12: 0x0040, 0xd13: 0x0040, 0xd14: 0x0040, 0xd15: 0x0040, 0xd16: 0x0040, 0xd17: 0x0040, -+ 0xd18: 0x0040, 0xd19: 0x0040, 0xd1a: 0x0040, 0xd1b: 0x0040, 0xd1c: 0x0040, 0xd1d: 0x0040, -+ 0xd1e: 0x0040, 0xd1f: 0x0040, 0xd20: 0x00c9, 0xd21: 0x0069, 0xd22: 0x0079, 0xd23: 0x1f51, -+ 0xd24: 0x1f61, 0xd25: 0x1f71, 0xd26: 0x1f81, 0xd27: 0x1f91, 0xd28: 0x1fa1, 0xd29: 0x2601, -+ 0xd2a: 0x2619, 0xd2b: 0x2631, 0xd2c: 0x2649, 0xd2d: 0x2661, 0xd2e: 0x2679, 0xd2f: 0x2691, -+ 0xd30: 0x26a9, 0xd31: 0x26c1, 0xd32: 0x26d9, 0xd33: 0x26f1, 0xd34: 0x0a1e, 0xd35: 0x0a3e, -+ 0xd36: 0x0a5e, 0xd37: 0x0a7e, 0xd38: 0x0a9e, 0xd39: 0x0abe, 0xd3a: 0x0ade, 0xd3b: 0x0afe, -+ 0xd3c: 0x0b1e, 0xd3d: 0x270a, 0xd3e: 0x2732, 0xd3f: 0x275a, -+ // Block 0x35, offset 0xd40 -+ 0xd40: 0x2782, 0xd41: 0x27aa, 0xd42: 0x27d2, 0xd43: 0x27fa, 0xd44: 0x2822, 0xd45: 0x284a, -+ 0xd46: 0x2872, 0xd47: 0x289a, 0xd48: 0x0040, 0xd49: 0x0040, 0xd4a: 0x0040, 0xd4b: 0x0040, -+ 0xd4c: 0x0040, 0xd4d: 0x0040, 0xd4e: 0x0040, 0xd4f: 0x0040, 0xd50: 0x0040, 0xd51: 0x0040, -+ 0xd52: 0x0040, 0xd53: 0x0040, 0xd54: 0x0040, 0xd55: 0x0040, 0xd56: 0x0040, 0xd57: 0x0040, -+ 0xd58: 0x0040, 0xd59: 0x0040, 0xd5a: 0x0040, 0xd5b: 0x0040, 0xd5c: 0x0b3e, 0xd5d: 0x0b5e, -+ 0xd5e: 0x0b7e, 0xd5f: 0x0b9e, 0xd60: 0x0bbe, 0xd61: 0x0bde, 0xd62: 0x0bfe, 0xd63: 0x0c1e, -+ 0xd64: 0x0c3e, 0xd65: 0x0c5e, 0xd66: 0x0c7e, 0xd67: 0x0c9e, 0xd68: 0x0cbe, 0xd69: 0x0cde, -+ 0xd6a: 0x0cfe, 0xd6b: 0x0d1e, 0xd6c: 0x0d3e, 0xd6d: 0x0d5e, 0xd6e: 0x0d7e, 0xd6f: 0x0d9e, -+ 0xd70: 0x0dbe, 0xd71: 0x0dde, 0xd72: 0x0dfe, 0xd73: 0x0e1e, 0xd74: 0x0e3e, 0xd75: 0x0e5e, -+ 0xd76: 0x0039, 0xd77: 0x0ee9, 0xd78: 0x1159, 0xd79: 0x0ef9, 0xd7a: 0x0f09, 0xd7b: 0x1199, -+ 0xd7c: 0x0f31, 0xd7d: 0x0249, 0xd7e: 0x0f41, 0xd7f: 0x0259, -+ // Block 0x36, offset 0xd80 -+ 0xd80: 0x0f51, 0xd81: 0x0359, 0xd82: 0x0f61, 0xd83: 0x0f71, 0xd84: 0x00d9, 0xd85: 0x0f99, -+ 0xd86: 0x2039, 0xd87: 0x0269, 0xd88: 0x01d9, 0xd89: 0x0fa9, 0xd8a: 0x0fb9, 0xd8b: 0x1089, -+ 0xd8c: 0x0279, 0xd8d: 0x0369, 0xd8e: 0x0289, 0xd8f: 0x13d1, 0xd90: 0x0039, 0xd91: 0x0ee9, -+ 0xd92: 0x1159, 0xd93: 0x0ef9, 0xd94: 0x0f09, 0xd95: 0x1199, 0xd96: 0x0f31, 0xd97: 0x0249, -+ 0xd98: 0x0f41, 0xd99: 0x0259, 0xd9a: 0x0f51, 0xd9b: 0x0359, 0xd9c: 0x0f61, 0xd9d: 0x0f71, -+ 0xd9e: 0x00d9, 0xd9f: 0x0f99, 0xda0: 0x2039, 0xda1: 0x0269, 0xda2: 0x01d9, 0xda3: 0x0fa9, -+ 0xda4: 0x0fb9, 0xda5: 0x1089, 0xda6: 0x0279, 0xda7: 0x0369, 0xda8: 0x0289, 0xda9: 0x13d1, -+ 0xdaa: 0x1f41, 0xdab: 0x0018, 0xdac: 0x0018, 0xdad: 0x0018, 0xdae: 0x0018, 0xdaf: 0x0018, -+ 0xdb0: 0x0018, 0xdb1: 0x0018, 0xdb2: 0x0018, 0xdb3: 0x0018, 0xdb4: 0x0018, 0xdb5: 0x0018, -+ 0xdb6: 0x0018, 0xdb7: 0x0018, 0xdb8: 0x0018, 0xdb9: 0x0018, 0xdba: 0x0018, 0xdbb: 0x0018, -+ 0xdbc: 0x0018, 0xdbd: 0x0018, 0xdbe: 0x0018, 0xdbf: 0x0018, -+ // Block 0x37, offset 0xdc0 -+ 0xdc0: 0x0008, 0xdc1: 0x0008, 0xdc2: 0x0008, 0xdc3: 0x0008, 0xdc4: 0x0008, 0xdc5: 0x0008, -+ 0xdc6: 0x0008, 0xdc7: 0x0008, 0xdc8: 0x0008, 0xdc9: 0x0008, 0xdca: 0x0008, 0xdcb: 0x0008, -+ 0xdcc: 0x0008, 0xdcd: 0x0008, 0xdce: 0x0008, 0xdcf: 0x0008, 0xdd0: 0x0008, 0xdd1: 0x0008, -+ 0xdd2: 0x0008, 0xdd3: 0x0008, 0xdd4: 0x0008, 0xdd5: 0x0008, 0xdd6: 0x0008, 0xdd7: 0x0008, -+ 0xdd8: 0x0008, 0xdd9: 0x0008, 0xdda: 0x0008, 0xddb: 0x0008, 0xddc: 0x0008, 0xddd: 0x0008, -+ 0xdde: 0x0008, 0xddf: 0x0040, 0xde0: 0xe00d, 0xde1: 0x0008, 0xde2: 0x2971, 0xde3: 0x0ed5, -+ 0xde4: 0x2989, 0xde5: 0x0008, 0xde6: 0x0008, 0xde7: 0xe07d, 0xde8: 0x0008, 0xde9: 0xe01d, -+ 0xdea: 0x0008, 0xdeb: 0xe03d, 0xdec: 0x0008, 0xded: 0x0fe1, 0xdee: 0x1281, 0xdef: 0x0fc9, -+ 0xdf0: 0x1141, 0xdf1: 0x0008, 0xdf2: 0xe00d, 0xdf3: 0x0008, 0xdf4: 0x0008, 0xdf5: 0xe01d, -+ 0xdf6: 0x0008, 0xdf7: 0x0008, 0xdf8: 0x0008, 0xdf9: 0x0008, 0xdfa: 0x0008, 0xdfb: 0x0008, -+ 0xdfc: 0x0259, 0xdfd: 0x1089, 0xdfe: 0x29a1, 0xdff: 0x29b9, -+ // Block 0x38, offset 0xe00 -+ 0xe00: 0xe00d, 0xe01: 0x0008, 0xe02: 0xe00d, 0xe03: 0x0008, 0xe04: 0xe00d, 0xe05: 0x0008, -+ 0xe06: 0xe00d, 0xe07: 0x0008, 0xe08: 0xe00d, 0xe09: 0x0008, 0xe0a: 0xe00d, 0xe0b: 0x0008, -+ 0xe0c: 0xe00d, 0xe0d: 0x0008, 0xe0e: 0xe00d, 0xe0f: 0x0008, 0xe10: 0xe00d, 0xe11: 0x0008, -+ 0xe12: 0xe00d, 0xe13: 0x0008, 0xe14: 0xe00d, 0xe15: 0x0008, 0xe16: 0xe00d, 0xe17: 0x0008, -+ 0xe18: 0xe00d, 0xe19: 0x0008, 0xe1a: 0xe00d, 0xe1b: 0x0008, 0xe1c: 0xe00d, 0xe1d: 0x0008, -+ 0xe1e: 0xe00d, 0xe1f: 0x0008, 0xe20: 0xe00d, 0xe21: 0x0008, 0xe22: 0xe00d, 0xe23: 0x0008, -+ 0xe24: 0x0008, 0xe25: 0x0018, 0xe26: 0x0018, 0xe27: 0x0018, 0xe28: 0x0018, 0xe29: 0x0018, -+ 0xe2a: 0x0018, 0xe2b: 0xe03d, 0xe2c: 0x0008, 0xe2d: 0xe01d, 0xe2e: 0x0008, 0xe2f: 0x3308, -+ 0xe30: 0x3308, 0xe31: 0x3308, 0xe32: 0xe00d, 0xe33: 0x0008, 0xe34: 0x0040, 0xe35: 0x0040, -+ 0xe36: 0x0040, 0xe37: 0x0040, 0xe38: 0x0040, 0xe39: 0x0018, 0xe3a: 0x0018, 0xe3b: 0x0018, -+ 0xe3c: 0x0018, 0xe3d: 0x0018, 0xe3e: 0x0018, 0xe3f: 0x0018, -+ // Block 0x39, offset 0xe40 -+ 0xe40: 0x2715, 0xe41: 0x2735, 0xe42: 0x2755, 0xe43: 0x2775, 0xe44: 0x2795, 0xe45: 0x27b5, -+ 0xe46: 0x27d5, 0xe47: 0x27f5, 0xe48: 0x2815, 0xe49: 0x2835, 0xe4a: 0x2855, 0xe4b: 0x2875, -+ 0xe4c: 0x2895, 0xe4d: 0x28b5, 0xe4e: 0x28d5, 0xe4f: 0x28f5, 0xe50: 0x2915, 0xe51: 0x2935, -+ 0xe52: 0x2955, 0xe53: 0x2975, 0xe54: 0x2995, 0xe55: 0x29b5, 0xe56: 0x0040, 0xe57: 0x0040, -+ 0xe58: 0x0040, 0xe59: 0x0040, 0xe5a: 0x0040, 0xe5b: 0x0040, 0xe5c: 0x0040, 0xe5d: 0x0040, -+ 0xe5e: 0x0040, 0xe5f: 0x0040, 0xe60: 0x0040, 0xe61: 0x0040, 0xe62: 0x0040, 0xe63: 0x0040, -+ 0xe64: 0x0040, 0xe65: 0x0040, 0xe66: 0x0040, 0xe67: 0x0040, 0xe68: 0x0040, 0xe69: 0x0040, -+ 0xe6a: 0x0040, 0xe6b: 0x0040, 0xe6c: 0x0040, 0xe6d: 0x0040, 0xe6e: 0x0040, 0xe6f: 0x0040, -+ 0xe70: 0x0040, 0xe71: 0x0040, 0xe72: 0x0040, 0xe73: 0x0040, 0xe74: 0x0040, 0xe75: 0x0040, -+ 0xe76: 0x0040, 0xe77: 0x0040, 0xe78: 0x0040, 0xe79: 0x0040, 0xe7a: 0x0040, 0xe7b: 0x0040, -+ 0xe7c: 0x0040, 0xe7d: 0x0040, 0xe7e: 0x0040, 0xe7f: 0x0040, -+ // Block 0x3a, offset 0xe80 -+ 0xe80: 0x000a, 0xe81: 0x0018, 0xe82: 0x29d1, 0xe83: 0x0018, 0xe84: 0x0018, 0xe85: 0x0008, -+ 0xe86: 0x0008, 0xe87: 0x0008, 0xe88: 0x0018, 0xe89: 0x0018, 0xe8a: 0x0018, 0xe8b: 0x0018, -+ 0xe8c: 0x0018, 0xe8d: 0x0018, 0xe8e: 0x0018, 0xe8f: 0x0018, 0xe90: 0x0018, 0xe91: 0x0018, -+ 0xe92: 0x0018, 0xe93: 0x0018, 0xe94: 0x0018, 0xe95: 0x0018, 0xe96: 0x0018, 0xe97: 0x0018, -+ 0xe98: 0x0018, 0xe99: 0x0018, 0xe9a: 0x0018, 0xe9b: 0x0018, 0xe9c: 0x0018, 0xe9d: 0x0018, -+ 0xe9e: 0x0018, 0xe9f: 0x0018, 0xea0: 0x0018, 0xea1: 0x0018, 0xea2: 0x0018, 0xea3: 0x0018, -+ 0xea4: 0x0018, 0xea5: 0x0018, 0xea6: 0x0018, 0xea7: 0x0018, 0xea8: 0x0018, 0xea9: 0x0018, -+ 0xeaa: 0x3308, 0xeab: 0x3308, 0xeac: 0x3308, 0xead: 0x3308, 0xeae: 0x3018, 0xeaf: 0x3018, -+ 0xeb0: 0x0018, 0xeb1: 0x0018, 0xeb2: 0x0018, 0xeb3: 0x0018, 0xeb4: 0x0018, 0xeb5: 0x0018, -+ 0xeb6: 0xe125, 0xeb7: 0x0018, 0xeb8: 0x29d5, 0xeb9: 0x29f5, 0xeba: 0x2a15, 0xebb: 0x0018, -+ 0xebc: 0x0008, 0xebd: 0x0018, 0xebe: 0x0018, 0xebf: 0x0018, -+ // Block 0x3b, offset 0xec0 -+ 0xec0: 0x2b55, 0xec1: 0x2b75, 0xec2: 0x2b95, 0xec3: 0x2bb5, 0xec4: 0x2bd5, 0xec5: 0x2bf5, -+ 0xec6: 0x2bf5, 0xec7: 0x2bf5, 0xec8: 0x2c15, 0xec9: 0x2c15, 0xeca: 0x2c15, 0xecb: 0x2c15, -+ 0xecc: 0x2c35, 0xecd: 0x2c35, 0xece: 0x2c35, 0xecf: 0x2c55, 0xed0: 0x2c75, 0xed1: 0x2c75, -+ 0xed2: 0x2a95, 0xed3: 0x2a95, 0xed4: 0x2c75, 0xed5: 0x2c75, 0xed6: 0x2c95, 0xed7: 0x2c95, -+ 0xed8: 0x2c75, 0xed9: 0x2c75, 0xeda: 0x2a95, 0xedb: 0x2a95, 0xedc: 0x2c75, 0xedd: 0x2c75, -+ 0xede: 0x2c55, 0xedf: 0x2c55, 0xee0: 0x2cb5, 0xee1: 0x2cb5, 0xee2: 0x2cd5, 0xee3: 0x2cd5, -+ 0xee4: 0x0040, 0xee5: 0x2cf5, 0xee6: 0x2d15, 0xee7: 0x2d35, 0xee8: 0x2d35, 0xee9: 0x2d55, -+ 0xeea: 0x2d75, 0xeeb: 0x2d95, 0xeec: 0x2db5, 0xeed: 0x2dd5, 0xeee: 0x2df5, 0xeef: 0x2e15, -+ 0xef0: 0x2e35, 0xef1: 0x2e55, 0xef2: 0x2e55, 0xef3: 0x2e75, 0xef4: 0x2e95, 0xef5: 0x2e95, -+ 0xef6: 0x2eb5, 0xef7: 0x2ed5, 0xef8: 0x2e75, 0xef9: 0x2ef5, 0xefa: 0x2f15, 0xefb: 0x2ef5, -+ 0xefc: 0x2e75, 0xefd: 0x2f35, 0xefe: 0x2f55, 0xeff: 0x2f75, -+ // Block 0x3c, offset 0xf00 -+ 0xf00: 0x2f95, 0xf01: 0x2fb5, 0xf02: 0x2d15, 0xf03: 0x2cf5, 0xf04: 0x2fd5, 0xf05: 0x2ff5, -+ 0xf06: 0x3015, 0xf07: 0x3035, 0xf08: 0x3055, 0xf09: 0x3075, 0xf0a: 0x3095, 0xf0b: 0x30b5, -+ 0xf0c: 0x30d5, 0xf0d: 0x30f5, 0xf0e: 0x3115, 0xf0f: 0x0040, 0xf10: 0x0018, 0xf11: 0x0018, -+ 0xf12: 0x3135, 0xf13: 0x3155, 0xf14: 0x3175, 0xf15: 0x3195, 0xf16: 0x31b5, 0xf17: 0x31d5, -+ 0xf18: 0x31f5, 0xf19: 0x3215, 0xf1a: 0x3235, 0xf1b: 0x3255, 0xf1c: 0x3175, 0xf1d: 0x3275, -+ 0xf1e: 0x3295, 0xf1f: 0x32b5, 0xf20: 0x0008, 0xf21: 0x0008, 0xf22: 0x0008, 0xf23: 0x0008, -+ 0xf24: 0x0008, 0xf25: 0x0008, 0xf26: 0x0008, 0xf27: 0x0008, 0xf28: 0x0008, 0xf29: 0x0008, -+ 0xf2a: 0x0008, 0xf2b: 0x0008, 0xf2c: 0x0008, 0xf2d: 0x0008, 0xf2e: 0x0008, 0xf2f: 0x0008, -+ 0xf30: 0x0008, 0xf31: 0x0008, 0xf32: 0x0008, 0xf33: 0x0008, 0xf34: 0x0008, 0xf35: 0x0008, -+ 0xf36: 0x0008, 0xf37: 0x0008, 0xf38: 0x0008, 0xf39: 0x0008, 0xf3a: 0x0008, 0xf3b: 0x0008, -+ 0xf3c: 0x0008, 0xf3d: 0x0008, 0xf3e: 0x0008, 0xf3f: 0x0008, -+ // Block 0x3d, offset 0xf40 -+ 0xf40: 0x36a2, 0xf41: 0x36d2, 0xf42: 0x3702, 0xf43: 0x3732, 0xf44: 0x32d5, 0xf45: 0x32f5, -+ 0xf46: 0x3315, 0xf47: 0x3335, 0xf48: 0x0018, 0xf49: 0x0018, 0xf4a: 0x0018, 0xf4b: 0x0018, -+ 0xf4c: 0x0018, 0xf4d: 0x0018, 0xf4e: 0x0018, 0xf4f: 0x0018, 0xf50: 0x3355, 0xf51: 0x3761, -+ 0xf52: 0x3779, 0xf53: 0x3791, 0xf54: 0x37a9, 0xf55: 0x37c1, 0xf56: 0x37d9, 0xf57: 0x37f1, -+ 0xf58: 0x3809, 0xf59: 0x3821, 0xf5a: 0x3839, 0xf5b: 0x3851, 0xf5c: 0x3869, 0xf5d: 0x3881, -+ 0xf5e: 0x3899, 0xf5f: 0x38b1, 0xf60: 0x3375, 0xf61: 0x3395, 0xf62: 0x33b5, 0xf63: 0x33d5, -+ 0xf64: 0x33f5, 0xf65: 0x33f5, 0xf66: 0x3415, 0xf67: 0x3435, 0xf68: 0x3455, 0xf69: 0x3475, -+ 0xf6a: 0x3495, 0xf6b: 0x34b5, 0xf6c: 0x34d5, 0xf6d: 0x34f5, 0xf6e: 0x3515, 0xf6f: 0x3535, -+ 0xf70: 0x3555, 0xf71: 0x3575, 0xf72: 0x3595, 0xf73: 0x35b5, 0xf74: 0x35d5, 0xf75: 0x35f5, -+ 0xf76: 0x3615, 0xf77: 0x3635, 0xf78: 0x3655, 0xf79: 0x3675, 0xf7a: 0x3695, 0xf7b: 0x36b5, -+ 0xf7c: 0x38c9, 0xf7d: 0x3901, 0xf7e: 0x36d5, 0xf7f: 0x0018, -+ // Block 0x3e, offset 0xf80 -+ 0xf80: 0x36f5, 0xf81: 0x3715, 0xf82: 0x3735, 0xf83: 0x3755, 0xf84: 0x3775, 0xf85: 0x3795, -+ 0xf86: 0x37b5, 0xf87: 0x37d5, 0xf88: 0x37f5, 0xf89: 0x3815, 0xf8a: 0x3835, 0xf8b: 0x3855, -+ 0xf8c: 0x3875, 0xf8d: 0x3895, 0xf8e: 0x38b5, 0xf8f: 0x38d5, 0xf90: 0x38f5, 0xf91: 0x3915, -+ 0xf92: 0x3935, 0xf93: 0x3955, 0xf94: 0x3975, 0xf95: 0x3995, 0xf96: 0x39b5, 0xf97: 0x39d5, -+ 0xf98: 0x39f5, 0xf99: 0x3a15, 0xf9a: 0x3a35, 0xf9b: 0x3a55, 0xf9c: 0x3a75, 0xf9d: 0x3a95, -+ 0xf9e: 0x3ab5, 0xf9f: 0x3ad5, 0xfa0: 0x3af5, 0xfa1: 0x3b15, 0xfa2: 0x3b35, 0xfa3: 0x3b55, -+ 0xfa4: 0x3b75, 0xfa5: 0x3b95, 0xfa6: 0x1295, 0xfa7: 0x3bb5, 0xfa8: 0x3bd5, 0xfa9: 0x3bf5, -+ 0xfaa: 0x3c15, 0xfab: 0x3c35, 0xfac: 0x3c55, 0xfad: 0x3c75, 0xfae: 0x23b5, 0xfaf: 0x3c95, -+ 0xfb0: 0x3cb5, 0xfb1: 0x3939, 0xfb2: 0x3951, 0xfb3: 0x3969, 0xfb4: 0x3981, 0xfb5: 0x3999, -+ 0xfb6: 0x39b1, 0xfb7: 0x39c9, 0xfb8: 0x39e1, 0xfb9: 0x39f9, 0xfba: 0x3a11, 0xfbb: 0x3a29, -+ 0xfbc: 0x3a41, 0xfbd: 0x3a59, 0xfbe: 0x3a71, 0xfbf: 0x3a89, -+ // Block 0x3f, offset 0xfc0 -+ 0xfc0: 0x3aa1, 0xfc1: 0x3ac9, 0xfc2: 0x3af1, 0xfc3: 0x3b19, 0xfc4: 0x3b41, 0xfc5: 0x3b69, -+ 0xfc6: 0x3b91, 0xfc7: 0x3bb9, 0xfc8: 0x3be1, 0xfc9: 0x3c09, 0xfca: 0x3c39, 0xfcb: 0x3c69, -+ 0xfcc: 0x3c99, 0xfcd: 0x3cd5, 0xfce: 0x3cb1, 0xfcf: 0x3cf5, 0xfd0: 0x3d15, 0xfd1: 0x3d2d, -+ 0xfd2: 0x3d45, 0xfd3: 0x3d5d, 0xfd4: 0x3d75, 0xfd5: 0x3d75, 0xfd6: 0x3d5d, 0xfd7: 0x3d8d, -+ 0xfd8: 0x07d5, 0xfd9: 0x3da5, 0xfda: 0x3dbd, 0xfdb: 0x3dd5, 0xfdc: 0x3ded, 0xfdd: 0x3e05, -+ 0xfde: 0x3e1d, 0xfdf: 0x3e35, 0xfe0: 0x3e4d, 0xfe1: 0x3e65, 0xfe2: 0x3e7d, 0xfe3: 0x3e95, -+ 0xfe4: 0x3ead, 0xfe5: 0x3ead, 0xfe6: 0x3ec5, 0xfe7: 0x3ec5, 0xfe8: 0x3edd, 0xfe9: 0x3edd, -+ 0xfea: 0x3ef5, 0xfeb: 0x3f0d, 0xfec: 0x3f25, 0xfed: 0x3f3d, 0xfee: 0x3f55, 0xfef: 0x3f55, -+ 0xff0: 0x3f6d, 0xff1: 0x3f6d, 0xff2: 0x3f6d, 0xff3: 0x3f85, 0xff4: 0x3f9d, 0xff5: 0x3fb5, -+ 0xff6: 0x3fcd, 0xff7: 0x3fb5, 0xff8: 0x3fe5, 0xff9: 0x3ffd, 0xffa: 0x3f85, 0xffb: 0x4015, -+ 0xffc: 0x402d, 0xffd: 0x402d, 0xffe: 0x402d, 0xfff: 0x3cc9, -+ // Block 0x40, offset 0x1000 -+ 0x1000: 0x3d01, 0x1001: 0x3d69, 0x1002: 0x3dd1, 0x1003: 0x3e39, 0x1004: 0x3e89, 0x1005: 0x3ef1, -+ 0x1006: 0x3f41, 0x1007: 0x3f91, 0x1008: 0x4011, 0x1009: 0x4079, 0x100a: 0x40c9, 0x100b: 0x4119, -+ 0x100c: 0x4169, 0x100d: 0x41d1, 0x100e: 0x4239, 0x100f: 0x4289, 0x1010: 0x42d9, 0x1011: 0x4311, -+ 0x1012: 0x4361, 0x1013: 0x43c9, 0x1014: 0x4431, 0x1015: 0x4469, 0x1016: 0x44e9, 0x1017: 0x4581, -+ 0x1018: 0x4601, 0x1019: 0x4651, 0x101a: 0x46d1, 0x101b: 0x4751, 0x101c: 0x47b9, 0x101d: 0x4809, -+ 0x101e: 0x4859, 0x101f: 0x48a9, 0x1020: 0x4911, 0x1021: 0x4991, 0x1022: 0x49f9, 0x1023: 0x4a49, -+ 0x1024: 0x4a99, 0x1025: 0x4ae9, 0x1026: 0x4b21, 0x1027: 0x4b59, 0x1028: 0x4b91, 0x1029: 0x4bc9, -+ 0x102a: 0x4c19, 0x102b: 0x4c69, 0x102c: 0x4ce9, 0x102d: 0x4d39, 0x102e: 0x4da1, 0x102f: 0x4e21, -+ 0x1030: 0x4e71, 0x1031: 0x4ea9, 0x1032: 0x4ee1, 0x1033: 0x4f61, 0x1034: 0x4fc9, 0x1035: 0x5049, -+ 0x1036: 0x5099, 0x1037: 0x5119, 0x1038: 0x5151, 0x1039: 0x51a1, 0x103a: 0x51f1, 0x103b: 0x5241, -+ 0x103c: 0x5291, 0x103d: 0x52e1, 0x103e: 0x5349, 0x103f: 0x5399, -+ // Block 0x41, offset 0x1040 -+ 0x1040: 0x53d1, 0x1041: 0x5421, 0x1042: 0x5471, 0x1043: 0x54c1, 0x1044: 0x5529, 0x1045: 0x5579, -+ 0x1046: 0x55c9, 0x1047: 0x5619, 0x1048: 0x5699, 0x1049: 0x5701, 0x104a: 0x5739, 0x104b: 0x57b9, -+ 0x104c: 0x57f1, 0x104d: 0x5859, 0x104e: 0x58c1, 0x104f: 0x5911, 0x1050: 0x5961, 0x1051: 0x59b1, -+ 0x1052: 0x5a19, 0x1053: 0x5a51, 0x1054: 0x5aa1, 0x1055: 0x5b09, 0x1056: 0x5b41, 0x1057: 0x5bc1, -+ 0x1058: 0x5c11, 0x1059: 0x5c39, 0x105a: 0x5c61, 0x105b: 0x5c89, 0x105c: 0x5cb1, 0x105d: 0x5cd9, -+ 0x105e: 0x5d01, 0x105f: 0x5d29, 0x1060: 0x5d51, 0x1061: 0x5d79, 0x1062: 0x5da1, 0x1063: 0x5dd1, -+ 0x1064: 0x5e01, 0x1065: 0x5e31, 0x1066: 0x5e61, 0x1067: 0x5e91, 0x1068: 0x5ec1, 0x1069: 0x5ef1, -+ 0x106a: 0x5f21, 0x106b: 0x5f51, 0x106c: 0x5f81, 0x106d: 0x5fb1, 0x106e: 0x5fe1, 0x106f: 0x6011, -+ 0x1070: 0x6041, 0x1071: 0x4045, 0x1072: 0x6071, 0x1073: 0x6089, 0x1074: 0x4065, 0x1075: 0x60a1, -+ 0x1076: 0x60b9, 0x1077: 0x60d1, 0x1078: 0x4085, 0x1079: 0x4085, 0x107a: 0x60e9, 0x107b: 0x6101, -+ 0x107c: 0x6139, 0x107d: 0x6171, 0x107e: 0x61a9, 0x107f: 0x61e1, -+ // Block 0x42, offset 0x1080 -+ 0x1080: 0x6249, 0x1081: 0x6261, 0x1082: 0x40a5, 0x1083: 0x6279, 0x1084: 0x6291, 0x1085: 0x62a9, -+ 0x1086: 0x62c1, 0x1087: 0x62d9, 0x1088: 0x40c5, 0x1089: 0x62f1, 0x108a: 0x6319, 0x108b: 0x6331, -+ 0x108c: 0x40e5, 0x108d: 0x40e5, 0x108e: 0x6349, 0x108f: 0x6361, 0x1090: 0x6379, 0x1091: 0x4105, -+ 0x1092: 0x4125, 0x1093: 0x4145, 0x1094: 0x4165, 0x1095: 0x4185, 0x1096: 0x6391, 0x1097: 0x63a9, -+ 0x1098: 0x63c1, 0x1099: 0x63d9, 0x109a: 0x63f1, 0x109b: 0x41a5, 0x109c: 0x6409, 0x109d: 0x6421, -+ 0x109e: 0x6439, 0x109f: 0x41c5, 0x10a0: 0x41e5, 0x10a1: 0x6451, 0x10a2: 0x4205, 0x10a3: 0x4225, -+ 0x10a4: 0x4245, 0x10a5: 0x6469, 0x10a6: 0x4265, 0x10a7: 0x6481, 0x10a8: 0x64b1, 0x10a9: 0x6249, -+ 0x10aa: 0x4285, 0x10ab: 0x42a5, 0x10ac: 0x42c5, 0x10ad: 0x42e5, 0x10ae: 0x64e9, 0x10af: 0x6529, -+ 0x10b0: 0x6571, 0x10b1: 0x6589, 0x10b2: 0x4305, 0x10b3: 0x65a1, 0x10b4: 0x65b9, 0x10b5: 0x65d1, -+ 0x10b6: 0x4325, 0x10b7: 0x65e9, 0x10b8: 0x6601, 0x10b9: 0x65e9, 0x10ba: 0x6619, 0x10bb: 0x6631, -+ 0x10bc: 0x4345, 0x10bd: 0x6649, 0x10be: 0x6661, 0x10bf: 0x6649, -+ // Block 0x43, offset 0x10c0 -+ 0x10c0: 0x4365, 0x10c1: 0x4385, 0x10c2: 0x0040, 0x10c3: 0x6679, 0x10c4: 0x6691, 0x10c5: 0x66a9, -+ 0x10c6: 0x66c1, 0x10c7: 0x0040, 0x10c8: 0x66f9, 0x10c9: 0x6711, 0x10ca: 0x6729, 0x10cb: 0x6741, -+ 0x10cc: 0x6759, 0x10cd: 0x6771, 0x10ce: 0x6439, 0x10cf: 0x6789, 0x10d0: 0x67a1, 0x10d1: 0x67b9, -+ 0x10d2: 0x43a5, 0x10d3: 0x67d1, 0x10d4: 0x62c1, 0x10d5: 0x43c5, 0x10d6: 0x43e5, 0x10d7: 0x67e9, -+ 0x10d8: 0x0040, 0x10d9: 0x4405, 0x10da: 0x6801, 0x10db: 0x6819, 0x10dc: 0x6831, 0x10dd: 0x6849, -+ 0x10de: 0x6861, 0x10df: 0x6891, 0x10e0: 0x68c1, 0x10e1: 0x68e9, 0x10e2: 0x6911, 0x10e3: 0x6939, -+ 0x10e4: 0x6961, 0x10e5: 0x6989, 0x10e6: 0x69b1, 0x10e7: 0x69d9, 0x10e8: 0x6a01, 0x10e9: 0x6a29, -+ 0x10ea: 0x6a59, 0x10eb: 0x6a89, 0x10ec: 0x6ab9, 0x10ed: 0x6ae9, 0x10ee: 0x6b19, 0x10ef: 0x6b49, -+ 0x10f0: 0x6b79, 0x10f1: 0x6ba9, 0x10f2: 0x6bd9, 0x10f3: 0x6c09, 0x10f4: 0x6c39, 0x10f5: 0x6c69, -+ 0x10f6: 0x6c99, 0x10f7: 0x6cc9, 0x10f8: 0x6cf9, 0x10f9: 0x6d29, 0x10fa: 0x6d59, 0x10fb: 0x6d89, -+ 0x10fc: 0x6db9, 0x10fd: 0x6de9, 0x10fe: 0x6e19, 0x10ff: 0x4425, -+ // Block 0x44, offset 0x1100 -+ 0x1100: 0xe00d, 0x1101: 0x0008, 0x1102: 0xe00d, 0x1103: 0x0008, 0x1104: 0xe00d, 0x1105: 0x0008, -+ 0x1106: 0xe00d, 0x1107: 0x0008, 0x1108: 0xe00d, 0x1109: 0x0008, 0x110a: 0xe00d, 0x110b: 0x0008, -+ 0x110c: 0xe00d, 0x110d: 0x0008, 0x110e: 0xe00d, 0x110f: 0x0008, 0x1110: 0xe00d, 0x1111: 0x0008, -+ 0x1112: 0xe00d, 0x1113: 0x0008, 0x1114: 0xe00d, 0x1115: 0x0008, 0x1116: 0xe00d, 0x1117: 0x0008, -+ 0x1118: 0xe00d, 0x1119: 0x0008, 0x111a: 0xe00d, 0x111b: 0x0008, 0x111c: 0xe00d, 0x111d: 0x0008, -+ 0x111e: 0xe00d, 0x111f: 0x0008, 0x1120: 0xe00d, 0x1121: 0x0008, 0x1122: 0xe00d, 0x1123: 0x0008, -+ 0x1124: 0xe00d, 0x1125: 0x0008, 0x1126: 0xe00d, 0x1127: 0x0008, 0x1128: 0xe00d, 0x1129: 0x0008, -+ 0x112a: 0xe00d, 0x112b: 0x0008, 0x112c: 0xe00d, 0x112d: 0x0008, 0x112e: 0x0008, 0x112f: 0x3308, -+ 0x1130: 0x3318, 0x1131: 0x3318, 0x1132: 0x3318, 0x1133: 0x0018, 0x1134: 0x3308, 0x1135: 0x3308, -+ 0x1136: 0x3308, 0x1137: 0x3308, 0x1138: 0x3308, 0x1139: 0x3308, 0x113a: 0x3308, 0x113b: 0x3308, -+ 0x113c: 0x3308, 0x113d: 0x3308, 0x113e: 0x0018, 0x113f: 0x0008, -+ // Block 0x45, offset 0x1140 -+ 0x1140: 0xe00d, 0x1141: 0x0008, 0x1142: 0xe00d, 0x1143: 0x0008, 0x1144: 0xe00d, 0x1145: 0x0008, -+ 0x1146: 0xe00d, 0x1147: 0x0008, 0x1148: 0xe00d, 0x1149: 0x0008, 0x114a: 0xe00d, 0x114b: 0x0008, -+ 0x114c: 0xe00d, 0x114d: 0x0008, 0x114e: 0xe00d, 0x114f: 0x0008, 0x1150: 0xe00d, 0x1151: 0x0008, -+ 0x1152: 0xe00d, 0x1153: 0x0008, 0x1154: 0xe00d, 0x1155: 0x0008, 0x1156: 0xe00d, 0x1157: 0x0008, -+ 0x1158: 0xe00d, 0x1159: 0x0008, 0x115a: 0xe00d, 0x115b: 0x0008, 0x115c: 0x0ea1, 0x115d: 0x6e49, -+ 0x115e: 0x3308, 0x115f: 0x3308, 0x1160: 0x0008, 0x1161: 0x0008, 0x1162: 0x0008, 0x1163: 0x0008, -+ 0x1164: 0x0008, 0x1165: 0x0008, 0x1166: 0x0008, 0x1167: 0x0008, 0x1168: 0x0008, 0x1169: 0x0008, -+ 0x116a: 0x0008, 0x116b: 0x0008, 0x116c: 0x0008, 0x116d: 0x0008, 0x116e: 0x0008, 0x116f: 0x0008, -+ 0x1170: 0x0008, 0x1171: 0x0008, 0x1172: 0x0008, 0x1173: 0x0008, 0x1174: 0x0008, 0x1175: 0x0008, -+ 0x1176: 0x0008, 0x1177: 0x0008, 0x1178: 0x0008, 0x1179: 0x0008, 0x117a: 0x0008, 0x117b: 0x0008, -+ 0x117c: 0x0008, 0x117d: 0x0008, 0x117e: 0x0008, 0x117f: 0x0008, -+ // Block 0x46, offset 0x1180 -+ 0x1180: 0x0018, 0x1181: 0x0018, 0x1182: 0x0018, 0x1183: 0x0018, 0x1184: 0x0018, 0x1185: 0x0018, -+ 0x1186: 0x0018, 0x1187: 0x0018, 0x1188: 0x0018, 0x1189: 0x0018, 0x118a: 0x0018, 0x118b: 0x0018, -+ 0x118c: 0x0018, 0x118d: 0x0018, 0x118e: 0x0018, 0x118f: 0x0018, 0x1190: 0x0018, 0x1191: 0x0018, -+ 0x1192: 0x0018, 0x1193: 0x0018, 0x1194: 0x0018, 0x1195: 0x0018, 0x1196: 0x0018, 0x1197: 0x0008, -+ 0x1198: 0x0008, 0x1199: 0x0008, 0x119a: 0x0008, 0x119b: 0x0008, 0x119c: 0x0008, 0x119d: 0x0008, -+ 0x119e: 0x0008, 0x119f: 0x0008, 0x11a0: 0x0018, 0x11a1: 0x0018, 0x11a2: 0xe00d, 0x11a3: 0x0008, -+ 0x11a4: 0xe00d, 0x11a5: 0x0008, 0x11a6: 0xe00d, 0x11a7: 0x0008, 0x11a8: 0xe00d, 0x11a9: 0x0008, -+ 0x11aa: 0xe00d, 0x11ab: 0x0008, 0x11ac: 0xe00d, 0x11ad: 0x0008, 0x11ae: 0xe00d, 0x11af: 0x0008, -+ 0x11b0: 0x0008, 0x11b1: 0x0008, 0x11b2: 0xe00d, 0x11b3: 0x0008, 0x11b4: 0xe00d, 0x11b5: 0x0008, -+ 0x11b6: 0xe00d, 0x11b7: 0x0008, 0x11b8: 0xe00d, 0x11b9: 0x0008, 0x11ba: 0xe00d, 0x11bb: 0x0008, -+ 0x11bc: 0xe00d, 0x11bd: 0x0008, 0x11be: 0xe00d, 0x11bf: 0x0008, -+ // Block 0x47, offset 0x11c0 -+ 0x11c0: 0xe00d, 0x11c1: 0x0008, 0x11c2: 0xe00d, 0x11c3: 0x0008, 0x11c4: 0xe00d, 0x11c5: 0x0008, -+ 0x11c6: 0xe00d, 0x11c7: 0x0008, 0x11c8: 0xe00d, 0x11c9: 0x0008, 0x11ca: 0xe00d, 0x11cb: 0x0008, -+ 0x11cc: 0xe00d, 0x11cd: 0x0008, 0x11ce: 0xe00d, 0x11cf: 0x0008, 0x11d0: 0xe00d, 0x11d1: 0x0008, -+ 0x11d2: 0xe00d, 0x11d3: 0x0008, 0x11d4: 0xe00d, 0x11d5: 0x0008, 0x11d6: 0xe00d, 0x11d7: 0x0008, -+ 0x11d8: 0xe00d, 0x11d9: 0x0008, 0x11da: 0xe00d, 0x11db: 0x0008, 0x11dc: 0xe00d, 0x11dd: 0x0008, -+ 0x11de: 0xe00d, 0x11df: 0x0008, 0x11e0: 0xe00d, 0x11e1: 0x0008, 0x11e2: 0xe00d, 0x11e3: 0x0008, -+ 0x11e4: 0xe00d, 0x11e5: 0x0008, 0x11e6: 0xe00d, 0x11e7: 0x0008, 0x11e8: 0xe00d, 0x11e9: 0x0008, -+ 0x11ea: 0xe00d, 0x11eb: 0x0008, 0x11ec: 0xe00d, 0x11ed: 0x0008, 0x11ee: 0xe00d, 0x11ef: 0x0008, -+ 0x11f0: 0xe0fd, 0x11f1: 0x0008, 0x11f2: 0x0008, 0x11f3: 0x0008, 0x11f4: 0x0008, 0x11f5: 0x0008, -+ 0x11f6: 0x0008, 0x11f7: 0x0008, 0x11f8: 0x0008, 0x11f9: 0xe01d, 0x11fa: 0x0008, 0x11fb: 0xe03d, -+ 0x11fc: 0x0008, 0x11fd: 0x4445, 0x11fe: 0xe00d, 0x11ff: 0x0008, -+ // Block 0x48, offset 0x1200 -+ 0x1200: 0xe00d, 0x1201: 0x0008, 0x1202: 0xe00d, 0x1203: 0x0008, 0x1204: 0xe00d, 0x1205: 0x0008, -+ 0x1206: 0xe00d, 0x1207: 0x0008, 0x1208: 0x0008, 0x1209: 0x0018, 0x120a: 0x0018, 0x120b: 0xe03d, -+ 0x120c: 0x0008, 0x120d: 0x11d9, 0x120e: 0x0008, 0x120f: 0x0008, 0x1210: 0xe00d, 0x1211: 0x0008, -+ 0x1212: 0xe00d, 0x1213: 0x0008, 0x1214: 0x0008, 0x1215: 0x0008, 0x1216: 0xe00d, 0x1217: 0x0008, -+ 0x1218: 0xe00d, 0x1219: 0x0008, 0x121a: 0xe00d, 0x121b: 0x0008, 0x121c: 0xe00d, 0x121d: 0x0008, -+ 0x121e: 0xe00d, 0x121f: 0x0008, 0x1220: 0xe00d, 0x1221: 0x0008, 0x1222: 0xe00d, 0x1223: 0x0008, -+ 0x1224: 0xe00d, 0x1225: 0x0008, 0x1226: 0xe00d, 0x1227: 0x0008, 0x1228: 0xe00d, 0x1229: 0x0008, -+ 0x122a: 0x6e61, 0x122b: 0x1029, 0x122c: 0x11c1, 0x122d: 0x6e79, 0x122e: 0x1221, 0x122f: 0x0008, -+ 0x1230: 0x6e91, 0x1231: 0x6ea9, 0x1232: 0x1239, 0x1233: 0x4465, 0x1234: 0xe00d, 0x1235: 0x0008, -+ 0x1236: 0xe00d, 0x1237: 0x0008, 0x1238: 0xe00d, 0x1239: 0x0008, 0x123a: 0xe00d, 0x123b: 0x0008, -+ 0x123c: 0xe00d, 0x123d: 0x0008, 0x123e: 0xe00d, 0x123f: 0x0008, -+ // Block 0x49, offset 0x1240 -+ 0x1240: 0x650d, 0x1241: 0x652d, 0x1242: 0x654d, 0x1243: 0x656d, 0x1244: 0x658d, 0x1245: 0x65ad, -+ 0x1246: 0x65cd, 0x1247: 0x65ed, 0x1248: 0x660d, 0x1249: 0x662d, 0x124a: 0x664d, 0x124b: 0x666d, -+ 0x124c: 0x668d, 0x124d: 0x66ad, 0x124e: 0x0008, 0x124f: 0x0008, 0x1250: 0x66cd, 0x1251: 0x0008, -+ 0x1252: 0x66ed, 0x1253: 0x0008, 0x1254: 0x0008, 0x1255: 0x670d, 0x1256: 0x672d, 0x1257: 0x674d, -+ 0x1258: 0x676d, 0x1259: 0x678d, 0x125a: 0x67ad, 0x125b: 0x67cd, 0x125c: 0x67ed, 0x125d: 0x680d, -+ 0x125e: 0x682d, 0x125f: 0x0008, 0x1260: 0x684d, 0x1261: 0x0008, 0x1262: 0x686d, 0x1263: 0x0008, -+ 0x1264: 0x0008, 0x1265: 0x688d, 0x1266: 0x68ad, 0x1267: 0x0008, 0x1268: 0x0008, 0x1269: 0x0008, -+ 0x126a: 0x68cd, 0x126b: 0x68ed, 0x126c: 0x690d, 0x126d: 0x692d, 0x126e: 0x694d, 0x126f: 0x696d, -+ 0x1270: 0x698d, 0x1271: 0x69ad, 0x1272: 0x69cd, 0x1273: 0x69ed, 0x1274: 0x6a0d, 0x1275: 0x6a2d, -+ 0x1276: 0x6a4d, 0x1277: 0x6a6d, 0x1278: 0x6a8d, 0x1279: 0x6aad, 0x127a: 0x6acd, 0x127b: 0x6aed, -+ 0x127c: 0x6b0d, 0x127d: 0x6b2d, 0x127e: 0x6b4d, 0x127f: 0x6b6d, -+ // Block 0x4a, offset 0x1280 -+ 0x1280: 0x7acd, 0x1281: 0x7aed, 0x1282: 0x7b0d, 0x1283: 0x7b2d, 0x1284: 0x7b4d, 0x1285: 0x7b6d, -+ 0x1286: 0x7b8d, 0x1287: 0x7bad, 0x1288: 0x7bcd, 0x1289: 0x7bed, 0x128a: 0x7c0d, 0x128b: 0x7c2d, -+ 0x128c: 0x7c4d, 0x128d: 0x7c6d, 0x128e: 0x7c8d, 0x128f: 0x6f19, 0x1290: 0x6f41, 0x1291: 0x6f69, -+ 0x1292: 0x7cad, 0x1293: 0x7ccd, 0x1294: 0x7ced, 0x1295: 0x6f91, 0x1296: 0x6fb9, 0x1297: 0x6fe1, -+ 0x1298: 0x7d0d, 0x1299: 0x7d2d, 0x129a: 0x0040, 0x129b: 0x0040, 0x129c: 0x0040, 0x129d: 0x0040, -+ 0x129e: 0x0040, 0x129f: 0x0040, 0x12a0: 0x0040, 0x12a1: 0x0040, 0x12a2: 0x0040, 0x12a3: 0x0040, -+ 0x12a4: 0x0040, 0x12a5: 0x0040, 0x12a6: 0x0040, 0x12a7: 0x0040, 0x12a8: 0x0040, 0x12a9: 0x0040, -+ 0x12aa: 0x0040, 0x12ab: 0x0040, 0x12ac: 0x0040, 0x12ad: 0x0040, 0x12ae: 0x0040, 0x12af: 0x0040, -+ 0x12b0: 0x0040, 0x12b1: 0x0040, 0x12b2: 0x0040, 0x12b3: 0x0040, 0x12b4: 0x0040, 0x12b5: 0x0040, -+ 0x12b6: 0x0040, 0x12b7: 0x0040, 0x12b8: 0x0040, 0x12b9: 0x0040, 0x12ba: 0x0040, 0x12bb: 0x0040, -+ 0x12bc: 0x0040, 0x12bd: 0x0040, 0x12be: 0x0040, 0x12bf: 0x0040, -+ // Block 0x4b, offset 0x12c0 -+ 0x12c0: 0x7009, 0x12c1: 0x7021, 0x12c2: 0x7039, 0x12c3: 0x7d4d, 0x12c4: 0x7d6d, 0x12c5: 0x7051, -+ 0x12c6: 0x7051, 0x12c7: 0x0040, 0x12c8: 0x0040, 0x12c9: 0x0040, 0x12ca: 0x0040, 0x12cb: 0x0040, -+ 0x12cc: 0x0040, 0x12cd: 0x0040, 0x12ce: 0x0040, 0x12cf: 0x0040, 0x12d0: 0x0040, 0x12d1: 0x0040, -+ 0x12d2: 0x0040, 0x12d3: 0x7069, 0x12d4: 0x7091, 0x12d5: 0x70b9, 0x12d6: 0x70e1, 0x12d7: 0x7109, -+ 0x12d8: 0x0040, 0x12d9: 0x0040, 0x12da: 0x0040, 0x12db: 0x0040, 0x12dc: 0x0040, 0x12dd: 0x7131, -+ 0x12de: 0x3308, 0x12df: 0x7159, 0x12e0: 0x7181, 0x12e1: 0x20a9, 0x12e2: 0x20f1, 0x12e3: 0x7199, -+ 0x12e4: 0x71b1, 0x12e5: 0x71c9, 0x12e6: 0x71e1, 0x12e7: 0x71f9, 0x12e8: 0x7211, 0x12e9: 0x1fb2, -+ 0x12ea: 0x7229, 0x12eb: 0x7251, 0x12ec: 0x7279, 0x12ed: 0x72b1, 0x12ee: 0x72e9, 0x12ef: 0x7311, -+ 0x12f0: 0x7339, 0x12f1: 0x7361, 0x12f2: 0x7389, 0x12f3: 0x73b1, 0x12f4: 0x73d9, 0x12f5: 0x7401, -+ 0x12f6: 0x7429, 0x12f7: 0x0040, 0x12f8: 0x7451, 0x12f9: 0x7479, 0x12fa: 0x74a1, 0x12fb: 0x74c9, -+ 0x12fc: 0x74f1, 0x12fd: 0x0040, 0x12fe: 0x7519, 0x12ff: 0x0040, -+ // Block 0x4c, offset 0x1300 -+ 0x1300: 0x7541, 0x1301: 0x7569, 0x1302: 0x0040, 0x1303: 0x7591, 0x1304: 0x75b9, 0x1305: 0x0040, -+ 0x1306: 0x75e1, 0x1307: 0x7609, 0x1308: 0x7631, 0x1309: 0x7659, 0x130a: 0x7681, 0x130b: 0x76a9, -+ 0x130c: 0x76d1, 0x130d: 0x76f9, 0x130e: 0x7721, 0x130f: 0x7749, 0x1310: 0x7771, 0x1311: 0x7771, -+ 0x1312: 0x7789, 0x1313: 0x7789, 0x1314: 0x7789, 0x1315: 0x7789, 0x1316: 0x77a1, 0x1317: 0x77a1, -+ 0x1318: 0x77a1, 0x1319: 0x77a1, 0x131a: 0x77b9, 0x131b: 0x77b9, 0x131c: 0x77b9, 0x131d: 0x77b9, -+ 0x131e: 0x77d1, 0x131f: 0x77d1, 0x1320: 0x77d1, 0x1321: 0x77d1, 0x1322: 0x77e9, 0x1323: 0x77e9, -+ 0x1324: 0x77e9, 0x1325: 0x77e9, 0x1326: 0x7801, 0x1327: 0x7801, 0x1328: 0x7801, 0x1329: 0x7801, -+ 0x132a: 0x7819, 0x132b: 0x7819, 0x132c: 0x7819, 0x132d: 0x7819, 0x132e: 0x7831, 0x132f: 0x7831, -+ 0x1330: 0x7831, 0x1331: 0x7831, 0x1332: 0x7849, 0x1333: 0x7849, 0x1334: 0x7849, 0x1335: 0x7849, -+ 0x1336: 0x7861, 0x1337: 0x7861, 0x1338: 0x7861, 0x1339: 0x7861, 0x133a: 0x7879, 0x133b: 0x7879, -+ 0x133c: 0x7879, 0x133d: 0x7879, 0x133e: 0x7891, 0x133f: 0x7891, -+ // Block 0x4d, offset 0x1340 -+ 0x1340: 0x7891, 0x1341: 0x7891, 0x1342: 0x78a9, 0x1343: 0x78a9, 0x1344: 0x78c1, 0x1345: 0x78c1, -+ 0x1346: 0x78d9, 0x1347: 0x78d9, 0x1348: 0x78f1, 0x1349: 0x78f1, 0x134a: 0x7909, 0x134b: 0x7909, -+ 0x134c: 0x7921, 0x134d: 0x7921, 0x134e: 0x7939, 0x134f: 0x7939, 0x1350: 0x7939, 0x1351: 0x7939, -+ 0x1352: 0x7951, 0x1353: 0x7951, 0x1354: 0x7951, 0x1355: 0x7951, 0x1356: 0x7969, 0x1357: 0x7969, -+ 0x1358: 0x7969, 0x1359: 0x7969, 0x135a: 0x7981, 0x135b: 0x7981, 0x135c: 0x7981, 0x135d: 0x7981, -+ 0x135e: 0x7999, 0x135f: 0x7999, 0x1360: 0x79b1, 0x1361: 0x79b1, 0x1362: 0x79b1, 0x1363: 0x79b1, -+ 0x1364: 0x79c9, 0x1365: 0x79c9, 0x1366: 0x79e1, 0x1367: 0x79e1, 0x1368: 0x79e1, 0x1369: 0x79e1, -+ 0x136a: 0x79f9, 0x136b: 0x79f9, 0x136c: 0x79f9, 0x136d: 0x79f9, 0x136e: 0x7a11, 0x136f: 0x7a11, -+ 0x1370: 0x7a29, 0x1371: 0x7a29, 0x1372: 0x0818, 0x1373: 0x0818, 0x1374: 0x0818, 0x1375: 0x0818, -+ 0x1376: 0x0818, 0x1377: 0x0818, 0x1378: 0x0818, 0x1379: 0x0818, 0x137a: 0x0818, 0x137b: 0x0818, -+ 0x137c: 0x0818, 0x137d: 0x0818, 0x137e: 0x0818, 0x137f: 0x0818, -+ // Block 0x4e, offset 0x1380 -+ 0x1380: 0x0818, 0x1381: 0x0818, 0x1382: 0x0040, 0x1383: 0x0040, 0x1384: 0x0040, 0x1385: 0x0040, -+ 0x1386: 0x0040, 0x1387: 0x0040, 0x1388: 0x0040, 0x1389: 0x0040, 0x138a: 0x0040, 0x138b: 0x0040, -+ 0x138c: 0x0040, 0x138d: 0x0040, 0x138e: 0x0040, 0x138f: 0x0040, 0x1390: 0x0040, 0x1391: 0x0040, -+ 0x1392: 0x0040, 0x1393: 0x7a41, 0x1394: 0x7a41, 0x1395: 0x7a41, 0x1396: 0x7a41, 0x1397: 0x7a59, -+ 0x1398: 0x7a59, 0x1399: 0x7a71, 0x139a: 0x7a71, 0x139b: 0x7a89, 0x139c: 0x7a89, 0x139d: 0x0479, -+ 0x139e: 0x7aa1, 0x139f: 0x7aa1, 0x13a0: 0x7ab9, 0x13a1: 0x7ab9, 0x13a2: 0x7ad1, 0x13a3: 0x7ad1, -+ 0x13a4: 0x7ae9, 0x13a5: 0x7ae9, 0x13a6: 0x7ae9, 0x13a7: 0x7ae9, 0x13a8: 0x7b01, 0x13a9: 0x7b01, -+ 0x13aa: 0x7b19, 0x13ab: 0x7b19, 0x13ac: 0x7b41, 0x13ad: 0x7b41, 0x13ae: 0x7b69, 0x13af: 0x7b69, -+ 0x13b0: 0x7b91, 0x13b1: 0x7b91, 0x13b2: 0x7bb9, 0x13b3: 0x7bb9, 0x13b4: 0x7be1, 0x13b5: 0x7be1, -+ 0x13b6: 0x7c09, 0x13b7: 0x7c09, 0x13b8: 0x7c09, 0x13b9: 0x7c31, 0x13ba: 0x7c31, 0x13bb: 0x7c31, -+ 0x13bc: 0x7c59, 0x13bd: 0x7c59, 0x13be: 0x7c59, 0x13bf: 0x7c59, -+ // Block 0x4f, offset 0x13c0 -+ 0x13c0: 0x8649, 0x13c1: 0x8671, 0x13c2: 0x8699, 0x13c3: 0x86c1, 0x13c4: 0x86e9, 0x13c5: 0x8711, -+ 0x13c6: 0x8739, 0x13c7: 0x8761, 0x13c8: 0x8789, 0x13c9: 0x87b1, 0x13ca: 0x87d9, 0x13cb: 0x8801, -+ 0x13cc: 0x8829, 0x13cd: 0x8851, 0x13ce: 0x8879, 0x13cf: 0x88a1, 0x13d0: 0x88c9, 0x13d1: 0x88f1, -+ 0x13d2: 0x8919, 0x13d3: 0x8941, 0x13d4: 0x8969, 0x13d5: 0x8991, 0x13d6: 0x89b9, 0x13d7: 0x89e1, -+ 0x13d8: 0x8a09, 0x13d9: 0x8a31, 0x13da: 0x8a59, 0x13db: 0x8a81, 0x13dc: 0x8aa9, 0x13dd: 0x8ad1, -+ 0x13de: 0x8afa, 0x13df: 0x8b2a, 0x13e0: 0x8b5a, 0x13e1: 0x8b8a, 0x13e2: 0x8bba, 0x13e3: 0x8bea, -+ 0x13e4: 0x8c19, 0x13e5: 0x8c41, 0x13e6: 0x7cc1, 0x13e7: 0x8c69, 0x13e8: 0x7c31, 0x13e9: 0x7ce9, -+ 0x13ea: 0x8c91, 0x13eb: 0x8cb9, 0x13ec: 0x7d89, 0x13ed: 0x8ce1, 0x13ee: 0x7db1, 0x13ef: 0x7dd9, -+ 0x13f0: 0x8d09, 0x13f1: 0x8d31, 0x13f2: 0x7e79, 0x13f3: 0x8d59, 0x13f4: 0x7ea1, 0x13f5: 0x7ec9, -+ 0x13f6: 0x8d81, 0x13f7: 0x8da9, 0x13f8: 0x7f19, 0x13f9: 0x8dd1, 0x13fa: 0x7f41, 0x13fb: 0x7f69, -+ 0x13fc: 0x83f1, 0x13fd: 0x8419, 0x13fe: 0x8491, 0x13ff: 0x84b9, -+ // Block 0x50, offset 0x1400 -+ 0x1400: 0x84e1, 0x1401: 0x8581, 0x1402: 0x85a9, 0x1403: 0x85d1, 0x1404: 0x85f9, 0x1405: 0x8699, -+ 0x1406: 0x86c1, 0x1407: 0x86e9, 0x1408: 0x8df9, 0x1409: 0x8789, 0x140a: 0x8e21, 0x140b: 0x8e49, -+ 0x140c: 0x8879, 0x140d: 0x8e71, 0x140e: 0x88a1, 0x140f: 0x88c9, 0x1410: 0x8ad1, 0x1411: 0x8e99, -+ 0x1412: 0x8ec1, 0x1413: 0x8a09, 0x1414: 0x8ee9, 0x1415: 0x8a31, 0x1416: 0x8a59, 0x1417: 0x7c71, -+ 0x1418: 0x7c99, 0x1419: 0x8f11, 0x141a: 0x7cc1, 0x141b: 0x8f39, 0x141c: 0x7d11, 0x141d: 0x7d39, -+ 0x141e: 0x7d61, 0x141f: 0x7d89, 0x1420: 0x8f61, 0x1421: 0x7e01, 0x1422: 0x7e29, 0x1423: 0x7e51, -+ 0x1424: 0x7e79, 0x1425: 0x8f89, 0x1426: 0x7f19, 0x1427: 0x7f91, 0x1428: 0x7fb9, 0x1429: 0x7fe1, -+ 0x142a: 0x8009, 0x142b: 0x8031, 0x142c: 0x8081, 0x142d: 0x80a9, 0x142e: 0x80d1, 0x142f: 0x80f9, -+ 0x1430: 0x8121, 0x1431: 0x8149, 0x1432: 0x8fb1, 0x1433: 0x8171, 0x1434: 0x8199, 0x1435: 0x81c1, -+ 0x1436: 0x81e9, 0x1437: 0x8211, 0x1438: 0x8239, 0x1439: 0x8289, 0x143a: 0x82b1, 0x143b: 0x82d9, -+ 0x143c: 0x8301, 0x143d: 0x8329, 0x143e: 0x8351, 0x143f: 0x8379, -+ // Block 0x51, offset 0x1440 -+ 0x1440: 0x83a1, 0x1441: 0x83c9, 0x1442: 0x8441, 0x1443: 0x8469, 0x1444: 0x8509, 0x1445: 0x8531, -+ 0x1446: 0x8559, 0x1447: 0x8581, 0x1448: 0x85a9, 0x1449: 0x8621, 0x144a: 0x8649, 0x144b: 0x8671, -+ 0x144c: 0x8699, 0x144d: 0x8fd9, 0x144e: 0x8711, 0x144f: 0x8739, 0x1450: 0x8761, 0x1451: 0x8789, -+ 0x1452: 0x8801, 0x1453: 0x8829, 0x1454: 0x8851, 0x1455: 0x8879, 0x1456: 0x9001, 0x1457: 0x88f1, -+ 0x1458: 0x8919, 0x1459: 0x9029, 0x145a: 0x8991, 0x145b: 0x89b9, 0x145c: 0x89e1, 0x145d: 0x8a09, -+ 0x145e: 0x9051, 0x145f: 0x7cc1, 0x1460: 0x8f39, 0x1461: 0x7d89, 0x1462: 0x8f61, 0x1463: 0x7e79, -+ 0x1464: 0x8f89, 0x1465: 0x7f19, 0x1466: 0x9079, 0x1467: 0x8121, 0x1468: 0x90a1, 0x1469: 0x90c9, -+ 0x146a: 0x90f1, 0x146b: 0x8581, 0x146c: 0x85a9, 0x146d: 0x8699, 0x146e: 0x8879, 0x146f: 0x9001, -+ 0x1470: 0x8a09, 0x1471: 0x9051, 0x1472: 0x9119, 0x1473: 0x9151, 0x1474: 0x9189, 0x1475: 0x91c1, -+ 0x1476: 0x91e9, 0x1477: 0x9211, 0x1478: 0x9239, 0x1479: 0x9261, 0x147a: 0x9289, 0x147b: 0x92b1, -+ 0x147c: 0x92d9, 0x147d: 0x9301, 0x147e: 0x9329, 0x147f: 0x9351, -+ // Block 0x52, offset 0x1480 -+ 0x1480: 0x9379, 0x1481: 0x93a1, 0x1482: 0x93c9, 0x1483: 0x93f1, 0x1484: 0x9419, 0x1485: 0x9441, -+ 0x1486: 0x9469, 0x1487: 0x9491, 0x1488: 0x94b9, 0x1489: 0x94e1, 0x148a: 0x9509, 0x148b: 0x9531, -+ 0x148c: 0x90c9, 0x148d: 0x9559, 0x148e: 0x9581, 0x148f: 0x95a9, 0x1490: 0x95d1, 0x1491: 0x91c1, -+ 0x1492: 0x91e9, 0x1493: 0x9211, 0x1494: 0x9239, 0x1495: 0x9261, 0x1496: 0x9289, 0x1497: 0x92b1, -+ 0x1498: 0x92d9, 0x1499: 0x9301, 0x149a: 0x9329, 0x149b: 0x9351, 0x149c: 0x9379, 0x149d: 0x93a1, -+ 0x149e: 0x93c9, 0x149f: 0x93f1, 0x14a0: 0x9419, 0x14a1: 0x9441, 0x14a2: 0x9469, 0x14a3: 0x9491, -+ 0x14a4: 0x94b9, 0x14a5: 0x94e1, 0x14a6: 0x9509, 0x14a7: 0x9531, 0x14a8: 0x90c9, 0x14a9: 0x9559, -+ 0x14aa: 0x9581, 0x14ab: 0x95a9, 0x14ac: 0x95d1, 0x14ad: 0x94e1, 0x14ae: 0x9509, 0x14af: 0x9531, -+ 0x14b0: 0x90c9, 0x14b1: 0x90a1, 0x14b2: 0x90f1, 0x14b3: 0x8261, 0x14b4: 0x80a9, 0x14b5: 0x80d1, -+ 0x14b6: 0x80f9, 0x14b7: 0x94e1, 0x14b8: 0x9509, 0x14b9: 0x9531, 0x14ba: 0x8261, 0x14bb: 0x8289, -+ 0x14bc: 0x95f9, 0x14bd: 0x95f9, 0x14be: 0x0018, 0x14bf: 0x0018, -+ // Block 0x53, offset 0x14c0 -+ 0x14c0: 0x0040, 0x14c1: 0x0040, 0x14c2: 0x0040, 0x14c3: 0x0040, 0x14c4: 0x0040, 0x14c5: 0x0040, -+ 0x14c6: 0x0040, 0x14c7: 0x0040, 0x14c8: 0x0040, 0x14c9: 0x0040, 0x14ca: 0x0040, 0x14cb: 0x0040, -+ 0x14cc: 0x0040, 0x14cd: 0x0040, 0x14ce: 0x0040, 0x14cf: 0x0040, 0x14d0: 0x9621, 0x14d1: 0x9659, -+ 0x14d2: 0x9659, 0x14d3: 0x9691, 0x14d4: 0x96c9, 0x14d5: 0x9701, 0x14d6: 0x9739, 0x14d7: 0x9771, -+ 0x14d8: 0x97a9, 0x14d9: 0x97a9, 0x14da: 0x97e1, 0x14db: 0x9819, 0x14dc: 0x9851, 0x14dd: 0x9889, -+ 0x14de: 0x98c1, 0x14df: 0x98f9, 0x14e0: 0x98f9, 0x14e1: 0x9931, 0x14e2: 0x9969, 0x14e3: 0x9969, -+ 0x14e4: 0x99a1, 0x14e5: 0x99a1, 0x14e6: 0x99d9, 0x14e7: 0x9a11, 0x14e8: 0x9a11, 0x14e9: 0x9a49, -+ 0x14ea: 0x9a81, 0x14eb: 0x9a81, 0x14ec: 0x9ab9, 0x14ed: 0x9ab9, 0x14ee: 0x9af1, 0x14ef: 0x9b29, -+ 0x14f0: 0x9b29, 0x14f1: 0x9b61, 0x14f2: 0x9b61, 0x14f3: 0x9b99, 0x14f4: 0x9bd1, 0x14f5: 0x9c09, -+ 0x14f6: 0x9c41, 0x14f7: 0x9c41, 0x14f8: 0x9c79, 0x14f9: 0x9cb1, 0x14fa: 0x9ce9, 0x14fb: 0x9d21, -+ 0x14fc: 0x9d59, 0x14fd: 0x9d59, 0x14fe: 0x9d91, 0x14ff: 0x9dc9, -+ // Block 0x54, offset 0x1500 -+ 0x1500: 0xa999, 0x1501: 0xa9d1, 0x1502: 0xaa09, 0x1503: 0xa8f1, 0x1504: 0x9c09, 0x1505: 0x99d9, -+ 0x1506: 0xaa41, 0x1507: 0xaa79, 0x1508: 0x0040, 0x1509: 0x0040, 0x150a: 0x0040, 0x150b: 0x0040, -+ 0x150c: 0x0040, 0x150d: 0x0040, 0x150e: 0x0040, 0x150f: 0x0040, 0x1510: 0x0040, 0x1511: 0x0040, -+ 0x1512: 0x0040, 0x1513: 0x0040, 0x1514: 0x0040, 0x1515: 0x0040, 0x1516: 0x0040, 0x1517: 0x0040, -+ 0x1518: 0x0040, 0x1519: 0x0040, 0x151a: 0x0040, 0x151b: 0x0040, 0x151c: 0x0040, 0x151d: 0x0040, -+ 0x151e: 0x0040, 0x151f: 0x0040, 0x1520: 0x0040, 0x1521: 0x0040, 0x1522: 0x0040, 0x1523: 0x0040, -+ 0x1524: 0x0040, 0x1525: 0x0040, 0x1526: 0x0040, 0x1527: 0x0040, 0x1528: 0x0040, 0x1529: 0x0040, -+ 0x152a: 0x0040, 0x152b: 0x0040, 0x152c: 0x0040, 0x152d: 0x0040, 0x152e: 0x0040, 0x152f: 0x0040, -+ 0x1530: 0xaab1, 0x1531: 0xaae9, 0x1532: 0xab21, 0x1533: 0xab69, 0x1534: 0xabb1, 0x1535: 0xabf9, -+ 0x1536: 0xac41, 0x1537: 0xac89, 0x1538: 0xacd1, 0x1539: 0xad19, 0x153a: 0xad52, 0x153b: 0xae62, -+ 0x153c: 0xaee1, 0x153d: 0x0018, 0x153e: 0x0040, 0x153f: 0x0040, -+ // Block 0x55, offset 0x1540 -+ 0x1540: 0x33c0, 0x1541: 0x33c0, 0x1542: 0x33c0, 0x1543: 0x33c0, 0x1544: 0x33c0, 0x1545: 0x33c0, -+ 0x1546: 0x33c0, 0x1547: 0x33c0, 0x1548: 0x33c0, 0x1549: 0x33c0, 0x154a: 0x33c0, 0x154b: 0x33c0, -+ 0x154c: 0x33c0, 0x154d: 0x33c0, 0x154e: 0x33c0, 0x154f: 0x33c0, 0x1550: 0xaf2a, 0x1551: 0x7d8d, -+ 0x1552: 0x0040, 0x1553: 0xaf3a, 0x1554: 0x03c2, 0x1555: 0xaf4a, 0x1556: 0xaf5a, 0x1557: 0x7dad, -+ 0x1558: 0x7dcd, 0x1559: 0x0040, 0x155a: 0x0040, 0x155b: 0x0040, 0x155c: 0x0040, 0x155d: 0x0040, -+ 0x155e: 0x0040, 0x155f: 0x0040, 0x1560: 0x3308, 0x1561: 0x3308, 0x1562: 0x3308, 0x1563: 0x3308, -+ 0x1564: 0x3308, 0x1565: 0x3308, 0x1566: 0x3308, 0x1567: 0x3308, 0x1568: 0x3308, 0x1569: 0x3308, -+ 0x156a: 0x3308, 0x156b: 0x3308, 0x156c: 0x3308, 0x156d: 0x3308, 0x156e: 0x3308, 0x156f: 0x3308, -+ 0x1570: 0x0040, 0x1571: 0x7ded, 0x1572: 0x7e0d, 0x1573: 0xaf6a, 0x1574: 0xaf6a, 0x1575: 0x1fd2, -+ 0x1576: 0x1fe2, 0x1577: 0xaf7a, 0x1578: 0xaf8a, 0x1579: 0x7e2d, 0x157a: 0x7e4d, 0x157b: 0x7e6d, -+ 0x157c: 0x7e2d, 0x157d: 0x7e8d, 0x157e: 0x7ead, 0x157f: 0x7e8d, -+ // Block 0x56, offset 0x1580 -+ 0x1580: 0x7ecd, 0x1581: 0x7eed, 0x1582: 0x7f0d, 0x1583: 0x7eed, 0x1584: 0x7f2d, 0x1585: 0x0018, -+ 0x1586: 0x0018, 0x1587: 0xaf9a, 0x1588: 0xafaa, 0x1589: 0x7f4e, 0x158a: 0x7f6e, 0x158b: 0x7f8e, -+ 0x158c: 0x7fae, 0x158d: 0xaf6a, 0x158e: 0xaf6a, 0x158f: 0xaf6a, 0x1590: 0xaf2a, 0x1591: 0x7fcd, -+ 0x1592: 0x0040, 0x1593: 0x0040, 0x1594: 0x03c2, 0x1595: 0xaf3a, 0x1596: 0xaf5a, 0x1597: 0xaf4a, -+ 0x1598: 0x7fed, 0x1599: 0x1fd2, 0x159a: 0x1fe2, 0x159b: 0xaf7a, 0x159c: 0xaf8a, 0x159d: 0x7ecd, -+ 0x159e: 0x7f2d, 0x159f: 0xafba, 0x15a0: 0xafca, 0x15a1: 0xafda, 0x15a2: 0x1fb2, 0x15a3: 0xafe9, -+ 0x15a4: 0xaffa, 0x15a5: 0xb00a, 0x15a6: 0x1fc2, 0x15a7: 0x0040, 0x15a8: 0xb01a, 0x15a9: 0xb02a, -+ 0x15aa: 0xb03a, 0x15ab: 0xb04a, 0x15ac: 0x0040, 0x15ad: 0x0040, 0x15ae: 0x0040, 0x15af: 0x0040, -+ 0x15b0: 0x800e, 0x15b1: 0xb059, 0x15b2: 0x802e, 0x15b3: 0x0808, 0x15b4: 0x804e, 0x15b5: 0x0040, -+ 0x15b6: 0x806e, 0x15b7: 0xb081, 0x15b8: 0x808e, 0x15b9: 0xb0a9, 0x15ba: 0x80ae, 0x15bb: 0xb0d1, -+ 0x15bc: 0x80ce, 0x15bd: 0xb0f9, 0x15be: 0x80ee, 0x15bf: 0xb121, -+ // Block 0x57, offset 0x15c0 -+ 0x15c0: 0xb149, 0x15c1: 0xb161, 0x15c2: 0xb161, 0x15c3: 0xb179, 0x15c4: 0xb179, 0x15c5: 0xb191, -+ 0x15c6: 0xb191, 0x15c7: 0xb1a9, 0x15c8: 0xb1a9, 0x15c9: 0xb1c1, 0x15ca: 0xb1c1, 0x15cb: 0xb1c1, -+ 0x15cc: 0xb1c1, 0x15cd: 0xb1d9, 0x15ce: 0xb1d9, 0x15cf: 0xb1f1, 0x15d0: 0xb1f1, 0x15d1: 0xb1f1, -+ 0x15d2: 0xb1f1, 0x15d3: 0xb209, 0x15d4: 0xb209, 0x15d5: 0xb221, 0x15d6: 0xb221, 0x15d7: 0xb221, -+ 0x15d8: 0xb221, 0x15d9: 0xb239, 0x15da: 0xb239, 0x15db: 0xb239, 0x15dc: 0xb239, 0x15dd: 0xb251, -+ 0x15de: 0xb251, 0x15df: 0xb251, 0x15e0: 0xb251, 0x15e1: 0xb269, 0x15e2: 0xb269, 0x15e3: 0xb269, -+ 0x15e4: 0xb269, 0x15e5: 0xb281, 0x15e6: 0xb281, 0x15e7: 0xb281, 0x15e8: 0xb281, 0x15e9: 0xb299, -+ 0x15ea: 0xb299, 0x15eb: 0xb2b1, 0x15ec: 0xb2b1, 0x15ed: 0xb2c9, 0x15ee: 0xb2c9, 0x15ef: 0xb2e1, -+ 0x15f0: 0xb2e1, 0x15f1: 0xb2f9, 0x15f2: 0xb2f9, 0x15f3: 0xb2f9, 0x15f4: 0xb2f9, 0x15f5: 0xb311, -+ 0x15f6: 0xb311, 0x15f7: 0xb311, 0x15f8: 0xb311, 0x15f9: 0xb329, 0x15fa: 0xb329, 0x15fb: 0xb329, -+ 0x15fc: 0xb329, 0x15fd: 0xb341, 0x15fe: 0xb341, 0x15ff: 0xb341, -+ // Block 0x58, offset 0x1600 -+ 0x1600: 0xb341, 0x1601: 0xb359, 0x1602: 0xb359, 0x1603: 0xb359, 0x1604: 0xb359, 0x1605: 0xb371, -+ 0x1606: 0xb371, 0x1607: 0xb371, 0x1608: 0xb371, 0x1609: 0xb389, 0x160a: 0xb389, 0x160b: 0xb389, -+ 0x160c: 0xb389, 0x160d: 0xb3a1, 0x160e: 0xb3a1, 0x160f: 0xb3a1, 0x1610: 0xb3a1, 0x1611: 0xb3b9, -+ 0x1612: 0xb3b9, 0x1613: 0xb3b9, 0x1614: 0xb3b9, 0x1615: 0xb3d1, 0x1616: 0xb3d1, 0x1617: 0xb3d1, -+ 0x1618: 0xb3d1, 0x1619: 0xb3e9, 0x161a: 0xb3e9, 0x161b: 0xb3e9, 0x161c: 0xb3e9, 0x161d: 0xb401, -+ 0x161e: 0xb401, 0x161f: 0xb401, 0x1620: 0xb401, 0x1621: 0xb419, 0x1622: 0xb419, 0x1623: 0xb419, -+ 0x1624: 0xb419, 0x1625: 0xb431, 0x1626: 0xb431, 0x1627: 0xb431, 0x1628: 0xb431, 0x1629: 0xb449, -+ 0x162a: 0xb449, 0x162b: 0xb449, 0x162c: 0xb449, 0x162d: 0xb461, 0x162e: 0xb461, 0x162f: 0x7b01, -+ 0x1630: 0x7b01, 0x1631: 0xb479, 0x1632: 0xb479, 0x1633: 0xb479, 0x1634: 0xb479, 0x1635: 0xb491, -+ 0x1636: 0xb491, 0x1637: 0xb4b9, 0x1638: 0xb4b9, 0x1639: 0xb4e1, 0x163a: 0xb4e1, 0x163b: 0xb509, -+ 0x163c: 0xb509, 0x163d: 0x0040, 0x163e: 0x0040, 0x163f: 0x03c0, -+ // Block 0x59, offset 0x1640 -+ 0x1640: 0x0040, 0x1641: 0xaf4a, 0x1642: 0xb532, 0x1643: 0xafba, 0x1644: 0xb02a, 0x1645: 0xb03a, -+ 0x1646: 0xafca, 0x1647: 0xb542, 0x1648: 0x1fd2, 0x1649: 0x1fe2, 0x164a: 0xafda, 0x164b: 0x1fb2, -+ 0x164c: 0xaf2a, 0x164d: 0xafe9, 0x164e: 0x29d1, 0x164f: 0xb552, 0x1650: 0x1f41, 0x1651: 0x00c9, -+ 0x1652: 0x0069, 0x1653: 0x0079, 0x1654: 0x1f51, 0x1655: 0x1f61, 0x1656: 0x1f71, 0x1657: 0x1f81, -+ 0x1658: 0x1f91, 0x1659: 0x1fa1, 0x165a: 0xaf3a, 0x165b: 0x03c2, 0x165c: 0xaffa, 0x165d: 0x1fc2, -+ 0x165e: 0xb00a, 0x165f: 0xaf5a, 0x1660: 0xb04a, 0x1661: 0x0039, 0x1662: 0x0ee9, 0x1663: 0x1159, -+ 0x1664: 0x0ef9, 0x1665: 0x0f09, 0x1666: 0x1199, 0x1667: 0x0f31, 0x1668: 0x0249, 0x1669: 0x0f41, -+ 0x166a: 0x0259, 0x166b: 0x0f51, 0x166c: 0x0359, 0x166d: 0x0f61, 0x166e: 0x0f71, 0x166f: 0x00d9, -+ 0x1670: 0x0f99, 0x1671: 0x2039, 0x1672: 0x0269, 0x1673: 0x01d9, 0x1674: 0x0fa9, 0x1675: 0x0fb9, -+ 0x1676: 0x1089, 0x1677: 0x0279, 0x1678: 0x0369, 0x1679: 0x0289, 0x167a: 0x13d1, 0x167b: 0xaf9a, -+ 0x167c: 0xb01a, 0x167d: 0xafaa, 0x167e: 0xb562, 0x167f: 0xaf6a, -+ // Block 0x5a, offset 0x1680 -+ 0x1680: 0x1caa, 0x1681: 0x0039, 0x1682: 0x0ee9, 0x1683: 0x1159, 0x1684: 0x0ef9, 0x1685: 0x0f09, -+ 0x1686: 0x1199, 0x1687: 0x0f31, 0x1688: 0x0249, 0x1689: 0x0f41, 0x168a: 0x0259, 0x168b: 0x0f51, -+ 0x168c: 0x0359, 0x168d: 0x0f61, 0x168e: 0x0f71, 0x168f: 0x00d9, 0x1690: 0x0f99, 0x1691: 0x2039, -+ 0x1692: 0x0269, 0x1693: 0x01d9, 0x1694: 0x0fa9, 0x1695: 0x0fb9, 0x1696: 0x1089, 0x1697: 0x0279, -+ 0x1698: 0x0369, 0x1699: 0x0289, 0x169a: 0x13d1, 0x169b: 0xaf7a, 0x169c: 0xb572, 0x169d: 0xaf8a, -+ 0x169e: 0xb582, 0x169f: 0x810d, 0x16a0: 0x812d, 0x16a1: 0x29d1, 0x16a2: 0x814d, 0x16a3: 0x814d, -+ 0x16a4: 0x816d, 0x16a5: 0x818d, 0x16a6: 0x81ad, 0x16a7: 0x81cd, 0x16a8: 0x81ed, 0x16a9: 0x820d, -+ 0x16aa: 0x822d, 0x16ab: 0x824d, 0x16ac: 0x826d, 0x16ad: 0x828d, 0x16ae: 0x82ad, 0x16af: 0x82cd, -+ 0x16b0: 0x82ed, 0x16b1: 0x830d, 0x16b2: 0x832d, 0x16b3: 0x834d, 0x16b4: 0x836d, 0x16b5: 0x838d, -+ 0x16b6: 0x83ad, 0x16b7: 0x83cd, 0x16b8: 0x83ed, 0x16b9: 0x840d, 0x16ba: 0x842d, 0x16bb: 0x844d, -+ 0x16bc: 0x81ed, 0x16bd: 0x846d, 0x16be: 0x848d, 0x16bf: 0x824d, -+ // Block 0x5b, offset 0x16c0 -+ 0x16c0: 0x84ad, 0x16c1: 0x84cd, 0x16c2: 0x84ed, 0x16c3: 0x850d, 0x16c4: 0x852d, 0x16c5: 0x854d, -+ 0x16c6: 0x856d, 0x16c7: 0x858d, 0x16c8: 0x850d, 0x16c9: 0x85ad, 0x16ca: 0x850d, 0x16cb: 0x85cd, -+ 0x16cc: 0x85cd, 0x16cd: 0x85ed, 0x16ce: 0x85ed, 0x16cf: 0x860d, 0x16d0: 0x854d, 0x16d1: 0x862d, -+ 0x16d2: 0x864d, 0x16d3: 0x862d, 0x16d4: 0x866d, 0x16d5: 0x864d, 0x16d6: 0x868d, 0x16d7: 0x868d, -+ 0x16d8: 0x86ad, 0x16d9: 0x86ad, 0x16da: 0x86cd, 0x16db: 0x86cd, 0x16dc: 0x864d, 0x16dd: 0x814d, -+ 0x16de: 0x86ed, 0x16df: 0x870d, 0x16e0: 0x0040, 0x16e1: 0x872d, 0x16e2: 0x874d, 0x16e3: 0x876d, -+ 0x16e4: 0x878d, 0x16e5: 0x876d, 0x16e6: 0x87ad, 0x16e7: 0x87cd, 0x16e8: 0x87ed, 0x16e9: 0x87ed, -+ 0x16ea: 0x880d, 0x16eb: 0x880d, 0x16ec: 0x882d, 0x16ed: 0x882d, 0x16ee: 0x880d, 0x16ef: 0x880d, -+ 0x16f0: 0x884d, 0x16f1: 0x886d, 0x16f2: 0x888d, 0x16f3: 0x88ad, 0x16f4: 0x88cd, 0x16f5: 0x88ed, -+ 0x16f6: 0x88ed, 0x16f7: 0x88ed, 0x16f8: 0x890d, 0x16f9: 0x890d, 0x16fa: 0x890d, 0x16fb: 0x890d, -+ 0x16fc: 0x87ed, 0x16fd: 0x87ed, 0x16fe: 0x87ed, 0x16ff: 0x0040, -+ // Block 0x5c, offset 0x1700 -+ 0x1700: 0x0040, 0x1701: 0x0040, 0x1702: 0x874d, 0x1703: 0x872d, 0x1704: 0x892d, 0x1705: 0x872d, -+ 0x1706: 0x874d, 0x1707: 0x872d, 0x1708: 0x0040, 0x1709: 0x0040, 0x170a: 0x894d, 0x170b: 0x874d, -+ 0x170c: 0x896d, 0x170d: 0x892d, 0x170e: 0x896d, 0x170f: 0x874d, 0x1710: 0x0040, 0x1711: 0x0040, -+ 0x1712: 0x898d, 0x1713: 0x89ad, 0x1714: 0x88ad, 0x1715: 0x896d, 0x1716: 0x892d, 0x1717: 0x896d, -+ 0x1718: 0x0040, 0x1719: 0x0040, 0x171a: 0x89cd, 0x171b: 0x89ed, 0x171c: 0x89cd, 0x171d: 0x0040, -+ 0x171e: 0x0040, 0x171f: 0x0040, 0x1720: 0xb591, 0x1721: 0xb5a9, 0x1722: 0xb5c1, 0x1723: 0x8a0e, -+ 0x1724: 0xb5d9, 0x1725: 0xb5f1, 0x1726: 0x8a2d, 0x1727: 0x0040, 0x1728: 0x8a4d, 0x1729: 0x8a6d, -+ 0x172a: 0x8a8d, 0x172b: 0x8a6d, 0x172c: 0x8aad, 0x172d: 0x8acd, 0x172e: 0x8aed, 0x172f: 0x0040, -+ 0x1730: 0x0040, 0x1731: 0x0040, 0x1732: 0x0040, 0x1733: 0x0040, 0x1734: 0x0040, 0x1735: 0x0040, -+ 0x1736: 0x0040, 0x1737: 0x0040, 0x1738: 0x0040, 0x1739: 0x0340, 0x173a: 0x0340, 0x173b: 0x0340, -+ 0x173c: 0x0040, 0x173d: 0x0040, 0x173e: 0x0040, 0x173f: 0x0040, -+ // Block 0x5d, offset 0x1740 -+ 0x1740: 0x0a08, 0x1741: 0x0a08, 0x1742: 0x0a08, 0x1743: 0x0a08, 0x1744: 0x0a08, 0x1745: 0x0c08, -+ 0x1746: 0x0808, 0x1747: 0x0c08, 0x1748: 0x0818, 0x1749: 0x0c08, 0x174a: 0x0c08, 0x174b: 0x0808, -+ 0x174c: 0x0808, 0x174d: 0x0908, 0x174e: 0x0c08, 0x174f: 0x0c08, 0x1750: 0x0c08, 0x1751: 0x0c08, -+ 0x1752: 0x0c08, 0x1753: 0x0a08, 0x1754: 0x0a08, 0x1755: 0x0a08, 0x1756: 0x0a08, 0x1757: 0x0908, -+ 0x1758: 0x0a08, 0x1759: 0x0a08, 0x175a: 0x0a08, 0x175b: 0x0a08, 0x175c: 0x0a08, 0x175d: 0x0c08, -+ 0x175e: 0x0a08, 0x175f: 0x0a08, 0x1760: 0x0a08, 0x1761: 0x0c08, 0x1762: 0x0808, 0x1763: 0x0808, -+ 0x1764: 0x0c08, 0x1765: 0x3308, 0x1766: 0x3308, 0x1767: 0x0040, 0x1768: 0x0040, 0x1769: 0x0040, -+ 0x176a: 0x0040, 0x176b: 0x0a18, 0x176c: 0x0a18, 0x176d: 0x0a18, 0x176e: 0x0a18, 0x176f: 0x0c18, -+ 0x1770: 0x0818, 0x1771: 0x0818, 0x1772: 0x0818, 0x1773: 0x0818, 0x1774: 0x0818, 0x1775: 0x0818, -+ 0x1776: 0x0818, 0x1777: 0x0040, 0x1778: 0x0040, 0x1779: 0x0040, 0x177a: 0x0040, 0x177b: 0x0040, -+ 0x177c: 0x0040, 0x177d: 0x0040, 0x177e: 0x0040, 0x177f: 0x0040, -+ // Block 0x5e, offset 0x1780 -+ 0x1780: 0x0a08, 0x1781: 0x0c08, 0x1782: 0x0a08, 0x1783: 0x0c08, 0x1784: 0x0c08, 0x1785: 0x0c08, -+ 0x1786: 0x0a08, 0x1787: 0x0a08, 0x1788: 0x0a08, 0x1789: 0x0c08, 0x178a: 0x0a08, 0x178b: 0x0a08, -+ 0x178c: 0x0c08, 0x178d: 0x0a08, 0x178e: 0x0c08, 0x178f: 0x0c08, 0x1790: 0x0a08, 0x1791: 0x0c08, -+ 0x1792: 0x0040, 0x1793: 0x0040, 0x1794: 0x0040, 0x1795: 0x0040, 0x1796: 0x0040, 0x1797: 0x0040, -+ 0x1798: 0x0040, 0x1799: 0x0818, 0x179a: 0x0818, 0x179b: 0x0818, 0x179c: 0x0818, 0x179d: 0x0040, -+ 0x179e: 0x0040, 0x179f: 0x0040, 0x17a0: 0x0040, 0x17a1: 0x0040, 0x17a2: 0x0040, 0x17a3: 0x0040, -+ 0x17a4: 0x0040, 0x17a5: 0x0040, 0x17a6: 0x0040, 0x17a7: 0x0040, 0x17a8: 0x0040, 0x17a9: 0x0c18, -+ 0x17aa: 0x0c18, 0x17ab: 0x0c18, 0x17ac: 0x0c18, 0x17ad: 0x0a18, 0x17ae: 0x0a18, 0x17af: 0x0818, -+ 0x17b0: 0x0040, 0x17b1: 0x0040, 0x17b2: 0x0040, 0x17b3: 0x0040, 0x17b4: 0x0040, 0x17b5: 0x0040, -+ 0x17b6: 0x0040, 0x17b7: 0x0040, 0x17b8: 0x0040, 0x17b9: 0x0040, 0x17ba: 0x0040, 0x17bb: 0x0040, -+ 0x17bc: 0x0040, 0x17bd: 0x0040, 0x17be: 0x0040, 0x17bf: 0x0040, -+ // Block 0x5f, offset 0x17c0 -+ 0x17c0: 0x3308, 0x17c1: 0x3308, 0x17c2: 0x3008, 0x17c3: 0x3008, 0x17c4: 0x0040, 0x17c5: 0x0008, -+ 0x17c6: 0x0008, 0x17c7: 0x0008, 0x17c8: 0x0008, 0x17c9: 0x0008, 0x17ca: 0x0008, 0x17cb: 0x0008, -+ 0x17cc: 0x0008, 0x17cd: 0x0040, 0x17ce: 0x0040, 0x17cf: 0x0008, 0x17d0: 0x0008, 0x17d1: 0x0040, -+ 0x17d2: 0x0040, 0x17d3: 0x0008, 0x17d4: 0x0008, 0x17d5: 0x0008, 0x17d6: 0x0008, 0x17d7: 0x0008, -+ 0x17d8: 0x0008, 0x17d9: 0x0008, 0x17da: 0x0008, 0x17db: 0x0008, 0x17dc: 0x0008, 0x17dd: 0x0008, -+ 0x17de: 0x0008, 0x17df: 0x0008, 0x17e0: 0x0008, 0x17e1: 0x0008, 0x17e2: 0x0008, 0x17e3: 0x0008, -+ 0x17e4: 0x0008, 0x17e5: 0x0008, 0x17e6: 0x0008, 0x17e7: 0x0008, 0x17e8: 0x0008, 0x17e9: 0x0040, -+ 0x17ea: 0x0008, 0x17eb: 0x0008, 0x17ec: 0x0008, 0x17ed: 0x0008, 0x17ee: 0x0008, 0x17ef: 0x0008, -+ 0x17f0: 0x0008, 0x17f1: 0x0040, 0x17f2: 0x0008, 0x17f3: 0x0008, 0x17f4: 0x0040, 0x17f5: 0x0008, -+ 0x17f6: 0x0008, 0x17f7: 0x0008, 0x17f8: 0x0008, 0x17f9: 0x0008, 0x17fa: 0x0040, 0x17fb: 0x3308, -+ 0x17fc: 0x3308, 0x17fd: 0x0008, 0x17fe: 0x3008, 0x17ff: 0x3008, -+ // Block 0x60, offset 0x1800 -+ 0x1800: 0x3308, 0x1801: 0x3008, 0x1802: 0x3008, 0x1803: 0x3008, 0x1804: 0x3008, 0x1805: 0x0040, -+ 0x1806: 0x0040, 0x1807: 0x3008, 0x1808: 0x3008, 0x1809: 0x0040, 0x180a: 0x0040, 0x180b: 0x3008, -+ 0x180c: 0x3008, 0x180d: 0x3808, 0x180e: 0x0040, 0x180f: 0x0040, 0x1810: 0x0008, 0x1811: 0x0040, -+ 0x1812: 0x0040, 0x1813: 0x0040, 0x1814: 0x0040, 0x1815: 0x0040, 0x1816: 0x0040, 0x1817: 0x3008, -+ 0x1818: 0x0040, 0x1819: 0x0040, 0x181a: 0x0040, 0x181b: 0x0040, 0x181c: 0x0040, 0x181d: 0x0008, -+ 0x181e: 0x0008, 0x181f: 0x0008, 0x1820: 0x0008, 0x1821: 0x0008, 0x1822: 0x3008, 0x1823: 0x3008, -+ 0x1824: 0x0040, 0x1825: 0x0040, 0x1826: 0x3308, 0x1827: 0x3308, 0x1828: 0x3308, 0x1829: 0x3308, -+ 0x182a: 0x3308, 0x182b: 0x3308, 0x182c: 0x3308, 0x182d: 0x0040, 0x182e: 0x0040, 0x182f: 0x0040, -+ 0x1830: 0x3308, 0x1831: 0x3308, 0x1832: 0x3308, 0x1833: 0x3308, 0x1834: 0x3308, 0x1835: 0x0040, -+ 0x1836: 0x0040, 0x1837: 0x0040, 0x1838: 0x0040, 0x1839: 0x0040, 0x183a: 0x0040, 0x183b: 0x0040, -+ 0x183c: 0x0040, 0x183d: 0x0040, 0x183e: 0x0040, 0x183f: 0x0040, -+ // Block 0x61, offset 0x1840 -+ 0x1840: 0x0008, 0x1841: 0x0008, 0x1842: 0x0008, 0x1843: 0x0008, 0x1844: 0x0008, 0x1845: 0x0008, -+ 0x1846: 0x0008, 0x1847: 0x0040, 0x1848: 0x0040, 0x1849: 0x0008, 0x184a: 0x0040, 0x184b: 0x0040, -+ 0x184c: 0x0008, 0x184d: 0x0008, 0x184e: 0x0008, 0x184f: 0x0008, 0x1850: 0x0008, 0x1851: 0x0008, -+ 0x1852: 0x0008, 0x1853: 0x0008, 0x1854: 0x0040, 0x1855: 0x0008, 0x1856: 0x0008, 0x1857: 0x0040, -+ 0x1858: 0x0008, 0x1859: 0x0008, 0x185a: 0x0008, 0x185b: 0x0008, 0x185c: 0x0008, 0x185d: 0x0008, -+ 0x185e: 0x0008, 0x185f: 0x0008, 0x1860: 0x0008, 0x1861: 0x0008, 0x1862: 0x0008, 0x1863: 0x0008, -+ 0x1864: 0x0008, 0x1865: 0x0008, 0x1866: 0x0008, 0x1867: 0x0008, 0x1868: 0x0008, 0x1869: 0x0008, -+ 0x186a: 0x0008, 0x186b: 0x0008, 0x186c: 0x0008, 0x186d: 0x0008, 0x186e: 0x0008, 0x186f: 0x0008, -+ 0x1870: 0x3008, 0x1871: 0x3008, 0x1872: 0x3008, 0x1873: 0x3008, 0x1874: 0x3008, 0x1875: 0x3008, -+ 0x1876: 0x0040, 0x1877: 0x3008, 0x1878: 0x3008, 0x1879: 0x0040, 0x187a: 0x0040, 0x187b: 0x3308, -+ 0x187c: 0x3308, 0x187d: 0x3808, 0x187e: 0x3b08, 0x187f: 0x0008, -+ // Block 0x62, offset 0x1880 -+ 0x1880: 0x0039, 0x1881: 0x0ee9, 0x1882: 0x1159, 0x1883: 0x0ef9, 0x1884: 0x0f09, 0x1885: 0x1199, -+ 0x1886: 0x0f31, 0x1887: 0x0249, 0x1888: 0x0f41, 0x1889: 0x0259, 0x188a: 0x0f51, 0x188b: 0x0359, -+ 0x188c: 0x0f61, 0x188d: 0x0f71, 0x188e: 0x00d9, 0x188f: 0x0f99, 0x1890: 0x2039, 0x1891: 0x0269, -+ 0x1892: 0x01d9, 0x1893: 0x0fa9, 0x1894: 0x0fb9, 0x1895: 0x1089, 0x1896: 0x0279, 0x1897: 0x0369, -+ 0x1898: 0x0289, 0x1899: 0x13d1, 0x189a: 0x0039, 0x189b: 0x0ee9, 0x189c: 0x1159, 0x189d: 0x0ef9, -+ 0x189e: 0x0f09, 0x189f: 0x1199, 0x18a0: 0x0f31, 0x18a1: 0x0249, 0x18a2: 0x0f41, 0x18a3: 0x0259, -+ 0x18a4: 0x0f51, 0x18a5: 0x0359, 0x18a6: 0x0f61, 0x18a7: 0x0f71, 0x18a8: 0x00d9, 0x18a9: 0x0f99, -+ 0x18aa: 0x2039, 0x18ab: 0x0269, 0x18ac: 0x01d9, 0x18ad: 0x0fa9, 0x18ae: 0x0fb9, 0x18af: 0x1089, -+ 0x18b0: 0x0279, 0x18b1: 0x0369, 0x18b2: 0x0289, 0x18b3: 0x13d1, 0x18b4: 0x0039, 0x18b5: 0x0ee9, -+ 0x18b6: 0x1159, 0x18b7: 0x0ef9, 0x18b8: 0x0f09, 0x18b9: 0x1199, 0x18ba: 0x0f31, 0x18bb: 0x0249, -+ 0x18bc: 0x0f41, 0x18bd: 0x0259, 0x18be: 0x0f51, 0x18bf: 0x0359, -+ // Block 0x63, offset 0x18c0 -+ 0x18c0: 0x0f61, 0x18c1: 0x0f71, 0x18c2: 0x00d9, 0x18c3: 0x0f99, 0x18c4: 0x2039, 0x18c5: 0x0269, -+ 0x18c6: 0x01d9, 0x18c7: 0x0fa9, 0x18c8: 0x0fb9, 0x18c9: 0x1089, 0x18ca: 0x0279, 0x18cb: 0x0369, -+ 0x18cc: 0x0289, 0x18cd: 0x13d1, 0x18ce: 0x0039, 0x18cf: 0x0ee9, 0x18d0: 0x1159, 0x18d1: 0x0ef9, -+ 0x18d2: 0x0f09, 0x18d3: 0x1199, 0x18d4: 0x0f31, 0x18d5: 0x0040, 0x18d6: 0x0f41, 0x18d7: 0x0259, -+ 0x18d8: 0x0f51, 0x18d9: 0x0359, 0x18da: 0x0f61, 0x18db: 0x0f71, 0x18dc: 0x00d9, 0x18dd: 0x0f99, -+ 0x18de: 0x2039, 0x18df: 0x0269, 0x18e0: 0x01d9, 0x18e1: 0x0fa9, 0x18e2: 0x0fb9, 0x18e3: 0x1089, -+ 0x18e4: 0x0279, 0x18e5: 0x0369, 0x18e6: 0x0289, 0x18e7: 0x13d1, 0x18e8: 0x0039, 0x18e9: 0x0ee9, -+ 0x18ea: 0x1159, 0x18eb: 0x0ef9, 0x18ec: 0x0f09, 0x18ed: 0x1199, 0x18ee: 0x0f31, 0x18ef: 0x0249, -+ 0x18f0: 0x0f41, 0x18f1: 0x0259, 0x18f2: 0x0f51, 0x18f3: 0x0359, 0x18f4: 0x0f61, 0x18f5: 0x0f71, -+ 0x18f6: 0x00d9, 0x18f7: 0x0f99, 0x18f8: 0x2039, 0x18f9: 0x0269, 0x18fa: 0x01d9, 0x18fb: 0x0fa9, -+ 0x18fc: 0x0fb9, 0x18fd: 0x1089, 0x18fe: 0x0279, 0x18ff: 0x0369, -+ // Block 0x64, offset 0x1900 -+ 0x1900: 0x0289, 0x1901: 0x13d1, 0x1902: 0x0039, 0x1903: 0x0ee9, 0x1904: 0x1159, 0x1905: 0x0ef9, -+ 0x1906: 0x0f09, 0x1907: 0x1199, 0x1908: 0x0f31, 0x1909: 0x0249, 0x190a: 0x0f41, 0x190b: 0x0259, -+ 0x190c: 0x0f51, 0x190d: 0x0359, 0x190e: 0x0f61, 0x190f: 0x0f71, 0x1910: 0x00d9, 0x1911: 0x0f99, -+ 0x1912: 0x2039, 0x1913: 0x0269, 0x1914: 0x01d9, 0x1915: 0x0fa9, 0x1916: 0x0fb9, 0x1917: 0x1089, -+ 0x1918: 0x0279, 0x1919: 0x0369, 0x191a: 0x0289, 0x191b: 0x13d1, 0x191c: 0x0039, 0x191d: 0x0040, -+ 0x191e: 0x1159, 0x191f: 0x0ef9, 0x1920: 0x0040, 0x1921: 0x0040, 0x1922: 0x0f31, 0x1923: 0x0040, -+ 0x1924: 0x0040, 0x1925: 0x0259, 0x1926: 0x0f51, 0x1927: 0x0040, 0x1928: 0x0040, 0x1929: 0x0f71, -+ 0x192a: 0x00d9, 0x192b: 0x0f99, 0x192c: 0x2039, 0x192d: 0x0040, 0x192e: 0x01d9, 0x192f: 0x0fa9, -+ 0x1930: 0x0fb9, 0x1931: 0x1089, 0x1932: 0x0279, 0x1933: 0x0369, 0x1934: 0x0289, 0x1935: 0x13d1, -+ 0x1936: 0x0039, 0x1937: 0x0ee9, 0x1938: 0x1159, 0x1939: 0x0ef9, 0x193a: 0x0040, 0x193b: 0x1199, -+ 0x193c: 0x0040, 0x193d: 0x0249, 0x193e: 0x0f41, 0x193f: 0x0259, -+ // Block 0x65, offset 0x1940 -+ 0x1940: 0x0f51, 0x1941: 0x0359, 0x1942: 0x0f61, 0x1943: 0x0f71, 0x1944: 0x0040, 0x1945: 0x0f99, -+ 0x1946: 0x2039, 0x1947: 0x0269, 0x1948: 0x01d9, 0x1949: 0x0fa9, 0x194a: 0x0fb9, 0x194b: 0x1089, -+ 0x194c: 0x0279, 0x194d: 0x0369, 0x194e: 0x0289, 0x194f: 0x13d1, 0x1950: 0x0039, 0x1951: 0x0ee9, -+ 0x1952: 0x1159, 0x1953: 0x0ef9, 0x1954: 0x0f09, 0x1955: 0x1199, 0x1956: 0x0f31, 0x1957: 0x0249, -+ 0x1958: 0x0f41, 0x1959: 0x0259, 0x195a: 0x0f51, 0x195b: 0x0359, 0x195c: 0x0f61, 0x195d: 0x0f71, -+ 0x195e: 0x00d9, 0x195f: 0x0f99, 0x1960: 0x2039, 0x1961: 0x0269, 0x1962: 0x01d9, 0x1963: 0x0fa9, -+ 0x1964: 0x0fb9, 0x1965: 0x1089, 0x1966: 0x0279, 0x1967: 0x0369, 0x1968: 0x0289, 0x1969: 0x13d1, -+ 0x196a: 0x0039, 0x196b: 0x0ee9, 0x196c: 0x1159, 0x196d: 0x0ef9, 0x196e: 0x0f09, 0x196f: 0x1199, -+ 0x1970: 0x0f31, 0x1971: 0x0249, 0x1972: 0x0f41, 0x1973: 0x0259, 0x1974: 0x0f51, 0x1975: 0x0359, -+ 0x1976: 0x0f61, 0x1977: 0x0f71, 0x1978: 0x00d9, 0x1979: 0x0f99, 0x197a: 0x2039, 0x197b: 0x0269, -+ 0x197c: 0x01d9, 0x197d: 0x0fa9, 0x197e: 0x0fb9, 0x197f: 0x1089, -+ // Block 0x66, offset 0x1980 -+ 0x1980: 0x0279, 0x1981: 0x0369, 0x1982: 0x0289, 0x1983: 0x13d1, 0x1984: 0x0039, 0x1985: 0x0ee9, -+ 0x1986: 0x0040, 0x1987: 0x0ef9, 0x1988: 0x0f09, 0x1989: 0x1199, 0x198a: 0x0f31, 0x198b: 0x0040, -+ 0x198c: 0x0040, 0x198d: 0x0259, 0x198e: 0x0f51, 0x198f: 0x0359, 0x1990: 0x0f61, 0x1991: 0x0f71, -+ 0x1992: 0x00d9, 0x1993: 0x0f99, 0x1994: 0x2039, 0x1995: 0x0040, 0x1996: 0x01d9, 0x1997: 0x0fa9, -+ 0x1998: 0x0fb9, 0x1999: 0x1089, 0x199a: 0x0279, 0x199b: 0x0369, 0x199c: 0x0289, 0x199d: 0x0040, -+ 0x199e: 0x0039, 0x199f: 0x0ee9, 0x19a0: 0x1159, 0x19a1: 0x0ef9, 0x19a2: 0x0f09, 0x19a3: 0x1199, -+ 0x19a4: 0x0f31, 0x19a5: 0x0249, 0x19a6: 0x0f41, 0x19a7: 0x0259, 0x19a8: 0x0f51, 0x19a9: 0x0359, -+ 0x19aa: 0x0f61, 0x19ab: 0x0f71, 0x19ac: 0x00d9, 0x19ad: 0x0f99, 0x19ae: 0x2039, 0x19af: 0x0269, -+ 0x19b0: 0x01d9, 0x19b1: 0x0fa9, 0x19b2: 0x0fb9, 0x19b3: 0x1089, 0x19b4: 0x0279, 0x19b5: 0x0369, -+ 0x19b6: 0x0289, 0x19b7: 0x13d1, 0x19b8: 0x0039, 0x19b9: 0x0ee9, 0x19ba: 0x0040, 0x19bb: 0x0ef9, -+ 0x19bc: 0x0f09, 0x19bd: 0x1199, 0x19be: 0x0f31, 0x19bf: 0x0040, -+ // Block 0x67, offset 0x19c0 -+ 0x19c0: 0x0f41, 0x19c1: 0x0259, 0x19c2: 0x0f51, 0x19c3: 0x0359, 0x19c4: 0x0f61, 0x19c5: 0x0040, -+ 0x19c6: 0x00d9, 0x19c7: 0x0040, 0x19c8: 0x0040, 0x19c9: 0x0040, 0x19ca: 0x01d9, 0x19cb: 0x0fa9, -+ 0x19cc: 0x0fb9, 0x19cd: 0x1089, 0x19ce: 0x0279, 0x19cf: 0x0369, 0x19d0: 0x0289, 0x19d1: 0x0040, -+ 0x19d2: 0x0039, 0x19d3: 0x0ee9, 0x19d4: 0x1159, 0x19d5: 0x0ef9, 0x19d6: 0x0f09, 0x19d7: 0x1199, -+ 0x19d8: 0x0f31, 0x19d9: 0x0249, 0x19da: 0x0f41, 0x19db: 0x0259, 0x19dc: 0x0f51, 0x19dd: 0x0359, -+ 0x19de: 0x0f61, 0x19df: 0x0f71, 0x19e0: 0x00d9, 0x19e1: 0x0f99, 0x19e2: 0x2039, 0x19e3: 0x0269, -+ 0x19e4: 0x01d9, 0x19e5: 0x0fa9, 0x19e6: 0x0fb9, 0x19e7: 0x1089, 0x19e8: 0x0279, 0x19e9: 0x0369, -+ 0x19ea: 0x0289, 0x19eb: 0x13d1, 0x19ec: 0x0039, 0x19ed: 0x0ee9, 0x19ee: 0x1159, 0x19ef: 0x0ef9, -+ 0x19f0: 0x0f09, 0x19f1: 0x1199, 0x19f2: 0x0f31, 0x19f3: 0x0249, 0x19f4: 0x0f41, 0x19f5: 0x0259, -+ 0x19f6: 0x0f51, 0x19f7: 0x0359, 0x19f8: 0x0f61, 0x19f9: 0x0f71, 0x19fa: 0x00d9, 0x19fb: 0x0f99, -+ 0x19fc: 0x2039, 0x19fd: 0x0269, 0x19fe: 0x01d9, 0x19ff: 0x0fa9, -+ // Block 0x68, offset 0x1a00 -+ 0x1a00: 0x0fb9, 0x1a01: 0x1089, 0x1a02: 0x0279, 0x1a03: 0x0369, 0x1a04: 0x0289, 0x1a05: 0x13d1, -+ 0x1a06: 0x0039, 0x1a07: 0x0ee9, 0x1a08: 0x1159, 0x1a09: 0x0ef9, 0x1a0a: 0x0f09, 0x1a0b: 0x1199, -+ 0x1a0c: 0x0f31, 0x1a0d: 0x0249, 0x1a0e: 0x0f41, 0x1a0f: 0x0259, 0x1a10: 0x0f51, 0x1a11: 0x0359, -+ 0x1a12: 0x0f61, 0x1a13: 0x0f71, 0x1a14: 0x00d9, 0x1a15: 0x0f99, 0x1a16: 0x2039, 0x1a17: 0x0269, -+ 0x1a18: 0x01d9, 0x1a19: 0x0fa9, 0x1a1a: 0x0fb9, 0x1a1b: 0x1089, 0x1a1c: 0x0279, 0x1a1d: 0x0369, -+ 0x1a1e: 0x0289, 0x1a1f: 0x13d1, 0x1a20: 0x0039, 0x1a21: 0x0ee9, 0x1a22: 0x1159, 0x1a23: 0x0ef9, -+ 0x1a24: 0x0f09, 0x1a25: 0x1199, 0x1a26: 0x0f31, 0x1a27: 0x0249, 0x1a28: 0x0f41, 0x1a29: 0x0259, -+ 0x1a2a: 0x0f51, 0x1a2b: 0x0359, 0x1a2c: 0x0f61, 0x1a2d: 0x0f71, 0x1a2e: 0x00d9, 0x1a2f: 0x0f99, -+ 0x1a30: 0x2039, 0x1a31: 0x0269, 0x1a32: 0x01d9, 0x1a33: 0x0fa9, 0x1a34: 0x0fb9, 0x1a35: 0x1089, -+ 0x1a36: 0x0279, 0x1a37: 0x0369, 0x1a38: 0x0289, 0x1a39: 0x13d1, 0x1a3a: 0x0039, 0x1a3b: 0x0ee9, -+ 0x1a3c: 0x1159, 0x1a3d: 0x0ef9, 0x1a3e: 0x0f09, 0x1a3f: 0x1199, -+ // Block 0x69, offset 0x1a40 -+ 0x1a40: 0x0f31, 0x1a41: 0x0249, 0x1a42: 0x0f41, 0x1a43: 0x0259, 0x1a44: 0x0f51, 0x1a45: 0x0359, -+ 0x1a46: 0x0f61, 0x1a47: 0x0f71, 0x1a48: 0x00d9, 0x1a49: 0x0f99, 0x1a4a: 0x2039, 0x1a4b: 0x0269, -+ 0x1a4c: 0x01d9, 0x1a4d: 0x0fa9, 0x1a4e: 0x0fb9, 0x1a4f: 0x1089, 0x1a50: 0x0279, 0x1a51: 0x0369, -+ 0x1a52: 0x0289, 0x1a53: 0x13d1, 0x1a54: 0x0039, 0x1a55: 0x0ee9, 0x1a56: 0x1159, 0x1a57: 0x0ef9, -+ 0x1a58: 0x0f09, 0x1a59: 0x1199, 0x1a5a: 0x0f31, 0x1a5b: 0x0249, 0x1a5c: 0x0f41, 0x1a5d: 0x0259, -+ 0x1a5e: 0x0f51, 0x1a5f: 0x0359, 0x1a60: 0x0f61, 0x1a61: 0x0f71, 0x1a62: 0x00d9, 0x1a63: 0x0f99, -+ 0x1a64: 0x2039, 0x1a65: 0x0269, 0x1a66: 0x01d9, 0x1a67: 0x0fa9, 0x1a68: 0x0fb9, 0x1a69: 0x1089, -+ 0x1a6a: 0x0279, 0x1a6b: 0x0369, 0x1a6c: 0x0289, 0x1a6d: 0x13d1, 0x1a6e: 0x0039, 0x1a6f: 0x0ee9, -+ 0x1a70: 0x1159, 0x1a71: 0x0ef9, 0x1a72: 0x0f09, 0x1a73: 0x1199, 0x1a74: 0x0f31, 0x1a75: 0x0249, -+ 0x1a76: 0x0f41, 0x1a77: 0x0259, 0x1a78: 0x0f51, 0x1a79: 0x0359, 0x1a7a: 0x0f61, 0x1a7b: 0x0f71, -+ 0x1a7c: 0x00d9, 0x1a7d: 0x0f99, 0x1a7e: 0x2039, 0x1a7f: 0x0269, -+ // Block 0x6a, offset 0x1a80 -+ 0x1a80: 0x01d9, 0x1a81: 0x0fa9, 0x1a82: 0x0fb9, 0x1a83: 0x1089, 0x1a84: 0x0279, 0x1a85: 0x0369, -+ 0x1a86: 0x0289, 0x1a87: 0x13d1, 0x1a88: 0x0039, 0x1a89: 0x0ee9, 0x1a8a: 0x1159, 0x1a8b: 0x0ef9, -+ 0x1a8c: 0x0f09, 0x1a8d: 0x1199, 0x1a8e: 0x0f31, 0x1a8f: 0x0249, 0x1a90: 0x0f41, 0x1a91: 0x0259, -+ 0x1a92: 0x0f51, 0x1a93: 0x0359, 0x1a94: 0x0f61, 0x1a95: 0x0f71, 0x1a96: 0x00d9, 0x1a97: 0x0f99, -+ 0x1a98: 0x2039, 0x1a99: 0x0269, 0x1a9a: 0x01d9, 0x1a9b: 0x0fa9, 0x1a9c: 0x0fb9, 0x1a9d: 0x1089, -+ 0x1a9e: 0x0279, 0x1a9f: 0x0369, 0x1aa0: 0x0289, 0x1aa1: 0x13d1, 0x1aa2: 0x0039, 0x1aa3: 0x0ee9, -+ 0x1aa4: 0x1159, 0x1aa5: 0x0ef9, 0x1aa6: 0x0f09, 0x1aa7: 0x1199, 0x1aa8: 0x0f31, 0x1aa9: 0x0249, -+ 0x1aaa: 0x0f41, 0x1aab: 0x0259, 0x1aac: 0x0f51, 0x1aad: 0x0359, 0x1aae: 0x0f61, 0x1aaf: 0x0f71, -+ 0x1ab0: 0x00d9, 0x1ab1: 0x0f99, 0x1ab2: 0x2039, 0x1ab3: 0x0269, 0x1ab4: 0x01d9, 0x1ab5: 0x0fa9, -+ 0x1ab6: 0x0fb9, 0x1ab7: 0x1089, 0x1ab8: 0x0279, 0x1ab9: 0x0369, 0x1aba: 0x0289, 0x1abb: 0x13d1, -+ 0x1abc: 0x0039, 0x1abd: 0x0ee9, 0x1abe: 0x1159, 0x1abf: 0x0ef9, -+ // Block 0x6b, offset 0x1ac0 -+ 0x1ac0: 0x0f09, 0x1ac1: 0x1199, 0x1ac2: 0x0f31, 0x1ac3: 0x0249, 0x1ac4: 0x0f41, 0x1ac5: 0x0259, -+ 0x1ac6: 0x0f51, 0x1ac7: 0x0359, 0x1ac8: 0x0f61, 0x1ac9: 0x0f71, 0x1aca: 0x00d9, 0x1acb: 0x0f99, -+ 0x1acc: 0x2039, 0x1acd: 0x0269, 0x1ace: 0x01d9, 0x1acf: 0x0fa9, 0x1ad0: 0x0fb9, 0x1ad1: 0x1089, -+ 0x1ad2: 0x0279, 0x1ad3: 0x0369, 0x1ad4: 0x0289, 0x1ad5: 0x13d1, 0x1ad6: 0x0039, 0x1ad7: 0x0ee9, -+ 0x1ad8: 0x1159, 0x1ad9: 0x0ef9, 0x1ada: 0x0f09, 0x1adb: 0x1199, 0x1adc: 0x0f31, 0x1add: 0x0249, -+ 0x1ade: 0x0f41, 0x1adf: 0x0259, 0x1ae0: 0x0f51, 0x1ae1: 0x0359, 0x1ae2: 0x0f61, 0x1ae3: 0x0f71, -+ 0x1ae4: 0x00d9, 0x1ae5: 0x0f99, 0x1ae6: 0x2039, 0x1ae7: 0x0269, 0x1ae8: 0x01d9, 0x1ae9: 0x0fa9, -+ 0x1aea: 0x0fb9, 0x1aeb: 0x1089, 0x1aec: 0x0279, 0x1aed: 0x0369, 0x1aee: 0x0289, 0x1aef: 0x13d1, -+ 0x1af0: 0x0039, 0x1af1: 0x0ee9, 0x1af2: 0x1159, 0x1af3: 0x0ef9, 0x1af4: 0x0f09, 0x1af5: 0x1199, -+ 0x1af6: 0x0f31, 0x1af7: 0x0249, 0x1af8: 0x0f41, 0x1af9: 0x0259, 0x1afa: 0x0f51, 0x1afb: 0x0359, -+ 0x1afc: 0x0f61, 0x1afd: 0x0f71, 0x1afe: 0x00d9, 0x1aff: 0x0f99, -+ // Block 0x6c, offset 0x1b00 -+ 0x1b00: 0x2039, 0x1b01: 0x0269, 0x1b02: 0x01d9, 0x1b03: 0x0fa9, 0x1b04: 0x0fb9, 0x1b05: 0x1089, -+ 0x1b06: 0x0279, 0x1b07: 0x0369, 0x1b08: 0x0289, 0x1b09: 0x13d1, 0x1b0a: 0x0039, 0x1b0b: 0x0ee9, -+ 0x1b0c: 0x1159, 0x1b0d: 0x0ef9, 0x1b0e: 0x0f09, 0x1b0f: 0x1199, 0x1b10: 0x0f31, 0x1b11: 0x0249, -+ 0x1b12: 0x0f41, 0x1b13: 0x0259, 0x1b14: 0x0f51, 0x1b15: 0x0359, 0x1b16: 0x0f61, 0x1b17: 0x0f71, -+ 0x1b18: 0x00d9, 0x1b19: 0x0f99, 0x1b1a: 0x2039, 0x1b1b: 0x0269, 0x1b1c: 0x01d9, 0x1b1d: 0x0fa9, -+ 0x1b1e: 0x0fb9, 0x1b1f: 0x1089, 0x1b20: 0x0279, 0x1b21: 0x0369, 0x1b22: 0x0289, 0x1b23: 0x13d1, -+ 0x1b24: 0xbad1, 0x1b25: 0xbae9, 0x1b26: 0x0040, 0x1b27: 0x0040, 0x1b28: 0xbb01, 0x1b29: 0x1099, -+ 0x1b2a: 0x10b1, 0x1b2b: 0x10c9, 0x1b2c: 0xbb19, 0x1b2d: 0xbb31, 0x1b2e: 0xbb49, 0x1b2f: 0x1429, -+ 0x1b30: 0x1a31, 0x1b31: 0xbb61, 0x1b32: 0xbb79, 0x1b33: 0xbb91, 0x1b34: 0xbba9, 0x1b35: 0xbbc1, -+ 0x1b36: 0xbbd9, 0x1b37: 0x2109, 0x1b38: 0x1111, 0x1b39: 0x1429, 0x1b3a: 0xbbf1, 0x1b3b: 0xbc09, -+ 0x1b3c: 0xbc21, 0x1b3d: 0x10e1, 0x1b3e: 0x10f9, 0x1b3f: 0xbc39, -+ // Block 0x6d, offset 0x1b40 -+ 0x1b40: 0x2079, 0x1b41: 0xbc51, 0x1b42: 0xbb01, 0x1b43: 0x1099, 0x1b44: 0x10b1, 0x1b45: 0x10c9, -+ 0x1b46: 0xbb19, 0x1b47: 0xbb31, 0x1b48: 0xbb49, 0x1b49: 0x1429, 0x1b4a: 0x1a31, 0x1b4b: 0xbb61, -+ 0x1b4c: 0xbb79, 0x1b4d: 0xbb91, 0x1b4e: 0xbba9, 0x1b4f: 0xbbc1, 0x1b50: 0xbbd9, 0x1b51: 0x2109, -+ 0x1b52: 0x1111, 0x1b53: 0xbbf1, 0x1b54: 0xbbf1, 0x1b55: 0xbc09, 0x1b56: 0xbc21, 0x1b57: 0x10e1, -+ 0x1b58: 0x10f9, 0x1b59: 0xbc39, 0x1b5a: 0x2079, 0x1b5b: 0xbc71, 0x1b5c: 0xbb19, 0x1b5d: 0x1429, -+ 0x1b5e: 0xbb61, 0x1b5f: 0x10e1, 0x1b60: 0x1111, 0x1b61: 0x2109, 0x1b62: 0xbb01, 0x1b63: 0x1099, -+ 0x1b64: 0x10b1, 0x1b65: 0x10c9, 0x1b66: 0xbb19, 0x1b67: 0xbb31, 0x1b68: 0xbb49, 0x1b69: 0x1429, -+ 0x1b6a: 0x1a31, 0x1b6b: 0xbb61, 0x1b6c: 0xbb79, 0x1b6d: 0xbb91, 0x1b6e: 0xbba9, 0x1b6f: 0xbbc1, -+ 0x1b70: 0xbbd9, 0x1b71: 0x2109, 0x1b72: 0x1111, 0x1b73: 0x1429, 0x1b74: 0xbbf1, 0x1b75: 0xbc09, -+ 0x1b76: 0xbc21, 0x1b77: 0x10e1, 0x1b78: 0x10f9, 0x1b79: 0xbc39, 0x1b7a: 0x2079, 0x1b7b: 0xbc51, -+ 0x1b7c: 0xbb01, 0x1b7d: 0x1099, 0x1b7e: 0x10b1, 0x1b7f: 0x10c9, -+ // Block 0x6e, offset 0x1b80 -+ 0x1b80: 0xbb19, 0x1b81: 0xbb31, 0x1b82: 0xbb49, 0x1b83: 0x1429, 0x1b84: 0x1a31, 0x1b85: 0xbb61, -+ 0x1b86: 0xbb79, 0x1b87: 0xbb91, 0x1b88: 0xbba9, 0x1b89: 0xbbc1, 0x1b8a: 0xbbd9, 0x1b8b: 0x2109, -+ 0x1b8c: 0x1111, 0x1b8d: 0xbbf1, 0x1b8e: 0xbbf1, 0x1b8f: 0xbc09, 0x1b90: 0xbc21, 0x1b91: 0x10e1, -+ 0x1b92: 0x10f9, 0x1b93: 0xbc39, 0x1b94: 0x2079, 0x1b95: 0xbc71, 0x1b96: 0xbb19, 0x1b97: 0x1429, -+ 0x1b98: 0xbb61, 0x1b99: 0x10e1, 0x1b9a: 0x1111, 0x1b9b: 0x2109, 0x1b9c: 0xbb01, 0x1b9d: 0x1099, -+ 0x1b9e: 0x10b1, 0x1b9f: 0x10c9, 0x1ba0: 0xbb19, 0x1ba1: 0xbb31, 0x1ba2: 0xbb49, 0x1ba3: 0x1429, -+ 0x1ba4: 0x1a31, 0x1ba5: 0xbb61, 0x1ba6: 0xbb79, 0x1ba7: 0xbb91, 0x1ba8: 0xbba9, 0x1ba9: 0xbbc1, -+ 0x1baa: 0xbbd9, 0x1bab: 0x2109, 0x1bac: 0x1111, 0x1bad: 0x1429, 0x1bae: 0xbbf1, 0x1baf: 0xbc09, -+ 0x1bb0: 0xbc21, 0x1bb1: 0x10e1, 0x1bb2: 0x10f9, 0x1bb3: 0xbc39, 0x1bb4: 0x2079, 0x1bb5: 0xbc51, -+ 0x1bb6: 0xbb01, 0x1bb7: 0x1099, 0x1bb8: 0x10b1, 0x1bb9: 0x10c9, 0x1bba: 0xbb19, 0x1bbb: 0xbb31, -+ 0x1bbc: 0xbb49, 0x1bbd: 0x1429, 0x1bbe: 0x1a31, 0x1bbf: 0xbb61, -+ // Block 0x6f, offset 0x1bc0 -+ 0x1bc0: 0xbb79, 0x1bc1: 0xbb91, 0x1bc2: 0xbba9, 0x1bc3: 0xbbc1, 0x1bc4: 0xbbd9, 0x1bc5: 0x2109, -+ 0x1bc6: 0x1111, 0x1bc7: 0xbbf1, 0x1bc8: 0xbbf1, 0x1bc9: 0xbc09, 0x1bca: 0xbc21, 0x1bcb: 0x10e1, -+ 0x1bcc: 0x10f9, 0x1bcd: 0xbc39, 0x1bce: 0x2079, 0x1bcf: 0xbc71, 0x1bd0: 0xbb19, 0x1bd1: 0x1429, -+ 0x1bd2: 0xbb61, 0x1bd3: 0x10e1, 0x1bd4: 0x1111, 0x1bd5: 0x2109, 0x1bd6: 0xbb01, 0x1bd7: 0x1099, -+ 0x1bd8: 0x10b1, 0x1bd9: 0x10c9, 0x1bda: 0xbb19, 0x1bdb: 0xbb31, 0x1bdc: 0xbb49, 0x1bdd: 0x1429, -+ 0x1bde: 0x1a31, 0x1bdf: 0xbb61, 0x1be0: 0xbb79, 0x1be1: 0xbb91, 0x1be2: 0xbba9, 0x1be3: 0xbbc1, -+ 0x1be4: 0xbbd9, 0x1be5: 0x2109, 0x1be6: 0x1111, 0x1be7: 0x1429, 0x1be8: 0xbbf1, 0x1be9: 0xbc09, -+ 0x1bea: 0xbc21, 0x1beb: 0x10e1, 0x1bec: 0x10f9, 0x1bed: 0xbc39, 0x1bee: 0x2079, 0x1bef: 0xbc51, -+ 0x1bf0: 0xbb01, 0x1bf1: 0x1099, 0x1bf2: 0x10b1, 0x1bf3: 0x10c9, 0x1bf4: 0xbb19, 0x1bf5: 0xbb31, -+ 0x1bf6: 0xbb49, 0x1bf7: 0x1429, 0x1bf8: 0x1a31, 0x1bf9: 0xbb61, 0x1bfa: 0xbb79, 0x1bfb: 0xbb91, -+ 0x1bfc: 0xbba9, 0x1bfd: 0xbbc1, 0x1bfe: 0xbbd9, 0x1bff: 0x2109, -+ // Block 0x70, offset 0x1c00 -+ 0x1c00: 0x1111, 0x1c01: 0xbbf1, 0x1c02: 0xbbf1, 0x1c03: 0xbc09, 0x1c04: 0xbc21, 0x1c05: 0x10e1, -+ 0x1c06: 0x10f9, 0x1c07: 0xbc39, 0x1c08: 0x2079, 0x1c09: 0xbc71, 0x1c0a: 0xbb19, 0x1c0b: 0x1429, -+ 0x1c0c: 0xbb61, 0x1c0d: 0x10e1, 0x1c0e: 0x1111, 0x1c0f: 0x2109, 0x1c10: 0xbb01, 0x1c11: 0x1099, -+ 0x1c12: 0x10b1, 0x1c13: 0x10c9, 0x1c14: 0xbb19, 0x1c15: 0xbb31, 0x1c16: 0xbb49, 0x1c17: 0x1429, -+ 0x1c18: 0x1a31, 0x1c19: 0xbb61, 0x1c1a: 0xbb79, 0x1c1b: 0xbb91, 0x1c1c: 0xbba9, 0x1c1d: 0xbbc1, -+ 0x1c1e: 0xbbd9, 0x1c1f: 0x2109, 0x1c20: 0x1111, 0x1c21: 0x1429, 0x1c22: 0xbbf1, 0x1c23: 0xbc09, -+ 0x1c24: 0xbc21, 0x1c25: 0x10e1, 0x1c26: 0x10f9, 0x1c27: 0xbc39, 0x1c28: 0x2079, 0x1c29: 0xbc51, -+ 0x1c2a: 0xbb01, 0x1c2b: 0x1099, 0x1c2c: 0x10b1, 0x1c2d: 0x10c9, 0x1c2e: 0xbb19, 0x1c2f: 0xbb31, -+ 0x1c30: 0xbb49, 0x1c31: 0x1429, 0x1c32: 0x1a31, 0x1c33: 0xbb61, 0x1c34: 0xbb79, 0x1c35: 0xbb91, -+ 0x1c36: 0xbba9, 0x1c37: 0xbbc1, 0x1c38: 0xbbd9, 0x1c39: 0x2109, 0x1c3a: 0x1111, 0x1c3b: 0xbbf1, -+ 0x1c3c: 0xbbf1, 0x1c3d: 0xbc09, 0x1c3e: 0xbc21, 0x1c3f: 0x10e1, -+ // Block 0x71, offset 0x1c40 -+ 0x1c40: 0x10f9, 0x1c41: 0xbc39, 0x1c42: 0x2079, 0x1c43: 0xbc71, 0x1c44: 0xbb19, 0x1c45: 0x1429, -+ 0x1c46: 0xbb61, 0x1c47: 0x10e1, 0x1c48: 0x1111, 0x1c49: 0x2109, 0x1c4a: 0xbc91, 0x1c4b: 0xbc91, -+ 0x1c4c: 0x0040, 0x1c4d: 0x0040, 0x1c4e: 0x1f41, 0x1c4f: 0x00c9, 0x1c50: 0x0069, 0x1c51: 0x0079, -+ 0x1c52: 0x1f51, 0x1c53: 0x1f61, 0x1c54: 0x1f71, 0x1c55: 0x1f81, 0x1c56: 0x1f91, 0x1c57: 0x1fa1, -+ 0x1c58: 0x1f41, 0x1c59: 0x00c9, 0x1c5a: 0x0069, 0x1c5b: 0x0079, 0x1c5c: 0x1f51, 0x1c5d: 0x1f61, -+ 0x1c5e: 0x1f71, 0x1c5f: 0x1f81, 0x1c60: 0x1f91, 0x1c61: 0x1fa1, 0x1c62: 0x1f41, 0x1c63: 0x00c9, -+ 0x1c64: 0x0069, 0x1c65: 0x0079, 0x1c66: 0x1f51, 0x1c67: 0x1f61, 0x1c68: 0x1f71, 0x1c69: 0x1f81, -+ 0x1c6a: 0x1f91, 0x1c6b: 0x1fa1, 0x1c6c: 0x1f41, 0x1c6d: 0x00c9, 0x1c6e: 0x0069, 0x1c6f: 0x0079, -+ 0x1c70: 0x1f51, 0x1c71: 0x1f61, 0x1c72: 0x1f71, 0x1c73: 0x1f81, 0x1c74: 0x1f91, 0x1c75: 0x1fa1, -+ 0x1c76: 0x1f41, 0x1c77: 0x00c9, 0x1c78: 0x0069, 0x1c79: 0x0079, 0x1c7a: 0x1f51, 0x1c7b: 0x1f61, -+ 0x1c7c: 0x1f71, 0x1c7d: 0x1f81, 0x1c7e: 0x1f91, 0x1c7f: 0x1fa1, -+ // Block 0x72, offset 0x1c80 -+ 0x1c80: 0xe115, 0x1c81: 0xe115, 0x1c82: 0xe135, 0x1c83: 0xe135, 0x1c84: 0xe115, 0x1c85: 0xe115, -+ 0x1c86: 0xe175, 0x1c87: 0xe175, 0x1c88: 0xe115, 0x1c89: 0xe115, 0x1c8a: 0xe135, 0x1c8b: 0xe135, -+ 0x1c8c: 0xe115, 0x1c8d: 0xe115, 0x1c8e: 0xe1f5, 0x1c8f: 0xe1f5, 0x1c90: 0xe115, 0x1c91: 0xe115, -+ 0x1c92: 0xe135, 0x1c93: 0xe135, 0x1c94: 0xe115, 0x1c95: 0xe115, 0x1c96: 0xe175, 0x1c97: 0xe175, -+ 0x1c98: 0xe115, 0x1c99: 0xe115, 0x1c9a: 0xe135, 0x1c9b: 0xe135, 0x1c9c: 0xe115, 0x1c9d: 0xe115, -+ 0x1c9e: 0x8b3d, 0x1c9f: 0x8b3d, 0x1ca0: 0x04b5, 0x1ca1: 0x04b5, 0x1ca2: 0x0a08, 0x1ca3: 0x0a08, -+ 0x1ca4: 0x0a08, 0x1ca5: 0x0a08, 0x1ca6: 0x0a08, 0x1ca7: 0x0a08, 0x1ca8: 0x0a08, 0x1ca9: 0x0a08, -+ 0x1caa: 0x0a08, 0x1cab: 0x0a08, 0x1cac: 0x0a08, 0x1cad: 0x0a08, 0x1cae: 0x0a08, 0x1caf: 0x0a08, -+ 0x1cb0: 0x0a08, 0x1cb1: 0x0a08, 0x1cb2: 0x0a08, 0x1cb3: 0x0a08, 0x1cb4: 0x0a08, 0x1cb5: 0x0a08, -+ 0x1cb6: 0x0a08, 0x1cb7: 0x0a08, 0x1cb8: 0x0a08, 0x1cb9: 0x0a08, 0x1cba: 0x0a08, 0x1cbb: 0x0a08, -+ 0x1cbc: 0x0a08, 0x1cbd: 0x0a08, 0x1cbe: 0x0a08, 0x1cbf: 0x0a08, -+ // Block 0x73, offset 0x1cc0 -+ 0x1cc0: 0xb1d9, 0x1cc1: 0xb1f1, 0x1cc2: 0xb251, 0x1cc3: 0xb299, 0x1cc4: 0x0040, 0x1cc5: 0xb461, -+ 0x1cc6: 0xb2e1, 0x1cc7: 0xb269, 0x1cc8: 0xb359, 0x1cc9: 0xb479, 0x1cca: 0xb3e9, 0x1ccb: 0xb401, -+ 0x1ccc: 0xb419, 0x1ccd: 0xb431, 0x1cce: 0xb2f9, 0x1ccf: 0xb389, 0x1cd0: 0xb3b9, 0x1cd1: 0xb329, -+ 0x1cd2: 0xb3d1, 0x1cd3: 0xb2c9, 0x1cd4: 0xb311, 0x1cd5: 0xb221, 0x1cd6: 0xb239, 0x1cd7: 0xb281, -+ 0x1cd8: 0xb2b1, 0x1cd9: 0xb341, 0x1cda: 0xb371, 0x1cdb: 0xb3a1, 0x1cdc: 0xbca9, 0x1cdd: 0x7999, -+ 0x1cde: 0xbcc1, 0x1cdf: 0xbcd9, 0x1ce0: 0x0040, 0x1ce1: 0xb1f1, 0x1ce2: 0xb251, 0x1ce3: 0x0040, -+ 0x1ce4: 0xb449, 0x1ce5: 0x0040, 0x1ce6: 0x0040, 0x1ce7: 0xb269, 0x1ce8: 0x0040, 0x1ce9: 0xb479, -+ 0x1cea: 0xb3e9, 0x1ceb: 0xb401, 0x1cec: 0xb419, 0x1ced: 0xb431, 0x1cee: 0xb2f9, 0x1cef: 0xb389, -+ 0x1cf0: 0xb3b9, 0x1cf1: 0xb329, 0x1cf2: 0xb3d1, 0x1cf3: 0x0040, 0x1cf4: 0xb311, 0x1cf5: 0xb221, -+ 0x1cf6: 0xb239, 0x1cf7: 0xb281, 0x1cf8: 0x0040, 0x1cf9: 0xb341, 0x1cfa: 0x0040, 0x1cfb: 0xb3a1, -+ 0x1cfc: 0x0040, 0x1cfd: 0x0040, 0x1cfe: 0x0040, 0x1cff: 0x0040, -+ // Block 0x74, offset 0x1d00 -+ 0x1d00: 0x0040, 0x1d01: 0x0040, 0x1d02: 0xb251, 0x1d03: 0x0040, 0x1d04: 0x0040, 0x1d05: 0x0040, -+ 0x1d06: 0x0040, 0x1d07: 0xb269, 0x1d08: 0x0040, 0x1d09: 0xb479, 0x1d0a: 0x0040, 0x1d0b: 0xb401, -+ 0x1d0c: 0x0040, 0x1d0d: 0xb431, 0x1d0e: 0xb2f9, 0x1d0f: 0xb389, 0x1d10: 0x0040, 0x1d11: 0xb329, -+ 0x1d12: 0xb3d1, 0x1d13: 0x0040, 0x1d14: 0xb311, 0x1d15: 0x0040, 0x1d16: 0x0040, 0x1d17: 0xb281, -+ 0x1d18: 0x0040, 0x1d19: 0xb341, 0x1d1a: 0x0040, 0x1d1b: 0xb3a1, 0x1d1c: 0x0040, 0x1d1d: 0x7999, -+ 0x1d1e: 0x0040, 0x1d1f: 0xbcd9, 0x1d20: 0x0040, 0x1d21: 0xb1f1, 0x1d22: 0xb251, 0x1d23: 0x0040, -+ 0x1d24: 0xb449, 0x1d25: 0x0040, 0x1d26: 0x0040, 0x1d27: 0xb269, 0x1d28: 0xb359, 0x1d29: 0xb479, -+ 0x1d2a: 0xb3e9, 0x1d2b: 0x0040, 0x1d2c: 0xb419, 0x1d2d: 0xb431, 0x1d2e: 0xb2f9, 0x1d2f: 0xb389, -+ 0x1d30: 0xb3b9, 0x1d31: 0xb329, 0x1d32: 0xb3d1, 0x1d33: 0x0040, 0x1d34: 0xb311, 0x1d35: 0xb221, -+ 0x1d36: 0xb239, 0x1d37: 0xb281, 0x1d38: 0x0040, 0x1d39: 0xb341, 0x1d3a: 0xb371, 0x1d3b: 0xb3a1, -+ 0x1d3c: 0xbca9, 0x1d3d: 0x0040, 0x1d3e: 0xbcc1, 0x1d3f: 0x0040, -+ // Block 0x75, offset 0x1d40 -+ 0x1d40: 0xb1d9, 0x1d41: 0xb1f1, 0x1d42: 0xb251, 0x1d43: 0xb299, 0x1d44: 0xb449, 0x1d45: 0xb461, -+ 0x1d46: 0xb2e1, 0x1d47: 0xb269, 0x1d48: 0xb359, 0x1d49: 0xb479, 0x1d4a: 0x0040, 0x1d4b: 0xb401, -+ 0x1d4c: 0xb419, 0x1d4d: 0xb431, 0x1d4e: 0xb2f9, 0x1d4f: 0xb389, 0x1d50: 0xb3b9, 0x1d51: 0xb329, -+ 0x1d52: 0xb3d1, 0x1d53: 0xb2c9, 0x1d54: 0xb311, 0x1d55: 0xb221, 0x1d56: 0xb239, 0x1d57: 0xb281, -+ 0x1d58: 0xb2b1, 0x1d59: 0xb341, 0x1d5a: 0xb371, 0x1d5b: 0xb3a1, 0x1d5c: 0x0040, 0x1d5d: 0x0040, -+ 0x1d5e: 0x0040, 0x1d5f: 0x0040, 0x1d60: 0x0040, 0x1d61: 0xb1f1, 0x1d62: 0xb251, 0x1d63: 0xb299, -+ 0x1d64: 0x0040, 0x1d65: 0xb461, 0x1d66: 0xb2e1, 0x1d67: 0xb269, 0x1d68: 0xb359, 0x1d69: 0xb479, -+ 0x1d6a: 0x0040, 0x1d6b: 0xb401, 0x1d6c: 0xb419, 0x1d6d: 0xb431, 0x1d6e: 0xb2f9, 0x1d6f: 0xb389, -+ 0x1d70: 0xb3b9, 0x1d71: 0xb329, 0x1d72: 0xb3d1, 0x1d73: 0xb2c9, 0x1d74: 0xb311, 0x1d75: 0xb221, -+ 0x1d76: 0xb239, 0x1d77: 0xb281, 0x1d78: 0xb2b1, 0x1d79: 0xb341, 0x1d7a: 0xb371, 0x1d7b: 0xb3a1, -+ 0x1d7c: 0x0040, 0x1d7d: 0x0040, 0x1d7e: 0x0040, 0x1d7f: 0x0040, -+ // Block 0x76, offset 0x1d80 -+ 0x1d80: 0x0040, 0x1d81: 0xbcf2, 0x1d82: 0xbd0a, 0x1d83: 0xbd22, 0x1d84: 0xbd3a, 0x1d85: 0xbd52, -+ 0x1d86: 0xbd6a, 0x1d87: 0xbd82, 0x1d88: 0xbd9a, 0x1d89: 0xbdb2, 0x1d8a: 0xbdca, 0x1d8b: 0x0018, -+ 0x1d8c: 0x0018, 0x1d8d: 0x0018, 0x1d8e: 0x0018, 0x1d8f: 0x0018, 0x1d90: 0xbde2, 0x1d91: 0xbe02, -+ 0x1d92: 0xbe22, 0x1d93: 0xbe42, 0x1d94: 0xbe62, 0x1d95: 0xbe82, 0x1d96: 0xbea2, 0x1d97: 0xbec2, -+ 0x1d98: 0xbee2, 0x1d99: 0xbf02, 0x1d9a: 0xbf22, 0x1d9b: 0xbf42, 0x1d9c: 0xbf62, 0x1d9d: 0xbf82, -+ 0x1d9e: 0xbfa2, 0x1d9f: 0xbfc2, 0x1da0: 0xbfe2, 0x1da1: 0xc002, 0x1da2: 0xc022, 0x1da3: 0xc042, -+ 0x1da4: 0xc062, 0x1da5: 0xc082, 0x1da6: 0xc0a2, 0x1da7: 0xc0c2, 0x1da8: 0xc0e2, 0x1da9: 0xc102, -+ 0x1daa: 0xc121, 0x1dab: 0x1159, 0x1dac: 0x0269, 0x1dad: 0x66a9, 0x1dae: 0xc161, 0x1daf: 0x0018, -+ 0x1db0: 0x0039, 0x1db1: 0x0ee9, 0x1db2: 0x1159, 0x1db3: 0x0ef9, 0x1db4: 0x0f09, 0x1db5: 0x1199, -+ 0x1db6: 0x0f31, 0x1db7: 0x0249, 0x1db8: 0x0f41, 0x1db9: 0x0259, 0x1dba: 0x0f51, 0x1dbb: 0x0359, -+ 0x1dbc: 0x0f61, 0x1dbd: 0x0f71, 0x1dbe: 0x00d9, 0x1dbf: 0x0f99, -+ // Block 0x77, offset 0x1dc0 -+ 0x1dc0: 0x2039, 0x1dc1: 0x0269, 0x1dc2: 0x01d9, 0x1dc3: 0x0fa9, 0x1dc4: 0x0fb9, 0x1dc5: 0x1089, -+ 0x1dc6: 0x0279, 0x1dc7: 0x0369, 0x1dc8: 0x0289, 0x1dc9: 0x13d1, 0x1dca: 0xc179, 0x1dcb: 0x65e9, -+ 0x1dcc: 0xc191, 0x1dcd: 0x1441, 0x1dce: 0xc1a9, 0x1dcf: 0xc1c9, 0x1dd0: 0x0018, 0x1dd1: 0x0018, -+ 0x1dd2: 0x0018, 0x1dd3: 0x0018, 0x1dd4: 0x0018, 0x1dd5: 0x0018, 0x1dd6: 0x0018, 0x1dd7: 0x0018, -+ 0x1dd8: 0x0018, 0x1dd9: 0x0018, 0x1dda: 0x0018, 0x1ddb: 0x0018, 0x1ddc: 0x0018, 0x1ddd: 0x0018, -+ 0x1dde: 0x0018, 0x1ddf: 0x0018, 0x1de0: 0x0018, 0x1de1: 0x0018, 0x1de2: 0x0018, 0x1de3: 0x0018, -+ 0x1de4: 0x0018, 0x1de5: 0x0018, 0x1de6: 0x0018, 0x1de7: 0x0018, 0x1de8: 0x0018, 0x1de9: 0x0018, -+ 0x1dea: 0xc1e1, 0x1deb: 0xc1f9, 0x1dec: 0xc211, 0x1ded: 0x0018, 0x1dee: 0x0018, 0x1def: 0x0018, -+ 0x1df0: 0x0018, 0x1df1: 0x0018, 0x1df2: 0x0018, 0x1df3: 0x0018, 0x1df4: 0x0018, 0x1df5: 0x0018, -+ 0x1df6: 0x0018, 0x1df7: 0x0018, 0x1df8: 0x0018, 0x1df9: 0x0018, 0x1dfa: 0x0018, 0x1dfb: 0x0018, -+ 0x1dfc: 0x0018, 0x1dfd: 0x0018, 0x1dfe: 0x0018, 0x1dff: 0x0018, -+ // Block 0x78, offset 0x1e00 -+ 0x1e00: 0xc241, 0x1e01: 0xc279, 0x1e02: 0xc2b1, 0x1e03: 0x0040, 0x1e04: 0x0040, 0x1e05: 0x0040, -+ 0x1e06: 0x0040, 0x1e07: 0x0040, 0x1e08: 0x0040, 0x1e09: 0x0040, 0x1e0a: 0x0040, 0x1e0b: 0x0040, -+ 0x1e0c: 0x0040, 0x1e0d: 0x0040, 0x1e0e: 0x0040, 0x1e0f: 0x0040, 0x1e10: 0xc2d1, 0x1e11: 0xc2f1, -+ 0x1e12: 0xc311, 0x1e13: 0xc331, 0x1e14: 0xc351, 0x1e15: 0xc371, 0x1e16: 0xc391, 0x1e17: 0xc3b1, -+ 0x1e18: 0xc3d1, 0x1e19: 0xc3f1, 0x1e1a: 0xc411, 0x1e1b: 0xc431, 0x1e1c: 0xc451, 0x1e1d: 0xc471, -+ 0x1e1e: 0xc491, 0x1e1f: 0xc4b1, 0x1e20: 0xc4d1, 0x1e21: 0xc4f1, 0x1e22: 0xc511, 0x1e23: 0xc531, -+ 0x1e24: 0xc551, 0x1e25: 0xc571, 0x1e26: 0xc591, 0x1e27: 0xc5b1, 0x1e28: 0xc5d1, 0x1e29: 0xc5f1, -+ 0x1e2a: 0xc611, 0x1e2b: 0xc631, 0x1e2c: 0xc651, 0x1e2d: 0xc671, 0x1e2e: 0xc691, 0x1e2f: 0xc6b1, -+ 0x1e30: 0xc6d1, 0x1e31: 0xc6f1, 0x1e32: 0xc711, 0x1e33: 0xc731, 0x1e34: 0xc751, 0x1e35: 0xc771, -+ 0x1e36: 0xc791, 0x1e37: 0xc7b1, 0x1e38: 0xc7d1, 0x1e39: 0xc7f1, 0x1e3a: 0xc811, 0x1e3b: 0xc831, -+ 0x1e3c: 0x0040, 0x1e3d: 0x0040, 0x1e3e: 0x0040, 0x1e3f: 0x0040, -+ // Block 0x79, offset 0x1e40 -+ 0x1e40: 0xcb61, 0x1e41: 0xcb81, 0x1e42: 0xcba1, 0x1e43: 0x8b55, 0x1e44: 0xcbc1, 0x1e45: 0xcbe1, -+ 0x1e46: 0xcc01, 0x1e47: 0xcc21, 0x1e48: 0xcc41, 0x1e49: 0xcc61, 0x1e4a: 0xcc81, 0x1e4b: 0xcca1, -+ 0x1e4c: 0xccc1, 0x1e4d: 0x8b75, 0x1e4e: 0xcce1, 0x1e4f: 0xcd01, 0x1e50: 0xcd21, 0x1e51: 0xcd41, -+ 0x1e52: 0x8b95, 0x1e53: 0xcd61, 0x1e54: 0xcd81, 0x1e55: 0xc491, 0x1e56: 0x8bb5, 0x1e57: 0xcda1, -+ 0x1e58: 0xcdc1, 0x1e59: 0xcde1, 0x1e5a: 0xce01, 0x1e5b: 0xce21, 0x1e5c: 0x8bd5, 0x1e5d: 0xce41, -+ 0x1e5e: 0xce61, 0x1e5f: 0xce81, 0x1e60: 0xcea1, 0x1e61: 0xcec1, 0x1e62: 0xc7f1, 0x1e63: 0xcee1, -+ 0x1e64: 0xcf01, 0x1e65: 0xcf21, 0x1e66: 0xcf41, 0x1e67: 0xcf61, 0x1e68: 0xcf81, 0x1e69: 0xcfa1, -+ 0x1e6a: 0xcfc1, 0x1e6b: 0xcfe1, 0x1e6c: 0xd001, 0x1e6d: 0xd021, 0x1e6e: 0xd041, 0x1e6f: 0xd061, -+ 0x1e70: 0xd081, 0x1e71: 0xd0a1, 0x1e72: 0xd0a1, 0x1e73: 0xd0a1, 0x1e74: 0x8bf5, 0x1e75: 0xd0c1, -+ 0x1e76: 0xd0e1, 0x1e77: 0xd101, 0x1e78: 0x8c15, 0x1e79: 0xd121, 0x1e7a: 0xd141, 0x1e7b: 0xd161, -+ 0x1e7c: 0xd181, 0x1e7d: 0xd1a1, 0x1e7e: 0xd1c1, 0x1e7f: 0xd1e1, -+ // Block 0x7a, offset 0x1e80 -+ 0x1e80: 0xd201, 0x1e81: 0xd221, 0x1e82: 0xd241, 0x1e83: 0xd261, 0x1e84: 0xd281, 0x1e85: 0xd2a1, -+ 0x1e86: 0xd2a1, 0x1e87: 0xd2c1, 0x1e88: 0xd2e1, 0x1e89: 0xd301, 0x1e8a: 0xd321, 0x1e8b: 0xd341, -+ 0x1e8c: 0xd361, 0x1e8d: 0xd381, 0x1e8e: 0xd3a1, 0x1e8f: 0xd3c1, 0x1e90: 0xd3e1, 0x1e91: 0xd401, -+ 0x1e92: 0xd421, 0x1e93: 0xd441, 0x1e94: 0xd461, 0x1e95: 0xd481, 0x1e96: 0xd4a1, 0x1e97: 0xd4c1, -+ 0x1e98: 0xd4e1, 0x1e99: 0x8c35, 0x1e9a: 0xd501, 0x1e9b: 0xd521, 0x1e9c: 0xd541, 0x1e9d: 0xc371, -+ 0x1e9e: 0xd561, 0x1e9f: 0xd581, 0x1ea0: 0x8c55, 0x1ea1: 0x8c75, 0x1ea2: 0xd5a1, 0x1ea3: 0xd5c1, -+ 0x1ea4: 0xd5e1, 0x1ea5: 0xd601, 0x1ea6: 0xd621, 0x1ea7: 0xd641, 0x1ea8: 0x2040, 0x1ea9: 0xd661, -+ 0x1eaa: 0xd681, 0x1eab: 0xd681, 0x1eac: 0x8c95, 0x1ead: 0xd6a1, 0x1eae: 0xd6c1, 0x1eaf: 0xd6e1, -+ 0x1eb0: 0xd701, 0x1eb1: 0x8cb5, 0x1eb2: 0xd721, 0x1eb3: 0xd741, 0x1eb4: 0x2040, 0x1eb5: 0xd761, -+ 0x1eb6: 0xd781, 0x1eb7: 0xd7a1, 0x1eb8: 0xd7c1, 0x1eb9: 0xd7e1, 0x1eba: 0xd801, 0x1ebb: 0x8cd5, -+ 0x1ebc: 0xd821, 0x1ebd: 0x8cf5, 0x1ebe: 0xd841, 0x1ebf: 0xd861, -+ // Block 0x7b, offset 0x1ec0 -+ 0x1ec0: 0xd881, 0x1ec1: 0xd8a1, 0x1ec2: 0xd8c1, 0x1ec3: 0xd8e1, 0x1ec4: 0xd901, 0x1ec5: 0xd921, -+ 0x1ec6: 0xd941, 0x1ec7: 0xd961, 0x1ec8: 0xd981, 0x1ec9: 0x8d15, 0x1eca: 0xd9a1, 0x1ecb: 0xd9c1, -+ 0x1ecc: 0xd9e1, 0x1ecd: 0xda01, 0x1ece: 0xda21, 0x1ecf: 0x8d35, 0x1ed0: 0xda41, 0x1ed1: 0x8d55, -+ 0x1ed2: 0x8d75, 0x1ed3: 0xda61, 0x1ed4: 0xda81, 0x1ed5: 0xda81, 0x1ed6: 0xdaa1, 0x1ed7: 0x8d95, -+ 0x1ed8: 0x8db5, 0x1ed9: 0xdac1, 0x1eda: 0xdae1, 0x1edb: 0xdb01, 0x1edc: 0xdb21, 0x1edd: 0xdb41, -+ 0x1ede: 0xdb61, 0x1edf: 0xdb81, 0x1ee0: 0xdba1, 0x1ee1: 0xdbc1, 0x1ee2: 0xdbe1, 0x1ee3: 0xdc01, -+ 0x1ee4: 0x8dd5, 0x1ee5: 0xdc21, 0x1ee6: 0xdc41, 0x1ee7: 0xdc61, 0x1ee8: 0xdc81, 0x1ee9: 0xdc61, -+ 0x1eea: 0xdca1, 0x1eeb: 0xdcc1, 0x1eec: 0xdce1, 0x1eed: 0xdd01, 0x1eee: 0xdd21, 0x1eef: 0xdd41, -+ 0x1ef0: 0xdd61, 0x1ef1: 0xdd81, 0x1ef2: 0xdda1, 0x1ef3: 0xddc1, 0x1ef4: 0xdde1, 0x1ef5: 0xde01, -+ 0x1ef6: 0xde21, 0x1ef7: 0xde41, 0x1ef8: 0x8df5, 0x1ef9: 0xde61, 0x1efa: 0xde81, 0x1efb: 0xdea1, -+ 0x1efc: 0xdec1, 0x1efd: 0xdee1, 0x1efe: 0x8e15, 0x1eff: 0xdf01, -+ // Block 0x7c, offset 0x1f00 -+ 0x1f00: 0xe601, 0x1f01: 0xe621, 0x1f02: 0xe641, 0x1f03: 0xe661, 0x1f04: 0xe681, 0x1f05: 0xe6a1, -+ 0x1f06: 0x8f35, 0x1f07: 0xe6c1, 0x1f08: 0xe6e1, 0x1f09: 0xe701, 0x1f0a: 0xe721, 0x1f0b: 0xe741, -+ 0x1f0c: 0xe761, 0x1f0d: 0x8f55, 0x1f0e: 0xe781, 0x1f0f: 0xe7a1, 0x1f10: 0x8f75, 0x1f11: 0x8f95, -+ 0x1f12: 0xe7c1, 0x1f13: 0xe7e1, 0x1f14: 0xe801, 0x1f15: 0xe821, 0x1f16: 0xe841, 0x1f17: 0xe861, -+ 0x1f18: 0xe881, 0x1f19: 0xe8a1, 0x1f1a: 0xe8c1, 0x1f1b: 0x8fb5, 0x1f1c: 0xe8e1, 0x1f1d: 0x8fd5, -+ 0x1f1e: 0xe901, 0x1f1f: 0x2040, 0x1f20: 0xe921, 0x1f21: 0xe941, 0x1f22: 0xe961, 0x1f23: 0x8ff5, -+ 0x1f24: 0xe981, 0x1f25: 0xe9a1, 0x1f26: 0x9015, 0x1f27: 0x9035, 0x1f28: 0xe9c1, 0x1f29: 0xe9e1, -+ 0x1f2a: 0xea01, 0x1f2b: 0xea21, 0x1f2c: 0xea41, 0x1f2d: 0xea41, 0x1f2e: 0xea61, 0x1f2f: 0xea81, -+ 0x1f30: 0xeaa1, 0x1f31: 0xeac1, 0x1f32: 0xeae1, 0x1f33: 0xeb01, 0x1f34: 0xeb21, 0x1f35: 0x9055, -+ 0x1f36: 0xeb41, 0x1f37: 0x9075, 0x1f38: 0xeb61, 0x1f39: 0x9095, 0x1f3a: 0xeb81, 0x1f3b: 0x90b5, -+ 0x1f3c: 0x90d5, 0x1f3d: 0x90f5, 0x1f3e: 0xeba1, 0x1f3f: 0xebc1, -+ // Block 0x7d, offset 0x1f40 -+ 0x1f40: 0xebe1, 0x1f41: 0x9115, 0x1f42: 0x9135, 0x1f43: 0x9155, 0x1f44: 0x9175, 0x1f45: 0xec01, -+ 0x1f46: 0xec21, 0x1f47: 0xec21, 0x1f48: 0xec41, 0x1f49: 0xec61, 0x1f4a: 0xec81, 0x1f4b: 0xeca1, -+ 0x1f4c: 0xecc1, 0x1f4d: 0x9195, 0x1f4e: 0xece1, 0x1f4f: 0xed01, 0x1f50: 0xed21, 0x1f51: 0xed41, -+ 0x1f52: 0x91b5, 0x1f53: 0xed61, 0x1f54: 0x91d5, 0x1f55: 0x91f5, 0x1f56: 0xed81, 0x1f57: 0xeda1, -+ 0x1f58: 0xedc1, 0x1f59: 0xede1, 0x1f5a: 0xee01, 0x1f5b: 0xee21, 0x1f5c: 0x9215, 0x1f5d: 0x9235, -+ 0x1f5e: 0x9255, 0x1f5f: 0x2040, 0x1f60: 0xee41, 0x1f61: 0x9275, 0x1f62: 0xee61, 0x1f63: 0xee81, -+ 0x1f64: 0xeea1, 0x1f65: 0x9295, 0x1f66: 0xeec1, 0x1f67: 0xeee1, 0x1f68: 0xef01, 0x1f69: 0xef21, -+ 0x1f6a: 0xef41, 0x1f6b: 0x92b5, 0x1f6c: 0xef61, 0x1f6d: 0xef81, 0x1f6e: 0xefa1, 0x1f6f: 0xefc1, -+ 0x1f70: 0xefe1, 0x1f71: 0xf001, 0x1f72: 0x92d5, 0x1f73: 0x92f5, 0x1f74: 0xf021, 0x1f75: 0x9315, -+ 0x1f76: 0xf041, 0x1f77: 0x9335, 0x1f78: 0xf061, 0x1f79: 0xf081, 0x1f7a: 0xf0a1, 0x1f7b: 0x9355, -+ 0x1f7c: 0x9375, 0x1f7d: 0xf0c1, 0x1f7e: 0x9395, 0x1f7f: 0xf0e1, -+ // Block 0x7e, offset 0x1f80 -+ 0x1f80: 0xf721, 0x1f81: 0xf741, 0x1f82: 0xf761, 0x1f83: 0xf781, 0x1f84: 0xf7a1, 0x1f85: 0x9555, -+ 0x1f86: 0xf7c1, 0x1f87: 0xf7e1, 0x1f88: 0xf801, 0x1f89: 0xf821, 0x1f8a: 0xf841, 0x1f8b: 0x9575, -+ 0x1f8c: 0x9595, 0x1f8d: 0xf861, 0x1f8e: 0xf881, 0x1f8f: 0xf8a1, 0x1f90: 0xf8c1, 0x1f91: 0xf8e1, -+ 0x1f92: 0xf901, 0x1f93: 0x95b5, 0x1f94: 0xf921, 0x1f95: 0xf941, 0x1f96: 0xf961, 0x1f97: 0xf981, -+ 0x1f98: 0x95d5, 0x1f99: 0x95f5, 0x1f9a: 0xf9a1, 0x1f9b: 0xf9c1, 0x1f9c: 0xf9e1, 0x1f9d: 0x9615, -+ 0x1f9e: 0xfa01, 0x1f9f: 0xfa21, 0x1fa0: 0x684d, 0x1fa1: 0x9635, 0x1fa2: 0xfa41, 0x1fa3: 0xfa61, -+ 0x1fa4: 0xfa81, 0x1fa5: 0x9655, 0x1fa6: 0xfaa1, 0x1fa7: 0xfac1, 0x1fa8: 0xfae1, 0x1fa9: 0xfb01, -+ 0x1faa: 0xfb21, 0x1fab: 0xfb41, 0x1fac: 0xfb61, 0x1fad: 0x9675, 0x1fae: 0xfb81, 0x1faf: 0xfba1, -+ 0x1fb0: 0xfbc1, 0x1fb1: 0x9695, 0x1fb2: 0xfbe1, 0x1fb3: 0xfc01, 0x1fb4: 0xfc21, 0x1fb5: 0xfc41, -+ 0x1fb6: 0x7b6d, 0x1fb7: 0x96b5, 0x1fb8: 0xfc61, 0x1fb9: 0xfc81, 0x1fba: 0xfca1, 0x1fbb: 0x96d5, -+ 0x1fbc: 0xfcc1, 0x1fbd: 0x96f5, 0x1fbe: 0xfce1, 0x1fbf: 0xfce1, -+ // Block 0x7f, offset 0x1fc0 -+ 0x1fc0: 0xfd01, 0x1fc1: 0x9715, 0x1fc2: 0xfd21, 0x1fc3: 0xfd41, 0x1fc4: 0xfd61, 0x1fc5: 0xfd81, -+ 0x1fc6: 0xfda1, 0x1fc7: 0xfdc1, 0x1fc8: 0xfde1, 0x1fc9: 0x9735, 0x1fca: 0xfe01, 0x1fcb: 0xfe21, -+ 0x1fcc: 0xfe41, 0x1fcd: 0xfe61, 0x1fce: 0xfe81, 0x1fcf: 0xfea1, 0x1fd0: 0x9755, 0x1fd1: 0xfec1, -+ 0x1fd2: 0x9775, 0x1fd3: 0x9795, 0x1fd4: 0x97b5, 0x1fd5: 0xfee1, 0x1fd6: 0xff01, 0x1fd7: 0xff21, -+ 0x1fd8: 0xff41, 0x1fd9: 0xff61, 0x1fda: 0xff81, 0x1fdb: 0xffa1, 0x1fdc: 0xffc1, 0x1fdd: 0x97d5, -+ 0x1fde: 0x0040, 0x1fdf: 0x0040, 0x1fe0: 0x0040, 0x1fe1: 0x0040, 0x1fe2: 0x0040, 0x1fe3: 0x0040, -+ 0x1fe4: 0x0040, 0x1fe5: 0x0040, 0x1fe6: 0x0040, 0x1fe7: 0x0040, 0x1fe8: 0x0040, 0x1fe9: 0x0040, -+ 0x1fea: 0x0040, 0x1feb: 0x0040, 0x1fec: 0x0040, 0x1fed: 0x0040, 0x1fee: 0x0040, 0x1fef: 0x0040, -+ 0x1ff0: 0x0040, 0x1ff1: 0x0040, 0x1ff2: 0x0040, 0x1ff3: 0x0040, 0x1ff4: 0x0040, 0x1ff5: 0x0040, -+ 0x1ff6: 0x0040, 0x1ff7: 0x0040, 0x1ff8: 0x0040, 0x1ff9: 0x0040, 0x1ffa: 0x0040, 0x1ffb: 0x0040, -+ 0x1ffc: 0x0040, 0x1ffd: 0x0040, 0x1ffe: 0x0040, 0x1fff: 0x0040, -+} -+ -+// idnaIndex: 37 blocks, 2368 entries, 4736 bytes -+// Block 0 is the zero block. -+var idnaIndex = [2368]uint16{ -+ // Block 0x0, offset 0x0 -+ // Block 0x1, offset 0x40 -+ // Block 0x2, offset 0x80 -+ // Block 0x3, offset 0xc0 -+ 0xc2: 0x01, 0xc3: 0x7e, 0xc4: 0x02, 0xc5: 0x03, 0xc6: 0x04, 0xc7: 0x05, -+ 0xc8: 0x06, 0xc9: 0x7f, 0xca: 0x80, 0xcb: 0x07, 0xcc: 0x81, 0xcd: 0x08, 0xce: 0x09, 0xcf: 0x0a, -+ 0xd0: 0x82, 0xd1: 0x0b, 0xd2: 0x0c, 0xd3: 0x0d, 0xd4: 0x0e, 0xd5: 0x83, 0xd6: 0x84, 0xd7: 0x85, -+ 0xd8: 0x0f, 0xd9: 0x10, 0xda: 0x86, 0xdb: 0x11, 0xdc: 0x12, 0xdd: 0x87, 0xde: 0x88, 0xdf: 0x89, -+ 0xe0: 0x02, 0xe1: 0x03, 0xe2: 0x04, 0xe3: 0x05, 0xe4: 0x06, 0xe5: 0x07, 0xe6: 0x07, 0xe7: 0x07, -+ 0xe8: 0x07, 0xe9: 0x08, 0xea: 0x09, 0xeb: 0x07, 0xec: 0x07, 0xed: 0x0a, 0xee: 0x0b, 0xef: 0x0c, -+ 0xf0: 0x1e, 0xf1: 0x1f, 0xf2: 0x1f, 0xf3: 0x21, 0xf4: 0x22, -+ // Block 0x4, offset 0x100 -+ 0x120: 0x8a, 0x121: 0x13, 0x122: 0x8b, 0x123: 0x8c, 0x124: 0x8d, 0x125: 0x14, 0x126: 0x15, 0x127: 0x16, -+ 0x128: 0x17, 0x129: 0x18, 0x12a: 0x19, 0x12b: 0x1a, 0x12c: 0x1b, 0x12d: 0x1c, 0x12e: 0x1d, 0x12f: 0x8e, -+ 0x130: 0x8f, 0x131: 0x1e, 0x132: 0x1f, 0x133: 0x20, 0x134: 0x90, 0x135: 0x21, 0x136: 0x91, 0x137: 0x92, -+ 0x138: 0x93, 0x139: 0x94, 0x13a: 0x22, 0x13b: 0x95, 0x13c: 0x96, 0x13d: 0x23, 0x13e: 0x24, 0x13f: 0x97, -+ // Block 0x5, offset 0x140 -+ 0x140: 0x98, 0x141: 0x99, 0x142: 0x9a, 0x143: 0x9b, 0x144: 0x9c, 0x145: 0x9d, 0x146: 0x9e, 0x147: 0x9f, -+ 0x148: 0xa0, 0x149: 0xa1, 0x14a: 0xa2, 0x14b: 0xa3, 0x14c: 0xa4, 0x14d: 0xa5, 0x14e: 0xa6, 0x14f: 0xa7, -+ 0x150: 0xa8, 0x151: 0xa0, 0x152: 0xa0, 0x153: 0xa0, 0x154: 0xa0, 0x155: 0xa0, 0x156: 0xa0, 0x157: 0xa0, -+ 0x158: 0xa0, 0x159: 0xa9, 0x15a: 0xaa, 0x15b: 0xab, 0x15c: 0xac, 0x15d: 0xad, 0x15e: 0xae, 0x15f: 0xaf, -+ 0x160: 0xb0, 0x161: 0xb1, 0x162: 0xb2, 0x163: 0xb3, 0x164: 0xb4, 0x165: 0xb5, 0x166: 0xb6, 0x167: 0xb7, -+ 0x168: 0xb8, 0x169: 0xb9, 0x16a: 0xba, 0x16b: 0xbb, 0x16c: 0xbc, 0x16d: 0xbd, 0x16e: 0xbe, 0x16f: 0xbf, -+ 0x170: 0xc0, 0x171: 0xc1, 0x172: 0xc2, 0x173: 0xc3, 0x174: 0x25, 0x175: 0x26, 0x176: 0x27, 0x177: 0xc4, -+ 0x178: 0x28, 0x179: 0x28, 0x17a: 0x29, 0x17b: 0x28, 0x17c: 0xc5, 0x17d: 0x2a, 0x17e: 0x2b, 0x17f: 0x2c, -+ // Block 0x6, offset 0x180 -+ 0x180: 0x2d, 0x181: 0x2e, 0x182: 0x2f, 0x183: 0xc6, 0x184: 0x30, 0x185: 0x31, 0x186: 0xc7, 0x187: 0x9c, -+ 0x188: 0xc8, 0x189: 0xc9, 0x18a: 0x9c, 0x18b: 0x9c, 0x18c: 0xca, 0x18d: 0x9c, 0x18e: 0x9c, 0x18f: 0x9c, -+ 0x190: 0xcb, 0x191: 0x32, 0x192: 0x33, 0x193: 0x34, 0x194: 0x9c, 0x195: 0x9c, 0x196: 0x9c, 0x197: 0x9c, -+ 0x198: 0x9c, 0x199: 0x9c, 0x19a: 0x9c, 0x19b: 0x9c, 0x19c: 0x9c, 0x19d: 0x9c, 0x19e: 0x9c, 0x19f: 0x9c, -+ 0x1a0: 0x9c, 0x1a1: 0x9c, 0x1a2: 0x9c, 0x1a3: 0x9c, 0x1a4: 0x9c, 0x1a5: 0x9c, 0x1a6: 0x9c, 0x1a7: 0x9c, -+ 0x1a8: 0xcc, 0x1a9: 0xcd, 0x1aa: 0x9c, 0x1ab: 0xce, 0x1ac: 0x9c, 0x1ad: 0xcf, 0x1ae: 0xd0, 0x1af: 0x9c, -+ 0x1b0: 0xd1, 0x1b1: 0x35, 0x1b2: 0x28, 0x1b3: 0x36, 0x1b4: 0xd2, 0x1b5: 0xd3, 0x1b6: 0xd4, 0x1b7: 0xd5, -+ 0x1b8: 0xd6, 0x1b9: 0xd7, 0x1ba: 0xd8, 0x1bb: 0xd9, 0x1bc: 0xda, 0x1bd: 0xdb, 0x1be: 0xdc, 0x1bf: 0x37, -+ // Block 0x7, offset 0x1c0 -+ 0x1c0: 0x38, 0x1c1: 0xdd, 0x1c2: 0xde, 0x1c3: 0xdf, 0x1c4: 0xe0, 0x1c5: 0x39, 0x1c6: 0x3a, 0x1c7: 0xe1, -+ 0x1c8: 0xe2, 0x1c9: 0x3b, 0x1ca: 0x3c, 0x1cb: 0x3d, 0x1cc: 0x3e, 0x1cd: 0x3f, 0x1ce: 0x40, 0x1cf: 0x41, -+ 0x1d0: 0xa0, 0x1d1: 0xa0, 0x1d2: 0xa0, 0x1d3: 0xa0, 0x1d4: 0xa0, 0x1d5: 0xa0, 0x1d6: 0xa0, 0x1d7: 0xa0, -+ 0x1d8: 0xa0, 0x1d9: 0xa0, 0x1da: 0xa0, 0x1db: 0xa0, 0x1dc: 0xa0, 0x1dd: 0xa0, 0x1de: 0xa0, 0x1df: 0xa0, -+ 0x1e0: 0xa0, 0x1e1: 0xa0, 0x1e2: 0xa0, 0x1e3: 0xa0, 0x1e4: 0xa0, 0x1e5: 0xa0, 0x1e6: 0xa0, 0x1e7: 0xa0, -+ 0x1e8: 0xa0, 0x1e9: 0xa0, 0x1ea: 0xa0, 0x1eb: 0xa0, 0x1ec: 0xa0, 0x1ed: 0xa0, 0x1ee: 0xa0, 0x1ef: 0xa0, -+ 0x1f0: 0xa0, 0x1f1: 0xa0, 0x1f2: 0xa0, 0x1f3: 0xa0, 0x1f4: 0xa0, 0x1f5: 0xa0, 0x1f6: 0xa0, 0x1f7: 0xa0, -+ 0x1f8: 0xa0, 0x1f9: 0xa0, 0x1fa: 0xa0, 0x1fb: 0xa0, 0x1fc: 0xa0, 0x1fd: 0xa0, 0x1fe: 0xa0, 0x1ff: 0xa0, -+ // Block 0x8, offset 0x200 -+ 0x200: 0xa0, 0x201: 0xa0, 0x202: 0xa0, 0x203: 0xa0, 0x204: 0xa0, 0x205: 0xa0, 0x206: 0xa0, 0x207: 0xa0, -+ 0x208: 0xa0, 0x209: 0xa0, 0x20a: 0xa0, 0x20b: 0xa0, 0x20c: 0xa0, 0x20d: 0xa0, 0x20e: 0xa0, 0x20f: 0xa0, -+ 0x210: 0xa0, 0x211: 0xa0, 0x212: 0xa0, 0x213: 0xa0, 0x214: 0xa0, 0x215: 0xa0, 0x216: 0xa0, 0x217: 0xa0, -+ 0x218: 0xa0, 0x219: 0xa0, 0x21a: 0xa0, 0x21b: 0xa0, 0x21c: 0xa0, 0x21d: 0xa0, 0x21e: 0xa0, 0x21f: 0xa0, -+ 0x220: 0xa0, 0x221: 0xa0, 0x222: 0xa0, 0x223: 0xa0, 0x224: 0xa0, 0x225: 0xa0, 0x226: 0xa0, 0x227: 0xa0, -+ 0x228: 0xa0, 0x229: 0xa0, 0x22a: 0xa0, 0x22b: 0xa0, 0x22c: 0xa0, 0x22d: 0xa0, 0x22e: 0xa0, 0x22f: 0xa0, -+ 0x230: 0xa0, 0x231: 0xa0, 0x232: 0xa0, 0x233: 0xa0, 0x234: 0xa0, 0x235: 0xa0, 0x236: 0xa0, 0x237: 0x9c, -+ 0x238: 0xa0, 0x239: 0xa0, 0x23a: 0xa0, 0x23b: 0xa0, 0x23c: 0xa0, 0x23d: 0xa0, 0x23e: 0xa0, 0x23f: 0xa0, -+ // Block 0x9, offset 0x240 -+ 0x240: 0xa0, 0x241: 0xa0, 0x242: 0xa0, 0x243: 0xa0, 0x244: 0xa0, 0x245: 0xa0, 0x246: 0xa0, 0x247: 0xa0, -+ 0x248: 0xa0, 0x249: 0xa0, 0x24a: 0xa0, 0x24b: 0xa0, 0x24c: 0xa0, 0x24d: 0xa0, 0x24e: 0xa0, 0x24f: 0xa0, -+ 0x250: 0xa0, 0x251: 0xa0, 0x252: 0xa0, 0x253: 0xa0, 0x254: 0xa0, 0x255: 0xa0, 0x256: 0xa0, 0x257: 0xa0, -+ 0x258: 0xa0, 0x259: 0xa0, 0x25a: 0xa0, 0x25b: 0xa0, 0x25c: 0xa0, 0x25d: 0xa0, 0x25e: 0xa0, 0x25f: 0xa0, -+ 0x260: 0xa0, 0x261: 0xa0, 0x262: 0xa0, 0x263: 0xa0, 0x264: 0xa0, 0x265: 0xa0, 0x266: 0xa0, 0x267: 0xa0, -+ 0x268: 0xa0, 0x269: 0xa0, 0x26a: 0xa0, 0x26b: 0xa0, 0x26c: 0xa0, 0x26d: 0xa0, 0x26e: 0xa0, 0x26f: 0xa0, -+ 0x270: 0xa0, 0x271: 0xa0, 0x272: 0xa0, 0x273: 0xa0, 0x274: 0xa0, 0x275: 0xa0, 0x276: 0xa0, 0x277: 0xa0, -+ 0x278: 0xa0, 0x279: 0xa0, 0x27a: 0xa0, 0x27b: 0xa0, 0x27c: 0xa0, 0x27d: 0xa0, 0x27e: 0xa0, 0x27f: 0xa0, -+ // Block 0xa, offset 0x280 -+ 0x280: 0xa0, 0x281: 0xa0, 0x282: 0xa0, 0x283: 0xa0, 0x284: 0xa0, 0x285: 0xa0, 0x286: 0xa0, 0x287: 0xa0, -+ 0x288: 0xa0, 0x289: 0xa0, 0x28a: 0xa0, 0x28b: 0xa0, 0x28c: 0xa0, 0x28d: 0xa0, 0x28e: 0xa0, 0x28f: 0xa0, -+ 0x290: 0xa0, 0x291: 0xa0, 0x292: 0xa0, 0x293: 0xa0, 0x294: 0xa0, 0x295: 0xa0, 0x296: 0xa0, 0x297: 0xa0, -+ 0x298: 0xa0, 0x299: 0xa0, 0x29a: 0xa0, 0x29b: 0xa0, 0x29c: 0xa0, 0x29d: 0xa0, 0x29e: 0xa0, 0x29f: 0xa0, -+ 0x2a0: 0xa0, 0x2a1: 0xa0, 0x2a2: 0xa0, 0x2a3: 0xa0, 0x2a4: 0xa0, 0x2a5: 0xa0, 0x2a6: 0xa0, 0x2a7: 0xa0, -+ 0x2a8: 0xa0, 0x2a9: 0xa0, 0x2aa: 0xa0, 0x2ab: 0xa0, 0x2ac: 0xa0, 0x2ad: 0xa0, 0x2ae: 0xa0, 0x2af: 0xa0, -+ 0x2b0: 0xa0, 0x2b1: 0xa0, 0x2b2: 0xa0, 0x2b3: 0xa0, 0x2b4: 0xa0, 0x2b5: 0xa0, 0x2b6: 0xa0, 0x2b7: 0xa0, -+ 0x2b8: 0xa0, 0x2b9: 0xa0, 0x2ba: 0xa0, 0x2bb: 0xa0, 0x2bc: 0xa0, 0x2bd: 0xa0, 0x2be: 0xa0, 0x2bf: 0xe3, -+ // Block 0xb, offset 0x2c0 -+ 0x2c0: 0xa0, 0x2c1: 0xa0, 0x2c2: 0xa0, 0x2c3: 0xa0, 0x2c4: 0xa0, 0x2c5: 0xa0, 0x2c6: 0xa0, 0x2c7: 0xa0, -+ 0x2c8: 0xa0, 0x2c9: 0xa0, 0x2ca: 0xa0, 0x2cb: 0xa0, 0x2cc: 0xa0, 0x2cd: 0xa0, 0x2ce: 0xa0, 0x2cf: 0xa0, -+ 0x2d0: 0xa0, 0x2d1: 0xa0, 0x2d2: 0xe4, 0x2d3: 0xe5, 0x2d4: 0xa0, 0x2d5: 0xa0, 0x2d6: 0xa0, 0x2d7: 0xa0, -+ 0x2d8: 0xe6, 0x2d9: 0x42, 0x2da: 0x43, 0x2db: 0xe7, 0x2dc: 0x44, 0x2dd: 0x45, 0x2de: 0x46, 0x2df: 0xe8, -+ 0x2e0: 0xe9, 0x2e1: 0xea, 0x2e2: 0xeb, 0x2e3: 0xec, 0x2e4: 0xed, 0x2e5: 0xee, 0x2e6: 0xef, 0x2e7: 0xf0, -+ 0x2e8: 0xf1, 0x2e9: 0xf2, 0x2ea: 0xf3, 0x2eb: 0xf4, 0x2ec: 0xf5, 0x2ed: 0xf6, 0x2ee: 0xf7, 0x2ef: 0xf8, -+ 0x2f0: 0xa0, 0x2f1: 0xa0, 0x2f2: 0xa0, 0x2f3: 0xa0, 0x2f4: 0xa0, 0x2f5: 0xa0, 0x2f6: 0xa0, 0x2f7: 0xa0, -+ 0x2f8: 0xa0, 0x2f9: 0xa0, 0x2fa: 0xa0, 0x2fb: 0xa0, 0x2fc: 0xa0, 0x2fd: 0xa0, 0x2fe: 0xa0, 0x2ff: 0xa0, -+ // Block 0xc, offset 0x300 -+ 0x300: 0xa0, 0x301: 0xa0, 0x302: 0xa0, 0x303: 0xa0, 0x304: 0xa0, 0x305: 0xa0, 0x306: 0xa0, 0x307: 0xa0, -+ 0x308: 0xa0, 0x309: 0xa0, 0x30a: 0xa0, 0x30b: 0xa0, 0x30c: 0xa0, 0x30d: 0xa0, 0x30e: 0xa0, 0x30f: 0xa0, -+ 0x310: 0xa0, 0x311: 0xa0, 0x312: 0xa0, 0x313: 0xa0, 0x314: 0xa0, 0x315: 0xa0, 0x316: 0xa0, 0x317: 0xa0, -+ 0x318: 0xa0, 0x319: 0xa0, 0x31a: 0xa0, 0x31b: 0xa0, 0x31c: 0xa0, 0x31d: 0xa0, 0x31e: 0xf9, 0x31f: 0xfa, -+ // Block 0xd, offset 0x340 -+ 0x340: 0xfb, 0x341: 0xfb, 0x342: 0xfb, 0x343: 0xfb, 0x344: 0xfb, 0x345: 0xfb, 0x346: 0xfb, 0x347: 0xfb, -+ 0x348: 0xfb, 0x349: 0xfb, 0x34a: 0xfb, 0x34b: 0xfb, 0x34c: 0xfb, 0x34d: 0xfb, 0x34e: 0xfb, 0x34f: 0xfb, -+ 0x350: 0xfb, 0x351: 0xfb, 0x352: 0xfb, 0x353: 0xfb, 0x354: 0xfb, 0x355: 0xfb, 0x356: 0xfb, 0x357: 0xfb, -+ 0x358: 0xfb, 0x359: 0xfb, 0x35a: 0xfb, 0x35b: 0xfb, 0x35c: 0xfb, 0x35d: 0xfb, 0x35e: 0xfb, 0x35f: 0xfb, -+ 0x360: 0xfb, 0x361: 0xfb, 0x362: 0xfb, 0x363: 0xfb, 0x364: 0xfb, 0x365: 0xfb, 0x366: 0xfb, 0x367: 0xfb, -+ 0x368: 0xfb, 0x369: 0xfb, 0x36a: 0xfb, 0x36b: 0xfb, 0x36c: 0xfb, 0x36d: 0xfb, 0x36e: 0xfb, 0x36f: 0xfb, -+ 0x370: 0xfb, 0x371: 0xfb, 0x372: 0xfb, 0x373: 0xfb, 0x374: 0xfb, 0x375: 0xfb, 0x376: 0xfb, 0x377: 0xfb, -+ 0x378: 0xfb, 0x379: 0xfb, 0x37a: 0xfb, 0x37b: 0xfb, 0x37c: 0xfb, 0x37d: 0xfb, 0x37e: 0xfb, 0x37f: 0xfb, -+ // Block 0xe, offset 0x380 -+ 0x380: 0xfb, 0x381: 0xfb, 0x382: 0xfb, 0x383: 0xfb, 0x384: 0xfb, 0x385: 0xfb, 0x386: 0xfb, 0x387: 0xfb, -+ 0x388: 0xfb, 0x389: 0xfb, 0x38a: 0xfb, 0x38b: 0xfb, 0x38c: 0xfb, 0x38d: 0xfb, 0x38e: 0xfb, 0x38f: 0xfb, -+ 0x390: 0xfb, 0x391: 0xfb, 0x392: 0xfb, 0x393: 0xfb, 0x394: 0xfb, 0x395: 0xfb, 0x396: 0xfb, 0x397: 0xfb, -+ 0x398: 0xfb, 0x399: 0xfb, 0x39a: 0xfb, 0x39b: 0xfb, 0x39c: 0xfb, 0x39d: 0xfb, 0x39e: 0xfb, 0x39f: 0xfb, -+ 0x3a0: 0xfb, 0x3a1: 0xfb, 0x3a2: 0xfb, 0x3a3: 0xfb, 0x3a4: 0xfc, 0x3a5: 0xfd, 0x3a6: 0xfe, 0x3a7: 0xff, -+ 0x3a8: 0x47, 0x3a9: 0x100, 0x3aa: 0x101, 0x3ab: 0x48, 0x3ac: 0x49, 0x3ad: 0x4a, 0x3ae: 0x4b, 0x3af: 0x4c, -+ 0x3b0: 0x102, 0x3b1: 0x4d, 0x3b2: 0x4e, 0x3b3: 0x4f, 0x3b4: 0x50, 0x3b5: 0x51, 0x3b6: 0x103, 0x3b7: 0x52, -+ 0x3b8: 0x53, 0x3b9: 0x54, 0x3ba: 0x55, 0x3bb: 0x56, 0x3bc: 0x57, 0x3bd: 0x58, 0x3be: 0x59, 0x3bf: 0x5a, -+ // Block 0xf, offset 0x3c0 -+ 0x3c0: 0x104, 0x3c1: 0x105, 0x3c2: 0xa0, 0x3c3: 0x106, 0x3c4: 0x107, 0x3c5: 0x9c, 0x3c6: 0x108, 0x3c7: 0x109, -+ 0x3c8: 0xfb, 0x3c9: 0xfb, 0x3ca: 0x10a, 0x3cb: 0x10b, 0x3cc: 0x10c, 0x3cd: 0x10d, 0x3ce: 0x10e, 0x3cf: 0x10f, -+ 0x3d0: 0x110, 0x3d1: 0xa0, 0x3d2: 0x111, 0x3d3: 0x112, 0x3d4: 0x113, 0x3d5: 0x114, 0x3d6: 0xfb, 0x3d7: 0xfb, -+ 0x3d8: 0xa0, 0x3d9: 0xa0, 0x3da: 0xa0, 0x3db: 0xa0, 0x3dc: 0x115, 0x3dd: 0x116, 0x3de: 0xfb, 0x3df: 0xfb, -+ 0x3e0: 0x117, 0x3e1: 0x118, 0x3e2: 0x119, 0x3e3: 0x11a, 0x3e4: 0x11b, 0x3e5: 0xfb, 0x3e6: 0x11c, 0x3e7: 0x11d, -+ 0x3e8: 0x11e, 0x3e9: 0x11f, 0x3ea: 0x120, 0x3eb: 0x5b, 0x3ec: 0x121, 0x3ed: 0x122, 0x3ee: 0x5c, 0x3ef: 0xfb, -+ 0x3f0: 0x123, 0x3f1: 0x124, 0x3f2: 0x125, 0x3f3: 0x126, 0x3f4: 0x127, 0x3f5: 0xfb, 0x3f6: 0xfb, 0x3f7: 0xfb, -+ 0x3f8: 0xfb, 0x3f9: 0x128, 0x3fa: 0x129, 0x3fb: 0xfb, 0x3fc: 0x12a, 0x3fd: 0x12b, 0x3fe: 0x12c, 0x3ff: 0x12d, -+ // Block 0x10, offset 0x400 -+ 0x400: 0x12e, 0x401: 0x12f, 0x402: 0x130, 0x403: 0x131, 0x404: 0x132, 0x405: 0x133, 0x406: 0x134, 0x407: 0x135, -+ 0x408: 0x136, 0x409: 0xfb, 0x40a: 0x137, 0x40b: 0x138, 0x40c: 0x5d, 0x40d: 0x5e, 0x40e: 0xfb, 0x40f: 0xfb, -+ 0x410: 0x139, 0x411: 0x13a, 0x412: 0x13b, 0x413: 0x13c, 0x414: 0xfb, 0x415: 0xfb, 0x416: 0x13d, 0x417: 0x13e, -+ 0x418: 0x13f, 0x419: 0x140, 0x41a: 0x141, 0x41b: 0x142, 0x41c: 0x143, 0x41d: 0xfb, 0x41e: 0xfb, 0x41f: 0xfb, -+ 0x420: 0x144, 0x421: 0xfb, 0x422: 0x145, 0x423: 0x146, 0x424: 0x5f, 0x425: 0x147, 0x426: 0x148, 0x427: 0x149, -+ 0x428: 0x14a, 0x429: 0x14b, 0x42a: 0x14c, 0x42b: 0x14d, 0x42c: 0xfb, 0x42d: 0xfb, 0x42e: 0xfb, 0x42f: 0xfb, -+ 0x430: 0x14e, 0x431: 0x14f, 0x432: 0x150, 0x433: 0xfb, 0x434: 0x151, 0x435: 0x152, 0x436: 0x153, 0x437: 0xfb, -+ 0x438: 0xfb, 0x439: 0xfb, 0x43a: 0xfb, 0x43b: 0x154, 0x43c: 0xfb, 0x43d: 0xfb, 0x43e: 0x155, 0x43f: 0x156, -+ // Block 0x11, offset 0x440 -+ 0x440: 0xa0, 0x441: 0xa0, 0x442: 0xa0, 0x443: 0xa0, 0x444: 0xa0, 0x445: 0xa0, 0x446: 0xa0, 0x447: 0xa0, -+ 0x448: 0xa0, 0x449: 0xa0, 0x44a: 0xa0, 0x44b: 0xa0, 0x44c: 0xa0, 0x44d: 0xa0, 0x44e: 0x157, 0x44f: 0xfb, -+ 0x450: 0x9c, 0x451: 0x158, 0x452: 0xa0, 0x453: 0xa0, 0x454: 0xa0, 0x455: 0x159, 0x456: 0xfb, 0x457: 0xfb, -+ 0x458: 0xfb, 0x459: 0xfb, 0x45a: 0xfb, 0x45b: 0xfb, 0x45c: 0xfb, 0x45d: 0xfb, 0x45e: 0xfb, 0x45f: 0xfb, -+ 0x460: 0xfb, 0x461: 0xfb, 0x462: 0xfb, 0x463: 0xfb, 0x464: 0xfb, 0x465: 0xfb, 0x466: 0xfb, 0x467: 0xfb, -+ 0x468: 0xfb, 0x469: 0xfb, 0x46a: 0xfb, 0x46b: 0xfb, 0x46c: 0xfb, 0x46d: 0xfb, 0x46e: 0xfb, 0x46f: 0xfb, -+ 0x470: 0xfb, 0x471: 0xfb, 0x472: 0xfb, 0x473: 0xfb, 0x474: 0xfb, 0x475: 0xfb, 0x476: 0xfb, 0x477: 0xfb, -+ 0x478: 0xfb, 0x479: 0xfb, 0x47a: 0xfb, 0x47b: 0xfb, 0x47c: 0xfb, 0x47d: 0xfb, 0x47e: 0xfb, 0x47f: 0xfb, -+ // Block 0x12, offset 0x480 -+ 0x480: 0xa0, 0x481: 0xa0, 0x482: 0xa0, 0x483: 0xa0, 0x484: 0xa0, 0x485: 0xa0, 0x486: 0xa0, 0x487: 0xa0, -+ 0x488: 0xa0, 0x489: 0xa0, 0x48a: 0xa0, 0x48b: 0xa0, 0x48c: 0xa0, 0x48d: 0xa0, 0x48e: 0xa0, 0x48f: 0xa0, -+ 0x490: 0x15a, 0x491: 0xfb, 0x492: 0xfb, 0x493: 0xfb, 0x494: 0xfb, 0x495: 0xfb, 0x496: 0xfb, 0x497: 0xfb, -+ 0x498: 0xfb, 0x499: 0xfb, 0x49a: 0xfb, 0x49b: 0xfb, 0x49c: 0xfb, 0x49d: 0xfb, 0x49e: 0xfb, 0x49f: 0xfb, -+ 0x4a0: 0xfb, 0x4a1: 0xfb, 0x4a2: 0xfb, 0x4a3: 0xfb, 0x4a4: 0xfb, 0x4a5: 0xfb, 0x4a6: 0xfb, 0x4a7: 0xfb, -+ 0x4a8: 0xfb, 0x4a9: 0xfb, 0x4aa: 0xfb, 0x4ab: 0xfb, 0x4ac: 0xfb, 0x4ad: 0xfb, 0x4ae: 0xfb, 0x4af: 0xfb, -+ 0x4b0: 0xfb, 0x4b1: 0xfb, 0x4b2: 0xfb, 0x4b3: 0xfb, 0x4b4: 0xfb, 0x4b5: 0xfb, 0x4b6: 0xfb, 0x4b7: 0xfb, -+ 0x4b8: 0xfb, 0x4b9: 0xfb, 0x4ba: 0xfb, 0x4bb: 0xfb, 0x4bc: 0xfb, 0x4bd: 0xfb, 0x4be: 0xfb, 0x4bf: 0xfb, -+ // Block 0x13, offset 0x4c0 -+ 0x4c0: 0xfb, 0x4c1: 0xfb, 0x4c2: 0xfb, 0x4c3: 0xfb, 0x4c4: 0xfb, 0x4c5: 0xfb, 0x4c6: 0xfb, 0x4c7: 0xfb, -+ 0x4c8: 0xfb, 0x4c9: 0xfb, 0x4ca: 0xfb, 0x4cb: 0xfb, 0x4cc: 0xfb, 0x4cd: 0xfb, 0x4ce: 0xfb, 0x4cf: 0xfb, -+ 0x4d0: 0xa0, 0x4d1: 0xa0, 0x4d2: 0xa0, 0x4d3: 0xa0, 0x4d4: 0xa0, 0x4d5: 0xa0, 0x4d6: 0xa0, 0x4d7: 0xa0, -+ 0x4d8: 0xa0, 0x4d9: 0x15b, 0x4da: 0xfb, 0x4db: 0xfb, 0x4dc: 0xfb, 0x4dd: 0xfb, 0x4de: 0xfb, 0x4df: 0xfb, -+ 0x4e0: 0xfb, 0x4e1: 0xfb, 0x4e2: 0xfb, 0x4e3: 0xfb, 0x4e4: 0xfb, 0x4e5: 0xfb, 0x4e6: 0xfb, 0x4e7: 0xfb, -+ 0x4e8: 0xfb, 0x4e9: 0xfb, 0x4ea: 0xfb, 0x4eb: 0xfb, 0x4ec: 0xfb, 0x4ed: 0xfb, 0x4ee: 0xfb, 0x4ef: 0xfb, -+ 0x4f0: 0xfb, 0x4f1: 0xfb, 0x4f2: 0xfb, 0x4f3: 0xfb, 0x4f4: 0xfb, 0x4f5: 0xfb, 0x4f6: 0xfb, 0x4f7: 0xfb, -+ 0x4f8: 0xfb, 0x4f9: 0xfb, 0x4fa: 0xfb, 0x4fb: 0xfb, 0x4fc: 0xfb, 0x4fd: 0xfb, 0x4fe: 0xfb, 0x4ff: 0xfb, -+ // Block 0x14, offset 0x500 -+ 0x500: 0xfb, 0x501: 0xfb, 0x502: 0xfb, 0x503: 0xfb, 0x504: 0xfb, 0x505: 0xfb, 0x506: 0xfb, 0x507: 0xfb, -+ 0x508: 0xfb, 0x509: 0xfb, 0x50a: 0xfb, 0x50b: 0xfb, 0x50c: 0xfb, 0x50d: 0xfb, 0x50e: 0xfb, 0x50f: 0xfb, -+ 0x510: 0xfb, 0x511: 0xfb, 0x512: 0xfb, 0x513: 0xfb, 0x514: 0xfb, 0x515: 0xfb, 0x516: 0xfb, 0x517: 0xfb, -+ 0x518: 0xfb, 0x519: 0xfb, 0x51a: 0xfb, 0x51b: 0xfb, 0x51c: 0xfb, 0x51d: 0xfb, 0x51e: 0xfb, 0x51f: 0xfb, -+ 0x520: 0xa0, 0x521: 0xa0, 0x522: 0xa0, 0x523: 0xa0, 0x524: 0xa0, 0x525: 0xa0, 0x526: 0xa0, 0x527: 0xa0, -+ 0x528: 0x14d, 0x529: 0x15c, 0x52a: 0xfb, 0x52b: 0x15d, 0x52c: 0x15e, 0x52d: 0x15f, 0x52e: 0x160, 0x52f: 0xfb, -+ 0x530: 0xfb, 0x531: 0xfb, 0x532: 0xfb, 0x533: 0xfb, 0x534: 0xfb, 0x535: 0xfb, 0x536: 0xfb, 0x537: 0xfb, -+ 0x538: 0xfb, 0x539: 0x161, 0x53a: 0x162, 0x53b: 0xfb, 0x53c: 0xa0, 0x53d: 0x163, 0x53e: 0x164, 0x53f: 0x165, -+ // Block 0x15, offset 0x540 -+ 0x540: 0xa0, 0x541: 0xa0, 0x542: 0xa0, 0x543: 0xa0, 0x544: 0xa0, 0x545: 0xa0, 0x546: 0xa0, 0x547: 0xa0, -+ 0x548: 0xa0, 0x549: 0xa0, 0x54a: 0xa0, 0x54b: 0xa0, 0x54c: 0xa0, 0x54d: 0xa0, 0x54e: 0xa0, 0x54f: 0xa0, -+ 0x550: 0xa0, 0x551: 0xa0, 0x552: 0xa0, 0x553: 0xa0, 0x554: 0xa0, 0x555: 0xa0, 0x556: 0xa0, 0x557: 0xa0, -+ 0x558: 0xa0, 0x559: 0xa0, 0x55a: 0xa0, 0x55b: 0xa0, 0x55c: 0xa0, 0x55d: 0xa0, 0x55e: 0xa0, 0x55f: 0x166, -+ 0x560: 0xa0, 0x561: 0xa0, 0x562: 0xa0, 0x563: 0xa0, 0x564: 0xa0, 0x565: 0xa0, 0x566: 0xa0, 0x567: 0xa0, -+ 0x568: 0xa0, 0x569: 0xa0, 0x56a: 0xa0, 0x56b: 0xa0, 0x56c: 0xa0, 0x56d: 0xa0, 0x56e: 0xa0, 0x56f: 0xa0, -+ 0x570: 0xa0, 0x571: 0xa0, 0x572: 0xa0, 0x573: 0x167, 0x574: 0x168, 0x575: 0xfb, 0x576: 0xfb, 0x577: 0xfb, -+ 0x578: 0xfb, 0x579: 0xfb, 0x57a: 0xfb, 0x57b: 0xfb, 0x57c: 0xfb, 0x57d: 0xfb, 0x57e: 0xfb, 0x57f: 0xfb, -+ // Block 0x16, offset 0x580 -+ 0x580: 0xa0, 0x581: 0xa0, 0x582: 0xa0, 0x583: 0xa0, 0x584: 0x169, 0x585: 0x16a, 0x586: 0xa0, 0x587: 0xa0, -+ 0x588: 0xa0, 0x589: 0xa0, 0x58a: 0xa0, 0x58b: 0x16b, 0x58c: 0xfb, 0x58d: 0xfb, 0x58e: 0xfb, 0x58f: 0xfb, -+ 0x590: 0xfb, 0x591: 0xfb, 0x592: 0xfb, 0x593: 0xfb, 0x594: 0xfb, 0x595: 0xfb, 0x596: 0xfb, 0x597: 0xfb, -+ 0x598: 0xfb, 0x599: 0xfb, 0x59a: 0xfb, 0x59b: 0xfb, 0x59c: 0xfb, 0x59d: 0xfb, 0x59e: 0xfb, 0x59f: 0xfb, -+ 0x5a0: 0xfb, 0x5a1: 0xfb, 0x5a2: 0xfb, 0x5a3: 0xfb, 0x5a4: 0xfb, 0x5a5: 0xfb, 0x5a6: 0xfb, 0x5a7: 0xfb, -+ 0x5a8: 0xfb, 0x5a9: 0xfb, 0x5aa: 0xfb, 0x5ab: 0xfb, 0x5ac: 0xfb, 0x5ad: 0xfb, 0x5ae: 0xfb, 0x5af: 0xfb, -+ 0x5b0: 0xa0, 0x5b1: 0x16c, 0x5b2: 0x16d, 0x5b3: 0xfb, 0x5b4: 0xfb, 0x5b5: 0xfb, 0x5b6: 0xfb, 0x5b7: 0xfb, -+ 0x5b8: 0xfb, 0x5b9: 0xfb, 0x5ba: 0xfb, 0x5bb: 0xfb, 0x5bc: 0xfb, 0x5bd: 0xfb, 0x5be: 0xfb, 0x5bf: 0xfb, -+ // Block 0x17, offset 0x5c0 -+ 0x5c0: 0x9c, 0x5c1: 0x9c, 0x5c2: 0x9c, 0x5c3: 0x16e, 0x5c4: 0x16f, 0x5c5: 0x170, 0x5c6: 0x171, 0x5c7: 0x172, -+ 0x5c8: 0x9c, 0x5c9: 0x173, 0x5ca: 0xfb, 0x5cb: 0x174, 0x5cc: 0x9c, 0x5cd: 0x175, 0x5ce: 0xfb, 0x5cf: 0xfb, -+ 0x5d0: 0x60, 0x5d1: 0x61, 0x5d2: 0x62, 0x5d3: 0x63, 0x5d4: 0x64, 0x5d5: 0x65, 0x5d6: 0x66, 0x5d7: 0x67, -+ 0x5d8: 0x68, 0x5d9: 0x69, 0x5da: 0x6a, 0x5db: 0x6b, 0x5dc: 0x6c, 0x5dd: 0x6d, 0x5de: 0x6e, 0x5df: 0x6f, -+ 0x5e0: 0x9c, 0x5e1: 0x9c, 0x5e2: 0x9c, 0x5e3: 0x9c, 0x5e4: 0x9c, 0x5e5: 0x9c, 0x5e6: 0x9c, 0x5e7: 0x9c, -+ 0x5e8: 0x176, 0x5e9: 0x177, 0x5ea: 0x178, 0x5eb: 0xfb, 0x5ec: 0xfb, 0x5ed: 0xfb, 0x5ee: 0xfb, 0x5ef: 0xfb, -+ 0x5f0: 0xfb, 0x5f1: 0xfb, 0x5f2: 0xfb, 0x5f3: 0xfb, 0x5f4: 0xfb, 0x5f5: 0xfb, 0x5f6: 0xfb, 0x5f7: 0xfb, -+ 0x5f8: 0xfb, 0x5f9: 0xfb, 0x5fa: 0xfb, 0x5fb: 0xfb, 0x5fc: 0xfb, 0x5fd: 0xfb, 0x5fe: 0xfb, 0x5ff: 0xfb, -+ // Block 0x18, offset 0x600 -+ 0x600: 0x179, 0x601: 0xfb, 0x602: 0xfb, 0x603: 0xfb, 0x604: 0x17a, 0x605: 0x17b, 0x606: 0xfb, 0x607: 0xfb, -+ 0x608: 0xfb, 0x609: 0xfb, 0x60a: 0xfb, 0x60b: 0x17c, 0x60c: 0xfb, 0x60d: 0xfb, 0x60e: 0xfb, 0x60f: 0xfb, -+ 0x610: 0xfb, 0x611: 0xfb, 0x612: 0xfb, 0x613: 0xfb, 0x614: 0xfb, 0x615: 0xfb, 0x616: 0xfb, 0x617: 0xfb, -+ 0x618: 0xfb, 0x619: 0xfb, 0x61a: 0xfb, 0x61b: 0xfb, 0x61c: 0xfb, 0x61d: 0xfb, 0x61e: 0xfb, 0x61f: 0xfb, -+ 0x620: 0x123, 0x621: 0x123, 0x622: 0x123, 0x623: 0x17d, 0x624: 0x70, 0x625: 0x17e, 0x626: 0xfb, 0x627: 0xfb, -+ 0x628: 0xfb, 0x629: 0xfb, 0x62a: 0xfb, 0x62b: 0xfb, 0x62c: 0xfb, 0x62d: 0xfb, 0x62e: 0xfb, 0x62f: 0xfb, -+ 0x630: 0xfb, 0x631: 0x17f, 0x632: 0x180, 0x633: 0xfb, 0x634: 0x181, 0x635: 0xfb, 0x636: 0xfb, 0x637: 0xfb, -+ 0x638: 0x71, 0x639: 0x72, 0x63a: 0x73, 0x63b: 0x182, 0x63c: 0xfb, 0x63d: 0xfb, 0x63e: 0xfb, 0x63f: 0xfb, -+ // Block 0x19, offset 0x640 -+ 0x640: 0x183, 0x641: 0x9c, 0x642: 0x184, 0x643: 0x185, 0x644: 0x74, 0x645: 0x75, 0x646: 0x186, 0x647: 0x187, -+ 0x648: 0x76, 0x649: 0x188, 0x64a: 0xfb, 0x64b: 0xfb, 0x64c: 0x9c, 0x64d: 0x9c, 0x64e: 0x9c, 0x64f: 0x9c, -+ 0x650: 0x9c, 0x651: 0x9c, 0x652: 0x9c, 0x653: 0x9c, 0x654: 0x9c, 0x655: 0x9c, 0x656: 0x9c, 0x657: 0x9c, -+ 0x658: 0x9c, 0x659: 0x9c, 0x65a: 0x9c, 0x65b: 0x189, 0x65c: 0x9c, 0x65d: 0x18a, 0x65e: 0x9c, 0x65f: 0x18b, -+ 0x660: 0x18c, 0x661: 0x18d, 0x662: 0x18e, 0x663: 0xfb, 0x664: 0x9c, 0x665: 0x18f, 0x666: 0x9c, 0x667: 0x190, -+ 0x668: 0x9c, 0x669: 0x191, 0x66a: 0x192, 0x66b: 0x193, 0x66c: 0x9c, 0x66d: 0x9c, 0x66e: 0x194, 0x66f: 0x195, -+ 0x670: 0xfb, 0x671: 0xfb, 0x672: 0xfb, 0x673: 0xfb, 0x674: 0xfb, 0x675: 0xfb, 0x676: 0xfb, 0x677: 0xfb, -+ 0x678: 0xfb, 0x679: 0xfb, 0x67a: 0xfb, 0x67b: 0xfb, 0x67c: 0xfb, 0x67d: 0xfb, 0x67e: 0xfb, 0x67f: 0xfb, -+ // Block 0x1a, offset 0x680 -+ 0x680: 0xa0, 0x681: 0xa0, 0x682: 0xa0, 0x683: 0xa0, 0x684: 0xa0, 0x685: 0xa0, 0x686: 0xa0, 0x687: 0xa0, -+ 0x688: 0xa0, 0x689: 0xa0, 0x68a: 0xa0, 0x68b: 0xa0, 0x68c: 0xa0, 0x68d: 0xa0, 0x68e: 0xa0, 0x68f: 0xa0, -+ 0x690: 0xa0, 0x691: 0xa0, 0x692: 0xa0, 0x693: 0xa0, 0x694: 0xa0, 0x695: 0xa0, 0x696: 0xa0, 0x697: 0xa0, -+ 0x698: 0xa0, 0x699: 0xa0, 0x69a: 0xa0, 0x69b: 0x196, 0x69c: 0xa0, 0x69d: 0xa0, 0x69e: 0xa0, 0x69f: 0xa0, -+ 0x6a0: 0xa0, 0x6a1: 0xa0, 0x6a2: 0xa0, 0x6a3: 0xa0, 0x6a4: 0xa0, 0x6a5: 0xa0, 0x6a6: 0xa0, 0x6a7: 0xa0, -+ 0x6a8: 0xa0, 0x6a9: 0xa0, 0x6aa: 0xa0, 0x6ab: 0xa0, 0x6ac: 0xa0, 0x6ad: 0xa0, 0x6ae: 0xa0, 0x6af: 0xa0, -+ 0x6b0: 0xa0, 0x6b1: 0xa0, 0x6b2: 0xa0, 0x6b3: 0xa0, 0x6b4: 0xa0, 0x6b5: 0xa0, 0x6b6: 0xa0, 0x6b7: 0xa0, -+ 0x6b8: 0xa0, 0x6b9: 0xa0, 0x6ba: 0xa0, 0x6bb: 0xa0, 0x6bc: 0xa0, 0x6bd: 0xa0, 0x6be: 0xa0, 0x6bf: 0xa0, -+ // Block 0x1b, offset 0x6c0 -+ 0x6c0: 0xa0, 0x6c1: 0xa0, 0x6c2: 0xa0, 0x6c3: 0xa0, 0x6c4: 0xa0, 0x6c5: 0xa0, 0x6c6: 0xa0, 0x6c7: 0xa0, -+ 0x6c8: 0xa0, 0x6c9: 0xa0, 0x6ca: 0xa0, 0x6cb: 0xa0, 0x6cc: 0xa0, 0x6cd: 0xa0, 0x6ce: 0xa0, 0x6cf: 0xa0, -+ 0x6d0: 0xa0, 0x6d1: 0xa0, 0x6d2: 0xa0, 0x6d3: 0xa0, 0x6d4: 0xa0, 0x6d5: 0xa0, 0x6d6: 0xa0, 0x6d7: 0xa0, -+ 0x6d8: 0xa0, 0x6d9: 0xa0, 0x6da: 0xa0, 0x6db: 0xa0, 0x6dc: 0x197, 0x6dd: 0xa0, 0x6de: 0xa0, 0x6df: 0xa0, -+ 0x6e0: 0x198, 0x6e1: 0xa0, 0x6e2: 0xa0, 0x6e3: 0xa0, 0x6e4: 0xa0, 0x6e5: 0xa0, 0x6e6: 0xa0, 0x6e7: 0xa0, -+ 0x6e8: 0xa0, 0x6e9: 0xa0, 0x6ea: 0xa0, 0x6eb: 0xa0, 0x6ec: 0xa0, 0x6ed: 0xa0, 0x6ee: 0xa0, 0x6ef: 0xa0, -+ 0x6f0: 0xa0, 0x6f1: 0xa0, 0x6f2: 0xa0, 0x6f3: 0xa0, 0x6f4: 0xa0, 0x6f5: 0xa0, 0x6f6: 0xa0, 0x6f7: 0xa0, -+ 0x6f8: 0xa0, 0x6f9: 0xa0, 0x6fa: 0xa0, 0x6fb: 0xa0, 0x6fc: 0xa0, 0x6fd: 0xa0, 0x6fe: 0xa0, 0x6ff: 0xa0, -+ // Block 0x1c, offset 0x700 -+ 0x700: 0xa0, 0x701: 0xa0, 0x702: 0xa0, 0x703: 0xa0, 0x704: 0xa0, 0x705: 0xa0, 0x706: 0xa0, 0x707: 0xa0, -+ 0x708: 0xa0, 0x709: 0xa0, 0x70a: 0xa0, 0x70b: 0xa0, 0x70c: 0xa0, 0x70d: 0xa0, 0x70e: 0xa0, 0x70f: 0xa0, -+ 0x710: 0xa0, 0x711: 0xa0, 0x712: 0xa0, 0x713: 0xa0, 0x714: 0xa0, 0x715: 0xa0, 0x716: 0xa0, 0x717: 0xa0, -+ 0x718: 0xa0, 0x719: 0xa0, 0x71a: 0xa0, 0x71b: 0xa0, 0x71c: 0xa0, 0x71d: 0xa0, 0x71e: 0xa0, 0x71f: 0xa0, -+ 0x720: 0xa0, 0x721: 0xa0, 0x722: 0xa0, 0x723: 0xa0, 0x724: 0xa0, 0x725: 0xa0, 0x726: 0xa0, 0x727: 0xa0, -+ 0x728: 0xa0, 0x729: 0xa0, 0x72a: 0xa0, 0x72b: 0xa0, 0x72c: 0xa0, 0x72d: 0xa0, 0x72e: 0xa0, 0x72f: 0xa0, -+ 0x730: 0xa0, 0x731: 0xa0, 0x732: 0xa0, 0x733: 0xa0, 0x734: 0xa0, 0x735: 0xa0, 0x736: 0xa0, 0x737: 0xa0, -+ 0x738: 0xa0, 0x739: 0xa0, 0x73a: 0x199, 0x73b: 0xa0, 0x73c: 0xa0, 0x73d: 0xa0, 0x73e: 0xa0, 0x73f: 0xa0, -+ // Block 0x1d, offset 0x740 -+ 0x740: 0xa0, 0x741: 0xa0, 0x742: 0xa0, 0x743: 0xa0, 0x744: 0xa0, 0x745: 0xa0, 0x746: 0xa0, 0x747: 0xa0, -+ 0x748: 0xa0, 0x749: 0xa0, 0x74a: 0xa0, 0x74b: 0xa0, 0x74c: 0xa0, 0x74d: 0xa0, 0x74e: 0xa0, 0x74f: 0xa0, -+ 0x750: 0xa0, 0x751: 0xa0, 0x752: 0xa0, 0x753: 0xa0, 0x754: 0xa0, 0x755: 0xa0, 0x756: 0xa0, 0x757: 0xa0, -+ 0x758: 0xa0, 0x759: 0xa0, 0x75a: 0xa0, 0x75b: 0xa0, 0x75c: 0xa0, 0x75d: 0xa0, 0x75e: 0xa0, 0x75f: 0xa0, -+ 0x760: 0xa0, 0x761: 0xa0, 0x762: 0xa0, 0x763: 0xa0, 0x764: 0xa0, 0x765: 0xa0, 0x766: 0xa0, 0x767: 0xa0, -+ 0x768: 0xa0, 0x769: 0xa0, 0x76a: 0xa0, 0x76b: 0xa0, 0x76c: 0xa0, 0x76d: 0xa0, 0x76e: 0xa0, 0x76f: 0x19a, -+ 0x770: 0xfb, 0x771: 0xfb, 0x772: 0xfb, 0x773: 0xfb, 0x774: 0xfb, 0x775: 0xfb, 0x776: 0xfb, 0x777: 0xfb, -+ 0x778: 0xfb, 0x779: 0xfb, 0x77a: 0xfb, 0x77b: 0xfb, 0x77c: 0xfb, 0x77d: 0xfb, 0x77e: 0xfb, 0x77f: 0xfb, -+ // Block 0x1e, offset 0x780 -+ 0x780: 0xfb, 0x781: 0xfb, 0x782: 0xfb, 0x783: 0xfb, 0x784: 0xfb, 0x785: 0xfb, 0x786: 0xfb, 0x787: 0xfb, -+ 0x788: 0xfb, 0x789: 0xfb, 0x78a: 0xfb, 0x78b: 0xfb, 0x78c: 0xfb, 0x78d: 0xfb, 0x78e: 0xfb, 0x78f: 0xfb, -+ 0x790: 0xfb, 0x791: 0xfb, 0x792: 0xfb, 0x793: 0xfb, 0x794: 0xfb, 0x795: 0xfb, 0x796: 0xfb, 0x797: 0xfb, -+ 0x798: 0xfb, 0x799: 0xfb, 0x79a: 0xfb, 0x79b: 0xfb, 0x79c: 0xfb, 0x79d: 0xfb, 0x79e: 0xfb, 0x79f: 0xfb, -+ 0x7a0: 0x77, 0x7a1: 0x78, 0x7a2: 0x79, 0x7a3: 0x19b, 0x7a4: 0x7a, 0x7a5: 0x7b, 0x7a6: 0x19c, 0x7a7: 0x7c, -+ 0x7a8: 0x7d, 0x7a9: 0xfb, 0x7aa: 0xfb, 0x7ab: 0xfb, 0x7ac: 0xfb, 0x7ad: 0xfb, 0x7ae: 0xfb, 0x7af: 0xfb, -+ 0x7b0: 0xfb, 0x7b1: 0xfb, 0x7b2: 0xfb, 0x7b3: 0xfb, 0x7b4: 0xfb, 0x7b5: 0xfb, 0x7b6: 0xfb, 0x7b7: 0xfb, -+ 0x7b8: 0xfb, 0x7b9: 0xfb, 0x7ba: 0xfb, 0x7bb: 0xfb, 0x7bc: 0xfb, 0x7bd: 0xfb, 0x7be: 0xfb, 0x7bf: 0xfb, -+ // Block 0x1f, offset 0x7c0 -+ 0x7c0: 0xa0, 0x7c1: 0xa0, 0x7c2: 0xa0, 0x7c3: 0xa0, 0x7c4: 0xa0, 0x7c5: 0xa0, 0x7c6: 0xa0, 0x7c7: 0xa0, -+ 0x7c8: 0xa0, 0x7c9: 0xa0, 0x7ca: 0xa0, 0x7cb: 0xa0, 0x7cc: 0xa0, 0x7cd: 0x19d, 0x7ce: 0xfb, 0x7cf: 0xfb, -+ 0x7d0: 0xfb, 0x7d1: 0xfb, 0x7d2: 0xfb, 0x7d3: 0xfb, 0x7d4: 0xfb, 0x7d5: 0xfb, 0x7d6: 0xfb, 0x7d7: 0xfb, -+ 0x7d8: 0xfb, 0x7d9: 0xfb, 0x7da: 0xfb, 0x7db: 0xfb, 0x7dc: 0xfb, 0x7dd: 0xfb, 0x7de: 0xfb, 0x7df: 0xfb, -+ 0x7e0: 0xfb, 0x7e1: 0xfb, 0x7e2: 0xfb, 0x7e3: 0xfb, 0x7e4: 0xfb, 0x7e5: 0xfb, 0x7e6: 0xfb, 0x7e7: 0xfb, -+ 0x7e8: 0xfb, 0x7e9: 0xfb, 0x7ea: 0xfb, 0x7eb: 0xfb, 0x7ec: 0xfb, 0x7ed: 0xfb, 0x7ee: 0xfb, 0x7ef: 0xfb, -+ 0x7f0: 0xfb, 0x7f1: 0xfb, 0x7f2: 0xfb, 0x7f3: 0xfb, 0x7f4: 0xfb, 0x7f5: 0xfb, 0x7f6: 0xfb, 0x7f7: 0xfb, -+ 0x7f8: 0xfb, 0x7f9: 0xfb, 0x7fa: 0xfb, 0x7fb: 0xfb, 0x7fc: 0xfb, 0x7fd: 0xfb, 0x7fe: 0xfb, 0x7ff: 0xfb, -+ // Block 0x20, offset 0x800 -+ 0x810: 0x0d, 0x811: 0x0e, 0x812: 0x0f, 0x813: 0x10, 0x814: 0x11, 0x815: 0x0b, 0x816: 0x12, 0x817: 0x07, -+ 0x818: 0x13, 0x819: 0x0b, 0x81a: 0x0b, 0x81b: 0x14, 0x81c: 0x0b, 0x81d: 0x15, 0x81e: 0x16, 0x81f: 0x17, -+ 0x820: 0x07, 0x821: 0x07, 0x822: 0x07, 0x823: 0x07, 0x824: 0x07, 0x825: 0x07, 0x826: 0x07, 0x827: 0x07, -+ 0x828: 0x07, 0x829: 0x07, 0x82a: 0x18, 0x82b: 0x19, 0x82c: 0x1a, 0x82d: 0x07, 0x82e: 0x1b, 0x82f: 0x1c, -+ 0x830: 0x07, 0x831: 0x1d, 0x832: 0x0b, 0x833: 0x0b, 0x834: 0x0b, 0x835: 0x0b, 0x836: 0x0b, 0x837: 0x0b, -+ 0x838: 0x0b, 0x839: 0x0b, 0x83a: 0x0b, 0x83b: 0x0b, 0x83c: 0x0b, 0x83d: 0x0b, 0x83e: 0x0b, 0x83f: 0x0b, -+ // Block 0x21, offset 0x840 -+ 0x840: 0x0b, 0x841: 0x0b, 0x842: 0x0b, 0x843: 0x0b, 0x844: 0x0b, 0x845: 0x0b, 0x846: 0x0b, 0x847: 0x0b, -+ 0x848: 0x0b, 0x849: 0x0b, 0x84a: 0x0b, 0x84b: 0x0b, 0x84c: 0x0b, 0x84d: 0x0b, 0x84e: 0x0b, 0x84f: 0x0b, -+ 0x850: 0x0b, 0x851: 0x0b, 0x852: 0x0b, 0x853: 0x0b, 0x854: 0x0b, 0x855: 0x0b, 0x856: 0x0b, 0x857: 0x0b, -+ 0x858: 0x0b, 0x859: 0x0b, 0x85a: 0x0b, 0x85b: 0x0b, 0x85c: 0x0b, 0x85d: 0x0b, 0x85e: 0x0b, 0x85f: 0x0b, -+ 0x860: 0x0b, 0x861: 0x0b, 0x862: 0x0b, 0x863: 0x0b, 0x864: 0x0b, 0x865: 0x0b, 0x866: 0x0b, 0x867: 0x0b, -+ 0x868: 0x0b, 0x869: 0x0b, 0x86a: 0x0b, 0x86b: 0x0b, 0x86c: 0x0b, 0x86d: 0x0b, 0x86e: 0x0b, 0x86f: 0x0b, -+ 0x870: 0x0b, 0x871: 0x0b, 0x872: 0x0b, 0x873: 0x0b, 0x874: 0x0b, 0x875: 0x0b, 0x876: 0x0b, 0x877: 0x0b, -+ 0x878: 0x0b, 0x879: 0x0b, 0x87a: 0x0b, 0x87b: 0x0b, 0x87c: 0x0b, 0x87d: 0x0b, 0x87e: 0x0b, 0x87f: 0x0b, -+ // Block 0x22, offset 0x880 -+ 0x880: 0x19e, 0x881: 0x19f, 0x882: 0xfb, 0x883: 0xfb, 0x884: 0x1a0, 0x885: 0x1a0, 0x886: 0x1a0, 0x887: 0x1a1, -+ 0x888: 0xfb, 0x889: 0xfb, 0x88a: 0xfb, 0x88b: 0xfb, 0x88c: 0xfb, 0x88d: 0xfb, 0x88e: 0xfb, 0x88f: 0xfb, -+ 0x890: 0xfb, 0x891: 0xfb, 0x892: 0xfb, 0x893: 0xfb, 0x894: 0xfb, 0x895: 0xfb, 0x896: 0xfb, 0x897: 0xfb, -+ 0x898: 0xfb, 0x899: 0xfb, 0x89a: 0xfb, 0x89b: 0xfb, 0x89c: 0xfb, 0x89d: 0xfb, 0x89e: 0xfb, 0x89f: 0xfb, -+ 0x8a0: 0xfb, 0x8a1: 0xfb, 0x8a2: 0xfb, 0x8a3: 0xfb, 0x8a4: 0xfb, 0x8a5: 0xfb, 0x8a6: 0xfb, 0x8a7: 0xfb, -+ 0x8a8: 0xfb, 0x8a9: 0xfb, 0x8aa: 0xfb, 0x8ab: 0xfb, 0x8ac: 0xfb, 0x8ad: 0xfb, 0x8ae: 0xfb, 0x8af: 0xfb, -+ 0x8b0: 0xfb, 0x8b1: 0xfb, 0x8b2: 0xfb, 0x8b3: 0xfb, 0x8b4: 0xfb, 0x8b5: 0xfb, 0x8b6: 0xfb, 0x8b7: 0xfb, -+ 0x8b8: 0xfb, 0x8b9: 0xfb, 0x8ba: 0xfb, 0x8bb: 0xfb, 0x8bc: 0xfb, 0x8bd: 0xfb, 0x8be: 0xfb, 0x8bf: 0xfb, -+ // Block 0x23, offset 0x8c0 -+ 0x8c0: 0x0b, 0x8c1: 0x0b, 0x8c2: 0x0b, 0x8c3: 0x0b, 0x8c4: 0x0b, 0x8c5: 0x0b, 0x8c6: 0x0b, 0x8c7: 0x0b, -+ 0x8c8: 0x0b, 0x8c9: 0x0b, 0x8ca: 0x0b, 0x8cb: 0x0b, 0x8cc: 0x0b, 0x8cd: 0x0b, 0x8ce: 0x0b, 0x8cf: 0x0b, -+ 0x8d0: 0x0b, 0x8d1: 0x0b, 0x8d2: 0x0b, 0x8d3: 0x0b, 0x8d4: 0x0b, 0x8d5: 0x0b, 0x8d6: 0x0b, 0x8d7: 0x0b, -+ 0x8d8: 0x0b, 0x8d9: 0x0b, 0x8da: 0x0b, 0x8db: 0x0b, 0x8dc: 0x0b, 0x8dd: 0x0b, 0x8de: 0x0b, 0x8df: 0x0b, -+ 0x8e0: 0x20, 0x8e1: 0x0b, 0x8e2: 0x0b, 0x8e3: 0x0b, 0x8e4: 0x0b, 0x8e5: 0x0b, 0x8e6: 0x0b, 0x8e7: 0x0b, -+ 0x8e8: 0x0b, 0x8e9: 0x0b, 0x8ea: 0x0b, 0x8eb: 0x0b, 0x8ec: 0x0b, 0x8ed: 0x0b, 0x8ee: 0x0b, 0x8ef: 0x0b, -+ 0x8f0: 0x0b, 0x8f1: 0x0b, 0x8f2: 0x0b, 0x8f3: 0x0b, 0x8f4: 0x0b, 0x8f5: 0x0b, 0x8f6: 0x0b, 0x8f7: 0x0b, -+ 0x8f8: 0x0b, 0x8f9: 0x0b, 0x8fa: 0x0b, 0x8fb: 0x0b, 0x8fc: 0x0b, 0x8fd: 0x0b, 0x8fe: 0x0b, 0x8ff: 0x0b, -+ // Block 0x24, offset 0x900 -+ 0x900: 0x0b, 0x901: 0x0b, 0x902: 0x0b, 0x903: 0x0b, 0x904: 0x0b, 0x905: 0x0b, 0x906: 0x0b, 0x907: 0x0b, -+ 0x908: 0x0b, 0x909: 0x0b, 0x90a: 0x0b, 0x90b: 0x0b, 0x90c: 0x0b, 0x90d: 0x0b, 0x90e: 0x0b, 0x90f: 0x0b, -+} -+ -+// idnaSparseOffset: 292 entries, 584 bytes -+var idnaSparseOffset = []uint16{0x0, 0x8, 0x19, 0x25, 0x27, 0x2c, 0x33, 0x3e, 0x4a, 0x4e, 0x5d, 0x62, 0x6c, 0x78, 0x85, 0x8b, 0x94, 0xa4, 0xb2, 0xbd, 0xca, 0xdb, 0xe5, 0xec, 0xf9, 0x10a, 0x111, 0x11c, 0x12b, 0x139, 0x143, 0x145, 0x14a, 0x14d, 0x150, 0x152, 0x15e, 0x169, 0x171, 0x177, 0x17d, 0x182, 0x187, 0x18a, 0x18e, 0x194, 0x199, 0x1a5, 0x1af, 0x1b5, 0x1c6, 0x1d0, 0x1d3, 0x1db, 0x1de, 0x1eb, 0x1f3, 0x1f7, 0x1fe, 0x206, 0x216, 0x222, 0x225, 0x22f, 0x23b, 0x247, 0x253, 0x25b, 0x260, 0x26d, 0x27e, 0x282, 0x28d, 0x291, 0x29a, 0x2a2, 0x2a8, 0x2ad, 0x2b0, 0x2b4, 0x2ba, 0x2be, 0x2c2, 0x2c6, 0x2cc, 0x2d4, 0x2db, 0x2e6, 0x2f0, 0x2f4, 0x2f7, 0x2fd, 0x301, 0x303, 0x306, 0x308, 0x30b, 0x315, 0x318, 0x327, 0x32b, 0x330, 0x333, 0x337, 0x33c, 0x341, 0x347, 0x358, 0x368, 0x36e, 0x372, 0x381, 0x386, 0x38e, 0x398, 0x3a3, 0x3ab, 0x3bc, 0x3c5, 0x3d5, 0x3e2, 0x3ee, 0x3f3, 0x400, 0x404, 0x409, 0x40b, 0x40d, 0x411, 0x413, 0x417, 0x420, 0x426, 0x42a, 0x43a, 0x444, 0x449, 0x44c, 0x452, 0x459, 0x45e, 0x462, 0x468, 0x46d, 0x476, 0x47b, 0x481, 0x488, 0x48f, 0x496, 0x49a, 0x49f, 0x4a2, 0x4a7, 0x4b3, 0x4b9, 0x4be, 0x4c5, 0x4cd, 0x4d2, 0x4d6, 0x4e6, 0x4ed, 0x4f1, 0x4f5, 0x4fc, 0x4fe, 0x501, 0x504, 0x508, 0x511, 0x515, 0x51d, 0x525, 0x52d, 0x539, 0x545, 0x54b, 0x554, 0x560, 0x567, 0x570, 0x57b, 0x582, 0x591, 0x59e, 0x5ab, 0x5b4, 0x5b8, 0x5c7, 0x5cf, 0x5da, 0x5e3, 0x5e9, 0x5f1, 0x5fa, 0x605, 0x608, 0x614, 0x61d, 0x620, 0x625, 0x62e, 0x633, 0x640, 0x64b, 0x654, 0x65e, 0x661, 0x66b, 0x674, 0x680, 0x68d, 0x69a, 0x6a8, 0x6af, 0x6b3, 0x6b7, 0x6ba, 0x6bf, 0x6c2, 0x6c7, 0x6ca, 0x6d1, 0x6d8, 0x6dc, 0x6e7, 0x6ea, 0x6ed, 0x6f0, 0x6f6, 0x6fc, 0x705, 0x708, 0x70b, 0x70e, 0x711, 0x718, 0x71b, 0x720, 0x72a, 0x72d, 0x731, 0x740, 0x74c, 0x750, 0x755, 0x759, 0x75e, 0x762, 0x767, 0x770, 0x77b, 0x781, 0x787, 0x78d, 0x793, 0x79c, 0x79f, 0x7a2, 0x7a6, 0x7aa, 0x7ae, 0x7b4, 0x7ba, 0x7bf, 0x7c2, 0x7d2, 0x7d9, 0x7dc, 0x7e1, 0x7e5, 0x7eb, 0x7f2, 0x7f6, 0x7fa, 0x803, 0x80a, 0x80f, 0x813, 0x821, 0x824, 0x827, 0x82b, 0x82f, 0x832, 0x842, 0x853, 0x856, 0x85b, 0x85d, 0x85f} -+ -+// idnaSparseValues: 2146 entries, 8584 bytes -+var idnaSparseValues = [2146]valueRange{ -+ // Block 0x0, offset 0x0 -+ {value: 0x0000, lo: 0x07}, -+ {value: 0xe105, lo: 0x80, hi: 0x96}, -+ {value: 0x0018, lo: 0x97, hi: 0x97}, -+ {value: 0xe105, lo: 0x98, hi: 0x9e}, -+ {value: 0x001f, lo: 0x9f, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xb6}, -+ {value: 0x0018, lo: 0xb7, hi: 0xb7}, -+ {value: 0x0008, lo: 0xb8, hi: 0xbf}, -+ // Block 0x1, offset 0x8 -+ {value: 0x0000, lo: 0x10}, -+ {value: 0x0008, lo: 0x80, hi: 0x80}, -+ {value: 0xe01d, lo: 0x81, hi: 0x81}, -+ {value: 0x0008, lo: 0x82, hi: 0x82}, -+ {value: 0x0335, lo: 0x83, hi: 0x83}, -+ {value: 0x034d, lo: 0x84, hi: 0x84}, -+ {value: 0x0365, lo: 0x85, hi: 0x85}, -+ {value: 0xe00d, lo: 0x86, hi: 0x86}, -+ {value: 0x0008, lo: 0x87, hi: 0x87}, -+ {value: 0xe00d, lo: 0x88, hi: 0x88}, -+ {value: 0x0008, lo: 0x89, hi: 0x89}, -+ {value: 0xe00d, lo: 0x8a, hi: 0x8a}, -+ {value: 0x0008, lo: 0x8b, hi: 0x8b}, -+ {value: 0xe00d, lo: 0x8c, hi: 0x8c}, -+ {value: 0x0008, lo: 0x8d, hi: 0x8d}, -+ {value: 0xe00d, lo: 0x8e, hi: 0x8e}, -+ {value: 0x0008, lo: 0x8f, hi: 0xbf}, -+ // Block 0x2, offset 0x19 -+ {value: 0x0000, lo: 0x0b}, -+ {value: 0x0008, lo: 0x80, hi: 0xaf}, -+ {value: 0x0249, lo: 0xb0, hi: 0xb0}, -+ {value: 0x037d, lo: 0xb1, hi: 0xb1}, -+ {value: 0x0259, lo: 0xb2, hi: 0xb2}, -+ {value: 0x0269, lo: 0xb3, hi: 0xb3}, -+ {value: 0x034d, lo: 0xb4, hi: 0xb4}, -+ {value: 0x0395, lo: 0xb5, hi: 0xb5}, -+ {value: 0xe1bd, lo: 0xb6, hi: 0xb6}, -+ {value: 0x0279, lo: 0xb7, hi: 0xb7}, -+ {value: 0x0289, lo: 0xb8, hi: 0xb8}, -+ {value: 0x0008, lo: 0xb9, hi: 0xbf}, -+ // Block 0x3, offset 0x25 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x3308, lo: 0x80, hi: 0xbf}, -+ // Block 0x4, offset 0x27 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x03f5, lo: 0x80, hi: 0x8f}, -+ {value: 0xe105, lo: 0x90, hi: 0x9f}, -+ {value: 0x049d, lo: 0xa0, hi: 0xaf}, -+ {value: 0x0008, lo: 0xb0, hi: 0xbf}, -+ // Block 0x5, offset 0x2c -+ {value: 0x0000, lo: 0x06}, -+ {value: 0xe185, lo: 0x80, hi: 0x8f}, -+ {value: 0x0545, lo: 0x90, hi: 0x96}, -+ {value: 0x0040, lo: 0x97, hi: 0x98}, -+ {value: 0x0008, lo: 0x99, hi: 0x99}, -+ {value: 0x0018, lo: 0x9a, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xbf}, -+ // Block 0x6, offset 0x33 -+ {value: 0x0000, lo: 0x0a}, -+ {value: 0x0008, lo: 0x80, hi: 0x86}, -+ {value: 0x0401, lo: 0x87, hi: 0x87}, -+ {value: 0x0008, lo: 0x88, hi: 0x88}, -+ {value: 0x0018, lo: 0x89, hi: 0x8a}, -+ {value: 0x0040, lo: 0x8b, hi: 0x8c}, -+ {value: 0x0018, lo: 0x8d, hi: 0x8f}, -+ {value: 0x0040, lo: 0x90, hi: 0x90}, -+ {value: 0x3308, lo: 0x91, hi: 0xbd}, -+ {value: 0x0818, lo: 0xbe, hi: 0xbe}, -+ {value: 0x3308, lo: 0xbf, hi: 0xbf}, -+ // Block 0x7, offset 0x3e -+ {value: 0x0000, lo: 0x0b}, -+ {value: 0x0818, lo: 0x80, hi: 0x80}, -+ {value: 0x3308, lo: 0x81, hi: 0x82}, -+ {value: 0x0818, lo: 0x83, hi: 0x83}, -+ {value: 0x3308, lo: 0x84, hi: 0x85}, -+ {value: 0x0818, lo: 0x86, hi: 0x86}, -+ {value: 0x3308, lo: 0x87, hi: 0x87}, -+ {value: 0x0040, lo: 0x88, hi: 0x8f}, -+ {value: 0x0808, lo: 0x90, hi: 0xaa}, -+ {value: 0x0040, lo: 0xab, hi: 0xae}, -+ {value: 0x0808, lo: 0xaf, hi: 0xb4}, -+ {value: 0x0040, lo: 0xb5, hi: 0xbf}, -+ // Block 0x8, offset 0x4a -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0a08, lo: 0x80, hi: 0x87}, -+ {value: 0x0c08, lo: 0x88, hi: 0x99}, -+ {value: 0x0a08, lo: 0x9a, hi: 0xbf}, -+ // Block 0x9, offset 0x4e -+ {value: 0x0000, lo: 0x0e}, -+ {value: 0x3308, lo: 0x80, hi: 0x8a}, -+ {value: 0x0040, lo: 0x8b, hi: 0x8c}, -+ {value: 0x0c08, lo: 0x8d, hi: 0x8d}, -+ {value: 0x0a08, lo: 0x8e, hi: 0x98}, -+ {value: 0x0c08, lo: 0x99, hi: 0x9b}, -+ {value: 0x0a08, lo: 0x9c, hi: 0xaa}, -+ {value: 0x0c08, lo: 0xab, hi: 0xac}, -+ {value: 0x0a08, lo: 0xad, hi: 0xb0}, -+ {value: 0x0c08, lo: 0xb1, hi: 0xb1}, -+ {value: 0x0a08, lo: 0xb2, hi: 0xb2}, -+ {value: 0x0c08, lo: 0xb3, hi: 0xb4}, -+ {value: 0x0a08, lo: 0xb5, hi: 0xb7}, -+ {value: 0x0c08, lo: 0xb8, hi: 0xb9}, -+ {value: 0x0a08, lo: 0xba, hi: 0xbf}, -+ // Block 0xa, offset 0x5d -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0808, lo: 0x80, hi: 0xa5}, -+ {value: 0x3308, lo: 0xa6, hi: 0xb0}, -+ {value: 0x0808, lo: 0xb1, hi: 0xb1}, -+ {value: 0x0040, lo: 0xb2, hi: 0xbf}, -+ // Block 0xb, offset 0x62 -+ {value: 0x0000, lo: 0x09}, -+ {value: 0x0808, lo: 0x80, hi: 0x89}, -+ {value: 0x0a08, lo: 0x8a, hi: 0xaa}, -+ {value: 0x3308, lo: 0xab, hi: 0xb3}, -+ {value: 0x0808, lo: 0xb4, hi: 0xb5}, -+ {value: 0x0018, lo: 0xb6, hi: 0xb9}, -+ {value: 0x0818, lo: 0xba, hi: 0xba}, -+ {value: 0x0040, lo: 0xbb, hi: 0xbc}, -+ {value: 0x3308, lo: 0xbd, hi: 0xbd}, -+ {value: 0x0818, lo: 0xbe, hi: 0xbf}, -+ // Block 0xc, offset 0x6c -+ {value: 0x0000, lo: 0x0b}, -+ {value: 0x0808, lo: 0x80, hi: 0x95}, -+ {value: 0x3308, lo: 0x96, hi: 0x99}, -+ {value: 0x0808, lo: 0x9a, hi: 0x9a}, -+ {value: 0x3308, lo: 0x9b, hi: 0xa3}, -+ {value: 0x0808, lo: 0xa4, hi: 0xa4}, -+ {value: 0x3308, lo: 0xa5, hi: 0xa7}, -+ {value: 0x0808, lo: 0xa8, hi: 0xa8}, -+ {value: 0x3308, lo: 0xa9, hi: 0xad}, -+ {value: 0x0040, lo: 0xae, hi: 0xaf}, -+ {value: 0x0818, lo: 0xb0, hi: 0xbe}, -+ {value: 0x0040, lo: 0xbf, hi: 0xbf}, -+ // Block 0xd, offset 0x78 -+ {value: 0x0000, lo: 0x0c}, -+ {value: 0x0040, lo: 0x80, hi: 0x9f}, -+ {value: 0x0a08, lo: 0xa0, hi: 0xa9}, -+ {value: 0x0c08, lo: 0xaa, hi: 0xac}, -+ {value: 0x0808, lo: 0xad, hi: 0xad}, -+ {value: 0x0c08, lo: 0xae, hi: 0xae}, -+ {value: 0x0a08, lo: 0xaf, hi: 0xb0}, -+ {value: 0x0c08, lo: 0xb1, hi: 0xb2}, -+ {value: 0x0a08, lo: 0xb3, hi: 0xb4}, -+ {value: 0x0040, lo: 0xb5, hi: 0xb5}, -+ {value: 0x0a08, lo: 0xb6, hi: 0xb8}, -+ {value: 0x0c08, lo: 0xb9, hi: 0xb9}, -+ {value: 0x0a08, lo: 0xba, hi: 0xbf}, -+ // Block 0xe, offset 0x85 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x0a08, lo: 0x80, hi: 0x87}, -+ {value: 0x0040, lo: 0x88, hi: 0x92}, -+ {value: 0x3308, lo: 0x93, hi: 0xa1}, -+ {value: 0x0840, lo: 0xa2, hi: 0xa2}, -+ {value: 0x3308, lo: 0xa3, hi: 0xbf}, -+ // Block 0xf, offset 0x8b -+ {value: 0x0000, lo: 0x08}, -+ {value: 0x3308, lo: 0x80, hi: 0x82}, -+ {value: 0x3008, lo: 0x83, hi: 0x83}, -+ {value: 0x0008, lo: 0x84, hi: 0xb9}, -+ {value: 0x3308, lo: 0xba, hi: 0xba}, -+ {value: 0x3008, lo: 0xbb, hi: 0xbb}, -+ {value: 0x3308, lo: 0xbc, hi: 0xbc}, -+ {value: 0x0008, lo: 0xbd, hi: 0xbd}, -+ {value: 0x3008, lo: 0xbe, hi: 0xbf}, -+ // Block 0x10, offset 0x94 -+ {value: 0x0000, lo: 0x0f}, -+ {value: 0x3308, lo: 0x80, hi: 0x80}, -+ {value: 0x3008, lo: 0x81, hi: 0x82}, -+ {value: 0x0040, lo: 0x83, hi: 0x85}, -+ {value: 0x3008, lo: 0x86, hi: 0x88}, -+ {value: 0x0040, lo: 0x89, hi: 0x89}, -+ {value: 0x3008, lo: 0x8a, hi: 0x8c}, -+ {value: 0x3b08, lo: 0x8d, hi: 0x8d}, -+ {value: 0x0040, lo: 0x8e, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0x90}, -+ {value: 0x0040, lo: 0x91, hi: 0x96}, -+ {value: 0x3008, lo: 0x97, hi: 0x97}, -+ {value: 0x0040, lo: 0x98, hi: 0xa5}, -+ {value: 0x0008, lo: 0xa6, hi: 0xaf}, -+ {value: 0x0018, lo: 0xb0, hi: 0xba}, -+ {value: 0x0040, lo: 0xbb, hi: 0xbf}, -+ // Block 0x11, offset 0xa4 -+ {value: 0x0000, lo: 0x0d}, -+ {value: 0x3308, lo: 0x80, hi: 0x80}, -+ {value: 0x3008, lo: 0x81, hi: 0x83}, -+ {value: 0x3308, lo: 0x84, hi: 0x84}, -+ {value: 0x0008, lo: 0x85, hi: 0x8c}, -+ {value: 0x0040, lo: 0x8d, hi: 0x8d}, -+ {value: 0x0008, lo: 0x8e, hi: 0x90}, -+ {value: 0x0040, lo: 0x91, hi: 0x91}, -+ {value: 0x0008, lo: 0x92, hi: 0xa8}, -+ {value: 0x0040, lo: 0xa9, hi: 0xa9}, -+ {value: 0x0008, lo: 0xaa, hi: 0xb9}, -+ {value: 0x0040, lo: 0xba, hi: 0xbc}, -+ {value: 0x0008, lo: 0xbd, hi: 0xbd}, -+ {value: 0x3308, lo: 0xbe, hi: 0xbf}, -+ // Block 0x12, offset 0xb2 -+ {value: 0x0000, lo: 0x0a}, -+ {value: 0x3308, lo: 0x80, hi: 0x81}, -+ {value: 0x3008, lo: 0x82, hi: 0x83}, -+ {value: 0x0008, lo: 0x84, hi: 0x8c}, -+ {value: 0x0040, lo: 0x8d, hi: 0x8d}, -+ {value: 0x0008, lo: 0x8e, hi: 0x90}, -+ {value: 0x0040, lo: 0x91, hi: 0x91}, -+ {value: 0x0008, lo: 0x92, hi: 0xba}, -+ {value: 0x3b08, lo: 0xbb, hi: 0xbc}, -+ {value: 0x0008, lo: 0xbd, hi: 0xbd}, -+ {value: 0x3008, lo: 0xbe, hi: 0xbf}, -+ // Block 0x13, offset 0xbd -+ {value: 0x0000, lo: 0x0c}, -+ {value: 0x0040, lo: 0x80, hi: 0x80}, -+ {value: 0x3308, lo: 0x81, hi: 0x81}, -+ {value: 0x3008, lo: 0x82, hi: 0x83}, -+ {value: 0x0040, lo: 0x84, hi: 0x84}, -+ {value: 0x0008, lo: 0x85, hi: 0x96}, -+ {value: 0x0040, lo: 0x97, hi: 0x99}, -+ {value: 0x0008, lo: 0x9a, hi: 0xb1}, -+ {value: 0x0040, lo: 0xb2, hi: 0xb2}, -+ {value: 0x0008, lo: 0xb3, hi: 0xbb}, -+ {value: 0x0040, lo: 0xbc, hi: 0xbc}, -+ {value: 0x0008, lo: 0xbd, hi: 0xbd}, -+ {value: 0x0040, lo: 0xbe, hi: 0xbf}, -+ // Block 0x14, offset 0xca -+ {value: 0x0000, lo: 0x10}, -+ {value: 0x0008, lo: 0x80, hi: 0x86}, -+ {value: 0x0040, lo: 0x87, hi: 0x89}, -+ {value: 0x3b08, lo: 0x8a, hi: 0x8a}, -+ {value: 0x0040, lo: 0x8b, hi: 0x8e}, -+ {value: 0x3008, lo: 0x8f, hi: 0x91}, -+ {value: 0x3308, lo: 0x92, hi: 0x94}, -+ {value: 0x0040, lo: 0x95, hi: 0x95}, -+ {value: 0x3308, lo: 0x96, hi: 0x96}, -+ {value: 0x0040, lo: 0x97, hi: 0x97}, -+ {value: 0x3008, lo: 0x98, hi: 0x9f}, -+ {value: 0x0040, lo: 0xa0, hi: 0xa5}, -+ {value: 0x0008, lo: 0xa6, hi: 0xaf}, -+ {value: 0x0040, lo: 0xb0, hi: 0xb1}, -+ {value: 0x3008, lo: 0xb2, hi: 0xb3}, -+ {value: 0x0018, lo: 0xb4, hi: 0xb4}, -+ {value: 0x0040, lo: 0xb5, hi: 0xbf}, -+ // Block 0x15, offset 0xdb -+ {value: 0x0000, lo: 0x09}, -+ {value: 0x0040, lo: 0x80, hi: 0x80}, -+ {value: 0x0008, lo: 0x81, hi: 0xb0}, -+ {value: 0x3308, lo: 0xb1, hi: 0xb1}, -+ {value: 0x0008, lo: 0xb2, hi: 0xb2}, -+ {value: 0x08f1, lo: 0xb3, hi: 0xb3}, -+ {value: 0x3308, lo: 0xb4, hi: 0xb9}, -+ {value: 0x3b08, lo: 0xba, hi: 0xba}, -+ {value: 0x0040, lo: 0xbb, hi: 0xbe}, -+ {value: 0x0018, lo: 0xbf, hi: 0xbf}, -+ // Block 0x16, offset 0xe5 -+ {value: 0x0000, lo: 0x06}, -+ {value: 0x0008, lo: 0x80, hi: 0x86}, -+ {value: 0x3308, lo: 0x87, hi: 0x8e}, -+ {value: 0x0018, lo: 0x8f, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0x99}, -+ {value: 0x0018, lo: 0x9a, hi: 0x9b}, -+ {value: 0x0040, lo: 0x9c, hi: 0xbf}, -+ // Block 0x17, offset 0xec -+ {value: 0x0000, lo: 0x0c}, -+ {value: 0x0008, lo: 0x80, hi: 0x84}, -+ {value: 0x0040, lo: 0x85, hi: 0x85}, -+ {value: 0x0008, lo: 0x86, hi: 0x86}, -+ {value: 0x0040, lo: 0x87, hi: 0x87}, -+ {value: 0x3308, lo: 0x88, hi: 0x8d}, -+ {value: 0x0040, lo: 0x8e, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0x99}, -+ {value: 0x0040, lo: 0x9a, hi: 0x9b}, -+ {value: 0x0961, lo: 0x9c, hi: 0x9c}, -+ {value: 0x0999, lo: 0x9d, hi: 0x9d}, -+ {value: 0x0008, lo: 0x9e, hi: 0x9f}, -+ {value: 0x0040, lo: 0xa0, hi: 0xbf}, -+ // Block 0x18, offset 0xf9 -+ {value: 0x0000, lo: 0x10}, -+ {value: 0x0008, lo: 0x80, hi: 0x80}, -+ {value: 0x0018, lo: 0x81, hi: 0x8a}, -+ {value: 0x0008, lo: 0x8b, hi: 0x8b}, -+ {value: 0xe03d, lo: 0x8c, hi: 0x8c}, -+ {value: 0x0018, lo: 0x8d, hi: 0x97}, -+ {value: 0x3308, lo: 0x98, hi: 0x99}, -+ {value: 0x0018, lo: 0x9a, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xa9}, -+ {value: 0x0018, lo: 0xaa, hi: 0xb4}, -+ {value: 0x3308, lo: 0xb5, hi: 0xb5}, -+ {value: 0x0018, lo: 0xb6, hi: 0xb6}, -+ {value: 0x3308, lo: 0xb7, hi: 0xb7}, -+ {value: 0x0018, lo: 0xb8, hi: 0xb8}, -+ {value: 0x3308, lo: 0xb9, hi: 0xb9}, -+ {value: 0x0018, lo: 0xba, hi: 0xbd}, -+ {value: 0x3008, lo: 0xbe, hi: 0xbf}, -+ // Block 0x19, offset 0x10a -+ {value: 0x0000, lo: 0x06}, -+ {value: 0x0018, lo: 0x80, hi: 0x85}, -+ {value: 0x3308, lo: 0x86, hi: 0x86}, -+ {value: 0x0018, lo: 0x87, hi: 0x8c}, -+ {value: 0x0040, lo: 0x8d, hi: 0x8d}, -+ {value: 0x0018, lo: 0x8e, hi: 0x9a}, -+ {value: 0x0040, lo: 0x9b, hi: 0xbf}, -+ // Block 0x1a, offset 0x111 -+ {value: 0x0000, lo: 0x0a}, -+ {value: 0x0008, lo: 0x80, hi: 0xaa}, -+ {value: 0x3008, lo: 0xab, hi: 0xac}, -+ {value: 0x3308, lo: 0xad, hi: 0xb0}, -+ {value: 0x3008, lo: 0xb1, hi: 0xb1}, -+ {value: 0x3308, lo: 0xb2, hi: 0xb7}, -+ {value: 0x3008, lo: 0xb8, hi: 0xb8}, -+ {value: 0x3b08, lo: 0xb9, hi: 0xba}, -+ {value: 0x3008, lo: 0xbb, hi: 0xbc}, -+ {value: 0x3308, lo: 0xbd, hi: 0xbe}, -+ {value: 0x0008, lo: 0xbf, hi: 0xbf}, -+ // Block 0x1b, offset 0x11c -+ {value: 0x0000, lo: 0x0e}, -+ {value: 0x0008, lo: 0x80, hi: 0x89}, -+ {value: 0x0018, lo: 0x8a, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0x95}, -+ {value: 0x3008, lo: 0x96, hi: 0x97}, -+ {value: 0x3308, lo: 0x98, hi: 0x99}, -+ {value: 0x0008, lo: 0x9a, hi: 0x9d}, -+ {value: 0x3308, lo: 0x9e, hi: 0xa0}, -+ {value: 0x0008, lo: 0xa1, hi: 0xa1}, -+ {value: 0x3008, lo: 0xa2, hi: 0xa4}, -+ {value: 0x0008, lo: 0xa5, hi: 0xa6}, -+ {value: 0x3008, lo: 0xa7, hi: 0xad}, -+ {value: 0x0008, lo: 0xae, hi: 0xb0}, -+ {value: 0x3308, lo: 0xb1, hi: 0xb4}, -+ {value: 0x0008, lo: 0xb5, hi: 0xbf}, -+ // Block 0x1c, offset 0x12b -+ {value: 0x0000, lo: 0x0d}, -+ {value: 0x0008, lo: 0x80, hi: 0x81}, -+ {value: 0x3308, lo: 0x82, hi: 0x82}, -+ {value: 0x3008, lo: 0x83, hi: 0x84}, -+ {value: 0x3308, lo: 0x85, hi: 0x86}, -+ {value: 0x3008, lo: 0x87, hi: 0x8c}, -+ {value: 0x3308, lo: 0x8d, hi: 0x8d}, -+ {value: 0x0008, lo: 0x8e, hi: 0x8e}, -+ {value: 0x3008, lo: 0x8f, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0x99}, -+ {value: 0x3008, lo: 0x9a, hi: 0x9c}, -+ {value: 0x3308, lo: 0x9d, hi: 0x9d}, -+ {value: 0x0018, lo: 0x9e, hi: 0x9f}, -+ {value: 0x0040, lo: 0xa0, hi: 0xbf}, -+ // Block 0x1d, offset 0x139 -+ {value: 0x0000, lo: 0x09}, -+ {value: 0x0040, lo: 0x80, hi: 0x86}, -+ {value: 0x055d, lo: 0x87, hi: 0x87}, -+ {value: 0x0040, lo: 0x88, hi: 0x8c}, -+ {value: 0x055d, lo: 0x8d, hi: 0x8d}, -+ {value: 0x0040, lo: 0x8e, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0xba}, -+ {value: 0x0018, lo: 0xbb, hi: 0xbb}, -+ {value: 0xe105, lo: 0xbc, hi: 0xbc}, -+ {value: 0x0008, lo: 0xbd, hi: 0xbf}, -+ // Block 0x1e, offset 0x143 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x0018, lo: 0x80, hi: 0xbf}, -+ // Block 0x1f, offset 0x145 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0018, lo: 0x80, hi: 0x9e}, -+ {value: 0x0040, lo: 0x9f, hi: 0xa0}, -+ {value: 0x2018, lo: 0xa1, hi: 0xb5}, -+ {value: 0x0018, lo: 0xb6, hi: 0xbf}, -+ // Block 0x20, offset 0x14a -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0018, lo: 0x80, hi: 0xa7}, -+ {value: 0x2018, lo: 0xa8, hi: 0xbf}, -+ // Block 0x21, offset 0x14d -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x2018, lo: 0x80, hi: 0x82}, -+ {value: 0x0018, lo: 0x83, hi: 0xbf}, -+ // Block 0x22, offset 0x150 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x0008, lo: 0x80, hi: 0xbf}, -+ // Block 0x23, offset 0x152 -+ {value: 0x0000, lo: 0x0b}, -+ {value: 0x0008, lo: 0x80, hi: 0x88}, -+ {value: 0x0040, lo: 0x89, hi: 0x89}, -+ {value: 0x0008, lo: 0x8a, hi: 0x8d}, -+ {value: 0x0040, lo: 0x8e, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0x96}, -+ {value: 0x0040, lo: 0x97, hi: 0x97}, -+ {value: 0x0008, lo: 0x98, hi: 0x98}, -+ {value: 0x0040, lo: 0x99, hi: 0x99}, -+ {value: 0x0008, lo: 0x9a, hi: 0x9d}, -+ {value: 0x0040, lo: 0x9e, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xbf}, -+ // Block 0x24, offset 0x15e -+ {value: 0x0000, lo: 0x0a}, -+ {value: 0x0008, lo: 0x80, hi: 0x88}, -+ {value: 0x0040, lo: 0x89, hi: 0x89}, -+ {value: 0x0008, lo: 0x8a, hi: 0x8d}, -+ {value: 0x0040, lo: 0x8e, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0xb0}, -+ {value: 0x0040, lo: 0xb1, hi: 0xb1}, -+ {value: 0x0008, lo: 0xb2, hi: 0xb5}, -+ {value: 0x0040, lo: 0xb6, hi: 0xb7}, -+ {value: 0x0008, lo: 0xb8, hi: 0xbe}, -+ {value: 0x0040, lo: 0xbf, hi: 0xbf}, -+ // Block 0x25, offset 0x169 -+ {value: 0x0000, lo: 0x07}, -+ {value: 0x0008, lo: 0x80, hi: 0x80}, -+ {value: 0x0040, lo: 0x81, hi: 0x81}, -+ {value: 0x0008, lo: 0x82, hi: 0x85}, -+ {value: 0x0040, lo: 0x86, hi: 0x87}, -+ {value: 0x0008, lo: 0x88, hi: 0x96}, -+ {value: 0x0040, lo: 0x97, hi: 0x97}, -+ {value: 0x0008, lo: 0x98, hi: 0xbf}, -+ // Block 0x26, offset 0x171 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x0008, lo: 0x80, hi: 0x90}, -+ {value: 0x0040, lo: 0x91, hi: 0x91}, -+ {value: 0x0008, lo: 0x92, hi: 0x95}, -+ {value: 0x0040, lo: 0x96, hi: 0x97}, -+ {value: 0x0008, lo: 0x98, hi: 0xbf}, -+ // Block 0x27, offset 0x177 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x0008, lo: 0x80, hi: 0x9a}, -+ {value: 0x0040, lo: 0x9b, hi: 0x9c}, -+ {value: 0x3308, lo: 0x9d, hi: 0x9f}, -+ {value: 0x0018, lo: 0xa0, hi: 0xbc}, -+ {value: 0x0040, lo: 0xbd, hi: 0xbf}, -+ // Block 0x28, offset 0x17d -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0008, lo: 0x80, hi: 0x8f}, -+ {value: 0x0018, lo: 0x90, hi: 0x99}, -+ {value: 0x0040, lo: 0x9a, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xbf}, -+ // Block 0x29, offset 0x182 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0008, lo: 0x80, hi: 0xb5}, -+ {value: 0x0040, lo: 0xb6, hi: 0xb7}, -+ {value: 0xe045, lo: 0xb8, hi: 0xbd}, -+ {value: 0x0040, lo: 0xbe, hi: 0xbf}, -+ // Block 0x2a, offset 0x187 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0018, lo: 0x80, hi: 0x80}, -+ {value: 0x0008, lo: 0x81, hi: 0xbf}, -+ // Block 0x2b, offset 0x18a -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0008, lo: 0x80, hi: 0xac}, -+ {value: 0x0018, lo: 0xad, hi: 0xae}, -+ {value: 0x0008, lo: 0xaf, hi: 0xbf}, -+ // Block 0x2c, offset 0x18e -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x0040, lo: 0x80, hi: 0x80}, -+ {value: 0x0008, lo: 0x81, hi: 0x9a}, -+ {value: 0x0018, lo: 0x9b, hi: 0x9c}, -+ {value: 0x0040, lo: 0x9d, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xbf}, -+ // Block 0x2d, offset 0x194 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0008, lo: 0x80, hi: 0xaa}, -+ {value: 0x0018, lo: 0xab, hi: 0xb0}, -+ {value: 0x0008, lo: 0xb1, hi: 0xb8}, -+ {value: 0x0040, lo: 0xb9, hi: 0xbf}, -+ // Block 0x2e, offset 0x199 -+ {value: 0x0000, lo: 0x0b}, -+ {value: 0x0008, lo: 0x80, hi: 0x8c}, -+ {value: 0x0040, lo: 0x8d, hi: 0x8d}, -+ {value: 0x0008, lo: 0x8e, hi: 0x91}, -+ {value: 0x3308, lo: 0x92, hi: 0x93}, -+ {value: 0x3b08, lo: 0x94, hi: 0x94}, -+ {value: 0x0040, lo: 0x95, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xb1}, -+ {value: 0x3308, lo: 0xb2, hi: 0xb3}, -+ {value: 0x3b08, lo: 0xb4, hi: 0xb4}, -+ {value: 0x0018, lo: 0xb5, hi: 0xb6}, -+ {value: 0x0040, lo: 0xb7, hi: 0xbf}, -+ // Block 0x2f, offset 0x1a5 -+ {value: 0x0000, lo: 0x09}, -+ {value: 0x0008, lo: 0x80, hi: 0x91}, -+ {value: 0x3308, lo: 0x92, hi: 0x93}, -+ {value: 0x0040, lo: 0x94, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xac}, -+ {value: 0x0040, lo: 0xad, hi: 0xad}, -+ {value: 0x0008, lo: 0xae, hi: 0xb0}, -+ {value: 0x0040, lo: 0xb1, hi: 0xb1}, -+ {value: 0x3308, lo: 0xb2, hi: 0xb3}, -+ {value: 0x0040, lo: 0xb4, hi: 0xbf}, -+ // Block 0x30, offset 0x1af -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x0008, lo: 0x80, hi: 0xb3}, -+ {value: 0x3340, lo: 0xb4, hi: 0xb5}, -+ {value: 0x3008, lo: 0xb6, hi: 0xb6}, -+ {value: 0x3308, lo: 0xb7, hi: 0xbd}, -+ {value: 0x3008, lo: 0xbe, hi: 0xbf}, -+ // Block 0x31, offset 0x1b5 -+ {value: 0x0000, lo: 0x10}, -+ {value: 0x3008, lo: 0x80, hi: 0x85}, -+ {value: 0x3308, lo: 0x86, hi: 0x86}, -+ {value: 0x3008, lo: 0x87, hi: 0x88}, -+ {value: 0x3308, lo: 0x89, hi: 0x91}, -+ {value: 0x3b08, lo: 0x92, hi: 0x92}, -+ {value: 0x3308, lo: 0x93, hi: 0x93}, -+ {value: 0x0018, lo: 0x94, hi: 0x96}, -+ {value: 0x0008, lo: 0x97, hi: 0x97}, -+ {value: 0x0018, lo: 0x98, hi: 0x9b}, -+ {value: 0x0008, lo: 0x9c, hi: 0x9c}, -+ {value: 0x3308, lo: 0x9d, hi: 0x9d}, -+ {value: 0x0040, lo: 0x9e, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xa9}, -+ {value: 0x0040, lo: 0xaa, hi: 0xaf}, -+ {value: 0x0018, lo: 0xb0, hi: 0xb9}, -+ {value: 0x0040, lo: 0xba, hi: 0xbf}, -+ // Block 0x32, offset 0x1c6 -+ {value: 0x0000, lo: 0x09}, -+ {value: 0x0018, lo: 0x80, hi: 0x85}, -+ {value: 0x0040, lo: 0x86, hi: 0x86}, -+ {value: 0x0218, lo: 0x87, hi: 0x87}, -+ {value: 0x0018, lo: 0x88, hi: 0x8a}, -+ {value: 0x33c0, lo: 0x8b, hi: 0x8d}, -+ {value: 0x0040, lo: 0x8e, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0x99}, -+ {value: 0x0040, lo: 0x9a, hi: 0x9f}, -+ {value: 0x0208, lo: 0xa0, hi: 0xbf}, -+ // Block 0x33, offset 0x1d0 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0208, lo: 0x80, hi: 0xb8}, -+ {value: 0x0040, lo: 0xb9, hi: 0xbf}, -+ // Block 0x34, offset 0x1d3 -+ {value: 0x0000, lo: 0x07}, -+ {value: 0x0008, lo: 0x80, hi: 0x84}, -+ {value: 0x3308, lo: 0x85, hi: 0x86}, -+ {value: 0x0208, lo: 0x87, hi: 0xa8}, -+ {value: 0x3308, lo: 0xa9, hi: 0xa9}, -+ {value: 0x0208, lo: 0xaa, hi: 0xaa}, -+ {value: 0x0040, lo: 0xab, hi: 0xaf}, -+ {value: 0x0008, lo: 0xb0, hi: 0xbf}, -+ // Block 0x35, offset 0x1db -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0008, lo: 0x80, hi: 0xb5}, -+ {value: 0x0040, lo: 0xb6, hi: 0xbf}, -+ // Block 0x36, offset 0x1de -+ {value: 0x0000, lo: 0x0c}, -+ {value: 0x0008, lo: 0x80, hi: 0x9e}, -+ {value: 0x0040, lo: 0x9f, hi: 0x9f}, -+ {value: 0x3308, lo: 0xa0, hi: 0xa2}, -+ {value: 0x3008, lo: 0xa3, hi: 0xa6}, -+ {value: 0x3308, lo: 0xa7, hi: 0xa8}, -+ {value: 0x3008, lo: 0xa9, hi: 0xab}, -+ {value: 0x0040, lo: 0xac, hi: 0xaf}, -+ {value: 0x3008, lo: 0xb0, hi: 0xb1}, -+ {value: 0x3308, lo: 0xb2, hi: 0xb2}, -+ {value: 0x3008, lo: 0xb3, hi: 0xb8}, -+ {value: 0x3308, lo: 0xb9, hi: 0xbb}, -+ {value: 0x0040, lo: 0xbc, hi: 0xbf}, -+ // Block 0x37, offset 0x1eb -+ {value: 0x0000, lo: 0x07}, -+ {value: 0x0018, lo: 0x80, hi: 0x80}, -+ {value: 0x0040, lo: 0x81, hi: 0x83}, -+ {value: 0x0018, lo: 0x84, hi: 0x85}, -+ {value: 0x0008, lo: 0x86, hi: 0xad}, -+ {value: 0x0040, lo: 0xae, hi: 0xaf}, -+ {value: 0x0008, lo: 0xb0, hi: 0xb4}, -+ {value: 0x0040, lo: 0xb5, hi: 0xbf}, -+ // Block 0x38, offset 0x1f3 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0008, lo: 0x80, hi: 0xab}, -+ {value: 0x0040, lo: 0xac, hi: 0xaf}, -+ {value: 0x0008, lo: 0xb0, hi: 0xbf}, -+ // Block 0x39, offset 0x1f7 -+ {value: 0x0000, lo: 0x06}, -+ {value: 0x0008, lo: 0x80, hi: 0x89}, -+ {value: 0x0040, lo: 0x8a, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0x99}, -+ {value: 0x0028, lo: 0x9a, hi: 0x9a}, -+ {value: 0x0040, lo: 0x9b, hi: 0x9d}, -+ {value: 0x0018, lo: 0x9e, hi: 0xbf}, -+ // Block 0x3a, offset 0x1fe -+ {value: 0x0000, lo: 0x07}, -+ {value: 0x0008, lo: 0x80, hi: 0x96}, -+ {value: 0x3308, lo: 0x97, hi: 0x98}, -+ {value: 0x3008, lo: 0x99, hi: 0x9a}, -+ {value: 0x3308, lo: 0x9b, hi: 0x9b}, -+ {value: 0x0040, lo: 0x9c, hi: 0x9d}, -+ {value: 0x0018, lo: 0x9e, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xbf}, -+ // Block 0x3b, offset 0x206 -+ {value: 0x0000, lo: 0x0f}, -+ {value: 0x0008, lo: 0x80, hi: 0x94}, -+ {value: 0x3008, lo: 0x95, hi: 0x95}, -+ {value: 0x3308, lo: 0x96, hi: 0x96}, -+ {value: 0x3008, lo: 0x97, hi: 0x97}, -+ {value: 0x3308, lo: 0x98, hi: 0x9e}, -+ {value: 0x0040, lo: 0x9f, hi: 0x9f}, -+ {value: 0x3b08, lo: 0xa0, hi: 0xa0}, -+ {value: 0x3008, lo: 0xa1, hi: 0xa1}, -+ {value: 0x3308, lo: 0xa2, hi: 0xa2}, -+ {value: 0x3008, lo: 0xa3, hi: 0xa4}, -+ {value: 0x3308, lo: 0xa5, hi: 0xac}, -+ {value: 0x3008, lo: 0xad, hi: 0xb2}, -+ {value: 0x3308, lo: 0xb3, hi: 0xbc}, -+ {value: 0x0040, lo: 0xbd, hi: 0xbe}, -+ {value: 0x3308, lo: 0xbf, hi: 0xbf}, -+ // Block 0x3c, offset 0x216 -+ {value: 0x0000, lo: 0x0b}, -+ {value: 0x0008, lo: 0x80, hi: 0x89}, -+ {value: 0x0040, lo: 0x8a, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0x99}, -+ {value: 0x0040, lo: 0x9a, hi: 0x9f}, -+ {value: 0x0018, lo: 0xa0, hi: 0xa6}, -+ {value: 0x0008, lo: 0xa7, hi: 0xa7}, -+ {value: 0x0018, lo: 0xa8, hi: 0xad}, -+ {value: 0x0040, lo: 0xae, hi: 0xaf}, -+ {value: 0x3308, lo: 0xb0, hi: 0xbd}, -+ {value: 0x3318, lo: 0xbe, hi: 0xbe}, -+ {value: 0x3308, lo: 0xbf, hi: 0xbf}, -+ // Block 0x3d, offset 0x222 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x3308, lo: 0x80, hi: 0x80}, -+ {value: 0x0040, lo: 0x81, hi: 0xbf}, -+ // Block 0x3e, offset 0x225 -+ {value: 0x0000, lo: 0x09}, -+ {value: 0x3308, lo: 0x80, hi: 0x83}, -+ {value: 0x3008, lo: 0x84, hi: 0x84}, -+ {value: 0x0008, lo: 0x85, hi: 0xb3}, -+ {value: 0x3308, lo: 0xb4, hi: 0xb4}, -+ {value: 0x3008, lo: 0xb5, hi: 0xb5}, -+ {value: 0x3308, lo: 0xb6, hi: 0xba}, -+ {value: 0x3008, lo: 0xbb, hi: 0xbb}, -+ {value: 0x3308, lo: 0xbc, hi: 0xbc}, -+ {value: 0x3008, lo: 0xbd, hi: 0xbf}, -+ // Block 0x3f, offset 0x22f -+ {value: 0x0000, lo: 0x0b}, -+ {value: 0x3008, lo: 0x80, hi: 0x81}, -+ {value: 0x3308, lo: 0x82, hi: 0x82}, -+ {value: 0x3008, lo: 0x83, hi: 0x83}, -+ {value: 0x3808, lo: 0x84, hi: 0x84}, -+ {value: 0x0008, lo: 0x85, hi: 0x8b}, -+ {value: 0x0040, lo: 0x8c, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0x99}, -+ {value: 0x0018, lo: 0x9a, hi: 0xaa}, -+ {value: 0x3308, lo: 0xab, hi: 0xb3}, -+ {value: 0x0018, lo: 0xb4, hi: 0xbc}, -+ {value: 0x0040, lo: 0xbd, hi: 0xbf}, -+ // Block 0x40, offset 0x23b -+ {value: 0x0000, lo: 0x0b}, -+ {value: 0x3308, lo: 0x80, hi: 0x81}, -+ {value: 0x3008, lo: 0x82, hi: 0x82}, -+ {value: 0x0008, lo: 0x83, hi: 0xa0}, -+ {value: 0x3008, lo: 0xa1, hi: 0xa1}, -+ {value: 0x3308, lo: 0xa2, hi: 0xa5}, -+ {value: 0x3008, lo: 0xa6, hi: 0xa7}, -+ {value: 0x3308, lo: 0xa8, hi: 0xa9}, -+ {value: 0x3808, lo: 0xaa, hi: 0xaa}, -+ {value: 0x3b08, lo: 0xab, hi: 0xab}, -+ {value: 0x3308, lo: 0xac, hi: 0xad}, -+ {value: 0x0008, lo: 0xae, hi: 0xbf}, -+ // Block 0x41, offset 0x247 -+ {value: 0x0000, lo: 0x0b}, -+ {value: 0x0008, lo: 0x80, hi: 0xa5}, -+ {value: 0x3308, lo: 0xa6, hi: 0xa6}, -+ {value: 0x3008, lo: 0xa7, hi: 0xa7}, -+ {value: 0x3308, lo: 0xa8, hi: 0xa9}, -+ {value: 0x3008, lo: 0xaa, hi: 0xac}, -+ {value: 0x3308, lo: 0xad, hi: 0xad}, -+ {value: 0x3008, lo: 0xae, hi: 0xae}, -+ {value: 0x3308, lo: 0xaf, hi: 0xb1}, -+ {value: 0x3808, lo: 0xb2, hi: 0xb3}, -+ {value: 0x0040, lo: 0xb4, hi: 0xbb}, -+ {value: 0x0018, lo: 0xbc, hi: 0xbf}, -+ // Block 0x42, offset 0x253 -+ {value: 0x0000, lo: 0x07}, -+ {value: 0x0008, lo: 0x80, hi: 0xa3}, -+ {value: 0x3008, lo: 0xa4, hi: 0xab}, -+ {value: 0x3308, lo: 0xac, hi: 0xb3}, -+ {value: 0x3008, lo: 0xb4, hi: 0xb5}, -+ {value: 0x3308, lo: 0xb6, hi: 0xb7}, -+ {value: 0x0040, lo: 0xb8, hi: 0xba}, -+ {value: 0x0018, lo: 0xbb, hi: 0xbf}, -+ // Block 0x43, offset 0x25b -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0008, lo: 0x80, hi: 0x89}, -+ {value: 0x0040, lo: 0x8a, hi: 0x8c}, -+ {value: 0x0008, lo: 0x8d, hi: 0xbd}, -+ {value: 0x0018, lo: 0xbe, hi: 0xbf}, -+ // Block 0x44, offset 0x260 -+ {value: 0x0000, lo: 0x0c}, -+ {value: 0x0e29, lo: 0x80, hi: 0x80}, -+ {value: 0x0e41, lo: 0x81, hi: 0x81}, -+ {value: 0x0e59, lo: 0x82, hi: 0x82}, -+ {value: 0x0e71, lo: 0x83, hi: 0x83}, -+ {value: 0x0e89, lo: 0x84, hi: 0x85}, -+ {value: 0x0ea1, lo: 0x86, hi: 0x86}, -+ {value: 0x0eb9, lo: 0x87, hi: 0x87}, -+ {value: 0x057d, lo: 0x88, hi: 0x88}, -+ {value: 0x0040, lo: 0x89, hi: 0x8f}, -+ {value: 0x059d, lo: 0x90, hi: 0xba}, -+ {value: 0x0040, lo: 0xbb, hi: 0xbc}, -+ {value: 0x059d, lo: 0xbd, hi: 0xbf}, -+ // Block 0x45, offset 0x26d -+ {value: 0x0000, lo: 0x10}, -+ {value: 0x0018, lo: 0x80, hi: 0x87}, -+ {value: 0x0040, lo: 0x88, hi: 0x8f}, -+ {value: 0x3308, lo: 0x90, hi: 0x92}, -+ {value: 0x0018, lo: 0x93, hi: 0x93}, -+ {value: 0x3308, lo: 0x94, hi: 0xa0}, -+ {value: 0x3008, lo: 0xa1, hi: 0xa1}, -+ {value: 0x3308, lo: 0xa2, hi: 0xa8}, -+ {value: 0x0008, lo: 0xa9, hi: 0xac}, -+ {value: 0x3308, lo: 0xad, hi: 0xad}, -+ {value: 0x0008, lo: 0xae, hi: 0xb3}, -+ {value: 0x3308, lo: 0xb4, hi: 0xb4}, -+ {value: 0x0008, lo: 0xb5, hi: 0xb6}, -+ {value: 0x3008, lo: 0xb7, hi: 0xb7}, -+ {value: 0x3308, lo: 0xb8, hi: 0xb9}, -+ {value: 0x0008, lo: 0xba, hi: 0xba}, -+ {value: 0x0040, lo: 0xbb, hi: 0xbf}, -+ // Block 0x46, offset 0x27e -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x3308, lo: 0x80, hi: 0xb9}, -+ {value: 0x0040, lo: 0xba, hi: 0xba}, -+ {value: 0x3308, lo: 0xbb, hi: 0xbf}, -+ // Block 0x47, offset 0x282 -+ {value: 0x0000, lo: 0x0a}, -+ {value: 0x0008, lo: 0x80, hi: 0x87}, -+ {value: 0xe045, lo: 0x88, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0x95}, -+ {value: 0x0040, lo: 0x96, hi: 0x97}, -+ {value: 0xe045, lo: 0x98, hi: 0x9d}, -+ {value: 0x0040, lo: 0x9e, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xa7}, -+ {value: 0xe045, lo: 0xa8, hi: 0xaf}, -+ {value: 0x0008, lo: 0xb0, hi: 0xb7}, -+ {value: 0xe045, lo: 0xb8, hi: 0xbf}, -+ // Block 0x48, offset 0x28d -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0040, lo: 0x80, hi: 0x8f}, -+ {value: 0x3318, lo: 0x90, hi: 0xb0}, -+ {value: 0x0040, lo: 0xb1, hi: 0xbf}, -+ // Block 0x49, offset 0x291 -+ {value: 0x0000, lo: 0x08}, -+ {value: 0x0018, lo: 0x80, hi: 0x82}, -+ {value: 0x0040, lo: 0x83, hi: 0x83}, -+ {value: 0x0008, lo: 0x84, hi: 0x84}, -+ {value: 0x0018, lo: 0x85, hi: 0x88}, -+ {value: 0x24c1, lo: 0x89, hi: 0x89}, -+ {value: 0x0018, lo: 0x8a, hi: 0x8b}, -+ {value: 0x0040, lo: 0x8c, hi: 0x8f}, -+ {value: 0x0018, lo: 0x90, hi: 0xbf}, -+ // Block 0x4a, offset 0x29a -+ {value: 0x0000, lo: 0x07}, -+ {value: 0x0018, lo: 0x80, hi: 0xab}, -+ {value: 0x24f1, lo: 0xac, hi: 0xac}, -+ {value: 0x2529, lo: 0xad, hi: 0xad}, -+ {value: 0x0018, lo: 0xae, hi: 0xae}, -+ {value: 0x2579, lo: 0xaf, hi: 0xaf}, -+ {value: 0x25b1, lo: 0xb0, hi: 0xb0}, -+ {value: 0x0018, lo: 0xb1, hi: 0xbf}, -+ // Block 0x4b, offset 0x2a2 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x0018, lo: 0x80, hi: 0x9f}, -+ {value: 0x0080, lo: 0xa0, hi: 0xa0}, -+ {value: 0x0018, lo: 0xa1, hi: 0xad}, -+ {value: 0x0080, lo: 0xae, hi: 0xaf}, -+ {value: 0x0018, lo: 0xb0, hi: 0xbf}, -+ // Block 0x4c, offset 0x2a8 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0018, lo: 0x80, hi: 0xa8}, -+ {value: 0x09dd, lo: 0xa9, hi: 0xa9}, -+ {value: 0x09fd, lo: 0xaa, hi: 0xaa}, -+ {value: 0x0018, lo: 0xab, hi: 0xbf}, -+ // Block 0x4d, offset 0x2ad -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0018, lo: 0x80, hi: 0xa6}, -+ {value: 0x0040, lo: 0xa7, hi: 0xbf}, -+ // Block 0x4e, offset 0x2b0 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0018, lo: 0x80, hi: 0x8b}, -+ {value: 0x28c1, lo: 0x8c, hi: 0x8c}, -+ {value: 0x0018, lo: 0x8d, hi: 0xbf}, -+ // Block 0x4f, offset 0x2b4 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x0018, lo: 0x80, hi: 0xb3}, -+ {value: 0x0e7e, lo: 0xb4, hi: 0xb4}, -+ {value: 0x292a, lo: 0xb5, hi: 0xb5}, -+ {value: 0x0e9e, lo: 0xb6, hi: 0xb6}, -+ {value: 0x0018, lo: 0xb7, hi: 0xbf}, -+ // Block 0x50, offset 0x2ba -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0018, lo: 0x80, hi: 0x9b}, -+ {value: 0x2941, lo: 0x9c, hi: 0x9c}, -+ {value: 0x0018, lo: 0x9d, hi: 0xbf}, -+ // Block 0x51, offset 0x2be -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0018, lo: 0x80, hi: 0xb3}, -+ {value: 0x0040, lo: 0xb4, hi: 0xb5}, -+ {value: 0x0018, lo: 0xb6, hi: 0xbf}, -+ // Block 0x52, offset 0x2c2 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0018, lo: 0x80, hi: 0x95}, -+ {value: 0x0040, lo: 0x96, hi: 0x96}, -+ {value: 0x0018, lo: 0x97, hi: 0xbf}, -+ // Block 0x53, offset 0x2c6 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0xe185, lo: 0x80, hi: 0x8f}, -+ {value: 0x03f5, lo: 0x90, hi: 0x9f}, -+ {value: 0x0ebd, lo: 0xa0, hi: 0xae}, -+ {value: 0x0040, lo: 0xaf, hi: 0xaf}, -+ {value: 0x0008, lo: 0xb0, hi: 0xbf}, -+ // Block 0x54, offset 0x2cc -+ {value: 0x0000, lo: 0x07}, -+ {value: 0x0008, lo: 0x80, hi: 0xa5}, -+ {value: 0x0040, lo: 0xa6, hi: 0xa6}, -+ {value: 0x0008, lo: 0xa7, hi: 0xa7}, -+ {value: 0x0040, lo: 0xa8, hi: 0xac}, -+ {value: 0x0008, lo: 0xad, hi: 0xad}, -+ {value: 0x0040, lo: 0xae, hi: 0xaf}, -+ {value: 0x0008, lo: 0xb0, hi: 0xbf}, -+ // Block 0x55, offset 0x2d4 -+ {value: 0x0000, lo: 0x06}, -+ {value: 0x0008, lo: 0x80, hi: 0xa7}, -+ {value: 0x0040, lo: 0xa8, hi: 0xae}, -+ {value: 0xe075, lo: 0xaf, hi: 0xaf}, -+ {value: 0x0018, lo: 0xb0, hi: 0xb0}, -+ {value: 0x0040, lo: 0xb1, hi: 0xbe}, -+ {value: 0x3b08, lo: 0xbf, hi: 0xbf}, -+ // Block 0x56, offset 0x2db -+ {value: 0x0000, lo: 0x0a}, -+ {value: 0x0008, lo: 0x80, hi: 0x96}, -+ {value: 0x0040, lo: 0x97, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xa6}, -+ {value: 0x0040, lo: 0xa7, hi: 0xa7}, -+ {value: 0x0008, lo: 0xa8, hi: 0xae}, -+ {value: 0x0040, lo: 0xaf, hi: 0xaf}, -+ {value: 0x0008, lo: 0xb0, hi: 0xb6}, -+ {value: 0x0040, lo: 0xb7, hi: 0xb7}, -+ {value: 0x0008, lo: 0xb8, hi: 0xbe}, -+ {value: 0x0040, lo: 0xbf, hi: 0xbf}, -+ // Block 0x57, offset 0x2e6 -+ {value: 0x0000, lo: 0x09}, -+ {value: 0x0008, lo: 0x80, hi: 0x86}, -+ {value: 0x0040, lo: 0x87, hi: 0x87}, -+ {value: 0x0008, lo: 0x88, hi: 0x8e}, -+ {value: 0x0040, lo: 0x8f, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0x96}, -+ {value: 0x0040, lo: 0x97, hi: 0x97}, -+ {value: 0x0008, lo: 0x98, hi: 0x9e}, -+ {value: 0x0040, lo: 0x9f, hi: 0x9f}, -+ {value: 0x3308, lo: 0xa0, hi: 0xbf}, -+ // Block 0x58, offset 0x2f0 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0018, lo: 0x80, hi: 0xae}, -+ {value: 0x0008, lo: 0xaf, hi: 0xaf}, -+ {value: 0x0018, lo: 0xb0, hi: 0xbf}, -+ // Block 0x59, offset 0x2f4 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0018, lo: 0x80, hi: 0x92}, -+ {value: 0x0040, lo: 0x93, hi: 0xbf}, -+ // Block 0x5a, offset 0x2f7 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x0018, lo: 0x80, hi: 0x99}, -+ {value: 0x0040, lo: 0x9a, hi: 0x9a}, -+ {value: 0x0018, lo: 0x9b, hi: 0x9e}, -+ {value: 0x0ef5, lo: 0x9f, hi: 0x9f}, -+ {value: 0x0018, lo: 0xa0, hi: 0xbf}, -+ // Block 0x5b, offset 0x2fd -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0018, lo: 0x80, hi: 0xb2}, -+ {value: 0x0f15, lo: 0xb3, hi: 0xb3}, -+ {value: 0x0040, lo: 0xb4, hi: 0xbf}, -+ // Block 0x5c, offset 0x301 -+ {value: 0x0020, lo: 0x01}, -+ {value: 0x0f35, lo: 0x80, hi: 0xbf}, -+ // Block 0x5d, offset 0x303 -+ {value: 0x0020, lo: 0x02}, -+ {value: 0x1735, lo: 0x80, hi: 0x8f}, -+ {value: 0x1915, lo: 0x90, hi: 0xbf}, -+ // Block 0x5e, offset 0x306 -+ {value: 0x0020, lo: 0x01}, -+ {value: 0x1f15, lo: 0x80, hi: 0xbf}, -+ // Block 0x5f, offset 0x308 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0040, lo: 0x80, hi: 0x80}, -+ {value: 0x0008, lo: 0x81, hi: 0xbf}, -+ // Block 0x60, offset 0x30b -+ {value: 0x0000, lo: 0x09}, -+ {value: 0x0008, lo: 0x80, hi: 0x96}, -+ {value: 0x0040, lo: 0x97, hi: 0x98}, -+ {value: 0x3308, lo: 0x99, hi: 0x9a}, -+ {value: 0x29e2, lo: 0x9b, hi: 0x9b}, -+ {value: 0x2a0a, lo: 0x9c, hi: 0x9c}, -+ {value: 0x0008, lo: 0x9d, hi: 0x9e}, -+ {value: 0x2a31, lo: 0x9f, hi: 0x9f}, -+ {value: 0x0018, lo: 0xa0, hi: 0xa0}, -+ {value: 0x0008, lo: 0xa1, hi: 0xbf}, -+ // Block 0x61, offset 0x315 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0008, lo: 0x80, hi: 0xbe}, -+ {value: 0x2a69, lo: 0xbf, hi: 0xbf}, -+ // Block 0x62, offset 0x318 -+ {value: 0x0000, lo: 0x0e}, -+ {value: 0x0040, lo: 0x80, hi: 0x84}, -+ {value: 0x0008, lo: 0x85, hi: 0xaf}, -+ {value: 0x0040, lo: 0xb0, hi: 0xb0}, -+ {value: 0x2a35, lo: 0xb1, hi: 0xb1}, -+ {value: 0x2a55, lo: 0xb2, hi: 0xb2}, -+ {value: 0x2a75, lo: 0xb3, hi: 0xb3}, -+ {value: 0x2a95, lo: 0xb4, hi: 0xb4}, -+ {value: 0x2a75, lo: 0xb5, hi: 0xb5}, -+ {value: 0x2ab5, lo: 0xb6, hi: 0xb6}, -+ {value: 0x2ad5, lo: 0xb7, hi: 0xb7}, -+ {value: 0x2af5, lo: 0xb8, hi: 0xb9}, -+ {value: 0x2b15, lo: 0xba, hi: 0xbb}, -+ {value: 0x2b35, lo: 0xbc, hi: 0xbd}, -+ {value: 0x2b15, lo: 0xbe, hi: 0xbf}, -+ // Block 0x63, offset 0x327 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0018, lo: 0x80, hi: 0xa3}, -+ {value: 0x0040, lo: 0xa4, hi: 0xaf}, -+ {value: 0x0008, lo: 0xb0, hi: 0xbf}, -+ // Block 0x64, offset 0x32b -+ {value: 0x0030, lo: 0x04}, -+ {value: 0x2aa2, lo: 0x80, hi: 0x9d}, -+ {value: 0x305a, lo: 0x9e, hi: 0x9e}, -+ {value: 0x0040, lo: 0x9f, hi: 0x9f}, -+ {value: 0x30a2, lo: 0xa0, hi: 0xbf}, -+ // Block 0x65, offset 0x330 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0008, lo: 0x80, hi: 0xbc}, -+ {value: 0x0040, lo: 0xbd, hi: 0xbf}, -+ // Block 0x66, offset 0x333 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0008, lo: 0x80, hi: 0x8c}, -+ {value: 0x0040, lo: 0x8d, hi: 0x8f}, -+ {value: 0x0018, lo: 0x90, hi: 0xbf}, -+ // Block 0x67, offset 0x337 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0018, lo: 0x80, hi: 0x86}, -+ {value: 0x0040, lo: 0x87, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0xbd}, -+ {value: 0x0018, lo: 0xbe, hi: 0xbf}, -+ // Block 0x68, offset 0x33c -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0008, lo: 0x80, hi: 0x8c}, -+ {value: 0x0018, lo: 0x8d, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0xab}, -+ {value: 0x0040, lo: 0xac, hi: 0xbf}, -+ // Block 0x69, offset 0x341 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x0008, lo: 0x80, hi: 0xa5}, -+ {value: 0x0018, lo: 0xa6, hi: 0xaf}, -+ {value: 0x3308, lo: 0xb0, hi: 0xb1}, -+ {value: 0x0018, lo: 0xb2, hi: 0xb7}, -+ {value: 0x0040, lo: 0xb8, hi: 0xbf}, -+ // Block 0x6a, offset 0x347 -+ {value: 0x0000, lo: 0x10}, -+ {value: 0x0040, lo: 0x80, hi: 0x81}, -+ {value: 0xe00d, lo: 0x82, hi: 0x82}, -+ {value: 0x0008, lo: 0x83, hi: 0x83}, -+ {value: 0x03f5, lo: 0x84, hi: 0x84}, -+ {value: 0x1329, lo: 0x85, hi: 0x85}, -+ {value: 0x447d, lo: 0x86, hi: 0x86}, -+ {value: 0xe07d, lo: 0x87, hi: 0x87}, -+ {value: 0x0008, lo: 0x88, hi: 0x88}, -+ {value: 0xe01d, lo: 0x89, hi: 0x89}, -+ {value: 0x0008, lo: 0x8a, hi: 0x8a}, -+ {value: 0x0040, lo: 0x8b, hi: 0xb4}, -+ {value: 0xe01d, lo: 0xb5, hi: 0xb5}, -+ {value: 0x0008, lo: 0xb6, hi: 0xb7}, -+ {value: 0x2009, lo: 0xb8, hi: 0xb8}, -+ {value: 0x6ec1, lo: 0xb9, hi: 0xb9}, -+ {value: 0x0008, lo: 0xba, hi: 0xbf}, -+ // Block 0x6b, offset 0x358 -+ {value: 0x0000, lo: 0x0f}, -+ {value: 0x0008, lo: 0x80, hi: 0x81}, -+ {value: 0x3308, lo: 0x82, hi: 0x82}, -+ {value: 0x0008, lo: 0x83, hi: 0x85}, -+ {value: 0x3b08, lo: 0x86, hi: 0x86}, -+ {value: 0x0008, lo: 0x87, hi: 0x8a}, -+ {value: 0x3308, lo: 0x8b, hi: 0x8b}, -+ {value: 0x0008, lo: 0x8c, hi: 0xa2}, -+ {value: 0x3008, lo: 0xa3, hi: 0xa4}, -+ {value: 0x3308, lo: 0xa5, hi: 0xa6}, -+ {value: 0x3008, lo: 0xa7, hi: 0xa7}, -+ {value: 0x0018, lo: 0xa8, hi: 0xab}, -+ {value: 0x3b08, lo: 0xac, hi: 0xac}, -+ {value: 0x0040, lo: 0xad, hi: 0xaf}, -+ {value: 0x0018, lo: 0xb0, hi: 0xb9}, -+ {value: 0x0040, lo: 0xba, hi: 0xbf}, -+ // Block 0x6c, offset 0x368 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x0208, lo: 0x80, hi: 0xb1}, -+ {value: 0x0108, lo: 0xb2, hi: 0xb2}, -+ {value: 0x0008, lo: 0xb3, hi: 0xb3}, -+ {value: 0x0018, lo: 0xb4, hi: 0xb7}, -+ {value: 0x0040, lo: 0xb8, hi: 0xbf}, -+ // Block 0x6d, offset 0x36e -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x3008, lo: 0x80, hi: 0x81}, -+ {value: 0x0008, lo: 0x82, hi: 0xb3}, -+ {value: 0x3008, lo: 0xb4, hi: 0xbf}, -+ // Block 0x6e, offset 0x372 -+ {value: 0x0000, lo: 0x0e}, -+ {value: 0x3008, lo: 0x80, hi: 0x83}, -+ {value: 0x3b08, lo: 0x84, hi: 0x84}, -+ {value: 0x3308, lo: 0x85, hi: 0x85}, -+ {value: 0x0040, lo: 0x86, hi: 0x8d}, -+ {value: 0x0018, lo: 0x8e, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0x99}, -+ {value: 0x0040, lo: 0x9a, hi: 0x9f}, -+ {value: 0x3308, lo: 0xa0, hi: 0xb1}, -+ {value: 0x0008, lo: 0xb2, hi: 0xb7}, -+ {value: 0x0018, lo: 0xb8, hi: 0xba}, -+ {value: 0x0008, lo: 0xbb, hi: 0xbb}, -+ {value: 0x0018, lo: 0xbc, hi: 0xbc}, -+ {value: 0x0008, lo: 0xbd, hi: 0xbe}, -+ {value: 0x3308, lo: 0xbf, hi: 0xbf}, -+ // Block 0x6f, offset 0x381 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0008, lo: 0x80, hi: 0xa5}, -+ {value: 0x3308, lo: 0xa6, hi: 0xad}, -+ {value: 0x0018, lo: 0xae, hi: 0xaf}, -+ {value: 0x0008, lo: 0xb0, hi: 0xbf}, -+ // Block 0x70, offset 0x386 -+ {value: 0x0000, lo: 0x07}, -+ {value: 0x0008, lo: 0x80, hi: 0x86}, -+ {value: 0x3308, lo: 0x87, hi: 0x91}, -+ {value: 0x3008, lo: 0x92, hi: 0x92}, -+ {value: 0x3808, lo: 0x93, hi: 0x93}, -+ {value: 0x0040, lo: 0x94, hi: 0x9e}, -+ {value: 0x0018, lo: 0x9f, hi: 0xbc}, -+ {value: 0x0040, lo: 0xbd, hi: 0xbf}, -+ // Block 0x71, offset 0x38e -+ {value: 0x0000, lo: 0x09}, -+ {value: 0x3308, lo: 0x80, hi: 0x82}, -+ {value: 0x3008, lo: 0x83, hi: 0x83}, -+ {value: 0x0008, lo: 0x84, hi: 0xb2}, -+ {value: 0x3308, lo: 0xb3, hi: 0xb3}, -+ {value: 0x3008, lo: 0xb4, hi: 0xb5}, -+ {value: 0x3308, lo: 0xb6, hi: 0xb9}, -+ {value: 0x3008, lo: 0xba, hi: 0xbb}, -+ {value: 0x3308, lo: 0xbc, hi: 0xbd}, -+ {value: 0x3008, lo: 0xbe, hi: 0xbf}, -+ // Block 0x72, offset 0x398 -+ {value: 0x0000, lo: 0x0a}, -+ {value: 0x3808, lo: 0x80, hi: 0x80}, -+ {value: 0x0018, lo: 0x81, hi: 0x8d}, -+ {value: 0x0040, lo: 0x8e, hi: 0x8e}, -+ {value: 0x0008, lo: 0x8f, hi: 0x99}, -+ {value: 0x0040, lo: 0x9a, hi: 0x9d}, -+ {value: 0x0018, lo: 0x9e, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xa4}, -+ {value: 0x3308, lo: 0xa5, hi: 0xa5}, -+ {value: 0x0008, lo: 0xa6, hi: 0xbe}, -+ {value: 0x0040, lo: 0xbf, hi: 0xbf}, -+ // Block 0x73, offset 0x3a3 -+ {value: 0x0000, lo: 0x07}, -+ {value: 0x0008, lo: 0x80, hi: 0xa8}, -+ {value: 0x3308, lo: 0xa9, hi: 0xae}, -+ {value: 0x3008, lo: 0xaf, hi: 0xb0}, -+ {value: 0x3308, lo: 0xb1, hi: 0xb2}, -+ {value: 0x3008, lo: 0xb3, hi: 0xb4}, -+ {value: 0x3308, lo: 0xb5, hi: 0xb6}, -+ {value: 0x0040, lo: 0xb7, hi: 0xbf}, -+ // Block 0x74, offset 0x3ab -+ {value: 0x0000, lo: 0x10}, -+ {value: 0x0008, lo: 0x80, hi: 0x82}, -+ {value: 0x3308, lo: 0x83, hi: 0x83}, -+ {value: 0x0008, lo: 0x84, hi: 0x8b}, -+ {value: 0x3308, lo: 0x8c, hi: 0x8c}, -+ {value: 0x3008, lo: 0x8d, hi: 0x8d}, -+ {value: 0x0040, lo: 0x8e, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0x99}, -+ {value: 0x0040, lo: 0x9a, hi: 0x9b}, -+ {value: 0x0018, lo: 0x9c, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xb6}, -+ {value: 0x0018, lo: 0xb7, hi: 0xb9}, -+ {value: 0x0008, lo: 0xba, hi: 0xba}, -+ {value: 0x3008, lo: 0xbb, hi: 0xbb}, -+ {value: 0x3308, lo: 0xbc, hi: 0xbc}, -+ {value: 0x3008, lo: 0xbd, hi: 0xbd}, -+ {value: 0x0008, lo: 0xbe, hi: 0xbf}, -+ // Block 0x75, offset 0x3bc -+ {value: 0x0000, lo: 0x08}, -+ {value: 0x0008, lo: 0x80, hi: 0xaf}, -+ {value: 0x3308, lo: 0xb0, hi: 0xb0}, -+ {value: 0x0008, lo: 0xb1, hi: 0xb1}, -+ {value: 0x3308, lo: 0xb2, hi: 0xb4}, -+ {value: 0x0008, lo: 0xb5, hi: 0xb6}, -+ {value: 0x3308, lo: 0xb7, hi: 0xb8}, -+ {value: 0x0008, lo: 0xb9, hi: 0xbd}, -+ {value: 0x3308, lo: 0xbe, hi: 0xbf}, -+ // Block 0x76, offset 0x3c5 -+ {value: 0x0000, lo: 0x0f}, -+ {value: 0x0008, lo: 0x80, hi: 0x80}, -+ {value: 0x3308, lo: 0x81, hi: 0x81}, -+ {value: 0x0008, lo: 0x82, hi: 0x82}, -+ {value: 0x0040, lo: 0x83, hi: 0x9a}, -+ {value: 0x0008, lo: 0x9b, hi: 0x9d}, -+ {value: 0x0018, lo: 0x9e, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xaa}, -+ {value: 0x3008, lo: 0xab, hi: 0xab}, -+ {value: 0x3308, lo: 0xac, hi: 0xad}, -+ {value: 0x3008, lo: 0xae, hi: 0xaf}, -+ {value: 0x0018, lo: 0xb0, hi: 0xb1}, -+ {value: 0x0008, lo: 0xb2, hi: 0xb4}, -+ {value: 0x3008, lo: 0xb5, hi: 0xb5}, -+ {value: 0x3b08, lo: 0xb6, hi: 0xb6}, -+ {value: 0x0040, lo: 0xb7, hi: 0xbf}, -+ // Block 0x77, offset 0x3d5 -+ {value: 0x0000, lo: 0x0c}, -+ {value: 0x0040, lo: 0x80, hi: 0x80}, -+ {value: 0x0008, lo: 0x81, hi: 0x86}, -+ {value: 0x0040, lo: 0x87, hi: 0x88}, -+ {value: 0x0008, lo: 0x89, hi: 0x8e}, -+ {value: 0x0040, lo: 0x8f, hi: 0x90}, -+ {value: 0x0008, lo: 0x91, hi: 0x96}, -+ {value: 0x0040, lo: 0x97, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xa6}, -+ {value: 0x0040, lo: 0xa7, hi: 0xa7}, -+ {value: 0x0008, lo: 0xa8, hi: 0xae}, -+ {value: 0x0040, lo: 0xaf, hi: 0xaf}, -+ {value: 0x0008, lo: 0xb0, hi: 0xbf}, -+ // Block 0x78, offset 0x3e2 -+ {value: 0x0000, lo: 0x0b}, -+ {value: 0x0008, lo: 0x80, hi: 0x9a}, -+ {value: 0x0018, lo: 0x9b, hi: 0x9b}, -+ {value: 0x449d, lo: 0x9c, hi: 0x9c}, -+ {value: 0x44b5, lo: 0x9d, hi: 0x9d}, -+ {value: 0x2971, lo: 0x9e, hi: 0x9e}, -+ {value: 0xe06d, lo: 0x9f, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xa8}, -+ {value: 0x6ed9, lo: 0xa9, hi: 0xa9}, -+ {value: 0x0018, lo: 0xaa, hi: 0xab}, -+ {value: 0x0040, lo: 0xac, hi: 0xaf}, -+ {value: 0x44cd, lo: 0xb0, hi: 0xbf}, -+ // Block 0x79, offset 0x3ee -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x44ed, lo: 0x80, hi: 0x8f}, -+ {value: 0x450d, lo: 0x90, hi: 0x9f}, -+ {value: 0x452d, lo: 0xa0, hi: 0xaf}, -+ {value: 0x450d, lo: 0xb0, hi: 0xbf}, -+ // Block 0x7a, offset 0x3f3 -+ {value: 0x0000, lo: 0x0c}, -+ {value: 0x0008, lo: 0x80, hi: 0xa2}, -+ {value: 0x3008, lo: 0xa3, hi: 0xa4}, -+ {value: 0x3308, lo: 0xa5, hi: 0xa5}, -+ {value: 0x3008, lo: 0xa6, hi: 0xa7}, -+ {value: 0x3308, lo: 0xa8, hi: 0xa8}, -+ {value: 0x3008, lo: 0xa9, hi: 0xaa}, -+ {value: 0x0018, lo: 0xab, hi: 0xab}, -+ {value: 0x3008, lo: 0xac, hi: 0xac}, -+ {value: 0x3b08, lo: 0xad, hi: 0xad}, -+ {value: 0x0040, lo: 0xae, hi: 0xaf}, -+ {value: 0x0008, lo: 0xb0, hi: 0xb9}, -+ {value: 0x0040, lo: 0xba, hi: 0xbf}, -+ // Block 0x7b, offset 0x400 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0008, lo: 0x80, hi: 0xa3}, -+ {value: 0x0040, lo: 0xa4, hi: 0xaf}, -+ {value: 0x0018, lo: 0xb0, hi: 0xbf}, -+ // Block 0x7c, offset 0x404 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0018, lo: 0x80, hi: 0x86}, -+ {value: 0x0040, lo: 0x87, hi: 0x8a}, -+ {value: 0x0018, lo: 0x8b, hi: 0xbb}, -+ {value: 0x0040, lo: 0xbc, hi: 0xbf}, -+ // Block 0x7d, offset 0x409 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x0040, lo: 0x80, hi: 0xbf}, -+ // Block 0x7e, offset 0x40b -+ {value: 0x0020, lo: 0x01}, -+ {value: 0x454d, lo: 0x80, hi: 0xbf}, -+ // Block 0x7f, offset 0x40d -+ {value: 0x0020, lo: 0x03}, -+ {value: 0x4d4d, lo: 0x80, hi: 0x94}, -+ {value: 0x4b0d, lo: 0x95, hi: 0x95}, -+ {value: 0x4fed, lo: 0x96, hi: 0xbf}, -+ // Block 0x80, offset 0x411 -+ {value: 0x0020, lo: 0x01}, -+ {value: 0x552d, lo: 0x80, hi: 0xbf}, -+ // Block 0x81, offset 0x413 -+ {value: 0x0020, lo: 0x03}, -+ {value: 0x5d2d, lo: 0x80, hi: 0x84}, -+ {value: 0x568d, lo: 0x85, hi: 0x85}, -+ {value: 0x5dcd, lo: 0x86, hi: 0xbf}, -+ // Block 0x82, offset 0x417 -+ {value: 0x0020, lo: 0x08}, -+ {value: 0x6b8d, lo: 0x80, hi: 0x8f}, -+ {value: 0x6d4d, lo: 0x90, hi: 0x90}, -+ {value: 0x6d8d, lo: 0x91, hi: 0xab}, -+ {value: 0x6ef1, lo: 0xac, hi: 0xac}, -+ {value: 0x70ed, lo: 0xad, hi: 0xad}, -+ {value: 0x0040, lo: 0xae, hi: 0xae}, -+ {value: 0x0040, lo: 0xaf, hi: 0xaf}, -+ {value: 0x710d, lo: 0xb0, hi: 0xbf}, -+ // Block 0x83, offset 0x420 -+ {value: 0x0020, lo: 0x05}, -+ {value: 0x730d, lo: 0x80, hi: 0xad}, -+ {value: 0x656d, lo: 0xae, hi: 0xae}, -+ {value: 0x78cd, lo: 0xaf, hi: 0xb5}, -+ {value: 0x6f8d, lo: 0xb6, hi: 0xb6}, -+ {value: 0x79ad, lo: 0xb7, hi: 0xbf}, -+ // Block 0x84, offset 0x426 -+ {value: 0x0028, lo: 0x03}, -+ {value: 0x7c71, lo: 0x80, hi: 0x82}, -+ {value: 0x7c31, lo: 0x83, hi: 0x83}, -+ {value: 0x7ce9, lo: 0x84, hi: 0xbf}, -+ // Block 0x85, offset 0x42a -+ {value: 0x0038, lo: 0x0f}, -+ {value: 0x9e01, lo: 0x80, hi: 0x83}, -+ {value: 0x9ea9, lo: 0x84, hi: 0x85}, -+ {value: 0x9ee1, lo: 0x86, hi: 0x87}, -+ {value: 0x9f19, lo: 0x88, hi: 0x8f}, -+ {value: 0x0040, lo: 0x90, hi: 0x90}, -+ {value: 0x0040, lo: 0x91, hi: 0x91}, -+ {value: 0xa0d9, lo: 0x92, hi: 0x97}, -+ {value: 0xa1f1, lo: 0x98, hi: 0x9c}, -+ {value: 0xa2d1, lo: 0x9d, hi: 0xb3}, -+ {value: 0x9d91, lo: 0xb4, hi: 0xb4}, -+ {value: 0x9e01, lo: 0xb5, hi: 0xb5}, -+ {value: 0xa7d9, lo: 0xb6, hi: 0xbb}, -+ {value: 0xa8b9, lo: 0xbc, hi: 0xbc}, -+ {value: 0xa849, lo: 0xbd, hi: 0xbd}, -+ {value: 0xa929, lo: 0xbe, hi: 0xbf}, -+ // Block 0x86, offset 0x43a -+ {value: 0x0000, lo: 0x09}, -+ {value: 0x0008, lo: 0x80, hi: 0x8b}, -+ {value: 0x0040, lo: 0x8c, hi: 0x8c}, -+ {value: 0x0008, lo: 0x8d, hi: 0xa6}, -+ {value: 0x0040, lo: 0xa7, hi: 0xa7}, -+ {value: 0x0008, lo: 0xa8, hi: 0xba}, -+ {value: 0x0040, lo: 0xbb, hi: 0xbb}, -+ {value: 0x0008, lo: 0xbc, hi: 0xbd}, -+ {value: 0x0040, lo: 0xbe, hi: 0xbe}, -+ {value: 0x0008, lo: 0xbf, hi: 0xbf}, -+ // Block 0x87, offset 0x444 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0008, lo: 0x80, hi: 0x8d}, -+ {value: 0x0040, lo: 0x8e, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0x9d}, -+ {value: 0x0040, lo: 0x9e, hi: 0xbf}, -+ // Block 0x88, offset 0x449 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0008, lo: 0x80, hi: 0xba}, -+ {value: 0x0040, lo: 0xbb, hi: 0xbf}, -+ // Block 0x89, offset 0x44c -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x0018, lo: 0x80, hi: 0x82}, -+ {value: 0x0040, lo: 0x83, hi: 0x86}, -+ {value: 0x0018, lo: 0x87, hi: 0xb3}, -+ {value: 0x0040, lo: 0xb4, hi: 0xb6}, -+ {value: 0x0018, lo: 0xb7, hi: 0xbf}, -+ // Block 0x8a, offset 0x452 -+ {value: 0x0000, lo: 0x06}, -+ {value: 0x0018, lo: 0x80, hi: 0x8e}, -+ {value: 0x0040, lo: 0x8f, hi: 0x8f}, -+ {value: 0x0018, lo: 0x90, hi: 0x9c}, -+ {value: 0x0040, lo: 0x9d, hi: 0x9f}, -+ {value: 0x0018, lo: 0xa0, hi: 0xa0}, -+ {value: 0x0040, lo: 0xa1, hi: 0xbf}, -+ // Block 0x8b, offset 0x459 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0040, lo: 0x80, hi: 0x8f}, -+ {value: 0x0018, lo: 0x90, hi: 0xbc}, -+ {value: 0x3308, lo: 0xbd, hi: 0xbd}, -+ {value: 0x0040, lo: 0xbe, hi: 0xbf}, -+ // Block 0x8c, offset 0x45e -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0008, lo: 0x80, hi: 0x9c}, -+ {value: 0x0040, lo: 0x9d, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xbf}, -+ // Block 0x8d, offset 0x462 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x0008, lo: 0x80, hi: 0x90}, -+ {value: 0x0040, lo: 0x91, hi: 0x9f}, -+ {value: 0x3308, lo: 0xa0, hi: 0xa0}, -+ {value: 0x0018, lo: 0xa1, hi: 0xbb}, -+ {value: 0x0040, lo: 0xbc, hi: 0xbf}, -+ // Block 0x8e, offset 0x468 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0008, lo: 0x80, hi: 0x9f}, -+ {value: 0x0018, lo: 0xa0, hi: 0xa3}, -+ {value: 0x0040, lo: 0xa4, hi: 0xac}, -+ {value: 0x0008, lo: 0xad, hi: 0xbf}, -+ // Block 0x8f, offset 0x46d -+ {value: 0x0000, lo: 0x08}, -+ {value: 0x0008, lo: 0x80, hi: 0x80}, -+ {value: 0x0018, lo: 0x81, hi: 0x81}, -+ {value: 0x0008, lo: 0x82, hi: 0x89}, -+ {value: 0x0018, lo: 0x8a, hi: 0x8a}, -+ {value: 0x0040, lo: 0x8b, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0xb5}, -+ {value: 0x3308, lo: 0xb6, hi: 0xba}, -+ {value: 0x0040, lo: 0xbb, hi: 0xbf}, -+ // Block 0x90, offset 0x476 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0008, lo: 0x80, hi: 0x9d}, -+ {value: 0x0040, lo: 0x9e, hi: 0x9e}, -+ {value: 0x0018, lo: 0x9f, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xbf}, -+ // Block 0x91, offset 0x47b -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x0008, lo: 0x80, hi: 0x83}, -+ {value: 0x0040, lo: 0x84, hi: 0x87}, -+ {value: 0x0008, lo: 0x88, hi: 0x8f}, -+ {value: 0x0018, lo: 0x90, hi: 0x95}, -+ {value: 0x0040, lo: 0x96, hi: 0xbf}, -+ // Block 0x92, offset 0x481 -+ {value: 0x0000, lo: 0x06}, -+ {value: 0xe145, lo: 0x80, hi: 0x87}, -+ {value: 0xe1c5, lo: 0x88, hi: 0x8f}, -+ {value: 0xe145, lo: 0x90, hi: 0x97}, -+ {value: 0x8b0d, lo: 0x98, hi: 0x9f}, -+ {value: 0x8b25, lo: 0xa0, hi: 0xa7}, -+ {value: 0x0008, lo: 0xa8, hi: 0xbf}, -+ // Block 0x93, offset 0x488 -+ {value: 0x0000, lo: 0x06}, -+ {value: 0x0008, lo: 0x80, hi: 0x9d}, -+ {value: 0x0040, lo: 0x9e, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xa9}, -+ {value: 0x0040, lo: 0xaa, hi: 0xaf}, -+ {value: 0x8b25, lo: 0xb0, hi: 0xb7}, -+ {value: 0x8b0d, lo: 0xb8, hi: 0xbf}, -+ // Block 0x94, offset 0x48f -+ {value: 0x0000, lo: 0x06}, -+ {value: 0xe145, lo: 0x80, hi: 0x87}, -+ {value: 0xe1c5, lo: 0x88, hi: 0x8f}, -+ {value: 0xe145, lo: 0x90, hi: 0x93}, -+ {value: 0x0040, lo: 0x94, hi: 0x97}, -+ {value: 0x0008, lo: 0x98, hi: 0xbb}, -+ {value: 0x0040, lo: 0xbc, hi: 0xbf}, -+ // Block 0x95, offset 0x496 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0008, lo: 0x80, hi: 0xa7}, -+ {value: 0x0040, lo: 0xa8, hi: 0xaf}, -+ {value: 0x0008, lo: 0xb0, hi: 0xbf}, -+ // Block 0x96, offset 0x49a -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0008, lo: 0x80, hi: 0xa3}, -+ {value: 0x0040, lo: 0xa4, hi: 0xae}, -+ {value: 0x0018, lo: 0xaf, hi: 0xaf}, -+ {value: 0x0040, lo: 0xb0, hi: 0xbf}, -+ // Block 0x97, offset 0x49f -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0008, lo: 0x80, hi: 0xb6}, -+ {value: 0x0040, lo: 0xb7, hi: 0xbf}, -+ // Block 0x98, offset 0x4a2 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0008, lo: 0x80, hi: 0x95}, -+ {value: 0x0040, lo: 0x96, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xa7}, -+ {value: 0x0040, lo: 0xa8, hi: 0xbf}, -+ // Block 0x99, offset 0x4a7 -+ {value: 0x0000, lo: 0x0b}, -+ {value: 0x0808, lo: 0x80, hi: 0x85}, -+ {value: 0x0040, lo: 0x86, hi: 0x87}, -+ {value: 0x0808, lo: 0x88, hi: 0x88}, -+ {value: 0x0040, lo: 0x89, hi: 0x89}, -+ {value: 0x0808, lo: 0x8a, hi: 0xb5}, -+ {value: 0x0040, lo: 0xb6, hi: 0xb6}, -+ {value: 0x0808, lo: 0xb7, hi: 0xb8}, -+ {value: 0x0040, lo: 0xb9, hi: 0xbb}, -+ {value: 0x0808, lo: 0xbc, hi: 0xbc}, -+ {value: 0x0040, lo: 0xbd, hi: 0xbe}, -+ {value: 0x0808, lo: 0xbf, hi: 0xbf}, -+ // Block 0x9a, offset 0x4b3 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x0808, lo: 0x80, hi: 0x95}, -+ {value: 0x0040, lo: 0x96, hi: 0x96}, -+ {value: 0x0818, lo: 0x97, hi: 0x9f}, -+ {value: 0x0808, lo: 0xa0, hi: 0xb6}, -+ {value: 0x0818, lo: 0xb7, hi: 0xbf}, -+ // Block 0x9b, offset 0x4b9 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0808, lo: 0x80, hi: 0x9e}, -+ {value: 0x0040, lo: 0x9f, hi: 0xa6}, -+ {value: 0x0818, lo: 0xa7, hi: 0xaf}, -+ {value: 0x0040, lo: 0xb0, hi: 0xbf}, -+ // Block 0x9c, offset 0x4be -+ {value: 0x0000, lo: 0x06}, -+ {value: 0x0040, lo: 0x80, hi: 0x9f}, -+ {value: 0x0808, lo: 0xa0, hi: 0xb2}, -+ {value: 0x0040, lo: 0xb3, hi: 0xb3}, -+ {value: 0x0808, lo: 0xb4, hi: 0xb5}, -+ {value: 0x0040, lo: 0xb6, hi: 0xba}, -+ {value: 0x0818, lo: 0xbb, hi: 0xbf}, -+ // Block 0x9d, offset 0x4c5 -+ {value: 0x0000, lo: 0x07}, -+ {value: 0x0808, lo: 0x80, hi: 0x95}, -+ {value: 0x0818, lo: 0x96, hi: 0x9b}, -+ {value: 0x0040, lo: 0x9c, hi: 0x9e}, -+ {value: 0x0018, lo: 0x9f, hi: 0x9f}, -+ {value: 0x0808, lo: 0xa0, hi: 0xb9}, -+ {value: 0x0040, lo: 0xba, hi: 0xbe}, -+ {value: 0x0818, lo: 0xbf, hi: 0xbf}, -+ // Block 0x9e, offset 0x4cd -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0808, lo: 0x80, hi: 0xb7}, -+ {value: 0x0040, lo: 0xb8, hi: 0xbb}, -+ {value: 0x0818, lo: 0xbc, hi: 0xbd}, -+ {value: 0x0808, lo: 0xbe, hi: 0xbf}, -+ // Block 0x9f, offset 0x4d2 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0818, lo: 0x80, hi: 0x8f}, -+ {value: 0x0040, lo: 0x90, hi: 0x91}, -+ {value: 0x0818, lo: 0x92, hi: 0xbf}, -+ // Block 0xa0, offset 0x4d6 -+ {value: 0x0000, lo: 0x0f}, -+ {value: 0x0808, lo: 0x80, hi: 0x80}, -+ {value: 0x3308, lo: 0x81, hi: 0x83}, -+ {value: 0x0040, lo: 0x84, hi: 0x84}, -+ {value: 0x3308, lo: 0x85, hi: 0x86}, -+ {value: 0x0040, lo: 0x87, hi: 0x8b}, -+ {value: 0x3308, lo: 0x8c, hi: 0x8f}, -+ {value: 0x0808, lo: 0x90, hi: 0x93}, -+ {value: 0x0040, lo: 0x94, hi: 0x94}, -+ {value: 0x0808, lo: 0x95, hi: 0x97}, -+ {value: 0x0040, lo: 0x98, hi: 0x98}, -+ {value: 0x0808, lo: 0x99, hi: 0xb5}, -+ {value: 0x0040, lo: 0xb6, hi: 0xb7}, -+ {value: 0x3308, lo: 0xb8, hi: 0xba}, -+ {value: 0x0040, lo: 0xbb, hi: 0xbe}, -+ {value: 0x3b08, lo: 0xbf, hi: 0xbf}, -+ // Block 0xa1, offset 0x4e6 -+ {value: 0x0000, lo: 0x06}, -+ {value: 0x0818, lo: 0x80, hi: 0x88}, -+ {value: 0x0040, lo: 0x89, hi: 0x8f}, -+ {value: 0x0818, lo: 0x90, hi: 0x98}, -+ {value: 0x0040, lo: 0x99, hi: 0x9f}, -+ {value: 0x0808, lo: 0xa0, hi: 0xbc}, -+ {value: 0x0818, lo: 0xbd, hi: 0xbf}, -+ // Block 0xa2, offset 0x4ed -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0808, lo: 0x80, hi: 0x9c}, -+ {value: 0x0818, lo: 0x9d, hi: 0x9f}, -+ {value: 0x0040, lo: 0xa0, hi: 0xbf}, -+ // Block 0xa3, offset 0x4f1 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0808, lo: 0x80, hi: 0xb5}, -+ {value: 0x0040, lo: 0xb6, hi: 0xb8}, -+ {value: 0x0018, lo: 0xb9, hi: 0xbf}, -+ // Block 0xa4, offset 0x4f5 -+ {value: 0x0000, lo: 0x06}, -+ {value: 0x0808, lo: 0x80, hi: 0x95}, -+ {value: 0x0040, lo: 0x96, hi: 0x97}, -+ {value: 0x0818, lo: 0x98, hi: 0x9f}, -+ {value: 0x0808, lo: 0xa0, hi: 0xb2}, -+ {value: 0x0040, lo: 0xb3, hi: 0xb7}, -+ {value: 0x0818, lo: 0xb8, hi: 0xbf}, -+ // Block 0xa5, offset 0x4fc -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x0808, lo: 0x80, hi: 0xbf}, -+ // Block 0xa6, offset 0x4fe -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0808, lo: 0x80, hi: 0x88}, -+ {value: 0x0040, lo: 0x89, hi: 0xbf}, -+ // Block 0xa7, offset 0x501 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x03dd, lo: 0x80, hi: 0xb2}, -+ {value: 0x0040, lo: 0xb3, hi: 0xbf}, -+ // Block 0xa8, offset 0x504 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0808, lo: 0x80, hi: 0xb2}, -+ {value: 0x0040, lo: 0xb3, hi: 0xb9}, -+ {value: 0x0818, lo: 0xba, hi: 0xbf}, -+ // Block 0xa9, offset 0x508 -+ {value: 0x0000, lo: 0x08}, -+ {value: 0x0908, lo: 0x80, hi: 0x80}, -+ {value: 0x0a08, lo: 0x81, hi: 0xa1}, -+ {value: 0x0c08, lo: 0xa2, hi: 0xa2}, -+ {value: 0x0a08, lo: 0xa3, hi: 0xa3}, -+ {value: 0x3308, lo: 0xa4, hi: 0xa7}, -+ {value: 0x0040, lo: 0xa8, hi: 0xaf}, -+ {value: 0x0808, lo: 0xb0, hi: 0xb9}, -+ {value: 0x0040, lo: 0xba, hi: 0xbf}, -+ // Block 0xaa, offset 0x511 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0040, lo: 0x80, hi: 0x9f}, -+ {value: 0x0818, lo: 0xa0, hi: 0xbe}, -+ {value: 0x0040, lo: 0xbf, hi: 0xbf}, -+ // Block 0xab, offset 0x515 -+ {value: 0x0000, lo: 0x07}, -+ {value: 0x0808, lo: 0x80, hi: 0xa9}, -+ {value: 0x0040, lo: 0xaa, hi: 0xaa}, -+ {value: 0x3308, lo: 0xab, hi: 0xac}, -+ {value: 0x0818, lo: 0xad, hi: 0xad}, -+ {value: 0x0040, lo: 0xae, hi: 0xaf}, -+ {value: 0x0808, lo: 0xb0, hi: 0xb1}, -+ {value: 0x0040, lo: 0xb2, hi: 0xbf}, -+ // Block 0xac, offset 0x51d -+ {value: 0x0000, lo: 0x07}, -+ {value: 0x0808, lo: 0x80, hi: 0x9c}, -+ {value: 0x0818, lo: 0x9d, hi: 0xa6}, -+ {value: 0x0808, lo: 0xa7, hi: 0xa7}, -+ {value: 0x0040, lo: 0xa8, hi: 0xaf}, -+ {value: 0x0a08, lo: 0xb0, hi: 0xb2}, -+ {value: 0x0c08, lo: 0xb3, hi: 0xb3}, -+ {value: 0x0a08, lo: 0xb4, hi: 0xbf}, -+ // Block 0xad, offset 0x525 -+ {value: 0x0000, lo: 0x07}, -+ {value: 0x0a08, lo: 0x80, hi: 0x84}, -+ {value: 0x0808, lo: 0x85, hi: 0x85}, -+ {value: 0x3308, lo: 0x86, hi: 0x90}, -+ {value: 0x0a18, lo: 0x91, hi: 0x93}, -+ {value: 0x0c18, lo: 0x94, hi: 0x94}, -+ {value: 0x0818, lo: 0x95, hi: 0x99}, -+ {value: 0x0040, lo: 0x9a, hi: 0xbf}, -+ // Block 0xae, offset 0x52d -+ {value: 0x0000, lo: 0x0b}, -+ {value: 0x0040, lo: 0x80, hi: 0xaf}, -+ {value: 0x0a08, lo: 0xb0, hi: 0xb0}, -+ {value: 0x0808, lo: 0xb1, hi: 0xb1}, -+ {value: 0x0a08, lo: 0xb2, hi: 0xb3}, -+ {value: 0x0c08, lo: 0xb4, hi: 0xb6}, -+ {value: 0x0808, lo: 0xb7, hi: 0xb7}, -+ {value: 0x0a08, lo: 0xb8, hi: 0xb8}, -+ {value: 0x0c08, lo: 0xb9, hi: 0xba}, -+ {value: 0x0a08, lo: 0xbb, hi: 0xbc}, -+ {value: 0x0c08, lo: 0xbd, hi: 0xbd}, -+ {value: 0x0a08, lo: 0xbe, hi: 0xbf}, -+ // Block 0xaf, offset 0x539 -+ {value: 0x0000, lo: 0x0b}, -+ {value: 0x0808, lo: 0x80, hi: 0x80}, -+ {value: 0x0a08, lo: 0x81, hi: 0x81}, -+ {value: 0x0c08, lo: 0x82, hi: 0x83}, -+ {value: 0x0a08, lo: 0x84, hi: 0x84}, -+ {value: 0x0818, lo: 0x85, hi: 0x88}, -+ {value: 0x0c18, lo: 0x89, hi: 0x89}, -+ {value: 0x0a18, lo: 0x8a, hi: 0x8a}, -+ {value: 0x0918, lo: 0x8b, hi: 0x8b}, -+ {value: 0x0040, lo: 0x8c, hi: 0x9f}, -+ {value: 0x0808, lo: 0xa0, hi: 0xb6}, -+ {value: 0x0040, lo: 0xb7, hi: 0xbf}, -+ // Block 0xb0, offset 0x545 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x3008, lo: 0x80, hi: 0x80}, -+ {value: 0x3308, lo: 0x81, hi: 0x81}, -+ {value: 0x3008, lo: 0x82, hi: 0x82}, -+ {value: 0x0008, lo: 0x83, hi: 0xb7}, -+ {value: 0x3308, lo: 0xb8, hi: 0xbf}, -+ // Block 0xb1, offset 0x54b -+ {value: 0x0000, lo: 0x08}, -+ {value: 0x3308, lo: 0x80, hi: 0x85}, -+ {value: 0x3b08, lo: 0x86, hi: 0x86}, -+ {value: 0x0018, lo: 0x87, hi: 0x8d}, -+ {value: 0x0040, lo: 0x8e, hi: 0x91}, -+ {value: 0x0018, lo: 0x92, hi: 0xa5}, -+ {value: 0x0008, lo: 0xa6, hi: 0xaf}, -+ {value: 0x0040, lo: 0xb0, hi: 0xbe}, -+ {value: 0x3b08, lo: 0xbf, hi: 0xbf}, -+ // Block 0xb2, offset 0x554 -+ {value: 0x0000, lo: 0x0b}, -+ {value: 0x3308, lo: 0x80, hi: 0x81}, -+ {value: 0x3008, lo: 0x82, hi: 0x82}, -+ {value: 0x0008, lo: 0x83, hi: 0xaf}, -+ {value: 0x3008, lo: 0xb0, hi: 0xb2}, -+ {value: 0x3308, lo: 0xb3, hi: 0xb6}, -+ {value: 0x3008, lo: 0xb7, hi: 0xb8}, -+ {value: 0x3b08, lo: 0xb9, hi: 0xb9}, -+ {value: 0x3308, lo: 0xba, hi: 0xba}, -+ {value: 0x0018, lo: 0xbb, hi: 0xbc}, -+ {value: 0x0040, lo: 0xbd, hi: 0xbd}, -+ {value: 0x0018, lo: 0xbe, hi: 0xbf}, -+ // Block 0xb3, offset 0x560 -+ {value: 0x0000, lo: 0x06}, -+ {value: 0x0018, lo: 0x80, hi: 0x81}, -+ {value: 0x0040, lo: 0x82, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0xa8}, -+ {value: 0x0040, lo: 0xa9, hi: 0xaf}, -+ {value: 0x0008, lo: 0xb0, hi: 0xb9}, -+ {value: 0x0040, lo: 0xba, hi: 0xbf}, -+ // Block 0xb4, offset 0x567 -+ {value: 0x0000, lo: 0x08}, -+ {value: 0x3308, lo: 0x80, hi: 0x82}, -+ {value: 0x0008, lo: 0x83, hi: 0xa6}, -+ {value: 0x3308, lo: 0xa7, hi: 0xab}, -+ {value: 0x3008, lo: 0xac, hi: 0xac}, -+ {value: 0x3308, lo: 0xad, hi: 0xb2}, -+ {value: 0x3b08, lo: 0xb3, hi: 0xb4}, -+ {value: 0x0040, lo: 0xb5, hi: 0xb5}, -+ {value: 0x0008, lo: 0xb6, hi: 0xbf}, -+ // Block 0xb5, offset 0x570 -+ {value: 0x0000, lo: 0x0a}, -+ {value: 0x0018, lo: 0x80, hi: 0x83}, -+ {value: 0x0008, lo: 0x84, hi: 0x84}, -+ {value: 0x3008, lo: 0x85, hi: 0x86}, -+ {value: 0x0008, lo: 0x87, hi: 0x87}, -+ {value: 0x0040, lo: 0x88, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0xb2}, -+ {value: 0x3308, lo: 0xb3, hi: 0xb3}, -+ {value: 0x0018, lo: 0xb4, hi: 0xb5}, -+ {value: 0x0008, lo: 0xb6, hi: 0xb6}, -+ {value: 0x0040, lo: 0xb7, hi: 0xbf}, -+ // Block 0xb6, offset 0x57b -+ {value: 0x0000, lo: 0x06}, -+ {value: 0x3308, lo: 0x80, hi: 0x81}, -+ {value: 0x3008, lo: 0x82, hi: 0x82}, -+ {value: 0x0008, lo: 0x83, hi: 0xb2}, -+ {value: 0x3008, lo: 0xb3, hi: 0xb5}, -+ {value: 0x3308, lo: 0xb6, hi: 0xbe}, -+ {value: 0x3008, lo: 0xbf, hi: 0xbf}, -+ // Block 0xb7, offset 0x582 -+ {value: 0x0000, lo: 0x0e}, -+ {value: 0x3808, lo: 0x80, hi: 0x80}, -+ {value: 0x0008, lo: 0x81, hi: 0x84}, -+ {value: 0x0018, lo: 0x85, hi: 0x88}, -+ {value: 0x3308, lo: 0x89, hi: 0x8c}, -+ {value: 0x0018, lo: 0x8d, hi: 0x8d}, -+ {value: 0x3008, lo: 0x8e, hi: 0x8e}, -+ {value: 0x3308, lo: 0x8f, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0x9a}, -+ {value: 0x0018, lo: 0x9b, hi: 0x9b}, -+ {value: 0x0008, lo: 0x9c, hi: 0x9c}, -+ {value: 0x0018, lo: 0x9d, hi: 0x9f}, -+ {value: 0x0040, lo: 0xa0, hi: 0xa0}, -+ {value: 0x0018, lo: 0xa1, hi: 0xb4}, -+ {value: 0x0040, lo: 0xb5, hi: 0xbf}, -+ // Block 0xb8, offset 0x591 -+ {value: 0x0000, lo: 0x0c}, -+ {value: 0x0008, lo: 0x80, hi: 0x91}, -+ {value: 0x0040, lo: 0x92, hi: 0x92}, -+ {value: 0x0008, lo: 0x93, hi: 0xab}, -+ {value: 0x3008, lo: 0xac, hi: 0xae}, -+ {value: 0x3308, lo: 0xaf, hi: 0xb1}, -+ {value: 0x3008, lo: 0xb2, hi: 0xb3}, -+ {value: 0x3308, lo: 0xb4, hi: 0xb4}, -+ {value: 0x3808, lo: 0xb5, hi: 0xb5}, -+ {value: 0x3308, lo: 0xb6, hi: 0xb7}, -+ {value: 0x0018, lo: 0xb8, hi: 0xbd}, -+ {value: 0x3308, lo: 0xbe, hi: 0xbe}, -+ {value: 0x0040, lo: 0xbf, hi: 0xbf}, -+ // Block 0xb9, offset 0x59e -+ {value: 0x0000, lo: 0x0c}, -+ {value: 0x0008, lo: 0x80, hi: 0x86}, -+ {value: 0x0040, lo: 0x87, hi: 0x87}, -+ {value: 0x0008, lo: 0x88, hi: 0x88}, -+ {value: 0x0040, lo: 0x89, hi: 0x89}, -+ {value: 0x0008, lo: 0x8a, hi: 0x8d}, -+ {value: 0x0040, lo: 0x8e, hi: 0x8e}, -+ {value: 0x0008, lo: 0x8f, hi: 0x9d}, -+ {value: 0x0040, lo: 0x9e, hi: 0x9e}, -+ {value: 0x0008, lo: 0x9f, hi: 0xa8}, -+ {value: 0x0018, lo: 0xa9, hi: 0xa9}, -+ {value: 0x0040, lo: 0xaa, hi: 0xaf}, -+ {value: 0x0008, lo: 0xb0, hi: 0xbf}, -+ // Block 0xba, offset 0x5ab -+ {value: 0x0000, lo: 0x08}, -+ {value: 0x0008, lo: 0x80, hi: 0x9e}, -+ {value: 0x3308, lo: 0x9f, hi: 0x9f}, -+ {value: 0x3008, lo: 0xa0, hi: 0xa2}, -+ {value: 0x3308, lo: 0xa3, hi: 0xa9}, -+ {value: 0x3b08, lo: 0xaa, hi: 0xaa}, -+ {value: 0x0040, lo: 0xab, hi: 0xaf}, -+ {value: 0x0008, lo: 0xb0, hi: 0xb9}, -+ {value: 0x0040, lo: 0xba, hi: 0xbf}, -+ // Block 0xbb, offset 0x5b4 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0008, lo: 0x80, hi: 0xb4}, -+ {value: 0x3008, lo: 0xb5, hi: 0xb7}, -+ {value: 0x3308, lo: 0xb8, hi: 0xbf}, -+ // Block 0xbc, offset 0x5b8 -+ {value: 0x0000, lo: 0x0e}, -+ {value: 0x3008, lo: 0x80, hi: 0x81}, -+ {value: 0x3b08, lo: 0x82, hi: 0x82}, -+ {value: 0x3308, lo: 0x83, hi: 0x84}, -+ {value: 0x3008, lo: 0x85, hi: 0x85}, -+ {value: 0x3308, lo: 0x86, hi: 0x86}, -+ {value: 0x0008, lo: 0x87, hi: 0x8a}, -+ {value: 0x0018, lo: 0x8b, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0x99}, -+ {value: 0x0018, lo: 0x9a, hi: 0x9b}, -+ {value: 0x0040, lo: 0x9c, hi: 0x9c}, -+ {value: 0x0018, lo: 0x9d, hi: 0x9d}, -+ {value: 0x3308, lo: 0x9e, hi: 0x9e}, -+ {value: 0x0008, lo: 0x9f, hi: 0xa1}, -+ {value: 0x0040, lo: 0xa2, hi: 0xbf}, -+ // Block 0xbd, offset 0x5c7 -+ {value: 0x0000, lo: 0x07}, -+ {value: 0x0008, lo: 0x80, hi: 0xaf}, -+ {value: 0x3008, lo: 0xb0, hi: 0xb2}, -+ {value: 0x3308, lo: 0xb3, hi: 0xb8}, -+ {value: 0x3008, lo: 0xb9, hi: 0xb9}, -+ {value: 0x3308, lo: 0xba, hi: 0xba}, -+ {value: 0x3008, lo: 0xbb, hi: 0xbe}, -+ {value: 0x3308, lo: 0xbf, hi: 0xbf}, -+ // Block 0xbe, offset 0x5cf -+ {value: 0x0000, lo: 0x0a}, -+ {value: 0x3308, lo: 0x80, hi: 0x80}, -+ {value: 0x3008, lo: 0x81, hi: 0x81}, -+ {value: 0x3b08, lo: 0x82, hi: 0x82}, -+ {value: 0x3308, lo: 0x83, hi: 0x83}, -+ {value: 0x0008, lo: 0x84, hi: 0x85}, -+ {value: 0x0018, lo: 0x86, hi: 0x86}, -+ {value: 0x0008, lo: 0x87, hi: 0x87}, -+ {value: 0x0040, lo: 0x88, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0x99}, -+ {value: 0x0040, lo: 0x9a, hi: 0xbf}, -+ // Block 0xbf, offset 0x5da -+ {value: 0x0000, lo: 0x08}, -+ {value: 0x0008, lo: 0x80, hi: 0xae}, -+ {value: 0x3008, lo: 0xaf, hi: 0xb1}, -+ {value: 0x3308, lo: 0xb2, hi: 0xb5}, -+ {value: 0x0040, lo: 0xb6, hi: 0xb7}, -+ {value: 0x3008, lo: 0xb8, hi: 0xbb}, -+ {value: 0x3308, lo: 0xbc, hi: 0xbd}, -+ {value: 0x3008, lo: 0xbe, hi: 0xbe}, -+ {value: 0x3b08, lo: 0xbf, hi: 0xbf}, -+ // Block 0xc0, offset 0x5e3 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x3308, lo: 0x80, hi: 0x80}, -+ {value: 0x0018, lo: 0x81, hi: 0x97}, -+ {value: 0x0008, lo: 0x98, hi: 0x9b}, -+ {value: 0x3308, lo: 0x9c, hi: 0x9d}, -+ {value: 0x0040, lo: 0x9e, hi: 0xbf}, -+ // Block 0xc1, offset 0x5e9 -+ {value: 0x0000, lo: 0x07}, -+ {value: 0x0008, lo: 0x80, hi: 0xaf}, -+ {value: 0x3008, lo: 0xb0, hi: 0xb2}, -+ {value: 0x3308, lo: 0xb3, hi: 0xba}, -+ {value: 0x3008, lo: 0xbb, hi: 0xbc}, -+ {value: 0x3308, lo: 0xbd, hi: 0xbd}, -+ {value: 0x3008, lo: 0xbe, hi: 0xbe}, -+ {value: 0x3b08, lo: 0xbf, hi: 0xbf}, -+ // Block 0xc2, offset 0x5f1 -+ {value: 0x0000, lo: 0x08}, -+ {value: 0x3308, lo: 0x80, hi: 0x80}, -+ {value: 0x0018, lo: 0x81, hi: 0x83}, -+ {value: 0x0008, lo: 0x84, hi: 0x84}, -+ {value: 0x0040, lo: 0x85, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0x99}, -+ {value: 0x0040, lo: 0x9a, hi: 0x9f}, -+ {value: 0x0018, lo: 0xa0, hi: 0xac}, -+ {value: 0x0040, lo: 0xad, hi: 0xbf}, -+ // Block 0xc3, offset 0x5fa -+ {value: 0x0000, lo: 0x0a}, -+ {value: 0x0008, lo: 0x80, hi: 0xaa}, -+ {value: 0x3308, lo: 0xab, hi: 0xab}, -+ {value: 0x3008, lo: 0xac, hi: 0xac}, -+ {value: 0x3308, lo: 0xad, hi: 0xad}, -+ {value: 0x3008, lo: 0xae, hi: 0xaf}, -+ {value: 0x3308, lo: 0xb0, hi: 0xb5}, -+ {value: 0x3808, lo: 0xb6, hi: 0xb6}, -+ {value: 0x3308, lo: 0xb7, hi: 0xb7}, -+ {value: 0x0008, lo: 0xb8, hi: 0xb8}, -+ {value: 0x0040, lo: 0xb9, hi: 0xbf}, -+ // Block 0xc4, offset 0x605 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0008, lo: 0x80, hi: 0x89}, -+ {value: 0x0040, lo: 0x8a, hi: 0xbf}, -+ // Block 0xc5, offset 0x608 -+ {value: 0x0000, lo: 0x0b}, -+ {value: 0x0008, lo: 0x80, hi: 0x9a}, -+ {value: 0x0040, lo: 0x9b, hi: 0x9c}, -+ {value: 0x3308, lo: 0x9d, hi: 0x9f}, -+ {value: 0x3008, lo: 0xa0, hi: 0xa1}, -+ {value: 0x3308, lo: 0xa2, hi: 0xa5}, -+ {value: 0x3008, lo: 0xa6, hi: 0xa6}, -+ {value: 0x3308, lo: 0xa7, hi: 0xaa}, -+ {value: 0x3b08, lo: 0xab, hi: 0xab}, -+ {value: 0x0040, lo: 0xac, hi: 0xaf}, -+ {value: 0x0008, lo: 0xb0, hi: 0xb9}, -+ {value: 0x0018, lo: 0xba, hi: 0xbf}, -+ // Block 0xc6, offset 0x614 -+ {value: 0x0000, lo: 0x08}, -+ {value: 0x0008, lo: 0x80, hi: 0xab}, -+ {value: 0x3008, lo: 0xac, hi: 0xae}, -+ {value: 0x3308, lo: 0xaf, hi: 0xb7}, -+ {value: 0x3008, lo: 0xb8, hi: 0xb8}, -+ {value: 0x3b08, lo: 0xb9, hi: 0xb9}, -+ {value: 0x3308, lo: 0xba, hi: 0xba}, -+ {value: 0x0018, lo: 0xbb, hi: 0xbb}, -+ {value: 0x0040, lo: 0xbc, hi: 0xbf}, -+ // Block 0xc7, offset 0x61d -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0040, lo: 0x80, hi: 0x9f}, -+ {value: 0x049d, lo: 0xa0, hi: 0xbf}, -+ // Block 0xc8, offset 0x620 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0008, lo: 0x80, hi: 0xa9}, -+ {value: 0x0018, lo: 0xaa, hi: 0xb2}, -+ {value: 0x0040, lo: 0xb3, hi: 0xbe}, -+ {value: 0x0008, lo: 0xbf, hi: 0xbf}, -+ // Block 0xc9, offset 0x625 -+ {value: 0x0000, lo: 0x08}, -+ {value: 0x3008, lo: 0x80, hi: 0x80}, -+ {value: 0x0008, lo: 0x81, hi: 0x81}, -+ {value: 0x3008, lo: 0x82, hi: 0x82}, -+ {value: 0x3308, lo: 0x83, hi: 0x83}, -+ {value: 0x0018, lo: 0x84, hi: 0x86}, -+ {value: 0x0040, lo: 0x87, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0x99}, -+ {value: 0x0040, lo: 0x9a, hi: 0xbf}, -+ // Block 0xca, offset 0x62e -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0040, lo: 0x80, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xa7}, -+ {value: 0x0040, lo: 0xa8, hi: 0xa9}, -+ {value: 0x0008, lo: 0xaa, hi: 0xbf}, -+ // Block 0xcb, offset 0x633 -+ {value: 0x0000, lo: 0x0c}, -+ {value: 0x0008, lo: 0x80, hi: 0x90}, -+ {value: 0x3008, lo: 0x91, hi: 0x93}, -+ {value: 0x3308, lo: 0x94, hi: 0x97}, -+ {value: 0x0040, lo: 0x98, hi: 0x99}, -+ {value: 0x3308, lo: 0x9a, hi: 0x9b}, -+ {value: 0x3008, lo: 0x9c, hi: 0x9f}, -+ {value: 0x3b08, lo: 0xa0, hi: 0xa0}, -+ {value: 0x0008, lo: 0xa1, hi: 0xa1}, -+ {value: 0x0018, lo: 0xa2, hi: 0xa2}, -+ {value: 0x0008, lo: 0xa3, hi: 0xa3}, -+ {value: 0x3008, lo: 0xa4, hi: 0xa4}, -+ {value: 0x0040, lo: 0xa5, hi: 0xbf}, -+ // Block 0xcc, offset 0x640 -+ {value: 0x0000, lo: 0x0a}, -+ {value: 0x0008, lo: 0x80, hi: 0x80}, -+ {value: 0x3308, lo: 0x81, hi: 0x8a}, -+ {value: 0x0008, lo: 0x8b, hi: 0xb2}, -+ {value: 0x3308, lo: 0xb3, hi: 0xb3}, -+ {value: 0x3b08, lo: 0xb4, hi: 0xb4}, -+ {value: 0x3308, lo: 0xb5, hi: 0xb8}, -+ {value: 0x3008, lo: 0xb9, hi: 0xb9}, -+ {value: 0x0008, lo: 0xba, hi: 0xba}, -+ {value: 0x3308, lo: 0xbb, hi: 0xbe}, -+ {value: 0x0018, lo: 0xbf, hi: 0xbf}, -+ // Block 0xcd, offset 0x64b -+ {value: 0x0000, lo: 0x08}, -+ {value: 0x0018, lo: 0x80, hi: 0x86}, -+ {value: 0x3b08, lo: 0x87, hi: 0x87}, -+ {value: 0x0040, lo: 0x88, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0x90}, -+ {value: 0x3308, lo: 0x91, hi: 0x96}, -+ {value: 0x3008, lo: 0x97, hi: 0x98}, -+ {value: 0x3308, lo: 0x99, hi: 0x9b}, -+ {value: 0x0008, lo: 0x9c, hi: 0xbf}, -+ // Block 0xce, offset 0x654 -+ {value: 0x0000, lo: 0x09}, -+ {value: 0x0008, lo: 0x80, hi: 0x89}, -+ {value: 0x3308, lo: 0x8a, hi: 0x96}, -+ {value: 0x3008, lo: 0x97, hi: 0x97}, -+ {value: 0x3308, lo: 0x98, hi: 0x98}, -+ {value: 0x3b08, lo: 0x99, hi: 0x99}, -+ {value: 0x0018, lo: 0x9a, hi: 0x9c}, -+ {value: 0x0008, lo: 0x9d, hi: 0x9d}, -+ {value: 0x0018, lo: 0x9e, hi: 0xa2}, -+ {value: 0x0040, lo: 0xa3, hi: 0xbf}, -+ // Block 0xcf, offset 0x65e -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0008, lo: 0x80, hi: 0xb8}, -+ {value: 0x0040, lo: 0xb9, hi: 0xbf}, -+ // Block 0xd0, offset 0x661 -+ {value: 0x0000, lo: 0x09}, -+ {value: 0x0008, lo: 0x80, hi: 0x88}, -+ {value: 0x0040, lo: 0x89, hi: 0x89}, -+ {value: 0x0008, lo: 0x8a, hi: 0xae}, -+ {value: 0x3008, lo: 0xaf, hi: 0xaf}, -+ {value: 0x3308, lo: 0xb0, hi: 0xb6}, -+ {value: 0x0040, lo: 0xb7, hi: 0xb7}, -+ {value: 0x3308, lo: 0xb8, hi: 0xbd}, -+ {value: 0x3008, lo: 0xbe, hi: 0xbe}, -+ {value: 0x3b08, lo: 0xbf, hi: 0xbf}, -+ // Block 0xd1, offset 0x66b -+ {value: 0x0000, lo: 0x08}, -+ {value: 0x0008, lo: 0x80, hi: 0x80}, -+ {value: 0x0018, lo: 0x81, hi: 0x85}, -+ {value: 0x0040, lo: 0x86, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0x99}, -+ {value: 0x0018, lo: 0x9a, hi: 0xac}, -+ {value: 0x0040, lo: 0xad, hi: 0xaf}, -+ {value: 0x0018, lo: 0xb0, hi: 0xb1}, -+ {value: 0x0008, lo: 0xb2, hi: 0xbf}, -+ // Block 0xd2, offset 0x674 -+ {value: 0x0000, lo: 0x0b}, -+ {value: 0x0008, lo: 0x80, hi: 0x8f}, -+ {value: 0x0040, lo: 0x90, hi: 0x91}, -+ {value: 0x3308, lo: 0x92, hi: 0xa7}, -+ {value: 0x0040, lo: 0xa8, hi: 0xa8}, -+ {value: 0x3008, lo: 0xa9, hi: 0xa9}, -+ {value: 0x3308, lo: 0xaa, hi: 0xb0}, -+ {value: 0x3008, lo: 0xb1, hi: 0xb1}, -+ {value: 0x3308, lo: 0xb2, hi: 0xb3}, -+ {value: 0x3008, lo: 0xb4, hi: 0xb4}, -+ {value: 0x3308, lo: 0xb5, hi: 0xb6}, -+ {value: 0x0040, lo: 0xb7, hi: 0xbf}, -+ // Block 0xd3, offset 0x680 -+ {value: 0x0000, lo: 0x0c}, -+ {value: 0x0008, lo: 0x80, hi: 0x86}, -+ {value: 0x0040, lo: 0x87, hi: 0x87}, -+ {value: 0x0008, lo: 0x88, hi: 0x89}, -+ {value: 0x0040, lo: 0x8a, hi: 0x8a}, -+ {value: 0x0008, lo: 0x8b, hi: 0xb0}, -+ {value: 0x3308, lo: 0xb1, hi: 0xb6}, -+ {value: 0x0040, lo: 0xb7, hi: 0xb9}, -+ {value: 0x3308, lo: 0xba, hi: 0xba}, -+ {value: 0x0040, lo: 0xbb, hi: 0xbb}, -+ {value: 0x3308, lo: 0xbc, hi: 0xbd}, -+ {value: 0x0040, lo: 0xbe, hi: 0xbe}, -+ {value: 0x3308, lo: 0xbf, hi: 0xbf}, -+ // Block 0xd4, offset 0x68d -+ {value: 0x0000, lo: 0x0c}, -+ {value: 0x3308, lo: 0x80, hi: 0x83}, -+ {value: 0x3b08, lo: 0x84, hi: 0x85}, -+ {value: 0x0008, lo: 0x86, hi: 0x86}, -+ {value: 0x3308, lo: 0x87, hi: 0x87}, -+ {value: 0x0040, lo: 0x88, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0x99}, -+ {value: 0x0040, lo: 0x9a, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xa5}, -+ {value: 0x0040, lo: 0xa6, hi: 0xa6}, -+ {value: 0x0008, lo: 0xa7, hi: 0xa8}, -+ {value: 0x0040, lo: 0xa9, hi: 0xa9}, -+ {value: 0x0008, lo: 0xaa, hi: 0xbf}, -+ // Block 0xd5, offset 0x69a -+ {value: 0x0000, lo: 0x0d}, -+ {value: 0x0008, lo: 0x80, hi: 0x89}, -+ {value: 0x3008, lo: 0x8a, hi: 0x8e}, -+ {value: 0x0040, lo: 0x8f, hi: 0x8f}, -+ {value: 0x3308, lo: 0x90, hi: 0x91}, -+ {value: 0x0040, lo: 0x92, hi: 0x92}, -+ {value: 0x3008, lo: 0x93, hi: 0x94}, -+ {value: 0x3308, lo: 0x95, hi: 0x95}, -+ {value: 0x3008, lo: 0x96, hi: 0x96}, -+ {value: 0x3b08, lo: 0x97, hi: 0x97}, -+ {value: 0x0008, lo: 0x98, hi: 0x98}, -+ {value: 0x0040, lo: 0x99, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xa9}, -+ {value: 0x0040, lo: 0xaa, hi: 0xbf}, -+ // Block 0xd6, offset 0x6a8 -+ {value: 0x0000, lo: 0x06}, -+ {value: 0x0040, lo: 0x80, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xb2}, -+ {value: 0x3308, lo: 0xb3, hi: 0xb4}, -+ {value: 0x3008, lo: 0xb5, hi: 0xb6}, -+ {value: 0x0018, lo: 0xb7, hi: 0xb8}, -+ {value: 0x0040, lo: 0xb9, hi: 0xbf}, -+ // Block 0xd7, offset 0x6af -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0040, lo: 0x80, hi: 0xaf}, -+ {value: 0x0008, lo: 0xb0, hi: 0xb0}, -+ {value: 0x0040, lo: 0xb1, hi: 0xbf}, -+ // Block 0xd8, offset 0x6b3 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0018, lo: 0x80, hi: 0xb1}, -+ {value: 0x0040, lo: 0xb2, hi: 0xbe}, -+ {value: 0x0018, lo: 0xbf, hi: 0xbf}, -+ // Block 0xd9, offset 0x6b7 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0008, lo: 0x80, hi: 0x99}, -+ {value: 0x0040, lo: 0x9a, hi: 0xbf}, -+ // Block 0xda, offset 0x6ba -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0018, lo: 0x80, hi: 0xae}, -+ {value: 0x0040, lo: 0xaf, hi: 0xaf}, -+ {value: 0x0018, lo: 0xb0, hi: 0xb4}, -+ {value: 0x0040, lo: 0xb5, hi: 0xbf}, -+ // Block 0xdb, offset 0x6bf -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0008, lo: 0x80, hi: 0x83}, -+ {value: 0x0040, lo: 0x84, hi: 0xbf}, -+ // Block 0xdc, offset 0x6c2 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0008, lo: 0x80, hi: 0xae}, -+ {value: 0x0040, lo: 0xaf, hi: 0xaf}, -+ {value: 0x0340, lo: 0xb0, hi: 0xb8}, -+ {value: 0x0040, lo: 0xb9, hi: 0xbf}, -+ // Block 0xdd, offset 0x6c7 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0008, lo: 0x80, hi: 0x86}, -+ {value: 0x0040, lo: 0x87, hi: 0xbf}, -+ // Block 0xde, offset 0x6ca -+ {value: 0x0000, lo: 0x06}, -+ {value: 0x0008, lo: 0x80, hi: 0x9e}, -+ {value: 0x0040, lo: 0x9f, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xa9}, -+ {value: 0x0040, lo: 0xaa, hi: 0xad}, -+ {value: 0x0018, lo: 0xae, hi: 0xaf}, -+ {value: 0x0040, lo: 0xb0, hi: 0xbf}, -+ // Block 0xdf, offset 0x6d1 -+ {value: 0x0000, lo: 0x06}, -+ {value: 0x0040, lo: 0x80, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0xad}, -+ {value: 0x0040, lo: 0xae, hi: 0xaf}, -+ {value: 0x3308, lo: 0xb0, hi: 0xb4}, -+ {value: 0x0018, lo: 0xb5, hi: 0xb5}, -+ {value: 0x0040, lo: 0xb6, hi: 0xbf}, -+ // Block 0xe0, offset 0x6d8 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0008, lo: 0x80, hi: 0xaf}, -+ {value: 0x3308, lo: 0xb0, hi: 0xb6}, -+ {value: 0x0018, lo: 0xb7, hi: 0xbf}, -+ // Block 0xe1, offset 0x6dc -+ {value: 0x0000, lo: 0x0a}, -+ {value: 0x0008, lo: 0x80, hi: 0x83}, -+ {value: 0x0018, lo: 0x84, hi: 0x85}, -+ {value: 0x0040, lo: 0x86, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0x99}, -+ {value: 0x0040, lo: 0x9a, hi: 0x9a}, -+ {value: 0x0018, lo: 0x9b, hi: 0xa1}, -+ {value: 0x0040, lo: 0xa2, hi: 0xa2}, -+ {value: 0x0008, lo: 0xa3, hi: 0xb7}, -+ {value: 0x0040, lo: 0xb8, hi: 0xbc}, -+ {value: 0x0008, lo: 0xbd, hi: 0xbf}, -+ // Block 0xe2, offset 0x6e7 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0008, lo: 0x80, hi: 0x8f}, -+ {value: 0x0040, lo: 0x90, hi: 0xbf}, -+ // Block 0xe3, offset 0x6ea -+ {value: 0x0000, lo: 0x02}, -+ {value: 0xe105, lo: 0x80, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xbf}, -+ // Block 0xe4, offset 0x6ed -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0018, lo: 0x80, hi: 0x9a}, -+ {value: 0x0040, lo: 0x9b, hi: 0xbf}, -+ // Block 0xe5, offset 0x6f0 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x0008, lo: 0x80, hi: 0x8a}, -+ {value: 0x0040, lo: 0x8b, hi: 0x8e}, -+ {value: 0x3308, lo: 0x8f, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0x90}, -+ {value: 0x3008, lo: 0x91, hi: 0xbf}, -+ // Block 0xe6, offset 0x6f6 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x3008, lo: 0x80, hi: 0x87}, -+ {value: 0x0040, lo: 0x88, hi: 0x8e}, -+ {value: 0x3308, lo: 0x8f, hi: 0x92}, -+ {value: 0x0008, lo: 0x93, hi: 0x9f}, -+ {value: 0x0040, lo: 0xa0, hi: 0xbf}, -+ // Block 0xe7, offset 0x6fc -+ {value: 0x0000, lo: 0x08}, -+ {value: 0x0040, lo: 0x80, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xa1}, -+ {value: 0x0018, lo: 0xa2, hi: 0xa2}, -+ {value: 0x0008, lo: 0xa3, hi: 0xa3}, -+ {value: 0x3308, lo: 0xa4, hi: 0xa4}, -+ {value: 0x0040, lo: 0xa5, hi: 0xaf}, -+ {value: 0x3008, lo: 0xb0, hi: 0xb1}, -+ {value: 0x0040, lo: 0xb2, hi: 0xbf}, -+ // Block 0xe8, offset 0x705 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0008, lo: 0x80, hi: 0xb7}, -+ {value: 0x0040, lo: 0xb8, hi: 0xbf}, -+ // Block 0xe9, offset 0x708 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0008, lo: 0x80, hi: 0x95}, -+ {value: 0x0040, lo: 0x96, hi: 0xbf}, -+ // Block 0xea, offset 0x70b -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0008, lo: 0x80, hi: 0x88}, -+ {value: 0x0040, lo: 0x89, hi: 0xbf}, -+ // Block 0xeb, offset 0x70e -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0008, lo: 0x80, hi: 0x9e}, -+ {value: 0x0040, lo: 0x9f, hi: 0xbf}, -+ // Block 0xec, offset 0x711 -+ {value: 0x0000, lo: 0x06}, -+ {value: 0x0040, lo: 0x80, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0x92}, -+ {value: 0x0040, lo: 0x93, hi: 0xa3}, -+ {value: 0x0008, lo: 0xa4, hi: 0xa7}, -+ {value: 0x0040, lo: 0xa8, hi: 0xaf}, -+ {value: 0x0008, lo: 0xb0, hi: 0xbf}, -+ // Block 0xed, offset 0x718 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0008, lo: 0x80, hi: 0xbb}, -+ {value: 0x0040, lo: 0xbc, hi: 0xbf}, -+ // Block 0xee, offset 0x71b -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0008, lo: 0x80, hi: 0xaa}, -+ {value: 0x0040, lo: 0xab, hi: 0xaf}, -+ {value: 0x0008, lo: 0xb0, hi: 0xbc}, -+ {value: 0x0040, lo: 0xbd, hi: 0xbf}, -+ // Block 0xef, offset 0x720 -+ {value: 0x0000, lo: 0x09}, -+ {value: 0x0008, lo: 0x80, hi: 0x88}, -+ {value: 0x0040, lo: 0x89, hi: 0x8f}, -+ {value: 0x0008, lo: 0x90, hi: 0x99}, -+ {value: 0x0040, lo: 0x9a, hi: 0x9b}, -+ {value: 0x0018, lo: 0x9c, hi: 0x9c}, -+ {value: 0x3308, lo: 0x9d, hi: 0x9e}, -+ {value: 0x0018, lo: 0x9f, hi: 0x9f}, -+ {value: 0x03c0, lo: 0xa0, hi: 0xa3}, -+ {value: 0x0040, lo: 0xa4, hi: 0xbf}, -+ // Block 0xf0, offset 0x72a -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0018, lo: 0x80, hi: 0xb5}, -+ {value: 0x0040, lo: 0xb6, hi: 0xbf}, -+ // Block 0xf1, offset 0x72d -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0018, lo: 0x80, hi: 0xa6}, -+ {value: 0x0040, lo: 0xa7, hi: 0xa8}, -+ {value: 0x0018, lo: 0xa9, hi: 0xbf}, -+ // Block 0xf2, offset 0x731 -+ {value: 0x0000, lo: 0x0e}, -+ {value: 0x0018, lo: 0x80, hi: 0x9d}, -+ {value: 0xb609, lo: 0x9e, hi: 0x9e}, -+ {value: 0xb651, lo: 0x9f, hi: 0x9f}, -+ {value: 0xb699, lo: 0xa0, hi: 0xa0}, -+ {value: 0xb701, lo: 0xa1, hi: 0xa1}, -+ {value: 0xb769, lo: 0xa2, hi: 0xa2}, -+ {value: 0xb7d1, lo: 0xa3, hi: 0xa3}, -+ {value: 0xb839, lo: 0xa4, hi: 0xa4}, -+ {value: 0x3018, lo: 0xa5, hi: 0xa6}, -+ {value: 0x3318, lo: 0xa7, hi: 0xa9}, -+ {value: 0x0018, lo: 0xaa, hi: 0xac}, -+ {value: 0x3018, lo: 0xad, hi: 0xb2}, -+ {value: 0x0340, lo: 0xb3, hi: 0xba}, -+ {value: 0x3318, lo: 0xbb, hi: 0xbf}, -+ // Block 0xf3, offset 0x740 -+ {value: 0x0000, lo: 0x0b}, -+ {value: 0x3318, lo: 0x80, hi: 0x82}, -+ {value: 0x0018, lo: 0x83, hi: 0x84}, -+ {value: 0x3318, lo: 0x85, hi: 0x8b}, -+ {value: 0x0018, lo: 0x8c, hi: 0xa9}, -+ {value: 0x3318, lo: 0xaa, hi: 0xad}, -+ {value: 0x0018, lo: 0xae, hi: 0xba}, -+ {value: 0xb8a1, lo: 0xbb, hi: 0xbb}, -+ {value: 0xb8e9, lo: 0xbc, hi: 0xbc}, -+ {value: 0xb931, lo: 0xbd, hi: 0xbd}, -+ {value: 0xb999, lo: 0xbe, hi: 0xbe}, -+ {value: 0xba01, lo: 0xbf, hi: 0xbf}, -+ // Block 0xf4, offset 0x74c -+ {value: 0x0000, lo: 0x03}, -+ {value: 0xba69, lo: 0x80, hi: 0x80}, -+ {value: 0x0018, lo: 0x81, hi: 0xa8}, -+ {value: 0x0040, lo: 0xa9, hi: 0xbf}, -+ // Block 0xf5, offset 0x750 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0018, lo: 0x80, hi: 0x81}, -+ {value: 0x3318, lo: 0x82, hi: 0x84}, -+ {value: 0x0018, lo: 0x85, hi: 0x85}, -+ {value: 0x0040, lo: 0x86, hi: 0xbf}, -+ // Block 0xf6, offset 0x755 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0040, lo: 0x80, hi: 0x9f}, -+ {value: 0x0018, lo: 0xa0, hi: 0xb3}, -+ {value: 0x0040, lo: 0xb4, hi: 0xbf}, -+ // Block 0xf7, offset 0x759 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0018, lo: 0x80, hi: 0x96}, -+ {value: 0x0040, lo: 0x97, hi: 0x9f}, -+ {value: 0x0018, lo: 0xa0, hi: 0xb8}, -+ {value: 0x0040, lo: 0xb9, hi: 0xbf}, -+ // Block 0xf8, offset 0x75e -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x3308, lo: 0x80, hi: 0xb6}, -+ {value: 0x0018, lo: 0xb7, hi: 0xba}, -+ {value: 0x3308, lo: 0xbb, hi: 0xbf}, -+ // Block 0xf9, offset 0x762 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x3308, lo: 0x80, hi: 0xac}, -+ {value: 0x0018, lo: 0xad, hi: 0xb4}, -+ {value: 0x3308, lo: 0xb5, hi: 0xb5}, -+ {value: 0x0018, lo: 0xb6, hi: 0xbf}, -+ // Block 0xfa, offset 0x767 -+ {value: 0x0000, lo: 0x08}, -+ {value: 0x0018, lo: 0x80, hi: 0x83}, -+ {value: 0x3308, lo: 0x84, hi: 0x84}, -+ {value: 0x0018, lo: 0x85, hi: 0x8b}, -+ {value: 0x0040, lo: 0x8c, hi: 0x9a}, -+ {value: 0x3308, lo: 0x9b, hi: 0x9f}, -+ {value: 0x0040, lo: 0xa0, hi: 0xa0}, -+ {value: 0x3308, lo: 0xa1, hi: 0xaf}, -+ {value: 0x0040, lo: 0xb0, hi: 0xbf}, -+ // Block 0xfb, offset 0x770 -+ {value: 0x0000, lo: 0x0a}, -+ {value: 0x3308, lo: 0x80, hi: 0x86}, -+ {value: 0x0040, lo: 0x87, hi: 0x87}, -+ {value: 0x3308, lo: 0x88, hi: 0x98}, -+ {value: 0x0040, lo: 0x99, hi: 0x9a}, -+ {value: 0x3308, lo: 0x9b, hi: 0xa1}, -+ {value: 0x0040, lo: 0xa2, hi: 0xa2}, -+ {value: 0x3308, lo: 0xa3, hi: 0xa4}, -+ {value: 0x0040, lo: 0xa5, hi: 0xa5}, -+ {value: 0x3308, lo: 0xa6, hi: 0xaa}, -+ {value: 0x0040, lo: 0xab, hi: 0xbf}, -+ // Block 0xfc, offset 0x77b -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x0008, lo: 0x80, hi: 0xac}, -+ {value: 0x0040, lo: 0xad, hi: 0xaf}, -+ {value: 0x3308, lo: 0xb0, hi: 0xb6}, -+ {value: 0x0008, lo: 0xb7, hi: 0xbd}, -+ {value: 0x0040, lo: 0xbe, hi: 0xbf}, -+ // Block 0xfd, offset 0x781 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x0008, lo: 0x80, hi: 0x89}, -+ {value: 0x0040, lo: 0x8a, hi: 0x8d}, -+ {value: 0x0008, lo: 0x8e, hi: 0x8e}, -+ {value: 0x0018, lo: 0x8f, hi: 0x8f}, -+ {value: 0x0040, lo: 0x90, hi: 0xbf}, -+ // Block 0xfe, offset 0x787 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x0008, lo: 0x80, hi: 0xab}, -+ {value: 0x3308, lo: 0xac, hi: 0xaf}, -+ {value: 0x0008, lo: 0xb0, hi: 0xb9}, -+ {value: 0x0040, lo: 0xba, hi: 0xbe}, -+ {value: 0x0018, lo: 0xbf, hi: 0xbf}, -+ // Block 0xff, offset 0x78d -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x0808, lo: 0x80, hi: 0x84}, -+ {value: 0x0040, lo: 0x85, hi: 0x86}, -+ {value: 0x0818, lo: 0x87, hi: 0x8f}, -+ {value: 0x3308, lo: 0x90, hi: 0x96}, -+ {value: 0x0040, lo: 0x97, hi: 0xbf}, -+ // Block 0x100, offset 0x793 -+ {value: 0x0000, lo: 0x08}, -+ {value: 0x0a08, lo: 0x80, hi: 0x83}, -+ {value: 0x3308, lo: 0x84, hi: 0x8a}, -+ {value: 0x0b08, lo: 0x8b, hi: 0x8b}, -+ {value: 0x0040, lo: 0x8c, hi: 0x8f}, -+ {value: 0x0808, lo: 0x90, hi: 0x99}, -+ {value: 0x0040, lo: 0x9a, hi: 0x9d}, -+ {value: 0x0818, lo: 0x9e, hi: 0x9f}, -+ {value: 0x0040, lo: 0xa0, hi: 0xbf}, -+ // Block 0x101, offset 0x79c -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0040, lo: 0x80, hi: 0xb0}, -+ {value: 0x0818, lo: 0xb1, hi: 0xbf}, -+ // Block 0x102, offset 0x79f -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0818, lo: 0x80, hi: 0xb4}, -+ {value: 0x0040, lo: 0xb5, hi: 0xbf}, -+ // Block 0x103, offset 0x7a2 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0040, lo: 0x80, hi: 0x80}, -+ {value: 0x0818, lo: 0x81, hi: 0xbd}, -+ {value: 0x0040, lo: 0xbe, hi: 0xbf}, -+ // Block 0x104, offset 0x7a6 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0040, lo: 0x80, hi: 0xaf}, -+ {value: 0x0018, lo: 0xb0, hi: 0xb1}, -+ {value: 0x0040, lo: 0xb2, hi: 0xbf}, -+ // Block 0x105, offset 0x7aa -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0018, lo: 0x80, hi: 0xab}, -+ {value: 0x0040, lo: 0xac, hi: 0xaf}, -+ {value: 0x0018, lo: 0xb0, hi: 0xbf}, -+ // Block 0x106, offset 0x7ae -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x0018, lo: 0x80, hi: 0x93}, -+ {value: 0x0040, lo: 0x94, hi: 0x9f}, -+ {value: 0x0018, lo: 0xa0, hi: 0xae}, -+ {value: 0x0040, lo: 0xaf, hi: 0xb0}, -+ {value: 0x0018, lo: 0xb1, hi: 0xbf}, -+ // Block 0x107, offset 0x7b4 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x0040, lo: 0x80, hi: 0x80}, -+ {value: 0x0018, lo: 0x81, hi: 0x8f}, -+ {value: 0x0040, lo: 0x90, hi: 0x90}, -+ {value: 0x0018, lo: 0x91, hi: 0xb5}, -+ {value: 0x0040, lo: 0xb6, hi: 0xbf}, -+ // Block 0x108, offset 0x7ba -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0018, lo: 0x80, hi: 0x8f}, -+ {value: 0xc229, lo: 0x90, hi: 0x90}, -+ {value: 0x0018, lo: 0x91, hi: 0xad}, -+ {value: 0x0040, lo: 0xae, hi: 0xbf}, -+ // Block 0x109, offset 0x7bf -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0040, lo: 0x80, hi: 0xa5}, -+ {value: 0x0018, lo: 0xa6, hi: 0xbf}, -+ // Block 0x10a, offset 0x7c2 -+ {value: 0x0000, lo: 0x0f}, -+ {value: 0xc851, lo: 0x80, hi: 0x80}, -+ {value: 0xc8a1, lo: 0x81, hi: 0x81}, -+ {value: 0xc8f1, lo: 0x82, hi: 0x82}, -+ {value: 0xc941, lo: 0x83, hi: 0x83}, -+ {value: 0xc991, lo: 0x84, hi: 0x84}, -+ {value: 0xc9e1, lo: 0x85, hi: 0x85}, -+ {value: 0xca31, lo: 0x86, hi: 0x86}, -+ {value: 0xca81, lo: 0x87, hi: 0x87}, -+ {value: 0xcad1, lo: 0x88, hi: 0x88}, -+ {value: 0x0040, lo: 0x89, hi: 0x8f}, -+ {value: 0xcb21, lo: 0x90, hi: 0x90}, -+ {value: 0xcb41, lo: 0x91, hi: 0x91}, -+ {value: 0x0040, lo: 0x92, hi: 0x9f}, -+ {value: 0x0018, lo: 0xa0, hi: 0xa5}, -+ {value: 0x0040, lo: 0xa6, hi: 0xbf}, -+ // Block 0x10b, offset 0x7d2 -+ {value: 0x0000, lo: 0x06}, -+ {value: 0x0018, lo: 0x80, hi: 0x97}, -+ {value: 0x0040, lo: 0x98, hi: 0x9f}, -+ {value: 0x0018, lo: 0xa0, hi: 0xac}, -+ {value: 0x0040, lo: 0xad, hi: 0xaf}, -+ {value: 0x0018, lo: 0xb0, hi: 0xbc}, -+ {value: 0x0040, lo: 0xbd, hi: 0xbf}, -+ // Block 0x10c, offset 0x7d9 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0018, lo: 0x80, hi: 0xb3}, -+ {value: 0x0040, lo: 0xb4, hi: 0xbf}, -+ // Block 0x10d, offset 0x7dc -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0018, lo: 0x80, hi: 0x98}, -+ {value: 0x0040, lo: 0x99, hi: 0x9f}, -+ {value: 0x0018, lo: 0xa0, hi: 0xab}, -+ {value: 0x0040, lo: 0xac, hi: 0xbf}, -+ // Block 0x10e, offset 0x7e1 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0018, lo: 0x80, hi: 0x8b}, -+ {value: 0x0040, lo: 0x8c, hi: 0x8f}, -+ {value: 0x0018, lo: 0x90, hi: 0xbf}, -+ // Block 0x10f, offset 0x7e5 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x0018, lo: 0x80, hi: 0x87}, -+ {value: 0x0040, lo: 0x88, hi: 0x8f}, -+ {value: 0x0018, lo: 0x90, hi: 0x99}, -+ {value: 0x0040, lo: 0x9a, hi: 0x9f}, -+ {value: 0x0018, lo: 0xa0, hi: 0xbf}, -+ // Block 0x110, offset 0x7eb -+ {value: 0x0000, lo: 0x06}, -+ {value: 0x0018, lo: 0x80, hi: 0x87}, -+ {value: 0x0040, lo: 0x88, hi: 0x8f}, -+ {value: 0x0018, lo: 0x90, hi: 0xad}, -+ {value: 0x0040, lo: 0xae, hi: 0xaf}, -+ {value: 0x0018, lo: 0xb0, hi: 0xb1}, -+ {value: 0x0040, lo: 0xb2, hi: 0xbf}, -+ // Block 0x111, offset 0x7f2 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0018, lo: 0x80, hi: 0xb8}, -+ {value: 0x0040, lo: 0xb9, hi: 0xb9}, -+ {value: 0x0018, lo: 0xba, hi: 0xbf}, -+ // Block 0x112, offset 0x7f6 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0018, lo: 0x80, hi: 0x8b}, -+ {value: 0x0040, lo: 0x8c, hi: 0x8c}, -+ {value: 0x0018, lo: 0x8d, hi: 0xbf}, -+ // Block 0x113, offset 0x7fa -+ {value: 0x0000, lo: 0x08}, -+ {value: 0x0018, lo: 0x80, hi: 0x93}, -+ {value: 0x0040, lo: 0x94, hi: 0x9f}, -+ {value: 0x0018, lo: 0xa0, hi: 0xad}, -+ {value: 0x0040, lo: 0xae, hi: 0xaf}, -+ {value: 0x0018, lo: 0xb0, hi: 0xb4}, -+ {value: 0x0040, lo: 0xb5, hi: 0xb7}, -+ {value: 0x0018, lo: 0xb8, hi: 0xba}, -+ {value: 0x0040, lo: 0xbb, hi: 0xbf}, -+ // Block 0x114, offset 0x803 -+ {value: 0x0000, lo: 0x06}, -+ {value: 0x0018, lo: 0x80, hi: 0x86}, -+ {value: 0x0040, lo: 0x87, hi: 0x8f}, -+ {value: 0x0018, lo: 0x90, hi: 0xa8}, -+ {value: 0x0040, lo: 0xa9, hi: 0xaf}, -+ {value: 0x0018, lo: 0xb0, hi: 0xb6}, -+ {value: 0x0040, lo: 0xb7, hi: 0xbf}, -+ // Block 0x115, offset 0x80a -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0018, lo: 0x80, hi: 0x82}, -+ {value: 0x0040, lo: 0x83, hi: 0x8f}, -+ {value: 0x0018, lo: 0x90, hi: 0x96}, -+ {value: 0x0040, lo: 0x97, hi: 0xbf}, -+ // Block 0x116, offset 0x80f -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0018, lo: 0x80, hi: 0x92}, -+ {value: 0x0040, lo: 0x93, hi: 0x93}, -+ {value: 0x0018, lo: 0x94, hi: 0xbf}, -+ // Block 0x117, offset 0x813 -+ {value: 0x0000, lo: 0x0d}, -+ {value: 0x0018, lo: 0x80, hi: 0x8a}, -+ {value: 0x0040, lo: 0x8b, hi: 0xaf}, -+ {value: 0x1f41, lo: 0xb0, hi: 0xb0}, -+ {value: 0x00c9, lo: 0xb1, hi: 0xb1}, -+ {value: 0x0069, lo: 0xb2, hi: 0xb2}, -+ {value: 0x0079, lo: 0xb3, hi: 0xb3}, -+ {value: 0x1f51, lo: 0xb4, hi: 0xb4}, -+ {value: 0x1f61, lo: 0xb5, hi: 0xb5}, -+ {value: 0x1f71, lo: 0xb6, hi: 0xb6}, -+ {value: 0x1f81, lo: 0xb7, hi: 0xb7}, -+ {value: 0x1f91, lo: 0xb8, hi: 0xb8}, -+ {value: 0x1fa1, lo: 0xb9, hi: 0xb9}, -+ {value: 0x0040, lo: 0xba, hi: 0xbf}, -+ // Block 0x118, offset 0x821 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0008, lo: 0x80, hi: 0x9d}, -+ {value: 0x0040, lo: 0x9e, hi: 0xbf}, -+ // Block 0x119, offset 0x824 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0008, lo: 0x80, hi: 0xb4}, -+ {value: 0x0040, lo: 0xb5, hi: 0xbf}, -+ // Block 0x11a, offset 0x827 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0008, lo: 0x80, hi: 0x9d}, -+ {value: 0x0040, lo: 0x9e, hi: 0x9f}, -+ {value: 0x0008, lo: 0xa0, hi: 0xbf}, -+ // Block 0x11b, offset 0x82b -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0008, lo: 0x80, hi: 0xa1}, -+ {value: 0x0040, lo: 0xa2, hi: 0xaf}, -+ {value: 0x0008, lo: 0xb0, hi: 0xbf}, -+ // Block 0x11c, offset 0x82f -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0008, lo: 0x80, hi: 0xa0}, -+ {value: 0x0040, lo: 0xa1, hi: 0xbf}, -+ // Block 0x11d, offset 0x832 -+ {value: 0x0020, lo: 0x0f}, -+ {value: 0xdf21, lo: 0x80, hi: 0x89}, -+ {value: 0x8e35, lo: 0x8a, hi: 0x8a}, -+ {value: 0xe061, lo: 0x8b, hi: 0x9c}, -+ {value: 0x8e55, lo: 0x9d, hi: 0x9d}, -+ {value: 0xe2a1, lo: 0x9e, hi: 0xa2}, -+ {value: 0x8e75, lo: 0xa3, hi: 0xa3}, -+ {value: 0xe341, lo: 0xa4, hi: 0xab}, -+ {value: 0x7f0d, lo: 0xac, hi: 0xac}, -+ {value: 0xe441, lo: 0xad, hi: 0xaf}, -+ {value: 0x8e95, lo: 0xb0, hi: 0xb0}, -+ {value: 0xe4a1, lo: 0xb1, hi: 0xb6}, -+ {value: 0x8eb5, lo: 0xb7, hi: 0xb9}, -+ {value: 0xe561, lo: 0xba, hi: 0xba}, -+ {value: 0x8f15, lo: 0xbb, hi: 0xbb}, -+ {value: 0xe581, lo: 0xbc, hi: 0xbf}, -+ // Block 0x11e, offset 0x842 -+ {value: 0x0020, lo: 0x10}, -+ {value: 0x93b5, lo: 0x80, hi: 0x80}, -+ {value: 0xf101, lo: 0x81, hi: 0x86}, -+ {value: 0x93d5, lo: 0x87, hi: 0x8a}, -+ {value: 0xda61, lo: 0x8b, hi: 0x8b}, -+ {value: 0xf1c1, lo: 0x8c, hi: 0x96}, -+ {value: 0x9455, lo: 0x97, hi: 0x97}, -+ {value: 0xf321, lo: 0x98, hi: 0xa3}, -+ {value: 0x9475, lo: 0xa4, hi: 0xa6}, -+ {value: 0xf4a1, lo: 0xa7, hi: 0xaa}, -+ {value: 0x94d5, lo: 0xab, hi: 0xab}, -+ {value: 0xf521, lo: 0xac, hi: 0xac}, -+ {value: 0x94f5, lo: 0xad, hi: 0xad}, -+ {value: 0xf541, lo: 0xae, hi: 0xaf}, -+ {value: 0x9515, lo: 0xb0, hi: 0xb1}, -+ {value: 0xf581, lo: 0xb2, hi: 0xbe}, -+ {value: 0x2040, lo: 0xbf, hi: 0xbf}, -+ // Block 0x11f, offset 0x853 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0008, lo: 0x80, hi: 0x8a}, -+ {value: 0x0040, lo: 0x8b, hi: 0xbf}, -+ // Block 0x120, offset 0x856 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x0040, lo: 0x80, hi: 0x80}, -+ {value: 0x0340, lo: 0x81, hi: 0x81}, -+ {value: 0x0040, lo: 0x82, hi: 0x9f}, -+ {value: 0x0340, lo: 0xa0, hi: 0xbf}, -+ // Block 0x121, offset 0x85b -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x0340, lo: 0x80, hi: 0xbf}, -+ // Block 0x122, offset 0x85d -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x33c0, lo: 0x80, hi: 0xbf}, -+ // Block 0x123, offset 0x85f -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x33c0, lo: 0x80, hi: 0xaf}, -+ {value: 0x0040, lo: 0xb0, hi: 0xbf}, -+} -+ -+// Total table size 43370 bytes (42KiB); checksum: EBD909C0 -diff --git a/vendor/golang.org/x/net/idna/tables9.0.0.go b/vendor/golang.org/x/net/idna/tables9.0.0.go -index 8b65fa1..4074b53 100644 ---- a/vendor/golang.org/x/net/idna/tables9.0.0.go -+++ b/vendor/golang.org/x/net/idna/tables9.0.0.go -@@ -1,5 +1,6 @@ - // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. - -+//go:build !go1.10 - // +build !go1.10 - - package idna -diff --git a/vendor/golang.org/x/net/idna/trieval.go b/vendor/golang.org/x/net/idna/trieval.go -index 7a8cf88..9c070a4 100644 ---- a/vendor/golang.org/x/net/idna/trieval.go -+++ b/vendor/golang.org/x/net/idna/trieval.go -@@ -17,23 +17,23 @@ package idna - // - // The per-rune values have the following format: - // --// if mapped { --// if inlinedXOR { --// 15..13 inline XOR marker --// 12..11 unused --// 10..3 inline XOR mask --// } else { --// 15..3 index into xor or mapping table --// } --// } else { --// 15..14 unused --// 13 mayNeedNorm --// 12..11 attributes --// 10..8 joining type --// 7..3 category type --// } --// 2 use xor pattern --// 1..0 mapped category -+// if mapped { -+// if inlinedXOR { -+// 15..13 inline XOR marker -+// 12..11 unused -+// 10..3 inline XOR mask -+// } else { -+// 15..3 index into xor or mapping table -+// } -+// } else { -+// 15..14 unused -+// 13 mayNeedNorm -+// 12..11 attributes -+// 10..8 joining type -+// 7..3 category type -+// } -+// 2 use xor pattern -+// 1..0 mapped category - // - // See the definitions below for a more detailed description of the various - // bits. -diff --git a/vendor/golang.org/x/net/internal/socket/cmsghdr.go b/vendor/golang.org/x/net/internal/socket/cmsghdr.go -index 0a73e27..4bdaaaf 100644 ---- a/vendor/golang.org/x/net/internal/socket/cmsghdr.go -+++ b/vendor/golang.org/x/net/internal/socket/cmsghdr.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris -+//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos -+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris zos - - package socket - -diff --git a/vendor/golang.org/x/net/internal/socket/cmsghdr_bsd.go b/vendor/golang.org/x/net/internal/socket/cmsghdr_bsd.go -index 14dbb3a..0d30e0a 100644 ---- a/vendor/golang.org/x/net/internal/socket/cmsghdr_bsd.go -+++ b/vendor/golang.org/x/net/internal/socket/cmsghdr_bsd.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build aix || darwin || dragonfly || freebsd || netbsd || openbsd - // +build aix darwin dragonfly freebsd netbsd openbsd - - package socket -diff --git a/vendor/golang.org/x/net/internal/socket/cmsghdr_linux_32bit.go b/vendor/golang.org/x/net/internal/socket/cmsghdr_linux_32bit.go -index bac6681..4936e8a 100644 ---- a/vendor/golang.org/x/net/internal/socket/cmsghdr_linux_32bit.go -+++ b/vendor/golang.org/x/net/internal/socket/cmsghdr_linux_32bit.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build arm mips mipsle 386 -+//go:build (arm || mips || mipsle || 386 || ppc) && linux -+// +build arm mips mipsle 386 ppc - // +build linux - - package socket -diff --git a/vendor/golang.org/x/net/internal/socket/cmsghdr_linux_64bit.go b/vendor/golang.org/x/net/internal/socket/cmsghdr_linux_64bit.go -index 27be0ef..f6877f9 100644 ---- a/vendor/golang.org/x/net/internal/socket/cmsghdr_linux_64bit.go -+++ b/vendor/golang.org/x/net/internal/socket/cmsghdr_linux_64bit.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build arm64 amd64 ppc64 ppc64le mips64 mips64le riscv64 s390x -+//go:build (arm64 || amd64 || loong64 || ppc64 || ppc64le || mips64 || mips64le || riscv64 || s390x) && linux -+// +build arm64 amd64 loong64 ppc64 ppc64le mips64 mips64le riscv64 s390x - // +build linux - - package socket -diff --git a/vendor/golang.org/x/net/internal/socket/cmsghdr_solaris_64bit.go b/vendor/golang.org/x/net/internal/socket/cmsghdr_solaris_64bit.go -index 7dedd43..d3dbe1b 100644 ---- a/vendor/golang.org/x/net/internal/socket/cmsghdr_solaris_64bit.go -+++ b/vendor/golang.org/x/net/internal/socket/cmsghdr_solaris_64bit.go -@@ -2,8 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build amd64 --// +build solaris -+//go:build amd64 && solaris -+// +build amd64,solaris - - package socket - -diff --git a/vendor/golang.org/x/net/internal/socket/cmsghdr_stub.go b/vendor/golang.org/x/net/internal/socket/cmsghdr_stub.go -index e581011..1d9f2ed 100644 ---- a/vendor/golang.org/x/net/internal/socket/cmsghdr_stub.go -+++ b/vendor/golang.org/x/net/internal/socket/cmsghdr_stub.go -@@ -2,13 +2,24 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris -+//go:build !aix && !darwin && !dragonfly && !freebsd && !linux && !netbsd && !openbsd && !solaris && !zos -+// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!zos - - package socket - --type cmsghdr struct{} -+func controlHeaderLen() int { -+ return 0 -+} -+ -+func controlMessageLen(dataLen int) int { -+ return 0 -+} - --const sizeofCmsghdr = 0 -+func controlMessageSpace(dataLen int) int { -+ return 0 -+} -+ -+type cmsghdr struct{} - - func (h *cmsghdr) len() int { return 0 } - func (h *cmsghdr) lvl() int { return 0 } -diff --git a/vendor/golang.org/x/net/internal/socket/cmsghdr_unix.go b/vendor/golang.org/x/net/internal/socket/cmsghdr_unix.go -new file mode 100644 -index 0000000..19d4678 ---- /dev/null -+++ b/vendor/golang.org/x/net/internal/socket/cmsghdr_unix.go -@@ -0,0 +1,22 @@ -+// Copyright 2020 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos -+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris zos -+ -+package socket -+ -+import "golang.org/x/sys/unix" -+ -+func controlHeaderLen() int { -+ return unix.CmsgLen(0) -+} -+ -+func controlMessageLen(dataLen int) int { -+ return unix.CmsgLen(dataLen) -+} -+ -+func controlMessageSpace(dataLen int) int { -+ return unix.CmsgSpace(dataLen) -+} -diff --git a/vendor/golang.org/x/net/internal/socket/cmsghdr_zos_s390x.go b/vendor/golang.org/x/net/internal/socket/cmsghdr_zos_s390x.go -new file mode 100644 -index 0000000..68dc8ad ---- /dev/null -+++ b/vendor/golang.org/x/net/internal/socket/cmsghdr_zos_s390x.go -@@ -0,0 +1,11 @@ -+// Copyright 2020 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+package socket -+ -+func (h *cmsghdr) set(l, lvl, typ int) { -+ h.Len = int32(l) -+ h.Level = int32(lvl) -+ h.Type = int32(typ) -+} -diff --git a/vendor/golang.org/x/net/internal/socket/complete_dontwait.go b/vendor/golang.org/x/net/internal/socket/complete_dontwait.go -new file mode 100644 -index 0000000..5b1d50a ---- /dev/null -+++ b/vendor/golang.org/x/net/internal/socket/complete_dontwait.go -@@ -0,0 +1,26 @@ -+// Copyright 2021 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris -+// +build darwin dragonfly freebsd linux netbsd openbsd solaris -+ -+package socket -+ -+import ( -+ "syscall" -+) -+ -+// ioComplete checks the flags and result of a syscall, to be used as return -+// value in a syscall.RawConn.Read or Write callback. -+func ioComplete(flags int, operr error) bool { -+ if flags&syscall.MSG_DONTWAIT != 0 { -+ // Caller explicitly said don't wait, so always return immediately. -+ return true -+ } -+ if operr == syscall.EAGAIN || operr == syscall.EWOULDBLOCK { -+ // No data available, block for I/O and try again. -+ return false -+ } -+ return true -+} -diff --git a/vendor/golang.org/x/net/internal/socket/complete_nodontwait.go b/vendor/golang.org/x/net/internal/socket/complete_nodontwait.go -new file mode 100644 -index 0000000..be63409 ---- /dev/null -+++ b/vendor/golang.org/x/net/internal/socket/complete_nodontwait.go -@@ -0,0 +1,22 @@ -+// Copyright 2021 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build aix || windows || zos -+// +build aix windows zos -+ -+package socket -+ -+import ( -+ "syscall" -+) -+ -+// ioComplete checks the flags and result of a syscall, to be used as return -+// value in a syscall.RawConn.Read or Write callback. -+func ioComplete(flags int, operr error) bool { -+ if operr == syscall.EAGAIN || operr == syscall.EWOULDBLOCK { -+ // No data available, block for I/O and try again. -+ return false -+ } -+ return true -+} -diff --git a/vendor/golang.org/x/net/internal/socket/empty.s b/vendor/golang.org/x/net/internal/socket/empty.s -index bff0231..90ab4ca 100644 ---- a/vendor/golang.org/x/net/internal/socket/empty.s -+++ b/vendor/golang.org/x/net/internal/socket/empty.s -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build darwin && go1.12 - // +build darwin,go1.12 - - // This exists solely so we can linkname in symbols from syscall. -diff --git a/vendor/golang.org/x/net/internal/socket/error_unix.go b/vendor/golang.org/x/net/internal/socket/error_unix.go -index f14872d..78f4129 100644 ---- a/vendor/golang.org/x/net/internal/socket/error_unix.go -+++ b/vendor/golang.org/x/net/internal/socket/error_unix.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris -+//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos -+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris zos - - package socket - -diff --git a/vendor/golang.org/x/net/internal/socket/iovec_32bit.go b/vendor/golang.org/x/net/internal/socket/iovec_32bit.go -index 05d6082..2b8fbb3 100644 ---- a/vendor/golang.org/x/net/internal/socket/iovec_32bit.go -+++ b/vendor/golang.org/x/net/internal/socket/iovec_32bit.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build arm mips mipsle 386 -+//go:build (arm || mips || mipsle || 386 || ppc) && (darwin || dragonfly || freebsd || linux || netbsd || openbsd) -+// +build arm mips mipsle 386 ppc - // +build darwin dragonfly freebsd linux netbsd openbsd - - package socket -diff --git a/vendor/golang.org/x/net/internal/socket/iovec_64bit.go b/vendor/golang.org/x/net/internal/socket/iovec_64bit.go -index dfeda75..2e94e96 100644 ---- a/vendor/golang.org/x/net/internal/socket/iovec_64bit.go -+++ b/vendor/golang.org/x/net/internal/socket/iovec_64bit.go -@@ -2,8 +2,9 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build arm64 amd64 ppc64 ppc64le mips64 mips64le riscv64 s390x --// +build aix darwin dragonfly freebsd linux netbsd openbsd -+//go:build (arm64 || amd64 || loong64 || ppc64 || ppc64le || mips64 || mips64le || riscv64 || s390x) && (aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || zos) -+// +build arm64 amd64 loong64 ppc64 ppc64le mips64 mips64le riscv64 s390x -+// +build aix darwin dragonfly freebsd linux netbsd openbsd zos - - package socket - -diff --git a/vendor/golang.org/x/net/internal/socket/iovec_solaris_64bit.go b/vendor/golang.org/x/net/internal/socket/iovec_solaris_64bit.go -index 8d17a40..f7da2bc 100644 ---- a/vendor/golang.org/x/net/internal/socket/iovec_solaris_64bit.go -+++ b/vendor/golang.org/x/net/internal/socket/iovec_solaris_64bit.go -@@ -2,8 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build amd64 --// +build solaris -+//go:build amd64 && solaris -+// +build amd64,solaris - - package socket - -diff --git a/vendor/golang.org/x/net/internal/socket/iovec_stub.go b/vendor/golang.org/x/net/internal/socket/iovec_stub.go -index a746e90..14caf52 100644 ---- a/vendor/golang.org/x/net/internal/socket/iovec_stub.go -+++ b/vendor/golang.org/x/net/internal/socket/iovec_stub.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris -+//go:build !aix && !darwin && !dragonfly && !freebsd && !linux && !netbsd && !openbsd && !solaris && !zos -+// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!zos - - package socket - -diff --git a/vendor/golang.org/x/net/internal/socket/mmsghdr_stub.go b/vendor/golang.org/x/net/internal/socket/mmsghdr_stub.go -index 1a7f279..113e773 100644 ---- a/vendor/golang.org/x/net/internal/socket/mmsghdr_stub.go -+++ b/vendor/golang.org/x/net/internal/socket/mmsghdr_stub.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build !aix && !linux && !netbsd - // +build !aix,!linux,!netbsd - - package socket -diff --git a/vendor/golang.org/x/net/internal/socket/mmsghdr_unix.go b/vendor/golang.org/x/net/internal/socket/mmsghdr_unix.go -index f110068..0bfcf7a 100644 ---- a/vendor/golang.org/x/net/internal/socket/mmsghdr_unix.go -+++ b/vendor/golang.org/x/net/internal/socket/mmsghdr_unix.go -@@ -2,29 +2,20 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build aix || linux || netbsd - // +build aix linux netbsd - - package socket - --import "net" -+import ( -+ "net" -+ "os" -+ "sync" -+ "syscall" -+) - - type mmsghdrs []mmsghdr - --func (hs mmsghdrs) pack(ms []Message, parseFn func([]byte, string) (net.Addr, error), marshalFn func(net.Addr) []byte) error { -- for i := range hs { -- vs := make([]iovec, len(ms[i].Buffers)) -- var sa []byte -- if parseFn != nil { -- sa = make([]byte, sizeofSockaddrInet6) -- } -- if marshalFn != nil { -- sa = marshalFn(ms[i].Addr) -- } -- hs[i].Hdr.pack(vs, ms[i].Buffers, ms[i].OOB, sa) -- } -- return nil --} -- - func (hs mmsghdrs) unpack(ms []Message, parseFn func([]byte, string) (net.Addr, error), hint string) error { - for i := range hs { - ms[i].N = int(hs[i].Len) -@@ -40,3 +31,150 @@ func (hs mmsghdrs) unpack(ms []Message, parseFn func([]byte, string) (net.Addr, - } - return nil - } -+ -+// mmsghdrsPacker packs Message-slices into mmsghdrs (re-)using pre-allocated buffers. -+type mmsghdrsPacker struct { -+ // hs are the pre-allocated mmsghdrs. -+ hs mmsghdrs -+ // sockaddrs is the pre-allocated buffer for the Hdr.Name buffers. -+ // We use one large buffer for all messages and slice it up. -+ sockaddrs []byte -+ // vs are the pre-allocated iovecs. -+ // We allocate one large buffer for all messages and slice it up. This allows to reuse the buffer -+ // if the number of buffers per message is distributed differently between calls. -+ vs []iovec -+} -+ -+func (p *mmsghdrsPacker) prepare(ms []Message) { -+ n := len(ms) -+ if n <= cap(p.hs) { -+ p.hs = p.hs[:n] -+ } else { -+ p.hs = make(mmsghdrs, n) -+ } -+ if n*sizeofSockaddrInet6 <= cap(p.sockaddrs) { -+ p.sockaddrs = p.sockaddrs[:n*sizeofSockaddrInet6] -+ } else { -+ p.sockaddrs = make([]byte, n*sizeofSockaddrInet6) -+ } -+ -+ nb := 0 -+ for _, m := range ms { -+ nb += len(m.Buffers) -+ } -+ if nb <= cap(p.vs) { -+ p.vs = p.vs[:nb] -+ } else { -+ p.vs = make([]iovec, nb) -+ } -+} -+ -+func (p *mmsghdrsPacker) pack(ms []Message, parseFn func([]byte, string) (net.Addr, error), marshalFn func(net.Addr, []byte) int) mmsghdrs { -+ p.prepare(ms) -+ hs := p.hs -+ vsRest := p.vs -+ saRest := p.sockaddrs -+ for i := range hs { -+ nvs := len(ms[i].Buffers) -+ vs := vsRest[:nvs] -+ vsRest = vsRest[nvs:] -+ -+ var sa []byte -+ if parseFn != nil { -+ sa = saRest[:sizeofSockaddrInet6] -+ saRest = saRest[sizeofSockaddrInet6:] -+ } else if marshalFn != nil { -+ n := marshalFn(ms[i].Addr, saRest) -+ if n > 0 { -+ sa = saRest[:n] -+ saRest = saRest[n:] -+ } -+ } -+ hs[i].Hdr.pack(vs, ms[i].Buffers, ms[i].OOB, sa) -+ } -+ return hs -+} -+ -+// syscaller is a helper to invoke recvmmsg and sendmmsg via the RawConn.Read/Write interface. -+// It is reusable, to amortize the overhead of allocating a closure for the function passed to -+// RawConn.Read/Write. -+type syscaller struct { -+ n int -+ operr error -+ hs mmsghdrs -+ flags int -+ -+ boundRecvmmsgF func(uintptr) bool -+ boundSendmmsgF func(uintptr) bool -+} -+ -+func (r *syscaller) init() { -+ r.boundRecvmmsgF = r.recvmmsgF -+ r.boundSendmmsgF = r.sendmmsgF -+} -+ -+func (r *syscaller) recvmmsg(c syscall.RawConn, hs mmsghdrs, flags int) (int, error) { -+ r.n = 0 -+ r.operr = nil -+ r.hs = hs -+ r.flags = flags -+ if err := c.Read(r.boundRecvmmsgF); err != nil { -+ return r.n, err -+ } -+ if r.operr != nil { -+ return r.n, os.NewSyscallError("recvmmsg", r.operr) -+ } -+ return r.n, nil -+} -+ -+func (r *syscaller) recvmmsgF(s uintptr) bool { -+ r.n, r.operr = recvmmsg(s, r.hs, r.flags) -+ return ioComplete(r.flags, r.operr) -+} -+ -+func (r *syscaller) sendmmsg(c syscall.RawConn, hs mmsghdrs, flags int) (int, error) { -+ r.n = 0 -+ r.operr = nil -+ r.hs = hs -+ r.flags = flags -+ if err := c.Write(r.boundSendmmsgF); err != nil { -+ return r.n, err -+ } -+ if r.operr != nil { -+ return r.n, os.NewSyscallError("sendmmsg", r.operr) -+ } -+ return r.n, nil -+} -+ -+func (r *syscaller) sendmmsgF(s uintptr) bool { -+ r.n, r.operr = sendmmsg(s, r.hs, r.flags) -+ return ioComplete(r.flags, r.operr) -+} -+ -+// mmsgTmps holds reusable temporary helpers for recvmmsg and sendmmsg. -+type mmsgTmps struct { -+ packer mmsghdrsPacker -+ syscaller syscaller -+} -+ -+var defaultMmsgTmpsPool = mmsgTmpsPool{ -+ p: sync.Pool{ -+ New: func() interface{} { -+ tmps := new(mmsgTmps) -+ tmps.syscaller.init() -+ return tmps -+ }, -+ }, -+} -+ -+type mmsgTmpsPool struct { -+ p sync.Pool -+} -+ -+func (p *mmsgTmpsPool) Get() *mmsgTmps { -+ return p.p.Get().(*mmsgTmps) -+} -+ -+func (p *mmsgTmpsPool) Put(tmps *mmsgTmps) { -+ p.p.Put(tmps) -+} -diff --git a/vendor/golang.org/x/net/internal/socket/msghdr_bsd.go b/vendor/golang.org/x/net/internal/socket/msghdr_bsd.go -index 77f44c1..25f6847 100644 ---- a/vendor/golang.org/x/net/internal/socket/msghdr_bsd.go -+++ b/vendor/golang.org/x/net/internal/socket/msghdr_bsd.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build aix || darwin || dragonfly || freebsd || netbsd || openbsd - // +build aix darwin dragonfly freebsd netbsd openbsd - - package socket -diff --git a/vendor/golang.org/x/net/internal/socket/msghdr_bsdvar.go b/vendor/golang.org/x/net/internal/socket/msghdr_bsdvar.go -index c5562dd..5b8e00f 100644 ---- a/vendor/golang.org/x/net/internal/socket/msghdr_bsdvar.go -+++ b/vendor/golang.org/x/net/internal/socket/msghdr_bsdvar.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build aix || darwin || dragonfly || freebsd || netbsd - // +build aix darwin dragonfly freebsd netbsd - - package socket -diff --git a/vendor/golang.org/x/net/internal/socket/msghdr_linux.go b/vendor/golang.org/x/net/internal/socket/msghdr_linux.go -index 5a38798..c3c7cc4 100644 ---- a/vendor/golang.org/x/net/internal/socket/msghdr_linux.go -+++ b/vendor/golang.org/x/net/internal/socket/msghdr_linux.go -@@ -17,6 +17,9 @@ func (h *msghdr) pack(vs []iovec, bs [][]byte, oob []byte, sa []byte) { - if sa != nil { - h.Name = (*byte)(unsafe.Pointer(&sa[0])) - h.Namelen = uint32(len(sa)) -+ } else { -+ h.Name = nil -+ h.Namelen = 0 - } - } - -diff --git a/vendor/golang.org/x/net/internal/socket/msghdr_linux_32bit.go b/vendor/golang.org/x/net/internal/socket/msghdr_linux_32bit.go -index a7a5987..b4658fb 100644 ---- a/vendor/golang.org/x/net/internal/socket/msghdr_linux_32bit.go -+++ b/vendor/golang.org/x/net/internal/socket/msghdr_linux_32bit.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build arm mips mipsle 386 -+//go:build (arm || mips || mipsle || 386 || ppc) && linux -+// +build arm mips mipsle 386 ppc - // +build linux - - package socket -diff --git a/vendor/golang.org/x/net/internal/socket/msghdr_linux_64bit.go b/vendor/golang.org/x/net/internal/socket/msghdr_linux_64bit.go -index e731833..42411af 100644 ---- a/vendor/golang.org/x/net/internal/socket/msghdr_linux_64bit.go -+++ b/vendor/golang.org/x/net/internal/socket/msghdr_linux_64bit.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build arm64 amd64 ppc64 ppc64le mips64 mips64le riscv64 s390x -+//go:build (arm64 || amd64 || loong64 || ppc64 || ppc64le || mips64 || mips64le || riscv64 || s390x) && linux -+// +build arm64 amd64 loong64 ppc64 ppc64le mips64 mips64le riscv64 s390x - // +build linux - - package socket -diff --git a/vendor/golang.org/x/net/internal/socket/msghdr_solaris_64bit.go b/vendor/golang.org/x/net/internal/socket/msghdr_solaris_64bit.go -index 6465b20..3098f5d 100644 ---- a/vendor/golang.org/x/net/internal/socket/msghdr_solaris_64bit.go -+++ b/vendor/golang.org/x/net/internal/socket/msghdr_solaris_64bit.go -@@ -2,8 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build amd64 --// +build solaris -+//go:build amd64 && solaris -+// +build amd64,solaris - - package socket - -diff --git a/vendor/golang.org/x/net/internal/socket/msghdr_stub.go b/vendor/golang.org/x/net/internal/socket/msghdr_stub.go -index 873490a..eb79151 100644 ---- a/vendor/golang.org/x/net/internal/socket/msghdr_stub.go -+++ b/vendor/golang.org/x/net/internal/socket/msghdr_stub.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris -+//go:build !aix && !darwin && !dragonfly && !freebsd && !linux && !netbsd && !openbsd && !solaris && !zos -+// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!zos - - package socket - -diff --git a/vendor/golang.org/x/net/internal/socket/msghdr_zos_s390x.go b/vendor/golang.org/x/net/internal/socket/msghdr_zos_s390x.go -new file mode 100644 -index 0000000..324e9ee ---- /dev/null -+++ b/vendor/golang.org/x/net/internal/socket/msghdr_zos_s390x.go -@@ -0,0 +1,36 @@ -+// Copyright 2020 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build s390x && zos -+// +build s390x,zos -+ -+package socket -+ -+import "unsafe" -+ -+func (h *msghdr) pack(vs []iovec, bs [][]byte, oob []byte, sa []byte) { -+ for i := range vs { -+ vs[i].set(bs[i]) -+ } -+ if len(vs) > 0 { -+ h.Iov = &vs[0] -+ h.Iovlen = int32(len(vs)) -+ } -+ if len(oob) > 0 { -+ h.Control = (*byte)(unsafe.Pointer(&oob[0])) -+ h.Controllen = uint32(len(oob)) -+ } -+ if sa != nil { -+ h.Name = (*byte)(unsafe.Pointer(&sa[0])) -+ h.Namelen = uint32(len(sa)) -+ } -+} -+ -+func (h *msghdr) controllen() int { -+ return int(h.Controllen) -+} -+ -+func (h *msghdr) flags() int { -+ return int(h.Flags) -+} -diff --git a/vendor/golang.org/x/net/internal/socket/norace.go b/vendor/golang.org/x/net/internal/socket/norace.go -index 9519ffb..de0ad42 100644 ---- a/vendor/golang.org/x/net/internal/socket/norace.go -+++ b/vendor/golang.org/x/net/internal/socket/norace.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build !race - // +build !race - - package socket -diff --git a/vendor/golang.org/x/net/internal/socket/race.go b/vendor/golang.org/x/net/internal/socket/race.go -index df60c62..f0a28a6 100644 ---- a/vendor/golang.org/x/net/internal/socket/race.go -+++ b/vendor/golang.org/x/net/internal/socket/race.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build race - // +build race - - package socket -diff --git a/vendor/golang.org/x/net/internal/socket/rawconn.go b/vendor/golang.org/x/net/internal/socket/rawconn.go -index b07b890..87e8107 100644 ---- a/vendor/golang.org/x/net/internal/socket/rawconn.go -+++ b/vendor/golang.org/x/net/internal/socket/rawconn.go -@@ -17,18 +17,45 @@ type Conn struct { - c syscall.RawConn - } - -+// tcpConn is an interface implemented by net.TCPConn. -+// It can be used for interface assertions to check if a net.Conn is a TCP connection. -+type tcpConn interface { -+ SyscallConn() (syscall.RawConn, error) -+ SetLinger(int) error -+} -+ -+var _ tcpConn = (*net.TCPConn)(nil) -+ -+// udpConn is an interface implemented by net.UDPConn. -+// It can be used for interface assertions to check if a net.Conn is a UDP connection. -+type udpConn interface { -+ SyscallConn() (syscall.RawConn, error) -+ ReadMsgUDP(b, oob []byte) (n, oobn, flags int, addr *net.UDPAddr, err error) -+} -+ -+var _ udpConn = (*net.UDPConn)(nil) -+ -+// ipConn is an interface implemented by net.IPConn. -+// It can be used for interface assertions to check if a net.Conn is an IP connection. -+type ipConn interface { -+ SyscallConn() (syscall.RawConn, error) -+ ReadMsgIP(b, oob []byte) (n, oobn, flags int, addr *net.IPAddr, err error) -+} -+ -+var _ ipConn = (*net.IPConn)(nil) -+ - // NewConn returns a new raw connection. - func NewConn(c net.Conn) (*Conn, error) { - var err error - var cc Conn - switch c := c.(type) { -- case *net.TCPConn: -+ case tcpConn: - cc.network = "tcp" - cc.c, err = c.SyscallConn() -- case *net.UDPConn: -+ case udpConn: - cc.network = "udp" - cc.c, err = c.SyscallConn() -- case *net.IPConn: -+ case ipConn: - cc.network = "ip" - cc.c, err = c.SyscallConn() - default: -diff --git a/vendor/golang.org/x/net/internal/socket/rawconn_mmsg.go b/vendor/golang.org/x/net/internal/socket/rawconn_mmsg.go -index d01fc4c..8f79b38 100644 ---- a/vendor/golang.org/x/net/internal/socket/rawconn_mmsg.go -+++ b/vendor/golang.org/x/net/internal/socket/rawconn_mmsg.go -@@ -2,43 +2,30 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build linux - // +build linux - - package socket - - import ( - "net" -- "os" -- "syscall" - ) - - func (c *Conn) recvMsgs(ms []Message, flags int) (int, error) { - for i := range ms { - ms[i].raceWrite() - } -- hs := make(mmsghdrs, len(ms)) -+ tmps := defaultMmsgTmpsPool.Get() -+ defer defaultMmsgTmpsPool.Put(tmps) - var parseFn func([]byte, string) (net.Addr, error) - if c.network != "tcp" { - parseFn = parseInetAddr - } -- if err := hs.pack(ms, parseFn, nil); err != nil { -- return 0, err -- } -- var operr error -- var n int -- fn := func(s uintptr) bool { -- n, operr = recvmmsg(s, hs, flags) -- if operr == syscall.EAGAIN { -- return false -- } -- return true -- } -- if err := c.c.Read(fn); err != nil { -+ hs := tmps.packer.pack(ms, parseFn, nil) -+ n, err := tmps.syscaller.recvmmsg(c.c, hs, flags) -+ if err != nil { - return n, err - } -- if operr != nil { -- return n, os.NewSyscallError("recvmmsg", operr) -- } - if err := hs[:n].unpack(ms[:n], parseFn, c.network); err != nil { - return n, err - } -@@ -49,29 +36,17 @@ func (c *Conn) sendMsgs(ms []Message, flags int) (int, error) { - for i := range ms { - ms[i].raceRead() - } -- hs := make(mmsghdrs, len(ms)) -- var marshalFn func(net.Addr) []byte -+ tmps := defaultMmsgTmpsPool.Get() -+ defer defaultMmsgTmpsPool.Put(tmps) -+ var marshalFn func(net.Addr, []byte) int - if c.network != "tcp" { - marshalFn = marshalInetAddr - } -- if err := hs.pack(ms, nil, marshalFn); err != nil { -- return 0, err -- } -- var operr error -- var n int -- fn := func(s uintptr) bool { -- n, operr = sendmmsg(s, hs, flags) -- if operr == syscall.EAGAIN { -- return false -- } -- return true -- } -- if err := c.c.Write(fn); err != nil { -+ hs := tmps.packer.pack(ms, nil, marshalFn) -+ n, err := tmps.syscaller.sendmmsg(c.c, hs, flags) -+ if err != nil { - return n, err - } -- if operr != nil { -- return n, os.NewSyscallError("sendmmsg", operr) -- } - if err := hs[:n].unpack(ms[:n], nil, ""); err != nil { - return n, err - } -diff --git a/vendor/golang.org/x/net/internal/socket/rawconn_msg.go b/vendor/golang.org/x/net/internal/socket/rawconn_msg.go -index d5ae3f8..f7d0b0d 100644 ---- a/vendor/golang.org/x/net/internal/socket/rawconn_msg.go -+++ b/vendor/golang.org/x/net/internal/socket/rawconn_msg.go -@@ -2,32 +2,28 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris windows -+//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || windows || zos -+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris windows zos - - package socket - - import ( -+ "net" - "os" -- "syscall" - ) - - func (c *Conn) recvMsg(m *Message, flags int) error { - m.raceWrite() -- var h msghdr -- vs := make([]iovec, len(m.Buffers)) -- var sa []byte -- if c.network != "tcp" { -- sa = make([]byte, sizeofSockaddrInet6) -- } -- h.pack(vs, m.Buffers, m.OOB, sa) -- var operr error -- var n int -+ var ( -+ operr error -+ n int -+ oobn int -+ recvflags int -+ from net.Addr -+ ) - fn := func(s uintptr) bool { -- n, operr = recvmsg(s, &h, flags) -- if operr == syscall.EAGAIN { -- return false -- } -- return true -+ n, oobn, recvflags, from, operr = recvmsg(s, m.Buffers, m.OOB, flags, c.network) -+ return ioComplete(flags, operr) - } - if err := c.c.Read(fn); err != nil { - return err -@@ -35,36 +31,22 @@ func (c *Conn) recvMsg(m *Message, flags int) error { - if operr != nil { - return os.NewSyscallError("recvmsg", operr) - } -- if c.network != "tcp" { -- var err error -- m.Addr, err = parseInetAddr(sa[:], c.network) -- if err != nil { -- return err -- } -- } -+ m.Addr = from - m.N = n -- m.NN = h.controllen() -- m.Flags = h.flags() -+ m.NN = oobn -+ m.Flags = recvflags - return nil - } - - func (c *Conn) sendMsg(m *Message, flags int) error { - m.raceRead() -- var h msghdr -- vs := make([]iovec, len(m.Buffers)) -- var sa []byte -- if m.Addr != nil { -- sa = marshalInetAddr(m.Addr) -- } -- h.pack(vs, m.Buffers, m.OOB, sa) -- var operr error -- var n int -+ var ( -+ operr error -+ n int -+ ) - fn := func(s uintptr) bool { -- n, operr = sendmsg(s, &h, flags) -- if operr == syscall.EAGAIN { -- return false -- } -- return true -+ n, operr = sendmsg(s, m.Buffers, m.OOB, m.Addr, flags) -+ return ioComplete(flags, operr) - } - if err := c.c.Write(fn); err != nil { - return err -diff --git a/vendor/golang.org/x/net/internal/socket/rawconn_nommsg.go b/vendor/golang.org/x/net/internal/socket/rawconn_nommsg.go -index fe5bb94..02f3285 100644 ---- a/vendor/golang.org/x/net/internal/socket/rawconn_nommsg.go -+++ b/vendor/golang.org/x/net/internal/socket/rawconn_nommsg.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build !linux - // +build !linux - - package socket -diff --git a/vendor/golang.org/x/net/internal/socket/rawconn_nomsg.go b/vendor/golang.org/x/net/internal/socket/rawconn_nomsg.go -index b8cea6f..dd78587 100644 ---- a/vendor/golang.org/x/net/internal/socket/rawconn_nomsg.go -+++ b/vendor/golang.org/x/net/internal/socket/rawconn_nomsg.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!windows -+//go:build !aix && !darwin && !dragonfly && !freebsd && !linux && !netbsd && !openbsd && !solaris && !windows && !zos -+// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!windows,!zos - - package socket - -diff --git a/vendor/golang.org/x/net/internal/socket/socket.go b/vendor/golang.org/x/net/internal/socket/socket.go -index 23571b8..dba47bf 100644 ---- a/vendor/golang.org/x/net/internal/socket/socket.go -+++ b/vendor/golang.org/x/net/internal/socket/socket.go -@@ -90,17 +90,9 @@ func (o *Option) SetInt(c *Conn, v int) error { - return o.set(c, b) - } - --func controlHeaderLen() int { -- return roundup(sizeofCmsghdr) --} -- --func controlMessageLen(dataLen int) int { -- return roundup(sizeofCmsghdr) + dataLen --} -- - // ControlMessageSpace returns the whole length of control message. - func ControlMessageSpace(dataLen int) int { -- return roundup(sizeofCmsghdr) + roundup(dataLen) -+ return controlMessageSpace(dataLen) - } - - // A ControlMessage represents the head message in a stream of control -diff --git a/vendor/golang.org/x/net/internal/socket/sys.go b/vendor/golang.org/x/net/internal/socket/sys.go -index ee492ba..4a26af1 100644 ---- a/vendor/golang.org/x/net/internal/socket/sys.go -+++ b/vendor/golang.org/x/net/internal/socket/sys.go -@@ -9,13 +9,8 @@ import ( - "unsafe" - ) - --var ( -- // NativeEndian is the machine native endian implementation of -- // ByteOrder. -- NativeEndian binary.ByteOrder -- -- kernelAlign int --) -+// NativeEndian is the machine native endian implementation of ByteOrder. -+var NativeEndian binary.ByteOrder - - func init() { - i := uint32(1) -@@ -25,9 +20,4 @@ func init() { - } else { - NativeEndian = binary.BigEndian - } -- kernelAlign = probeProtocolStack() --} -- --func roundup(l int) int { -- return (l + kernelAlign - 1) &^ (kernelAlign - 1) - } -diff --git a/vendor/golang.org/x/net/internal/socket/sys_bsd.go b/vendor/golang.org/x/net/internal/socket/sys_bsd.go -index d432835..b258879 100644 ---- a/vendor/golang.org/x/net/internal/socket/sys_bsd.go -+++ b/vendor/golang.org/x/net/internal/socket/sys_bsd.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build aix darwin dragonfly freebsd openbsd -+//go:build aix || darwin || dragonfly || freebsd || openbsd || solaris -+// +build aix darwin dragonfly freebsd openbsd solaris - - package socket - -diff --git a/vendor/golang.org/x/net/internal/socket/sys_bsdvar.go b/vendor/golang.org/x/net/internal/socket/sys_bsdvar.go -deleted file mode 100644 -index b4f41b5..0000000 ---- a/vendor/golang.org/x/net/internal/socket/sys_bsdvar.go -+++ /dev/null -@@ -1,23 +0,0 @@ --// Copyright 2017 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --// +build aix freebsd netbsd openbsd -- --package socket -- --import ( -- "runtime" -- "unsafe" --) -- --func probeProtocolStack() int { -- if (runtime.GOOS == "netbsd" || runtime.GOOS == "openbsd") && runtime.GOARCH == "arm" { -- return 8 -- } -- if runtime.GOOS == "aix" { -- return 1 -- } -- var p uintptr -- return int(unsafe.Sizeof(p)) --} -diff --git a/vendor/golang.org/x/net/internal/socket/sys_const_unix.go b/vendor/golang.org/x/net/internal/socket/sys_const_unix.go -index 43797d6..5d99f23 100644 ---- a/vendor/golang.org/x/net/internal/socket/sys_const_unix.go -+++ b/vendor/golang.org/x/net/internal/socket/sys_const_unix.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris -+//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos -+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris zos - - package socket - -@@ -14,4 +15,7 @@ const ( - sysAF_INET6 = unix.AF_INET6 - - sysSOCK_RAW = unix.SOCK_RAW -+ -+ sizeofSockaddrInet4 = unix.SizeofSockaddrInet4 -+ sizeofSockaddrInet6 = unix.SizeofSockaddrInet6 - ) -diff --git a/vendor/golang.org/x/net/internal/socket/sys_dragonfly.go b/vendor/golang.org/x/net/internal/socket/sys_dragonfly.go -deleted file mode 100644 -index ed0448f..0000000 ---- a/vendor/golang.org/x/net/internal/socket/sys_dragonfly.go -+++ /dev/null -@@ -1,32 +0,0 @@ --// Copyright 2017 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --package socket -- --import ( -- "sync" -- "syscall" -- "unsafe" --) -- --// See version list in https://github.com/DragonFlyBSD/DragonFlyBSD/blob/master/sys/sys/param.h --var ( -- osreldateOnce sync.Once -- osreldate uint32 --) -- --// First __DragonFly_version after September 2019 ABI changes --// http://lists.dragonflybsd.org/pipermail/users/2019-September/358280.html --const _dragonflyABIChangeVersion = 500705 -- --func probeProtocolStack() int { -- osreldateOnce.Do(func() { osreldate, _ = syscall.SysctlUint32("kern.osreldate") }) -- var p uintptr -- if int(unsafe.Sizeof(p)) == 8 && osreldate >= _dragonflyABIChangeVersion { -- return int(unsafe.Sizeof(p)) -- } -- // 64-bit Dragonfly before the September 2019 ABI changes still requires -- // 32-bit aligned access to network subsystem. -- return 4 --} -diff --git a/vendor/golang.org/x/net/internal/socket/sys_go1_11_darwin.go b/vendor/golang.org/x/net/internal/socket/sys_go1_11_darwin.go -deleted file mode 100644 -index 02d2b3c..0000000 ---- a/vendor/golang.org/x/net/internal/socket/sys_go1_11_darwin.go -+++ /dev/null -@@ -1,33 +0,0 @@ --// Copyright 2018 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --// +build !go1.12 -- --package socket -- --import ( -- "syscall" -- "unsafe" --) -- --func getsockopt(s uintptr, level, name int, b []byte) (int, error) { -- l := uint32(len(b)) -- _, _, errno := syscall.Syscall6(syscall.SYS_GETSOCKOPT, s, uintptr(level), uintptr(name), uintptr(unsafe.Pointer(&b[0])), uintptr(unsafe.Pointer(&l)), 0) -- return int(l), errnoErr(errno) --} -- --func setsockopt(s uintptr, level, name int, b []byte) error { -- _, _, errno := syscall.Syscall6(syscall.SYS_SETSOCKOPT, s, uintptr(level), uintptr(name), uintptr(unsafe.Pointer(&b[0])), uintptr(len(b)), 0) -- return errnoErr(errno) --} -- --func recvmsg(s uintptr, h *msghdr, flags int) (int, error) { -- n, _, errno := syscall.Syscall(syscall.SYS_RECVMSG, s, uintptr(unsafe.Pointer(h)), uintptr(flags)) -- return int(n), errnoErr(errno) --} -- --func sendmsg(s uintptr, h *msghdr, flags int) (int, error) { -- n, _, errno := syscall.Syscall(syscall.SYS_SENDMSG, s, uintptr(unsafe.Pointer(h)), uintptr(flags)) -- return int(n), errnoErr(errno) --} -diff --git a/vendor/golang.org/x/net/internal/socket/sys_linkname.go b/vendor/golang.org/x/net/internal/socket/sys_linkname.go -deleted file mode 100644 -index 61c3f38..0000000 ---- a/vendor/golang.org/x/net/internal/socket/sys_linkname.go -+++ /dev/null -@@ -1,42 +0,0 @@ --// Copyright 2018 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --// +build aix go1.12,darwin -- --package socket -- --import ( -- "syscall" -- "unsafe" --) -- --//go:linkname syscall_getsockopt syscall.getsockopt --func syscall_getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *uint32) error -- --func getsockopt(s uintptr, level, name int, b []byte) (int, error) { -- l := uint32(len(b)) -- err := syscall_getsockopt(int(s), level, name, unsafe.Pointer(&b[0]), &l) -- return int(l), err --} -- --//go:linkname syscall_setsockopt syscall.setsockopt --func syscall_setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) error -- --func setsockopt(s uintptr, level, name int, b []byte) error { -- return syscall_setsockopt(int(s), level, name, unsafe.Pointer(&b[0]), uintptr(len(b))) --} -- --//go:linkname syscall_recvmsg syscall.recvmsg --func syscall_recvmsg(s int, msg *syscall.Msghdr, flags int) (n int, err error) -- --func recvmsg(s uintptr, h *msghdr, flags int) (int, error) { -- return syscall_recvmsg(int(s), (*syscall.Msghdr)(unsafe.Pointer(h)), flags) --} -- --//go:linkname syscall_sendmsg syscall.sendmsg --func syscall_sendmsg(s int, msg *syscall.Msghdr, flags int) (n int, err error) -- --func sendmsg(s uintptr, h *msghdr, flags int) (int, error) { -- return syscall_sendmsg(int(s), (*syscall.Msghdr)(unsafe.Pointer(h)), flags) --} -diff --git a/vendor/golang.org/x/net/internal/socket/sys_linux.go b/vendor/golang.org/x/net/internal/socket/sys_linux.go -index 1559521..76f5b8a 100644 ---- a/vendor/golang.org/x/net/internal/socket/sys_linux.go -+++ b/vendor/golang.org/x/net/internal/socket/sys_linux.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build linux && !s390x && !386 - // +build linux,!s390x,!386 - - package socket -@@ -11,11 +12,6 @@ import ( - "unsafe" - ) - --func probeProtocolStack() int { -- var p uintptr -- return int(unsafe.Sizeof(p)) --} -- - func recvmmsg(s uintptr, hs []mmsghdr, flags int) (int, error) { - n, _, errno := syscall.Syscall6(sysRECVMMSG, s, uintptr(unsafe.Pointer(&hs[0])), uintptr(len(hs)), uintptr(flags), 0, 0) - return int(n), errnoErr(errno) -diff --git a/vendor/golang.org/x/net/internal/socket/sys_linux_386.go b/vendor/golang.org/x/net/internal/socket/sys_linux_386.go -index 235b2cc..c877ef2 100644 ---- a/vendor/golang.org/x/net/internal/socket/sys_linux_386.go -+++ b/vendor/golang.org/x/net/internal/socket/sys_linux_386.go -@@ -9,41 +9,14 @@ import ( - "unsafe" - ) - --func probeProtocolStack() int { return 4 } -- - const ( -- sysSETSOCKOPT = 0xe -- sysGETSOCKOPT = 0xf -- sysSENDMSG = 0x10 -- sysRECVMSG = 0x11 -- sysRECVMMSG = 0x13 -- sysSENDMMSG = 0x14 -+ sysRECVMMSG = 0x13 -+ sysSENDMMSG = 0x14 - ) - - func socketcall(call, a0, a1, a2, a3, a4, a5 uintptr) (uintptr, syscall.Errno) - func rawsocketcall(call, a0, a1, a2, a3, a4, a5 uintptr) (uintptr, syscall.Errno) - --func getsockopt(s uintptr, level, name int, b []byte) (int, error) { -- l := uint32(len(b)) -- _, errno := socketcall(sysGETSOCKOPT, s, uintptr(level), uintptr(name), uintptr(unsafe.Pointer(&b[0])), uintptr(unsafe.Pointer(&l)), 0) -- return int(l), errnoErr(errno) --} -- --func setsockopt(s uintptr, level, name int, b []byte) error { -- _, errno := socketcall(sysSETSOCKOPT, s, uintptr(level), uintptr(name), uintptr(unsafe.Pointer(&b[0])), uintptr(len(b)), 0) -- return errnoErr(errno) --} -- --func recvmsg(s uintptr, h *msghdr, flags int) (int, error) { -- n, errno := socketcall(sysRECVMSG, s, uintptr(unsafe.Pointer(h)), uintptr(flags), 0, 0, 0) -- return int(n), errnoErr(errno) --} -- --func sendmsg(s uintptr, h *msghdr, flags int) (int, error) { -- n, errno := socketcall(sysSENDMSG, s, uintptr(unsafe.Pointer(h)), uintptr(flags), 0, 0, 0) -- return int(n), errnoErr(errno) --} -- - func recvmmsg(s uintptr, hs []mmsghdr, flags int) (int, error) { - n, errno := socketcall(sysRECVMMSG, s, uintptr(unsafe.Pointer(&hs[0])), uintptr(len(hs)), uintptr(flags), 0, 0) - return int(n), errnoErr(errno) -diff --git a/vendor/golang.org/x/net/internal/socket/sys_linux_loong64.go b/vendor/golang.org/x/net/internal/socket/sys_linux_loong64.go -new file mode 100644 -index 0000000..af964e6 ---- /dev/null -+++ b/vendor/golang.org/x/net/internal/socket/sys_linux_loong64.go -@@ -0,0 +1,13 @@ -+// Copyright 2021 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build loong64 -+// +build loong64 -+ -+package socket -+ -+const ( -+ sysRECVMMSG = 0xf3 -+ sysSENDMMSG = 0x10d -+) -diff --git a/vendor/golang.org/x/net/internal/socket/sys_darwin.go b/vendor/golang.org/x/net/internal/socket/sys_linux_ppc.go -similarity index 53% -rename from vendor/golang.org/x/net/internal/socket/sys_darwin.go -rename to vendor/golang.org/x/net/internal/socket/sys_linux_ppc.go -index b17d223..90cfaa9 100644 ---- a/vendor/golang.org/x/net/internal/socket/sys_darwin.go -+++ b/vendor/golang.org/x/net/internal/socket/sys_linux_ppc.go -@@ -1,7 +1,10 @@ --// Copyright 2017 The Go Authors. All rights reserved. -+// Copyright 2021 The Go Authors. All rights reserved. - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - - package socket - --func probeProtocolStack() int { return 4 } -+const ( -+ sysRECVMMSG = 0x157 -+ sysSENDMMSG = 0x15d -+) -diff --git a/vendor/golang.org/x/net/internal/socket/sys_linux_riscv64.go b/vendor/golang.org/x/net/internal/socket/sys_linux_riscv64.go -index 64f69f1..5b128fb 100644 ---- a/vendor/golang.org/x/net/internal/socket/sys_linux_riscv64.go -+++ b/vendor/golang.org/x/net/internal/socket/sys_linux_riscv64.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build riscv64 - // +build riscv64 - - package socket -diff --git a/vendor/golang.org/x/net/internal/socket/sys_linux_s390x.go b/vendor/golang.org/x/net/internal/socket/sys_linux_s390x.go -index 327979e..c877ef2 100644 ---- a/vendor/golang.org/x/net/internal/socket/sys_linux_s390x.go -+++ b/vendor/golang.org/x/net/internal/socket/sys_linux_s390x.go -@@ -9,41 +9,14 @@ import ( - "unsafe" - ) - --func probeProtocolStack() int { return 8 } -- - const ( -- sysSETSOCKOPT = 0xe -- sysGETSOCKOPT = 0xf -- sysSENDMSG = 0x10 -- sysRECVMSG = 0x11 -- sysRECVMMSG = 0x13 -- sysSENDMMSG = 0x14 -+ sysRECVMMSG = 0x13 -+ sysSENDMMSG = 0x14 - ) - - func socketcall(call, a0, a1, a2, a3, a4, a5 uintptr) (uintptr, syscall.Errno) - func rawsocketcall(call, a0, a1, a2, a3, a4, a5 uintptr) (uintptr, syscall.Errno) - --func getsockopt(s uintptr, level, name int, b []byte) (int, error) { -- l := uint32(len(b)) -- _, errno := socketcall(sysGETSOCKOPT, s, uintptr(level), uintptr(name), uintptr(unsafe.Pointer(&b[0])), uintptr(unsafe.Pointer(&l)), 0) -- return int(l), errnoErr(errno) --} -- --func setsockopt(s uintptr, level, name int, b []byte) error { -- _, errno := socketcall(sysSETSOCKOPT, s, uintptr(level), uintptr(name), uintptr(unsafe.Pointer(&b[0])), uintptr(len(b)), 0) -- return errnoErr(errno) --} -- --func recvmsg(s uintptr, h *msghdr, flags int) (int, error) { -- n, errno := socketcall(sysRECVMSG, s, uintptr(unsafe.Pointer(h)), uintptr(flags), 0, 0, 0) -- return int(n), errnoErr(errno) --} -- --func sendmsg(s uintptr, h *msghdr, flags int) (int, error) { -- n, errno := socketcall(sysSENDMSG, s, uintptr(unsafe.Pointer(h)), uintptr(flags), 0, 0, 0) -- return int(n), errnoErr(errno) --} -- - func recvmmsg(s uintptr, hs []mmsghdr, flags int) (int, error) { - n, errno := socketcall(sysRECVMMSG, s, uintptr(unsafe.Pointer(&hs[0])), uintptr(len(hs)), uintptr(flags), 0, 0) - return int(n), errnoErr(errno) -diff --git a/vendor/golang.org/x/net/internal/socket/sys_posix.go b/vendor/golang.org/x/net/internal/socket/sys_posix.go -index 22eae80..42b8f23 100644 ---- a/vendor/golang.org/x/net/internal/socket/sys_posix.go -+++ b/vendor/golang.org/x/net/internal/socket/sys_posix.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris windows -+//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || windows || zos -+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris windows zos - - package socket - -@@ -16,35 +17,36 @@ import ( - "time" - ) - --func marshalInetAddr(a net.Addr) []byte { -+// marshalInetAddr writes a in sockaddr format into the buffer b. -+// The buffer must be sufficiently large (sizeofSockaddrInet4/6). -+// Returns the number of bytes written. -+func marshalInetAddr(a net.Addr, b []byte) int { - switch a := a.(type) { - case *net.TCPAddr: -- return marshalSockaddr(a.IP, a.Port, a.Zone) -+ return marshalSockaddr(a.IP, a.Port, a.Zone, b) - case *net.UDPAddr: -- return marshalSockaddr(a.IP, a.Port, a.Zone) -+ return marshalSockaddr(a.IP, a.Port, a.Zone, b) - case *net.IPAddr: -- return marshalSockaddr(a.IP, 0, a.Zone) -+ return marshalSockaddr(a.IP, 0, a.Zone, b) - default: -- return nil -+ return 0 - } - } - --func marshalSockaddr(ip net.IP, port int, zone string) []byte { -+func marshalSockaddr(ip net.IP, port int, zone string, b []byte) int { - if ip4 := ip.To4(); ip4 != nil { -- b := make([]byte, sizeofSockaddrInet) - switch runtime.GOOS { - case "android", "illumos", "linux", "solaris", "windows": - NativeEndian.PutUint16(b[:2], uint16(sysAF_INET)) - default: -- b[0] = sizeofSockaddrInet -+ b[0] = sizeofSockaddrInet4 - b[1] = sysAF_INET - } - binary.BigEndian.PutUint16(b[2:4], uint16(port)) - copy(b[4:8], ip4) -- return b -+ return sizeofSockaddrInet4 - } - if ip6 := ip.To16(); ip6 != nil && ip.To4() == nil { -- b := make([]byte, sizeofSockaddrInet6) - switch runtime.GOOS { - case "android", "illumos", "linux", "solaris", "windows": - NativeEndian.PutUint16(b[:2], uint16(sysAF_INET6)) -@@ -57,9 +59,9 @@ func marshalSockaddr(ip net.IP, port int, zone string) []byte { - if zone != "" { - NativeEndian.PutUint32(b[24:28], uint32(zoneCache.index(zone))) - } -- return b -+ return sizeofSockaddrInet6 - } -- return nil -+ return 0 - } - - func parseInetAddr(b []byte, network string) (net.Addr, error) { -@@ -76,7 +78,7 @@ func parseInetAddr(b []byte, network string) (net.Addr, error) { - var ip net.IP - var zone string - if af == sysAF_INET { -- if len(b) < sizeofSockaddrInet { -+ if len(b) < sizeofSockaddrInet4 { - return nil, errors.New("short address") - } - ip = make(net.IP, net.IPv4len) -diff --git a/vendor/golang.org/x/net/internal/socket/sys_solaris.go b/vendor/golang.org/x/net/internal/socket/sys_solaris.go -deleted file mode 100644 -index 66b5547..0000000 ---- a/vendor/golang.org/x/net/internal/socket/sys_solaris.go -+++ /dev/null -@@ -1,70 +0,0 @@ --// Copyright 2017 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --package socket -- --import ( -- "runtime" -- "syscall" -- "unsafe" --) -- --func probeProtocolStack() int { -- switch runtime.GOARCH { -- case "amd64": -- return 4 -- default: -- var p uintptr -- return int(unsafe.Sizeof(p)) -- } --} -- --//go:cgo_import_dynamic libc___xnet_getsockopt __xnet_getsockopt "libsocket.so" --//go:cgo_import_dynamic libc_setsockopt setsockopt "libsocket.so" --//go:cgo_import_dynamic libc___xnet_recvmsg __xnet_recvmsg "libsocket.so" --//go:cgo_import_dynamic libc___xnet_sendmsg __xnet_sendmsg "libsocket.so" -- --//go:linkname procGetsockopt libc___xnet_getsockopt --//go:linkname procSetsockopt libc_setsockopt --//go:linkname procRecvmsg libc___xnet_recvmsg --//go:linkname procSendmsg libc___xnet_sendmsg -- --var ( -- procGetsockopt uintptr -- procSetsockopt uintptr -- procRecvmsg uintptr -- procSendmsg uintptr --) -- --func sysvicall6(trap, nargs, a1, a2, a3, a4, a5, a6 uintptr) (uintptr, uintptr, syscall.Errno) --func rawSysvicall6(trap, nargs, a1, a2, a3, a4, a5, a6 uintptr) (uintptr, uintptr, syscall.Errno) -- --func getsockopt(s uintptr, level, name int, b []byte) (int, error) { -- l := uint32(len(b)) -- _, _, errno := sysvicall6(uintptr(unsafe.Pointer(&procGetsockopt)), 5, s, uintptr(level), uintptr(name), uintptr(unsafe.Pointer(&b[0])), uintptr(unsafe.Pointer(&l)), 0) -- return int(l), errnoErr(errno) --} -- --func setsockopt(s uintptr, level, name int, b []byte) error { -- _, _, errno := sysvicall6(uintptr(unsafe.Pointer(&procSetsockopt)), 5, s, uintptr(level), uintptr(name), uintptr(unsafe.Pointer(&b[0])), uintptr(len(b)), 0) -- return errnoErr(errno) --} -- --func recvmsg(s uintptr, h *msghdr, flags int) (int, error) { -- n, _, errno := sysvicall6(uintptr(unsafe.Pointer(&procRecvmsg)), 3, s, uintptr(unsafe.Pointer(h)), uintptr(flags), 0, 0, 0) -- return int(n), errnoErr(errno) --} -- --func sendmsg(s uintptr, h *msghdr, flags int) (int, error) { -- n, _, errno := sysvicall6(uintptr(unsafe.Pointer(&procSendmsg)), 3, s, uintptr(unsafe.Pointer(h)), uintptr(flags), 0, 0, 0) -- return int(n), errnoErr(errno) --} -- --func recvmmsg(s uintptr, hs []mmsghdr, flags int) (int, error) { -- return 0, errNotImplemented --} -- --func sendmmsg(s uintptr, hs []mmsghdr, flags int) (int, error) { -- return 0, errNotImplemented --} -diff --git a/vendor/golang.org/x/net/internal/socket/sys_solaris_amd64.s b/vendor/golang.org/x/net/internal/socket/sys_solaris_amd64.s -deleted file mode 100644 -index a18ac5e..0000000 ---- a/vendor/golang.org/x/net/internal/socket/sys_solaris_amd64.s -+++ /dev/null -@@ -1,11 +0,0 @@ --// Copyright 2016 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --#include "textflag.h" -- --TEXT ·sysvicall6(SB),NOSPLIT,$0-88 -- JMP syscall·sysvicall6(SB) -- --TEXT ·rawSysvicall6(SB),NOSPLIT,$0-88 -- JMP syscall·rawSysvicall6(SB) -diff --git a/vendor/golang.org/x/net/internal/socket/sys_stub.go b/vendor/golang.org/x/net/internal/socket/sys_stub.go -index 0f61742..7cfb349 100644 ---- a/vendor/golang.org/x/net/internal/socket/sys_stub.go -+++ b/vendor/golang.org/x/net/internal/socket/sys_stub.go -@@ -2,15 +2,12 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!windows -+//go:build !aix && !darwin && !dragonfly && !freebsd && !linux && !netbsd && !openbsd && !solaris && !windows && !zos -+// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!windows,!zos - - package socket - --import ( -- "net" -- "runtime" -- "unsafe" --) -+import "net" - - const ( - sysAF_UNSPEC = 0x0 -@@ -18,17 +15,10 @@ const ( - sysAF_INET6 = 0xa - - sysSOCK_RAW = 0x3 --) - --func probeProtocolStack() int { -- switch runtime.GOARCH { -- case "amd64p32", "mips64p32": -- return 4 -- default: -- var p uintptr -- return int(unsafe.Sizeof(p)) -- } --} -+ sizeofSockaddrInet4 = 0x10 -+ sizeofSockaddrInet6 = 0x1c -+) - - func marshalInetAddr(ip net.IP, port int, zone string) []byte { - return nil -@@ -46,11 +36,11 @@ func setsockopt(s uintptr, level, name int, b []byte) error { - return errNotImplemented - } - --func recvmsg(s uintptr, h *msghdr, flags int) (int, error) { -- return 0, errNotImplemented -+func recvmsg(s uintptr, buffers [][]byte, oob []byte, flags int, network string) (n, oobn int, recvflags int, from net.Addr, err error) { -+ return 0, 0, 0, nil, errNotImplemented - } - --func sendmsg(s uintptr, h *msghdr, flags int) (int, error) { -+func sendmsg(s uintptr, buffers [][]byte, oob []byte, to net.Addr, flags int) (int, error) { - return 0, errNotImplemented - } - -diff --git a/vendor/golang.org/x/net/internal/socket/sys_unix.go b/vendor/golang.org/x/net/internal/socket/sys_unix.go -index 0eb7128..de82393 100644 ---- a/vendor/golang.org/x/net/internal/socket/sys_unix.go -+++ b/vendor/golang.org/x/net/internal/socket/sys_unix.go -@@ -2,32 +2,121 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build dragonfly freebsd linux,!s390x,!386 netbsd openbsd -+//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris -+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris - - package socket - - import ( -- "syscall" -+ "net" - "unsafe" -+ -+ "golang.org/x/sys/unix" - ) - -+//go:linkname syscall_getsockopt syscall.getsockopt -+func syscall_getsockopt(s, level, name int, val unsafe.Pointer, vallen *uint32) error -+ -+//go:linkname syscall_setsockopt syscall.setsockopt -+func syscall_setsockopt(s, level, name int, val unsafe.Pointer, vallen uintptr) error -+ - func getsockopt(s uintptr, level, name int, b []byte) (int, error) { - l := uint32(len(b)) -- _, _, errno := syscall.Syscall6(syscall.SYS_GETSOCKOPT, s, uintptr(level), uintptr(name), uintptr(unsafe.Pointer(&b[0])), uintptr(unsafe.Pointer(&l)), 0) -- return int(l), errnoErr(errno) -+ err := syscall_getsockopt(int(s), level, name, unsafe.Pointer(&b[0]), &l) -+ return int(l), err - } - - func setsockopt(s uintptr, level, name int, b []byte) error { -- _, _, errno := syscall.Syscall6(syscall.SYS_SETSOCKOPT, s, uintptr(level), uintptr(name), uintptr(unsafe.Pointer(&b[0])), uintptr(len(b)), 0) -- return errnoErr(errno) -+ return syscall_setsockopt(int(s), level, name, unsafe.Pointer(&b[0]), uintptr(len(b))) - } - --func recvmsg(s uintptr, h *msghdr, flags int) (int, error) { -- n, _, errno := syscall.Syscall(syscall.SYS_RECVMSG, s, uintptr(unsafe.Pointer(h)), uintptr(flags)) -- return int(n), errnoErr(errno) -+func recvmsg(s uintptr, buffers [][]byte, oob []byte, flags int, network string) (n, oobn int, recvflags int, from net.Addr, err error) { -+ var unixFrom unix.Sockaddr -+ n, oobn, recvflags, unixFrom, err = unix.RecvmsgBuffers(int(s), buffers, oob, flags) -+ if unixFrom != nil { -+ from = sockaddrToAddr(unixFrom, network) -+ } -+ return - } - --func sendmsg(s uintptr, h *msghdr, flags int) (int, error) { -- n, _, errno := syscall.Syscall(syscall.SYS_SENDMSG, s, uintptr(unsafe.Pointer(h)), uintptr(flags)) -- return int(n), errnoErr(errno) -+func sendmsg(s uintptr, buffers [][]byte, oob []byte, to net.Addr, flags int) (int, error) { -+ var unixTo unix.Sockaddr -+ if to != nil { -+ unixTo = addrToSockaddr(to) -+ } -+ return unix.SendmsgBuffers(int(s), buffers, oob, unixTo, flags) -+} -+ -+// addrToSockaddr converts a net.Addr to a unix.Sockaddr. -+func addrToSockaddr(a net.Addr) unix.Sockaddr { -+ var ( -+ ip net.IP -+ port int -+ zone string -+ ) -+ switch a := a.(type) { -+ case *net.TCPAddr: -+ ip = a.IP -+ port = a.Port -+ zone = a.Zone -+ case *net.UDPAddr: -+ ip = a.IP -+ port = a.Port -+ zone = a.Zone -+ case *net.IPAddr: -+ ip = a.IP -+ zone = a.Zone -+ default: -+ return nil -+ } -+ -+ if ip4 := ip.To4(); ip4 != nil { -+ sa := unix.SockaddrInet4{Port: port} -+ copy(sa.Addr[:], ip4) -+ return &sa -+ } -+ -+ if ip6 := ip.To16(); ip6 != nil && ip.To4() == nil { -+ sa := unix.SockaddrInet6{Port: port} -+ copy(sa.Addr[:], ip6) -+ if zone != "" { -+ sa.ZoneId = uint32(zoneCache.index(zone)) -+ } -+ return &sa -+ } -+ -+ return nil -+} -+ -+// sockaddrToAddr converts a unix.Sockaddr to a net.Addr. -+func sockaddrToAddr(sa unix.Sockaddr, network string) net.Addr { -+ var ( -+ ip net.IP -+ port int -+ zone string -+ ) -+ switch sa := sa.(type) { -+ case *unix.SockaddrInet4: -+ ip = make(net.IP, net.IPv4len) -+ copy(ip, sa.Addr[:]) -+ port = sa.Port -+ case *unix.SockaddrInet6: -+ ip = make(net.IP, net.IPv6len) -+ copy(ip, sa.Addr[:]) -+ port = sa.Port -+ if sa.ZoneId > 0 { -+ zone = zoneCache.name(int(sa.ZoneId)) -+ } -+ default: -+ return nil -+ } -+ -+ switch network { -+ case "tcp", "tcp4", "tcp6": -+ return &net.TCPAddr{IP: ip, Port: port, Zone: zone} -+ case "udp", "udp4", "udp6": -+ return &net.UDPAddr{IP: ip, Port: port, Zone: zone} -+ default: -+ return &net.IPAddr{IP: ip, Zone: zone} -+ } - } -diff --git a/vendor/golang.org/x/net/internal/socket/sys_windows.go b/vendor/golang.org/x/net/internal/socket/sys_windows.go -index d556a44..b738b89 100644 ---- a/vendor/golang.org/x/net/internal/socket/sys_windows.go -+++ b/vendor/golang.org/x/net/internal/socket/sys_windows.go -@@ -5,6 +5,7 @@ - package socket - - import ( -+ "net" - "syscall" - "unsafe" - -@@ -22,25 +23,8 @@ const ( - sysAF_INET6 = windows.AF_INET6 - - sysSOCK_RAW = windows.SOCK_RAW --) -- --type sockaddrInet struct { -- Family uint16 -- Port uint16 -- Addr [4]byte /* in_addr */ -- Zero [8]uint8 --} - --type sockaddrInet6 struct { -- Family uint16 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- --const ( -- sizeofSockaddrInet = 0x10 -+ sizeofSockaddrInet4 = 0x10 - sizeofSockaddrInet6 = 0x1c - ) - -@@ -54,11 +38,11 @@ func setsockopt(s uintptr, level, name int, b []byte) error { - return syscall.Setsockopt(syscall.Handle(s), int32(level), int32(name), (*byte)(unsafe.Pointer(&b[0])), int32(len(b))) - } - --func recvmsg(s uintptr, h *msghdr, flags int) (int, error) { -- return 0, errNotImplemented -+func recvmsg(s uintptr, buffers [][]byte, oob []byte, flags int, network string) (n, oobn int, recvflags int, from net.Addr, err error) { -+ return 0, 0, 0, nil, errNotImplemented - } - --func sendmsg(s uintptr, h *msghdr, flags int) (int, error) { -+func sendmsg(s uintptr, buffers [][]byte, oob []byte, to net.Addr, flags int) (int, error) { - return 0, errNotImplemented - } - -diff --git a/vendor/golang.org/x/net/internal/socket/sys_zos_s390x.go b/vendor/golang.org/x/net/internal/socket/sys_zos_s390x.go -new file mode 100644 -index 0000000..eaa896c ---- /dev/null -+++ b/vendor/golang.org/x/net/internal/socket/sys_zos_s390x.go -@@ -0,0 +1,66 @@ -+// Copyright 2020 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+package socket -+ -+import ( -+ "net" -+ "syscall" -+ "unsafe" -+) -+ -+func syscall_syscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err syscall.Errno) -+func syscall_syscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err syscall.Errno) -+ -+func probeProtocolStack() int { -+ return 4 // sizeof(int) on GOOS=zos GOARCH=s390x -+} -+ -+func getsockopt(s uintptr, level, name int, b []byte) (int, error) { -+ l := uint32(len(b)) -+ _, _, errno := syscall_syscall6(syscall.SYS_GETSOCKOPT, s, uintptr(level), uintptr(name), uintptr(unsafe.Pointer(&b[0])), uintptr(unsafe.Pointer(&l)), 0) -+ return int(l), errnoErr(errno) -+} -+ -+func setsockopt(s uintptr, level, name int, b []byte) error { -+ _, _, errno := syscall_syscall6(syscall.SYS_SETSOCKOPT, s, uintptr(level), uintptr(name), uintptr(unsafe.Pointer(&b[0])), uintptr(len(b)), 0) -+ return errnoErr(errno) -+} -+ -+func recvmsg(s uintptr, buffers [][]byte, oob []byte, flags int, network string) (n, oobn int, recvflags int, from net.Addr, err error) { -+ var h msghdr -+ vs := make([]iovec, len(buffers)) -+ var sa []byte -+ if network != "tcp" { -+ sa = make([]byte, sizeofSockaddrInet6) -+ } -+ h.pack(vs, buffers, oob, sa) -+ sn, _, errno := syscall_syscall(syscall.SYS___RECVMSG_A, s, uintptr(unsafe.Pointer(&h)), uintptr(flags)) -+ n = int(sn) -+ oobn = h.controllen() -+ recvflags = h.flags() -+ err = errnoErr(errno) -+ if network != "tcp" { -+ var err2 error -+ from, err2 = parseInetAddr(sa, network) -+ if err2 != nil && err == nil { -+ err = err2 -+ } -+ } -+ return -+} -+ -+func sendmsg(s uintptr, buffers [][]byte, oob []byte, to net.Addr, flags int) (int, error) { -+ var h msghdr -+ vs := make([]iovec, len(buffers)) -+ var sa []byte -+ if to != nil { -+ var a [sizeofSockaddrInet6]byte -+ n := marshalInetAddr(to, a[:]) -+ sa = a[:n] -+ } -+ h.pack(vs, buffers, oob, sa) -+ n, _, errno := syscall_syscall(syscall.SYS___SENDMSG_A, s, uintptr(unsafe.Pointer(&h)), uintptr(flags)) -+ return int(n), errnoErr(errno) -+} -diff --git a/vendor/golang.org/x/net/internal/socket/sys_zos_s390x.s b/vendor/golang.org/x/net/internal/socket/sys_zos_s390x.s -new file mode 100644 -index 0000000..60d5839 ---- /dev/null -+++ b/vendor/golang.org/x/net/internal/socket/sys_zos_s390x.s -@@ -0,0 +1,11 @@ -+// Copyright 2020 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+#include "textflag.h" -+ -+TEXT ·syscall_syscall(SB),NOSPLIT,$0 -+ JMP syscall·_syscall(SB) -+ -+TEXT ·syscall_syscall6(SB),NOSPLIT,$0 -+ JMP syscall·_syscall6(SB) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_aix_ppc64.go b/vendor/golang.org/x/net/internal/socket/zsys_aix_ppc64.go -index e740c8f..00691bd 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_aix_ppc64.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_aix_ppc64.go -@@ -2,6 +2,7 @@ - // cgo -godefs defs_aix.go - - // Added for go1.11 compatibility -+//go:build aix - // +build aix - - package socket -@@ -33,28 +34,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Addr [4]byte /* in_addr */ -- Zero [8]uint8 --} -- --type sockaddrInet6 struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( -- sizeofIovec = 0x10 -- sizeofMsghdr = 0x30 -- sizeofCmsghdr = 0xc -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c -+ sizeofIovec = 0x10 -+ sizeofMsghdr = 0x30 - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_darwin_386.go b/vendor/golang.org/x/net/internal/socket/zsys_darwin_386.go -deleted file mode 100644 -index 083bda5..0000000 ---- a/vendor/golang.org/x/net/internal/socket/zsys_darwin_386.go -+++ /dev/null -@@ -1,51 +0,0 @@ --// Code generated by cmd/cgo -godefs; DO NOT EDIT. --// cgo -godefs defs_darwin.go -- --package socket -- --type iovec struct { -- Base *byte -- Len uint32 --} -- --type msghdr struct { -- Name *byte -- Namelen uint32 -- Iov *iovec -- Iovlen int32 -- Control *byte -- Controllen uint32 -- Flags int32 --} -- --type cmsghdr struct { -- Len uint32 -- Level int32 -- Type int32 --} -- --type sockaddrInet struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Addr [4]byte /* in_addr */ -- Zero [8]int8 --} -- --type sockaddrInet6 struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- --const ( -- sizeofIovec = 0x8 -- sizeofMsghdr = 0x1c -- sizeofCmsghdr = 0xc -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c --) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_darwin_amd64.go b/vendor/golang.org/x/net/internal/socket/zsys_darwin_amd64.go -index 55c6c9f..98dcfe4 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_darwin_amd64.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_darwin_amd64.go -@@ -26,28 +26,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Addr [4]byte /* in_addr */ -- Zero [8]int8 --} -- --type sockaddrInet6 struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( -- sizeofIovec = 0x10 -- sizeofMsghdr = 0x30 -- sizeofCmsghdr = 0xc -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c -+ sizeofIovec = 0x10 -+ sizeofMsghdr = 0x30 - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_darwin_arm.go b/vendor/golang.org/x/net/internal/socket/zsys_darwin_arm.go -deleted file mode 100644 -index 083bda5..0000000 ---- a/vendor/golang.org/x/net/internal/socket/zsys_darwin_arm.go -+++ /dev/null -@@ -1,51 +0,0 @@ --// Code generated by cmd/cgo -godefs; DO NOT EDIT. --// cgo -godefs defs_darwin.go -- --package socket -- --type iovec struct { -- Base *byte -- Len uint32 --} -- --type msghdr struct { -- Name *byte -- Namelen uint32 -- Iov *iovec -- Iovlen int32 -- Control *byte -- Controllen uint32 -- Flags int32 --} -- --type cmsghdr struct { -- Len uint32 -- Level int32 -- Type int32 --} -- --type sockaddrInet struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Addr [4]byte /* in_addr */ -- Zero [8]int8 --} -- --type sockaddrInet6 struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- --const ( -- sizeofIovec = 0x8 -- sizeofMsghdr = 0x1c -- sizeofCmsghdr = 0xc -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c --) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_darwin_arm64.go b/vendor/golang.org/x/net/internal/socket/zsys_darwin_arm64.go -index 55c6c9f..98dcfe4 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_darwin_arm64.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_darwin_arm64.go -@@ -26,28 +26,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Addr [4]byte /* in_addr */ -- Zero [8]int8 --} -- --type sockaddrInet6 struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( -- sizeofIovec = 0x10 -- sizeofMsghdr = 0x30 -- sizeofCmsghdr = 0xc -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c -+ sizeofIovec = 0x10 -+ sizeofMsghdr = 0x30 - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_dragonfly_amd64.go b/vendor/golang.org/x/net/internal/socket/zsys_dragonfly_amd64.go -index 8b7d161..636d129 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_dragonfly_amd64.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_dragonfly_amd64.go -@@ -26,28 +26,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Addr [4]byte /* in_addr */ -- Zero [8]int8 --} -- --type sockaddrInet6 struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( -- sizeofIovec = 0x10 -- sizeofMsghdr = 0x30 -- sizeofCmsghdr = 0xc -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c -+ sizeofIovec = 0x10 -+ sizeofMsghdr = 0x30 - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_freebsd_386.go b/vendor/golang.org/x/net/internal/socket/zsys_freebsd_386.go -index 3e71ff5..87707fe 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_freebsd_386.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_freebsd_386.go -@@ -24,28 +24,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Addr [4]byte /* in_addr */ -- Zero [8]int8 --} -- --type sockaddrInet6 struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( -- sizeofIovec = 0x8 -- sizeofMsghdr = 0x1c -- sizeofCmsghdr = 0xc -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c -+ sizeofIovec = 0x8 -+ sizeofMsghdr = 0x1c - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_freebsd_amd64.go b/vendor/golang.org/x/net/internal/socket/zsys_freebsd_amd64.go -index 238d90d..7db7781 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_freebsd_amd64.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_freebsd_amd64.go -@@ -26,28 +26,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Addr [4]byte /* in_addr */ -- Zero [8]int8 --} -- --type sockaddrInet6 struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( -- sizeofIovec = 0x10 -- sizeofMsghdr = 0x30 -- sizeofCmsghdr = 0xc -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c -+ sizeofIovec = 0x10 -+ sizeofMsghdr = 0x30 - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_freebsd_arm.go b/vendor/golang.org/x/net/internal/socket/zsys_freebsd_arm.go -index 3e71ff5..87707fe 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_freebsd_arm.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_freebsd_arm.go -@@ -24,28 +24,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Addr [4]byte /* in_addr */ -- Zero [8]int8 --} -- --type sockaddrInet6 struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( -- sizeofIovec = 0x8 -- sizeofMsghdr = 0x1c -- sizeofCmsghdr = 0xc -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c -+ sizeofIovec = 0x8 -+ sizeofMsghdr = 0x1c - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_freebsd_arm64.go b/vendor/golang.org/x/net/internal/socket/zsys_freebsd_arm64.go -index 238d90d..7db7781 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_freebsd_arm64.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_freebsd_arm64.go -@@ -26,28 +26,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Addr [4]byte /* in_addr */ -- Zero [8]int8 --} -- --type sockaddrInet6 struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( -- sizeofIovec = 0x10 -- sizeofMsghdr = 0x30 -- sizeofCmsghdr = 0xc -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c -+ sizeofIovec = 0x10 -+ sizeofMsghdr = 0x30 - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_freebsd_riscv64.go b/vendor/golang.org/x/net/internal/socket/zsys_freebsd_riscv64.go -new file mode 100644 -index 0000000..965c0b2 ---- /dev/null -+++ b/vendor/golang.org/x/net/internal/socket/zsys_freebsd_riscv64.go -@@ -0,0 +1,30 @@ -+// Code generated by cmd/cgo -godefs; DO NOT EDIT. -+// cgo -godefs defs_freebsd.go -+ -+package socket -+ -+type iovec struct { -+ Base *byte -+ Len uint64 -+} -+ -+type msghdr struct { -+ Name *byte -+ Namelen uint32 -+ Iov *iovec -+ Iovlen int32 -+ Control *byte -+ Controllen uint32 -+ Flags int32 -+} -+ -+type cmsghdr struct { -+ Len uint32 -+ Level int32 -+ Type int32 -+} -+ -+const ( -+ sizeofIovec = 0x10 -+ sizeofMsghdr = 0x30 -+) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_linux_386.go b/vendor/golang.org/x/net/internal/socket/zsys_linux_386.go -index d33025b..4c19269 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_linux_386.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_linux_386.go -@@ -29,26 +29,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Family uint16 -- Port uint16 -- Addr [4]byte /* in_addr */ -- X__pad [8]uint8 --} -- --type sockaddrInet6 struct { -- Family uint16 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( -- sizeofIovec = 0x8 -- sizeofMsghdr = 0x1c -- sizeofCmsghdr = 0xc -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c -+ sizeofIovec = 0x8 -+ sizeofMsghdr = 0x1c - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_linux_amd64.go b/vendor/golang.org/x/net/internal/socket/zsys_linux_amd64.go -index b20d216..3dcd5c8 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_linux_amd64.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_linux_amd64.go -@@ -32,26 +32,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Family uint16 -- Port uint16 -- Addr [4]byte /* in_addr */ -- X__pad [8]uint8 --} -- --type sockaddrInet6 struct { -- Family uint16 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( -- sizeofIovec = 0x10 -- sizeofMsghdr = 0x38 -- sizeofCmsghdr = 0x10 -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c -+ sizeofIovec = 0x10 -+ sizeofMsghdr = 0x38 - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_linux_arm.go b/vendor/golang.org/x/net/internal/socket/zsys_linux_arm.go -index 1bb10a4..4c19269 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_linux_arm.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_linux_arm.go -@@ -29,27 +29,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Family uint16 -- Port uint16 -- Addr [4]byte /* in_addr */ -- X__pad [8]uint8 --} -- --type sockaddrInet6 struct { -- Family uint16 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( - sizeofIovec = 0x8 - sizeofMsghdr = 0x1c -- -- sizeofCmsghdr = 0xc -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_linux_arm64.go b/vendor/golang.org/x/net/internal/socket/zsys_linux_arm64.go -index 7f6e8a7..3dcd5c8 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_linux_arm64.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_linux_arm64.go -@@ -32,27 +32,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Family uint16 -- Port uint16 -- Addr [4]byte /* in_addr */ -- X__pad [8]uint8 --} -- --type sockaddrInet6 struct { -- Family uint16 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( - sizeofIovec = 0x10 - sizeofMsghdr = 0x38 -- -- sizeofCmsghdr = 0x10 -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_linux_loong64.go b/vendor/golang.org/x/net/internal/socket/zsys_linux_loong64.go -new file mode 100644 -index 0000000..6a94fec ---- /dev/null -+++ b/vendor/golang.org/x/net/internal/socket/zsys_linux_loong64.go -@@ -0,0 +1,40 @@ -+// Code generated by cmd/cgo -godefs; DO NOT EDIT. -+// cgo -godefs defs_linux.go -+ -+//go:build loong64 -+// +build loong64 -+ -+package socket -+ -+type iovec struct { -+ Base *byte -+ Len uint64 -+} -+ -+type msghdr struct { -+ Name *byte -+ Namelen uint32 -+ Iov *iovec -+ Iovlen uint64 -+ Control *byte -+ Controllen uint64 -+ Flags int32 -+ Pad_cgo_0 [4]byte -+} -+ -+type mmsghdr struct { -+ Hdr msghdr -+ Len uint32 -+ Pad_cgo_0 [4]byte -+} -+ -+type cmsghdr struct { -+ Len uint64 -+ Level int32 -+ Type int32 -+} -+ -+const ( -+ sizeofIovec = 0x10 -+ sizeofMsghdr = 0x38 -+) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_linux_mips.go b/vendor/golang.org/x/net/internal/socket/zsys_linux_mips.go -index 1bb10a4..4c19269 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_linux_mips.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_linux_mips.go -@@ -29,27 +29,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Family uint16 -- Port uint16 -- Addr [4]byte /* in_addr */ -- X__pad [8]uint8 --} -- --type sockaddrInet6 struct { -- Family uint16 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( - sizeofIovec = 0x8 - sizeofMsghdr = 0x1c -- -- sizeofCmsghdr = 0xc -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_linux_mips64.go b/vendor/golang.org/x/net/internal/socket/zsys_linux_mips64.go -index 7f6e8a7..3dcd5c8 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_linux_mips64.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_linux_mips64.go -@@ -32,27 +32,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Family uint16 -- Port uint16 -- Addr [4]byte /* in_addr */ -- X__pad [8]uint8 --} -- --type sockaddrInet6 struct { -- Family uint16 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( - sizeofIovec = 0x10 - sizeofMsghdr = 0x38 -- -- sizeofCmsghdr = 0x10 -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_linux_mips64le.go b/vendor/golang.org/x/net/internal/socket/zsys_linux_mips64le.go -index 7f6e8a7..3dcd5c8 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_linux_mips64le.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_linux_mips64le.go -@@ -32,27 +32,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Family uint16 -- Port uint16 -- Addr [4]byte /* in_addr */ -- X__pad [8]uint8 --} -- --type sockaddrInet6 struct { -- Family uint16 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( - sizeofIovec = 0x10 - sizeofMsghdr = 0x38 -- -- sizeofCmsghdr = 0x10 -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_linux_mipsle.go b/vendor/golang.org/x/net/internal/socket/zsys_linux_mipsle.go -index 1bb10a4..4c19269 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_linux_mipsle.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_linux_mipsle.go -@@ -29,27 +29,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Family uint16 -- Port uint16 -- Addr [4]byte /* in_addr */ -- X__pad [8]uint8 --} -- --type sockaddrInet6 struct { -- Family uint16 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( - sizeofIovec = 0x8 - sizeofMsghdr = 0x1c -- -- sizeofCmsghdr = 0xc -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_linux_ppc.go b/vendor/golang.org/x/net/internal/socket/zsys_linux_ppc.go -new file mode 100644 -index 0000000..4c19269 ---- /dev/null -+++ b/vendor/golang.org/x/net/internal/socket/zsys_linux_ppc.go -@@ -0,0 +1,35 @@ -+// Code generated by cmd/cgo -godefs; DO NOT EDIT. -+// cgo -godefs defs_linux.go -+ -+package socket -+ -+type iovec struct { -+ Base *byte -+ Len uint32 -+} -+ -+type msghdr struct { -+ Name *byte -+ Namelen uint32 -+ Iov *iovec -+ Iovlen uint32 -+ Control *byte -+ Controllen uint32 -+ Flags int32 -+} -+ -+type mmsghdr struct { -+ Hdr msghdr -+ Len uint32 -+} -+ -+type cmsghdr struct { -+ Len uint32 -+ Level int32 -+ Type int32 -+} -+ -+const ( -+ sizeofIovec = 0x8 -+ sizeofMsghdr = 0x1c -+) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_linux_ppc64.go b/vendor/golang.org/x/net/internal/socket/zsys_linux_ppc64.go -index 7f6e8a7..3dcd5c8 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_linux_ppc64.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_linux_ppc64.go -@@ -32,27 +32,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Family uint16 -- Port uint16 -- Addr [4]byte /* in_addr */ -- X__pad [8]uint8 --} -- --type sockaddrInet6 struct { -- Family uint16 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( - sizeofIovec = 0x10 - sizeofMsghdr = 0x38 -- -- sizeofCmsghdr = 0x10 -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_linux_ppc64le.go b/vendor/golang.org/x/net/internal/socket/zsys_linux_ppc64le.go -index 7f6e8a7..3dcd5c8 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_linux_ppc64le.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_linux_ppc64le.go -@@ -32,27 +32,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Family uint16 -- Port uint16 -- Addr [4]byte /* in_addr */ -- X__pad [8]uint8 --} -- --type sockaddrInet6 struct { -- Family uint16 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( - sizeofIovec = 0x10 - sizeofMsghdr = 0x38 -- -- sizeofCmsghdr = 0x10 -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_linux_riscv64.go b/vendor/golang.org/x/net/internal/socket/zsys_linux_riscv64.go -index f12a1d7..c066272 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_linux_riscv64.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_linux_riscv64.go -@@ -1,6 +1,7 @@ - // Code generated by cmd/cgo -godefs; DO NOT EDIT. - // cgo -godefs defs_linux.go - -+//go:build riscv64 - // +build riscv64 - - package socket -@@ -33,27 +34,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Family uint16 -- Port uint16 -- Addr [4]byte /* in_addr */ -- X__pad [8]uint8 --} -- --type sockaddrInet6 struct { -- Family uint16 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( - sizeofIovec = 0x10 - sizeofMsghdr = 0x38 -- -- sizeofCmsghdr = 0x10 -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_linux_s390x.go b/vendor/golang.org/x/net/internal/socket/zsys_linux_s390x.go -index 7f6e8a7..3dcd5c8 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_linux_s390x.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_linux_s390x.go -@@ -32,27 +32,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Family uint16 -- Port uint16 -- Addr [4]byte /* in_addr */ -- X__pad [8]uint8 --} -- --type sockaddrInet6 struct { -- Family uint16 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( - sizeofIovec = 0x10 - sizeofMsghdr = 0x38 -- -- sizeofCmsghdr = 0x10 -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_netbsd_386.go b/vendor/golang.org/x/net/internal/socket/zsys_netbsd_386.go -index 7e258ce..f95572d 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_netbsd_386.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_netbsd_386.go -@@ -29,29 +29,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Addr [4]byte /* in_addr */ -- Zero [8]int8 --} -- --type sockaddrInet6 struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( - sizeofIovec = 0x8 - sizeofMsghdr = 0x1c -- -- sizeofCmsghdr = 0xc -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_netbsd_amd64.go b/vendor/golang.org/x/net/internal/socket/zsys_netbsd_amd64.go -index b3f9c0d..a92fd60 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_netbsd_amd64.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_netbsd_amd64.go -@@ -32,29 +32,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Addr [4]byte /* in_addr */ -- Zero [8]int8 --} -- --type sockaddrInet6 struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( - sizeofIovec = 0x10 - sizeofMsghdr = 0x30 -- -- sizeofCmsghdr = 0xc -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_netbsd_arm.go b/vendor/golang.org/x/net/internal/socket/zsys_netbsd_arm.go -index 7e258ce..f95572d 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_netbsd_arm.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_netbsd_arm.go -@@ -29,29 +29,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Addr [4]byte /* in_addr */ -- Zero [8]int8 --} -- --type sockaddrInet6 struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( - sizeofIovec = 0x8 - sizeofMsghdr = 0x1c -- -- sizeofCmsghdr = 0xc -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_netbsd_arm64.go b/vendor/golang.org/x/net/internal/socket/zsys_netbsd_arm64.go -index da26ef0..a92fd60 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_netbsd_arm64.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_netbsd_arm64.go -@@ -32,28 +32,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Addr [4]byte /* in_addr */ -- Zero [8]int8 --} -- --type sockaddrInet6 struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( -- sizeofIovec = 0x10 -- sizeofMsghdr = 0x30 -- sizeofCmsghdr = 0xc -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c -+ sizeofIovec = 0x10 -+ sizeofMsghdr = 0x30 - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_openbsd_386.go b/vendor/golang.org/x/net/internal/socket/zsys_openbsd_386.go -index 73655a1..e792ec2 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_openbsd_386.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_openbsd_386.go -@@ -24,28 +24,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Addr [4]byte /* in_addr */ -- Zero [8]int8 --} -- --type sockaddrInet6 struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( -- sizeofIovec = 0x8 -- sizeofMsghdr = 0x1c -- sizeofCmsghdr = 0xc -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c -+ sizeofIovec = 0x8 -+ sizeofMsghdr = 0x1c - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_openbsd_amd64.go b/vendor/golang.org/x/net/internal/socket/zsys_openbsd_amd64.go -index 0a4de80..b68ff2d 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_openbsd_amd64.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_openbsd_amd64.go -@@ -26,28 +26,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Addr [4]byte /* in_addr */ -- Zero [8]int8 --} -- --type sockaddrInet6 struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( -- sizeofIovec = 0x10 -- sizeofMsghdr = 0x30 -- sizeofCmsghdr = 0xc -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c -+ sizeofIovec = 0x10 -+ sizeofMsghdr = 0x30 - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_openbsd_arm.go b/vendor/golang.org/x/net/internal/socket/zsys_openbsd_arm.go -index 73655a1..e792ec2 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_openbsd_arm.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_openbsd_arm.go -@@ -24,28 +24,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Addr [4]byte /* in_addr */ -- Zero [8]int8 --} -- --type sockaddrInet6 struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( -- sizeofIovec = 0x8 -- sizeofMsghdr = 0x1c -- sizeofCmsghdr = 0xc -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c -+ sizeofIovec = 0x8 -+ sizeofMsghdr = 0x1c - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_openbsd_arm64.go b/vendor/golang.org/x/net/internal/socket/zsys_openbsd_arm64.go -index 0a4de80..b68ff2d 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_openbsd_arm64.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_openbsd_arm64.go -@@ -26,28 +26,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Addr [4]byte /* in_addr */ -- Zero [8]int8 --} -- --type sockaddrInet6 struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- - const ( -- sizeofIovec = 0x10 -- sizeofMsghdr = 0x30 -- sizeofCmsghdr = 0xc -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x1c -+ sizeofIovec = 0x10 -+ sizeofMsghdr = 0x30 - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_openbsd_mips64.go b/vendor/golang.org/x/net/internal/socket/zsys_openbsd_mips64.go -new file mode 100644 -index 0000000..3c9576e ---- /dev/null -+++ b/vendor/golang.org/x/net/internal/socket/zsys_openbsd_mips64.go -@@ -0,0 +1,30 @@ -+// Code generated by cmd/cgo -godefs; DO NOT EDIT. -+// cgo -godefs defs_openbsd.go -+ -+package socket -+ -+type iovec struct { -+ Base *byte -+ Len uint64 -+} -+ -+type msghdr struct { -+ Name *byte -+ Namelen uint32 -+ Iov *iovec -+ Iovlen uint32 -+ Control *byte -+ Controllen uint32 -+ Flags int32 -+} -+ -+type cmsghdr struct { -+ Len uint32 -+ Level int32 -+ Type int32 -+} -+ -+const ( -+ sizeofIovec = 0x10 -+ sizeofMsghdr = 0x30 -+) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_solaris_amd64.go b/vendor/golang.org/x/net/internal/socket/zsys_solaris_amd64.go -index 353cd5f..359cfec 100644 ---- a/vendor/golang.org/x/net/internal/socket/zsys_solaris_amd64.go -+++ b/vendor/golang.org/x/net/internal/socket/zsys_solaris_amd64.go -@@ -26,27 +26,7 @@ type cmsghdr struct { - Type int32 - } - --type sockaddrInet struct { -- Family uint16 -- Port uint16 -- Addr [4]byte /* in_addr */ -- Zero [8]int8 --} -- --type sockaddrInet6 struct { -- Family uint16 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 -- X__sin6_src_id uint32 --} -- - const ( -- sizeofIovec = 0x10 -- sizeofMsghdr = 0x30 -- sizeofCmsghdr = 0xc -- -- sizeofSockaddrInet = 0x10 -- sizeofSockaddrInet6 = 0x20 -+ sizeofIovec = 0x10 -+ sizeofMsghdr = 0x30 - ) -diff --git a/vendor/golang.org/x/net/internal/socket/zsys_zos_s390x.go b/vendor/golang.org/x/net/internal/socket/zsys_zos_s390x.go -new file mode 100644 -index 0000000..49b62c8 ---- /dev/null -+++ b/vendor/golang.org/x/net/internal/socket/zsys_zos_s390x.go -@@ -0,0 +1,28 @@ -+// Copyright 2020 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+package socket -+ -+type iovec struct { -+ Base *byte -+ Len uint64 -+} -+ -+type msghdr struct { -+ Name *byte -+ Iov *iovec -+ Control *byte -+ Flags int32 -+ Namelen uint32 -+ Iovlen int32 -+ Controllen uint32 -+} -+ -+type cmsghdr struct { -+ Len int32 -+ Level int32 -+ Type int32 -+} -+ -+const sizeofCmsghdr = 12 -diff --git a/vendor/golang.org/x/net/ipv4/control_bsd.go b/vendor/golang.org/x/net/ipv4/control_bsd.go -index 69c4f55..b7385df 100644 ---- a/vendor/golang.org/x/net/ipv4/control_bsd.go -+++ b/vendor/golang.org/x/net/ipv4/control_bsd.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build aix || darwin || dragonfly || freebsd || netbsd || openbsd - // +build aix darwin dragonfly freebsd netbsd openbsd - - package ipv4 -@@ -13,11 +14,13 @@ import ( - - "golang.org/x/net/internal/iana" - "golang.org/x/net/internal/socket" -+ -+ "golang.org/x/sys/unix" - ) - - func marshalDst(b []byte, cm *ControlMessage) []byte { - m := socket.ControlMessage(b) -- m.MarshalHeader(iana.ProtocolIP, sysIP_RECVDSTADDR, net.IPv4len) -+ m.MarshalHeader(iana.ProtocolIP, unix.IP_RECVDSTADDR, net.IPv4len) - return m.Next(net.IPv4len) - } - -@@ -30,7 +33,7 @@ func parseDst(cm *ControlMessage, b []byte) { - - func marshalInterface(b []byte, cm *ControlMessage) []byte { - m := socket.ControlMessage(b) -- m.MarshalHeader(iana.ProtocolIP, sysIP_RECVIF, syscall.SizeofSockaddrDatalink) -+ m.MarshalHeader(iana.ProtocolIP, sockoptReceiveInterface, syscall.SizeofSockaddrDatalink) - return m.Next(syscall.SizeofSockaddrDatalink) - } - -diff --git a/vendor/golang.org/x/net/ipv4/control_pktinfo.go b/vendor/golang.org/x/net/ipv4/control_pktinfo.go -index 425338f..0e748db 100644 ---- a/vendor/golang.org/x/net/ipv4/control_pktinfo.go -+++ b/vendor/golang.org/x/net/ipv4/control_pktinfo.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build darwin || linux || solaris - // +build darwin linux solaris - - package ipv4 -@@ -12,11 +13,13 @@ import ( - - "golang.org/x/net/internal/iana" - "golang.org/x/net/internal/socket" -+ -+ "golang.org/x/sys/unix" - ) - - func marshalPacketInfo(b []byte, cm *ControlMessage) []byte { - m := socket.ControlMessage(b) -- m.MarshalHeader(iana.ProtocolIP, sysIP_PKTINFO, sizeofInetPktinfo) -+ m.MarshalHeader(iana.ProtocolIP, unix.IP_PKTINFO, sizeofInetPktinfo) - if cm != nil { - pi := (*inetPktinfo)(unsafe.Pointer(&m.Data(sizeofInetPktinfo)[0])) - if ip := cm.Src.To4(); ip != nil { -diff --git a/vendor/golang.org/x/net/ipv4/control_stub.go b/vendor/golang.org/x/net/ipv4/control_stub.go -index a0c049d..f27322c 100644 ---- a/vendor/golang.org/x/net/ipv4/control_stub.go -+++ b/vendor/golang.org/x/net/ipv4/control_stub.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!windows -+//go:build !aix && !darwin && !dragonfly && !freebsd && !linux && !netbsd && !openbsd && !solaris && !windows && !zos -+// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!windows,!zos - - package ipv4 - -diff --git a/vendor/golang.org/x/net/ipv4/control_unix.go b/vendor/golang.org/x/net/ipv4/control_unix.go -index b27fa49..2413e02 100644 ---- a/vendor/golang.org/x/net/ipv4/control_unix.go -+++ b/vendor/golang.org/x/net/ipv4/control_unix.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris - // +build aix darwin dragonfly freebsd linux netbsd openbsd solaris - - package ipv4 -@@ -11,6 +12,8 @@ import ( - - "golang.org/x/net/internal/iana" - "golang.org/x/net/internal/socket" -+ -+ "golang.org/x/sys/unix" - ) - - func setControlMessage(c *socket.Conn, opt *rawOpt, cf ControlFlags, on bool) error { -@@ -64,7 +67,7 @@ func setControlMessage(c *socket.Conn, opt *rawOpt, cf ControlFlags, on bool) er - - func marshalTTL(b []byte, cm *ControlMessage) []byte { - m := socket.ControlMessage(b) -- m.MarshalHeader(iana.ProtocolIP, sysIP_RECVTTL, 1) -+ m.MarshalHeader(iana.ProtocolIP, unix.IP_RECVTTL, 1) - return m.Next(1) - } - -diff --git a/vendor/golang.org/x/net/ipv4/control_zos.go b/vendor/golang.org/x/net/ipv4/control_zos.go -new file mode 100644 -index 0000000..de11c42 ---- /dev/null -+++ b/vendor/golang.org/x/net/ipv4/control_zos.go -@@ -0,0 +1,88 @@ -+// Copyright 2020 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+package ipv4 -+ -+import ( -+ "net" -+ "unsafe" -+ -+ "golang.org/x/net/internal/iana" -+ "golang.org/x/net/internal/socket" -+ -+ "golang.org/x/sys/unix" -+) -+ -+func marshalPacketInfo(b []byte, cm *ControlMessage) []byte { -+ m := socket.ControlMessage(b) -+ m.MarshalHeader(iana.ProtocolIP, unix.IP_PKTINFO, sizeofInetPktinfo) -+ if cm != nil { -+ pi := (*inetPktinfo)(unsafe.Pointer(&m.Data(sizeofInetPktinfo)[0])) -+ if ip := cm.Src.To4(); ip != nil { -+ copy(pi.Addr[:], ip) -+ } -+ if cm.IfIndex > 0 { -+ pi.setIfindex(cm.IfIndex) -+ } -+ } -+ return m.Next(sizeofInetPktinfo) -+} -+ -+func parsePacketInfo(cm *ControlMessage, b []byte) { -+ pi := (*inetPktinfo)(unsafe.Pointer(&b[0])) -+ cm.IfIndex = int(pi.Ifindex) -+ if len(cm.Dst) < net.IPv4len { -+ cm.Dst = make(net.IP, net.IPv4len) -+ } -+ copy(cm.Dst, pi.Addr[:]) -+} -+ -+func setControlMessage(c *socket.Conn, opt *rawOpt, cf ControlFlags, on bool) error { -+ opt.Lock() -+ defer opt.Unlock() -+ if so, ok := sockOpts[ssoReceiveTTL]; ok && cf&FlagTTL != 0 { -+ if err := so.SetInt(c, boolint(on)); err != nil { -+ return err -+ } -+ if on { -+ opt.set(FlagTTL) -+ } else { -+ opt.clear(FlagTTL) -+ } -+ } -+ if so, ok := sockOpts[ssoPacketInfo]; ok { -+ if cf&(FlagSrc|FlagDst|FlagInterface) != 0 { -+ if err := so.SetInt(c, boolint(on)); err != nil { -+ return err -+ } -+ if on { -+ opt.set(cf & (FlagSrc | FlagDst | FlagInterface)) -+ } else { -+ opt.clear(cf & (FlagSrc | FlagDst | FlagInterface)) -+ } -+ } -+ } else { -+ if so, ok := sockOpts[ssoReceiveDst]; ok && cf&FlagDst != 0 { -+ if err := so.SetInt(c, boolint(on)); err != nil { -+ return err -+ } -+ if on { -+ opt.set(FlagDst) -+ } else { -+ opt.clear(FlagDst) -+ } -+ } -+ if so, ok := sockOpts[ssoReceiveInterface]; ok && cf&FlagInterface != 0 { -+ if err := so.SetInt(c, boolint(on)); err != nil { -+ return err -+ } -+ if on { -+ opt.set(FlagInterface) -+ } else { -+ opt.clear(FlagInterface) -+ } -+ } -+ } -+ return nil -+} -diff --git a/vendor/golang.org/x/net/ipv4/doc.go b/vendor/golang.org/x/net/ipv4/doc.go -index 2458349..6fbdc52 100644 ---- a/vendor/golang.org/x/net/ipv4/doc.go -+++ b/vendor/golang.org/x/net/ipv4/doc.go -@@ -16,8 +16,7 @@ - // 3376. - // Source-specific multicast is defined in RFC 4607. - // --// --// Unicasting -+// # Unicasting - // - // The options for unicasting are available for net.TCPConn, - // net.UDPConn and net.IPConn which are created as network connections -@@ -51,8 +50,7 @@ - // }(c) - // } - // --// --// Multicasting -+// # Multicasting - // - // The options for multicasting are available for net.UDPConn and - // net.IPConn which are created as network connections that use the -@@ -141,8 +139,7 @@ - // } - // } - // --// --// More multicasting -+// # More multicasting - // - // An application that uses PacketConn or RawConn may join multiple - // multicast groups. For example, a UDP listener with port 1024 might -@@ -200,8 +197,7 @@ - // // error handling - // } - // --// --// Source-specific multicasting -+// # Source-specific multicasting - // - // An application that uses PacketConn or RawConn on IGMPv3 supported - // platform is able to join source-specific multicast groups. -diff --git a/vendor/golang.org/x/net/ipv4/header.go b/vendor/golang.org/x/net/ipv4/header.go -index c271ca4..a00a3ea 100644 ---- a/vendor/golang.org/x/net/ipv4/header.go -+++ b/vendor/golang.org/x/net/ipv4/header.go -@@ -67,7 +67,7 @@ func (h *Header) Marshal() ([]byte, error) { - b[1] = byte(h.TOS) - flagsAndFragOff := (h.FragOff & 0x1fff) | int(h.Flags<<13) - switch runtime.GOOS { -- case "darwin", "dragonfly", "netbsd": -+ case "darwin", "ios", "dragonfly", "netbsd": - socket.NativeEndian.PutUint16(b[2:4], uint16(h.TotalLen)) - socket.NativeEndian.PutUint16(b[6:8], uint16(flagsAndFragOff)) - case "freebsd": -@@ -126,7 +126,7 @@ func (h *Header) Parse(b []byte) error { - h.Src = net.IPv4(b[12], b[13], b[14], b[15]) - h.Dst = net.IPv4(b[16], b[17], b[18], b[19]) - switch runtime.GOOS { -- case "darwin", "dragonfly", "netbsd": -+ case "darwin", "ios", "dragonfly", "netbsd": - h.TotalLen = int(socket.NativeEndian.Uint16(b[2:4])) + hdrlen - h.FragOff = int(socket.NativeEndian.Uint16(b[6:8])) - case "freebsd": -diff --git a/vendor/golang.org/x/net/ipv4/icmp_stub.go b/vendor/golang.org/x/net/ipv4/icmp_stub.go -index 21bb29a..cd4ee6e 100644 ---- a/vendor/golang.org/x/net/ipv4/icmp_stub.go -+++ b/vendor/golang.org/x/net/ipv4/icmp_stub.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build !linux - // +build !linux - - package ipv4 -diff --git a/vendor/golang.org/x/net/ipv4/payload_cmsg.go b/vendor/golang.org/x/net/ipv4/payload_cmsg.go -index e761466..1bb370e 100644 ---- a/vendor/golang.org/x/net/ipv4/payload_cmsg.go -+++ b/vendor/golang.org/x/net/ipv4/payload_cmsg.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris -+//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos -+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris zos - - package ipv4 - -diff --git a/vendor/golang.org/x/net/ipv4/payload_nocmsg.go b/vendor/golang.org/x/net/ipv4/payload_nocmsg.go -index 1116256..53f0794 100644 ---- a/vendor/golang.org/x/net/ipv4/payload_nocmsg.go -+++ b/vendor/golang.org/x/net/ipv4/payload_nocmsg.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris -+//go:build !aix && !darwin && !dragonfly && !freebsd && !linux && !netbsd && !openbsd && !solaris && !zos -+// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!zos - - package ipv4 - -diff --git a/vendor/golang.org/x/net/ipv4/sockopt_posix.go b/vendor/golang.org/x/net/ipv4/sockopt_posix.go -index dea6451..eb07c1c 100644 ---- a/vendor/golang.org/x/net/ipv4/sockopt_posix.go -+++ b/vendor/golang.org/x/net/ipv4/sockopt_posix.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris windows -+//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || windows || zos -+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris windows zos - - package ipv4 - -diff --git a/vendor/golang.org/x/net/ipv4/sockopt_stub.go b/vendor/golang.org/x/net/ipv4/sockopt_stub.go -index 37d4806..cf03689 100644 ---- a/vendor/golang.org/x/net/ipv4/sockopt_stub.go -+++ b/vendor/golang.org/x/net/ipv4/sockopt_stub.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!windows -+//go:build !aix && !darwin && !dragonfly && !freebsd && !linux && !netbsd && !openbsd && !solaris && !windows && !zos -+// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!windows,!zos - - package ipv4 - -diff --git a/vendor/golang.org/x/net/ipv4/sys_aix.go b/vendor/golang.org/x/net/ipv4/sys_aix.go -index 3d1201e..02730cd 100644 ---- a/vendor/golang.org/x/net/ipv4/sys_aix.go -+++ b/vendor/golang.org/x/net/ipv4/sys_aix.go -@@ -3,6 +3,7 @@ - // license that can be found in the LICENSE file. - - // Added for go1.11 compatibility -+//go:build aix - // +build aix - - package ipv4 -@@ -13,26 +14,31 @@ import ( - - "golang.org/x/net/internal/iana" - "golang.org/x/net/internal/socket" -+ -+ "golang.org/x/sys/unix" - ) - -+// IP_RECVIF is defined on AIX but doesn't work. IP_RECVINTERFACE must be used instead. -+const sockoptReceiveInterface = unix.IP_RECVINTERFACE -+ - var ( - ctlOpts = [ctlMax]ctlOpt{ -- ctlTTL: {sysIP_RECVTTL, 1, marshalTTL, parseTTL}, -- ctlDst: {sysIP_RECVDSTADDR, net.IPv4len, marshalDst, parseDst}, -- ctlInterface: {sysIP_RECVIF, syscall.SizeofSockaddrDatalink, marshalInterface, parseInterface}, -+ ctlTTL: {unix.IP_RECVTTL, 1, marshalTTL, parseTTL}, -+ ctlDst: {unix.IP_RECVDSTADDR, net.IPv4len, marshalDst, parseDst}, -+ ctlInterface: {unix.IP_RECVINTERFACE, syscall.SizeofSockaddrDatalink, marshalInterface, parseInterface}, - } - - sockOpts = map[int]*sockOpt{ -- ssoTOS: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TOS, Len: 4}}, -- ssoTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TTL, Len: 4}}, -- ssoMulticastTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_TTL, Len: 1}}, -- ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_IF, Len: 4}}, -- ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_LOOP, Len: 1}}, -- ssoReceiveTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVTTL, Len: 4}}, -- ssoReceiveDst: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVDSTADDR, Len: 4}}, -- ssoReceiveInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVIF, Len: 4}}, -- ssoHeaderPrepend: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_HDRINCL, Len: 4}}, -- ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_ADD_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq}, -- ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_DROP_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq}, -+ ssoTOS: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TOS, Len: 4}}, -+ ssoTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TTL, Len: 4}}, -+ ssoMulticastTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_TTL, Len: 1}}, -+ ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_IF, Len: 4}}, -+ ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_LOOP, Len: 1}}, -+ ssoReceiveTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVTTL, Len: 4}}, -+ ssoReceiveDst: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVDSTADDR, Len: 4}}, -+ ssoReceiveInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVINTERFACE, Len: 4}}, -+ ssoHeaderPrepend: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_HDRINCL, Len: 4}}, -+ ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_ADD_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq}, -+ ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_DROP_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq}, - } - ) -diff --git a/vendor/golang.org/x/net/ipv4/sys_asmreq.go b/vendor/golang.org/x/net/ipv4/sys_asmreq.go -index 76d670a..22322b3 100644 ---- a/vendor/golang.org/x/net/ipv4/sys_asmreq.go -+++ b/vendor/golang.org/x/net/ipv4/sys_asmreq.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build aix || darwin || dragonfly || freebsd || netbsd || openbsd || solaris || windows - // +build aix darwin dragonfly freebsd netbsd openbsd solaris windows - - package ipv4 -diff --git a/vendor/golang.org/x/net/ipv4/sys_asmreq_stub.go b/vendor/golang.org/x/net/ipv4/sys_asmreq_stub.go -index 6dc339c..fde6401 100644 ---- a/vendor/golang.org/x/net/ipv4/sys_asmreq_stub.go -+++ b/vendor/golang.org/x/net/ipv4/sys_asmreq_stub.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build !aix && !darwin && !dragonfly && !freebsd && !netbsd && !openbsd && !solaris && !windows - // +build !aix,!darwin,!dragonfly,!freebsd,!netbsd,!openbsd,!solaris,!windows - - package ipv4 -diff --git a/vendor/golang.org/x/net/ipv4/sys_asmreqn.go b/vendor/golang.org/x/net/ipv4/sys_asmreqn.go -index 1f24f69..54eb990 100644 ---- a/vendor/golang.org/x/net/ipv4/sys_asmreqn.go -+++ b/vendor/golang.org/x/net/ipv4/sys_asmreqn.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build darwin || freebsd || linux - // +build darwin freebsd linux - - package ipv4 -@@ -11,6 +12,8 @@ import ( - "unsafe" - - "golang.org/x/net/internal/socket" -+ -+ "golang.org/x/sys/unix" - ) - - func (so *sockOpt) getIPMreqn(c *socket.Conn) (*net.Interface, error) { -@@ -18,7 +21,7 @@ func (so *sockOpt) getIPMreqn(c *socket.Conn) (*net.Interface, error) { - if _, err := so.Get(c, b); err != nil { - return nil, err - } -- mreqn := (*ipMreqn)(unsafe.Pointer(&b[0])) -+ mreqn := (*unix.IPMreqn)(unsafe.Pointer(&b[0])) - if mreqn.Ifindex == 0 { - return nil, nil - } -@@ -30,13 +33,13 @@ func (so *sockOpt) getIPMreqn(c *socket.Conn) (*net.Interface, error) { - } - - func (so *sockOpt) setIPMreqn(c *socket.Conn, ifi *net.Interface, grp net.IP) error { -- var mreqn ipMreqn -+ var mreqn unix.IPMreqn - if ifi != nil { - mreqn.Ifindex = int32(ifi.Index) - } - if grp != nil { - mreqn.Multiaddr = [4]byte{grp[0], grp[1], grp[2], grp[3]} - } -- b := (*[sizeofIPMreqn]byte)(unsafe.Pointer(&mreqn))[:sizeofIPMreqn] -+ b := (*[unix.SizeofIPMreqn]byte)(unsafe.Pointer(&mreqn))[:unix.SizeofIPMreqn] - return so.Set(c, b) - } -diff --git a/vendor/golang.org/x/net/ipv4/sys_asmreqn_stub.go b/vendor/golang.org/x/net/ipv4/sys_asmreqn_stub.go -index 48ef556..dcb15f2 100644 ---- a/vendor/golang.org/x/net/ipv4/sys_asmreqn_stub.go -+++ b/vendor/golang.org/x/net/ipv4/sys_asmreqn_stub.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build !darwin && !freebsd && !linux - // +build !darwin,!freebsd,!linux - - package ipv4 -diff --git a/vendor/golang.org/x/net/ipv4/sys_bpf.go b/vendor/golang.org/x/net/ipv4/sys_bpf.go -index 5c03dce..fb11e32 100644 ---- a/vendor/golang.org/x/net/ipv4/sys_bpf.go -+++ b/vendor/golang.org/x/net/ipv4/sys_bpf.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build linux - // +build linux - - package ipv4 -diff --git a/vendor/golang.org/x/net/ipv4/sys_bpf_stub.go b/vendor/golang.org/x/net/ipv4/sys_bpf_stub.go -index 5c98642..fc53a0d 100644 ---- a/vendor/golang.org/x/net/ipv4/sys_bpf_stub.go -+++ b/vendor/golang.org/x/net/ipv4/sys_bpf_stub.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build !linux - // +build !linux - - package ipv4 -diff --git a/vendor/golang.org/x/net/ipv4/sys_bsd.go b/vendor/golang.org/x/net/ipv4/sys_bsd.go -index 58256dd..e191b2f 100644 ---- a/vendor/golang.org/x/net/ipv4/sys_bsd.go -+++ b/vendor/golang.org/x/net/ipv4/sys_bsd.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build netbsd || openbsd - // +build netbsd openbsd - - package ipv4 -@@ -12,26 +13,30 @@ import ( - - "golang.org/x/net/internal/iana" - "golang.org/x/net/internal/socket" -+ -+ "golang.org/x/sys/unix" - ) - -+const sockoptReceiveInterface = unix.IP_RECVIF -+ - var ( - ctlOpts = [ctlMax]ctlOpt{ -- ctlTTL: {sysIP_RECVTTL, 1, marshalTTL, parseTTL}, -- ctlDst: {sysIP_RECVDSTADDR, net.IPv4len, marshalDst, parseDst}, -- ctlInterface: {sysIP_RECVIF, syscall.SizeofSockaddrDatalink, marshalInterface, parseInterface}, -+ ctlTTL: {unix.IP_RECVTTL, 1, marshalTTL, parseTTL}, -+ ctlDst: {unix.IP_RECVDSTADDR, net.IPv4len, marshalDst, parseDst}, -+ ctlInterface: {unix.IP_RECVIF, syscall.SizeofSockaddrDatalink, marshalInterface, parseInterface}, - } - - sockOpts = map[int]*sockOpt{ -- ssoTOS: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TOS, Len: 4}}, -- ssoTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TTL, Len: 4}}, -- ssoMulticastTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_TTL, Len: 1}}, -- ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_IF, Len: 4}}, -- ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_LOOP, Len: 1}}, -- ssoReceiveTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVTTL, Len: 4}}, -- ssoReceiveDst: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVDSTADDR, Len: 4}}, -- ssoReceiveInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVIF, Len: 4}}, -- ssoHeaderPrepend: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_HDRINCL, Len: 4}}, -- ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_ADD_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq}, -- ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_DROP_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq}, -+ ssoTOS: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TOS, Len: 4}}, -+ ssoTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TTL, Len: 4}}, -+ ssoMulticastTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_TTL, Len: 1}}, -+ ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_IF, Len: 4}}, -+ ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_LOOP, Len: 1}}, -+ ssoReceiveTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVTTL, Len: 4}}, -+ ssoReceiveDst: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVDSTADDR, Len: 4}}, -+ ssoReceiveInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVIF, Len: 4}}, -+ ssoHeaderPrepend: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_HDRINCL, Len: 4}}, -+ ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_ADD_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq}, -+ ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_DROP_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq}, - } - ) -diff --git a/vendor/golang.org/x/net/ipv4/sys_darwin.go b/vendor/golang.org/x/net/ipv4/sys_darwin.go -index ac213c7..cac6f3c 100644 ---- a/vendor/golang.org/x/net/ipv4/sys_darwin.go -+++ b/vendor/golang.org/x/net/ipv4/sys_darwin.go -@@ -11,34 +11,38 @@ import ( - - "golang.org/x/net/internal/iana" - "golang.org/x/net/internal/socket" -+ -+ "golang.org/x/sys/unix" - ) - -+const sockoptReceiveInterface = unix.IP_RECVIF -+ - var ( - ctlOpts = [ctlMax]ctlOpt{ -- ctlTTL: {sysIP_RECVTTL, 1, marshalTTL, parseTTL}, -- ctlDst: {sysIP_RECVDSTADDR, net.IPv4len, marshalDst, parseDst}, -- ctlInterface: {sysIP_RECVIF, syscall.SizeofSockaddrDatalink, marshalInterface, parseInterface}, -- ctlPacketInfo: {sysIP_PKTINFO, sizeofInetPktinfo, marshalPacketInfo, parsePacketInfo}, -+ ctlTTL: {unix.IP_RECVTTL, 1, marshalTTL, parseTTL}, -+ ctlDst: {unix.IP_RECVDSTADDR, net.IPv4len, marshalDst, parseDst}, -+ ctlInterface: {unix.IP_RECVIF, syscall.SizeofSockaddrDatalink, marshalInterface, parseInterface}, -+ ctlPacketInfo: {unix.IP_PKTINFO, sizeofInetPktinfo, marshalPacketInfo, parsePacketInfo}, - } - - sockOpts = map[int]*sockOpt{ -- ssoTOS: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TOS, Len: 4}}, -- ssoTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TTL, Len: 4}}, -- ssoMulticastTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_TTL, Len: 1}}, -- ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_IF, Len: sizeofIPMreqn}, typ: ssoTypeIPMreqn}, -- ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_LOOP, Len: 4}}, -- ssoReceiveTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVTTL, Len: 4}}, -- ssoReceiveDst: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVDSTADDR, Len: 4}}, -- ssoReceiveInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVIF, Len: 4}}, -- ssoHeaderPrepend: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_HDRINCL, Len: 4}}, -- ssoStripHeader: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_STRIPHDR, Len: 4}}, -- ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -- ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -- ssoJoinSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -- ssoLeaveSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -- ssoBlockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -- ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -- ssoPacketInfo: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVPKTINFO, Len: 4}}, -+ ssoTOS: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TOS, Len: 4}}, -+ ssoTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TTL, Len: 4}}, -+ ssoMulticastTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_TTL, Len: 1}}, -+ ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_IF, Len: unix.SizeofIPMreqn}, typ: ssoTypeIPMreqn}, -+ ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_LOOP, Len: 4}}, -+ ssoReceiveTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVTTL, Len: 4}}, -+ ssoReceiveDst: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVDSTADDR, Len: 4}}, -+ ssoReceiveInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVIF, Len: 4}}, -+ ssoHeaderPrepend: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_HDRINCL, Len: 4}}, -+ ssoStripHeader: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_STRIPHDR, Len: 4}}, -+ ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -+ ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -+ ssoJoinSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoLeaveSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoBlockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoPacketInfo: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVPKTINFO, Len: 4}}, - } - ) - -diff --git a/vendor/golang.org/x/net/ipv4/sys_dragonfly.go b/vendor/golang.org/x/net/ipv4/sys_dragonfly.go -index 859764f..0620d0e 100644 ---- a/vendor/golang.org/x/net/ipv4/sys_dragonfly.go -+++ b/vendor/golang.org/x/net/ipv4/sys_dragonfly.go -@@ -10,26 +10,30 @@ import ( - - "golang.org/x/net/internal/iana" - "golang.org/x/net/internal/socket" -+ -+ "golang.org/x/sys/unix" - ) - -+const sockoptReceiveInterface = unix.IP_RECVIF -+ - var ( - ctlOpts = [ctlMax]ctlOpt{ -- ctlTTL: {sysIP_RECVTTL, 1, marshalTTL, parseTTL}, -- ctlDst: {sysIP_RECVDSTADDR, net.IPv4len, marshalDst, parseDst}, -- ctlInterface: {sysIP_RECVIF, syscall.SizeofSockaddrDatalink, marshalInterface, parseInterface}, -+ ctlTTL: {unix.IP_RECVTTL, 1, marshalTTL, parseTTL}, -+ ctlDst: {unix.IP_RECVDSTADDR, net.IPv4len, marshalDst, parseDst}, -+ ctlInterface: {unix.IP_RECVIF, syscall.SizeofSockaddrDatalink, marshalInterface, parseInterface}, - } - - sockOpts = map[int]*sockOpt{ -- ssoTOS: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TOS, Len: 4}}, -- ssoTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TTL, Len: 4}}, -- ssoMulticastTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_TTL, Len: 1}}, -- ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_IF, Len: 4}}, -- ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_LOOP, Len: 4}}, -- ssoReceiveTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVTTL, Len: 4}}, -- ssoReceiveDst: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVDSTADDR, Len: 4}}, -- ssoReceiveInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVIF, Len: 4}}, -- ssoHeaderPrepend: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_HDRINCL, Len: 4}}, -- ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_ADD_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq}, -- ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_DROP_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq}, -+ ssoTOS: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TOS, Len: 4}}, -+ ssoTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TTL, Len: 4}}, -+ ssoMulticastTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_TTL, Len: 1}}, -+ ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_IF, Len: 4}}, -+ ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_LOOP, Len: 4}}, -+ ssoReceiveTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVTTL, Len: 4}}, -+ ssoReceiveDst: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVDSTADDR, Len: 4}}, -+ ssoReceiveInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVIF, Len: 4}}, -+ ssoHeaderPrepend: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_HDRINCL, Len: 4}}, -+ ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_ADD_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq}, -+ ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_DROP_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq}, - } - ) -diff --git a/vendor/golang.org/x/net/ipv4/sys_freebsd.go b/vendor/golang.org/x/net/ipv4/sys_freebsd.go -index 482873d..8961228 100644 ---- a/vendor/golang.org/x/net/ipv4/sys_freebsd.go -+++ b/vendor/golang.org/x/net/ipv4/sys_freebsd.go -@@ -13,38 +13,42 @@ import ( - - "golang.org/x/net/internal/iana" - "golang.org/x/net/internal/socket" -+ -+ "golang.org/x/sys/unix" - ) - -+const sockoptReceiveInterface = unix.IP_RECVIF -+ - var ( - ctlOpts = [ctlMax]ctlOpt{ -- ctlTTL: {sysIP_RECVTTL, 1, marshalTTL, parseTTL}, -- ctlDst: {sysIP_RECVDSTADDR, net.IPv4len, marshalDst, parseDst}, -- ctlInterface: {sysIP_RECVIF, syscall.SizeofSockaddrDatalink, marshalInterface, parseInterface}, -+ ctlTTL: {unix.IP_RECVTTL, 1, marshalTTL, parseTTL}, -+ ctlDst: {unix.IP_RECVDSTADDR, net.IPv4len, marshalDst, parseDst}, -+ ctlInterface: {unix.IP_RECVIF, syscall.SizeofSockaddrDatalink, marshalInterface, parseInterface}, - } - - sockOpts = map[int]*sockOpt{ -- ssoTOS: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TOS, Len: 4}}, -- ssoTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TTL, Len: 4}}, -- ssoMulticastTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_TTL, Len: 1}}, -- ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_IF, Len: 4}}, -- ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_LOOP, Len: 4}}, -- ssoReceiveTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVTTL, Len: 4}}, -- ssoReceiveDst: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVDSTADDR, Len: 4}}, -- ssoReceiveInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVIF, Len: 4}}, -- ssoHeaderPrepend: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_HDRINCL, Len: 4}}, -- ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -- ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -- ssoJoinSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -- ssoLeaveSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -- ssoBlockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -- ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoTOS: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TOS, Len: 4}}, -+ ssoTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TTL, Len: 4}}, -+ ssoMulticastTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_TTL, Len: 1}}, -+ ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_IF, Len: 4}}, -+ ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_LOOP, Len: 4}}, -+ ssoReceiveTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVTTL, Len: 4}}, -+ ssoReceiveDst: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVDSTADDR, Len: 4}}, -+ ssoReceiveInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVIF, Len: 4}}, -+ ssoHeaderPrepend: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_HDRINCL, Len: 4}}, -+ ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -+ ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -+ ssoJoinSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoLeaveSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoBlockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, - } - ) - - func init() { - freebsdVersion, _ = syscall.SysctlUint32("kern.osreldate") - if freebsdVersion >= 1000000 { -- sockOpts[ssoMulticastInterface] = &sockOpt{Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_IF, Len: sizeofIPMreqn}, typ: ssoTypeIPMreqn} -+ sockOpts[ssoMulticastInterface] = &sockOpt{Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_IF, Len: unix.SizeofIPMreqn}, typ: ssoTypeIPMreqn} - } - if runtime.GOOS == "freebsd" && runtime.GOARCH == "386" { - archs, _ := syscall.Sysctl("kern.supported_archs") -diff --git a/vendor/golang.org/x/net/ipv4/sys_linux.go b/vendor/golang.org/x/net/ipv4/sys_linux.go -index cf755c7..4588a5f 100644 ---- a/vendor/golang.org/x/net/ipv4/sys_linux.go -+++ b/vendor/golang.org/x/net/ipv4/sys_linux.go -@@ -11,31 +11,32 @@ import ( - - "golang.org/x/net/internal/iana" - "golang.org/x/net/internal/socket" -+ - "golang.org/x/sys/unix" - ) - - var ( - ctlOpts = [ctlMax]ctlOpt{ -- ctlTTL: {sysIP_TTL, 1, marshalTTL, parseTTL}, -- ctlPacketInfo: {sysIP_PKTINFO, sizeofInetPktinfo, marshalPacketInfo, parsePacketInfo}, -+ ctlTTL: {unix.IP_TTL, 1, marshalTTL, parseTTL}, -+ ctlPacketInfo: {unix.IP_PKTINFO, sizeofInetPktinfo, marshalPacketInfo, parsePacketInfo}, - } - - sockOpts = map[int]*sockOpt{ -- ssoTOS: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TOS, Len: 4}}, -- ssoTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TTL, Len: 4}}, -- ssoMulticastTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_TTL, Len: 4}}, -- ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_IF, Len: sizeofIPMreqn}, typ: ssoTypeIPMreqn}, -- ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_LOOP, Len: 4}}, -- ssoReceiveTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVTTL, Len: 4}}, -- ssoPacketInfo: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_PKTINFO, Len: 4}}, -- ssoHeaderPrepend: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_HDRINCL, Len: 4}}, -- ssoICMPFilter: {Option: socket.Option{Level: iana.ProtocolReserved, Name: sysICMP_FILTER, Len: sizeofICMPFilter}}, -- ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -- ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -- ssoJoinSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -- ssoLeaveSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -- ssoBlockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -- ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoTOS: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TOS, Len: 4}}, -+ ssoTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TTL, Len: 4}}, -+ ssoMulticastTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_TTL, Len: 4}}, -+ ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_IF, Len: unix.SizeofIPMreqn}, typ: ssoTypeIPMreqn}, -+ ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_LOOP, Len: 4}}, -+ ssoReceiveTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVTTL, Len: 4}}, -+ ssoPacketInfo: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_PKTINFO, Len: 4}}, -+ ssoHeaderPrepend: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_HDRINCL, Len: 4}}, -+ ssoICMPFilter: {Option: socket.Option{Level: iana.ProtocolReserved, Name: unix.ICMP_FILTER, Len: sizeofICMPFilter}}, -+ ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -+ ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -+ ssoJoinSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoLeaveSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoBlockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, - ssoAttachFilter: {Option: socket.Option{Level: unix.SOL_SOCKET, Name: unix.SO_ATTACH_FILTER, Len: unix.SizeofSockFprog}}, - } - ) -diff --git a/vendor/golang.org/x/net/ipv4/sys_solaris.go b/vendor/golang.org/x/net/ipv4/sys_solaris.go -index 832fef1..0bb9f3e 100644 ---- a/vendor/golang.org/x/net/ipv4/sys_solaris.go -+++ b/vendor/golang.org/x/net/ipv4/sys_solaris.go -@@ -11,29 +11,33 @@ import ( - - "golang.org/x/net/internal/iana" - "golang.org/x/net/internal/socket" -+ -+ "golang.org/x/sys/unix" - ) - -+const sockoptReceiveInterface = unix.IP_RECVIF -+ - var ( - ctlOpts = [ctlMax]ctlOpt{ -- ctlTTL: {sysIP_RECVTTL, 4, marshalTTL, parseTTL}, -- ctlPacketInfo: {sysIP_PKTINFO, sizeofInetPktinfo, marshalPacketInfo, parsePacketInfo}, -+ ctlTTL: {unix.IP_RECVTTL, 4, marshalTTL, parseTTL}, -+ ctlPacketInfo: {unix.IP_PKTINFO, sizeofInetPktinfo, marshalPacketInfo, parsePacketInfo}, - } - - sockOpts = map[int]sockOpt{ -- ssoTOS: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TOS, Len: 4}}, -- ssoTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TTL, Len: 4}}, -- ssoMulticastTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_TTL, Len: 1}}, -- ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_IF, Len: 4}}, -- ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_LOOP, Len: 1}}, -- ssoReceiveTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVTTL, Len: 4}}, -- ssoPacketInfo: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_RECVPKTINFO, Len: 4}}, -- ssoHeaderPrepend: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_HDRINCL, Len: 4}}, -- ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -- ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -- ssoJoinSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -- ssoLeaveSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -- ssoBlockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -- ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysMCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoTOS: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TOS, Len: 4}}, -+ ssoTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_TTL, Len: 4}}, -+ ssoMulticastTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_TTL, Len: 1}}, -+ ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_IF, Len: 4}}, -+ ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_LOOP, Len: 1}}, -+ ssoReceiveTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVTTL, Len: 4}}, -+ ssoPacketInfo: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVPKTINFO, Len: 4}}, -+ ssoHeaderPrepend: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_HDRINCL, Len: 4}}, -+ ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -+ ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -+ ssoJoinSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoLeaveSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoBlockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, - } - ) - -diff --git a/vendor/golang.org/x/net/ipv4/sys_ssmreq.go b/vendor/golang.org/x/net/ipv4/sys_ssmreq.go -index eeced7f..6a4e7ab 100644 ---- a/vendor/golang.org/x/net/ipv4/sys_ssmreq.go -+++ b/vendor/golang.org/x/net/ipv4/sys_ssmreq.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build darwin || freebsd || linux || solaris - // +build darwin freebsd linux solaris - - package ipv4 -diff --git a/vendor/golang.org/x/net/ipv4/sys_ssmreq_stub.go b/vendor/golang.org/x/net/ipv4/sys_ssmreq_stub.go -index c092167..157159f 100644 ---- a/vendor/golang.org/x/net/ipv4/sys_ssmreq_stub.go -+++ b/vendor/golang.org/x/net/ipv4/sys_ssmreq_stub.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build !darwin && !freebsd && !linux && !solaris - // +build !darwin,!freebsd,!linux,!solaris - - package ipv4 -diff --git a/vendor/golang.org/x/net/ipv4/sys_stub.go b/vendor/golang.org/x/net/ipv4/sys_stub.go -index b9c85b3..d550851 100644 ---- a/vendor/golang.org/x/net/ipv4/sys_stub.go -+++ b/vendor/golang.org/x/net/ipv4/sys_stub.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!windows -+//go:build !aix && !darwin && !dragonfly && !freebsd && !linux && !netbsd && !openbsd && !solaris && !windows && !zos -+// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!windows,!zos - - package ipv4 - -diff --git a/vendor/golang.org/x/net/ipv4/sys_windows.go b/vendor/golang.org/x/net/ipv4/sys_windows.go -index b0913d5..c5e9506 100644 ---- a/vendor/golang.org/x/net/ipv4/sys_windows.go -+++ b/vendor/golang.org/x/net/ipv4/sys_windows.go -@@ -7,34 +7,15 @@ package ipv4 - import ( - "golang.org/x/net/internal/iana" - "golang.org/x/net/internal/socket" -+ -+ "golang.org/x/sys/windows" - ) - - const ( -- // See ws2tcpip.h. -- sysIP_OPTIONS = 0x1 -- sysIP_HDRINCL = 0x2 -- sysIP_TOS = 0x3 -- sysIP_TTL = 0x4 -- sysIP_MULTICAST_IF = 0x9 -- sysIP_MULTICAST_TTL = 0xa -- sysIP_MULTICAST_LOOP = 0xb -- sysIP_ADD_MEMBERSHIP = 0xc -- sysIP_DROP_MEMBERSHIP = 0xd -- sysIP_DONTFRAGMENT = 0xe -- sysIP_ADD_SOURCE_MEMBERSHIP = 0xf -- sysIP_DROP_SOURCE_MEMBERSHIP = 0x10 -- sysIP_PKTINFO = 0x13 -- -- sizeofInetPktinfo = 0x8 - sizeofIPMreq = 0x8 - sizeofIPMreqSource = 0xc - ) - --type inetPktinfo struct { -- Addr [4]byte -- Ifindex int32 --} -- - type ipMreq struct { - Multiaddr [4]byte - Interface [4]byte -@@ -51,17 +32,13 @@ var ( - ctlOpts = [ctlMax]ctlOpt{} - - sockOpts = map[int]*sockOpt{ -- ssoTOS: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TOS, Len: 4}}, -- ssoTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_TTL, Len: 4}}, -- ssoMulticastTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_TTL, Len: 4}}, -- ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_IF, Len: 4}}, -- ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_MULTICAST_LOOP, Len: 4}}, -- ssoHeaderPrepend: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_HDRINCL, Len: 4}}, -- ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_ADD_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq}, -- ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: sysIP_DROP_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq}, -+ ssoTOS: {Option: socket.Option{Level: iana.ProtocolIP, Name: windows.IP_TOS, Len: 4}}, -+ ssoTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: windows.IP_TTL, Len: 4}}, -+ ssoMulticastTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: windows.IP_MULTICAST_TTL, Len: 4}}, -+ ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: windows.IP_MULTICAST_IF, Len: 4}}, -+ ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIP, Name: windows.IP_MULTICAST_LOOP, Len: 4}}, -+ ssoHeaderPrepend: {Option: socket.Option{Level: iana.ProtocolIP, Name: windows.IP_HDRINCL, Len: 4}}, -+ ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: windows.IP_ADD_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq}, -+ ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: windows.IP_DROP_MEMBERSHIP, Len: sizeofIPMreq}, typ: ssoTypeIPMreq}, - } - ) -- --func (pi *inetPktinfo) setIfindex(i int) { -- pi.Ifindex = int32(i) --} -diff --git a/vendor/golang.org/x/net/ipv4/sys_zos.go b/vendor/golang.org/x/net/ipv4/sys_zos.go -new file mode 100644 -index 0000000..be20640 ---- /dev/null -+++ b/vendor/golang.org/x/net/ipv4/sys_zos.go -@@ -0,0 +1,57 @@ -+// Copyright 2020 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+package ipv4 -+ -+import ( -+ "net" -+ "syscall" -+ "unsafe" -+ -+ "golang.org/x/net/internal/iana" -+ "golang.org/x/net/internal/socket" -+ -+ "golang.org/x/sys/unix" -+) -+ -+var ( -+ ctlOpts = [ctlMax]ctlOpt{ -+ ctlPacketInfo: {unix.IP_PKTINFO, sizeofInetPktinfo, marshalPacketInfo, parsePacketInfo}, -+ } -+ -+ sockOpts = map[int]*sockOpt{ -+ ssoMulticastTTL: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_TTL, Len: 1}}, -+ ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_IF, Len: 4}}, -+ ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_MULTICAST_LOOP, Len: 1}}, -+ ssoPacketInfo: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.IP_RECVPKTINFO, Len: 4}}, -+ ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -+ ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -+ ssoJoinSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoLeaveSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoBlockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIP, Name: unix.MCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ } -+) -+ -+func (pi *inetPktinfo) setIfindex(i int) { -+ pi.Ifindex = uint32(i) -+} -+ -+func (gr *groupReq) setGroup(grp net.IP) { -+ sa := (*sockaddrInet4)(unsafe.Pointer(&gr.Group)) -+ sa.Family = syscall.AF_INET -+ sa.Len = sizeofSockaddrInet4 -+ copy(sa.Addr[:], grp) -+} -+ -+func (gsr *groupSourceReq) setSourceGroup(grp, src net.IP) { -+ sa := (*sockaddrInet4)(unsafe.Pointer(&gsr.Group)) -+ sa.Family = syscall.AF_INET -+ sa.Len = sizeofSockaddrInet4 -+ copy(sa.Addr[:], grp) -+ sa = (*sockaddrInet4)(unsafe.Pointer(&gsr.Source)) -+ sa.Family = syscall.AF_INET -+ sa.Len = sizeofSockaddrInet4 -+ copy(sa.Addr[:], src) -+} -diff --git a/vendor/golang.org/x/net/ipv4/zsys_aix_ppc64.go b/vendor/golang.org/x/net/ipv4/zsys_aix_ppc64.go -index c741d5c..b7f2d6e 100644 ---- a/vendor/golang.org/x/net/ipv4/zsys_aix_ppc64.go -+++ b/vendor/golang.org/x/net/ipv4/zsys_aix_ppc64.go -@@ -2,28 +2,12 @@ - // cgo -godefs defs_aix.go - - // Added for go1.11 compatibility -+//go:build aix - // +build aix - - package ipv4 - - const ( -- sysIP_OPTIONS = 0x1 -- sysIP_HDRINCL = 0x2 -- sysIP_TOS = 0x3 -- sysIP_TTL = 0x4 -- sysIP_RECVOPTS = 0x5 -- sysIP_RECVRETOPTS = 0x6 -- sysIP_RECVDSTADDR = 0x7 -- sysIP_RETOPTS = 0x8 -- sysIP_RECVIF = 0x20 -- sysIP_RECVTTL = 0x22 -- -- sysIP_MULTICAST_IF = 0x9 -- sysIP_MULTICAST_TTL = 0xa -- sysIP_MULTICAST_LOOP = 0xb -- sysIP_ADD_MEMBERSHIP = 0xc -- sysIP_DROP_MEMBERSHIP = 0xd -- - sizeofIPMreq = 0x8 - ) - -diff --git a/vendor/golang.org/x/net/ipv4/zsys_darwin.go b/vendor/golang.org/x/net/ipv4/zsys_darwin.go -index e05a251..6c1b705 100644 ---- a/vendor/golang.org/x/net/ipv4/zsys_darwin.go -+++ b/vendor/golang.org/x/net/ipv4/zsys_darwin.go -@@ -4,45 +4,11 @@ - package ipv4 - - const ( -- sysIP_OPTIONS = 0x1 -- sysIP_HDRINCL = 0x2 -- sysIP_TOS = 0x3 -- sysIP_TTL = 0x4 -- sysIP_RECVOPTS = 0x5 -- sysIP_RECVRETOPTS = 0x6 -- sysIP_RECVDSTADDR = 0x7 -- sysIP_RETOPTS = 0x8 -- sysIP_RECVIF = 0x14 -- sysIP_STRIPHDR = 0x17 -- sysIP_RECVTTL = 0x18 -- sysIP_BOUND_IF = 0x19 -- sysIP_PKTINFO = 0x1a -- sysIP_RECVPKTINFO = 0x1a -- -- sysIP_MULTICAST_IF = 0x9 -- sysIP_MULTICAST_TTL = 0xa -- sysIP_MULTICAST_LOOP = 0xb -- sysIP_ADD_MEMBERSHIP = 0xc -- sysIP_DROP_MEMBERSHIP = 0xd -- sysIP_MULTICAST_VIF = 0xe -- sysIP_MULTICAST_IFINDEX = 0x42 -- sysIP_ADD_SOURCE_MEMBERSHIP = 0x46 -- sysIP_DROP_SOURCE_MEMBERSHIP = 0x47 -- sysIP_BLOCK_SOURCE = 0x48 -- sysIP_UNBLOCK_SOURCE = 0x49 -- sysMCAST_JOIN_GROUP = 0x50 -- sysMCAST_LEAVE_GROUP = 0x51 -- sysMCAST_JOIN_SOURCE_GROUP = 0x52 -- sysMCAST_LEAVE_SOURCE_GROUP = 0x53 -- sysMCAST_BLOCK_SOURCE = 0x54 -- sysMCAST_UNBLOCK_SOURCE = 0x55 -- - sizeofSockaddrStorage = 0x80 - sizeofSockaddrInet = 0x10 - sizeofInetPktinfo = 0xc - - sizeofIPMreq = 0x8 -- sizeofIPMreqn = 0xc - sizeofIPMreqSource = 0xc - sizeofGroupReq = 0x84 - sizeofGroupSourceReq = 0x104 -@@ -75,12 +41,6 @@ type ipMreq struct { - Interface [4]byte /* in_addr */ - } - --type ipMreqn struct { -- Multiaddr [4]byte /* in_addr */ -- Address [4]byte /* in_addr */ -- Ifindex int32 --} -- - type ipMreqSource struct { - Multiaddr [4]byte /* in_addr */ - Sourceaddr [4]byte /* in_addr */ -diff --git a/vendor/golang.org/x/net/ipv4/zsys_dragonfly.go b/vendor/golang.org/x/net/ipv4/zsys_dragonfly.go -index 6d65e9f..2155df1 100644 ---- a/vendor/golang.org/x/net/ipv4/zsys_dragonfly.go -+++ b/vendor/golang.org/x/net/ipv4/zsys_dragonfly.go -@@ -4,24 +4,6 @@ - package ipv4 - - const ( -- sysIP_OPTIONS = 0x1 -- sysIP_HDRINCL = 0x2 -- sysIP_TOS = 0x3 -- sysIP_TTL = 0x4 -- sysIP_RECVOPTS = 0x5 -- sysIP_RECVRETOPTS = 0x6 -- sysIP_RECVDSTADDR = 0x7 -- sysIP_RETOPTS = 0x8 -- sysIP_RECVIF = 0x14 -- sysIP_RECVTTL = 0x41 -- -- sysIP_MULTICAST_IF = 0x9 -- sysIP_MULTICAST_TTL = 0xa -- sysIP_MULTICAST_LOOP = 0xb -- sysIP_MULTICAST_VIF = 0xe -- sysIP_ADD_MEMBERSHIP = 0xc -- sysIP_DROP_MEMBERSHIP = 0xd -- - sizeofIPMreq = 0x8 - ) - -diff --git a/vendor/golang.org/x/net/ipv4/zsys_freebsd_386.go b/vendor/golang.org/x/net/ipv4/zsys_freebsd_386.go -index 136e2b8..ae40482 100644 ---- a/vendor/golang.org/x/net/ipv4/zsys_freebsd_386.go -+++ b/vendor/golang.org/x/net/ipv4/zsys_freebsd_386.go -@@ -4,45 +4,10 @@ - package ipv4 - - const ( -- sysIP_OPTIONS = 0x1 -- sysIP_HDRINCL = 0x2 -- sysIP_TOS = 0x3 -- sysIP_TTL = 0x4 -- sysIP_RECVOPTS = 0x5 -- sysIP_RECVRETOPTS = 0x6 -- sysIP_RECVDSTADDR = 0x7 -- sysIP_SENDSRCADDR = 0x7 -- sysIP_RETOPTS = 0x8 -- sysIP_RECVIF = 0x14 -- sysIP_ONESBCAST = 0x17 -- sysIP_BINDANY = 0x18 -- sysIP_RECVTTL = 0x41 -- sysIP_MINTTL = 0x42 -- sysIP_DONTFRAG = 0x43 -- sysIP_RECVTOS = 0x44 -- -- sysIP_MULTICAST_IF = 0x9 -- sysIP_MULTICAST_TTL = 0xa -- sysIP_MULTICAST_LOOP = 0xb -- sysIP_ADD_MEMBERSHIP = 0xc -- sysIP_DROP_MEMBERSHIP = 0xd -- sysIP_MULTICAST_VIF = 0xe -- sysIP_ADD_SOURCE_MEMBERSHIP = 0x46 -- sysIP_DROP_SOURCE_MEMBERSHIP = 0x47 -- sysIP_BLOCK_SOURCE = 0x48 -- sysIP_UNBLOCK_SOURCE = 0x49 -- sysMCAST_JOIN_GROUP = 0x50 -- sysMCAST_LEAVE_GROUP = 0x51 -- sysMCAST_JOIN_SOURCE_GROUP = 0x52 -- sysMCAST_LEAVE_SOURCE_GROUP = 0x53 -- sysMCAST_BLOCK_SOURCE = 0x54 -- sysMCAST_UNBLOCK_SOURCE = 0x55 -- - sizeofSockaddrStorage = 0x80 - sizeofSockaddrInet = 0x10 - - sizeofIPMreq = 0x8 -- sizeofIPMreqn = 0xc - sizeofIPMreqSource = 0xc - sizeofGroupReq = 0x84 - sizeofGroupSourceReq = 0x104 -@@ -69,12 +34,6 @@ type ipMreq struct { - Interface [4]byte /* in_addr */ - } - --type ipMreqn struct { -- Multiaddr [4]byte /* in_addr */ -- Address [4]byte /* in_addr */ -- Ifindex int32 --} -- - type ipMreqSource struct { - Multiaddr [4]byte /* in_addr */ - Sourceaddr [4]byte /* in_addr */ -diff --git a/vendor/golang.org/x/net/ipv4/zsys_freebsd_amd64.go b/vendor/golang.org/x/net/ipv4/zsys_freebsd_amd64.go -index 4f730f1..9018186 100644 ---- a/vendor/golang.org/x/net/ipv4/zsys_freebsd_amd64.go -+++ b/vendor/golang.org/x/net/ipv4/zsys_freebsd_amd64.go -@@ -4,45 +4,10 @@ - package ipv4 - - const ( -- sysIP_OPTIONS = 0x1 -- sysIP_HDRINCL = 0x2 -- sysIP_TOS = 0x3 -- sysIP_TTL = 0x4 -- sysIP_RECVOPTS = 0x5 -- sysIP_RECVRETOPTS = 0x6 -- sysIP_RECVDSTADDR = 0x7 -- sysIP_SENDSRCADDR = 0x7 -- sysIP_RETOPTS = 0x8 -- sysIP_RECVIF = 0x14 -- sysIP_ONESBCAST = 0x17 -- sysIP_BINDANY = 0x18 -- sysIP_RECVTTL = 0x41 -- sysIP_MINTTL = 0x42 -- sysIP_DONTFRAG = 0x43 -- sysIP_RECVTOS = 0x44 -- -- sysIP_MULTICAST_IF = 0x9 -- sysIP_MULTICAST_TTL = 0xa -- sysIP_MULTICAST_LOOP = 0xb -- sysIP_ADD_MEMBERSHIP = 0xc -- sysIP_DROP_MEMBERSHIP = 0xd -- sysIP_MULTICAST_VIF = 0xe -- sysIP_ADD_SOURCE_MEMBERSHIP = 0x46 -- sysIP_DROP_SOURCE_MEMBERSHIP = 0x47 -- sysIP_BLOCK_SOURCE = 0x48 -- sysIP_UNBLOCK_SOURCE = 0x49 -- sysMCAST_JOIN_GROUP = 0x50 -- sysMCAST_LEAVE_GROUP = 0x51 -- sysMCAST_JOIN_SOURCE_GROUP = 0x52 -- sysMCAST_LEAVE_SOURCE_GROUP = 0x53 -- sysMCAST_BLOCK_SOURCE = 0x54 -- sysMCAST_UNBLOCK_SOURCE = 0x55 -- - sizeofSockaddrStorage = 0x80 - sizeofSockaddrInet = 0x10 - - sizeofIPMreq = 0x8 -- sizeofIPMreqn = 0xc - sizeofIPMreqSource = 0xc - sizeofGroupReq = 0x88 - sizeofGroupSourceReq = 0x108 -@@ -69,12 +34,6 @@ type ipMreq struct { - Interface [4]byte /* in_addr */ - } - --type ipMreqn struct { -- Multiaddr [4]byte /* in_addr */ -- Address [4]byte /* in_addr */ -- Ifindex int32 --} -- - type ipMreqSource struct { - Multiaddr [4]byte /* in_addr */ - Sourceaddr [4]byte /* in_addr */ -diff --git a/vendor/golang.org/x/net/ipv4/zsys_freebsd_arm.go b/vendor/golang.org/x/net/ipv4/zsys_freebsd_arm.go -index 4f730f1..9018186 100644 ---- a/vendor/golang.org/x/net/ipv4/zsys_freebsd_arm.go -+++ b/vendor/golang.org/x/net/ipv4/zsys_freebsd_arm.go -@@ -4,45 +4,10 @@ - package ipv4 - - const ( -- sysIP_OPTIONS = 0x1 -- sysIP_HDRINCL = 0x2 -- sysIP_TOS = 0x3 -- sysIP_TTL = 0x4 -- sysIP_RECVOPTS = 0x5 -- sysIP_RECVRETOPTS = 0x6 -- sysIP_RECVDSTADDR = 0x7 -- sysIP_SENDSRCADDR = 0x7 -- sysIP_RETOPTS = 0x8 -- sysIP_RECVIF = 0x14 -- sysIP_ONESBCAST = 0x17 -- sysIP_BINDANY = 0x18 -- sysIP_RECVTTL = 0x41 -- sysIP_MINTTL = 0x42 -- sysIP_DONTFRAG = 0x43 -- sysIP_RECVTOS = 0x44 -- -- sysIP_MULTICAST_IF = 0x9 -- sysIP_MULTICAST_TTL = 0xa -- sysIP_MULTICAST_LOOP = 0xb -- sysIP_ADD_MEMBERSHIP = 0xc -- sysIP_DROP_MEMBERSHIP = 0xd -- sysIP_MULTICAST_VIF = 0xe -- sysIP_ADD_SOURCE_MEMBERSHIP = 0x46 -- sysIP_DROP_SOURCE_MEMBERSHIP = 0x47 -- sysIP_BLOCK_SOURCE = 0x48 -- sysIP_UNBLOCK_SOURCE = 0x49 -- sysMCAST_JOIN_GROUP = 0x50 -- sysMCAST_LEAVE_GROUP = 0x51 -- sysMCAST_JOIN_SOURCE_GROUP = 0x52 -- sysMCAST_LEAVE_SOURCE_GROUP = 0x53 -- sysMCAST_BLOCK_SOURCE = 0x54 -- sysMCAST_UNBLOCK_SOURCE = 0x55 -- - sizeofSockaddrStorage = 0x80 - sizeofSockaddrInet = 0x10 - - sizeofIPMreq = 0x8 -- sizeofIPMreqn = 0xc - sizeofIPMreqSource = 0xc - sizeofGroupReq = 0x88 - sizeofGroupSourceReq = 0x108 -@@ -69,12 +34,6 @@ type ipMreq struct { - Interface [4]byte /* in_addr */ - } - --type ipMreqn struct { -- Multiaddr [4]byte /* in_addr */ -- Address [4]byte /* in_addr */ -- Ifindex int32 --} -- - type ipMreqSource struct { - Multiaddr [4]byte /* in_addr */ - Sourceaddr [4]byte /* in_addr */ -diff --git a/vendor/golang.org/x/net/ipv4/zsys_freebsd_arm64.go b/vendor/golang.org/x/net/ipv4/zsys_freebsd_arm64.go -index ecebf32..0feb9a7 100644 ---- a/vendor/golang.org/x/net/ipv4/zsys_freebsd_arm64.go -+++ b/vendor/golang.org/x/net/ipv4/zsys_freebsd_arm64.go -@@ -4,45 +4,10 @@ - package ipv4 - - const ( -- sysIP_OPTIONS = 0x1 -- sysIP_HDRINCL = 0x2 -- sysIP_TOS = 0x3 -- sysIP_TTL = 0x4 -- sysIP_RECVOPTS = 0x5 -- sysIP_RECVRETOPTS = 0x6 -- sysIP_RECVDSTADDR = 0x7 -- sysIP_SENDSRCADDR = 0x7 -- sysIP_RETOPTS = 0x8 -- sysIP_RECVIF = 0x14 -- sysIP_ONESBCAST = 0x17 -- sysIP_BINDANY = 0x18 -- sysIP_RECVTTL = 0x41 -- sysIP_MINTTL = 0x42 -- sysIP_DONTFRAG = 0x43 -- sysIP_RECVTOS = 0x44 -- -- sysIP_MULTICAST_IF = 0x9 -- sysIP_MULTICAST_TTL = 0xa -- sysIP_MULTICAST_LOOP = 0xb -- sysIP_ADD_MEMBERSHIP = 0xc -- sysIP_DROP_MEMBERSHIP = 0xd -- sysIP_MULTICAST_VIF = 0xe -- sysIP_ADD_SOURCE_MEMBERSHIP = 0x46 -- sysIP_DROP_SOURCE_MEMBERSHIP = 0x47 -- sysIP_BLOCK_SOURCE = 0x48 -- sysIP_UNBLOCK_SOURCE = 0x49 -- sysMCAST_JOIN_GROUP = 0x50 -- sysMCAST_LEAVE_GROUP = 0x51 -- sysMCAST_JOIN_SOURCE_GROUP = 0x52 -- sysMCAST_LEAVE_SOURCE_GROUP = 0x53 -- sysMCAST_BLOCK_SOURCE = 0x54 -- sysMCAST_UNBLOCK_SOURCE = 0x55 -- - sizeofSockaddrStorage = 0x80 - sizeofSockaddrInet = 0x10 - - sizeofIPMreq = 0x8 -- sizeofIPMreqn = 0xc - sizeofIPMreqSource = 0xc - sizeofGroupReq = 0x88 - sizeofGroupSourceReq = 0x108 -@@ -69,12 +34,6 @@ type ipMreq struct { - Interface [4]byte /* in_addr */ - } - --type ipMreqn struct { -- Multiaddr [4]byte /* in_addr */ -- Address [4]byte /* in_addr */ -- Ifindex int32 --} -- - type ipMreqSource struct { - Multiaddr [4]byte /* in_addr */ - Sourceaddr [4]byte /* in_addr */ -diff --git a/vendor/golang.org/x/net/ipv4/zsys_freebsd_riscv64.go b/vendor/golang.org/x/net/ipv4/zsys_freebsd_riscv64.go -new file mode 100644 -index 0000000..0feb9a7 ---- /dev/null -+++ b/vendor/golang.org/x/net/ipv4/zsys_freebsd_riscv64.go -@@ -0,0 +1,52 @@ -+// Code generated by cmd/cgo -godefs; DO NOT EDIT. -+// cgo -godefs defs_freebsd.go -+ -+package ipv4 -+ -+const ( -+ sizeofSockaddrStorage = 0x80 -+ sizeofSockaddrInet = 0x10 -+ -+ sizeofIPMreq = 0x8 -+ sizeofIPMreqSource = 0xc -+ sizeofGroupReq = 0x88 -+ sizeofGroupSourceReq = 0x108 -+) -+ -+type sockaddrStorage struct { -+ Len uint8 -+ Family uint8 -+ X__ss_pad1 [6]uint8 -+ X__ss_align int64 -+ X__ss_pad2 [112]uint8 -+} -+ -+type sockaddrInet struct { -+ Len uint8 -+ Family uint8 -+ Port uint16 -+ Addr [4]byte /* in_addr */ -+ Zero [8]uint8 -+} -+ -+type ipMreq struct { -+ Multiaddr [4]byte /* in_addr */ -+ Interface [4]byte /* in_addr */ -+} -+ -+type ipMreqSource struct { -+ Multiaddr [4]byte /* in_addr */ -+ Sourceaddr [4]byte /* in_addr */ -+ Interface [4]byte /* in_addr */ -+} -+ -+type groupReq struct { -+ Interface uint32 -+ Group sockaddrStorage -+} -+ -+type groupSourceReq struct { -+ Interface uint32 -+ Group sockaddrStorage -+ Source sockaddrStorage -+} -diff --git a/vendor/golang.org/x/net/ipv4/zsys_linux_386.go b/vendor/golang.org/x/net/ipv4/zsys_linux_386.go -index 1c7fdfa..d510357 100644 ---- a/vendor/golang.org/x/net/ipv4/zsys_linux_386.go -+++ b/vendor/golang.org/x/net/ipv4/zsys_linux_386.go -@@ -4,64 +4,12 @@ - package ipv4 - - const ( -- sysIP_TOS = 0x1 -- sysIP_TTL = 0x2 -- sysIP_HDRINCL = 0x3 -- sysIP_OPTIONS = 0x4 -- sysIP_ROUTER_ALERT = 0x5 -- sysIP_RECVOPTS = 0x6 -- sysIP_RETOPTS = 0x7 -- sysIP_PKTINFO = 0x8 -- sysIP_PKTOPTIONS = 0x9 -- sysIP_MTU_DISCOVER = 0xa -- sysIP_RECVERR = 0xb -- sysIP_RECVTTL = 0xc -- sysIP_RECVTOS = 0xd -- sysIP_MTU = 0xe -- sysIP_FREEBIND = 0xf -- sysIP_TRANSPARENT = 0x13 -- sysIP_RECVRETOPTS = 0x7 -- sysIP_ORIGDSTADDR = 0x14 -- sysIP_RECVORIGDSTADDR = 0x14 -- sysIP_MINTTL = 0x15 -- sysIP_NODEFRAG = 0x16 -- sysIP_UNICAST_IF = 0x32 -- -- sysIP_MULTICAST_IF = 0x20 -- sysIP_MULTICAST_TTL = 0x21 -- sysIP_MULTICAST_LOOP = 0x22 -- sysIP_ADD_MEMBERSHIP = 0x23 -- sysIP_DROP_MEMBERSHIP = 0x24 -- sysIP_UNBLOCK_SOURCE = 0x25 -- sysIP_BLOCK_SOURCE = 0x26 -- sysIP_ADD_SOURCE_MEMBERSHIP = 0x27 -- sysIP_DROP_SOURCE_MEMBERSHIP = 0x28 -- sysIP_MSFILTER = 0x29 -- sysMCAST_JOIN_GROUP = 0x2a -- sysMCAST_LEAVE_GROUP = 0x2d -- sysMCAST_JOIN_SOURCE_GROUP = 0x2e -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2f -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_MSFILTER = 0x30 -- sysIP_MULTICAST_ALL = 0x31 -- -- sysICMP_FILTER = 0x1 -- -- sysSO_EE_ORIGIN_NONE = 0x0 -- sysSO_EE_ORIGIN_LOCAL = 0x1 -- sysSO_EE_ORIGIN_ICMP = 0x2 -- sysSO_EE_ORIGIN_ICMP6 = 0x3 -- sysSO_EE_ORIGIN_TXSTATUS = 0x4 -- sysSO_EE_ORIGIN_TIMESTAMPING = 0x4 -- - sizeofKernelSockaddrStorage = 0x80 - sizeofSockaddrInet = 0x10 - sizeofInetPktinfo = 0xc - sizeofSockExtendedErr = 0x10 - - sizeofIPMreq = 0x8 -- sizeofIPMreqn = 0xc - sizeofIPMreqSource = 0xc - sizeofGroupReq = 0x84 - sizeofGroupSourceReq = 0x104 -@@ -102,12 +50,6 @@ type ipMreq struct { - Interface [4]byte /* in_addr */ - } - --type ipMreqn struct { -- Multiaddr [4]byte /* in_addr */ -- Address [4]byte /* in_addr */ -- Ifindex int32 --} -- - type ipMreqSource struct { - Multiaddr uint32 - Interface uint32 -diff --git a/vendor/golang.org/x/net/ipv4/zsys_linux_amd64.go b/vendor/golang.org/x/net/ipv4/zsys_linux_amd64.go -index a04e785..eb10cc7 100644 ---- a/vendor/golang.org/x/net/ipv4/zsys_linux_amd64.go -+++ b/vendor/golang.org/x/net/ipv4/zsys_linux_amd64.go -@@ -4,64 +4,12 @@ - package ipv4 - - const ( -- sysIP_TOS = 0x1 -- sysIP_TTL = 0x2 -- sysIP_HDRINCL = 0x3 -- sysIP_OPTIONS = 0x4 -- sysIP_ROUTER_ALERT = 0x5 -- sysIP_RECVOPTS = 0x6 -- sysIP_RETOPTS = 0x7 -- sysIP_PKTINFO = 0x8 -- sysIP_PKTOPTIONS = 0x9 -- sysIP_MTU_DISCOVER = 0xa -- sysIP_RECVERR = 0xb -- sysIP_RECVTTL = 0xc -- sysIP_RECVTOS = 0xd -- sysIP_MTU = 0xe -- sysIP_FREEBIND = 0xf -- sysIP_TRANSPARENT = 0x13 -- sysIP_RECVRETOPTS = 0x7 -- sysIP_ORIGDSTADDR = 0x14 -- sysIP_RECVORIGDSTADDR = 0x14 -- sysIP_MINTTL = 0x15 -- sysIP_NODEFRAG = 0x16 -- sysIP_UNICAST_IF = 0x32 -- -- sysIP_MULTICAST_IF = 0x20 -- sysIP_MULTICAST_TTL = 0x21 -- sysIP_MULTICAST_LOOP = 0x22 -- sysIP_ADD_MEMBERSHIP = 0x23 -- sysIP_DROP_MEMBERSHIP = 0x24 -- sysIP_UNBLOCK_SOURCE = 0x25 -- sysIP_BLOCK_SOURCE = 0x26 -- sysIP_ADD_SOURCE_MEMBERSHIP = 0x27 -- sysIP_DROP_SOURCE_MEMBERSHIP = 0x28 -- sysIP_MSFILTER = 0x29 -- sysMCAST_JOIN_GROUP = 0x2a -- sysMCAST_LEAVE_GROUP = 0x2d -- sysMCAST_JOIN_SOURCE_GROUP = 0x2e -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2f -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_MSFILTER = 0x30 -- sysIP_MULTICAST_ALL = 0x31 -- -- sysICMP_FILTER = 0x1 -- -- sysSO_EE_ORIGIN_NONE = 0x0 -- sysSO_EE_ORIGIN_LOCAL = 0x1 -- sysSO_EE_ORIGIN_ICMP = 0x2 -- sysSO_EE_ORIGIN_ICMP6 = 0x3 -- sysSO_EE_ORIGIN_TXSTATUS = 0x4 -- sysSO_EE_ORIGIN_TIMESTAMPING = 0x4 -- - sizeofKernelSockaddrStorage = 0x80 - sizeofSockaddrInet = 0x10 - sizeofInetPktinfo = 0xc - sizeofSockExtendedErr = 0x10 - - sizeofIPMreq = 0x8 -- sizeofIPMreqn = 0xc - sizeofIPMreqSource = 0xc - sizeofGroupReq = 0x88 - sizeofGroupSourceReq = 0x108 -@@ -102,12 +50,6 @@ type ipMreq struct { - Interface [4]byte /* in_addr */ - } - --type ipMreqn struct { -- Multiaddr [4]byte /* in_addr */ -- Address [4]byte /* in_addr */ -- Ifindex int32 --} -- - type ipMreqSource struct { - Multiaddr uint32 - Interface uint32 -diff --git a/vendor/golang.org/x/net/ipv4/zsys_linux_arm.go b/vendor/golang.org/x/net/ipv4/zsys_linux_arm.go -index 1c7fdfa..d510357 100644 ---- a/vendor/golang.org/x/net/ipv4/zsys_linux_arm.go -+++ b/vendor/golang.org/x/net/ipv4/zsys_linux_arm.go -@@ -4,64 +4,12 @@ - package ipv4 - - const ( -- sysIP_TOS = 0x1 -- sysIP_TTL = 0x2 -- sysIP_HDRINCL = 0x3 -- sysIP_OPTIONS = 0x4 -- sysIP_ROUTER_ALERT = 0x5 -- sysIP_RECVOPTS = 0x6 -- sysIP_RETOPTS = 0x7 -- sysIP_PKTINFO = 0x8 -- sysIP_PKTOPTIONS = 0x9 -- sysIP_MTU_DISCOVER = 0xa -- sysIP_RECVERR = 0xb -- sysIP_RECVTTL = 0xc -- sysIP_RECVTOS = 0xd -- sysIP_MTU = 0xe -- sysIP_FREEBIND = 0xf -- sysIP_TRANSPARENT = 0x13 -- sysIP_RECVRETOPTS = 0x7 -- sysIP_ORIGDSTADDR = 0x14 -- sysIP_RECVORIGDSTADDR = 0x14 -- sysIP_MINTTL = 0x15 -- sysIP_NODEFRAG = 0x16 -- sysIP_UNICAST_IF = 0x32 -- -- sysIP_MULTICAST_IF = 0x20 -- sysIP_MULTICAST_TTL = 0x21 -- sysIP_MULTICAST_LOOP = 0x22 -- sysIP_ADD_MEMBERSHIP = 0x23 -- sysIP_DROP_MEMBERSHIP = 0x24 -- sysIP_UNBLOCK_SOURCE = 0x25 -- sysIP_BLOCK_SOURCE = 0x26 -- sysIP_ADD_SOURCE_MEMBERSHIP = 0x27 -- sysIP_DROP_SOURCE_MEMBERSHIP = 0x28 -- sysIP_MSFILTER = 0x29 -- sysMCAST_JOIN_GROUP = 0x2a -- sysMCAST_LEAVE_GROUP = 0x2d -- sysMCAST_JOIN_SOURCE_GROUP = 0x2e -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2f -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_MSFILTER = 0x30 -- sysIP_MULTICAST_ALL = 0x31 -- -- sysICMP_FILTER = 0x1 -- -- sysSO_EE_ORIGIN_NONE = 0x0 -- sysSO_EE_ORIGIN_LOCAL = 0x1 -- sysSO_EE_ORIGIN_ICMP = 0x2 -- sysSO_EE_ORIGIN_ICMP6 = 0x3 -- sysSO_EE_ORIGIN_TXSTATUS = 0x4 -- sysSO_EE_ORIGIN_TIMESTAMPING = 0x4 -- - sizeofKernelSockaddrStorage = 0x80 - sizeofSockaddrInet = 0x10 - sizeofInetPktinfo = 0xc - sizeofSockExtendedErr = 0x10 - - sizeofIPMreq = 0x8 -- sizeofIPMreqn = 0xc - sizeofIPMreqSource = 0xc - sizeofGroupReq = 0x84 - sizeofGroupSourceReq = 0x104 -@@ -102,12 +50,6 @@ type ipMreq struct { - Interface [4]byte /* in_addr */ - } - --type ipMreqn struct { -- Multiaddr [4]byte /* in_addr */ -- Address [4]byte /* in_addr */ -- Ifindex int32 --} -- - type ipMreqSource struct { - Multiaddr uint32 - Interface uint32 -diff --git a/vendor/golang.org/x/net/ipv4/zsys_linux_arm64.go b/vendor/golang.org/x/net/ipv4/zsys_linux_arm64.go -index a04e785..eb10cc7 100644 ---- a/vendor/golang.org/x/net/ipv4/zsys_linux_arm64.go -+++ b/vendor/golang.org/x/net/ipv4/zsys_linux_arm64.go -@@ -4,64 +4,12 @@ - package ipv4 - - const ( -- sysIP_TOS = 0x1 -- sysIP_TTL = 0x2 -- sysIP_HDRINCL = 0x3 -- sysIP_OPTIONS = 0x4 -- sysIP_ROUTER_ALERT = 0x5 -- sysIP_RECVOPTS = 0x6 -- sysIP_RETOPTS = 0x7 -- sysIP_PKTINFO = 0x8 -- sysIP_PKTOPTIONS = 0x9 -- sysIP_MTU_DISCOVER = 0xa -- sysIP_RECVERR = 0xb -- sysIP_RECVTTL = 0xc -- sysIP_RECVTOS = 0xd -- sysIP_MTU = 0xe -- sysIP_FREEBIND = 0xf -- sysIP_TRANSPARENT = 0x13 -- sysIP_RECVRETOPTS = 0x7 -- sysIP_ORIGDSTADDR = 0x14 -- sysIP_RECVORIGDSTADDR = 0x14 -- sysIP_MINTTL = 0x15 -- sysIP_NODEFRAG = 0x16 -- sysIP_UNICAST_IF = 0x32 -- -- sysIP_MULTICAST_IF = 0x20 -- sysIP_MULTICAST_TTL = 0x21 -- sysIP_MULTICAST_LOOP = 0x22 -- sysIP_ADD_MEMBERSHIP = 0x23 -- sysIP_DROP_MEMBERSHIP = 0x24 -- sysIP_UNBLOCK_SOURCE = 0x25 -- sysIP_BLOCK_SOURCE = 0x26 -- sysIP_ADD_SOURCE_MEMBERSHIP = 0x27 -- sysIP_DROP_SOURCE_MEMBERSHIP = 0x28 -- sysIP_MSFILTER = 0x29 -- sysMCAST_JOIN_GROUP = 0x2a -- sysMCAST_LEAVE_GROUP = 0x2d -- sysMCAST_JOIN_SOURCE_GROUP = 0x2e -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2f -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_MSFILTER = 0x30 -- sysIP_MULTICAST_ALL = 0x31 -- -- sysICMP_FILTER = 0x1 -- -- sysSO_EE_ORIGIN_NONE = 0x0 -- sysSO_EE_ORIGIN_LOCAL = 0x1 -- sysSO_EE_ORIGIN_ICMP = 0x2 -- sysSO_EE_ORIGIN_ICMP6 = 0x3 -- sysSO_EE_ORIGIN_TXSTATUS = 0x4 -- sysSO_EE_ORIGIN_TIMESTAMPING = 0x4 -- - sizeofKernelSockaddrStorage = 0x80 - sizeofSockaddrInet = 0x10 - sizeofInetPktinfo = 0xc - sizeofSockExtendedErr = 0x10 - - sizeofIPMreq = 0x8 -- sizeofIPMreqn = 0xc - sizeofIPMreqSource = 0xc - sizeofGroupReq = 0x88 - sizeofGroupSourceReq = 0x108 -@@ -102,12 +50,6 @@ type ipMreq struct { - Interface [4]byte /* in_addr */ - } - --type ipMreqn struct { -- Multiaddr [4]byte /* in_addr */ -- Address [4]byte /* in_addr */ -- Ifindex int32 --} -- - type ipMreqSource struct { - Multiaddr uint32 - Interface uint32 -diff --git a/vendor/golang.org/x/net/ipv4/zsys_linux_loong64.go b/vendor/golang.org/x/net/ipv4/zsys_linux_loong64.go -new file mode 100644 -index 0000000..e15c22c ---- /dev/null -+++ b/vendor/golang.org/x/net/ipv4/zsys_linux_loong64.go -@@ -0,0 +1,77 @@ -+// Code generated by cmd/cgo -godefs; DO NOT EDIT. -+// cgo -godefs defs_linux.go -+ -+//go:build loong64 -+// +build loong64 -+ -+package ipv4 -+ -+const ( -+ sizeofKernelSockaddrStorage = 0x80 -+ sizeofSockaddrInet = 0x10 -+ sizeofInetPktinfo = 0xc -+ sizeofSockExtendedErr = 0x10 -+ -+ sizeofIPMreq = 0x8 -+ sizeofIPMreqSource = 0xc -+ sizeofGroupReq = 0x88 -+ sizeofGroupSourceReq = 0x108 -+ -+ sizeofICMPFilter = 0x4 -+) -+ -+type kernelSockaddrStorage struct { -+ Family uint16 -+ X__data [126]int8 -+} -+ -+type sockaddrInet struct { -+ Family uint16 -+ Port uint16 -+ Addr [4]byte /* in_addr */ -+ X__pad [8]uint8 -+} -+ -+type inetPktinfo struct { -+ Ifindex int32 -+ Spec_dst [4]byte /* in_addr */ -+ Addr [4]byte /* in_addr */ -+} -+ -+type sockExtendedErr struct { -+ Errno uint32 -+ Origin uint8 -+ Type uint8 -+ Code uint8 -+ Pad uint8 -+ Info uint32 -+ Data uint32 -+} -+ -+type ipMreq struct { -+ Multiaddr [4]byte /* in_addr */ -+ Interface [4]byte /* in_addr */ -+} -+ -+type ipMreqSource struct { -+ Multiaddr uint32 -+ Interface uint32 -+ Sourceaddr uint32 -+} -+ -+type groupReq struct { -+ Interface uint32 -+ Pad_cgo_0 [4]byte -+ Group kernelSockaddrStorage -+} -+ -+type groupSourceReq struct { -+ Interface uint32 -+ Pad_cgo_0 [4]byte -+ Group kernelSockaddrStorage -+ Source kernelSockaddrStorage -+} -+ -+type icmpFilter struct { -+ Data uint32 -+} -diff --git a/vendor/golang.org/x/net/ipv4/zsys_linux_mips.go b/vendor/golang.org/x/net/ipv4/zsys_linux_mips.go -index 1c7fdfa..d510357 100644 ---- a/vendor/golang.org/x/net/ipv4/zsys_linux_mips.go -+++ b/vendor/golang.org/x/net/ipv4/zsys_linux_mips.go -@@ -4,64 +4,12 @@ - package ipv4 - - const ( -- sysIP_TOS = 0x1 -- sysIP_TTL = 0x2 -- sysIP_HDRINCL = 0x3 -- sysIP_OPTIONS = 0x4 -- sysIP_ROUTER_ALERT = 0x5 -- sysIP_RECVOPTS = 0x6 -- sysIP_RETOPTS = 0x7 -- sysIP_PKTINFO = 0x8 -- sysIP_PKTOPTIONS = 0x9 -- sysIP_MTU_DISCOVER = 0xa -- sysIP_RECVERR = 0xb -- sysIP_RECVTTL = 0xc -- sysIP_RECVTOS = 0xd -- sysIP_MTU = 0xe -- sysIP_FREEBIND = 0xf -- sysIP_TRANSPARENT = 0x13 -- sysIP_RECVRETOPTS = 0x7 -- sysIP_ORIGDSTADDR = 0x14 -- sysIP_RECVORIGDSTADDR = 0x14 -- sysIP_MINTTL = 0x15 -- sysIP_NODEFRAG = 0x16 -- sysIP_UNICAST_IF = 0x32 -- -- sysIP_MULTICAST_IF = 0x20 -- sysIP_MULTICAST_TTL = 0x21 -- sysIP_MULTICAST_LOOP = 0x22 -- sysIP_ADD_MEMBERSHIP = 0x23 -- sysIP_DROP_MEMBERSHIP = 0x24 -- sysIP_UNBLOCK_SOURCE = 0x25 -- sysIP_BLOCK_SOURCE = 0x26 -- sysIP_ADD_SOURCE_MEMBERSHIP = 0x27 -- sysIP_DROP_SOURCE_MEMBERSHIP = 0x28 -- sysIP_MSFILTER = 0x29 -- sysMCAST_JOIN_GROUP = 0x2a -- sysMCAST_LEAVE_GROUP = 0x2d -- sysMCAST_JOIN_SOURCE_GROUP = 0x2e -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2f -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_MSFILTER = 0x30 -- sysIP_MULTICAST_ALL = 0x31 -- -- sysICMP_FILTER = 0x1 -- -- sysSO_EE_ORIGIN_NONE = 0x0 -- sysSO_EE_ORIGIN_LOCAL = 0x1 -- sysSO_EE_ORIGIN_ICMP = 0x2 -- sysSO_EE_ORIGIN_ICMP6 = 0x3 -- sysSO_EE_ORIGIN_TXSTATUS = 0x4 -- sysSO_EE_ORIGIN_TIMESTAMPING = 0x4 -- - sizeofKernelSockaddrStorage = 0x80 - sizeofSockaddrInet = 0x10 - sizeofInetPktinfo = 0xc - sizeofSockExtendedErr = 0x10 - - sizeofIPMreq = 0x8 -- sizeofIPMreqn = 0xc - sizeofIPMreqSource = 0xc - sizeofGroupReq = 0x84 - sizeofGroupSourceReq = 0x104 -@@ -102,12 +50,6 @@ type ipMreq struct { - Interface [4]byte /* in_addr */ - } - --type ipMreqn struct { -- Multiaddr [4]byte /* in_addr */ -- Address [4]byte /* in_addr */ -- Ifindex int32 --} -- - type ipMreqSource struct { - Multiaddr uint32 - Interface uint32 -diff --git a/vendor/golang.org/x/net/ipv4/zsys_linux_mips64.go b/vendor/golang.org/x/net/ipv4/zsys_linux_mips64.go -index a04e785..eb10cc7 100644 ---- a/vendor/golang.org/x/net/ipv4/zsys_linux_mips64.go -+++ b/vendor/golang.org/x/net/ipv4/zsys_linux_mips64.go -@@ -4,64 +4,12 @@ - package ipv4 - - const ( -- sysIP_TOS = 0x1 -- sysIP_TTL = 0x2 -- sysIP_HDRINCL = 0x3 -- sysIP_OPTIONS = 0x4 -- sysIP_ROUTER_ALERT = 0x5 -- sysIP_RECVOPTS = 0x6 -- sysIP_RETOPTS = 0x7 -- sysIP_PKTINFO = 0x8 -- sysIP_PKTOPTIONS = 0x9 -- sysIP_MTU_DISCOVER = 0xa -- sysIP_RECVERR = 0xb -- sysIP_RECVTTL = 0xc -- sysIP_RECVTOS = 0xd -- sysIP_MTU = 0xe -- sysIP_FREEBIND = 0xf -- sysIP_TRANSPARENT = 0x13 -- sysIP_RECVRETOPTS = 0x7 -- sysIP_ORIGDSTADDR = 0x14 -- sysIP_RECVORIGDSTADDR = 0x14 -- sysIP_MINTTL = 0x15 -- sysIP_NODEFRAG = 0x16 -- sysIP_UNICAST_IF = 0x32 -- -- sysIP_MULTICAST_IF = 0x20 -- sysIP_MULTICAST_TTL = 0x21 -- sysIP_MULTICAST_LOOP = 0x22 -- sysIP_ADD_MEMBERSHIP = 0x23 -- sysIP_DROP_MEMBERSHIP = 0x24 -- sysIP_UNBLOCK_SOURCE = 0x25 -- sysIP_BLOCK_SOURCE = 0x26 -- sysIP_ADD_SOURCE_MEMBERSHIP = 0x27 -- sysIP_DROP_SOURCE_MEMBERSHIP = 0x28 -- sysIP_MSFILTER = 0x29 -- sysMCAST_JOIN_GROUP = 0x2a -- sysMCAST_LEAVE_GROUP = 0x2d -- sysMCAST_JOIN_SOURCE_GROUP = 0x2e -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2f -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_MSFILTER = 0x30 -- sysIP_MULTICAST_ALL = 0x31 -- -- sysICMP_FILTER = 0x1 -- -- sysSO_EE_ORIGIN_NONE = 0x0 -- sysSO_EE_ORIGIN_LOCAL = 0x1 -- sysSO_EE_ORIGIN_ICMP = 0x2 -- sysSO_EE_ORIGIN_ICMP6 = 0x3 -- sysSO_EE_ORIGIN_TXSTATUS = 0x4 -- sysSO_EE_ORIGIN_TIMESTAMPING = 0x4 -- - sizeofKernelSockaddrStorage = 0x80 - sizeofSockaddrInet = 0x10 - sizeofInetPktinfo = 0xc - sizeofSockExtendedErr = 0x10 - - sizeofIPMreq = 0x8 -- sizeofIPMreqn = 0xc - sizeofIPMreqSource = 0xc - sizeofGroupReq = 0x88 - sizeofGroupSourceReq = 0x108 -@@ -102,12 +50,6 @@ type ipMreq struct { - Interface [4]byte /* in_addr */ - } - --type ipMreqn struct { -- Multiaddr [4]byte /* in_addr */ -- Address [4]byte /* in_addr */ -- Ifindex int32 --} -- - type ipMreqSource struct { - Multiaddr uint32 - Interface uint32 -diff --git a/vendor/golang.org/x/net/ipv4/zsys_linux_mips64le.go b/vendor/golang.org/x/net/ipv4/zsys_linux_mips64le.go -index a04e785..eb10cc7 100644 ---- a/vendor/golang.org/x/net/ipv4/zsys_linux_mips64le.go -+++ b/vendor/golang.org/x/net/ipv4/zsys_linux_mips64le.go -@@ -4,64 +4,12 @@ - package ipv4 - - const ( -- sysIP_TOS = 0x1 -- sysIP_TTL = 0x2 -- sysIP_HDRINCL = 0x3 -- sysIP_OPTIONS = 0x4 -- sysIP_ROUTER_ALERT = 0x5 -- sysIP_RECVOPTS = 0x6 -- sysIP_RETOPTS = 0x7 -- sysIP_PKTINFO = 0x8 -- sysIP_PKTOPTIONS = 0x9 -- sysIP_MTU_DISCOVER = 0xa -- sysIP_RECVERR = 0xb -- sysIP_RECVTTL = 0xc -- sysIP_RECVTOS = 0xd -- sysIP_MTU = 0xe -- sysIP_FREEBIND = 0xf -- sysIP_TRANSPARENT = 0x13 -- sysIP_RECVRETOPTS = 0x7 -- sysIP_ORIGDSTADDR = 0x14 -- sysIP_RECVORIGDSTADDR = 0x14 -- sysIP_MINTTL = 0x15 -- sysIP_NODEFRAG = 0x16 -- sysIP_UNICAST_IF = 0x32 -- -- sysIP_MULTICAST_IF = 0x20 -- sysIP_MULTICAST_TTL = 0x21 -- sysIP_MULTICAST_LOOP = 0x22 -- sysIP_ADD_MEMBERSHIP = 0x23 -- sysIP_DROP_MEMBERSHIP = 0x24 -- sysIP_UNBLOCK_SOURCE = 0x25 -- sysIP_BLOCK_SOURCE = 0x26 -- sysIP_ADD_SOURCE_MEMBERSHIP = 0x27 -- sysIP_DROP_SOURCE_MEMBERSHIP = 0x28 -- sysIP_MSFILTER = 0x29 -- sysMCAST_JOIN_GROUP = 0x2a -- sysMCAST_LEAVE_GROUP = 0x2d -- sysMCAST_JOIN_SOURCE_GROUP = 0x2e -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2f -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_MSFILTER = 0x30 -- sysIP_MULTICAST_ALL = 0x31 -- -- sysICMP_FILTER = 0x1 -- -- sysSO_EE_ORIGIN_NONE = 0x0 -- sysSO_EE_ORIGIN_LOCAL = 0x1 -- sysSO_EE_ORIGIN_ICMP = 0x2 -- sysSO_EE_ORIGIN_ICMP6 = 0x3 -- sysSO_EE_ORIGIN_TXSTATUS = 0x4 -- sysSO_EE_ORIGIN_TIMESTAMPING = 0x4 -- - sizeofKernelSockaddrStorage = 0x80 - sizeofSockaddrInet = 0x10 - sizeofInetPktinfo = 0xc - sizeofSockExtendedErr = 0x10 - - sizeofIPMreq = 0x8 -- sizeofIPMreqn = 0xc - sizeofIPMreqSource = 0xc - sizeofGroupReq = 0x88 - sizeofGroupSourceReq = 0x108 -@@ -102,12 +50,6 @@ type ipMreq struct { - Interface [4]byte /* in_addr */ - } - --type ipMreqn struct { -- Multiaddr [4]byte /* in_addr */ -- Address [4]byte /* in_addr */ -- Ifindex int32 --} -- - type ipMreqSource struct { - Multiaddr uint32 - Interface uint32 -diff --git a/vendor/golang.org/x/net/ipv4/zsys_linux_mipsle.go b/vendor/golang.org/x/net/ipv4/zsys_linux_mipsle.go -index 1c7fdfa..d510357 100644 ---- a/vendor/golang.org/x/net/ipv4/zsys_linux_mipsle.go -+++ b/vendor/golang.org/x/net/ipv4/zsys_linux_mipsle.go -@@ -4,64 +4,12 @@ - package ipv4 - - const ( -- sysIP_TOS = 0x1 -- sysIP_TTL = 0x2 -- sysIP_HDRINCL = 0x3 -- sysIP_OPTIONS = 0x4 -- sysIP_ROUTER_ALERT = 0x5 -- sysIP_RECVOPTS = 0x6 -- sysIP_RETOPTS = 0x7 -- sysIP_PKTINFO = 0x8 -- sysIP_PKTOPTIONS = 0x9 -- sysIP_MTU_DISCOVER = 0xa -- sysIP_RECVERR = 0xb -- sysIP_RECVTTL = 0xc -- sysIP_RECVTOS = 0xd -- sysIP_MTU = 0xe -- sysIP_FREEBIND = 0xf -- sysIP_TRANSPARENT = 0x13 -- sysIP_RECVRETOPTS = 0x7 -- sysIP_ORIGDSTADDR = 0x14 -- sysIP_RECVORIGDSTADDR = 0x14 -- sysIP_MINTTL = 0x15 -- sysIP_NODEFRAG = 0x16 -- sysIP_UNICAST_IF = 0x32 -- -- sysIP_MULTICAST_IF = 0x20 -- sysIP_MULTICAST_TTL = 0x21 -- sysIP_MULTICAST_LOOP = 0x22 -- sysIP_ADD_MEMBERSHIP = 0x23 -- sysIP_DROP_MEMBERSHIP = 0x24 -- sysIP_UNBLOCK_SOURCE = 0x25 -- sysIP_BLOCK_SOURCE = 0x26 -- sysIP_ADD_SOURCE_MEMBERSHIP = 0x27 -- sysIP_DROP_SOURCE_MEMBERSHIP = 0x28 -- sysIP_MSFILTER = 0x29 -- sysMCAST_JOIN_GROUP = 0x2a -- sysMCAST_LEAVE_GROUP = 0x2d -- sysMCAST_JOIN_SOURCE_GROUP = 0x2e -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2f -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_MSFILTER = 0x30 -- sysIP_MULTICAST_ALL = 0x31 -- -- sysICMP_FILTER = 0x1 -- -- sysSO_EE_ORIGIN_NONE = 0x0 -- sysSO_EE_ORIGIN_LOCAL = 0x1 -- sysSO_EE_ORIGIN_ICMP = 0x2 -- sysSO_EE_ORIGIN_ICMP6 = 0x3 -- sysSO_EE_ORIGIN_TXSTATUS = 0x4 -- sysSO_EE_ORIGIN_TIMESTAMPING = 0x4 -- - sizeofKernelSockaddrStorage = 0x80 - sizeofSockaddrInet = 0x10 - sizeofInetPktinfo = 0xc - sizeofSockExtendedErr = 0x10 - - sizeofIPMreq = 0x8 -- sizeofIPMreqn = 0xc - sizeofIPMreqSource = 0xc - sizeofGroupReq = 0x84 - sizeofGroupSourceReq = 0x104 -@@ -102,12 +50,6 @@ type ipMreq struct { - Interface [4]byte /* in_addr */ - } - --type ipMreqn struct { -- Multiaddr [4]byte /* in_addr */ -- Address [4]byte /* in_addr */ -- Ifindex int32 --} -- - type ipMreqSource struct { - Multiaddr uint32 - Interface uint32 -diff --git a/vendor/golang.org/x/net/ipv4/zsys_linux_ppc.go b/vendor/golang.org/x/net/ipv4/zsys_linux_ppc.go -index 3c5ea54..29202e4 100644 ---- a/vendor/golang.org/x/net/ipv4/zsys_linux_ppc.go -+++ b/vendor/golang.org/x/net/ipv4/zsys_linux_ppc.go -@@ -4,64 +4,12 @@ - package ipv4 - - const ( -- sysIP_TOS = 0x1 -- sysIP_TTL = 0x2 -- sysIP_HDRINCL = 0x3 -- sysIP_OPTIONS = 0x4 -- sysIP_ROUTER_ALERT = 0x5 -- sysIP_RECVOPTS = 0x6 -- sysIP_RETOPTS = 0x7 -- sysIP_PKTINFO = 0x8 -- sysIP_PKTOPTIONS = 0x9 -- sysIP_MTU_DISCOVER = 0xa -- sysIP_RECVERR = 0xb -- sysIP_RECVTTL = 0xc -- sysIP_RECVTOS = 0xd -- sysIP_MTU = 0xe -- sysIP_FREEBIND = 0xf -- sysIP_TRANSPARENT = 0x13 -- sysIP_RECVRETOPTS = 0x7 -- sysIP_ORIGDSTADDR = 0x14 -- sysIP_RECVORIGDSTADDR = 0x14 -- sysIP_MINTTL = 0x15 -- sysIP_NODEFRAG = 0x16 -- sysIP_UNICAST_IF = 0x32 -- -- sysIP_MULTICAST_IF = 0x20 -- sysIP_MULTICAST_TTL = 0x21 -- sysIP_MULTICAST_LOOP = 0x22 -- sysIP_ADD_MEMBERSHIP = 0x23 -- sysIP_DROP_MEMBERSHIP = 0x24 -- sysIP_UNBLOCK_SOURCE = 0x25 -- sysIP_BLOCK_SOURCE = 0x26 -- sysIP_ADD_SOURCE_MEMBERSHIP = 0x27 -- sysIP_DROP_SOURCE_MEMBERSHIP = 0x28 -- sysIP_MSFILTER = 0x29 -- sysMCAST_JOIN_GROUP = 0x2a -- sysMCAST_LEAVE_GROUP = 0x2d -- sysMCAST_JOIN_SOURCE_GROUP = 0x2e -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2f -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_MSFILTER = 0x30 -- sysIP_MULTICAST_ALL = 0x31 -- -- sysICMP_FILTER = 0x1 -- -- sysSO_EE_ORIGIN_NONE = 0x0 -- sysSO_EE_ORIGIN_LOCAL = 0x1 -- sysSO_EE_ORIGIN_ICMP = 0x2 -- sysSO_EE_ORIGIN_ICMP6 = 0x3 -- sysSO_EE_ORIGIN_TXSTATUS = 0x4 -- sysSO_EE_ORIGIN_TIMESTAMPING = 0x4 -- - sizeofKernelSockaddrStorage = 0x80 - sizeofSockaddrInet = 0x10 - sizeofInetPktinfo = 0xc - sizeofSockExtendedErr = 0x10 - - sizeofIPMreq = 0x8 -- sizeofIPMreqn = 0xc - sizeofIPMreqSource = 0xc - sizeofGroupReq = 0x84 - sizeofGroupSourceReq = 0x104 -@@ -102,12 +50,6 @@ type ipMreq struct { - Interface [4]byte /* in_addr */ - } - --type ipMreqn struct { -- Multiaddr [4]byte /* in_addr */ -- Address [4]byte /* in_addr */ -- Ifindex int32 --} -- - type ipMreqSource struct { - Multiaddr uint32 - Interface uint32 -diff --git a/vendor/golang.org/x/net/ipv4/zsys_linux_ppc64.go b/vendor/golang.org/x/net/ipv4/zsys_linux_ppc64.go -index a04e785..eb10cc7 100644 ---- a/vendor/golang.org/x/net/ipv4/zsys_linux_ppc64.go -+++ b/vendor/golang.org/x/net/ipv4/zsys_linux_ppc64.go -@@ -4,64 +4,12 @@ - package ipv4 - - const ( -- sysIP_TOS = 0x1 -- sysIP_TTL = 0x2 -- sysIP_HDRINCL = 0x3 -- sysIP_OPTIONS = 0x4 -- sysIP_ROUTER_ALERT = 0x5 -- sysIP_RECVOPTS = 0x6 -- sysIP_RETOPTS = 0x7 -- sysIP_PKTINFO = 0x8 -- sysIP_PKTOPTIONS = 0x9 -- sysIP_MTU_DISCOVER = 0xa -- sysIP_RECVERR = 0xb -- sysIP_RECVTTL = 0xc -- sysIP_RECVTOS = 0xd -- sysIP_MTU = 0xe -- sysIP_FREEBIND = 0xf -- sysIP_TRANSPARENT = 0x13 -- sysIP_RECVRETOPTS = 0x7 -- sysIP_ORIGDSTADDR = 0x14 -- sysIP_RECVORIGDSTADDR = 0x14 -- sysIP_MINTTL = 0x15 -- sysIP_NODEFRAG = 0x16 -- sysIP_UNICAST_IF = 0x32 -- -- sysIP_MULTICAST_IF = 0x20 -- sysIP_MULTICAST_TTL = 0x21 -- sysIP_MULTICAST_LOOP = 0x22 -- sysIP_ADD_MEMBERSHIP = 0x23 -- sysIP_DROP_MEMBERSHIP = 0x24 -- sysIP_UNBLOCK_SOURCE = 0x25 -- sysIP_BLOCK_SOURCE = 0x26 -- sysIP_ADD_SOURCE_MEMBERSHIP = 0x27 -- sysIP_DROP_SOURCE_MEMBERSHIP = 0x28 -- sysIP_MSFILTER = 0x29 -- sysMCAST_JOIN_GROUP = 0x2a -- sysMCAST_LEAVE_GROUP = 0x2d -- sysMCAST_JOIN_SOURCE_GROUP = 0x2e -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2f -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_MSFILTER = 0x30 -- sysIP_MULTICAST_ALL = 0x31 -- -- sysICMP_FILTER = 0x1 -- -- sysSO_EE_ORIGIN_NONE = 0x0 -- sysSO_EE_ORIGIN_LOCAL = 0x1 -- sysSO_EE_ORIGIN_ICMP = 0x2 -- sysSO_EE_ORIGIN_ICMP6 = 0x3 -- sysSO_EE_ORIGIN_TXSTATUS = 0x4 -- sysSO_EE_ORIGIN_TIMESTAMPING = 0x4 -- - sizeofKernelSockaddrStorage = 0x80 - sizeofSockaddrInet = 0x10 - sizeofInetPktinfo = 0xc - sizeofSockExtendedErr = 0x10 - - sizeofIPMreq = 0x8 -- sizeofIPMreqn = 0xc - sizeofIPMreqSource = 0xc - sizeofGroupReq = 0x88 - sizeofGroupSourceReq = 0x108 -@@ -102,12 +50,6 @@ type ipMreq struct { - Interface [4]byte /* in_addr */ - } - --type ipMreqn struct { -- Multiaddr [4]byte /* in_addr */ -- Address [4]byte /* in_addr */ -- Ifindex int32 --} -- - type ipMreqSource struct { - Multiaddr uint32 - Interface uint32 -diff --git a/vendor/golang.org/x/net/ipv4/zsys_linux_ppc64le.go b/vendor/golang.org/x/net/ipv4/zsys_linux_ppc64le.go -index a04e785..eb10cc7 100644 ---- a/vendor/golang.org/x/net/ipv4/zsys_linux_ppc64le.go -+++ b/vendor/golang.org/x/net/ipv4/zsys_linux_ppc64le.go -@@ -4,64 +4,12 @@ - package ipv4 - - const ( -- sysIP_TOS = 0x1 -- sysIP_TTL = 0x2 -- sysIP_HDRINCL = 0x3 -- sysIP_OPTIONS = 0x4 -- sysIP_ROUTER_ALERT = 0x5 -- sysIP_RECVOPTS = 0x6 -- sysIP_RETOPTS = 0x7 -- sysIP_PKTINFO = 0x8 -- sysIP_PKTOPTIONS = 0x9 -- sysIP_MTU_DISCOVER = 0xa -- sysIP_RECVERR = 0xb -- sysIP_RECVTTL = 0xc -- sysIP_RECVTOS = 0xd -- sysIP_MTU = 0xe -- sysIP_FREEBIND = 0xf -- sysIP_TRANSPARENT = 0x13 -- sysIP_RECVRETOPTS = 0x7 -- sysIP_ORIGDSTADDR = 0x14 -- sysIP_RECVORIGDSTADDR = 0x14 -- sysIP_MINTTL = 0x15 -- sysIP_NODEFRAG = 0x16 -- sysIP_UNICAST_IF = 0x32 -- -- sysIP_MULTICAST_IF = 0x20 -- sysIP_MULTICAST_TTL = 0x21 -- sysIP_MULTICAST_LOOP = 0x22 -- sysIP_ADD_MEMBERSHIP = 0x23 -- sysIP_DROP_MEMBERSHIP = 0x24 -- sysIP_UNBLOCK_SOURCE = 0x25 -- sysIP_BLOCK_SOURCE = 0x26 -- sysIP_ADD_SOURCE_MEMBERSHIP = 0x27 -- sysIP_DROP_SOURCE_MEMBERSHIP = 0x28 -- sysIP_MSFILTER = 0x29 -- sysMCAST_JOIN_GROUP = 0x2a -- sysMCAST_LEAVE_GROUP = 0x2d -- sysMCAST_JOIN_SOURCE_GROUP = 0x2e -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2f -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_MSFILTER = 0x30 -- sysIP_MULTICAST_ALL = 0x31 -- -- sysICMP_FILTER = 0x1 -- -- sysSO_EE_ORIGIN_NONE = 0x0 -- sysSO_EE_ORIGIN_LOCAL = 0x1 -- sysSO_EE_ORIGIN_ICMP = 0x2 -- sysSO_EE_ORIGIN_ICMP6 = 0x3 -- sysSO_EE_ORIGIN_TXSTATUS = 0x4 -- sysSO_EE_ORIGIN_TIMESTAMPING = 0x4 -- - sizeofKernelSockaddrStorage = 0x80 - sizeofSockaddrInet = 0x10 - sizeofInetPktinfo = 0xc - sizeofSockExtendedErr = 0x10 - - sizeofIPMreq = 0x8 -- sizeofIPMreqn = 0xc - sizeofIPMreqSource = 0xc - sizeofGroupReq = 0x88 - sizeofGroupSourceReq = 0x108 -@@ -102,12 +50,6 @@ type ipMreq struct { - Interface [4]byte /* in_addr */ - } - --type ipMreqn struct { -- Multiaddr [4]byte /* in_addr */ -- Address [4]byte /* in_addr */ -- Ifindex int32 --} -- - type ipMreqSource struct { - Multiaddr uint32 - Interface uint32 -diff --git a/vendor/golang.org/x/net/ipv4/zsys_linux_riscv64.go b/vendor/golang.org/x/net/ipv4/zsys_linux_riscv64.go -index e626134..e2edebd 100644 ---- a/vendor/golang.org/x/net/ipv4/zsys_linux_riscv64.go -+++ b/vendor/golang.org/x/net/ipv4/zsys_linux_riscv64.go -@@ -1,69 +1,18 @@ - // Code generated by cmd/cgo -godefs; DO NOT EDIT. - // cgo -godefs defs_linux.go - -+//go:build riscv64 - // +build riscv64 - - package ipv4 - - const ( -- sysIP_TOS = 0x1 -- sysIP_TTL = 0x2 -- sysIP_HDRINCL = 0x3 -- sysIP_OPTIONS = 0x4 -- sysIP_ROUTER_ALERT = 0x5 -- sysIP_RECVOPTS = 0x6 -- sysIP_RETOPTS = 0x7 -- sysIP_PKTINFO = 0x8 -- sysIP_PKTOPTIONS = 0x9 -- sysIP_MTU_DISCOVER = 0xa -- sysIP_RECVERR = 0xb -- sysIP_RECVTTL = 0xc -- sysIP_RECVTOS = 0xd -- sysIP_MTU = 0xe -- sysIP_FREEBIND = 0xf -- sysIP_TRANSPARENT = 0x13 -- sysIP_RECVRETOPTS = 0x7 -- sysIP_ORIGDSTADDR = 0x14 -- sysIP_RECVORIGDSTADDR = 0x14 -- sysIP_MINTTL = 0x15 -- sysIP_NODEFRAG = 0x16 -- sysIP_UNICAST_IF = 0x32 -- -- sysIP_MULTICAST_IF = 0x20 -- sysIP_MULTICAST_TTL = 0x21 -- sysIP_MULTICAST_LOOP = 0x22 -- sysIP_ADD_MEMBERSHIP = 0x23 -- sysIP_DROP_MEMBERSHIP = 0x24 -- sysIP_UNBLOCK_SOURCE = 0x25 -- sysIP_BLOCK_SOURCE = 0x26 -- sysIP_ADD_SOURCE_MEMBERSHIP = 0x27 -- sysIP_DROP_SOURCE_MEMBERSHIP = 0x28 -- sysIP_MSFILTER = 0x29 -- sysMCAST_JOIN_GROUP = 0x2a -- sysMCAST_LEAVE_GROUP = 0x2d -- sysMCAST_JOIN_SOURCE_GROUP = 0x2e -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2f -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_MSFILTER = 0x30 -- sysIP_MULTICAST_ALL = 0x31 -- -- sysICMP_FILTER = 0x1 -- -- sysSO_EE_ORIGIN_NONE = 0x0 -- sysSO_EE_ORIGIN_LOCAL = 0x1 -- sysSO_EE_ORIGIN_ICMP = 0x2 -- sysSO_EE_ORIGIN_ICMP6 = 0x3 -- sysSO_EE_ORIGIN_TXSTATUS = 0x4 -- sysSO_EE_ORIGIN_TIMESTAMPING = 0x4 -- - sizeofKernelSockaddrStorage = 0x80 - sizeofSockaddrInet = 0x10 - sizeofInetPktinfo = 0xc - sizeofSockExtendedErr = 0x10 - - sizeofIPMreq = 0x8 -- sizeofIPMreqn = 0xc - sizeofIPMreqSource = 0xc - sizeofGroupReq = 0x88 - sizeofGroupSourceReq = 0x108 -@@ -104,12 +53,6 @@ type ipMreq struct { - Interface [4]byte /* in_addr */ - } - --type ipMreqn struct { -- Multiaddr [4]byte /* in_addr */ -- Address [4]byte /* in_addr */ -- Ifindex int32 --} -- - type ipMreqSource struct { - Multiaddr uint32 - Interface uint32 -diff --git a/vendor/golang.org/x/net/ipv4/zsys_linux_s390x.go b/vendor/golang.org/x/net/ipv4/zsys_linux_s390x.go -index a04e785..eb10cc7 100644 ---- a/vendor/golang.org/x/net/ipv4/zsys_linux_s390x.go -+++ b/vendor/golang.org/x/net/ipv4/zsys_linux_s390x.go -@@ -4,64 +4,12 @@ - package ipv4 - - const ( -- sysIP_TOS = 0x1 -- sysIP_TTL = 0x2 -- sysIP_HDRINCL = 0x3 -- sysIP_OPTIONS = 0x4 -- sysIP_ROUTER_ALERT = 0x5 -- sysIP_RECVOPTS = 0x6 -- sysIP_RETOPTS = 0x7 -- sysIP_PKTINFO = 0x8 -- sysIP_PKTOPTIONS = 0x9 -- sysIP_MTU_DISCOVER = 0xa -- sysIP_RECVERR = 0xb -- sysIP_RECVTTL = 0xc -- sysIP_RECVTOS = 0xd -- sysIP_MTU = 0xe -- sysIP_FREEBIND = 0xf -- sysIP_TRANSPARENT = 0x13 -- sysIP_RECVRETOPTS = 0x7 -- sysIP_ORIGDSTADDR = 0x14 -- sysIP_RECVORIGDSTADDR = 0x14 -- sysIP_MINTTL = 0x15 -- sysIP_NODEFRAG = 0x16 -- sysIP_UNICAST_IF = 0x32 -- -- sysIP_MULTICAST_IF = 0x20 -- sysIP_MULTICAST_TTL = 0x21 -- sysIP_MULTICAST_LOOP = 0x22 -- sysIP_ADD_MEMBERSHIP = 0x23 -- sysIP_DROP_MEMBERSHIP = 0x24 -- sysIP_UNBLOCK_SOURCE = 0x25 -- sysIP_BLOCK_SOURCE = 0x26 -- sysIP_ADD_SOURCE_MEMBERSHIP = 0x27 -- sysIP_DROP_SOURCE_MEMBERSHIP = 0x28 -- sysIP_MSFILTER = 0x29 -- sysMCAST_JOIN_GROUP = 0x2a -- sysMCAST_LEAVE_GROUP = 0x2d -- sysMCAST_JOIN_SOURCE_GROUP = 0x2e -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2f -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_MSFILTER = 0x30 -- sysIP_MULTICAST_ALL = 0x31 -- -- sysICMP_FILTER = 0x1 -- -- sysSO_EE_ORIGIN_NONE = 0x0 -- sysSO_EE_ORIGIN_LOCAL = 0x1 -- sysSO_EE_ORIGIN_ICMP = 0x2 -- sysSO_EE_ORIGIN_ICMP6 = 0x3 -- sysSO_EE_ORIGIN_TXSTATUS = 0x4 -- sysSO_EE_ORIGIN_TIMESTAMPING = 0x4 -- - sizeofKernelSockaddrStorage = 0x80 - sizeofSockaddrInet = 0x10 - sizeofInetPktinfo = 0xc - sizeofSockExtendedErr = 0x10 - - sizeofIPMreq = 0x8 -- sizeofIPMreqn = 0xc - sizeofIPMreqSource = 0xc - sizeofGroupReq = 0x88 - sizeofGroupSourceReq = 0x108 -@@ -102,12 +50,6 @@ type ipMreq struct { - Interface [4]byte /* in_addr */ - } - --type ipMreqn struct { -- Multiaddr [4]byte /* in_addr */ -- Address [4]byte /* in_addr */ -- Ifindex int32 --} -- - type ipMreqSource struct { - Multiaddr uint32 - Interface uint32 -diff --git a/vendor/golang.org/x/net/ipv4/zsys_netbsd.go b/vendor/golang.org/x/net/ipv4/zsys_netbsd.go -index 8cfc648..a2ef2f6 100644 ---- a/vendor/golang.org/x/net/ipv4/zsys_netbsd.go -+++ b/vendor/golang.org/x/net/ipv4/zsys_netbsd.go -@@ -4,23 +4,6 @@ - package ipv4 - - const ( -- sysIP_OPTIONS = 0x1 -- sysIP_HDRINCL = 0x2 -- sysIP_TOS = 0x3 -- sysIP_TTL = 0x4 -- sysIP_RECVOPTS = 0x5 -- sysIP_RECVRETOPTS = 0x6 -- sysIP_RECVDSTADDR = 0x7 -- sysIP_RETOPTS = 0x8 -- sysIP_RECVIF = 0x14 -- sysIP_RECVTTL = 0x17 -- -- sysIP_MULTICAST_IF = 0x9 -- sysIP_MULTICAST_TTL = 0xa -- sysIP_MULTICAST_LOOP = 0xb -- sysIP_ADD_MEMBERSHIP = 0xc -- sysIP_DROP_MEMBERSHIP = 0xd -- - sizeofIPMreq = 0x8 - ) - -diff --git a/vendor/golang.org/x/net/ipv4/zsys_openbsd.go b/vendor/golang.org/x/net/ipv4/zsys_openbsd.go -index 37629cb..b293a33 100644 ---- a/vendor/golang.org/x/net/ipv4/zsys_openbsd.go -+++ b/vendor/golang.org/x/net/ipv4/zsys_openbsd.go -@@ -4,23 +4,6 @@ - package ipv4 - - const ( -- sysIP_OPTIONS = 0x1 -- sysIP_HDRINCL = 0x2 -- sysIP_TOS = 0x3 -- sysIP_TTL = 0x4 -- sysIP_RECVOPTS = 0x5 -- sysIP_RECVRETOPTS = 0x6 -- sysIP_RECVDSTADDR = 0x7 -- sysIP_RETOPTS = 0x8 -- sysIP_RECVIF = 0x1e -- sysIP_RECVTTL = 0x1f -- -- sysIP_MULTICAST_IF = 0x9 -- sysIP_MULTICAST_TTL = 0xa -- sysIP_MULTICAST_LOOP = 0xb -- sysIP_ADD_MEMBERSHIP = 0xc -- sysIP_DROP_MEMBERSHIP = 0xd -- - sizeofIPMreq = 0x8 - ) - -diff --git a/vendor/golang.org/x/net/ipv4/zsys_solaris.go b/vendor/golang.org/x/net/ipv4/zsys_solaris.go -index cb80a30..e1a961b 100644 ---- a/vendor/golang.org/x/net/ipv4/zsys_solaris.go -+++ b/vendor/golang.org/x/net/ipv4/zsys_solaris.go -@@ -4,49 +4,6 @@ - package ipv4 - - const ( -- sysIP_OPTIONS = 0x1 -- sysIP_HDRINCL = 0x2 -- sysIP_TOS = 0x3 -- sysIP_TTL = 0x4 -- sysIP_RECVOPTS = 0x5 -- sysIP_RECVRETOPTS = 0x6 -- sysIP_RECVDSTADDR = 0x7 -- sysIP_RETOPTS = 0x8 -- sysIP_RECVIF = 0x9 -- sysIP_RECVSLLA = 0xa -- sysIP_RECVTTL = 0xb -- -- sysIP_MULTICAST_IF = 0x10 -- sysIP_MULTICAST_TTL = 0x11 -- sysIP_MULTICAST_LOOP = 0x12 -- sysIP_ADD_MEMBERSHIP = 0x13 -- sysIP_DROP_MEMBERSHIP = 0x14 -- sysIP_BLOCK_SOURCE = 0x15 -- sysIP_UNBLOCK_SOURCE = 0x16 -- sysIP_ADD_SOURCE_MEMBERSHIP = 0x17 -- sysIP_DROP_SOURCE_MEMBERSHIP = 0x18 -- sysIP_NEXTHOP = 0x19 -- -- sysIP_PKTINFO = 0x1a -- sysIP_RECVPKTINFO = 0x1a -- sysIP_DONTFRAG = 0x1b -- -- sysIP_BOUND_IF = 0x41 -- sysIP_UNSPEC_SRC = 0x42 -- sysIP_BROADCAST_TTL = 0x43 -- sysIP_DHCPINIT_IF = 0x45 -- -- sysIP_REUSEADDR = 0x104 -- sysIP_DONTROUTE = 0x105 -- sysIP_BROADCAST = 0x106 -- -- sysMCAST_JOIN_GROUP = 0x29 -- sysMCAST_LEAVE_GROUP = 0x2a -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_JOIN_SOURCE_GROUP = 0x2d -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2e -- - sizeofSockaddrStorage = 0x100 - sizeofSockaddrInet = 0x10 - sizeofInetPktinfo = 0xc -diff --git a/vendor/golang.org/x/net/ipv4/zsys_zos_s390x.go b/vendor/golang.org/x/net/ipv4/zsys_zos_s390x.go -new file mode 100644 -index 0000000..692abf6 ---- /dev/null -+++ b/vendor/golang.org/x/net/ipv4/zsys_zos_s390x.go -@@ -0,0 +1,56 @@ -+// Copyright 2020 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+// Hand edited based on zerrors_zos_s390x.go -+// TODO(Bill O'Farrell): auto-generate. -+ -+package ipv4 -+ -+const ( -+ sizeofIPMreq = 8 -+ sizeofSockaddrInet4 = 16 -+ sizeofSockaddrStorage = 128 -+ sizeofGroupReq = 136 -+ sizeofGroupSourceReq = 264 -+ sizeofInetPktinfo = 8 -+) -+ -+type sockaddrInet4 struct { -+ Len uint8 -+ Family uint8 -+ Port uint16 -+ Addr [4]byte -+ Zero [8]uint8 -+} -+ -+type inetPktinfo struct { -+ Addr [4]byte -+ Ifindex uint32 -+} -+ -+type sockaddrStorage struct { -+ Len uint8 -+ Family byte -+ ss_pad1 [6]byte -+ ss_align int64 -+ ss_pad2 [112]byte -+} -+ -+type groupReq struct { -+ Interface uint32 -+ reserved uint32 -+ Group sockaddrStorage -+} -+ -+type groupSourceReq struct { -+ Interface uint32 -+ reserved uint32 -+ Group sockaddrStorage -+ Source sockaddrStorage -+} -+ -+type ipMreq struct { -+ Multiaddr [4]byte /* in_addr */ -+ Interface [4]byte /* in_addr */ -+} -diff --git a/vendor/golang.org/x/net/ipv6/control_rfc2292_unix.go b/vendor/golang.org/x/net/ipv6/control_rfc2292_unix.go -index 9fd9eb1..2733ddb 100644 ---- a/vendor/golang.org/x/net/ipv6/control_rfc2292_unix.go -+++ b/vendor/golang.org/x/net/ipv6/control_rfc2292_unix.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build darwin - // +build darwin - - package ipv6 -@@ -11,11 +12,13 @@ import ( - - "golang.org/x/net/internal/iana" - "golang.org/x/net/internal/socket" -+ -+ "golang.org/x/sys/unix" - ) - - func marshal2292HopLimit(b []byte, cm *ControlMessage) []byte { - m := socket.ControlMessage(b) -- m.MarshalHeader(iana.ProtocolIPv6, sysIPV6_2292HOPLIMIT, 4) -+ m.MarshalHeader(iana.ProtocolIPv6, unix.IPV6_2292HOPLIMIT, 4) - if cm != nil { - socket.NativeEndian.PutUint32(m.Data(4), uint32(cm.HopLimit)) - } -@@ -24,7 +27,7 @@ func marshal2292HopLimit(b []byte, cm *ControlMessage) []byte { - - func marshal2292PacketInfo(b []byte, cm *ControlMessage) []byte { - m := socket.ControlMessage(b) -- m.MarshalHeader(iana.ProtocolIPv6, sysIPV6_2292PKTINFO, sizeofInet6Pktinfo) -+ m.MarshalHeader(iana.ProtocolIPv6, unix.IPV6_2292PKTINFO, sizeofInet6Pktinfo) - if cm != nil { - pi := (*inet6Pktinfo)(unsafe.Pointer(&m.Data(sizeofInet6Pktinfo)[0])) - if ip := cm.Src.To16(); ip != nil && ip.To4() == nil { -@@ -39,7 +42,7 @@ func marshal2292PacketInfo(b []byte, cm *ControlMessage) []byte { - - func marshal2292NextHop(b []byte, cm *ControlMessage) []byte { - m := socket.ControlMessage(b) -- m.MarshalHeader(iana.ProtocolIPv6, sysIPV6_2292NEXTHOP, sizeofSockaddrInet6) -+ m.MarshalHeader(iana.ProtocolIPv6, unix.IPV6_2292NEXTHOP, sizeofSockaddrInet6) - if cm != nil { - sa := (*sockaddrInet6)(unsafe.Pointer(&m.Data(sizeofSockaddrInet6)[0])) - sa.setSockaddr(cm.NextHop, cm.IfIndex) -diff --git a/vendor/golang.org/x/net/ipv6/control_rfc3542_unix.go b/vendor/golang.org/x/net/ipv6/control_rfc3542_unix.go -index 8c221b5..9c90844 100644 ---- a/vendor/golang.org/x/net/ipv6/control_rfc3542_unix.go -+++ b/vendor/golang.org/x/net/ipv6/control_rfc3542_unix.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris -+//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos -+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris zos - - package ipv6 - -@@ -12,11 +13,13 @@ import ( - - "golang.org/x/net/internal/iana" - "golang.org/x/net/internal/socket" -+ -+ "golang.org/x/sys/unix" - ) - - func marshalTrafficClass(b []byte, cm *ControlMessage) []byte { - m := socket.ControlMessage(b) -- m.MarshalHeader(iana.ProtocolIPv6, sysIPV6_TCLASS, 4) -+ m.MarshalHeader(iana.ProtocolIPv6, unix.IPV6_TCLASS, 4) - if cm != nil { - socket.NativeEndian.PutUint32(m.Data(4), uint32(cm.TrafficClass)) - } -@@ -29,7 +32,7 @@ func parseTrafficClass(cm *ControlMessage, b []byte) { - - func marshalHopLimit(b []byte, cm *ControlMessage) []byte { - m := socket.ControlMessage(b) -- m.MarshalHeader(iana.ProtocolIPv6, sysIPV6_HOPLIMIT, 4) -+ m.MarshalHeader(iana.ProtocolIPv6, unix.IPV6_HOPLIMIT, 4) - if cm != nil { - socket.NativeEndian.PutUint32(m.Data(4), uint32(cm.HopLimit)) - } -@@ -42,7 +45,7 @@ func parseHopLimit(cm *ControlMessage, b []byte) { - - func marshalPacketInfo(b []byte, cm *ControlMessage) []byte { - m := socket.ControlMessage(b) -- m.MarshalHeader(iana.ProtocolIPv6, sysIPV6_PKTINFO, sizeofInet6Pktinfo) -+ m.MarshalHeader(iana.ProtocolIPv6, unix.IPV6_PKTINFO, sizeofInet6Pktinfo) - if cm != nil { - pi := (*inet6Pktinfo)(unsafe.Pointer(&m.Data(sizeofInet6Pktinfo)[0])) - if ip := cm.Src.To16(); ip != nil && ip.To4() == nil { -@@ -66,7 +69,7 @@ func parsePacketInfo(cm *ControlMessage, b []byte) { - - func marshalNextHop(b []byte, cm *ControlMessage) []byte { - m := socket.ControlMessage(b) -- m.MarshalHeader(iana.ProtocolIPv6, sysIPV6_NEXTHOP, sizeofSockaddrInet6) -+ m.MarshalHeader(iana.ProtocolIPv6, unix.IPV6_NEXTHOP, sizeofSockaddrInet6) - if cm != nil { - sa := (*sockaddrInet6)(unsafe.Pointer(&m.Data(sizeofSockaddrInet6)[0])) - sa.setSockaddr(cm.NextHop, cm.IfIndex) -@@ -79,7 +82,7 @@ func parseNextHop(cm *ControlMessage, b []byte) { - - func marshalPathMTU(b []byte, cm *ControlMessage) []byte { - m := socket.ControlMessage(b) -- m.MarshalHeader(iana.ProtocolIPv6, sysIPV6_PATHMTU, sizeofIPv6Mtuinfo) -+ m.MarshalHeader(iana.ProtocolIPv6, unix.IPV6_PATHMTU, sizeofIPv6Mtuinfo) - return m.Next(sizeofIPv6Mtuinfo) - } - -diff --git a/vendor/golang.org/x/net/ipv6/control_stub.go b/vendor/golang.org/x/net/ipv6/control_stub.go -index 1d773cb..b7e8643 100644 ---- a/vendor/golang.org/x/net/ipv6/control_stub.go -+++ b/vendor/golang.org/x/net/ipv6/control_stub.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!windows -+//go:build !aix && !darwin && !dragonfly && !freebsd && !linux && !netbsd && !openbsd && !solaris && !windows && !zos -+// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!windows,!zos - - package ipv6 - -diff --git a/vendor/golang.org/x/net/ipv6/control_unix.go b/vendor/golang.org/x/net/ipv6/control_unix.go -index 0971a00..63e475d 100644 ---- a/vendor/golang.org/x/net/ipv6/control_unix.go -+++ b/vendor/golang.org/x/net/ipv6/control_unix.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris -+//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos -+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris zos - - package ipv6 - -diff --git a/vendor/golang.org/x/net/ipv6/doc.go b/vendor/golang.org/x/net/ipv6/doc.go -index e0be9d5..2148b81 100644 ---- a/vendor/golang.org/x/net/ipv6/doc.go -+++ b/vendor/golang.org/x/net/ipv6/doc.go -@@ -17,8 +17,7 @@ - // On Darwin, this package requires OS X Mavericks version 10.9 or - // above, or equivalent. - // --// --// Unicasting -+// # Unicasting - // - // The options for unicasting are available for net.TCPConn, - // net.UDPConn and net.IPConn which are created as network connections -@@ -52,8 +51,7 @@ - // }(c) - // } - // --// --// Multicasting -+// # Multicasting - // - // The options for multicasting are available for net.UDPConn and - // net.IPConn which are created as network connections that use the -@@ -140,8 +138,7 @@ - // } - // } - // --// --// More multicasting -+// # More multicasting - // - // An application that uses PacketConn may join multiple multicast - // groups. For example, a UDP listener with port 1024 might join two -@@ -199,8 +196,7 @@ - // // error handling - // } - // --// --// Source-specific multicasting -+// # Source-specific multicasting - // - // An application that uses PacketConn on MLDv2 supported platform is - // able to join source-specific multicast groups. -diff --git a/vendor/golang.org/x/net/ipv6/icmp_bsd.go b/vendor/golang.org/x/net/ipv6/icmp_bsd.go -index b03025c..120bf87 100644 ---- a/vendor/golang.org/x/net/ipv6/icmp_bsd.go -+++ b/vendor/golang.org/x/net/ipv6/icmp_bsd.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build aix || darwin || dragonfly || freebsd || netbsd || openbsd - // +build aix darwin dragonfly freebsd netbsd openbsd - - package ipv6 -diff --git a/vendor/golang.org/x/net/ipv6/icmp_stub.go b/vendor/golang.org/x/net/ipv6/icmp_stub.go -index 370e51a..d60136a 100644 ---- a/vendor/golang.org/x/net/ipv6/icmp_stub.go -+++ b/vendor/golang.org/x/net/ipv6/icmp_stub.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!windows -+//go:build !aix && !darwin && !dragonfly && !freebsd && !linux && !netbsd && !openbsd && !solaris && !windows && !zos -+// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!windows,!zos - - package ipv6 - -diff --git a/vendor/golang.org/x/net/ipv6/icmp_zos.go b/vendor/golang.org/x/net/ipv6/icmp_zos.go -new file mode 100644 -index 0000000..ddf8f09 ---- /dev/null -+++ b/vendor/golang.org/x/net/ipv6/icmp_zos.go -@@ -0,0 +1,29 @@ -+// Copyright 2020 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+package ipv6 -+ -+func (f *icmpv6Filter) accept(typ ICMPType) { -+ f.Filt[typ>>5] |= 1 << (uint32(typ) & 31) -+ -+} -+ -+func (f *icmpv6Filter) block(typ ICMPType) { -+ f.Filt[typ>>5] &^= 1 << (uint32(typ) & 31) -+ -+} -+ -+func (f *icmpv6Filter) setAll(block bool) { -+ for i := range f.Filt { -+ if block { -+ f.Filt[i] = 0 -+ } else { -+ f.Filt[i] = 1<<32 - 1 -+ } -+ } -+} -+ -+func (f *icmpv6Filter) willBlock(typ ICMPType) bool { -+ return f.Filt[typ>>5]&(1<<(uint32(typ)&31)) == 0 -+} -diff --git a/vendor/golang.org/x/net/ipv6/payload_cmsg.go b/vendor/golang.org/x/net/ipv6/payload_cmsg.go -index 284a042..b0692e4 100644 ---- a/vendor/golang.org/x/net/ipv6/payload_cmsg.go -+++ b/vendor/golang.org/x/net/ipv6/payload_cmsg.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris -+//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos -+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris zos - - package ipv6 - -diff --git a/vendor/golang.org/x/net/ipv6/payload_nocmsg.go b/vendor/golang.org/x/net/ipv6/payload_nocmsg.go -index c5a4c96..cd0ff50 100644 ---- a/vendor/golang.org/x/net/ipv6/payload_nocmsg.go -+++ b/vendor/golang.org/x/net/ipv6/payload_nocmsg.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris -+//go:build !aix && !darwin && !dragonfly && !freebsd && !linux && !netbsd && !openbsd && !solaris && !zos -+// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!zos - - package ipv6 - -diff --git a/vendor/golang.org/x/net/ipv6/sockopt_posix.go b/vendor/golang.org/x/net/ipv6/sockopt_posix.go -index 824c623..37c6287 100644 ---- a/vendor/golang.org/x/net/ipv6/sockopt_posix.go -+++ b/vendor/golang.org/x/net/ipv6/sockopt_posix.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris windows -+//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || windows || zos -+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris windows zos - - package ipv6 - -diff --git a/vendor/golang.org/x/net/ipv6/sockopt_stub.go b/vendor/golang.org/x/net/ipv6/sockopt_stub.go -index 0a87a93..32fd866 100644 ---- a/vendor/golang.org/x/net/ipv6/sockopt_stub.go -+++ b/vendor/golang.org/x/net/ipv6/sockopt_stub.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!windows -+//go:build !aix && !darwin && !dragonfly && !freebsd && !linux && !netbsd && !openbsd && !solaris && !windows && !zos -+// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!windows,!zos - - package ipv6 - -diff --git a/vendor/golang.org/x/net/ipv6/sys_aix.go b/vendor/golang.org/x/net/ipv6/sys_aix.go -index bce7091..a47182a 100644 ---- a/vendor/golang.org/x/net/ipv6/sys_aix.go -+++ b/vendor/golang.org/x/net/ipv6/sys_aix.go -@@ -3,6 +3,7 @@ - // license that can be found in the LICENSE file. - - // Added for go1.11 compatibility -+//go:build aix - // +build aix - - package ipv6 -@@ -14,32 +15,34 @@ import ( - - "golang.org/x/net/internal/iana" - "golang.org/x/net/internal/socket" -+ -+ "golang.org/x/sys/unix" - ) - - var ( - ctlOpts = [ctlMax]ctlOpt{ -- ctlTrafficClass: {sysIPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass}, -- ctlHopLimit: {sysIPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit}, -- ctlPacketInfo: {sysIPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo}, -- ctlNextHop: {sysIPV6_NEXTHOP, sizeofSockaddrInet6, marshalNextHop, parseNextHop}, -- ctlPathMTU: {sysIPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU}, -+ ctlTrafficClass: {unix.IPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass}, -+ ctlHopLimit: {unix.IPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit}, -+ ctlPacketInfo: {unix.IPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo}, -+ ctlNextHop: {unix.IPV6_NEXTHOP, sizeofSockaddrInet6, marshalNextHop, parseNextHop}, -+ ctlPathMTU: {unix.IPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU}, - } - - sockOpts = map[int]*sockOpt{ -- ssoTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_TCLASS, Len: 4}}, -- ssoHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_UNICAST_HOPS, Len: 4}}, -- ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_IF, Len: 4}}, -- ssoMulticastHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_HOPS, Len: 4}}, -- ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_LOOP, Len: 4}}, -- ssoReceiveTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVTCLASS, Len: 4}}, -- ssoReceiveHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVHOPLIMIT, Len: 4}}, -- ssoReceivePacketInfo: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVPKTINFO, Len: 4}}, -- ssoReceivePathMTU: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVPATHMTU, Len: 4}}, -- ssoPathMTU: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_PATHMTU, Len: sizeofIPv6Mtuinfo}}, -- ssoChecksum: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_CHECKSUM, Len: 4}}, -- ssoICMPFilter: {Option: socket.Option{Level: iana.ProtocolIPv6ICMP, Name: sysICMP6_FILTER, Len: sizeofICMPv6Filter}}, -- ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_JOIN_GROUP, Len: sizeofIPv6Mreq}, typ: ssoTypeIPMreq}, -- ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_LEAVE_GROUP, Len: sizeofIPv6Mreq}, typ: ssoTypeIPMreq}, -+ ssoTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_TCLASS, Len: 4}}, -+ ssoHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_UNICAST_HOPS, Len: 4}}, -+ ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_IF, Len: 4}}, -+ ssoMulticastHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_HOPS, Len: 4}}, -+ ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_LOOP, Len: 4}}, -+ ssoReceiveTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVTCLASS, Len: 4}}, -+ ssoReceiveHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVHOPLIMIT, Len: 4}}, -+ ssoReceivePacketInfo: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVPKTINFO, Len: 4}}, -+ ssoReceivePathMTU: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVPATHMTU, Len: 4}}, -+ ssoPathMTU: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_PATHMTU, Len: sizeofIPv6Mtuinfo}}, -+ ssoChecksum: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_CHECKSUM, Len: 4}}, -+ ssoICMPFilter: {Option: socket.Option{Level: iana.ProtocolIPv6ICMP, Name: unix.ICMP6_FILTER, Len: sizeofICMPv6Filter}}, -+ ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_JOIN_GROUP, Len: sizeofIPv6Mreq}, typ: ssoTypeIPMreq}, -+ ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_LEAVE_GROUP, Len: sizeofIPv6Mreq}, typ: ssoTypeIPMreq}, - } - ) - -diff --git a/vendor/golang.org/x/net/ipv6/sys_asmreq.go b/vendor/golang.org/x/net/ipv6/sys_asmreq.go -index 8c3934c..6ff9950 100644 ---- a/vendor/golang.org/x/net/ipv6/sys_asmreq.go -+++ b/vendor/golang.org/x/net/ipv6/sys_asmreq.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || windows - // +build aix darwin dragonfly freebsd linux netbsd openbsd solaris windows - - package ipv6 -diff --git a/vendor/golang.org/x/net/ipv6/sys_asmreq_stub.go b/vendor/golang.org/x/net/ipv6/sys_asmreq_stub.go -index 87ae481..485290c 100644 ---- a/vendor/golang.org/x/net/ipv6/sys_asmreq_stub.go -+++ b/vendor/golang.org/x/net/ipv6/sys_asmreq_stub.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build !aix && !darwin && !dragonfly && !freebsd && !linux && !netbsd && !openbsd && !solaris && !windows - // +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!windows - - package ipv6 -diff --git a/vendor/golang.org/x/net/ipv6/sys_bpf.go b/vendor/golang.org/x/net/ipv6/sys_bpf.go -index 90ef4df..b5661fb 100644 ---- a/vendor/golang.org/x/net/ipv6/sys_bpf.go -+++ b/vendor/golang.org/x/net/ipv6/sys_bpf.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build linux - // +build linux - - package ipv6 -diff --git a/vendor/golang.org/x/net/ipv6/sys_bpf_stub.go b/vendor/golang.org/x/net/ipv6/sys_bpf_stub.go -index eb9f831..cb00661 100644 ---- a/vendor/golang.org/x/net/ipv6/sys_bpf_stub.go -+++ b/vendor/golang.org/x/net/ipv6/sys_bpf_stub.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build !linux - // +build !linux - - package ipv6 -diff --git a/vendor/golang.org/x/net/ipv6/sys_bsd.go b/vendor/golang.org/x/net/ipv6/sys_bsd.go -index e416eaa..bde41a6 100644 ---- a/vendor/golang.org/x/net/ipv6/sys_bsd.go -+++ b/vendor/golang.org/x/net/ipv6/sys_bsd.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build dragonfly || netbsd || openbsd - // +build dragonfly netbsd openbsd - - package ipv6 -@@ -12,32 +13,34 @@ import ( - - "golang.org/x/net/internal/iana" - "golang.org/x/net/internal/socket" -+ -+ "golang.org/x/sys/unix" - ) - - var ( - ctlOpts = [ctlMax]ctlOpt{ -- ctlTrafficClass: {sysIPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass}, -- ctlHopLimit: {sysIPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit}, -- ctlPacketInfo: {sysIPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo}, -- ctlNextHop: {sysIPV6_NEXTHOP, sizeofSockaddrInet6, marshalNextHop, parseNextHop}, -- ctlPathMTU: {sysIPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU}, -+ ctlTrafficClass: {unix.IPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass}, -+ ctlHopLimit: {unix.IPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit}, -+ ctlPacketInfo: {unix.IPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo}, -+ ctlNextHop: {unix.IPV6_NEXTHOP, sizeofSockaddrInet6, marshalNextHop, parseNextHop}, -+ ctlPathMTU: {unix.IPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU}, - } - - sockOpts = map[int]*sockOpt{ -- ssoTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_TCLASS, Len: 4}}, -- ssoHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_UNICAST_HOPS, Len: 4}}, -- ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_IF, Len: 4}}, -- ssoMulticastHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_HOPS, Len: 4}}, -- ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_LOOP, Len: 4}}, -- ssoReceiveTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVTCLASS, Len: 4}}, -- ssoReceiveHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVHOPLIMIT, Len: 4}}, -- ssoReceivePacketInfo: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVPKTINFO, Len: 4}}, -- ssoReceivePathMTU: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVPATHMTU, Len: 4}}, -- ssoPathMTU: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_PATHMTU, Len: sizeofIPv6Mtuinfo}}, -- ssoChecksum: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_CHECKSUM, Len: 4}}, -- ssoICMPFilter: {Option: socket.Option{Level: iana.ProtocolIPv6ICMP, Name: sysICMP6_FILTER, Len: sizeofICMPv6Filter}}, -- ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_JOIN_GROUP, Len: sizeofIPv6Mreq}, typ: ssoTypeIPMreq}, -- ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_LEAVE_GROUP, Len: sizeofIPv6Mreq}, typ: ssoTypeIPMreq}, -+ ssoTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_TCLASS, Len: 4}}, -+ ssoHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_UNICAST_HOPS, Len: 4}}, -+ ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_IF, Len: 4}}, -+ ssoMulticastHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_HOPS, Len: 4}}, -+ ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_LOOP, Len: 4}}, -+ ssoReceiveTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVTCLASS, Len: 4}}, -+ ssoReceiveHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVHOPLIMIT, Len: 4}}, -+ ssoReceivePacketInfo: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVPKTINFO, Len: 4}}, -+ ssoReceivePathMTU: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVPATHMTU, Len: 4}}, -+ ssoPathMTU: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_PATHMTU, Len: sizeofIPv6Mtuinfo}}, -+ ssoChecksum: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_CHECKSUM, Len: 4}}, -+ ssoICMPFilter: {Option: socket.Option{Level: iana.ProtocolIPv6ICMP, Name: unix.ICMP6_FILTER, Len: sizeofICMPv6Filter}}, -+ ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_JOIN_GROUP, Len: sizeofIPv6Mreq}, typ: ssoTypeIPMreq}, -+ ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_LEAVE_GROUP, Len: sizeofIPv6Mreq}, typ: ssoTypeIPMreq}, - } - ) - -diff --git a/vendor/golang.org/x/net/ipv6/sys_darwin.go b/vendor/golang.org/x/net/ipv6/sys_darwin.go -index 12cc5cb..b80ec80 100644 ---- a/vendor/golang.org/x/net/ipv6/sys_darwin.go -+++ b/vendor/golang.org/x/net/ipv6/sys_darwin.go -@@ -11,36 +11,38 @@ import ( - - "golang.org/x/net/internal/iana" - "golang.org/x/net/internal/socket" -+ -+ "golang.org/x/sys/unix" - ) - - var ( - ctlOpts = [ctlMax]ctlOpt{ -- ctlTrafficClass: {sysIPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass}, -- ctlHopLimit: {sysIPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit}, -- ctlPacketInfo: {sysIPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo}, -- ctlNextHop: {sysIPV6_NEXTHOP, sizeofSockaddrInet6, marshalNextHop, parseNextHop}, -- ctlPathMTU: {sysIPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU}, -+ ctlTrafficClass: {unix.IPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass}, -+ ctlHopLimit: {unix.IPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit}, -+ ctlPacketInfo: {unix.IPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo}, -+ ctlNextHop: {unix.IPV6_NEXTHOP, sizeofSockaddrInet6, marshalNextHop, parseNextHop}, -+ ctlPathMTU: {unix.IPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU}, - } - - sockOpts = map[int]*sockOpt{ -- ssoHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_UNICAST_HOPS, Len: 4}}, -- ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_IF, Len: 4}}, -- ssoMulticastHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_HOPS, Len: 4}}, -- ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_LOOP, Len: 4}}, -- ssoTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_TCLASS, Len: 4}}, -- ssoReceiveTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVTCLASS, Len: 4}}, -- ssoReceiveHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVHOPLIMIT, Len: 4}}, -- ssoReceivePacketInfo: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVPKTINFO, Len: 4}}, -- ssoReceivePathMTU: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVPATHMTU, Len: 4}}, -- ssoPathMTU: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_PATHMTU, Len: sizeofIPv6Mtuinfo}}, -- ssoChecksum: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_CHECKSUM, Len: 4}}, -- ssoICMPFilter: {Option: socket.Option{Level: iana.ProtocolIPv6ICMP, Name: sysICMP6_FILTER, Len: sizeofICMPv6Filter}}, -- ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -- ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -- ssoJoinSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -- ssoLeaveSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -- ssoBlockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -- ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_UNICAST_HOPS, Len: 4}}, -+ ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_IF, Len: 4}}, -+ ssoMulticastHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_HOPS, Len: 4}}, -+ ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_LOOP, Len: 4}}, -+ ssoTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_TCLASS, Len: 4}}, -+ ssoReceiveTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVTCLASS, Len: 4}}, -+ ssoReceiveHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVHOPLIMIT, Len: 4}}, -+ ssoReceivePacketInfo: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVPKTINFO, Len: 4}}, -+ ssoReceivePathMTU: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVPATHMTU, Len: 4}}, -+ ssoPathMTU: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_PATHMTU, Len: sizeofIPv6Mtuinfo}}, -+ ssoChecksum: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_CHECKSUM, Len: 4}}, -+ ssoICMPFilter: {Option: socket.Option{Level: iana.ProtocolIPv6ICMP, Name: unix.ICMP6_FILTER, Len: sizeofICMPv6Filter}}, -+ ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -+ ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -+ ssoJoinSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoLeaveSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoBlockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, - } - ) - -diff --git a/vendor/golang.org/x/net/ipv6/sys_freebsd.go b/vendor/golang.org/x/net/ipv6/sys_freebsd.go -index 85a9f5d..6282cf9 100644 ---- a/vendor/golang.org/x/net/ipv6/sys_freebsd.go -+++ b/vendor/golang.org/x/net/ipv6/sys_freebsd.go -@@ -13,36 +13,38 @@ import ( - - "golang.org/x/net/internal/iana" - "golang.org/x/net/internal/socket" -+ -+ "golang.org/x/sys/unix" - ) - - var ( - ctlOpts = [ctlMax]ctlOpt{ -- ctlTrafficClass: {sysIPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass}, -- ctlHopLimit: {sysIPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit}, -- ctlPacketInfo: {sysIPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo}, -- ctlNextHop: {sysIPV6_NEXTHOP, sizeofSockaddrInet6, marshalNextHop, parseNextHop}, -- ctlPathMTU: {sysIPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU}, -+ ctlTrafficClass: {unix.IPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass}, -+ ctlHopLimit: {unix.IPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit}, -+ ctlPacketInfo: {unix.IPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo}, -+ ctlNextHop: {unix.IPV6_NEXTHOP, sizeofSockaddrInet6, marshalNextHop, parseNextHop}, -+ ctlPathMTU: {unix.IPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU}, - } - - sockOpts = map[int]sockOpt{ -- ssoTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_TCLASS, Len: 4}}, -- ssoHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_UNICAST_HOPS, Len: 4}}, -- ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_IF, Len: 4}}, -- ssoMulticastHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_HOPS, Len: 4}}, -- ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_LOOP, Len: 4}}, -- ssoReceiveTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVTCLASS, Len: 4}}, -- ssoReceiveHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVHOPLIMIT, Len: 4}}, -- ssoReceivePacketInfo: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVPKTINFO, Len: 4}}, -- ssoReceivePathMTU: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVPATHMTU, Len: 4}}, -- ssoPathMTU: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_PATHMTU, Len: sizeofIPv6Mtuinfo}}, -- ssoChecksum: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_CHECKSUM, Len: 4}}, -- ssoICMPFilter: {Option: socket.Option{Level: iana.ProtocolIPv6ICMP, Name: sysICMP6_FILTER, Len: sizeofICMPv6Filter}}, -- ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -- ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -- ssoJoinSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -- ssoLeaveSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -- ssoBlockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -- ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_TCLASS, Len: 4}}, -+ ssoHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_UNICAST_HOPS, Len: 4}}, -+ ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_IF, Len: 4}}, -+ ssoMulticastHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_HOPS, Len: 4}}, -+ ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_LOOP, Len: 4}}, -+ ssoReceiveTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVTCLASS, Len: 4}}, -+ ssoReceiveHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVHOPLIMIT, Len: 4}}, -+ ssoReceivePacketInfo: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVPKTINFO, Len: 4}}, -+ ssoReceivePathMTU: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVPATHMTU, Len: 4}}, -+ ssoPathMTU: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_PATHMTU, Len: sizeofIPv6Mtuinfo}}, -+ ssoChecksum: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_CHECKSUM, Len: 4}}, -+ ssoICMPFilter: {Option: socket.Option{Level: iana.ProtocolIPv6ICMP, Name: unix.ICMP6_FILTER, Len: sizeofICMPv6Filter}}, -+ ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -+ ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -+ ssoJoinSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoLeaveSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoBlockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, - } - ) - -diff --git a/vendor/golang.org/x/net/ipv6/sys_linux.go b/vendor/golang.org/x/net/ipv6/sys_linux.go -index 96e8093..82e2121 100644 ---- a/vendor/golang.org/x/net/ipv6/sys_linux.go -+++ b/vendor/golang.org/x/net/ipv6/sys_linux.go -@@ -11,36 +11,37 @@ import ( - - "golang.org/x/net/internal/iana" - "golang.org/x/net/internal/socket" -+ - "golang.org/x/sys/unix" - ) - - var ( - ctlOpts = [ctlMax]ctlOpt{ -- ctlTrafficClass: {sysIPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass}, -- ctlHopLimit: {sysIPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit}, -- ctlPacketInfo: {sysIPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo}, -- ctlPathMTU: {sysIPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU}, -+ ctlTrafficClass: {unix.IPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass}, -+ ctlHopLimit: {unix.IPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit}, -+ ctlPacketInfo: {unix.IPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo}, -+ ctlPathMTU: {unix.IPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU}, - } - - sockOpts = map[int]*sockOpt{ -- ssoTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_TCLASS, Len: 4}}, -- ssoHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_UNICAST_HOPS, Len: 4}}, -- ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_IF, Len: 4}}, -- ssoMulticastHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_HOPS, Len: 4}}, -- ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_LOOP, Len: 4}}, -- ssoReceiveTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVTCLASS, Len: 4}}, -- ssoReceiveHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVHOPLIMIT, Len: 4}}, -- ssoReceivePacketInfo: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVPKTINFO, Len: 4}}, -- ssoReceivePathMTU: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVPATHMTU, Len: 4}}, -- ssoPathMTU: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_PATHMTU, Len: sizeofIPv6Mtuinfo}}, -- ssoChecksum: {Option: socket.Option{Level: iana.ProtocolReserved, Name: sysIPV6_CHECKSUM, Len: 4}}, -- ssoICMPFilter: {Option: socket.Option{Level: iana.ProtocolIPv6ICMP, Name: sysICMPV6_FILTER, Len: sizeofICMPv6Filter}}, -- ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -- ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -- ssoJoinSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -- ssoLeaveSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -- ssoBlockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -- ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_TCLASS, Len: 4}}, -+ ssoHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_UNICAST_HOPS, Len: 4}}, -+ ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_IF, Len: 4}}, -+ ssoMulticastHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_HOPS, Len: 4}}, -+ ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_LOOP, Len: 4}}, -+ ssoReceiveTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVTCLASS, Len: 4}}, -+ ssoReceiveHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVHOPLIMIT, Len: 4}}, -+ ssoReceivePacketInfo: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVPKTINFO, Len: 4}}, -+ ssoReceivePathMTU: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVPATHMTU, Len: 4}}, -+ ssoPathMTU: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_PATHMTU, Len: sizeofIPv6Mtuinfo}}, -+ ssoChecksum: {Option: socket.Option{Level: iana.ProtocolReserved, Name: unix.IPV6_CHECKSUM, Len: 4}}, -+ ssoICMPFilter: {Option: socket.Option{Level: iana.ProtocolIPv6ICMP, Name: unix.ICMPV6_FILTER, Len: sizeofICMPv6Filter}}, -+ ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -+ ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -+ ssoJoinSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoLeaveSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoBlockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, - ssoAttachFilter: {Option: socket.Option{Level: unix.SOL_SOCKET, Name: unix.SO_ATTACH_FILTER, Len: unix.SizeofSockFprog}}, - } - ) -diff --git a/vendor/golang.org/x/net/ipv6/sys_solaris.go b/vendor/golang.org/x/net/ipv6/sys_solaris.go -index d348b5f..1fc30ad 100644 ---- a/vendor/golang.org/x/net/ipv6/sys_solaris.go -+++ b/vendor/golang.org/x/net/ipv6/sys_solaris.go -@@ -11,36 +11,38 @@ import ( - - "golang.org/x/net/internal/iana" - "golang.org/x/net/internal/socket" -+ -+ "golang.org/x/sys/unix" - ) - - var ( - ctlOpts = [ctlMax]ctlOpt{ -- ctlTrafficClass: {sysIPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass}, -- ctlHopLimit: {sysIPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit}, -- ctlPacketInfo: {sysIPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo}, -- ctlNextHop: {sysIPV6_NEXTHOP, sizeofSockaddrInet6, marshalNextHop, parseNextHop}, -- ctlPathMTU: {sysIPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU}, -+ ctlTrafficClass: {unix.IPV6_TCLASS, 4, marshalTrafficClass, parseTrafficClass}, -+ ctlHopLimit: {unix.IPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit}, -+ ctlPacketInfo: {unix.IPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo}, -+ ctlNextHop: {unix.IPV6_NEXTHOP, sizeofSockaddrInet6, marshalNextHop, parseNextHop}, -+ ctlPathMTU: {unix.IPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU}, - } - - sockOpts = map[int]*sockOpt{ -- ssoTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_TCLASS, Len: 4}}, -- ssoHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_UNICAST_HOPS, Len: 4}}, -- ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_IF, Len: 4}}, -- ssoMulticastHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_HOPS, Len: 4}}, -- ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_LOOP, Len: 4}}, -- ssoReceiveTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVTCLASS, Len: 4}}, -- ssoReceiveHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVHOPLIMIT, Len: 4}}, -- ssoReceivePacketInfo: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVPKTINFO, Len: 4}}, -- ssoReceivePathMTU: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_RECVPATHMTU, Len: 4}}, -- ssoPathMTU: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_PATHMTU, Len: sizeofIPv6Mtuinfo}}, -- ssoChecksum: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_CHECKSUM, Len: 4}}, -- ssoICMPFilter: {Option: socket.Option{Level: iana.ProtocolIPv6ICMP, Name: sysICMP6_FILTER, Len: sizeofICMPv6Filter}}, -- ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -- ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -- ssoJoinSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -- ssoLeaveSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -- ssoBlockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -- ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysMCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_TCLASS, Len: 4}}, -+ ssoHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_UNICAST_HOPS, Len: 4}}, -+ ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_IF, Len: 4}}, -+ ssoMulticastHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_HOPS, Len: 4}}, -+ ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_LOOP, Len: 4}}, -+ ssoReceiveTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVTCLASS, Len: 4}}, -+ ssoReceiveHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVHOPLIMIT, Len: 4}}, -+ ssoReceivePacketInfo: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVPKTINFO, Len: 4}}, -+ ssoReceivePathMTU: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVPATHMTU, Len: 4}}, -+ ssoPathMTU: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_PATHMTU, Len: sizeofIPv6Mtuinfo}}, -+ ssoChecksum: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_CHECKSUM, Len: 4}}, -+ ssoICMPFilter: {Option: socket.Option{Level: iana.ProtocolIPv6ICMP, Name: unix.ICMP6_FILTER, Len: sizeofICMPv6Filter}}, -+ ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -+ ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -+ ssoJoinSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoLeaveSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoBlockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, - } - ) - -diff --git a/vendor/golang.org/x/net/ipv6/sys_ssmreq.go b/vendor/golang.org/x/net/ipv6/sys_ssmreq.go -index 9b52e97..023488a 100644 ---- a/vendor/golang.org/x/net/ipv6/sys_ssmreq.go -+++ b/vendor/golang.org/x/net/ipv6/sys_ssmreq.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build aix darwin freebsd linux solaris -+//go:build aix || darwin || freebsd || linux || solaris || zos -+// +build aix darwin freebsd linux solaris zos - - package ipv6 - -diff --git a/vendor/golang.org/x/net/ipv6/sys_ssmreq_stub.go b/vendor/golang.org/x/net/ipv6/sys_ssmreq_stub.go -index d5bc110..acdf2e5 100644 ---- a/vendor/golang.org/x/net/ipv6/sys_ssmreq_stub.go -+++ b/vendor/golang.org/x/net/ipv6/sys_ssmreq_stub.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build !aix,!darwin,!freebsd,!linux,!solaris -+//go:build !aix && !darwin && !freebsd && !linux && !solaris && !zos -+// +build !aix,!darwin,!freebsd,!linux,!solaris,!zos - - package ipv6 - -diff --git a/vendor/golang.org/x/net/ipv6/sys_stub.go b/vendor/golang.org/x/net/ipv6/sys_stub.go -index 4f252d0..5807bba 100644 ---- a/vendor/golang.org/x/net/ipv6/sys_stub.go -+++ b/vendor/golang.org/x/net/ipv6/sys_stub.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!windows -+//go:build !aix && !darwin && !dragonfly && !freebsd && !linux && !netbsd && !openbsd && !solaris && !windows && !zos -+// +build !aix,!darwin,!dragonfly,!freebsd,!linux,!netbsd,!openbsd,!solaris,!windows,!zos - - package ipv6 - -diff --git a/vendor/golang.org/x/net/ipv6/sys_windows.go b/vendor/golang.org/x/net/ipv6/sys_windows.go -index fc36b01..fda8a29 100644 ---- a/vendor/golang.org/x/net/ipv6/sys_windows.go -+++ b/vendor/golang.org/x/net/ipv6/sys_windows.go -@@ -10,18 +10,11 @@ import ( - - "golang.org/x/net/internal/iana" - "golang.org/x/net/internal/socket" -+ -+ "golang.org/x/sys/windows" - ) - - const ( -- // See ws2tcpip.h. -- sysIPV6_UNICAST_HOPS = 0x4 -- sysIPV6_MULTICAST_IF = 0x9 -- sysIPV6_MULTICAST_HOPS = 0xa -- sysIPV6_MULTICAST_LOOP = 0xb -- sysIPV6_JOIN_GROUP = 0xc -- sysIPV6_LEAVE_GROUP = 0xd -- sysIPV6_PKTINFO = 0x13 -- - sizeofSockaddrInet6 = 0x1c - - sizeofIPv6Mreq = 0x14 -@@ -55,12 +48,12 @@ var ( - ctlOpts = [ctlMax]ctlOpt{} - - sockOpts = map[int]*sockOpt{ -- ssoHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_UNICAST_HOPS, Len: 4}}, -- ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_IF, Len: 4}}, -- ssoMulticastHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_HOPS, Len: 4}}, -- ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_MULTICAST_LOOP, Len: 4}}, -- ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_JOIN_GROUP, Len: sizeofIPv6Mreq}, typ: ssoTypeIPMreq}, -- ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: sysIPV6_LEAVE_GROUP, Len: sizeofIPv6Mreq}, typ: ssoTypeIPMreq}, -+ ssoHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: windows.IPV6_UNICAST_HOPS, Len: 4}}, -+ ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: windows.IPV6_MULTICAST_IF, Len: 4}}, -+ ssoMulticastHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: windows.IPV6_MULTICAST_HOPS, Len: 4}}, -+ ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: windows.IPV6_MULTICAST_LOOP, Len: 4}}, -+ ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: windows.IPV6_JOIN_GROUP, Len: sizeofIPv6Mreq}, typ: ssoTypeIPMreq}, -+ ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: windows.IPV6_LEAVE_GROUP, Len: sizeofIPv6Mreq}, typ: ssoTypeIPMreq}, - } - ) - -diff --git a/vendor/golang.org/x/net/ipv6/sys_zos.go b/vendor/golang.org/x/net/ipv6/sys_zos.go -new file mode 100644 -index 0000000..31adc86 ---- /dev/null -+++ b/vendor/golang.org/x/net/ipv6/sys_zos.go -@@ -0,0 +1,72 @@ -+// Copyright 2020 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+package ipv6 -+ -+import ( -+ "net" -+ "syscall" -+ "unsafe" -+ -+ "golang.org/x/net/internal/iana" -+ "golang.org/x/net/internal/socket" -+ -+ "golang.org/x/sys/unix" -+) -+ -+var ( -+ ctlOpts = [ctlMax]ctlOpt{ -+ ctlHopLimit: {unix.IPV6_HOPLIMIT, 4, marshalHopLimit, parseHopLimit}, -+ ctlPacketInfo: {unix.IPV6_PKTINFO, sizeofInet6Pktinfo, marshalPacketInfo, parsePacketInfo}, -+ ctlPathMTU: {unix.IPV6_PATHMTU, sizeofIPv6Mtuinfo, marshalPathMTU, parsePathMTU}, -+ } -+ -+ sockOpts = map[int]*sockOpt{ -+ ssoTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_TCLASS, Len: 4}}, -+ ssoHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_UNICAST_HOPS, Len: 4}}, -+ ssoMulticastInterface: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_IF, Len: 4}}, -+ ssoMulticastHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_HOPS, Len: 4}}, -+ ssoMulticastLoopback: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_MULTICAST_LOOP, Len: 4}}, -+ ssoReceiveTrafficClass: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVTCLASS, Len: 4}}, -+ ssoReceiveHopLimit: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVHOPLIMIT, Len: 4}}, -+ ssoReceivePacketInfo: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVPKTINFO, Len: 4}}, -+ ssoReceivePathMTU: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_RECVPATHMTU, Len: 4}}, -+ ssoChecksum: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.IPV6_CHECKSUM, Len: 4}}, -+ ssoICMPFilter: {Option: socket.Option{Level: iana.ProtocolIPv6ICMP, Name: unix.ICMP6_FILTER, Len: sizeofICMPv6Filter}}, -+ ssoJoinGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_JOIN_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -+ ssoLeaveGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_LEAVE_GROUP, Len: sizeofGroupReq}, typ: ssoTypeGroupReq}, -+ ssoJoinSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_JOIN_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoLeaveSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_LEAVE_SOURCE_GROUP, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoBlockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_BLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ ssoUnblockSourceGroup: {Option: socket.Option{Level: iana.ProtocolIPv6, Name: unix.MCAST_UNBLOCK_SOURCE, Len: sizeofGroupSourceReq}, typ: ssoTypeGroupSourceReq}, -+ } -+) -+ -+func (sa *sockaddrInet6) setSockaddr(ip net.IP, i int) { -+ sa.Family = syscall.AF_INET6 -+ copy(sa.Addr[:], ip) -+ sa.Scope_id = uint32(i) -+} -+ -+func (pi *inet6Pktinfo) setIfindex(i int) { -+ pi.Ifindex = uint32(i) -+} -+ -+func (gr *groupReq) setGroup(grp net.IP) { -+ sa := (*sockaddrInet6)(unsafe.Pointer(&gr.Group)) -+ sa.Family = syscall.AF_INET6 -+ sa.Len = sizeofSockaddrInet6 -+ copy(sa.Addr[:], grp) -+} -+ -+func (gsr *groupSourceReq) setSourceGroup(grp, src net.IP) { -+ sa := (*sockaddrInet6)(unsafe.Pointer(&gsr.Group)) -+ sa.Family = syscall.AF_INET6 -+ sa.Len = sizeofSockaddrInet6 -+ copy(sa.Addr[:], grp) -+ sa = (*sockaddrInet6)(unsafe.Pointer(&gsr.Source)) -+ sa.Family = syscall.AF_INET6 -+ sa.Len = sizeofSockaddrInet6 -+ copy(sa.Addr[:], src) -+} -diff --git a/vendor/golang.org/x/net/ipv6/zsys_aix_ppc64.go b/vendor/golang.org/x/net/ipv6/zsys_aix_ppc64.go -index bf44e33..f604b0f 100644 ---- a/vendor/golang.org/x/net/ipv6/zsys_aix_ppc64.go -+++ b/vendor/golang.org/x/net/ipv6/zsys_aix_ppc64.go -@@ -2,46 +2,12 @@ - // cgo -godefs defs_aix.go - - // Added for go1.11 compatibility -+//go:build aix - // +build aix - - package ipv6 - - const ( -- sysIPV6_UNICAST_HOPS = 0x4 -- sysIPV6_MULTICAST_IF = 0x9 -- sysIPV6_MULTICAST_HOPS = 0xa -- sysIPV6_MULTICAST_LOOP = 0xb -- sysIPV6_JOIN_GROUP = 0xc -- sysIPV6_LEAVE_GROUP = 0xd -- sysICMP6_FILTER = 0x26 -- -- sysIPV6_CHECKSUM = 0x27 -- sysIPV6_V6ONLY = 0x25 -- -- sysIPV6_RTHDRDSTOPTS = 0x37 -- -- sysIPV6_RECVPKTINFO = 0x23 -- sysIPV6_RECVHOPLIMIT = 0x29 -- sysIPV6_RECVRTHDR = 0x33 -- sysIPV6_RECVHOPOPTS = 0x35 -- sysIPV6_RECVDSTOPTS = 0x38 -- -- sysIPV6_USE_MIN_MTU = 0x2c -- sysIPV6_RECVPATHMTU = 0x2f -- sysIPV6_PATHMTU = 0x2e -- -- sysIPV6_PKTINFO = 0x21 -- sysIPV6_HOPLIMIT = 0x28 -- sysIPV6_NEXTHOP = 0x30 -- sysIPV6_HOPOPTS = 0x34 -- sysIPV6_DSTOPTS = 0x36 -- sysIPV6_RTHDR = 0x32 -- -- sysIPV6_RECVTCLASS = 0x2a -- -- sysIPV6_TCLASS = 0x2b -- sysIPV6_DONTFRAG = 0x2d -- - sizeofSockaddrStorage = 0x508 - sizeofSockaddrInet6 = 0x1c - sizeofInet6Pktinfo = 0x14 -diff --git a/vendor/golang.org/x/net/ipv6/zsys_darwin.go b/vendor/golang.org/x/net/ipv6/zsys_darwin.go -index 555744a..dd6f7b2 100644 ---- a/vendor/golang.org/x/net/ipv6/zsys_darwin.go -+++ b/vendor/golang.org/x/net/ipv6/zsys_darwin.go -@@ -4,73 +4,6 @@ - package ipv6 - - const ( -- sysIPV6_UNICAST_HOPS = 0x4 -- sysIPV6_MULTICAST_IF = 0x9 -- sysIPV6_MULTICAST_HOPS = 0xa -- sysIPV6_MULTICAST_LOOP = 0xb -- sysIPV6_JOIN_GROUP = 0xc -- sysIPV6_LEAVE_GROUP = 0xd -- -- sysIPV6_PORTRANGE = 0xe -- sysICMP6_FILTER = 0x12 -- sysIPV6_2292PKTINFO = 0x13 -- sysIPV6_2292HOPLIMIT = 0x14 -- sysIPV6_2292NEXTHOP = 0x15 -- sysIPV6_2292HOPOPTS = 0x16 -- sysIPV6_2292DSTOPTS = 0x17 -- sysIPV6_2292RTHDR = 0x18 -- -- sysIPV6_2292PKTOPTIONS = 0x19 -- -- sysIPV6_CHECKSUM = 0x1a -- sysIPV6_V6ONLY = 0x1b -- -- sysIPV6_IPSEC_POLICY = 0x1c -- -- sysIPV6_RECVTCLASS = 0x23 -- sysIPV6_TCLASS = 0x24 -- -- sysIPV6_RTHDRDSTOPTS = 0x39 -- -- sysIPV6_RECVPKTINFO = 0x3d -- -- sysIPV6_RECVHOPLIMIT = 0x25 -- sysIPV6_RECVRTHDR = 0x26 -- sysIPV6_RECVHOPOPTS = 0x27 -- sysIPV6_RECVDSTOPTS = 0x28 -- -- sysIPV6_USE_MIN_MTU = 0x2a -- sysIPV6_RECVPATHMTU = 0x2b -- -- sysIPV6_PATHMTU = 0x2c -- -- sysIPV6_PKTINFO = 0x2e -- sysIPV6_HOPLIMIT = 0x2f -- sysIPV6_NEXTHOP = 0x30 -- sysIPV6_HOPOPTS = 0x31 -- sysIPV6_DSTOPTS = 0x32 -- sysIPV6_RTHDR = 0x33 -- -- sysIPV6_AUTOFLOWLABEL = 0x3b -- -- sysIPV6_DONTFRAG = 0x3e -- -- sysIPV6_PREFER_TEMPADDR = 0x3f -- -- sysIPV6_MSFILTER = 0x4a -- sysMCAST_JOIN_GROUP = 0x50 -- sysMCAST_LEAVE_GROUP = 0x51 -- sysMCAST_JOIN_SOURCE_GROUP = 0x52 -- sysMCAST_LEAVE_SOURCE_GROUP = 0x53 -- sysMCAST_BLOCK_SOURCE = 0x54 -- sysMCAST_UNBLOCK_SOURCE = 0x55 -- -- sysIPV6_BOUND_IF = 0x7d -- -- sysIPV6_PORTRANGE_DEFAULT = 0x0 -- sysIPV6_PORTRANGE_HIGH = 0x1 -- sysIPV6_PORTRANGE_LOW = 0x2 -- - sizeofSockaddrStorage = 0x80 - sizeofSockaddrInet6 = 0x1c - sizeofInet6Pktinfo = 0x14 -diff --git a/vendor/golang.org/x/net/ipv6/zsys_dragonfly.go b/vendor/golang.org/x/net/ipv6/zsys_dragonfly.go -index cf3cc10..6b45a94 100644 ---- a/vendor/golang.org/x/net/ipv6/zsys_dragonfly.go -+++ b/vendor/golang.org/x/net/ipv6/zsys_dragonfly.go -@@ -4,52 +4,6 @@ - package ipv6 - - const ( -- sysIPV6_UNICAST_HOPS = 0x4 -- sysIPV6_MULTICAST_IF = 0x9 -- sysIPV6_MULTICAST_HOPS = 0xa -- sysIPV6_MULTICAST_LOOP = 0xb -- sysIPV6_JOIN_GROUP = 0xc -- sysIPV6_LEAVE_GROUP = 0xd -- sysIPV6_PORTRANGE = 0xe -- sysICMP6_FILTER = 0x12 -- -- sysIPV6_CHECKSUM = 0x1a -- sysIPV6_V6ONLY = 0x1b -- -- sysIPV6_IPSEC_POLICY = 0x1c -- -- sysIPV6_RTHDRDSTOPTS = 0x23 -- sysIPV6_RECVPKTINFO = 0x24 -- sysIPV6_RECVHOPLIMIT = 0x25 -- sysIPV6_RECVRTHDR = 0x26 -- sysIPV6_RECVHOPOPTS = 0x27 -- sysIPV6_RECVDSTOPTS = 0x28 -- -- sysIPV6_USE_MIN_MTU = 0x2a -- sysIPV6_RECVPATHMTU = 0x2b -- -- sysIPV6_PATHMTU = 0x2c -- -- sysIPV6_PKTINFO = 0x2e -- sysIPV6_HOPLIMIT = 0x2f -- sysIPV6_NEXTHOP = 0x30 -- sysIPV6_HOPOPTS = 0x31 -- sysIPV6_DSTOPTS = 0x32 -- sysIPV6_RTHDR = 0x33 -- -- sysIPV6_RECVTCLASS = 0x39 -- -- sysIPV6_AUTOFLOWLABEL = 0x3b -- -- sysIPV6_TCLASS = 0x3d -- sysIPV6_DONTFRAG = 0x3e -- -- sysIPV6_PREFER_TEMPADDR = 0x3f -- -- sysIPV6_PORTRANGE_DEFAULT = 0x0 -- sysIPV6_PORTRANGE_HIGH = 0x1 -- sysIPV6_PORTRANGE_LOW = 0x2 -- - sizeofSockaddrInet6 = 0x1c - sizeofInet6Pktinfo = 0x14 - sizeofIPv6Mtuinfo = 0x20 -diff --git a/vendor/golang.org/x/net/ipv6/zsys_freebsd_386.go b/vendor/golang.org/x/net/ipv6/zsys_freebsd_386.go -index 73f31b2..8da5592 100644 ---- a/vendor/golang.org/x/net/ipv6/zsys_freebsd_386.go -+++ b/vendor/golang.org/x/net/ipv6/zsys_freebsd_386.go -@@ -4,64 +4,6 @@ - package ipv6 - - const ( -- sysIPV6_UNICAST_HOPS = 0x4 -- sysIPV6_MULTICAST_IF = 0x9 -- sysIPV6_MULTICAST_HOPS = 0xa -- sysIPV6_MULTICAST_LOOP = 0xb -- sysIPV6_JOIN_GROUP = 0xc -- sysIPV6_LEAVE_GROUP = 0xd -- sysIPV6_PORTRANGE = 0xe -- sysICMP6_FILTER = 0x12 -- -- sysIPV6_CHECKSUM = 0x1a -- sysIPV6_V6ONLY = 0x1b -- -- sysIPV6_IPSEC_POLICY = 0x1c -- -- sysIPV6_RTHDRDSTOPTS = 0x23 -- -- sysIPV6_RECVPKTINFO = 0x24 -- sysIPV6_RECVHOPLIMIT = 0x25 -- sysIPV6_RECVRTHDR = 0x26 -- sysIPV6_RECVHOPOPTS = 0x27 -- sysIPV6_RECVDSTOPTS = 0x28 -- -- sysIPV6_USE_MIN_MTU = 0x2a -- sysIPV6_RECVPATHMTU = 0x2b -- -- sysIPV6_PATHMTU = 0x2c -- -- sysIPV6_PKTINFO = 0x2e -- sysIPV6_HOPLIMIT = 0x2f -- sysIPV6_NEXTHOP = 0x30 -- sysIPV6_HOPOPTS = 0x31 -- sysIPV6_DSTOPTS = 0x32 -- sysIPV6_RTHDR = 0x33 -- -- sysIPV6_RECVTCLASS = 0x39 -- -- sysIPV6_AUTOFLOWLABEL = 0x3b -- -- sysIPV6_TCLASS = 0x3d -- sysIPV6_DONTFRAG = 0x3e -- -- sysIPV6_PREFER_TEMPADDR = 0x3f -- -- sysIPV6_BINDANY = 0x40 -- -- sysIPV6_MSFILTER = 0x4a -- -- sysMCAST_JOIN_GROUP = 0x50 -- sysMCAST_LEAVE_GROUP = 0x51 -- sysMCAST_JOIN_SOURCE_GROUP = 0x52 -- sysMCAST_LEAVE_SOURCE_GROUP = 0x53 -- sysMCAST_BLOCK_SOURCE = 0x54 -- sysMCAST_UNBLOCK_SOURCE = 0x55 -- -- sysIPV6_PORTRANGE_DEFAULT = 0x0 -- sysIPV6_PORTRANGE_HIGH = 0x1 -- sysIPV6_PORTRANGE_LOW = 0x2 -- - sizeofSockaddrStorage = 0x80 - sizeofSockaddrInet6 = 0x1c - sizeofInet6Pktinfo = 0x14 -diff --git a/vendor/golang.org/x/net/ipv6/zsys_freebsd_amd64.go b/vendor/golang.org/x/net/ipv6/zsys_freebsd_amd64.go -index 490ce7c..72a1a65 100644 ---- a/vendor/golang.org/x/net/ipv6/zsys_freebsd_amd64.go -+++ b/vendor/golang.org/x/net/ipv6/zsys_freebsd_amd64.go -@@ -4,64 +4,6 @@ - package ipv6 - - const ( -- sysIPV6_UNICAST_HOPS = 0x4 -- sysIPV6_MULTICAST_IF = 0x9 -- sysIPV6_MULTICAST_HOPS = 0xa -- sysIPV6_MULTICAST_LOOP = 0xb -- sysIPV6_JOIN_GROUP = 0xc -- sysIPV6_LEAVE_GROUP = 0xd -- sysIPV6_PORTRANGE = 0xe -- sysICMP6_FILTER = 0x12 -- -- sysIPV6_CHECKSUM = 0x1a -- sysIPV6_V6ONLY = 0x1b -- -- sysIPV6_IPSEC_POLICY = 0x1c -- -- sysIPV6_RTHDRDSTOPTS = 0x23 -- -- sysIPV6_RECVPKTINFO = 0x24 -- sysIPV6_RECVHOPLIMIT = 0x25 -- sysIPV6_RECVRTHDR = 0x26 -- sysIPV6_RECVHOPOPTS = 0x27 -- sysIPV6_RECVDSTOPTS = 0x28 -- -- sysIPV6_USE_MIN_MTU = 0x2a -- sysIPV6_RECVPATHMTU = 0x2b -- -- sysIPV6_PATHMTU = 0x2c -- -- sysIPV6_PKTINFO = 0x2e -- sysIPV6_HOPLIMIT = 0x2f -- sysIPV6_NEXTHOP = 0x30 -- sysIPV6_HOPOPTS = 0x31 -- sysIPV6_DSTOPTS = 0x32 -- sysIPV6_RTHDR = 0x33 -- -- sysIPV6_RECVTCLASS = 0x39 -- -- sysIPV6_AUTOFLOWLABEL = 0x3b -- -- sysIPV6_TCLASS = 0x3d -- sysIPV6_DONTFRAG = 0x3e -- -- sysIPV6_PREFER_TEMPADDR = 0x3f -- -- sysIPV6_BINDANY = 0x40 -- -- sysIPV6_MSFILTER = 0x4a -- -- sysMCAST_JOIN_GROUP = 0x50 -- sysMCAST_LEAVE_GROUP = 0x51 -- sysMCAST_JOIN_SOURCE_GROUP = 0x52 -- sysMCAST_LEAVE_SOURCE_GROUP = 0x53 -- sysMCAST_BLOCK_SOURCE = 0x54 -- sysMCAST_UNBLOCK_SOURCE = 0x55 -- -- sysIPV6_PORTRANGE_DEFAULT = 0x0 -- sysIPV6_PORTRANGE_HIGH = 0x1 -- sysIPV6_PORTRANGE_LOW = 0x2 -- - sizeofSockaddrStorage = 0x80 - sizeofSockaddrInet6 = 0x1c - sizeofInet6Pktinfo = 0x14 -diff --git a/vendor/golang.org/x/net/ipv6/zsys_freebsd_arm.go b/vendor/golang.org/x/net/ipv6/zsys_freebsd_arm.go -index 490ce7c..72a1a65 100644 ---- a/vendor/golang.org/x/net/ipv6/zsys_freebsd_arm.go -+++ b/vendor/golang.org/x/net/ipv6/zsys_freebsd_arm.go -@@ -4,64 +4,6 @@ - package ipv6 - - const ( -- sysIPV6_UNICAST_HOPS = 0x4 -- sysIPV6_MULTICAST_IF = 0x9 -- sysIPV6_MULTICAST_HOPS = 0xa -- sysIPV6_MULTICAST_LOOP = 0xb -- sysIPV6_JOIN_GROUP = 0xc -- sysIPV6_LEAVE_GROUP = 0xd -- sysIPV6_PORTRANGE = 0xe -- sysICMP6_FILTER = 0x12 -- -- sysIPV6_CHECKSUM = 0x1a -- sysIPV6_V6ONLY = 0x1b -- -- sysIPV6_IPSEC_POLICY = 0x1c -- -- sysIPV6_RTHDRDSTOPTS = 0x23 -- -- sysIPV6_RECVPKTINFO = 0x24 -- sysIPV6_RECVHOPLIMIT = 0x25 -- sysIPV6_RECVRTHDR = 0x26 -- sysIPV6_RECVHOPOPTS = 0x27 -- sysIPV6_RECVDSTOPTS = 0x28 -- -- sysIPV6_USE_MIN_MTU = 0x2a -- sysIPV6_RECVPATHMTU = 0x2b -- -- sysIPV6_PATHMTU = 0x2c -- -- sysIPV6_PKTINFO = 0x2e -- sysIPV6_HOPLIMIT = 0x2f -- sysIPV6_NEXTHOP = 0x30 -- sysIPV6_HOPOPTS = 0x31 -- sysIPV6_DSTOPTS = 0x32 -- sysIPV6_RTHDR = 0x33 -- -- sysIPV6_RECVTCLASS = 0x39 -- -- sysIPV6_AUTOFLOWLABEL = 0x3b -- -- sysIPV6_TCLASS = 0x3d -- sysIPV6_DONTFRAG = 0x3e -- -- sysIPV6_PREFER_TEMPADDR = 0x3f -- -- sysIPV6_BINDANY = 0x40 -- -- sysIPV6_MSFILTER = 0x4a -- -- sysMCAST_JOIN_GROUP = 0x50 -- sysMCAST_LEAVE_GROUP = 0x51 -- sysMCAST_JOIN_SOURCE_GROUP = 0x52 -- sysMCAST_LEAVE_SOURCE_GROUP = 0x53 -- sysMCAST_BLOCK_SOURCE = 0x54 -- sysMCAST_UNBLOCK_SOURCE = 0x55 -- -- sysIPV6_PORTRANGE_DEFAULT = 0x0 -- sysIPV6_PORTRANGE_HIGH = 0x1 -- sysIPV6_PORTRANGE_LOW = 0x2 -- - sizeofSockaddrStorage = 0x80 - sizeofSockaddrInet6 = 0x1c - sizeofInet6Pktinfo = 0x14 -diff --git a/vendor/golang.org/x/net/ipv6/zsys_freebsd_arm64.go b/vendor/golang.org/x/net/ipv6/zsys_freebsd_arm64.go -index 47e99ac..5b39eb8 100644 ---- a/vendor/golang.org/x/net/ipv6/zsys_freebsd_arm64.go -+++ b/vendor/golang.org/x/net/ipv6/zsys_freebsd_arm64.go -@@ -4,64 +4,6 @@ - package ipv6 - - const ( -- sysIPV6_UNICAST_HOPS = 0x4 -- sysIPV6_MULTICAST_IF = 0x9 -- sysIPV6_MULTICAST_HOPS = 0xa -- sysIPV6_MULTICAST_LOOP = 0xb -- sysIPV6_JOIN_GROUP = 0xc -- sysIPV6_LEAVE_GROUP = 0xd -- sysIPV6_PORTRANGE = 0xe -- sysICMP6_FILTER = 0x12 -- -- sysIPV6_CHECKSUM = 0x1a -- sysIPV6_V6ONLY = 0x1b -- -- sysIPV6_IPSEC_POLICY = 0x1c -- -- sysIPV6_RTHDRDSTOPTS = 0x23 -- -- sysIPV6_RECVPKTINFO = 0x24 -- sysIPV6_RECVHOPLIMIT = 0x25 -- sysIPV6_RECVRTHDR = 0x26 -- sysIPV6_RECVHOPOPTS = 0x27 -- sysIPV6_RECVDSTOPTS = 0x28 -- -- sysIPV6_USE_MIN_MTU = 0x2a -- sysIPV6_RECVPATHMTU = 0x2b -- -- sysIPV6_PATHMTU = 0x2c -- -- sysIPV6_PKTINFO = 0x2e -- sysIPV6_HOPLIMIT = 0x2f -- sysIPV6_NEXTHOP = 0x30 -- sysIPV6_HOPOPTS = 0x31 -- sysIPV6_DSTOPTS = 0x32 -- sysIPV6_RTHDR = 0x33 -- -- sysIPV6_RECVTCLASS = 0x39 -- -- sysIPV6_AUTOFLOWLABEL = 0x3b -- -- sysIPV6_TCLASS = 0x3d -- sysIPV6_DONTFRAG = 0x3e -- -- sysIPV6_PREFER_TEMPADDR = 0x3f -- -- sysIPV6_BINDANY = 0x40 -- -- sysIPV6_MSFILTER = 0x4a -- -- sysMCAST_JOIN_GROUP = 0x50 -- sysMCAST_LEAVE_GROUP = 0x51 -- sysMCAST_JOIN_SOURCE_GROUP = 0x52 -- sysMCAST_LEAVE_SOURCE_GROUP = 0x53 -- sysMCAST_BLOCK_SOURCE = 0x54 -- sysMCAST_UNBLOCK_SOURCE = 0x55 -- -- sysIPV6_PORTRANGE_DEFAULT = 0x0 -- sysIPV6_PORTRANGE_HIGH = 0x1 -- sysIPV6_PORTRANGE_LOW = 0x2 -- - sizeofSockaddrStorage = 0x80 - sizeofSockaddrInet6 = 0x1c - sizeofInet6Pktinfo = 0x14 -diff --git a/vendor/golang.org/x/net/ipv6/zsys_freebsd_riscv64.go b/vendor/golang.org/x/net/ipv6/zsys_freebsd_riscv64.go -new file mode 100644 -index 0000000..5b39eb8 ---- /dev/null -+++ b/vendor/golang.org/x/net/ipv6/zsys_freebsd_riscv64.go -@@ -0,0 +1,64 @@ -+// Code generated by cmd/cgo -godefs; DO NOT EDIT. -+// cgo -godefs defs_freebsd.go -+ -+package ipv6 -+ -+const ( -+ sizeofSockaddrStorage = 0x80 -+ sizeofSockaddrInet6 = 0x1c -+ sizeofInet6Pktinfo = 0x14 -+ sizeofIPv6Mtuinfo = 0x20 -+ -+ sizeofIPv6Mreq = 0x14 -+ sizeofGroupReq = 0x88 -+ sizeofGroupSourceReq = 0x108 -+ -+ sizeofICMPv6Filter = 0x20 -+) -+ -+type sockaddrStorage struct { -+ Len uint8 -+ Family uint8 -+ X__ss_pad1 [6]uint8 -+ X__ss_align int64 -+ X__ss_pad2 [112]uint8 -+} -+ -+type sockaddrInet6 struct { -+ Len uint8 -+ Family uint8 -+ Port uint16 -+ Flowinfo uint32 -+ Addr [16]byte /* in6_addr */ -+ Scope_id uint32 -+} -+ -+type inet6Pktinfo struct { -+ Addr [16]byte /* in6_addr */ -+ Ifindex uint32 -+} -+ -+type ipv6Mtuinfo struct { -+ Addr sockaddrInet6 -+ Mtu uint32 -+} -+ -+type ipv6Mreq struct { -+ Multiaddr [16]byte /* in6_addr */ -+ Interface uint32 -+} -+ -+type groupReq struct { -+ Interface uint32 -+ Group sockaddrStorage -+} -+ -+type groupSourceReq struct { -+ Interface uint32 -+ Group sockaddrStorage -+ Source sockaddrStorage -+} -+ -+type icmpv6Filter struct { -+ Filt [8]uint32 -+} -diff --git a/vendor/golang.org/x/net/ipv6/zsys_linux_386.go b/vendor/golang.org/x/net/ipv6/zsys_linux_386.go -index bde4a8f..ad71871 100644 ---- a/vendor/golang.org/x/net/ipv6/zsys_linux_386.go -+++ b/vendor/golang.org/x/net/ipv6/zsys_linux_386.go -@@ -4,86 +4,6 @@ - package ipv6 - - const ( -- sysIPV6_ADDRFORM = 0x1 -- sysIPV6_2292PKTINFO = 0x2 -- sysIPV6_2292HOPOPTS = 0x3 -- sysIPV6_2292DSTOPTS = 0x4 -- sysIPV6_2292RTHDR = 0x5 -- sysIPV6_2292PKTOPTIONS = 0x6 -- sysIPV6_CHECKSUM = 0x7 -- sysIPV6_2292HOPLIMIT = 0x8 -- sysIPV6_NEXTHOP = 0x9 -- sysIPV6_FLOWINFO = 0xb -- -- sysIPV6_UNICAST_HOPS = 0x10 -- sysIPV6_MULTICAST_IF = 0x11 -- sysIPV6_MULTICAST_HOPS = 0x12 -- sysIPV6_MULTICAST_LOOP = 0x13 -- sysIPV6_ADD_MEMBERSHIP = 0x14 -- sysIPV6_DROP_MEMBERSHIP = 0x15 -- sysMCAST_JOIN_GROUP = 0x2a -- sysMCAST_LEAVE_GROUP = 0x2d -- sysMCAST_JOIN_SOURCE_GROUP = 0x2e -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2f -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_MSFILTER = 0x30 -- sysIPV6_ROUTER_ALERT = 0x16 -- sysIPV6_MTU_DISCOVER = 0x17 -- sysIPV6_MTU = 0x18 -- sysIPV6_RECVERR = 0x19 -- sysIPV6_V6ONLY = 0x1a -- sysIPV6_JOIN_ANYCAST = 0x1b -- sysIPV6_LEAVE_ANYCAST = 0x1c -- -- sysIPV6_FLOWLABEL_MGR = 0x20 -- sysIPV6_FLOWINFO_SEND = 0x21 -- -- sysIPV6_IPSEC_POLICY = 0x22 -- sysIPV6_XFRM_POLICY = 0x23 -- -- sysIPV6_RECVPKTINFO = 0x31 -- sysIPV6_PKTINFO = 0x32 -- sysIPV6_RECVHOPLIMIT = 0x33 -- sysIPV6_HOPLIMIT = 0x34 -- sysIPV6_RECVHOPOPTS = 0x35 -- sysIPV6_HOPOPTS = 0x36 -- sysIPV6_RTHDRDSTOPTS = 0x37 -- sysIPV6_RECVRTHDR = 0x38 -- sysIPV6_RTHDR = 0x39 -- sysIPV6_RECVDSTOPTS = 0x3a -- sysIPV6_DSTOPTS = 0x3b -- sysIPV6_RECVPATHMTU = 0x3c -- sysIPV6_PATHMTU = 0x3d -- sysIPV6_DONTFRAG = 0x3e -- -- sysIPV6_RECVTCLASS = 0x42 -- sysIPV6_TCLASS = 0x43 -- -- sysIPV6_ADDR_PREFERENCES = 0x48 -- -- sysIPV6_PREFER_SRC_TMP = 0x1 -- sysIPV6_PREFER_SRC_PUBLIC = 0x2 -- sysIPV6_PREFER_SRC_PUBTMP_DEFAULT = 0x100 -- sysIPV6_PREFER_SRC_COA = 0x4 -- sysIPV6_PREFER_SRC_HOME = 0x400 -- sysIPV6_PREFER_SRC_CGA = 0x8 -- sysIPV6_PREFER_SRC_NONCGA = 0x800 -- -- sysIPV6_MINHOPCOUNT = 0x49 -- -- sysIPV6_ORIGDSTADDR = 0x4a -- sysIPV6_RECVORIGDSTADDR = 0x4a -- sysIPV6_TRANSPARENT = 0x4b -- sysIPV6_UNICAST_IF = 0x4c -- -- sysICMPV6_FILTER = 0x1 -- -- sysICMPV6_FILTER_BLOCK = 0x1 -- sysICMPV6_FILTER_PASS = 0x2 -- sysICMPV6_FILTER_BLOCKOTHERS = 0x3 -- sysICMPV6_FILTER_PASSONLY = 0x4 -- - sizeofKernelSockaddrStorage = 0x80 - sizeofSockaddrInet6 = 0x1c - sizeofInet6Pktinfo = 0x14 -diff --git a/vendor/golang.org/x/net/ipv6/zsys_linux_amd64.go b/vendor/golang.org/x/net/ipv6/zsys_linux_amd64.go -index 992ac9e..2514ab9 100644 ---- a/vendor/golang.org/x/net/ipv6/zsys_linux_amd64.go -+++ b/vendor/golang.org/x/net/ipv6/zsys_linux_amd64.go -@@ -4,86 +4,6 @@ - package ipv6 - - const ( -- sysIPV6_ADDRFORM = 0x1 -- sysIPV6_2292PKTINFO = 0x2 -- sysIPV6_2292HOPOPTS = 0x3 -- sysIPV6_2292DSTOPTS = 0x4 -- sysIPV6_2292RTHDR = 0x5 -- sysIPV6_2292PKTOPTIONS = 0x6 -- sysIPV6_CHECKSUM = 0x7 -- sysIPV6_2292HOPLIMIT = 0x8 -- sysIPV6_NEXTHOP = 0x9 -- sysIPV6_FLOWINFO = 0xb -- -- sysIPV6_UNICAST_HOPS = 0x10 -- sysIPV6_MULTICAST_IF = 0x11 -- sysIPV6_MULTICAST_HOPS = 0x12 -- sysIPV6_MULTICAST_LOOP = 0x13 -- sysIPV6_ADD_MEMBERSHIP = 0x14 -- sysIPV6_DROP_MEMBERSHIP = 0x15 -- sysMCAST_JOIN_GROUP = 0x2a -- sysMCAST_LEAVE_GROUP = 0x2d -- sysMCAST_JOIN_SOURCE_GROUP = 0x2e -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2f -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_MSFILTER = 0x30 -- sysIPV6_ROUTER_ALERT = 0x16 -- sysIPV6_MTU_DISCOVER = 0x17 -- sysIPV6_MTU = 0x18 -- sysIPV6_RECVERR = 0x19 -- sysIPV6_V6ONLY = 0x1a -- sysIPV6_JOIN_ANYCAST = 0x1b -- sysIPV6_LEAVE_ANYCAST = 0x1c -- -- sysIPV6_FLOWLABEL_MGR = 0x20 -- sysIPV6_FLOWINFO_SEND = 0x21 -- -- sysIPV6_IPSEC_POLICY = 0x22 -- sysIPV6_XFRM_POLICY = 0x23 -- -- sysIPV6_RECVPKTINFO = 0x31 -- sysIPV6_PKTINFO = 0x32 -- sysIPV6_RECVHOPLIMIT = 0x33 -- sysIPV6_HOPLIMIT = 0x34 -- sysIPV6_RECVHOPOPTS = 0x35 -- sysIPV6_HOPOPTS = 0x36 -- sysIPV6_RTHDRDSTOPTS = 0x37 -- sysIPV6_RECVRTHDR = 0x38 -- sysIPV6_RTHDR = 0x39 -- sysIPV6_RECVDSTOPTS = 0x3a -- sysIPV6_DSTOPTS = 0x3b -- sysIPV6_RECVPATHMTU = 0x3c -- sysIPV6_PATHMTU = 0x3d -- sysIPV6_DONTFRAG = 0x3e -- -- sysIPV6_RECVTCLASS = 0x42 -- sysIPV6_TCLASS = 0x43 -- -- sysIPV6_ADDR_PREFERENCES = 0x48 -- -- sysIPV6_PREFER_SRC_TMP = 0x1 -- sysIPV6_PREFER_SRC_PUBLIC = 0x2 -- sysIPV6_PREFER_SRC_PUBTMP_DEFAULT = 0x100 -- sysIPV6_PREFER_SRC_COA = 0x4 -- sysIPV6_PREFER_SRC_HOME = 0x400 -- sysIPV6_PREFER_SRC_CGA = 0x8 -- sysIPV6_PREFER_SRC_NONCGA = 0x800 -- -- sysIPV6_MINHOPCOUNT = 0x49 -- -- sysIPV6_ORIGDSTADDR = 0x4a -- sysIPV6_RECVORIGDSTADDR = 0x4a -- sysIPV6_TRANSPARENT = 0x4b -- sysIPV6_UNICAST_IF = 0x4c -- -- sysICMPV6_FILTER = 0x1 -- -- sysICMPV6_FILTER_BLOCK = 0x1 -- sysICMPV6_FILTER_PASS = 0x2 -- sysICMPV6_FILTER_BLOCKOTHERS = 0x3 -- sysICMPV6_FILTER_PASSONLY = 0x4 -- - sizeofKernelSockaddrStorage = 0x80 - sizeofSockaddrInet6 = 0x1c - sizeofInet6Pktinfo = 0x14 -diff --git a/vendor/golang.org/x/net/ipv6/zsys_linux_arm.go b/vendor/golang.org/x/net/ipv6/zsys_linux_arm.go -index bde4a8f..ad71871 100644 ---- a/vendor/golang.org/x/net/ipv6/zsys_linux_arm.go -+++ b/vendor/golang.org/x/net/ipv6/zsys_linux_arm.go -@@ -4,86 +4,6 @@ - package ipv6 - - const ( -- sysIPV6_ADDRFORM = 0x1 -- sysIPV6_2292PKTINFO = 0x2 -- sysIPV6_2292HOPOPTS = 0x3 -- sysIPV6_2292DSTOPTS = 0x4 -- sysIPV6_2292RTHDR = 0x5 -- sysIPV6_2292PKTOPTIONS = 0x6 -- sysIPV6_CHECKSUM = 0x7 -- sysIPV6_2292HOPLIMIT = 0x8 -- sysIPV6_NEXTHOP = 0x9 -- sysIPV6_FLOWINFO = 0xb -- -- sysIPV6_UNICAST_HOPS = 0x10 -- sysIPV6_MULTICAST_IF = 0x11 -- sysIPV6_MULTICAST_HOPS = 0x12 -- sysIPV6_MULTICAST_LOOP = 0x13 -- sysIPV6_ADD_MEMBERSHIP = 0x14 -- sysIPV6_DROP_MEMBERSHIP = 0x15 -- sysMCAST_JOIN_GROUP = 0x2a -- sysMCAST_LEAVE_GROUP = 0x2d -- sysMCAST_JOIN_SOURCE_GROUP = 0x2e -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2f -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_MSFILTER = 0x30 -- sysIPV6_ROUTER_ALERT = 0x16 -- sysIPV6_MTU_DISCOVER = 0x17 -- sysIPV6_MTU = 0x18 -- sysIPV6_RECVERR = 0x19 -- sysIPV6_V6ONLY = 0x1a -- sysIPV6_JOIN_ANYCAST = 0x1b -- sysIPV6_LEAVE_ANYCAST = 0x1c -- -- sysIPV6_FLOWLABEL_MGR = 0x20 -- sysIPV6_FLOWINFO_SEND = 0x21 -- -- sysIPV6_IPSEC_POLICY = 0x22 -- sysIPV6_XFRM_POLICY = 0x23 -- -- sysIPV6_RECVPKTINFO = 0x31 -- sysIPV6_PKTINFO = 0x32 -- sysIPV6_RECVHOPLIMIT = 0x33 -- sysIPV6_HOPLIMIT = 0x34 -- sysIPV6_RECVHOPOPTS = 0x35 -- sysIPV6_HOPOPTS = 0x36 -- sysIPV6_RTHDRDSTOPTS = 0x37 -- sysIPV6_RECVRTHDR = 0x38 -- sysIPV6_RTHDR = 0x39 -- sysIPV6_RECVDSTOPTS = 0x3a -- sysIPV6_DSTOPTS = 0x3b -- sysIPV6_RECVPATHMTU = 0x3c -- sysIPV6_PATHMTU = 0x3d -- sysIPV6_DONTFRAG = 0x3e -- -- sysIPV6_RECVTCLASS = 0x42 -- sysIPV6_TCLASS = 0x43 -- -- sysIPV6_ADDR_PREFERENCES = 0x48 -- -- sysIPV6_PREFER_SRC_TMP = 0x1 -- sysIPV6_PREFER_SRC_PUBLIC = 0x2 -- sysIPV6_PREFER_SRC_PUBTMP_DEFAULT = 0x100 -- sysIPV6_PREFER_SRC_COA = 0x4 -- sysIPV6_PREFER_SRC_HOME = 0x400 -- sysIPV6_PREFER_SRC_CGA = 0x8 -- sysIPV6_PREFER_SRC_NONCGA = 0x800 -- -- sysIPV6_MINHOPCOUNT = 0x49 -- -- sysIPV6_ORIGDSTADDR = 0x4a -- sysIPV6_RECVORIGDSTADDR = 0x4a -- sysIPV6_TRANSPARENT = 0x4b -- sysIPV6_UNICAST_IF = 0x4c -- -- sysICMPV6_FILTER = 0x1 -- -- sysICMPV6_FILTER_BLOCK = 0x1 -- sysICMPV6_FILTER_PASS = 0x2 -- sysICMPV6_FILTER_BLOCKOTHERS = 0x3 -- sysICMPV6_FILTER_PASSONLY = 0x4 -- - sizeofKernelSockaddrStorage = 0x80 - sizeofSockaddrInet6 = 0x1c - sizeofInet6Pktinfo = 0x14 -diff --git a/vendor/golang.org/x/net/ipv6/zsys_linux_arm64.go b/vendor/golang.org/x/net/ipv6/zsys_linux_arm64.go -index 992ac9e..2514ab9 100644 ---- a/vendor/golang.org/x/net/ipv6/zsys_linux_arm64.go -+++ b/vendor/golang.org/x/net/ipv6/zsys_linux_arm64.go -@@ -4,86 +4,6 @@ - package ipv6 - - const ( -- sysIPV6_ADDRFORM = 0x1 -- sysIPV6_2292PKTINFO = 0x2 -- sysIPV6_2292HOPOPTS = 0x3 -- sysIPV6_2292DSTOPTS = 0x4 -- sysIPV6_2292RTHDR = 0x5 -- sysIPV6_2292PKTOPTIONS = 0x6 -- sysIPV6_CHECKSUM = 0x7 -- sysIPV6_2292HOPLIMIT = 0x8 -- sysIPV6_NEXTHOP = 0x9 -- sysIPV6_FLOWINFO = 0xb -- -- sysIPV6_UNICAST_HOPS = 0x10 -- sysIPV6_MULTICAST_IF = 0x11 -- sysIPV6_MULTICAST_HOPS = 0x12 -- sysIPV6_MULTICAST_LOOP = 0x13 -- sysIPV6_ADD_MEMBERSHIP = 0x14 -- sysIPV6_DROP_MEMBERSHIP = 0x15 -- sysMCAST_JOIN_GROUP = 0x2a -- sysMCAST_LEAVE_GROUP = 0x2d -- sysMCAST_JOIN_SOURCE_GROUP = 0x2e -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2f -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_MSFILTER = 0x30 -- sysIPV6_ROUTER_ALERT = 0x16 -- sysIPV6_MTU_DISCOVER = 0x17 -- sysIPV6_MTU = 0x18 -- sysIPV6_RECVERR = 0x19 -- sysIPV6_V6ONLY = 0x1a -- sysIPV6_JOIN_ANYCAST = 0x1b -- sysIPV6_LEAVE_ANYCAST = 0x1c -- -- sysIPV6_FLOWLABEL_MGR = 0x20 -- sysIPV6_FLOWINFO_SEND = 0x21 -- -- sysIPV6_IPSEC_POLICY = 0x22 -- sysIPV6_XFRM_POLICY = 0x23 -- -- sysIPV6_RECVPKTINFO = 0x31 -- sysIPV6_PKTINFO = 0x32 -- sysIPV6_RECVHOPLIMIT = 0x33 -- sysIPV6_HOPLIMIT = 0x34 -- sysIPV6_RECVHOPOPTS = 0x35 -- sysIPV6_HOPOPTS = 0x36 -- sysIPV6_RTHDRDSTOPTS = 0x37 -- sysIPV6_RECVRTHDR = 0x38 -- sysIPV6_RTHDR = 0x39 -- sysIPV6_RECVDSTOPTS = 0x3a -- sysIPV6_DSTOPTS = 0x3b -- sysIPV6_RECVPATHMTU = 0x3c -- sysIPV6_PATHMTU = 0x3d -- sysIPV6_DONTFRAG = 0x3e -- -- sysIPV6_RECVTCLASS = 0x42 -- sysIPV6_TCLASS = 0x43 -- -- sysIPV6_ADDR_PREFERENCES = 0x48 -- -- sysIPV6_PREFER_SRC_TMP = 0x1 -- sysIPV6_PREFER_SRC_PUBLIC = 0x2 -- sysIPV6_PREFER_SRC_PUBTMP_DEFAULT = 0x100 -- sysIPV6_PREFER_SRC_COA = 0x4 -- sysIPV6_PREFER_SRC_HOME = 0x400 -- sysIPV6_PREFER_SRC_CGA = 0x8 -- sysIPV6_PREFER_SRC_NONCGA = 0x800 -- -- sysIPV6_MINHOPCOUNT = 0x49 -- -- sysIPV6_ORIGDSTADDR = 0x4a -- sysIPV6_RECVORIGDSTADDR = 0x4a -- sysIPV6_TRANSPARENT = 0x4b -- sysIPV6_UNICAST_IF = 0x4c -- -- sysICMPV6_FILTER = 0x1 -- -- sysICMPV6_FILTER_BLOCK = 0x1 -- sysICMPV6_FILTER_PASS = 0x2 -- sysICMPV6_FILTER_BLOCKOTHERS = 0x3 -- sysICMPV6_FILTER_PASSONLY = 0x4 -- - sizeofKernelSockaddrStorage = 0x80 - sizeofSockaddrInet6 = 0x1c - sizeofInet6Pktinfo = 0x14 -diff --git a/vendor/golang.org/x/net/ipv6/zsys_linux_loong64.go b/vendor/golang.org/x/net/ipv6/zsys_linux_loong64.go -new file mode 100644 -index 0000000..598fbfa ---- /dev/null -+++ b/vendor/golang.org/x/net/ipv6/zsys_linux_loong64.go -@@ -0,0 +1,77 @@ -+// Code generated by cmd/cgo -godefs; DO NOT EDIT. -+// cgo -godefs defs_linux.go -+ -+//go:build loong64 -+// +build loong64 -+ -+package ipv6 -+ -+const ( -+ sizeofKernelSockaddrStorage = 0x80 -+ sizeofSockaddrInet6 = 0x1c -+ sizeofInet6Pktinfo = 0x14 -+ sizeofIPv6Mtuinfo = 0x20 -+ sizeofIPv6FlowlabelReq = 0x20 -+ -+ sizeofIPv6Mreq = 0x14 -+ sizeofGroupReq = 0x88 -+ sizeofGroupSourceReq = 0x108 -+ -+ sizeofICMPv6Filter = 0x20 -+) -+ -+type kernelSockaddrStorage struct { -+ Family uint16 -+ X__data [126]int8 -+} -+ -+type sockaddrInet6 struct { -+ Family uint16 -+ Port uint16 -+ Flowinfo uint32 -+ Addr [16]byte /* in6_addr */ -+ Scope_id uint32 -+} -+ -+type inet6Pktinfo struct { -+ Addr [16]byte /* in6_addr */ -+ Ifindex int32 -+} -+ -+type ipv6Mtuinfo struct { -+ Addr sockaddrInet6 -+ Mtu uint32 -+} -+ -+type ipv6FlowlabelReq struct { -+ Dst [16]byte /* in6_addr */ -+ Label uint32 -+ Action uint8 -+ Share uint8 -+ Flags uint16 -+ Expires uint16 -+ Linger uint16 -+ X__flr_pad uint32 -+} -+ -+type ipv6Mreq struct { -+ Multiaddr [16]byte /* in6_addr */ -+ Ifindex int32 -+} -+ -+type groupReq struct { -+ Interface uint32 -+ Pad_cgo_0 [4]byte -+ Group kernelSockaddrStorage -+} -+ -+type groupSourceReq struct { -+ Interface uint32 -+ Pad_cgo_0 [4]byte -+ Group kernelSockaddrStorage -+ Source kernelSockaddrStorage -+} -+ -+type icmpv6Filter struct { -+ Data [8]uint32 -+} -diff --git a/vendor/golang.org/x/net/ipv6/zsys_linux_mips.go b/vendor/golang.org/x/net/ipv6/zsys_linux_mips.go -index bde4a8f..ad71871 100644 ---- a/vendor/golang.org/x/net/ipv6/zsys_linux_mips.go -+++ b/vendor/golang.org/x/net/ipv6/zsys_linux_mips.go -@@ -4,86 +4,6 @@ - package ipv6 - - const ( -- sysIPV6_ADDRFORM = 0x1 -- sysIPV6_2292PKTINFO = 0x2 -- sysIPV6_2292HOPOPTS = 0x3 -- sysIPV6_2292DSTOPTS = 0x4 -- sysIPV6_2292RTHDR = 0x5 -- sysIPV6_2292PKTOPTIONS = 0x6 -- sysIPV6_CHECKSUM = 0x7 -- sysIPV6_2292HOPLIMIT = 0x8 -- sysIPV6_NEXTHOP = 0x9 -- sysIPV6_FLOWINFO = 0xb -- -- sysIPV6_UNICAST_HOPS = 0x10 -- sysIPV6_MULTICAST_IF = 0x11 -- sysIPV6_MULTICAST_HOPS = 0x12 -- sysIPV6_MULTICAST_LOOP = 0x13 -- sysIPV6_ADD_MEMBERSHIP = 0x14 -- sysIPV6_DROP_MEMBERSHIP = 0x15 -- sysMCAST_JOIN_GROUP = 0x2a -- sysMCAST_LEAVE_GROUP = 0x2d -- sysMCAST_JOIN_SOURCE_GROUP = 0x2e -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2f -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_MSFILTER = 0x30 -- sysIPV6_ROUTER_ALERT = 0x16 -- sysIPV6_MTU_DISCOVER = 0x17 -- sysIPV6_MTU = 0x18 -- sysIPV6_RECVERR = 0x19 -- sysIPV6_V6ONLY = 0x1a -- sysIPV6_JOIN_ANYCAST = 0x1b -- sysIPV6_LEAVE_ANYCAST = 0x1c -- -- sysIPV6_FLOWLABEL_MGR = 0x20 -- sysIPV6_FLOWINFO_SEND = 0x21 -- -- sysIPV6_IPSEC_POLICY = 0x22 -- sysIPV6_XFRM_POLICY = 0x23 -- -- sysIPV6_RECVPKTINFO = 0x31 -- sysIPV6_PKTINFO = 0x32 -- sysIPV6_RECVHOPLIMIT = 0x33 -- sysIPV6_HOPLIMIT = 0x34 -- sysIPV6_RECVHOPOPTS = 0x35 -- sysIPV6_HOPOPTS = 0x36 -- sysIPV6_RTHDRDSTOPTS = 0x37 -- sysIPV6_RECVRTHDR = 0x38 -- sysIPV6_RTHDR = 0x39 -- sysIPV6_RECVDSTOPTS = 0x3a -- sysIPV6_DSTOPTS = 0x3b -- sysIPV6_RECVPATHMTU = 0x3c -- sysIPV6_PATHMTU = 0x3d -- sysIPV6_DONTFRAG = 0x3e -- -- sysIPV6_RECVTCLASS = 0x42 -- sysIPV6_TCLASS = 0x43 -- -- sysIPV6_ADDR_PREFERENCES = 0x48 -- -- sysIPV6_PREFER_SRC_TMP = 0x1 -- sysIPV6_PREFER_SRC_PUBLIC = 0x2 -- sysIPV6_PREFER_SRC_PUBTMP_DEFAULT = 0x100 -- sysIPV6_PREFER_SRC_COA = 0x4 -- sysIPV6_PREFER_SRC_HOME = 0x400 -- sysIPV6_PREFER_SRC_CGA = 0x8 -- sysIPV6_PREFER_SRC_NONCGA = 0x800 -- -- sysIPV6_MINHOPCOUNT = 0x49 -- -- sysIPV6_ORIGDSTADDR = 0x4a -- sysIPV6_RECVORIGDSTADDR = 0x4a -- sysIPV6_TRANSPARENT = 0x4b -- sysIPV6_UNICAST_IF = 0x4c -- -- sysICMPV6_FILTER = 0x1 -- -- sysICMPV6_FILTER_BLOCK = 0x1 -- sysICMPV6_FILTER_PASS = 0x2 -- sysICMPV6_FILTER_BLOCKOTHERS = 0x3 -- sysICMPV6_FILTER_PASSONLY = 0x4 -- - sizeofKernelSockaddrStorage = 0x80 - sizeofSockaddrInet6 = 0x1c - sizeofInet6Pktinfo = 0x14 -diff --git a/vendor/golang.org/x/net/ipv6/zsys_linux_mips64.go b/vendor/golang.org/x/net/ipv6/zsys_linux_mips64.go -index 992ac9e..2514ab9 100644 ---- a/vendor/golang.org/x/net/ipv6/zsys_linux_mips64.go -+++ b/vendor/golang.org/x/net/ipv6/zsys_linux_mips64.go -@@ -4,86 +4,6 @@ - package ipv6 - - const ( -- sysIPV6_ADDRFORM = 0x1 -- sysIPV6_2292PKTINFO = 0x2 -- sysIPV6_2292HOPOPTS = 0x3 -- sysIPV6_2292DSTOPTS = 0x4 -- sysIPV6_2292RTHDR = 0x5 -- sysIPV6_2292PKTOPTIONS = 0x6 -- sysIPV6_CHECKSUM = 0x7 -- sysIPV6_2292HOPLIMIT = 0x8 -- sysIPV6_NEXTHOP = 0x9 -- sysIPV6_FLOWINFO = 0xb -- -- sysIPV6_UNICAST_HOPS = 0x10 -- sysIPV6_MULTICAST_IF = 0x11 -- sysIPV6_MULTICAST_HOPS = 0x12 -- sysIPV6_MULTICAST_LOOP = 0x13 -- sysIPV6_ADD_MEMBERSHIP = 0x14 -- sysIPV6_DROP_MEMBERSHIP = 0x15 -- sysMCAST_JOIN_GROUP = 0x2a -- sysMCAST_LEAVE_GROUP = 0x2d -- sysMCAST_JOIN_SOURCE_GROUP = 0x2e -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2f -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_MSFILTER = 0x30 -- sysIPV6_ROUTER_ALERT = 0x16 -- sysIPV6_MTU_DISCOVER = 0x17 -- sysIPV6_MTU = 0x18 -- sysIPV6_RECVERR = 0x19 -- sysIPV6_V6ONLY = 0x1a -- sysIPV6_JOIN_ANYCAST = 0x1b -- sysIPV6_LEAVE_ANYCAST = 0x1c -- -- sysIPV6_FLOWLABEL_MGR = 0x20 -- sysIPV6_FLOWINFO_SEND = 0x21 -- -- sysIPV6_IPSEC_POLICY = 0x22 -- sysIPV6_XFRM_POLICY = 0x23 -- -- sysIPV6_RECVPKTINFO = 0x31 -- sysIPV6_PKTINFO = 0x32 -- sysIPV6_RECVHOPLIMIT = 0x33 -- sysIPV6_HOPLIMIT = 0x34 -- sysIPV6_RECVHOPOPTS = 0x35 -- sysIPV6_HOPOPTS = 0x36 -- sysIPV6_RTHDRDSTOPTS = 0x37 -- sysIPV6_RECVRTHDR = 0x38 -- sysIPV6_RTHDR = 0x39 -- sysIPV6_RECVDSTOPTS = 0x3a -- sysIPV6_DSTOPTS = 0x3b -- sysIPV6_RECVPATHMTU = 0x3c -- sysIPV6_PATHMTU = 0x3d -- sysIPV6_DONTFRAG = 0x3e -- -- sysIPV6_RECVTCLASS = 0x42 -- sysIPV6_TCLASS = 0x43 -- -- sysIPV6_ADDR_PREFERENCES = 0x48 -- -- sysIPV6_PREFER_SRC_TMP = 0x1 -- sysIPV6_PREFER_SRC_PUBLIC = 0x2 -- sysIPV6_PREFER_SRC_PUBTMP_DEFAULT = 0x100 -- sysIPV6_PREFER_SRC_COA = 0x4 -- sysIPV6_PREFER_SRC_HOME = 0x400 -- sysIPV6_PREFER_SRC_CGA = 0x8 -- sysIPV6_PREFER_SRC_NONCGA = 0x800 -- -- sysIPV6_MINHOPCOUNT = 0x49 -- -- sysIPV6_ORIGDSTADDR = 0x4a -- sysIPV6_RECVORIGDSTADDR = 0x4a -- sysIPV6_TRANSPARENT = 0x4b -- sysIPV6_UNICAST_IF = 0x4c -- -- sysICMPV6_FILTER = 0x1 -- -- sysICMPV6_FILTER_BLOCK = 0x1 -- sysICMPV6_FILTER_PASS = 0x2 -- sysICMPV6_FILTER_BLOCKOTHERS = 0x3 -- sysICMPV6_FILTER_PASSONLY = 0x4 -- - sizeofKernelSockaddrStorage = 0x80 - sizeofSockaddrInet6 = 0x1c - sizeofInet6Pktinfo = 0x14 -diff --git a/vendor/golang.org/x/net/ipv6/zsys_linux_mips64le.go b/vendor/golang.org/x/net/ipv6/zsys_linux_mips64le.go -index 992ac9e..2514ab9 100644 ---- a/vendor/golang.org/x/net/ipv6/zsys_linux_mips64le.go -+++ b/vendor/golang.org/x/net/ipv6/zsys_linux_mips64le.go -@@ -4,86 +4,6 @@ - package ipv6 - - const ( -- sysIPV6_ADDRFORM = 0x1 -- sysIPV6_2292PKTINFO = 0x2 -- sysIPV6_2292HOPOPTS = 0x3 -- sysIPV6_2292DSTOPTS = 0x4 -- sysIPV6_2292RTHDR = 0x5 -- sysIPV6_2292PKTOPTIONS = 0x6 -- sysIPV6_CHECKSUM = 0x7 -- sysIPV6_2292HOPLIMIT = 0x8 -- sysIPV6_NEXTHOP = 0x9 -- sysIPV6_FLOWINFO = 0xb -- -- sysIPV6_UNICAST_HOPS = 0x10 -- sysIPV6_MULTICAST_IF = 0x11 -- sysIPV6_MULTICAST_HOPS = 0x12 -- sysIPV6_MULTICAST_LOOP = 0x13 -- sysIPV6_ADD_MEMBERSHIP = 0x14 -- sysIPV6_DROP_MEMBERSHIP = 0x15 -- sysMCAST_JOIN_GROUP = 0x2a -- sysMCAST_LEAVE_GROUP = 0x2d -- sysMCAST_JOIN_SOURCE_GROUP = 0x2e -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2f -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_MSFILTER = 0x30 -- sysIPV6_ROUTER_ALERT = 0x16 -- sysIPV6_MTU_DISCOVER = 0x17 -- sysIPV6_MTU = 0x18 -- sysIPV6_RECVERR = 0x19 -- sysIPV6_V6ONLY = 0x1a -- sysIPV6_JOIN_ANYCAST = 0x1b -- sysIPV6_LEAVE_ANYCAST = 0x1c -- -- sysIPV6_FLOWLABEL_MGR = 0x20 -- sysIPV6_FLOWINFO_SEND = 0x21 -- -- sysIPV6_IPSEC_POLICY = 0x22 -- sysIPV6_XFRM_POLICY = 0x23 -- -- sysIPV6_RECVPKTINFO = 0x31 -- sysIPV6_PKTINFO = 0x32 -- sysIPV6_RECVHOPLIMIT = 0x33 -- sysIPV6_HOPLIMIT = 0x34 -- sysIPV6_RECVHOPOPTS = 0x35 -- sysIPV6_HOPOPTS = 0x36 -- sysIPV6_RTHDRDSTOPTS = 0x37 -- sysIPV6_RECVRTHDR = 0x38 -- sysIPV6_RTHDR = 0x39 -- sysIPV6_RECVDSTOPTS = 0x3a -- sysIPV6_DSTOPTS = 0x3b -- sysIPV6_RECVPATHMTU = 0x3c -- sysIPV6_PATHMTU = 0x3d -- sysIPV6_DONTFRAG = 0x3e -- -- sysIPV6_RECVTCLASS = 0x42 -- sysIPV6_TCLASS = 0x43 -- -- sysIPV6_ADDR_PREFERENCES = 0x48 -- -- sysIPV6_PREFER_SRC_TMP = 0x1 -- sysIPV6_PREFER_SRC_PUBLIC = 0x2 -- sysIPV6_PREFER_SRC_PUBTMP_DEFAULT = 0x100 -- sysIPV6_PREFER_SRC_COA = 0x4 -- sysIPV6_PREFER_SRC_HOME = 0x400 -- sysIPV6_PREFER_SRC_CGA = 0x8 -- sysIPV6_PREFER_SRC_NONCGA = 0x800 -- -- sysIPV6_MINHOPCOUNT = 0x49 -- -- sysIPV6_ORIGDSTADDR = 0x4a -- sysIPV6_RECVORIGDSTADDR = 0x4a -- sysIPV6_TRANSPARENT = 0x4b -- sysIPV6_UNICAST_IF = 0x4c -- -- sysICMPV6_FILTER = 0x1 -- -- sysICMPV6_FILTER_BLOCK = 0x1 -- sysICMPV6_FILTER_PASS = 0x2 -- sysICMPV6_FILTER_BLOCKOTHERS = 0x3 -- sysICMPV6_FILTER_PASSONLY = 0x4 -- - sizeofKernelSockaddrStorage = 0x80 - sizeofSockaddrInet6 = 0x1c - sizeofInet6Pktinfo = 0x14 -diff --git a/vendor/golang.org/x/net/ipv6/zsys_linux_mipsle.go b/vendor/golang.org/x/net/ipv6/zsys_linux_mipsle.go -index bde4a8f..ad71871 100644 ---- a/vendor/golang.org/x/net/ipv6/zsys_linux_mipsle.go -+++ b/vendor/golang.org/x/net/ipv6/zsys_linux_mipsle.go -@@ -4,86 +4,6 @@ - package ipv6 - - const ( -- sysIPV6_ADDRFORM = 0x1 -- sysIPV6_2292PKTINFO = 0x2 -- sysIPV6_2292HOPOPTS = 0x3 -- sysIPV6_2292DSTOPTS = 0x4 -- sysIPV6_2292RTHDR = 0x5 -- sysIPV6_2292PKTOPTIONS = 0x6 -- sysIPV6_CHECKSUM = 0x7 -- sysIPV6_2292HOPLIMIT = 0x8 -- sysIPV6_NEXTHOP = 0x9 -- sysIPV6_FLOWINFO = 0xb -- -- sysIPV6_UNICAST_HOPS = 0x10 -- sysIPV6_MULTICAST_IF = 0x11 -- sysIPV6_MULTICAST_HOPS = 0x12 -- sysIPV6_MULTICAST_LOOP = 0x13 -- sysIPV6_ADD_MEMBERSHIP = 0x14 -- sysIPV6_DROP_MEMBERSHIP = 0x15 -- sysMCAST_JOIN_GROUP = 0x2a -- sysMCAST_LEAVE_GROUP = 0x2d -- sysMCAST_JOIN_SOURCE_GROUP = 0x2e -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2f -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_MSFILTER = 0x30 -- sysIPV6_ROUTER_ALERT = 0x16 -- sysIPV6_MTU_DISCOVER = 0x17 -- sysIPV6_MTU = 0x18 -- sysIPV6_RECVERR = 0x19 -- sysIPV6_V6ONLY = 0x1a -- sysIPV6_JOIN_ANYCAST = 0x1b -- sysIPV6_LEAVE_ANYCAST = 0x1c -- -- sysIPV6_FLOWLABEL_MGR = 0x20 -- sysIPV6_FLOWINFO_SEND = 0x21 -- -- sysIPV6_IPSEC_POLICY = 0x22 -- sysIPV6_XFRM_POLICY = 0x23 -- -- sysIPV6_RECVPKTINFO = 0x31 -- sysIPV6_PKTINFO = 0x32 -- sysIPV6_RECVHOPLIMIT = 0x33 -- sysIPV6_HOPLIMIT = 0x34 -- sysIPV6_RECVHOPOPTS = 0x35 -- sysIPV6_HOPOPTS = 0x36 -- sysIPV6_RTHDRDSTOPTS = 0x37 -- sysIPV6_RECVRTHDR = 0x38 -- sysIPV6_RTHDR = 0x39 -- sysIPV6_RECVDSTOPTS = 0x3a -- sysIPV6_DSTOPTS = 0x3b -- sysIPV6_RECVPATHMTU = 0x3c -- sysIPV6_PATHMTU = 0x3d -- sysIPV6_DONTFRAG = 0x3e -- -- sysIPV6_RECVTCLASS = 0x42 -- sysIPV6_TCLASS = 0x43 -- -- sysIPV6_ADDR_PREFERENCES = 0x48 -- -- sysIPV6_PREFER_SRC_TMP = 0x1 -- sysIPV6_PREFER_SRC_PUBLIC = 0x2 -- sysIPV6_PREFER_SRC_PUBTMP_DEFAULT = 0x100 -- sysIPV6_PREFER_SRC_COA = 0x4 -- sysIPV6_PREFER_SRC_HOME = 0x400 -- sysIPV6_PREFER_SRC_CGA = 0x8 -- sysIPV6_PREFER_SRC_NONCGA = 0x800 -- -- sysIPV6_MINHOPCOUNT = 0x49 -- -- sysIPV6_ORIGDSTADDR = 0x4a -- sysIPV6_RECVORIGDSTADDR = 0x4a -- sysIPV6_TRANSPARENT = 0x4b -- sysIPV6_UNICAST_IF = 0x4c -- -- sysICMPV6_FILTER = 0x1 -- -- sysICMPV6_FILTER_BLOCK = 0x1 -- sysICMPV6_FILTER_PASS = 0x2 -- sysICMPV6_FILTER_BLOCKOTHERS = 0x3 -- sysICMPV6_FILTER_PASSONLY = 0x4 -- - sizeofKernelSockaddrStorage = 0x80 - sizeofSockaddrInet6 = 0x1c - sizeofInet6Pktinfo = 0x14 -diff --git a/vendor/golang.org/x/net/ipv6/zsys_linux_ppc.go b/vendor/golang.org/x/net/ipv6/zsys_linux_ppc.go -index 66fd236..d06c2ad 100644 ---- a/vendor/golang.org/x/net/ipv6/zsys_linux_ppc.go -+++ b/vendor/golang.org/x/net/ipv6/zsys_linux_ppc.go -@@ -4,86 +4,6 @@ - package ipv6 - - const ( -- sysIPV6_ADDRFORM = 0x1 -- sysIPV6_2292PKTINFO = 0x2 -- sysIPV6_2292HOPOPTS = 0x3 -- sysIPV6_2292DSTOPTS = 0x4 -- sysIPV6_2292RTHDR = 0x5 -- sysIPV6_2292PKTOPTIONS = 0x6 -- sysIPV6_CHECKSUM = 0x7 -- sysIPV6_2292HOPLIMIT = 0x8 -- sysIPV6_NEXTHOP = 0x9 -- sysIPV6_FLOWINFO = 0xb -- -- sysIPV6_UNICAST_HOPS = 0x10 -- sysIPV6_MULTICAST_IF = 0x11 -- sysIPV6_MULTICAST_HOPS = 0x12 -- sysIPV6_MULTICAST_LOOP = 0x13 -- sysIPV6_ADD_MEMBERSHIP = 0x14 -- sysIPV6_DROP_MEMBERSHIP = 0x15 -- sysMCAST_JOIN_GROUP = 0x2a -- sysMCAST_LEAVE_GROUP = 0x2d -- sysMCAST_JOIN_SOURCE_GROUP = 0x2e -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2f -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_MSFILTER = 0x30 -- sysIPV6_ROUTER_ALERT = 0x16 -- sysIPV6_MTU_DISCOVER = 0x17 -- sysIPV6_MTU = 0x18 -- sysIPV6_RECVERR = 0x19 -- sysIPV6_V6ONLY = 0x1a -- sysIPV6_JOIN_ANYCAST = 0x1b -- sysIPV6_LEAVE_ANYCAST = 0x1c -- -- sysIPV6_FLOWLABEL_MGR = 0x20 -- sysIPV6_FLOWINFO_SEND = 0x21 -- -- sysIPV6_IPSEC_POLICY = 0x22 -- sysIPV6_XFRM_POLICY = 0x23 -- -- sysIPV6_RECVPKTINFO = 0x31 -- sysIPV6_PKTINFO = 0x32 -- sysIPV6_RECVHOPLIMIT = 0x33 -- sysIPV6_HOPLIMIT = 0x34 -- sysIPV6_RECVHOPOPTS = 0x35 -- sysIPV6_HOPOPTS = 0x36 -- sysIPV6_RTHDRDSTOPTS = 0x37 -- sysIPV6_RECVRTHDR = 0x38 -- sysIPV6_RTHDR = 0x39 -- sysIPV6_RECVDSTOPTS = 0x3a -- sysIPV6_DSTOPTS = 0x3b -- sysIPV6_RECVPATHMTU = 0x3c -- sysIPV6_PATHMTU = 0x3d -- sysIPV6_DONTFRAG = 0x3e -- -- sysIPV6_RECVTCLASS = 0x42 -- sysIPV6_TCLASS = 0x43 -- -- sysIPV6_ADDR_PREFERENCES = 0x48 -- -- sysIPV6_PREFER_SRC_TMP = 0x1 -- sysIPV6_PREFER_SRC_PUBLIC = 0x2 -- sysIPV6_PREFER_SRC_PUBTMP_DEFAULT = 0x100 -- sysIPV6_PREFER_SRC_COA = 0x4 -- sysIPV6_PREFER_SRC_HOME = 0x400 -- sysIPV6_PREFER_SRC_CGA = 0x8 -- sysIPV6_PREFER_SRC_NONCGA = 0x800 -- -- sysIPV6_MINHOPCOUNT = 0x49 -- -- sysIPV6_ORIGDSTADDR = 0x4a -- sysIPV6_RECVORIGDSTADDR = 0x4a -- sysIPV6_TRANSPARENT = 0x4b -- sysIPV6_UNICAST_IF = 0x4c -- -- sysICMPV6_FILTER = 0x1 -- -- sysICMPV6_FILTER_BLOCK = 0x1 -- sysICMPV6_FILTER_PASS = 0x2 -- sysICMPV6_FILTER_BLOCKOTHERS = 0x3 -- sysICMPV6_FILTER_PASSONLY = 0x4 -- - sizeofKernelSockaddrStorage = 0x80 - sizeofSockaddrInet6 = 0x1c - sizeofInet6Pktinfo = 0x14 -diff --git a/vendor/golang.org/x/net/ipv6/zsys_linux_ppc64.go b/vendor/golang.org/x/net/ipv6/zsys_linux_ppc64.go -index 992ac9e..2514ab9 100644 ---- a/vendor/golang.org/x/net/ipv6/zsys_linux_ppc64.go -+++ b/vendor/golang.org/x/net/ipv6/zsys_linux_ppc64.go -@@ -4,86 +4,6 @@ - package ipv6 - - const ( -- sysIPV6_ADDRFORM = 0x1 -- sysIPV6_2292PKTINFO = 0x2 -- sysIPV6_2292HOPOPTS = 0x3 -- sysIPV6_2292DSTOPTS = 0x4 -- sysIPV6_2292RTHDR = 0x5 -- sysIPV6_2292PKTOPTIONS = 0x6 -- sysIPV6_CHECKSUM = 0x7 -- sysIPV6_2292HOPLIMIT = 0x8 -- sysIPV6_NEXTHOP = 0x9 -- sysIPV6_FLOWINFO = 0xb -- -- sysIPV6_UNICAST_HOPS = 0x10 -- sysIPV6_MULTICAST_IF = 0x11 -- sysIPV6_MULTICAST_HOPS = 0x12 -- sysIPV6_MULTICAST_LOOP = 0x13 -- sysIPV6_ADD_MEMBERSHIP = 0x14 -- sysIPV6_DROP_MEMBERSHIP = 0x15 -- sysMCAST_JOIN_GROUP = 0x2a -- sysMCAST_LEAVE_GROUP = 0x2d -- sysMCAST_JOIN_SOURCE_GROUP = 0x2e -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2f -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_MSFILTER = 0x30 -- sysIPV6_ROUTER_ALERT = 0x16 -- sysIPV6_MTU_DISCOVER = 0x17 -- sysIPV6_MTU = 0x18 -- sysIPV6_RECVERR = 0x19 -- sysIPV6_V6ONLY = 0x1a -- sysIPV6_JOIN_ANYCAST = 0x1b -- sysIPV6_LEAVE_ANYCAST = 0x1c -- -- sysIPV6_FLOWLABEL_MGR = 0x20 -- sysIPV6_FLOWINFO_SEND = 0x21 -- -- sysIPV6_IPSEC_POLICY = 0x22 -- sysIPV6_XFRM_POLICY = 0x23 -- -- sysIPV6_RECVPKTINFO = 0x31 -- sysIPV6_PKTINFO = 0x32 -- sysIPV6_RECVHOPLIMIT = 0x33 -- sysIPV6_HOPLIMIT = 0x34 -- sysIPV6_RECVHOPOPTS = 0x35 -- sysIPV6_HOPOPTS = 0x36 -- sysIPV6_RTHDRDSTOPTS = 0x37 -- sysIPV6_RECVRTHDR = 0x38 -- sysIPV6_RTHDR = 0x39 -- sysIPV6_RECVDSTOPTS = 0x3a -- sysIPV6_DSTOPTS = 0x3b -- sysIPV6_RECVPATHMTU = 0x3c -- sysIPV6_PATHMTU = 0x3d -- sysIPV6_DONTFRAG = 0x3e -- -- sysIPV6_RECVTCLASS = 0x42 -- sysIPV6_TCLASS = 0x43 -- -- sysIPV6_ADDR_PREFERENCES = 0x48 -- -- sysIPV6_PREFER_SRC_TMP = 0x1 -- sysIPV6_PREFER_SRC_PUBLIC = 0x2 -- sysIPV6_PREFER_SRC_PUBTMP_DEFAULT = 0x100 -- sysIPV6_PREFER_SRC_COA = 0x4 -- sysIPV6_PREFER_SRC_HOME = 0x400 -- sysIPV6_PREFER_SRC_CGA = 0x8 -- sysIPV6_PREFER_SRC_NONCGA = 0x800 -- -- sysIPV6_MINHOPCOUNT = 0x49 -- -- sysIPV6_ORIGDSTADDR = 0x4a -- sysIPV6_RECVORIGDSTADDR = 0x4a -- sysIPV6_TRANSPARENT = 0x4b -- sysIPV6_UNICAST_IF = 0x4c -- -- sysICMPV6_FILTER = 0x1 -- -- sysICMPV6_FILTER_BLOCK = 0x1 -- sysICMPV6_FILTER_PASS = 0x2 -- sysICMPV6_FILTER_BLOCKOTHERS = 0x3 -- sysICMPV6_FILTER_PASSONLY = 0x4 -- - sizeofKernelSockaddrStorage = 0x80 - sizeofSockaddrInet6 = 0x1c - sizeofInet6Pktinfo = 0x14 -diff --git a/vendor/golang.org/x/net/ipv6/zsys_linux_ppc64le.go b/vendor/golang.org/x/net/ipv6/zsys_linux_ppc64le.go -index 992ac9e..2514ab9 100644 ---- a/vendor/golang.org/x/net/ipv6/zsys_linux_ppc64le.go -+++ b/vendor/golang.org/x/net/ipv6/zsys_linux_ppc64le.go -@@ -4,86 +4,6 @@ - package ipv6 - - const ( -- sysIPV6_ADDRFORM = 0x1 -- sysIPV6_2292PKTINFO = 0x2 -- sysIPV6_2292HOPOPTS = 0x3 -- sysIPV6_2292DSTOPTS = 0x4 -- sysIPV6_2292RTHDR = 0x5 -- sysIPV6_2292PKTOPTIONS = 0x6 -- sysIPV6_CHECKSUM = 0x7 -- sysIPV6_2292HOPLIMIT = 0x8 -- sysIPV6_NEXTHOP = 0x9 -- sysIPV6_FLOWINFO = 0xb -- -- sysIPV6_UNICAST_HOPS = 0x10 -- sysIPV6_MULTICAST_IF = 0x11 -- sysIPV6_MULTICAST_HOPS = 0x12 -- sysIPV6_MULTICAST_LOOP = 0x13 -- sysIPV6_ADD_MEMBERSHIP = 0x14 -- sysIPV6_DROP_MEMBERSHIP = 0x15 -- sysMCAST_JOIN_GROUP = 0x2a -- sysMCAST_LEAVE_GROUP = 0x2d -- sysMCAST_JOIN_SOURCE_GROUP = 0x2e -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2f -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_MSFILTER = 0x30 -- sysIPV6_ROUTER_ALERT = 0x16 -- sysIPV6_MTU_DISCOVER = 0x17 -- sysIPV6_MTU = 0x18 -- sysIPV6_RECVERR = 0x19 -- sysIPV6_V6ONLY = 0x1a -- sysIPV6_JOIN_ANYCAST = 0x1b -- sysIPV6_LEAVE_ANYCAST = 0x1c -- -- sysIPV6_FLOWLABEL_MGR = 0x20 -- sysIPV6_FLOWINFO_SEND = 0x21 -- -- sysIPV6_IPSEC_POLICY = 0x22 -- sysIPV6_XFRM_POLICY = 0x23 -- -- sysIPV6_RECVPKTINFO = 0x31 -- sysIPV6_PKTINFO = 0x32 -- sysIPV6_RECVHOPLIMIT = 0x33 -- sysIPV6_HOPLIMIT = 0x34 -- sysIPV6_RECVHOPOPTS = 0x35 -- sysIPV6_HOPOPTS = 0x36 -- sysIPV6_RTHDRDSTOPTS = 0x37 -- sysIPV6_RECVRTHDR = 0x38 -- sysIPV6_RTHDR = 0x39 -- sysIPV6_RECVDSTOPTS = 0x3a -- sysIPV6_DSTOPTS = 0x3b -- sysIPV6_RECVPATHMTU = 0x3c -- sysIPV6_PATHMTU = 0x3d -- sysIPV6_DONTFRAG = 0x3e -- -- sysIPV6_RECVTCLASS = 0x42 -- sysIPV6_TCLASS = 0x43 -- -- sysIPV6_ADDR_PREFERENCES = 0x48 -- -- sysIPV6_PREFER_SRC_TMP = 0x1 -- sysIPV6_PREFER_SRC_PUBLIC = 0x2 -- sysIPV6_PREFER_SRC_PUBTMP_DEFAULT = 0x100 -- sysIPV6_PREFER_SRC_COA = 0x4 -- sysIPV6_PREFER_SRC_HOME = 0x400 -- sysIPV6_PREFER_SRC_CGA = 0x8 -- sysIPV6_PREFER_SRC_NONCGA = 0x800 -- -- sysIPV6_MINHOPCOUNT = 0x49 -- -- sysIPV6_ORIGDSTADDR = 0x4a -- sysIPV6_RECVORIGDSTADDR = 0x4a -- sysIPV6_TRANSPARENT = 0x4b -- sysIPV6_UNICAST_IF = 0x4c -- -- sysICMPV6_FILTER = 0x1 -- -- sysICMPV6_FILTER_BLOCK = 0x1 -- sysICMPV6_FILTER_PASS = 0x2 -- sysICMPV6_FILTER_BLOCKOTHERS = 0x3 -- sysICMPV6_FILTER_PASSONLY = 0x4 -- - sizeofKernelSockaddrStorage = 0x80 - sizeofSockaddrInet6 = 0x1c - sizeofInet6Pktinfo = 0x14 -diff --git a/vendor/golang.org/x/net/ipv6/zsys_linux_riscv64.go b/vendor/golang.org/x/net/ipv6/zsys_linux_riscv64.go -index 6083ddc..d4f78e4 100644 ---- a/vendor/golang.org/x/net/ipv6/zsys_linux_riscv64.go -+++ b/vendor/golang.org/x/net/ipv6/zsys_linux_riscv64.go -@@ -1,91 +1,12 @@ - // Code generated by cmd/cgo -godefs; DO NOT EDIT. - // cgo -godefs defs_linux.go - -+//go:build riscv64 - // +build riscv64 - - package ipv6 - - const ( -- sysIPV6_ADDRFORM = 0x1 -- sysIPV6_2292PKTINFO = 0x2 -- sysIPV6_2292HOPOPTS = 0x3 -- sysIPV6_2292DSTOPTS = 0x4 -- sysIPV6_2292RTHDR = 0x5 -- sysIPV6_2292PKTOPTIONS = 0x6 -- sysIPV6_CHECKSUM = 0x7 -- sysIPV6_2292HOPLIMIT = 0x8 -- sysIPV6_NEXTHOP = 0x9 -- sysIPV6_FLOWINFO = 0xb -- -- sysIPV6_UNICAST_HOPS = 0x10 -- sysIPV6_MULTICAST_IF = 0x11 -- sysIPV6_MULTICAST_HOPS = 0x12 -- sysIPV6_MULTICAST_LOOP = 0x13 -- sysIPV6_ADD_MEMBERSHIP = 0x14 -- sysIPV6_DROP_MEMBERSHIP = 0x15 -- sysMCAST_JOIN_GROUP = 0x2a -- sysMCAST_LEAVE_GROUP = 0x2d -- sysMCAST_JOIN_SOURCE_GROUP = 0x2e -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2f -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_MSFILTER = 0x30 -- sysIPV6_ROUTER_ALERT = 0x16 -- sysIPV6_MTU_DISCOVER = 0x17 -- sysIPV6_MTU = 0x18 -- sysIPV6_RECVERR = 0x19 -- sysIPV6_V6ONLY = 0x1a -- sysIPV6_JOIN_ANYCAST = 0x1b -- sysIPV6_LEAVE_ANYCAST = 0x1c -- -- sysIPV6_FLOWLABEL_MGR = 0x20 -- sysIPV6_FLOWINFO_SEND = 0x21 -- -- sysIPV6_IPSEC_POLICY = 0x22 -- sysIPV6_XFRM_POLICY = 0x23 -- -- sysIPV6_RECVPKTINFO = 0x31 -- sysIPV6_PKTINFO = 0x32 -- sysIPV6_RECVHOPLIMIT = 0x33 -- sysIPV6_HOPLIMIT = 0x34 -- sysIPV6_RECVHOPOPTS = 0x35 -- sysIPV6_HOPOPTS = 0x36 -- sysIPV6_RTHDRDSTOPTS = 0x37 -- sysIPV6_RECVRTHDR = 0x38 -- sysIPV6_RTHDR = 0x39 -- sysIPV6_RECVDSTOPTS = 0x3a -- sysIPV6_DSTOPTS = 0x3b -- sysIPV6_RECVPATHMTU = 0x3c -- sysIPV6_PATHMTU = 0x3d -- sysIPV6_DONTFRAG = 0x3e -- -- sysIPV6_RECVTCLASS = 0x42 -- sysIPV6_TCLASS = 0x43 -- -- sysIPV6_ADDR_PREFERENCES = 0x48 -- -- sysIPV6_PREFER_SRC_TMP = 0x1 -- sysIPV6_PREFER_SRC_PUBLIC = 0x2 -- sysIPV6_PREFER_SRC_PUBTMP_DEFAULT = 0x100 -- sysIPV6_PREFER_SRC_COA = 0x4 -- sysIPV6_PREFER_SRC_HOME = 0x400 -- sysIPV6_PREFER_SRC_CGA = 0x8 -- sysIPV6_PREFER_SRC_NONCGA = 0x800 -- -- sysIPV6_MINHOPCOUNT = 0x49 -- -- sysIPV6_ORIGDSTADDR = 0x4a -- sysIPV6_RECVORIGDSTADDR = 0x4a -- sysIPV6_TRANSPARENT = 0x4b -- sysIPV6_UNICAST_IF = 0x4c -- -- sysICMPV6_FILTER = 0x1 -- -- sysICMPV6_FILTER_BLOCK = 0x1 -- sysICMPV6_FILTER_PASS = 0x2 -- sysICMPV6_FILTER_BLOCKOTHERS = 0x3 -- sysICMPV6_FILTER_PASSONLY = 0x4 -- - sizeofKernelSockaddrStorage = 0x80 - sizeofSockaddrInet6 = 0x1c - sizeofInet6Pktinfo = 0x14 -diff --git a/vendor/golang.org/x/net/ipv6/zsys_linux_s390x.go b/vendor/golang.org/x/net/ipv6/zsys_linux_s390x.go -index 992ac9e..2514ab9 100644 ---- a/vendor/golang.org/x/net/ipv6/zsys_linux_s390x.go -+++ b/vendor/golang.org/x/net/ipv6/zsys_linux_s390x.go -@@ -4,86 +4,6 @@ - package ipv6 - - const ( -- sysIPV6_ADDRFORM = 0x1 -- sysIPV6_2292PKTINFO = 0x2 -- sysIPV6_2292HOPOPTS = 0x3 -- sysIPV6_2292DSTOPTS = 0x4 -- sysIPV6_2292RTHDR = 0x5 -- sysIPV6_2292PKTOPTIONS = 0x6 -- sysIPV6_CHECKSUM = 0x7 -- sysIPV6_2292HOPLIMIT = 0x8 -- sysIPV6_NEXTHOP = 0x9 -- sysIPV6_FLOWINFO = 0xb -- -- sysIPV6_UNICAST_HOPS = 0x10 -- sysIPV6_MULTICAST_IF = 0x11 -- sysIPV6_MULTICAST_HOPS = 0x12 -- sysIPV6_MULTICAST_LOOP = 0x13 -- sysIPV6_ADD_MEMBERSHIP = 0x14 -- sysIPV6_DROP_MEMBERSHIP = 0x15 -- sysMCAST_JOIN_GROUP = 0x2a -- sysMCAST_LEAVE_GROUP = 0x2d -- sysMCAST_JOIN_SOURCE_GROUP = 0x2e -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2f -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_MSFILTER = 0x30 -- sysIPV6_ROUTER_ALERT = 0x16 -- sysIPV6_MTU_DISCOVER = 0x17 -- sysIPV6_MTU = 0x18 -- sysIPV6_RECVERR = 0x19 -- sysIPV6_V6ONLY = 0x1a -- sysIPV6_JOIN_ANYCAST = 0x1b -- sysIPV6_LEAVE_ANYCAST = 0x1c -- -- sysIPV6_FLOWLABEL_MGR = 0x20 -- sysIPV6_FLOWINFO_SEND = 0x21 -- -- sysIPV6_IPSEC_POLICY = 0x22 -- sysIPV6_XFRM_POLICY = 0x23 -- -- sysIPV6_RECVPKTINFO = 0x31 -- sysIPV6_PKTINFO = 0x32 -- sysIPV6_RECVHOPLIMIT = 0x33 -- sysIPV6_HOPLIMIT = 0x34 -- sysIPV6_RECVHOPOPTS = 0x35 -- sysIPV6_HOPOPTS = 0x36 -- sysIPV6_RTHDRDSTOPTS = 0x37 -- sysIPV6_RECVRTHDR = 0x38 -- sysIPV6_RTHDR = 0x39 -- sysIPV6_RECVDSTOPTS = 0x3a -- sysIPV6_DSTOPTS = 0x3b -- sysIPV6_RECVPATHMTU = 0x3c -- sysIPV6_PATHMTU = 0x3d -- sysIPV6_DONTFRAG = 0x3e -- -- sysIPV6_RECVTCLASS = 0x42 -- sysIPV6_TCLASS = 0x43 -- -- sysIPV6_ADDR_PREFERENCES = 0x48 -- -- sysIPV6_PREFER_SRC_TMP = 0x1 -- sysIPV6_PREFER_SRC_PUBLIC = 0x2 -- sysIPV6_PREFER_SRC_PUBTMP_DEFAULT = 0x100 -- sysIPV6_PREFER_SRC_COA = 0x4 -- sysIPV6_PREFER_SRC_HOME = 0x400 -- sysIPV6_PREFER_SRC_CGA = 0x8 -- sysIPV6_PREFER_SRC_NONCGA = 0x800 -- -- sysIPV6_MINHOPCOUNT = 0x49 -- -- sysIPV6_ORIGDSTADDR = 0x4a -- sysIPV6_RECVORIGDSTADDR = 0x4a -- sysIPV6_TRANSPARENT = 0x4b -- sysIPV6_UNICAST_IF = 0x4c -- -- sysICMPV6_FILTER = 0x1 -- -- sysICMPV6_FILTER_BLOCK = 0x1 -- sysICMPV6_FILTER_PASS = 0x2 -- sysICMPV6_FILTER_BLOCKOTHERS = 0x3 -- sysICMPV6_FILTER_PASSONLY = 0x4 -- - sizeofKernelSockaddrStorage = 0x80 - sizeofSockaddrInet6 = 0x1c - sizeofInet6Pktinfo = 0x14 -diff --git a/vendor/golang.org/x/net/ipv6/zsys_netbsd.go b/vendor/golang.org/x/net/ipv6/zsys_netbsd.go -index e39571e..f7335d5 100644 ---- a/vendor/golang.org/x/net/ipv6/zsys_netbsd.go -+++ b/vendor/golang.org/x/net/ipv6/zsys_netbsd.go -@@ -4,48 +4,6 @@ - package ipv6 - - const ( -- sysIPV6_UNICAST_HOPS = 0x4 -- sysIPV6_MULTICAST_IF = 0x9 -- sysIPV6_MULTICAST_HOPS = 0xa -- sysIPV6_MULTICAST_LOOP = 0xb -- sysIPV6_JOIN_GROUP = 0xc -- sysIPV6_LEAVE_GROUP = 0xd -- sysIPV6_PORTRANGE = 0xe -- sysICMP6_FILTER = 0x12 -- -- sysIPV6_CHECKSUM = 0x1a -- sysIPV6_V6ONLY = 0x1b -- -- sysIPV6_IPSEC_POLICY = 0x1c -- -- sysIPV6_RTHDRDSTOPTS = 0x23 -- -- sysIPV6_RECVPKTINFO = 0x24 -- sysIPV6_RECVHOPLIMIT = 0x25 -- sysIPV6_RECVRTHDR = 0x26 -- sysIPV6_RECVHOPOPTS = 0x27 -- sysIPV6_RECVDSTOPTS = 0x28 -- -- sysIPV6_USE_MIN_MTU = 0x2a -- sysIPV6_RECVPATHMTU = 0x2b -- sysIPV6_PATHMTU = 0x2c -- -- sysIPV6_PKTINFO = 0x2e -- sysIPV6_HOPLIMIT = 0x2f -- sysIPV6_NEXTHOP = 0x30 -- sysIPV6_HOPOPTS = 0x31 -- sysIPV6_DSTOPTS = 0x32 -- sysIPV6_RTHDR = 0x33 -- -- sysIPV6_RECVTCLASS = 0x39 -- -- sysIPV6_TCLASS = 0x3d -- sysIPV6_DONTFRAG = 0x3e -- -- sysIPV6_PORTRANGE_DEFAULT = 0x0 -- sysIPV6_PORTRANGE_HIGH = 0x1 -- sysIPV6_PORTRANGE_LOW = 0x2 -- - sizeofSockaddrInet6 = 0x1c - sizeofInet6Pktinfo = 0x14 - sizeofIPv6Mtuinfo = 0x20 -diff --git a/vendor/golang.org/x/net/ipv6/zsys_openbsd.go b/vendor/golang.org/x/net/ipv6/zsys_openbsd.go -index cc1899a..6d15928 100644 ---- a/vendor/golang.org/x/net/ipv6/zsys_openbsd.go -+++ b/vendor/golang.org/x/net/ipv6/zsys_openbsd.go -@@ -4,57 +4,6 @@ - package ipv6 - - const ( -- sysIPV6_UNICAST_HOPS = 0x4 -- sysIPV6_MULTICAST_IF = 0x9 -- sysIPV6_MULTICAST_HOPS = 0xa -- sysIPV6_MULTICAST_LOOP = 0xb -- sysIPV6_JOIN_GROUP = 0xc -- sysIPV6_LEAVE_GROUP = 0xd -- sysIPV6_PORTRANGE = 0xe -- sysICMP6_FILTER = 0x12 -- -- sysIPV6_CHECKSUM = 0x1a -- sysIPV6_V6ONLY = 0x1b -- -- sysIPV6_RTHDRDSTOPTS = 0x23 -- -- sysIPV6_RECVPKTINFO = 0x24 -- sysIPV6_RECVHOPLIMIT = 0x25 -- sysIPV6_RECVRTHDR = 0x26 -- sysIPV6_RECVHOPOPTS = 0x27 -- sysIPV6_RECVDSTOPTS = 0x28 -- -- sysIPV6_USE_MIN_MTU = 0x2a -- sysIPV6_RECVPATHMTU = 0x2b -- -- sysIPV6_PATHMTU = 0x2c -- -- sysIPV6_PKTINFO = 0x2e -- sysIPV6_HOPLIMIT = 0x2f -- sysIPV6_NEXTHOP = 0x30 -- sysIPV6_HOPOPTS = 0x31 -- sysIPV6_DSTOPTS = 0x32 -- sysIPV6_RTHDR = 0x33 -- -- sysIPV6_AUTH_LEVEL = 0x35 -- sysIPV6_ESP_TRANS_LEVEL = 0x36 -- sysIPV6_ESP_NETWORK_LEVEL = 0x37 -- sysIPSEC6_OUTSA = 0x38 -- sysIPV6_RECVTCLASS = 0x39 -- -- sysIPV6_AUTOFLOWLABEL = 0x3b -- sysIPV6_IPCOMP_LEVEL = 0x3c -- -- sysIPV6_TCLASS = 0x3d -- sysIPV6_DONTFRAG = 0x3e -- sysIPV6_PIPEX = 0x3f -- -- sysIPV6_RTABLE = 0x1021 -- -- sysIPV6_PORTRANGE_DEFAULT = 0x0 -- sysIPV6_PORTRANGE_HIGH = 0x1 -- sysIPV6_PORTRANGE_LOW = 0x2 -- - sizeofSockaddrInet6 = 0x1c - sizeofInet6Pktinfo = 0x14 - sizeofIPv6Mtuinfo = 0x20 -diff --git a/vendor/golang.org/x/net/ipv6/zsys_solaris.go b/vendor/golang.org/x/net/ipv6/zsys_solaris.go -index 690eef9..1716197 100644 ---- a/vendor/golang.org/x/net/ipv6/zsys_solaris.go -+++ b/vendor/golang.org/x/net/ipv6/zsys_solaris.go -@@ -4,74 +4,6 @@ - package ipv6 - - const ( -- sysIPV6_UNICAST_HOPS = 0x5 -- sysIPV6_MULTICAST_IF = 0x6 -- sysIPV6_MULTICAST_HOPS = 0x7 -- sysIPV6_MULTICAST_LOOP = 0x8 -- sysIPV6_JOIN_GROUP = 0x9 -- sysIPV6_LEAVE_GROUP = 0xa -- -- sysIPV6_PKTINFO = 0xb -- -- sysIPV6_HOPLIMIT = 0xc -- sysIPV6_NEXTHOP = 0xd -- sysIPV6_HOPOPTS = 0xe -- sysIPV6_DSTOPTS = 0xf -- -- sysIPV6_RTHDR = 0x10 -- sysIPV6_RTHDRDSTOPTS = 0x11 -- -- sysIPV6_RECVPKTINFO = 0x12 -- sysIPV6_RECVHOPLIMIT = 0x13 -- sysIPV6_RECVHOPOPTS = 0x14 -- -- sysIPV6_RECVRTHDR = 0x16 -- -- sysIPV6_RECVRTHDRDSTOPTS = 0x17 -- -- sysIPV6_CHECKSUM = 0x18 -- sysIPV6_RECVTCLASS = 0x19 -- sysIPV6_USE_MIN_MTU = 0x20 -- sysIPV6_DONTFRAG = 0x21 -- sysIPV6_SEC_OPT = 0x22 -- sysIPV6_SRC_PREFERENCES = 0x23 -- sysIPV6_RECVPATHMTU = 0x24 -- sysIPV6_PATHMTU = 0x25 -- sysIPV6_TCLASS = 0x26 -- sysIPV6_V6ONLY = 0x27 -- -- sysIPV6_RECVDSTOPTS = 0x28 -- -- sysMCAST_JOIN_GROUP = 0x29 -- sysMCAST_LEAVE_GROUP = 0x2a -- sysMCAST_BLOCK_SOURCE = 0x2b -- sysMCAST_UNBLOCK_SOURCE = 0x2c -- sysMCAST_JOIN_SOURCE_GROUP = 0x2d -- sysMCAST_LEAVE_SOURCE_GROUP = 0x2e -- -- sysIPV6_PREFER_SRC_HOME = 0x1 -- sysIPV6_PREFER_SRC_COA = 0x2 -- sysIPV6_PREFER_SRC_PUBLIC = 0x4 -- sysIPV6_PREFER_SRC_TMP = 0x8 -- sysIPV6_PREFER_SRC_NONCGA = 0x10 -- sysIPV6_PREFER_SRC_CGA = 0x20 -- -- sysIPV6_PREFER_SRC_MIPMASK = 0x3 -- sysIPV6_PREFER_SRC_MIPDEFAULT = 0x1 -- sysIPV6_PREFER_SRC_TMPMASK = 0xc -- sysIPV6_PREFER_SRC_TMPDEFAULT = 0x4 -- sysIPV6_PREFER_SRC_CGAMASK = 0x30 -- sysIPV6_PREFER_SRC_CGADEFAULT = 0x10 -- -- sysIPV6_PREFER_SRC_MASK = 0x3f -- -- sysIPV6_PREFER_SRC_DEFAULT = 0x15 -- -- sysIPV6_BOUND_IF = 0x41 -- sysIPV6_UNSPEC_SRC = 0x42 -- -- sysICMP6_FILTER = 0x1 -- - sizeofSockaddrStorage = 0x100 - sizeofSockaddrInet6 = 0x20 - sizeofInet6Pktinfo = 0x14 -diff --git a/vendor/golang.org/x/net/ipv6/zsys_zos_s390x.go b/vendor/golang.org/x/net/ipv6/zsys_zos_s390x.go -new file mode 100644 -index 0000000..7c75645 ---- /dev/null -+++ b/vendor/golang.org/x/net/ipv6/zsys_zos_s390x.go -@@ -0,0 +1,62 @@ -+// Copyright 2020 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+// Hand edited based on zerrors_zos_s390x.go -+// TODO(Bill O'Farrell): auto-generate. -+ -+package ipv6 -+ -+const ( -+ sizeofSockaddrStorage = 128 -+ sizeofICMPv6Filter = 32 -+ sizeofInet6Pktinfo = 20 -+ sizeofIPv6Mtuinfo = 32 -+ sizeofSockaddrInet6 = 28 -+ sizeofGroupReq = 136 -+ sizeofGroupSourceReq = 264 -+) -+ -+type sockaddrStorage struct { -+ Len uint8 -+ Family byte -+ ss_pad1 [6]byte -+ ss_align int64 -+ ss_pad2 [112]byte -+} -+ -+type sockaddrInet6 struct { -+ Len uint8 -+ Family uint8 -+ Port uint16 -+ Flowinfo uint32 -+ Addr [16]byte -+ Scope_id uint32 -+} -+ -+type inet6Pktinfo struct { -+ Addr [16]byte -+ Ifindex uint32 -+} -+ -+type ipv6Mtuinfo struct { -+ Addr sockaddrInet6 -+ Mtu uint32 -+} -+ -+type groupReq struct { -+ Interface uint32 -+ reserved uint32 -+ Group sockaddrStorage -+} -+ -+type groupSourceReq struct { -+ Interface uint32 -+ reserved uint32 -+ Group sockaddrStorage -+ Source sockaddrStorage -+} -+ -+type icmpv6Filter struct { -+ Filt [8]uint32 -+} -diff --git a/vendor/golang.org/x/net/netutil/listen.go b/vendor/golang.org/x/net/netutil/listen.go -index cee46e3..d5dfbab 100644 ---- a/vendor/golang.org/x/net/netutil/listen.go -+++ b/vendor/golang.org/x/net/netutil/listen.go -@@ -42,14 +42,27 @@ func (l *limitListener) acquire() bool { - func (l *limitListener) release() { <-l.sem } - - func (l *limitListener) Accept() (net.Conn, error) { -- acquired := l.acquire() -- // If the semaphore isn't acquired because the listener was closed, expect -- // that this call to accept won't block, but immediately return an error. -+ if !l.acquire() { -+ // If the semaphore isn't acquired because the listener was closed, expect -+ // that this call to accept won't block, but immediately return an error. -+ // If it instead returns a spurious connection (due to a bug in the -+ // Listener, such as https://golang.org/issue/50216), we immediately close -+ // it and try again. Some buggy Listener implementations (like the one in -+ // the aforementioned issue) seem to assume that Accept will be called to -+ // completion, and may otherwise fail to clean up the client end of pending -+ // connections. -+ for { -+ c, err := l.Listener.Accept() -+ if err != nil { -+ return nil, err -+ } -+ c.Close() -+ } -+ } -+ - c, err := l.Listener.Accept() - if err != nil { -- if acquired { -- l.release() -- } -+ l.release() - return nil, err - } - return &limitListenerConn{Conn: c, release: l.release}, nil -diff --git a/vendor/golang.org/x/sys/AUTHORS b/vendor/golang.org/x/sys/AUTHORS -deleted file mode 100644 -index 15167cd..0000000 ---- a/vendor/golang.org/x/sys/AUTHORS -+++ /dev/null -@@ -1,3 +0,0 @@ --# This source code refers to The Go Authors for copyright purposes. --# The master list of authors is in the main Go distribution, --# visible at http://tip.golang.org/AUTHORS. -diff --git a/vendor/golang.org/x/sys/CONTRIBUTORS b/vendor/golang.org/x/sys/CONTRIBUTORS -deleted file mode 100644 -index 1c4577e..0000000 ---- a/vendor/golang.org/x/sys/CONTRIBUTORS -+++ /dev/null -@@ -1,3 +0,0 @@ --# This source code was written by the Go contributors. --# The master list of contributors is in the main Go distribution, --# visible at http://tip.golang.org/CONTRIBUTORS. -diff --git a/vendor/golang.org/x/sys/internal/unsafeheader/unsafeheader.go b/vendor/golang.org/x/sys/internal/unsafeheader/unsafeheader.go -new file mode 100644 -index 0000000..e07899b ---- /dev/null -+++ b/vendor/golang.org/x/sys/internal/unsafeheader/unsafeheader.go -@@ -0,0 +1,30 @@ -+// Copyright 2020 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+// Package unsafeheader contains header declarations for the Go runtime's -+// slice and string implementations. -+// -+// This package allows x/sys to use types equivalent to -+// reflect.SliceHeader and reflect.StringHeader without introducing -+// a dependency on the (relatively heavy) "reflect" package. -+package unsafeheader -+ -+import ( -+ "unsafe" -+) -+ -+// Slice is the runtime representation of a slice. -+// It cannot be used safely or portably and its representation may change in a later release. -+type Slice struct { -+ Data unsafe.Pointer -+ Len int -+ Cap int -+} -+ -+// String is the runtime representation of a string. -+// It cannot be used safely or portably and its representation may change in a later release. -+type String struct { -+ Data unsafe.Pointer -+ Len int -+} -diff --git a/vendor/golang.org/x/sys/unix/README.md b/vendor/golang.org/x/sys/unix/README.md -index 579d2d7..7d3c060 100644 ---- a/vendor/golang.org/x/sys/unix/README.md -+++ b/vendor/golang.org/x/sys/unix/README.md -@@ -76,7 +76,7 @@ arguments can be passed to the kernel. The third is for low-level use by the - ForkExec wrapper. Unlike the first two, it does not call into the scheduler to - let it know that a system call is running. - --When porting Go to an new architecture/OS, this file must be implemented for -+When porting Go to a new architecture/OS, this file must be implemented for - each GOOS/GOARCH pair. - - ### mksysnum -@@ -107,7 +107,7 @@ prototype can be exported (capitalized) or not. - Adding a new syscall often just requires adding a new `//sys` function prototype - with the desired arguments and a capitalized name so it is exported. However, if - you want the interface to the syscall to be different, often one will make an --unexported `//sys` prototype, an then write a custom wrapper in -+unexported `//sys` prototype, and then write a custom wrapper in - `syscall_${GOOS}.go`. - - ### types files -@@ -137,7 +137,7 @@ some `#if/#elif` macros in your include statements. - - This script is used to generate the system's various constants. This doesn't - just include the error numbers and error strings, but also the signal numbers --an a wide variety of miscellaneous constants. The constants come from the list -+and a wide variety of miscellaneous constants. The constants come from the list - of include files in the `includes_${uname}` variable. A regex then picks out - the desired `#define` statements, and generates the corresponding Go constants. - The error numbers and strings are generated from `#include `, and the -@@ -149,7 +149,7 @@ To add a constant, add the header that includes it to the appropriate variable. - Then, edit the regex (if necessary) to match the desired constant. Avoid making - the regex too broad to avoid matching unintended constants. - --### mkmerge.go -+### internal/mkmerge - - This program is used to extract duplicate const, func, and type declarations - from the generated architecture-specific files listed below, and merge these -diff --git a/vendor/golang.org/x/sys/unix/aliases.go b/vendor/golang.org/x/sys/unix/aliases.go -index 951fce4..abc89c1 100644 ---- a/vendor/golang.org/x/sys/unix/aliases.go -+++ b/vendor/golang.org/x/sys/unix/aliases.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris -+//go:build (aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos) && go1.9 -+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris zos - // +build go1.9 - - package unix -diff --git a/vendor/golang.org/x/sys/unix/asm_aix_ppc64.s b/vendor/golang.org/x/sys/unix/asm_aix_ppc64.s -index 06f84b8..db9171c 100644 ---- a/vendor/golang.org/x/sys/unix/asm_aix_ppc64.s -+++ b/vendor/golang.org/x/sys/unix/asm_aix_ppc64.s -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build !gccgo -+//go:build gc -+// +build gc - - #include "textflag.h" - -diff --git a/vendor/golang.org/x/sys/unix/asm_freebsd_386.s b/vendor/golang.org/x/sys/unix/asm_bsd_386.s -similarity index 70% -rename from vendor/golang.org/x/sys/unix/asm_freebsd_386.s -rename to vendor/golang.org/x/sys/unix/asm_bsd_386.s -index c9a0a26..e0fcd9b 100644 ---- a/vendor/golang.org/x/sys/unix/asm_freebsd_386.s -+++ b/vendor/golang.org/x/sys/unix/asm_bsd_386.s -@@ -1,14 +1,14 @@ --// Copyright 2009 The Go Authors. All rights reserved. -+// Copyright 2021 The Go Authors. All rights reserved. - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build !gccgo -+//go:build (freebsd || netbsd || openbsd) && gc -+// +build freebsd netbsd openbsd -+// +build gc - - #include "textflag.h" - --// --// System call support for 386, FreeBSD --// -+// System call support for 386 BSD - - // Just jump to package syscall's implementation for all these functions. - // The runtime may know about them. -@@ -22,7 +22,7 @@ TEXT ·Syscall6(SB),NOSPLIT,$0-40 - TEXT ·Syscall9(SB),NOSPLIT,$0-52 - JMP syscall·Syscall9(SB) - --TEXT ·RawSyscall(SB),NOSPLIT,$0-28 -+TEXT ·RawSyscall(SB),NOSPLIT,$0-28 - JMP syscall·RawSyscall(SB) - - TEXT ·RawSyscall6(SB),NOSPLIT,$0-40 -diff --git a/vendor/golang.org/x/sys/unix/asm_darwin_amd64.s b/vendor/golang.org/x/sys/unix/asm_bsd_amd64.s -similarity index 71% -rename from vendor/golang.org/x/sys/unix/asm_darwin_amd64.s -rename to vendor/golang.org/x/sys/unix/asm_bsd_amd64.s -index 6321421..2b99c34 100644 ---- a/vendor/golang.org/x/sys/unix/asm_darwin_amd64.s -+++ b/vendor/golang.org/x/sys/unix/asm_bsd_amd64.s -@@ -1,14 +1,14 @@ --// Copyright 2009 The Go Authors. All rights reserved. -+// Copyright 2021 The Go Authors. All rights reserved. - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build !gccgo -+//go:build (darwin || dragonfly || freebsd || netbsd || openbsd) && gc -+// +build darwin dragonfly freebsd netbsd openbsd -+// +build gc - - #include "textflag.h" - --// --// System call support for AMD64, Darwin --// -+// System call support for AMD64 BSD - - // Just jump to package syscall's implementation for all these functions. - // The runtime may know about them. -diff --git a/vendor/golang.org/x/sys/unix/asm_freebsd_arm.s b/vendor/golang.org/x/sys/unix/asm_bsd_arm.s -similarity index 74% -rename from vendor/golang.org/x/sys/unix/asm_freebsd_arm.s -rename to vendor/golang.org/x/sys/unix/asm_bsd_arm.s -index 9227c87..d702d4a 100644 ---- a/vendor/golang.org/x/sys/unix/asm_freebsd_arm.s -+++ b/vendor/golang.org/x/sys/unix/asm_bsd_arm.s -@@ -1,14 +1,14 @@ --// Copyright 2012 The Go Authors. All rights reserved. -+// Copyright 2021 The Go Authors. All rights reserved. - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build !gccgo -+//go:build (freebsd || netbsd || openbsd) && gc -+// +build freebsd netbsd openbsd -+// +build gc - - #include "textflag.h" - --// --// System call support for ARM, FreeBSD --// -+// System call support for ARM BSD - - // Just jump to package syscall's implementation for all these functions. - // The runtime may know about them. -diff --git a/vendor/golang.org/x/sys/unix/asm_netbsd_amd64.s b/vendor/golang.org/x/sys/unix/asm_bsd_arm64.s -similarity index 73% -rename from vendor/golang.org/x/sys/unix/asm_netbsd_amd64.s -rename to vendor/golang.org/x/sys/unix/asm_bsd_arm64.s -index 2ede05c..fe36a73 100644 ---- a/vendor/golang.org/x/sys/unix/asm_netbsd_amd64.s -+++ b/vendor/golang.org/x/sys/unix/asm_bsd_arm64.s -@@ -1,14 +1,14 @@ --// Copyright 2009 The Go Authors. All rights reserved. -+// Copyright 2021 The Go Authors. All rights reserved. - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build !gccgo -+//go:build (darwin || freebsd || netbsd || openbsd) && gc -+// +build darwin freebsd netbsd openbsd -+// +build gc - - #include "textflag.h" - --// --// System call support for AMD64, NetBSD --// -+// System call support for ARM64 BSD - - // Just jump to package syscall's implementation for all these functions. - // The runtime may know about them. -diff --git a/vendor/golang.org/x/sys/unix/asm_openbsd_amd64.s b/vendor/golang.org/x/sys/unix/asm_bsd_riscv64.s -similarity index 73% -rename from vendor/golang.org/x/sys/unix/asm_openbsd_amd64.s -rename to vendor/golang.org/x/sys/unix/asm_bsd_riscv64.s -index 790ef77..d560019 100644 ---- a/vendor/golang.org/x/sys/unix/asm_openbsd_amd64.s -+++ b/vendor/golang.org/x/sys/unix/asm_bsd_riscv64.s -@@ -1,14 +1,14 @@ --// Copyright 2009 The Go Authors. All rights reserved. -+// Copyright 2021 The Go Authors. All rights reserved. - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build !gccgo -+//go:build (darwin || freebsd || netbsd || openbsd) && gc -+// +build darwin freebsd netbsd openbsd -+// +build gc - - #include "textflag.h" - --// --// System call support for AMD64, OpenBSD --// -+// System call support for RISCV64 BSD - - // Just jump to package syscall's implementation for all these functions. - // The runtime may know about them. -diff --git a/vendor/golang.org/x/sys/unix/asm_darwin_386.s b/vendor/golang.org/x/sys/unix/asm_darwin_386.s -deleted file mode 100644 -index 8a72783..0000000 ---- a/vendor/golang.org/x/sys/unix/asm_darwin_386.s -+++ /dev/null -@@ -1,29 +0,0 @@ --// Copyright 2009 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --// +build !gccgo -- --#include "textflag.h" -- --// --// System call support for 386, Darwin --// -- --// Just jump to package syscall's implementation for all these functions. --// The runtime may know about them. -- --TEXT ·Syscall(SB),NOSPLIT,$0-28 -- JMP syscall·Syscall(SB) -- --TEXT ·Syscall6(SB),NOSPLIT,$0-40 -- JMP syscall·Syscall6(SB) -- --TEXT ·Syscall9(SB),NOSPLIT,$0-52 -- JMP syscall·Syscall9(SB) -- --TEXT ·RawSyscall(SB),NOSPLIT,$0-28 -- JMP syscall·RawSyscall(SB) -- --TEXT ·RawSyscall6(SB),NOSPLIT,$0-40 -- JMP syscall·RawSyscall6(SB) -diff --git a/vendor/golang.org/x/sys/unix/asm_darwin_arm.s b/vendor/golang.org/x/sys/unix/asm_darwin_arm.s -deleted file mode 100644 -index 333242d..0000000 ---- a/vendor/golang.org/x/sys/unix/asm_darwin_arm.s -+++ /dev/null -@@ -1,30 +0,0 @@ --// Copyright 2015 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --// +build !gccgo --// +build arm,darwin -- --#include "textflag.h" -- --// --// System call support for ARM, Darwin --// -- --// Just jump to package syscall's implementation for all these functions. --// The runtime may know about them. -- --TEXT ·Syscall(SB),NOSPLIT,$0-28 -- B syscall·Syscall(SB) -- --TEXT ·Syscall6(SB),NOSPLIT,$0-40 -- B syscall·Syscall6(SB) -- --TEXT ·Syscall9(SB),NOSPLIT,$0-52 -- B syscall·Syscall9(SB) -- --TEXT ·RawSyscall(SB),NOSPLIT,$0-28 -- B syscall·RawSyscall(SB) -- --TEXT ·RawSyscall6(SB),NOSPLIT,$0-40 -- B syscall·RawSyscall6(SB) -diff --git a/vendor/golang.org/x/sys/unix/asm_darwin_arm64.s b/vendor/golang.org/x/sys/unix/asm_darwin_arm64.s -deleted file mode 100644 -index 97e0174..0000000 ---- a/vendor/golang.org/x/sys/unix/asm_darwin_arm64.s -+++ /dev/null -@@ -1,30 +0,0 @@ --// Copyright 2015 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --// +build !gccgo --// +build arm64,darwin -- --#include "textflag.h" -- --// --// System call support for AMD64, Darwin --// -- --// Just jump to package syscall's implementation for all these functions. --// The runtime may know about them. -- --TEXT ·Syscall(SB),NOSPLIT,$0-56 -- B syscall·Syscall(SB) -- --TEXT ·Syscall6(SB),NOSPLIT,$0-80 -- B syscall·Syscall6(SB) -- --TEXT ·Syscall9(SB),NOSPLIT,$0-104 -- B syscall·Syscall9(SB) -- --TEXT ·RawSyscall(SB),NOSPLIT,$0-56 -- B syscall·RawSyscall(SB) -- --TEXT ·RawSyscall6(SB),NOSPLIT,$0-80 -- B syscall·RawSyscall6(SB) -diff --git a/vendor/golang.org/x/sys/unix/asm_dragonfly_amd64.s b/vendor/golang.org/x/sys/unix/asm_dragonfly_amd64.s -deleted file mode 100644 -index 603dd57..0000000 ---- a/vendor/golang.org/x/sys/unix/asm_dragonfly_amd64.s -+++ /dev/null -@@ -1,29 +0,0 @@ --// Copyright 2009 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --// +build !gccgo -- --#include "textflag.h" -- --// --// System call support for AMD64, DragonFly --// -- --// Just jump to package syscall's implementation for all these functions. --// The runtime may know about them. -- --TEXT ·Syscall(SB),NOSPLIT,$0-56 -- JMP syscall·Syscall(SB) -- --TEXT ·Syscall6(SB),NOSPLIT,$0-80 -- JMP syscall·Syscall6(SB) -- --TEXT ·Syscall9(SB),NOSPLIT,$0-104 -- JMP syscall·Syscall9(SB) -- --TEXT ·RawSyscall(SB),NOSPLIT,$0-56 -- JMP syscall·RawSyscall(SB) -- --TEXT ·RawSyscall6(SB),NOSPLIT,$0-80 -- JMP syscall·RawSyscall6(SB) -diff --git a/vendor/golang.org/x/sys/unix/asm_freebsd_amd64.s b/vendor/golang.org/x/sys/unix/asm_freebsd_amd64.s -deleted file mode 100644 -index 3517247..0000000 ---- a/vendor/golang.org/x/sys/unix/asm_freebsd_amd64.s -+++ /dev/null -@@ -1,29 +0,0 @@ --// Copyright 2009 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --// +build !gccgo -- --#include "textflag.h" -- --// --// System call support for AMD64, FreeBSD --// -- --// Just jump to package syscall's implementation for all these functions. --// The runtime may know about them. -- --TEXT ·Syscall(SB),NOSPLIT,$0-56 -- JMP syscall·Syscall(SB) -- --TEXT ·Syscall6(SB),NOSPLIT,$0-80 -- JMP syscall·Syscall6(SB) -- --TEXT ·Syscall9(SB),NOSPLIT,$0-104 -- JMP syscall·Syscall9(SB) -- --TEXT ·RawSyscall(SB),NOSPLIT,$0-56 -- JMP syscall·RawSyscall(SB) -- --TEXT ·RawSyscall6(SB),NOSPLIT,$0-80 -- JMP syscall·RawSyscall6(SB) -diff --git a/vendor/golang.org/x/sys/unix/asm_freebsd_arm64.s b/vendor/golang.org/x/sys/unix/asm_freebsd_arm64.s -deleted file mode 100644 -index d9318cb..0000000 ---- a/vendor/golang.org/x/sys/unix/asm_freebsd_arm64.s -+++ /dev/null -@@ -1,29 +0,0 @@ --// Copyright 2018 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --// +build !gccgo -- --#include "textflag.h" -- --// --// System call support for ARM64, FreeBSD --// -- --// Just jump to package syscall's implementation for all these functions. --// The runtime may know about them. -- --TEXT ·Syscall(SB),NOSPLIT,$0-56 -- JMP syscall·Syscall(SB) -- --TEXT ·Syscall6(SB),NOSPLIT,$0-80 -- JMP syscall·Syscall6(SB) -- --TEXT ·Syscall9(SB),NOSPLIT,$0-104 -- JMP syscall·Syscall9(SB) -- --TEXT ·RawSyscall(SB),NOSPLIT,$0-56 -- JMP syscall·RawSyscall(SB) -- --TEXT ·RawSyscall6(SB),NOSPLIT,$0-80 -- JMP syscall·RawSyscall6(SB) -diff --git a/vendor/golang.org/x/sys/unix/asm_linux_386.s b/vendor/golang.org/x/sys/unix/asm_linux_386.s -index 448bebb..8fd101d 100644 ---- a/vendor/golang.org/x/sys/unix/asm_linux_386.s -+++ b/vendor/golang.org/x/sys/unix/asm_linux_386.s -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build !gccgo -+//go:build gc -+// +build gc - - #include "textflag.h" - -diff --git a/vendor/golang.org/x/sys/unix/asm_linux_amd64.s b/vendor/golang.org/x/sys/unix/asm_linux_amd64.s -index c6468a9..7ed38e4 100644 ---- a/vendor/golang.org/x/sys/unix/asm_linux_amd64.s -+++ b/vendor/golang.org/x/sys/unix/asm_linux_amd64.s -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build !gccgo -+//go:build gc -+// +build gc - - #include "textflag.h" - -diff --git a/vendor/golang.org/x/sys/unix/asm_linux_arm.s b/vendor/golang.org/x/sys/unix/asm_linux_arm.s -index cf0f357..8ef1d51 100644 ---- a/vendor/golang.org/x/sys/unix/asm_linux_arm.s -+++ b/vendor/golang.org/x/sys/unix/asm_linux_arm.s -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build !gccgo -+//go:build gc -+// +build gc - - #include "textflag.h" - -diff --git a/vendor/golang.org/x/sys/unix/asm_linux_arm64.s b/vendor/golang.org/x/sys/unix/asm_linux_arm64.s -index afe6fdf..98ae027 100644 ---- a/vendor/golang.org/x/sys/unix/asm_linux_arm64.s -+++ b/vendor/golang.org/x/sys/unix/asm_linux_arm64.s -@@ -2,9 +2,10 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build linux && arm64 && gc - // +build linux - // +build arm64 --// +build !gccgo -+// +build gc - - #include "textflag.h" - -diff --git a/vendor/golang.org/x/sys/unix/asm_linux_loong64.s b/vendor/golang.org/x/sys/unix/asm_linux_loong64.s -new file mode 100644 -index 0000000..5653572 ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/asm_linux_loong64.s -@@ -0,0 +1,54 @@ -+// Copyright 2022 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build linux && loong64 && gc -+// +build linux -+// +build loong64 -+// +build gc -+ -+#include "textflag.h" -+ -+ -+// Just jump to package syscall's implementation for all these functions. -+// The runtime may know about them. -+ -+TEXT ·Syscall(SB),NOSPLIT,$0-56 -+ JMP syscall·Syscall(SB) -+ -+TEXT ·Syscall6(SB),NOSPLIT,$0-80 -+ JMP syscall·Syscall6(SB) -+ -+TEXT ·SyscallNoError(SB),NOSPLIT,$0-48 -+ JAL runtime·entersyscall(SB) -+ MOVV a1+8(FP), R4 -+ MOVV a2+16(FP), R5 -+ MOVV a3+24(FP), R6 -+ MOVV R0, R7 -+ MOVV R0, R8 -+ MOVV R0, R9 -+ MOVV trap+0(FP), R11 // syscall entry -+ SYSCALL -+ MOVV R4, r1+32(FP) -+ MOVV R0, r2+40(FP) // r2 is not used. Always set to 0 -+ JAL runtime·exitsyscall(SB) -+ RET -+ -+TEXT ·RawSyscall(SB),NOSPLIT,$0-56 -+ JMP syscall·RawSyscall(SB) -+ -+TEXT ·RawSyscall6(SB),NOSPLIT,$0-80 -+ JMP syscall·RawSyscall6(SB) -+ -+TEXT ·RawSyscallNoError(SB),NOSPLIT,$0-48 -+ MOVV a1+8(FP), R4 -+ MOVV a2+16(FP), R5 -+ MOVV a3+24(FP), R6 -+ MOVV R0, R7 -+ MOVV R0, R8 -+ MOVV R0, R9 -+ MOVV trap+0(FP), R11 // syscall entry -+ SYSCALL -+ MOVV R4, r1+32(FP) -+ MOVV R0, r2+40(FP) // r2 is not used. Always set to 0 -+ RET -diff --git a/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s b/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s -index ab9d638..21231d2 100644 ---- a/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s -+++ b/vendor/golang.org/x/sys/unix/asm_linux_mips64x.s -@@ -2,9 +2,10 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build linux && (mips64 || mips64le) && gc - // +build linux - // +build mips64 mips64le --// +build !gccgo -+// +build gc - - #include "textflag.h" - -diff --git a/vendor/golang.org/x/sys/unix/asm_linux_mipsx.s b/vendor/golang.org/x/sys/unix/asm_linux_mipsx.s -index 99e5399..6783b26 100644 ---- a/vendor/golang.org/x/sys/unix/asm_linux_mipsx.s -+++ b/vendor/golang.org/x/sys/unix/asm_linux_mipsx.s -@@ -2,9 +2,10 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build linux && (mips || mipsle) && gc - // +build linux - // +build mips mipsle --// +build !gccgo -+// +build gc - - #include "textflag.h" - -diff --git a/vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s b/vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s -index 88f7125..19d4989 100644 ---- a/vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s -+++ b/vendor/golang.org/x/sys/unix/asm_linux_ppc64x.s -@@ -2,9 +2,10 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build linux && (ppc64 || ppc64le) && gc - // +build linux - // +build ppc64 ppc64le --// +build !gccgo -+// +build gc - - #include "textflag.h" - -diff --git a/vendor/golang.org/x/sys/unix/asm_linux_riscv64.s b/vendor/golang.org/x/sys/unix/asm_linux_riscv64.s -index 3cfefed..e42eb81 100644 ---- a/vendor/golang.org/x/sys/unix/asm_linux_riscv64.s -+++ b/vendor/golang.org/x/sys/unix/asm_linux_riscv64.s -@@ -2,7 +2,9 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build riscv64,!gccgo -+//go:build riscv64 && gc -+// +build riscv64 -+// +build gc - - #include "textflag.h" - -diff --git a/vendor/golang.org/x/sys/unix/asm_linux_s390x.s b/vendor/golang.org/x/sys/unix/asm_linux_s390x.s -index a5a863c..c46aab3 100644 ---- a/vendor/golang.org/x/sys/unix/asm_linux_s390x.s -+++ b/vendor/golang.org/x/sys/unix/asm_linux_s390x.s -@@ -2,9 +2,10 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build s390x -+//go:build linux && s390x && gc - // +build linux --// +build !gccgo -+// +build s390x -+// +build gc - - #include "textflag.h" - -diff --git a/vendor/golang.org/x/sys/unix/asm_netbsd_386.s b/vendor/golang.org/x/sys/unix/asm_netbsd_386.s -deleted file mode 100644 -index 48bdcd7..0000000 ---- a/vendor/golang.org/x/sys/unix/asm_netbsd_386.s -+++ /dev/null -@@ -1,29 +0,0 @@ --// Copyright 2009 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --// +build !gccgo -- --#include "textflag.h" -- --// --// System call support for 386, NetBSD --// -- --// Just jump to package syscall's implementation for all these functions. --// The runtime may know about them. -- --TEXT ·Syscall(SB),NOSPLIT,$0-28 -- JMP syscall·Syscall(SB) -- --TEXT ·Syscall6(SB),NOSPLIT,$0-40 -- JMP syscall·Syscall6(SB) -- --TEXT ·Syscall9(SB),NOSPLIT,$0-52 -- JMP syscall·Syscall9(SB) -- --TEXT ·RawSyscall(SB),NOSPLIT,$0-28 -- JMP syscall·RawSyscall(SB) -- --TEXT ·RawSyscall6(SB),NOSPLIT,$0-40 -- JMP syscall·RawSyscall6(SB) -diff --git a/vendor/golang.org/x/sys/unix/asm_netbsd_arm.s b/vendor/golang.org/x/sys/unix/asm_netbsd_arm.s -deleted file mode 100644 -index e892857..0000000 ---- a/vendor/golang.org/x/sys/unix/asm_netbsd_arm.s -+++ /dev/null -@@ -1,29 +0,0 @@ --// Copyright 2013 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --// +build !gccgo -- --#include "textflag.h" -- --// --// System call support for ARM, NetBSD --// -- --// Just jump to package syscall's implementation for all these functions. --// The runtime may know about them. -- --TEXT ·Syscall(SB),NOSPLIT,$0-28 -- B syscall·Syscall(SB) -- --TEXT ·Syscall6(SB),NOSPLIT,$0-40 -- B syscall·Syscall6(SB) -- --TEXT ·Syscall9(SB),NOSPLIT,$0-52 -- B syscall·Syscall9(SB) -- --TEXT ·RawSyscall(SB),NOSPLIT,$0-28 -- B syscall·RawSyscall(SB) -- --TEXT ·RawSyscall6(SB),NOSPLIT,$0-40 -- B syscall·RawSyscall6(SB) -diff --git a/vendor/golang.org/x/sys/unix/asm_netbsd_arm64.s b/vendor/golang.org/x/sys/unix/asm_netbsd_arm64.s -deleted file mode 100644 -index 6f98ba5..0000000 ---- a/vendor/golang.org/x/sys/unix/asm_netbsd_arm64.s -+++ /dev/null -@@ -1,29 +0,0 @@ --// Copyright 2019 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --// +build !gccgo -- --#include "textflag.h" -- --// --// System call support for ARM64, NetBSD --// -- --// Just jump to package syscall's implementation for all these functions. --// The runtime may know about them. -- --TEXT ·Syscall(SB),NOSPLIT,$0-56 -- B syscall·Syscall(SB) -- --TEXT ·Syscall6(SB),NOSPLIT,$0-80 -- B syscall·Syscall6(SB) -- --TEXT ·Syscall9(SB),NOSPLIT,$0-104 -- B syscall·Syscall9(SB) -- --TEXT ·RawSyscall(SB),NOSPLIT,$0-56 -- B syscall·RawSyscall(SB) -- --TEXT ·RawSyscall6(SB),NOSPLIT,$0-80 -- B syscall·RawSyscall6(SB) -diff --git a/vendor/golang.org/x/sys/unix/asm_openbsd_386.s b/vendor/golang.org/x/sys/unix/asm_openbsd_386.s -deleted file mode 100644 -index 00576f3..0000000 ---- a/vendor/golang.org/x/sys/unix/asm_openbsd_386.s -+++ /dev/null -@@ -1,29 +0,0 @@ --// Copyright 2009 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --// +build !gccgo -- --#include "textflag.h" -- --// --// System call support for 386, OpenBSD --// -- --// Just jump to package syscall's implementation for all these functions. --// The runtime may know about them. -- --TEXT ·Syscall(SB),NOSPLIT,$0-28 -- JMP syscall·Syscall(SB) -- --TEXT ·Syscall6(SB),NOSPLIT,$0-40 -- JMP syscall·Syscall6(SB) -- --TEXT ·Syscall9(SB),NOSPLIT,$0-52 -- JMP syscall·Syscall9(SB) -- --TEXT ·RawSyscall(SB),NOSPLIT,$0-28 -- JMP syscall·RawSyscall(SB) -- --TEXT ·RawSyscall6(SB),NOSPLIT,$0-40 -- JMP syscall·RawSyscall6(SB) -diff --git a/vendor/golang.org/x/sys/unix/asm_openbsd_arm.s b/vendor/golang.org/x/sys/unix/asm_openbsd_arm.s -deleted file mode 100644 -index 469bfa1..0000000 ---- a/vendor/golang.org/x/sys/unix/asm_openbsd_arm.s -+++ /dev/null -@@ -1,29 +0,0 @@ --// Copyright 2017 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --// +build !gccgo -- --#include "textflag.h" -- --// --// System call support for ARM, OpenBSD --// -- --// Just jump to package syscall's implementation for all these functions. --// The runtime may know about them. -- --TEXT ·Syscall(SB),NOSPLIT,$0-28 -- B syscall·Syscall(SB) -- --TEXT ·Syscall6(SB),NOSPLIT,$0-40 -- B syscall·Syscall6(SB) -- --TEXT ·Syscall9(SB),NOSPLIT,$0-52 -- B syscall·Syscall9(SB) -- --TEXT ·RawSyscall(SB),NOSPLIT,$0-28 -- B syscall·RawSyscall(SB) -- --TEXT ·RawSyscall6(SB),NOSPLIT,$0-40 -- B syscall·RawSyscall6(SB) -diff --git a/vendor/golang.org/x/sys/unix/asm_openbsd_arm64.s b/vendor/golang.org/x/sys/unix/asm_openbsd_mips64.s -similarity index 89% -rename from vendor/golang.org/x/sys/unix/asm_openbsd_arm64.s -rename to vendor/golang.org/x/sys/unix/asm_openbsd_mips64.s -index 0cedea3..5e7a116 100644 ---- a/vendor/golang.org/x/sys/unix/asm_openbsd_arm64.s -+++ b/vendor/golang.org/x/sys/unix/asm_openbsd_mips64.s -@@ -2,12 +2,13 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build !gccgo -+//go:build gc -+// +build gc - - #include "textflag.h" - - // --// System call support for arm64, OpenBSD -+// System call support for mips64, OpenBSD - // - - // Just jump to package syscall's implementation for all these functions. -diff --git a/vendor/golang.org/x/sys/unix/asm_solaris_amd64.s b/vendor/golang.org/x/sys/unix/asm_solaris_amd64.s -index ded8260..f8c5394 100644 ---- a/vendor/golang.org/x/sys/unix/asm_solaris_amd64.s -+++ b/vendor/golang.org/x/sys/unix/asm_solaris_amd64.s -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build !gccgo -+//go:build gc -+// +build gc - - #include "textflag.h" - -diff --git a/vendor/golang.org/x/sys/unix/asm_zos_s390x.s b/vendor/golang.org/x/sys/unix/asm_zos_s390x.s -new file mode 100644 -index 0000000..3b54e18 ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/asm_zos_s390x.s -@@ -0,0 +1,426 @@ -+// Copyright 2020 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build zos && s390x && gc -+// +build zos -+// +build s390x -+// +build gc -+ -+#include "textflag.h" -+ -+#define PSALAA 1208(R0) -+#define GTAB64(x) 80(x) -+#define LCA64(x) 88(x) -+#define CAA(x) 8(x) -+#define EDCHPXV(x) 1016(x) // in the CAA -+#define SAVSTACK_ASYNC(x) 336(x) // in the LCA -+ -+// SS_*, where x=SAVSTACK_ASYNC -+#define SS_LE(x) 0(x) -+#define SS_GO(x) 8(x) -+#define SS_ERRNO(x) 16(x) -+#define SS_ERRNOJR(x) 20(x) -+ -+#define LE_CALL BYTE $0x0D; BYTE $0x76; // BL R7, R6 -+ -+TEXT ·clearErrno(SB),NOSPLIT,$0-0 -+ BL addrerrno<>(SB) -+ MOVD $0, 0(R3) -+ RET -+ -+// Returns the address of errno in R3. -+TEXT addrerrno<>(SB),NOSPLIT|NOFRAME,$0-0 -+ // Get library control area (LCA). -+ MOVW PSALAA, R8 -+ MOVD LCA64(R8), R8 -+ -+ // Get __errno FuncDesc. -+ MOVD CAA(R8), R9 -+ MOVD EDCHPXV(R9), R9 -+ ADD $(0x156*16), R9 -+ LMG 0(R9), R5, R6 -+ -+ // Switch to saved LE stack. -+ MOVD SAVSTACK_ASYNC(R8), R9 -+ MOVD 0(R9), R4 -+ MOVD $0, 0(R9) -+ -+ // Call __errno function. -+ LE_CALL -+ NOPH -+ -+ // Switch back to Go stack. -+ XOR R0, R0 // Restore R0 to $0. -+ MOVD R4, 0(R9) // Save stack pointer. -+ RET -+ -+TEXT ·syscall_syscall(SB),NOSPLIT,$0-56 -+ BL runtime·entersyscall(SB) -+ MOVD a1+8(FP), R1 -+ MOVD a2+16(FP), R2 -+ MOVD a3+24(FP), R3 -+ -+ // Get library control area (LCA). -+ MOVW PSALAA, R8 -+ MOVD LCA64(R8), R8 -+ -+ // Get function. -+ MOVD CAA(R8), R9 -+ MOVD EDCHPXV(R9), R9 -+ MOVD trap+0(FP), R5 -+ SLD $4, R5 -+ ADD R5, R9 -+ LMG 0(R9), R5, R6 -+ -+ // Restore LE stack. -+ MOVD SAVSTACK_ASYNC(R8), R9 -+ MOVD 0(R9), R4 -+ MOVD $0, 0(R9) -+ -+ // Call function. -+ LE_CALL -+ NOPH -+ XOR R0, R0 // Restore R0 to $0. -+ MOVD R4, 0(R9) // Save stack pointer. -+ -+ MOVD R3, r1+32(FP) -+ MOVD R0, r2+40(FP) -+ MOVD R0, err+48(FP) -+ MOVW R3, R4 -+ CMP R4, $-1 -+ BNE done -+ BL addrerrno<>(SB) -+ MOVWZ 0(R3), R3 -+ MOVD R3, err+48(FP) -+done: -+ BL runtime·exitsyscall(SB) -+ RET -+ -+TEXT ·syscall_rawsyscall(SB),NOSPLIT,$0-56 -+ MOVD a1+8(FP), R1 -+ MOVD a2+16(FP), R2 -+ MOVD a3+24(FP), R3 -+ -+ // Get library control area (LCA). -+ MOVW PSALAA, R8 -+ MOVD LCA64(R8), R8 -+ -+ // Get function. -+ MOVD CAA(R8), R9 -+ MOVD EDCHPXV(R9), R9 -+ MOVD trap+0(FP), R5 -+ SLD $4, R5 -+ ADD R5, R9 -+ LMG 0(R9), R5, R6 -+ -+ // Restore LE stack. -+ MOVD SAVSTACK_ASYNC(R8), R9 -+ MOVD 0(R9), R4 -+ MOVD $0, 0(R9) -+ -+ // Call function. -+ LE_CALL -+ NOPH -+ XOR R0, R0 // Restore R0 to $0. -+ MOVD R4, 0(R9) // Save stack pointer. -+ -+ MOVD R3, r1+32(FP) -+ MOVD R0, r2+40(FP) -+ MOVD R0, err+48(FP) -+ MOVW R3, R4 -+ CMP R4, $-1 -+ BNE done -+ BL addrerrno<>(SB) -+ MOVWZ 0(R3), R3 -+ MOVD R3, err+48(FP) -+done: -+ RET -+ -+TEXT ·syscall_syscall6(SB),NOSPLIT,$0-80 -+ BL runtime·entersyscall(SB) -+ MOVD a1+8(FP), R1 -+ MOVD a2+16(FP), R2 -+ MOVD a3+24(FP), R3 -+ -+ // Get library control area (LCA). -+ MOVW PSALAA, R8 -+ MOVD LCA64(R8), R8 -+ -+ // Get function. -+ MOVD CAA(R8), R9 -+ MOVD EDCHPXV(R9), R9 -+ MOVD trap+0(FP), R5 -+ SLD $4, R5 -+ ADD R5, R9 -+ LMG 0(R9), R5, R6 -+ -+ // Restore LE stack. -+ MOVD SAVSTACK_ASYNC(R8), R9 -+ MOVD 0(R9), R4 -+ MOVD $0, 0(R9) -+ -+ // Fill in parameter list. -+ MOVD a4+32(FP), R12 -+ MOVD R12, (2176+24)(R4) -+ MOVD a5+40(FP), R12 -+ MOVD R12, (2176+32)(R4) -+ MOVD a6+48(FP), R12 -+ MOVD R12, (2176+40)(R4) -+ -+ // Call function. -+ LE_CALL -+ NOPH -+ XOR R0, R0 // Restore R0 to $0. -+ MOVD R4, 0(R9) // Save stack pointer. -+ -+ MOVD R3, r1+56(FP) -+ MOVD R0, r2+64(FP) -+ MOVD R0, err+72(FP) -+ MOVW R3, R4 -+ CMP R4, $-1 -+ BNE done -+ BL addrerrno<>(SB) -+ MOVWZ 0(R3), R3 -+ MOVD R3, err+72(FP) -+done: -+ BL runtime·exitsyscall(SB) -+ RET -+ -+TEXT ·syscall_rawsyscall6(SB),NOSPLIT,$0-80 -+ MOVD a1+8(FP), R1 -+ MOVD a2+16(FP), R2 -+ MOVD a3+24(FP), R3 -+ -+ // Get library control area (LCA). -+ MOVW PSALAA, R8 -+ MOVD LCA64(R8), R8 -+ -+ // Get function. -+ MOVD CAA(R8), R9 -+ MOVD EDCHPXV(R9), R9 -+ MOVD trap+0(FP), R5 -+ SLD $4, R5 -+ ADD R5, R9 -+ LMG 0(R9), R5, R6 -+ -+ // Restore LE stack. -+ MOVD SAVSTACK_ASYNC(R8), R9 -+ MOVD 0(R9), R4 -+ MOVD $0, 0(R9) -+ -+ // Fill in parameter list. -+ MOVD a4+32(FP), R12 -+ MOVD R12, (2176+24)(R4) -+ MOVD a5+40(FP), R12 -+ MOVD R12, (2176+32)(R4) -+ MOVD a6+48(FP), R12 -+ MOVD R12, (2176+40)(R4) -+ -+ // Call function. -+ LE_CALL -+ NOPH -+ XOR R0, R0 // Restore R0 to $0. -+ MOVD R4, 0(R9) // Save stack pointer. -+ -+ MOVD R3, r1+56(FP) -+ MOVD R0, r2+64(FP) -+ MOVD R0, err+72(FP) -+ MOVW R3, R4 -+ CMP R4, $-1 -+ BNE done -+ BL ·rrno<>(SB) -+ MOVWZ 0(R3), R3 -+ MOVD R3, err+72(FP) -+done: -+ RET -+ -+TEXT ·syscall_syscall9(SB),NOSPLIT,$0 -+ BL runtime·entersyscall(SB) -+ MOVD a1+8(FP), R1 -+ MOVD a2+16(FP), R2 -+ MOVD a3+24(FP), R3 -+ -+ // Get library control area (LCA). -+ MOVW PSALAA, R8 -+ MOVD LCA64(R8), R8 -+ -+ // Get function. -+ MOVD CAA(R8), R9 -+ MOVD EDCHPXV(R9), R9 -+ MOVD trap+0(FP), R5 -+ SLD $4, R5 -+ ADD R5, R9 -+ LMG 0(R9), R5, R6 -+ -+ // Restore LE stack. -+ MOVD SAVSTACK_ASYNC(R8), R9 -+ MOVD 0(R9), R4 -+ MOVD $0, 0(R9) -+ -+ // Fill in parameter list. -+ MOVD a4+32(FP), R12 -+ MOVD R12, (2176+24)(R4) -+ MOVD a5+40(FP), R12 -+ MOVD R12, (2176+32)(R4) -+ MOVD a6+48(FP), R12 -+ MOVD R12, (2176+40)(R4) -+ MOVD a7+56(FP), R12 -+ MOVD R12, (2176+48)(R4) -+ MOVD a8+64(FP), R12 -+ MOVD R12, (2176+56)(R4) -+ MOVD a9+72(FP), R12 -+ MOVD R12, (2176+64)(R4) -+ -+ // Call function. -+ LE_CALL -+ NOPH -+ XOR R0, R0 // Restore R0 to $0. -+ MOVD R4, 0(R9) // Save stack pointer. -+ -+ MOVD R3, r1+80(FP) -+ MOVD R0, r2+88(FP) -+ MOVD R0, err+96(FP) -+ MOVW R3, R4 -+ CMP R4, $-1 -+ BNE done -+ BL addrerrno<>(SB) -+ MOVWZ 0(R3), R3 -+ MOVD R3, err+96(FP) -+done: -+ BL runtime·exitsyscall(SB) -+ RET -+ -+TEXT ·syscall_rawsyscall9(SB),NOSPLIT,$0 -+ MOVD a1+8(FP), R1 -+ MOVD a2+16(FP), R2 -+ MOVD a3+24(FP), R3 -+ -+ // Get library control area (LCA). -+ MOVW PSALAA, R8 -+ MOVD LCA64(R8), R8 -+ -+ // Get function. -+ MOVD CAA(R8), R9 -+ MOVD EDCHPXV(R9), R9 -+ MOVD trap+0(FP), R5 -+ SLD $4, R5 -+ ADD R5, R9 -+ LMG 0(R9), R5, R6 -+ -+ // Restore LE stack. -+ MOVD SAVSTACK_ASYNC(R8), R9 -+ MOVD 0(R9), R4 -+ MOVD $0, 0(R9) -+ -+ // Fill in parameter list. -+ MOVD a4+32(FP), R12 -+ MOVD R12, (2176+24)(R4) -+ MOVD a5+40(FP), R12 -+ MOVD R12, (2176+32)(R4) -+ MOVD a6+48(FP), R12 -+ MOVD R12, (2176+40)(R4) -+ MOVD a7+56(FP), R12 -+ MOVD R12, (2176+48)(R4) -+ MOVD a8+64(FP), R12 -+ MOVD R12, (2176+56)(R4) -+ MOVD a9+72(FP), R12 -+ MOVD R12, (2176+64)(R4) -+ -+ // Call function. -+ LE_CALL -+ NOPH -+ XOR R0, R0 // Restore R0 to $0. -+ MOVD R4, 0(R9) // Save stack pointer. -+ -+ MOVD R3, r1+80(FP) -+ MOVD R0, r2+88(FP) -+ MOVD R0, err+96(FP) -+ MOVW R3, R4 -+ CMP R4, $-1 -+ BNE done -+ BL addrerrno<>(SB) -+ MOVWZ 0(R3), R3 -+ MOVD R3, err+96(FP) -+done: -+ RET -+ -+// func svcCall(fnptr unsafe.Pointer, argv *unsafe.Pointer, dsa *uint64) -+TEXT ·svcCall(SB),NOSPLIT,$0 -+ BL runtime·save_g(SB) // Save g and stack pointer -+ MOVW PSALAA, R8 -+ MOVD LCA64(R8), R8 -+ MOVD SAVSTACK_ASYNC(R8), R9 -+ MOVD R15, 0(R9) -+ -+ MOVD argv+8(FP), R1 // Move function arguments into registers -+ MOVD dsa+16(FP), g -+ MOVD fnptr+0(FP), R15 -+ -+ BYTE $0x0D // Branch to function -+ BYTE $0xEF -+ -+ BL runtime·load_g(SB) // Restore g and stack pointer -+ MOVW PSALAA, R8 -+ MOVD LCA64(R8), R8 -+ MOVD SAVSTACK_ASYNC(R8), R9 -+ MOVD 0(R9), R15 -+ -+ RET -+ -+// func svcLoad(name *byte) unsafe.Pointer -+TEXT ·svcLoad(SB),NOSPLIT,$0 -+ MOVD R15, R2 // Save go stack pointer -+ MOVD name+0(FP), R0 // Move SVC args into registers -+ MOVD $0x80000000, R1 -+ MOVD $0, R15 -+ BYTE $0x0A // SVC 08 LOAD -+ BYTE $0x08 -+ MOVW R15, R3 // Save return code from SVC -+ MOVD R2, R15 // Restore go stack pointer -+ CMP R3, $0 // Check SVC return code -+ BNE error -+ -+ MOVD $-2, R3 // Reset last bit of entry point to zero -+ AND R0, R3 -+ MOVD R3, addr+8(FP) // Return entry point returned by SVC -+ CMP R0, R3 // Check if last bit of entry point was set -+ BNE done -+ -+ MOVD R15, R2 // Save go stack pointer -+ MOVD $0, R15 // Move SVC args into registers (entry point still in r0 from SVC 08) -+ BYTE $0x0A // SVC 09 DELETE -+ BYTE $0x09 -+ MOVD R2, R15 // Restore go stack pointer -+ -+error: -+ MOVD $0, addr+8(FP) // Return 0 on failure -+done: -+ XOR R0, R0 // Reset r0 to 0 -+ RET -+ -+// func svcUnload(name *byte, fnptr unsafe.Pointer) int64 -+TEXT ·svcUnload(SB),NOSPLIT,$0 -+ MOVD R15, R2 // Save go stack pointer -+ MOVD name+0(FP), R0 // Move SVC args into registers -+ MOVD addr+8(FP), R15 -+ BYTE $0x0A // SVC 09 -+ BYTE $0x09 -+ XOR R0, R0 // Reset r0 to 0 -+ MOVD R15, R1 // Save SVC return code -+ MOVD R2, R15 // Restore go stack pointer -+ MOVD R1, rc+0(FP) // Return SVC return code -+ RET -+ -+// func gettid() uint64 -+TEXT ·gettid(SB), NOSPLIT, $0 -+ // Get library control area (LCA). -+ MOVW PSALAA, R8 -+ MOVD LCA64(R8), R8 -+ -+ // Get CEECAATHDID -+ MOVD CAA(R8), R9 -+ MOVD 0x3D0(R9), R9 -+ MOVD R9, ret+0(FP) -+ -+ RET -diff --git a/vendor/golang.org/x/sys/unix/cap_freebsd.go b/vendor/golang.org/x/sys/unix/cap_freebsd.go -index df52048..0b7c6ad 100644 ---- a/vendor/golang.org/x/sys/unix/cap_freebsd.go -+++ b/vendor/golang.org/x/sys/unix/cap_freebsd.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build freebsd - // +build freebsd - - package unix -diff --git a/vendor/golang.org/x/sys/unix/constants.go b/vendor/golang.org/x/sys/unix/constants.go -index 3a6ac64..394a396 100644 ---- a/vendor/golang.org/x/sys/unix/constants.go -+++ b/vendor/golang.org/x/sys/unix/constants.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris -+//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos -+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris zos - - package unix - -diff --git a/vendor/golang.org/x/sys/unix/dev_aix_ppc.go b/vendor/golang.org/x/sys/unix/dev_aix_ppc.go -index 5e5fb45..65a9985 100644 ---- a/vendor/golang.org/x/sys/unix/dev_aix_ppc.go -+++ b/vendor/golang.org/x/sys/unix/dev_aix_ppc.go -@@ -2,8 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build aix --// +build ppc -+//go:build aix && ppc -+// +build aix,ppc - - // Functions to access/create device major and minor numbers matching the - // encoding used by AIX. -diff --git a/vendor/golang.org/x/sys/unix/dev_aix_ppc64.go b/vendor/golang.org/x/sys/unix/dev_aix_ppc64.go -index 8b40124..8fc08ad 100644 ---- a/vendor/golang.org/x/sys/unix/dev_aix_ppc64.go -+++ b/vendor/golang.org/x/sys/unix/dev_aix_ppc64.go -@@ -2,8 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build aix --// +build ppc64 -+//go:build aix && ppc64 -+// +build aix,ppc64 - - // Functions to access/create device major and minor numbers matching the - // encoding used AIX. -diff --git a/vendor/golang.org/x/sys/unix/dev_zos.go b/vendor/golang.org/x/sys/unix/dev_zos.go -new file mode 100644 -index 0000000..a388e59 ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/dev_zos.go -@@ -0,0 +1,29 @@ -+// Copyright 2020 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build zos && s390x -+// +build zos,s390x -+ -+// Functions to access/create device major and minor numbers matching the -+// encoding used by z/OS. -+// -+// The information below is extracted and adapted from macros. -+ -+package unix -+ -+// Major returns the major component of a z/OS device number. -+func Major(dev uint64) uint32 { -+ return uint32((dev >> 16) & 0x0000FFFF) -+} -+ -+// Minor returns the minor component of a z/OS device number. -+func Minor(dev uint64) uint32 { -+ return uint32(dev & 0x0000FFFF) -+} -+ -+// Mkdev returns a z/OS device number generated from the given major and minor -+// components. -+func Mkdev(major, minor uint32) uint64 { -+ return (uint64(major) << 16) | uint64(minor) -+} -diff --git a/vendor/golang.org/x/sys/unix/dirent.go b/vendor/golang.org/x/sys/unix/dirent.go -index 304016b..e74e5ea 100644 ---- a/vendor/golang.org/x/sys/unix/dirent.go -+++ b/vendor/golang.org/x/sys/unix/dirent.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris - // +build aix darwin dragonfly freebsd linux netbsd openbsd solaris - - package unix -diff --git a/vendor/golang.org/x/sys/unix/endian_big.go b/vendor/golang.org/x/sys/unix/endian_big.go -index 5e92690..a520265 100644 ---- a/vendor/golang.org/x/sys/unix/endian_big.go -+++ b/vendor/golang.org/x/sys/unix/endian_big.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - // --// +build ppc64 s390x mips mips64 -+//go:build armbe || arm64be || m68k || mips || mips64 || mips64p32 || ppc || ppc64 || s390 || s390x || shbe || sparc || sparc64 -+// +build armbe arm64be m68k mips mips64 mips64p32 ppc ppc64 s390 s390x shbe sparc sparc64 - - package unix - -diff --git a/vendor/golang.org/x/sys/unix/endian_little.go b/vendor/golang.org/x/sys/unix/endian_little.go -index bcdb5d3..b0f2bc4 100644 ---- a/vendor/golang.org/x/sys/unix/endian_little.go -+++ b/vendor/golang.org/x/sys/unix/endian_little.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - // --// +build 386 amd64 amd64p32 arm arm64 ppc64le mipsle mips64le riscv64 -+//go:build 386 || amd64 || amd64p32 || alpha || arm || arm64 || loong64 || mipsle || mips64le || mips64p32le || nios2 || ppc64le || riscv || riscv64 || sh -+// +build 386 amd64 amd64p32 alpha arm arm64 loong64 mipsle mips64le mips64p32le nios2 ppc64le riscv riscv64 sh - - package unix - -diff --git a/vendor/golang.org/x/sys/unix/env_unix.go b/vendor/golang.org/x/sys/unix/env_unix.go -index 84178b0..29ccc4d 100644 ---- a/vendor/golang.org/x/sys/unix/env_unix.go -+++ b/vendor/golang.org/x/sys/unix/env_unix.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris -+//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos -+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris zos - - // Unix environment variables. - -diff --git a/vendor/golang.org/x/sys/unix/epoll_zos.go b/vendor/golang.org/x/sys/unix/epoll_zos.go -new file mode 100644 -index 0000000..cedaf7e ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/epoll_zos.go -@@ -0,0 +1,221 @@ -+// Copyright 2020 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build zos && s390x -+// +build zos,s390x -+ -+package unix -+ -+import ( -+ "sync" -+) -+ -+// This file simulates epoll on z/OS using poll. -+ -+// Analogous to epoll_event on Linux. -+// TODO(neeilan): Pad is because the Linux kernel expects a 96-bit struct. We never pass this to the kernel; remove? -+type EpollEvent struct { -+ Events uint32 -+ Fd int32 -+ Pad int32 -+} -+ -+const ( -+ EPOLLERR = 0x8 -+ EPOLLHUP = 0x10 -+ EPOLLIN = 0x1 -+ EPOLLMSG = 0x400 -+ EPOLLOUT = 0x4 -+ EPOLLPRI = 0x2 -+ EPOLLRDBAND = 0x80 -+ EPOLLRDNORM = 0x40 -+ EPOLLWRBAND = 0x200 -+ EPOLLWRNORM = 0x100 -+ EPOLL_CTL_ADD = 0x1 -+ EPOLL_CTL_DEL = 0x2 -+ EPOLL_CTL_MOD = 0x3 -+ // The following constants are part of the epoll API, but represent -+ // currently unsupported functionality on z/OS. -+ // EPOLL_CLOEXEC = 0x80000 -+ // EPOLLET = 0x80000000 -+ // EPOLLONESHOT = 0x40000000 -+ // EPOLLRDHUP = 0x2000 // Typically used with edge-triggered notis -+ // EPOLLEXCLUSIVE = 0x10000000 // Exclusive wake-up mode -+ // EPOLLWAKEUP = 0x20000000 // Relies on Linux's BLOCK_SUSPEND capability -+) -+ -+// TODO(neeilan): We can eliminate these epToPoll / pToEpoll calls by using identical mask values for POLL/EPOLL -+// constants where possible The lower 16 bits of epoll events (uint32) can fit any system poll event (int16). -+ -+// epToPollEvt converts epoll event field to poll equivalent. -+// In epoll, Events is a 32-bit field, while poll uses 16 bits. -+func epToPollEvt(events uint32) int16 { -+ var ep2p = map[uint32]int16{ -+ EPOLLIN: POLLIN, -+ EPOLLOUT: POLLOUT, -+ EPOLLHUP: POLLHUP, -+ EPOLLPRI: POLLPRI, -+ EPOLLERR: POLLERR, -+ } -+ -+ var pollEvts int16 = 0 -+ for epEvt, pEvt := range ep2p { -+ if (events & epEvt) != 0 { -+ pollEvts |= pEvt -+ } -+ } -+ -+ return pollEvts -+} -+ -+// pToEpollEvt converts 16 bit poll event bitfields to 32-bit epoll event fields. -+func pToEpollEvt(revents int16) uint32 { -+ var p2ep = map[int16]uint32{ -+ POLLIN: EPOLLIN, -+ POLLOUT: EPOLLOUT, -+ POLLHUP: EPOLLHUP, -+ POLLPRI: EPOLLPRI, -+ POLLERR: EPOLLERR, -+ } -+ -+ var epollEvts uint32 = 0 -+ for pEvt, epEvt := range p2ep { -+ if (revents & pEvt) != 0 { -+ epollEvts |= epEvt -+ } -+ } -+ -+ return epollEvts -+} -+ -+// Per-process epoll implementation. -+type epollImpl struct { -+ mu sync.Mutex -+ epfd2ep map[int]*eventPoll -+ nextEpfd int -+} -+ -+// eventPoll holds a set of file descriptors being watched by the process. A process can have multiple epoll instances. -+// On Linux, this is an in-kernel data structure accessed through a fd. -+type eventPoll struct { -+ mu sync.Mutex -+ fds map[int]*EpollEvent -+} -+ -+// epoll impl for this process. -+var impl epollImpl = epollImpl{ -+ epfd2ep: make(map[int]*eventPoll), -+ nextEpfd: 0, -+} -+ -+func (e *epollImpl) epollcreate(size int) (epfd int, err error) { -+ e.mu.Lock() -+ defer e.mu.Unlock() -+ epfd = e.nextEpfd -+ e.nextEpfd++ -+ -+ e.epfd2ep[epfd] = &eventPoll{ -+ fds: make(map[int]*EpollEvent), -+ } -+ return epfd, nil -+} -+ -+func (e *epollImpl) epollcreate1(flag int) (fd int, err error) { -+ return e.epollcreate(4) -+} -+ -+func (e *epollImpl) epollctl(epfd int, op int, fd int, event *EpollEvent) (err error) { -+ e.mu.Lock() -+ defer e.mu.Unlock() -+ -+ ep, ok := e.epfd2ep[epfd] -+ if !ok { -+ -+ return EBADF -+ } -+ -+ switch op { -+ case EPOLL_CTL_ADD: -+ // TODO(neeilan): When we make epfds and fds disjoint, detect epoll -+ // loops here (instances watching each other) and return ELOOP. -+ if _, ok := ep.fds[fd]; ok { -+ return EEXIST -+ } -+ ep.fds[fd] = event -+ case EPOLL_CTL_MOD: -+ if _, ok := ep.fds[fd]; !ok { -+ return ENOENT -+ } -+ ep.fds[fd] = event -+ case EPOLL_CTL_DEL: -+ if _, ok := ep.fds[fd]; !ok { -+ return ENOENT -+ } -+ delete(ep.fds, fd) -+ -+ } -+ return nil -+} -+ -+// Must be called while holding ep.mu -+func (ep *eventPoll) getFds() []int { -+ fds := make([]int, len(ep.fds)) -+ for fd := range ep.fds { -+ fds = append(fds, fd) -+ } -+ return fds -+} -+ -+func (e *epollImpl) epollwait(epfd int, events []EpollEvent, msec int) (n int, err error) { -+ e.mu.Lock() // in [rare] case of concurrent epollcreate + epollwait -+ ep, ok := e.epfd2ep[epfd] -+ -+ if !ok { -+ e.mu.Unlock() -+ return 0, EBADF -+ } -+ -+ pollfds := make([]PollFd, 4) -+ for fd, epollevt := range ep.fds { -+ pollfds = append(pollfds, PollFd{Fd: int32(fd), Events: epToPollEvt(epollevt.Events)}) -+ } -+ e.mu.Unlock() -+ -+ n, err = Poll(pollfds, msec) -+ if err != nil { -+ return n, err -+ } -+ -+ i := 0 -+ for _, pFd := range pollfds { -+ if pFd.Revents != 0 { -+ events[i] = EpollEvent{Fd: pFd.Fd, Events: pToEpollEvt(pFd.Revents)} -+ i++ -+ } -+ -+ if i == n { -+ break -+ } -+ } -+ -+ return n, nil -+} -+ -+func EpollCreate(size int) (fd int, err error) { -+ return impl.epollcreate(size) -+} -+ -+func EpollCreate1(flag int) (fd int, err error) { -+ return impl.epollcreate1(flag) -+} -+ -+func EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) { -+ return impl.epollctl(epfd, op, fd, event) -+} -+ -+// Because EpollWait mutates events, the caller is expected to coordinate -+// concurrent access if calling with the same epfd from multiple goroutines. -+func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) { -+ return impl.epollwait(epfd, events, msec) -+} -diff --git a/vendor/golang.org/x/sys/unix/errors_freebsd_386.go b/vendor/golang.org/x/sys/unix/errors_freebsd_386.go -deleted file mode 100644 -index 761db66..0000000 ---- a/vendor/golang.org/x/sys/unix/errors_freebsd_386.go -+++ /dev/null -@@ -1,233 +0,0 @@ --// Copyright 2017 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --// Constants that were deprecated or moved to enums in the FreeBSD headers. Keep --// them here for backwards compatibility. -- --package unix -- --const ( -- DLT_HHDLC = 0x79 -- IFF_SMART = 0x20 -- IFT_1822 = 0x2 -- IFT_A12MPPSWITCH = 0x82 -- IFT_AAL2 = 0xbb -- IFT_AAL5 = 0x31 -- IFT_ADSL = 0x5e -- IFT_AFLANE8023 = 0x3b -- IFT_AFLANE8025 = 0x3c -- IFT_ARAP = 0x58 -- IFT_ARCNET = 0x23 -- IFT_ARCNETPLUS = 0x24 -- IFT_ASYNC = 0x54 -- IFT_ATM = 0x25 -- IFT_ATMDXI = 0x69 -- IFT_ATMFUNI = 0x6a -- IFT_ATMIMA = 0x6b -- IFT_ATMLOGICAL = 0x50 -- IFT_ATMRADIO = 0xbd -- IFT_ATMSUBINTERFACE = 0x86 -- IFT_ATMVCIENDPT = 0xc2 -- IFT_ATMVIRTUAL = 0x95 -- IFT_BGPPOLICYACCOUNTING = 0xa2 -- IFT_BSC = 0x53 -- IFT_CCTEMUL = 0x3d -- IFT_CEPT = 0x13 -- IFT_CES = 0x85 -- IFT_CHANNEL = 0x46 -- IFT_CNR = 0x55 -- IFT_COFFEE = 0x84 -- IFT_COMPOSITELINK = 0x9b -- IFT_DCN = 0x8d -- IFT_DIGITALPOWERLINE = 0x8a -- IFT_DIGITALWRAPPEROVERHEADCHANNEL = 0xba -- IFT_DLSW = 0x4a -- IFT_DOCSCABLEDOWNSTREAM = 0x80 -- IFT_DOCSCABLEMACLAYER = 0x7f -- IFT_DOCSCABLEUPSTREAM = 0x81 -- IFT_DS0 = 0x51 -- IFT_DS0BUNDLE = 0x52 -- IFT_DS1FDL = 0xaa -- IFT_DS3 = 0x1e -- IFT_DTM = 0x8c -- IFT_DVBASILN = 0xac -- IFT_DVBASIOUT = 0xad -- IFT_DVBRCCDOWNSTREAM = 0x93 -- IFT_DVBRCCMACLAYER = 0x92 -- IFT_DVBRCCUPSTREAM = 0x94 -- IFT_ENC = 0xf4 -- IFT_EON = 0x19 -- IFT_EPLRS = 0x57 -- IFT_ESCON = 0x49 -- IFT_ETHER = 0x6 -- IFT_FAITH = 0xf2 -- IFT_FAST = 0x7d -- IFT_FASTETHER = 0x3e -- IFT_FASTETHERFX = 0x45 -- IFT_FDDI = 0xf -- IFT_FIBRECHANNEL = 0x38 -- IFT_FRAMERELAYINTERCONNECT = 0x3a -- IFT_FRAMERELAYMPI = 0x5c -- IFT_FRDLCIENDPT = 0xc1 -- IFT_FRELAY = 0x20 -- IFT_FRELAYDCE = 0x2c -- IFT_FRF16MFRBUNDLE = 0xa3 -- IFT_FRFORWARD = 0x9e -- IFT_G703AT2MB = 0x43 -- IFT_G703AT64K = 0x42 -- IFT_GIF = 0xf0 -- IFT_GIGABITETHERNET = 0x75 -- IFT_GR303IDT = 0xb2 -- IFT_GR303RDT = 0xb1 -- IFT_H323GATEKEEPER = 0xa4 -- IFT_H323PROXY = 0xa5 -- IFT_HDH1822 = 0x3 -- IFT_HDLC = 0x76 -- IFT_HDSL2 = 0xa8 -- IFT_HIPERLAN2 = 0xb7 -- IFT_HIPPI = 0x2f -- IFT_HIPPIINTERFACE = 0x39 -- IFT_HOSTPAD = 0x5a -- IFT_HSSI = 0x2e -- IFT_HY = 0xe -- IFT_IBM370PARCHAN = 0x48 -- IFT_IDSL = 0x9a -- IFT_IEEE80211 = 0x47 -- IFT_IEEE80212 = 0x37 -- IFT_IEEE8023ADLAG = 0xa1 -- IFT_IFGSN = 0x91 -- IFT_IMT = 0xbe -- IFT_INTERLEAVE = 0x7c -- IFT_IP = 0x7e -- IFT_IPFORWARD = 0x8e -- IFT_IPOVERATM = 0x72 -- IFT_IPOVERCDLC = 0x6d -- IFT_IPOVERCLAW = 0x6e -- IFT_IPSWITCH = 0x4e -- IFT_IPXIP = 0xf9 -- IFT_ISDN = 0x3f -- IFT_ISDNBASIC = 0x14 -- IFT_ISDNPRIMARY = 0x15 -- IFT_ISDNS = 0x4b -- IFT_ISDNU = 0x4c -- IFT_ISO88022LLC = 0x29 -- IFT_ISO88023 = 0x7 -- IFT_ISO88024 = 0x8 -- IFT_ISO88025 = 0x9 -- IFT_ISO88025CRFPINT = 0x62 -- IFT_ISO88025DTR = 0x56 -- IFT_ISO88025FIBER = 0x73 -- IFT_ISO88026 = 0xa -- IFT_ISUP = 0xb3 -- IFT_L3IPXVLAN = 0x89 -- IFT_LAPB = 0x10 -- IFT_LAPD = 0x4d -- IFT_LAPF = 0x77 -- IFT_LOCALTALK = 0x2a -- IFT_LOOP = 0x18 -- IFT_MEDIAMAILOVERIP = 0x8b -- IFT_MFSIGLINK = 0xa7 -- IFT_MIOX25 = 0x26 -- IFT_MODEM = 0x30 -- IFT_MPC = 0x71 -- IFT_MPLS = 0xa6 -- IFT_MPLSTUNNEL = 0x96 -- IFT_MSDSL = 0x8f -- IFT_MVL = 0xbf -- IFT_MYRINET = 0x63 -- IFT_NFAS = 0xaf -- IFT_NSIP = 0x1b -- IFT_OPTICALCHANNEL = 0xc3 -- IFT_OPTICALTRANSPORT = 0xc4 -- IFT_OTHER = 0x1 -- IFT_P10 = 0xc -- IFT_P80 = 0xd -- IFT_PARA = 0x22 -- IFT_PFLOG = 0xf6 -- IFT_PFSYNC = 0xf7 -- IFT_PLC = 0xae -- IFT_POS = 0xab -- IFT_PPPMULTILINKBUNDLE = 0x6c -- IFT_PROPBWAP2MP = 0xb8 -- IFT_PROPCNLS = 0x59 -- IFT_PROPDOCSWIRELESSDOWNSTREAM = 0xb5 -- IFT_PROPDOCSWIRELESSMACLAYER = 0xb4 -- IFT_PROPDOCSWIRELESSUPSTREAM = 0xb6 -- IFT_PROPMUX = 0x36 -- IFT_PROPWIRELESSP2P = 0x9d -- IFT_PTPSERIAL = 0x16 -- IFT_PVC = 0xf1 -- IFT_QLLC = 0x44 -- IFT_RADIOMAC = 0xbc -- IFT_RADSL = 0x5f -- IFT_REACHDSL = 0xc0 -- IFT_RFC1483 = 0x9f -- IFT_RS232 = 0x21 -- IFT_RSRB = 0x4f -- IFT_SDLC = 0x11 -- IFT_SDSL = 0x60 -- IFT_SHDSL = 0xa9 -- IFT_SIP = 0x1f -- IFT_SLIP = 0x1c -- IFT_SMDSDXI = 0x2b -- IFT_SMDSICIP = 0x34 -- IFT_SONET = 0x27 -- IFT_SONETOVERHEADCHANNEL = 0xb9 -- IFT_SONETPATH = 0x32 -- IFT_SONETVT = 0x33 -- IFT_SRP = 0x97 -- IFT_SS7SIGLINK = 0x9c -- IFT_STACKTOSTACK = 0x6f -- IFT_STARLAN = 0xb -- IFT_STF = 0xd7 -- IFT_T1 = 0x12 -- IFT_TDLC = 0x74 -- IFT_TERMPAD = 0x5b -- IFT_TR008 = 0xb0 -- IFT_TRANSPHDLC = 0x7b -- IFT_TUNNEL = 0x83 -- IFT_ULTRA = 0x1d -- IFT_USB = 0xa0 -- IFT_V11 = 0x40 -- IFT_V35 = 0x2d -- IFT_V36 = 0x41 -- IFT_V37 = 0x78 -- IFT_VDSL = 0x61 -- IFT_VIRTUALIPADDRESS = 0x70 -- IFT_VOICEEM = 0x64 -- IFT_VOICEENCAP = 0x67 -- IFT_VOICEFXO = 0x65 -- IFT_VOICEFXS = 0x66 -- IFT_VOICEOVERATM = 0x98 -- IFT_VOICEOVERFRAMERELAY = 0x99 -- IFT_VOICEOVERIP = 0x68 -- IFT_X213 = 0x5d -- IFT_X25 = 0x5 -- IFT_X25DDN = 0x4 -- IFT_X25HUNTGROUP = 0x7a -- IFT_X25MLP = 0x79 -- IFT_X25PLE = 0x28 -- IFT_XETHER = 0x1a -- IPPROTO_MAXID = 0x34 -- IPV6_FAITH = 0x1d -- IPV6_MIN_MEMBERSHIPS = 0x1f -- IP_FAITH = 0x16 -- IP_MAX_SOURCE_FILTER = 0x400 -- IP_MIN_MEMBERSHIPS = 0x1f -- MAP_NORESERVE = 0x40 -- MAP_RENAME = 0x20 -- NET_RT_MAXID = 0x6 -- RTF_PRCLONING = 0x10000 -- RTM_OLDADD = 0x9 -- RTM_OLDDEL = 0xa -- RT_CACHING_CONTEXT = 0x1 -- RT_NORTREF = 0x2 -- SIOCADDRT = 0x8030720a -- SIOCALIFADDR = 0x8118691b -- SIOCDELRT = 0x8030720b -- SIOCDLIFADDR = 0x8118691d -- SIOCGLIFADDR = 0xc118691c -- SIOCGLIFPHYADDR = 0xc118694b -- SIOCSLIFPHYADDR = 0x8118694a --) -diff --git a/vendor/golang.org/x/sys/unix/errors_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/errors_freebsd_amd64.go -deleted file mode 100644 -index 070f44b..0000000 ---- a/vendor/golang.org/x/sys/unix/errors_freebsd_amd64.go -+++ /dev/null -@@ -1,233 +0,0 @@ --// Copyright 2017 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --// Constants that were deprecated or moved to enums in the FreeBSD headers. Keep --// them here for backwards compatibility. -- --package unix -- --const ( -- DLT_HHDLC = 0x79 -- IFF_SMART = 0x20 -- IFT_1822 = 0x2 -- IFT_A12MPPSWITCH = 0x82 -- IFT_AAL2 = 0xbb -- IFT_AAL5 = 0x31 -- IFT_ADSL = 0x5e -- IFT_AFLANE8023 = 0x3b -- IFT_AFLANE8025 = 0x3c -- IFT_ARAP = 0x58 -- IFT_ARCNET = 0x23 -- IFT_ARCNETPLUS = 0x24 -- IFT_ASYNC = 0x54 -- IFT_ATM = 0x25 -- IFT_ATMDXI = 0x69 -- IFT_ATMFUNI = 0x6a -- IFT_ATMIMA = 0x6b -- IFT_ATMLOGICAL = 0x50 -- IFT_ATMRADIO = 0xbd -- IFT_ATMSUBINTERFACE = 0x86 -- IFT_ATMVCIENDPT = 0xc2 -- IFT_ATMVIRTUAL = 0x95 -- IFT_BGPPOLICYACCOUNTING = 0xa2 -- IFT_BSC = 0x53 -- IFT_CCTEMUL = 0x3d -- IFT_CEPT = 0x13 -- IFT_CES = 0x85 -- IFT_CHANNEL = 0x46 -- IFT_CNR = 0x55 -- IFT_COFFEE = 0x84 -- IFT_COMPOSITELINK = 0x9b -- IFT_DCN = 0x8d -- IFT_DIGITALPOWERLINE = 0x8a -- IFT_DIGITALWRAPPEROVERHEADCHANNEL = 0xba -- IFT_DLSW = 0x4a -- IFT_DOCSCABLEDOWNSTREAM = 0x80 -- IFT_DOCSCABLEMACLAYER = 0x7f -- IFT_DOCSCABLEUPSTREAM = 0x81 -- IFT_DS0 = 0x51 -- IFT_DS0BUNDLE = 0x52 -- IFT_DS1FDL = 0xaa -- IFT_DS3 = 0x1e -- IFT_DTM = 0x8c -- IFT_DVBASILN = 0xac -- IFT_DVBASIOUT = 0xad -- IFT_DVBRCCDOWNSTREAM = 0x93 -- IFT_DVBRCCMACLAYER = 0x92 -- IFT_DVBRCCUPSTREAM = 0x94 -- IFT_ENC = 0xf4 -- IFT_EON = 0x19 -- IFT_EPLRS = 0x57 -- IFT_ESCON = 0x49 -- IFT_ETHER = 0x6 -- IFT_FAITH = 0xf2 -- IFT_FAST = 0x7d -- IFT_FASTETHER = 0x3e -- IFT_FASTETHERFX = 0x45 -- IFT_FDDI = 0xf -- IFT_FIBRECHANNEL = 0x38 -- IFT_FRAMERELAYINTERCONNECT = 0x3a -- IFT_FRAMERELAYMPI = 0x5c -- IFT_FRDLCIENDPT = 0xc1 -- IFT_FRELAY = 0x20 -- IFT_FRELAYDCE = 0x2c -- IFT_FRF16MFRBUNDLE = 0xa3 -- IFT_FRFORWARD = 0x9e -- IFT_G703AT2MB = 0x43 -- IFT_G703AT64K = 0x42 -- IFT_GIF = 0xf0 -- IFT_GIGABITETHERNET = 0x75 -- IFT_GR303IDT = 0xb2 -- IFT_GR303RDT = 0xb1 -- IFT_H323GATEKEEPER = 0xa4 -- IFT_H323PROXY = 0xa5 -- IFT_HDH1822 = 0x3 -- IFT_HDLC = 0x76 -- IFT_HDSL2 = 0xa8 -- IFT_HIPERLAN2 = 0xb7 -- IFT_HIPPI = 0x2f -- IFT_HIPPIINTERFACE = 0x39 -- IFT_HOSTPAD = 0x5a -- IFT_HSSI = 0x2e -- IFT_HY = 0xe -- IFT_IBM370PARCHAN = 0x48 -- IFT_IDSL = 0x9a -- IFT_IEEE80211 = 0x47 -- IFT_IEEE80212 = 0x37 -- IFT_IEEE8023ADLAG = 0xa1 -- IFT_IFGSN = 0x91 -- IFT_IMT = 0xbe -- IFT_INTERLEAVE = 0x7c -- IFT_IP = 0x7e -- IFT_IPFORWARD = 0x8e -- IFT_IPOVERATM = 0x72 -- IFT_IPOVERCDLC = 0x6d -- IFT_IPOVERCLAW = 0x6e -- IFT_IPSWITCH = 0x4e -- IFT_IPXIP = 0xf9 -- IFT_ISDN = 0x3f -- IFT_ISDNBASIC = 0x14 -- IFT_ISDNPRIMARY = 0x15 -- IFT_ISDNS = 0x4b -- IFT_ISDNU = 0x4c -- IFT_ISO88022LLC = 0x29 -- IFT_ISO88023 = 0x7 -- IFT_ISO88024 = 0x8 -- IFT_ISO88025 = 0x9 -- IFT_ISO88025CRFPINT = 0x62 -- IFT_ISO88025DTR = 0x56 -- IFT_ISO88025FIBER = 0x73 -- IFT_ISO88026 = 0xa -- IFT_ISUP = 0xb3 -- IFT_L3IPXVLAN = 0x89 -- IFT_LAPB = 0x10 -- IFT_LAPD = 0x4d -- IFT_LAPF = 0x77 -- IFT_LOCALTALK = 0x2a -- IFT_LOOP = 0x18 -- IFT_MEDIAMAILOVERIP = 0x8b -- IFT_MFSIGLINK = 0xa7 -- IFT_MIOX25 = 0x26 -- IFT_MODEM = 0x30 -- IFT_MPC = 0x71 -- IFT_MPLS = 0xa6 -- IFT_MPLSTUNNEL = 0x96 -- IFT_MSDSL = 0x8f -- IFT_MVL = 0xbf -- IFT_MYRINET = 0x63 -- IFT_NFAS = 0xaf -- IFT_NSIP = 0x1b -- IFT_OPTICALCHANNEL = 0xc3 -- IFT_OPTICALTRANSPORT = 0xc4 -- IFT_OTHER = 0x1 -- IFT_P10 = 0xc -- IFT_P80 = 0xd -- IFT_PARA = 0x22 -- IFT_PFLOG = 0xf6 -- IFT_PFSYNC = 0xf7 -- IFT_PLC = 0xae -- IFT_POS = 0xab -- IFT_PPPMULTILINKBUNDLE = 0x6c -- IFT_PROPBWAP2MP = 0xb8 -- IFT_PROPCNLS = 0x59 -- IFT_PROPDOCSWIRELESSDOWNSTREAM = 0xb5 -- IFT_PROPDOCSWIRELESSMACLAYER = 0xb4 -- IFT_PROPDOCSWIRELESSUPSTREAM = 0xb6 -- IFT_PROPMUX = 0x36 -- IFT_PROPWIRELESSP2P = 0x9d -- IFT_PTPSERIAL = 0x16 -- IFT_PVC = 0xf1 -- IFT_QLLC = 0x44 -- IFT_RADIOMAC = 0xbc -- IFT_RADSL = 0x5f -- IFT_REACHDSL = 0xc0 -- IFT_RFC1483 = 0x9f -- IFT_RS232 = 0x21 -- IFT_RSRB = 0x4f -- IFT_SDLC = 0x11 -- IFT_SDSL = 0x60 -- IFT_SHDSL = 0xa9 -- IFT_SIP = 0x1f -- IFT_SLIP = 0x1c -- IFT_SMDSDXI = 0x2b -- IFT_SMDSICIP = 0x34 -- IFT_SONET = 0x27 -- IFT_SONETOVERHEADCHANNEL = 0xb9 -- IFT_SONETPATH = 0x32 -- IFT_SONETVT = 0x33 -- IFT_SRP = 0x97 -- IFT_SS7SIGLINK = 0x9c -- IFT_STACKTOSTACK = 0x6f -- IFT_STARLAN = 0xb -- IFT_STF = 0xd7 -- IFT_T1 = 0x12 -- IFT_TDLC = 0x74 -- IFT_TERMPAD = 0x5b -- IFT_TR008 = 0xb0 -- IFT_TRANSPHDLC = 0x7b -- IFT_TUNNEL = 0x83 -- IFT_ULTRA = 0x1d -- IFT_USB = 0xa0 -- IFT_V11 = 0x40 -- IFT_V35 = 0x2d -- IFT_V36 = 0x41 -- IFT_V37 = 0x78 -- IFT_VDSL = 0x61 -- IFT_VIRTUALIPADDRESS = 0x70 -- IFT_VOICEEM = 0x64 -- IFT_VOICEENCAP = 0x67 -- IFT_VOICEFXO = 0x65 -- IFT_VOICEFXS = 0x66 -- IFT_VOICEOVERATM = 0x98 -- IFT_VOICEOVERFRAMERELAY = 0x99 -- IFT_VOICEOVERIP = 0x68 -- IFT_X213 = 0x5d -- IFT_X25 = 0x5 -- IFT_X25DDN = 0x4 -- IFT_X25HUNTGROUP = 0x7a -- IFT_X25MLP = 0x79 -- IFT_X25PLE = 0x28 -- IFT_XETHER = 0x1a -- IPPROTO_MAXID = 0x34 -- IPV6_FAITH = 0x1d -- IPV6_MIN_MEMBERSHIPS = 0x1f -- IP_FAITH = 0x16 -- IP_MAX_SOURCE_FILTER = 0x400 -- IP_MIN_MEMBERSHIPS = 0x1f -- MAP_NORESERVE = 0x40 -- MAP_RENAME = 0x20 -- NET_RT_MAXID = 0x6 -- RTF_PRCLONING = 0x10000 -- RTM_OLDADD = 0x9 -- RTM_OLDDEL = 0xa -- RT_CACHING_CONTEXT = 0x1 -- RT_NORTREF = 0x2 -- SIOCADDRT = 0x8040720a -- SIOCALIFADDR = 0x8118691b -- SIOCDELRT = 0x8040720b -- SIOCDLIFADDR = 0x8118691d -- SIOCGLIFADDR = 0xc118691c -- SIOCGLIFPHYADDR = 0xc118694b -- SIOCSLIFPHYADDR = 0x8118694a --) -diff --git a/vendor/golang.org/x/sys/unix/errors_freebsd_arm.go b/vendor/golang.org/x/sys/unix/errors_freebsd_arm.go -deleted file mode 100644 -index 856dca3..0000000 ---- a/vendor/golang.org/x/sys/unix/errors_freebsd_arm.go -+++ /dev/null -@@ -1,226 +0,0 @@ --// Copyright 2017 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --package unix -- --const ( -- IFT_1822 = 0x2 -- IFT_A12MPPSWITCH = 0x82 -- IFT_AAL2 = 0xbb -- IFT_AAL5 = 0x31 -- IFT_ADSL = 0x5e -- IFT_AFLANE8023 = 0x3b -- IFT_AFLANE8025 = 0x3c -- IFT_ARAP = 0x58 -- IFT_ARCNET = 0x23 -- IFT_ARCNETPLUS = 0x24 -- IFT_ASYNC = 0x54 -- IFT_ATM = 0x25 -- IFT_ATMDXI = 0x69 -- IFT_ATMFUNI = 0x6a -- IFT_ATMIMA = 0x6b -- IFT_ATMLOGICAL = 0x50 -- IFT_ATMRADIO = 0xbd -- IFT_ATMSUBINTERFACE = 0x86 -- IFT_ATMVCIENDPT = 0xc2 -- IFT_ATMVIRTUAL = 0x95 -- IFT_BGPPOLICYACCOUNTING = 0xa2 -- IFT_BSC = 0x53 -- IFT_CCTEMUL = 0x3d -- IFT_CEPT = 0x13 -- IFT_CES = 0x85 -- IFT_CHANNEL = 0x46 -- IFT_CNR = 0x55 -- IFT_COFFEE = 0x84 -- IFT_COMPOSITELINK = 0x9b -- IFT_DCN = 0x8d -- IFT_DIGITALPOWERLINE = 0x8a -- IFT_DIGITALWRAPPEROVERHEADCHANNEL = 0xba -- IFT_DLSW = 0x4a -- IFT_DOCSCABLEDOWNSTREAM = 0x80 -- IFT_DOCSCABLEMACLAYER = 0x7f -- IFT_DOCSCABLEUPSTREAM = 0x81 -- IFT_DS0 = 0x51 -- IFT_DS0BUNDLE = 0x52 -- IFT_DS1FDL = 0xaa -- IFT_DS3 = 0x1e -- IFT_DTM = 0x8c -- IFT_DVBASILN = 0xac -- IFT_DVBASIOUT = 0xad -- IFT_DVBRCCDOWNSTREAM = 0x93 -- IFT_DVBRCCMACLAYER = 0x92 -- IFT_DVBRCCUPSTREAM = 0x94 -- IFT_ENC = 0xf4 -- IFT_EON = 0x19 -- IFT_EPLRS = 0x57 -- IFT_ESCON = 0x49 -- IFT_ETHER = 0x6 -- IFT_FAST = 0x7d -- IFT_FASTETHER = 0x3e -- IFT_FASTETHERFX = 0x45 -- IFT_FDDI = 0xf -- IFT_FIBRECHANNEL = 0x38 -- IFT_FRAMERELAYINTERCONNECT = 0x3a -- IFT_FRAMERELAYMPI = 0x5c -- IFT_FRDLCIENDPT = 0xc1 -- IFT_FRELAY = 0x20 -- IFT_FRELAYDCE = 0x2c -- IFT_FRF16MFRBUNDLE = 0xa3 -- IFT_FRFORWARD = 0x9e -- IFT_G703AT2MB = 0x43 -- IFT_G703AT64K = 0x42 -- IFT_GIF = 0xf0 -- IFT_GIGABITETHERNET = 0x75 -- IFT_GR303IDT = 0xb2 -- IFT_GR303RDT = 0xb1 -- IFT_H323GATEKEEPER = 0xa4 -- IFT_H323PROXY = 0xa5 -- IFT_HDH1822 = 0x3 -- IFT_HDLC = 0x76 -- IFT_HDSL2 = 0xa8 -- IFT_HIPERLAN2 = 0xb7 -- IFT_HIPPI = 0x2f -- IFT_HIPPIINTERFACE = 0x39 -- IFT_HOSTPAD = 0x5a -- IFT_HSSI = 0x2e -- IFT_HY = 0xe -- IFT_IBM370PARCHAN = 0x48 -- IFT_IDSL = 0x9a -- IFT_IEEE80211 = 0x47 -- IFT_IEEE80212 = 0x37 -- IFT_IEEE8023ADLAG = 0xa1 -- IFT_IFGSN = 0x91 -- IFT_IMT = 0xbe -- IFT_INTERLEAVE = 0x7c -- IFT_IP = 0x7e -- IFT_IPFORWARD = 0x8e -- IFT_IPOVERATM = 0x72 -- IFT_IPOVERCDLC = 0x6d -- IFT_IPOVERCLAW = 0x6e -- IFT_IPSWITCH = 0x4e -- IFT_ISDN = 0x3f -- IFT_ISDNBASIC = 0x14 -- IFT_ISDNPRIMARY = 0x15 -- IFT_ISDNS = 0x4b -- IFT_ISDNU = 0x4c -- IFT_ISO88022LLC = 0x29 -- IFT_ISO88023 = 0x7 -- IFT_ISO88024 = 0x8 -- IFT_ISO88025 = 0x9 -- IFT_ISO88025CRFPINT = 0x62 -- IFT_ISO88025DTR = 0x56 -- IFT_ISO88025FIBER = 0x73 -- IFT_ISO88026 = 0xa -- IFT_ISUP = 0xb3 -- IFT_L3IPXVLAN = 0x89 -- IFT_LAPB = 0x10 -- IFT_LAPD = 0x4d -- IFT_LAPF = 0x77 -- IFT_LOCALTALK = 0x2a -- IFT_LOOP = 0x18 -- IFT_MEDIAMAILOVERIP = 0x8b -- IFT_MFSIGLINK = 0xa7 -- IFT_MIOX25 = 0x26 -- IFT_MODEM = 0x30 -- IFT_MPC = 0x71 -- IFT_MPLS = 0xa6 -- IFT_MPLSTUNNEL = 0x96 -- IFT_MSDSL = 0x8f -- IFT_MVL = 0xbf -- IFT_MYRINET = 0x63 -- IFT_NFAS = 0xaf -- IFT_NSIP = 0x1b -- IFT_OPTICALCHANNEL = 0xc3 -- IFT_OPTICALTRANSPORT = 0xc4 -- IFT_OTHER = 0x1 -- IFT_P10 = 0xc -- IFT_P80 = 0xd -- IFT_PARA = 0x22 -- IFT_PFLOG = 0xf6 -- IFT_PFSYNC = 0xf7 -- IFT_PLC = 0xae -- IFT_POS = 0xab -- IFT_PPPMULTILINKBUNDLE = 0x6c -- IFT_PROPBWAP2MP = 0xb8 -- IFT_PROPCNLS = 0x59 -- IFT_PROPDOCSWIRELESSDOWNSTREAM = 0xb5 -- IFT_PROPDOCSWIRELESSMACLAYER = 0xb4 -- IFT_PROPDOCSWIRELESSUPSTREAM = 0xb6 -- IFT_PROPMUX = 0x36 -- IFT_PROPWIRELESSP2P = 0x9d -- IFT_PTPSERIAL = 0x16 -- IFT_PVC = 0xf1 -- IFT_QLLC = 0x44 -- IFT_RADIOMAC = 0xbc -- IFT_RADSL = 0x5f -- IFT_REACHDSL = 0xc0 -- IFT_RFC1483 = 0x9f -- IFT_RS232 = 0x21 -- IFT_RSRB = 0x4f -- IFT_SDLC = 0x11 -- IFT_SDSL = 0x60 -- IFT_SHDSL = 0xa9 -- IFT_SIP = 0x1f -- IFT_SLIP = 0x1c -- IFT_SMDSDXI = 0x2b -- IFT_SMDSICIP = 0x34 -- IFT_SONET = 0x27 -- IFT_SONETOVERHEADCHANNEL = 0xb9 -- IFT_SONETPATH = 0x32 -- IFT_SONETVT = 0x33 -- IFT_SRP = 0x97 -- IFT_SS7SIGLINK = 0x9c -- IFT_STACKTOSTACK = 0x6f -- IFT_STARLAN = 0xb -- IFT_STF = 0xd7 -- IFT_T1 = 0x12 -- IFT_TDLC = 0x74 -- IFT_TERMPAD = 0x5b -- IFT_TR008 = 0xb0 -- IFT_TRANSPHDLC = 0x7b -- IFT_TUNNEL = 0x83 -- IFT_ULTRA = 0x1d -- IFT_USB = 0xa0 -- IFT_V11 = 0x40 -- IFT_V35 = 0x2d -- IFT_V36 = 0x41 -- IFT_V37 = 0x78 -- IFT_VDSL = 0x61 -- IFT_VIRTUALIPADDRESS = 0x70 -- IFT_VOICEEM = 0x64 -- IFT_VOICEENCAP = 0x67 -- IFT_VOICEFXO = 0x65 -- IFT_VOICEFXS = 0x66 -- IFT_VOICEOVERATM = 0x98 -- IFT_VOICEOVERFRAMERELAY = 0x99 -- IFT_VOICEOVERIP = 0x68 -- IFT_X213 = 0x5d -- IFT_X25 = 0x5 -- IFT_X25DDN = 0x4 -- IFT_X25HUNTGROUP = 0x7a -- IFT_X25MLP = 0x79 -- IFT_X25PLE = 0x28 -- IFT_XETHER = 0x1a -- -- // missing constants on FreeBSD-11.1-RELEASE, copied from old values in ztypes_freebsd_arm.go -- IFF_SMART = 0x20 -- IFT_FAITH = 0xf2 -- IFT_IPXIP = 0xf9 -- IPPROTO_MAXID = 0x34 -- IPV6_FAITH = 0x1d -- IP_FAITH = 0x16 -- MAP_NORESERVE = 0x40 -- MAP_RENAME = 0x20 -- NET_RT_MAXID = 0x6 -- RTF_PRCLONING = 0x10000 -- RTM_OLDADD = 0x9 -- RTM_OLDDEL = 0xa -- SIOCADDRT = 0x8030720a -- SIOCALIFADDR = 0x8118691b -- SIOCDELRT = 0x8030720b -- SIOCDLIFADDR = 0x8118691d -- SIOCGLIFADDR = 0xc118691c -- SIOCGLIFPHYADDR = 0xc118694b -- SIOCSLIFPHYADDR = 0x8118694a --) -diff --git a/vendor/golang.org/x/sys/unix/errors_freebsd_arm64.go b/vendor/golang.org/x/sys/unix/errors_freebsd_arm64.go -deleted file mode 100644 -index 946dcf3..0000000 ---- a/vendor/golang.org/x/sys/unix/errors_freebsd_arm64.go -+++ /dev/null -@@ -1,17 +0,0 @@ --// Copyright 2020 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --// Constants that were deprecated or moved to enums in the FreeBSD headers. Keep --// them here for backwards compatibility. -- --package unix -- --const ( -- DLT_HHDLC = 0x79 -- IPV6_MIN_MEMBERSHIPS = 0x1f -- IP_MAX_SOURCE_FILTER = 0x400 -- IP_MIN_MEMBERSHIPS = 0x1f -- RT_CACHING_CONTEXT = 0x1 -- RT_NORTREF = 0x2 --) -diff --git a/vendor/golang.org/x/sys/unix/fcntl.go b/vendor/golang.org/x/sys/unix/fcntl.go -index 4dc5348..e9b9912 100644 ---- a/vendor/golang.org/x/sys/unix/fcntl.go -+++ b/vendor/golang.org/x/sys/unix/fcntl.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build dragonfly || freebsd || linux || netbsd || openbsd - // +build dragonfly freebsd linux netbsd openbsd - - package unix -diff --git a/vendor/golang.org/x/sys/unix/fcntl_darwin.go b/vendor/golang.org/x/sys/unix/fcntl_darwin.go -index 5868a4a..a9911c7 100644 ---- a/vendor/golang.org/x/sys/unix/fcntl_darwin.go -+++ b/vendor/golang.org/x/sys/unix/fcntl_darwin.go -@@ -16,3 +16,9 @@ func FcntlFlock(fd uintptr, cmd int, lk *Flock_t) error { - _, err := fcntl(int(fd), cmd, int(uintptr(unsafe.Pointer(lk)))) - return err - } -+ -+// FcntlFstore performs a fcntl syscall for the F_PREALLOCATE command. -+func FcntlFstore(fd uintptr, cmd int, fstore *Fstore_t) error { -+ _, err := fcntl(int(fd), cmd, int(uintptr(unsafe.Pointer(fstore)))) -+ return err -+} -diff --git a/vendor/golang.org/x/sys/unix/fcntl_linux_32bit.go b/vendor/golang.org/x/sys/unix/fcntl_linux_32bit.go -index fc0e50e..29d4480 100644 ---- a/vendor/golang.org/x/sys/unix/fcntl_linux_32bit.go -+++ b/vendor/golang.org/x/sys/unix/fcntl_linux_32bit.go -@@ -1,9 +1,10 @@ --// +build linux,386 linux,arm linux,mips linux,mipsle -- - // Copyright 2014 The Go Authors. All rights reserved. - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build (linux && 386) || (linux && arm) || (linux && mips) || (linux && mipsle) || (linux && ppc) -+// +build linux,386 linux,arm linux,mips linux,mipsle linux,ppc -+ - package unix - - func init() { -diff --git a/vendor/golang.org/x/sys/unix/fdset.go b/vendor/golang.org/x/sys/unix/fdset.go -index b27be0a..a8068f9 100644 ---- a/vendor/golang.org/x/sys/unix/fdset.go -+++ b/vendor/golang.org/x/sys/unix/fdset.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris -+//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos -+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris zos - - package unix - -diff --git a/vendor/golang.org/x/sys/unix/fstatfs_zos.go b/vendor/golang.org/x/sys/unix/fstatfs_zos.go -new file mode 100644 -index 0000000..e377cc9 ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/fstatfs_zos.go -@@ -0,0 +1,164 @@ -+// Copyright 2020 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build zos && s390x -+// +build zos,s390x -+ -+package unix -+ -+import ( -+ "unsafe" -+) -+ -+// This file simulates fstatfs on z/OS using fstatvfs and w_getmntent. -+ -+func Fstatfs(fd int, stat *Statfs_t) (err error) { -+ var stat_v Statvfs_t -+ err = Fstatvfs(fd, &stat_v) -+ if err == nil { -+ // populate stat -+ stat.Type = 0 -+ stat.Bsize = stat_v.Bsize -+ stat.Blocks = stat_v.Blocks -+ stat.Bfree = stat_v.Bfree -+ stat.Bavail = stat_v.Bavail -+ stat.Files = stat_v.Files -+ stat.Ffree = stat_v.Ffree -+ stat.Fsid = stat_v.Fsid -+ stat.Namelen = stat_v.Namemax -+ stat.Frsize = stat_v.Frsize -+ stat.Flags = stat_v.Flag -+ for passn := 0; passn < 5; passn++ { -+ switch passn { -+ case 0: -+ err = tryGetmntent64(stat) -+ break -+ case 1: -+ err = tryGetmntent128(stat) -+ break -+ case 2: -+ err = tryGetmntent256(stat) -+ break -+ case 3: -+ err = tryGetmntent512(stat) -+ break -+ case 4: -+ err = tryGetmntent1024(stat) -+ break -+ default: -+ break -+ } -+ //proceed to return if: err is nil (found), err is nonnil but not ERANGE (another error occurred) -+ if err == nil || err != nil && err != ERANGE { -+ break -+ } -+ } -+ } -+ return err -+} -+ -+func tryGetmntent64(stat *Statfs_t) (err error) { -+ var mnt_ent_buffer struct { -+ header W_Mnth -+ filesys_info [64]W_Mntent -+ } -+ var buffer_size int = int(unsafe.Sizeof(mnt_ent_buffer)) -+ fs_count, err := W_Getmntent((*byte)(unsafe.Pointer(&mnt_ent_buffer)), buffer_size) -+ if err != nil { -+ return err -+ } -+ err = ERANGE //return ERANGE if no match is found in this batch -+ for i := 0; i < fs_count; i++ { -+ if stat.Fsid == uint64(mnt_ent_buffer.filesys_info[i].Dev) { -+ stat.Type = uint32(mnt_ent_buffer.filesys_info[i].Fstname[0]) -+ err = nil -+ break -+ } -+ } -+ return err -+} -+ -+func tryGetmntent128(stat *Statfs_t) (err error) { -+ var mnt_ent_buffer struct { -+ header W_Mnth -+ filesys_info [128]W_Mntent -+ } -+ var buffer_size int = int(unsafe.Sizeof(mnt_ent_buffer)) -+ fs_count, err := W_Getmntent((*byte)(unsafe.Pointer(&mnt_ent_buffer)), buffer_size) -+ if err != nil { -+ return err -+ } -+ err = ERANGE //return ERANGE if no match is found in this batch -+ for i := 0; i < fs_count; i++ { -+ if stat.Fsid == uint64(mnt_ent_buffer.filesys_info[i].Dev) { -+ stat.Type = uint32(mnt_ent_buffer.filesys_info[i].Fstname[0]) -+ err = nil -+ break -+ } -+ } -+ return err -+} -+ -+func tryGetmntent256(stat *Statfs_t) (err error) { -+ var mnt_ent_buffer struct { -+ header W_Mnth -+ filesys_info [256]W_Mntent -+ } -+ var buffer_size int = int(unsafe.Sizeof(mnt_ent_buffer)) -+ fs_count, err := W_Getmntent((*byte)(unsafe.Pointer(&mnt_ent_buffer)), buffer_size) -+ if err != nil { -+ return err -+ } -+ err = ERANGE //return ERANGE if no match is found in this batch -+ for i := 0; i < fs_count; i++ { -+ if stat.Fsid == uint64(mnt_ent_buffer.filesys_info[i].Dev) { -+ stat.Type = uint32(mnt_ent_buffer.filesys_info[i].Fstname[0]) -+ err = nil -+ break -+ } -+ } -+ return err -+} -+ -+func tryGetmntent512(stat *Statfs_t) (err error) { -+ var mnt_ent_buffer struct { -+ header W_Mnth -+ filesys_info [512]W_Mntent -+ } -+ var buffer_size int = int(unsafe.Sizeof(mnt_ent_buffer)) -+ fs_count, err := W_Getmntent((*byte)(unsafe.Pointer(&mnt_ent_buffer)), buffer_size) -+ if err != nil { -+ return err -+ } -+ err = ERANGE //return ERANGE if no match is found in this batch -+ for i := 0; i < fs_count; i++ { -+ if stat.Fsid == uint64(mnt_ent_buffer.filesys_info[i].Dev) { -+ stat.Type = uint32(mnt_ent_buffer.filesys_info[i].Fstname[0]) -+ err = nil -+ break -+ } -+ } -+ return err -+} -+ -+func tryGetmntent1024(stat *Statfs_t) (err error) { -+ var mnt_ent_buffer struct { -+ header W_Mnth -+ filesys_info [1024]W_Mntent -+ } -+ var buffer_size int = int(unsafe.Sizeof(mnt_ent_buffer)) -+ fs_count, err := W_Getmntent((*byte)(unsafe.Pointer(&mnt_ent_buffer)), buffer_size) -+ if err != nil { -+ return err -+ } -+ err = ERANGE //return ERANGE if no match is found in this batch -+ for i := 0; i < fs_count; i++ { -+ if stat.Fsid == uint64(mnt_ent_buffer.filesys_info[i].Dev) { -+ stat.Type = uint32(mnt_ent_buffer.filesys_info[i].Fstname[0]) -+ err = nil -+ break -+ } -+ } -+ return err -+} -diff --git a/vendor/golang.org/x/sys/unix/gccgo.go b/vendor/golang.org/x/sys/unix/gccgo.go -index cd6f5a6..0dee232 100644 ---- a/vendor/golang.org/x/sys/unix/gccgo.go -+++ b/vendor/golang.org/x/sys/unix/gccgo.go -@@ -2,8 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build gccgo --// +build !aix -+//go:build gccgo && !aix -+// +build gccgo,!aix - - package unix - -@@ -12,10 +12,8 @@ import "syscall" - // We can't use the gc-syntax .s files for gccgo. On the plus side - // much of the functionality can be written directly in Go. - --//extern gccgoRealSyscallNoError - func realSyscallNoError(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r uintptr) - --//extern gccgoRealSyscall - func realSyscall(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r, errno uintptr) - - func SyscallNoError(trap, a1, a2, a3 uintptr) (r1, r2 uintptr) { -diff --git a/vendor/golang.org/x/sys/unix/gccgo_c.c b/vendor/golang.org/x/sys/unix/gccgo_c.c -index c44730c..2cb1fef 100644 ---- a/vendor/golang.org/x/sys/unix/gccgo_c.c -+++ b/vendor/golang.org/x/sys/unix/gccgo_c.c -@@ -21,6 +21,9 @@ struct ret { - uintptr_t err; - }; - -+struct ret gccgoRealSyscall(uintptr_t trap, uintptr_t a1, uintptr_t a2, uintptr_t a3, uintptr_t a4, uintptr_t a5, uintptr_t a6, uintptr_t a7, uintptr_t a8, uintptr_t a9) -+ __asm__(GOSYM_PREFIX GOPKGPATH ".realSyscall"); -+ - struct ret - gccgoRealSyscall(uintptr_t trap, uintptr_t a1, uintptr_t a2, uintptr_t a3, uintptr_t a4, uintptr_t a5, uintptr_t a6, uintptr_t a7, uintptr_t a8, uintptr_t a9) - { -@@ -32,6 +35,9 @@ gccgoRealSyscall(uintptr_t trap, uintptr_t a1, uintptr_t a2, uintptr_t a3, uintp - return r; - } - -+uintptr_t gccgoRealSyscallNoError(uintptr_t trap, uintptr_t a1, uintptr_t a2, uintptr_t a3, uintptr_t a4, uintptr_t a5, uintptr_t a6, uintptr_t a7, uintptr_t a8, uintptr_t a9) -+ __asm__(GOSYM_PREFIX GOPKGPATH ".realSyscallNoError"); -+ - uintptr_t - gccgoRealSyscallNoError(uintptr_t trap, uintptr_t a1, uintptr_t a2, uintptr_t a3, uintptr_t a4, uintptr_t a5, uintptr_t a6, uintptr_t a7, uintptr_t a8, uintptr_t a9) - { -diff --git a/vendor/golang.org/x/sys/unix/gccgo_linux_amd64.go b/vendor/golang.org/x/sys/unix/gccgo_linux_amd64.go -index 251a977..e60e49a 100644 ---- a/vendor/golang.org/x/sys/unix/gccgo_linux_amd64.go -+++ b/vendor/golang.org/x/sys/unix/gccgo_linux_amd64.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build gccgo && linux && amd64 - // +build gccgo,linux,amd64 - - package unix -diff --git a/vendor/golang.org/x/sys/unix/ifreq_linux.go b/vendor/golang.org/x/sys/unix/ifreq_linux.go -new file mode 100644 -index 0000000..15721a5 ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/ifreq_linux.go -@@ -0,0 +1,142 @@ -+// Copyright 2021 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build linux -+// +build linux -+ -+package unix -+ -+import ( -+ "unsafe" -+) -+ -+// Helpers for dealing with ifreq since it contains a union and thus requires a -+// lot of unsafe.Pointer casts to use properly. -+ -+// An Ifreq is a type-safe wrapper around the raw ifreq struct. An Ifreq -+// contains an interface name and a union of arbitrary data which can be -+// accessed using the Ifreq's methods. To create an Ifreq, use the NewIfreq -+// function. -+// -+// Use the Name method to access the stored interface name. The union data -+// fields can be get and set using the following methods: -+// - Uint16/SetUint16: flags -+// - Uint32/SetUint32: ifindex, metric, mtu -+type Ifreq struct{ raw ifreq } -+ -+// NewIfreq creates an Ifreq with the input network interface name after -+// validating the name does not exceed IFNAMSIZ-1 (trailing NULL required) -+// bytes. -+func NewIfreq(name string) (*Ifreq, error) { -+ // Leave room for terminating NULL byte. -+ if len(name) >= IFNAMSIZ { -+ return nil, EINVAL -+ } -+ -+ var ifr ifreq -+ copy(ifr.Ifrn[:], name) -+ -+ return &Ifreq{raw: ifr}, nil -+} -+ -+// TODO(mdlayher): get/set methods for hardware address sockaddr, char array, etc. -+ -+// Name returns the interface name associated with the Ifreq. -+func (ifr *Ifreq) Name() string { -+ return ByteSliceToString(ifr.raw.Ifrn[:]) -+} -+ -+// According to netdevice(7), only AF_INET addresses are returned for numerous -+// sockaddr ioctls. For convenience, we expose these as Inet4Addr since the Port -+// field and other data is always empty. -+ -+// Inet4Addr returns the Ifreq union data from an embedded sockaddr as a C -+// in_addr/Go []byte (4-byte IPv4 address) value. If the sockaddr family is not -+// AF_INET, an error is returned. -+func (ifr *Ifreq) Inet4Addr() ([]byte, error) { -+ raw := *(*RawSockaddrInet4)(unsafe.Pointer(&ifr.raw.Ifru[:SizeofSockaddrInet4][0])) -+ if raw.Family != AF_INET { -+ // Cannot safely interpret raw.Addr bytes as an IPv4 address. -+ return nil, EINVAL -+ } -+ -+ return raw.Addr[:], nil -+} -+ -+// SetInet4Addr sets a C in_addr/Go []byte (4-byte IPv4 address) value in an -+// embedded sockaddr within the Ifreq's union data. v must be 4 bytes in length -+// or an error will be returned. -+func (ifr *Ifreq) SetInet4Addr(v []byte) error { -+ if len(v) != 4 { -+ return EINVAL -+ } -+ -+ var addr [4]byte -+ copy(addr[:], v) -+ -+ ifr.clear() -+ *(*RawSockaddrInet4)( -+ unsafe.Pointer(&ifr.raw.Ifru[:SizeofSockaddrInet4][0]), -+ ) = RawSockaddrInet4{ -+ // Always set IP family as ioctls would require it anyway. -+ Family: AF_INET, -+ Addr: addr, -+ } -+ -+ return nil -+} -+ -+// Uint16 returns the Ifreq union data as a C short/Go uint16 value. -+func (ifr *Ifreq) Uint16() uint16 { -+ return *(*uint16)(unsafe.Pointer(&ifr.raw.Ifru[:2][0])) -+} -+ -+// SetUint16 sets a C short/Go uint16 value as the Ifreq's union data. -+func (ifr *Ifreq) SetUint16(v uint16) { -+ ifr.clear() -+ *(*uint16)(unsafe.Pointer(&ifr.raw.Ifru[:2][0])) = v -+} -+ -+// Uint32 returns the Ifreq union data as a C int/Go uint32 value. -+func (ifr *Ifreq) Uint32() uint32 { -+ return *(*uint32)(unsafe.Pointer(&ifr.raw.Ifru[:4][0])) -+} -+ -+// SetUint32 sets a C int/Go uint32 value as the Ifreq's union data. -+func (ifr *Ifreq) SetUint32(v uint32) { -+ ifr.clear() -+ *(*uint32)(unsafe.Pointer(&ifr.raw.Ifru[:4][0])) = v -+} -+ -+// clear zeroes the ifreq's union field to prevent trailing garbage data from -+// being sent to the kernel if an ifreq is reused. -+func (ifr *Ifreq) clear() { -+ for i := range ifr.raw.Ifru { -+ ifr.raw.Ifru[i] = 0 -+ } -+} -+ -+// TODO(mdlayher): export as IfreqData? For now we can provide helpers such as -+// IoctlGetEthtoolDrvinfo which use these APIs under the hood. -+ -+// An ifreqData is an Ifreq which carries pointer data. To produce an ifreqData, -+// use the Ifreq.withData method. -+type ifreqData struct { -+ name [IFNAMSIZ]byte -+ // A type separate from ifreq is required in order to comply with the -+ // unsafe.Pointer rules since the "pointer-ness" of data would not be -+ // preserved if it were cast into the byte array of a raw ifreq. -+ data unsafe.Pointer -+ // Pad to the same size as ifreq. -+ _ [len(ifreq{}.Ifru) - SizeofPtr]byte -+} -+ -+// withData produces an ifreqData with the pointer p set for ioctls which require -+// arbitrary pointer data. -+func (ifr Ifreq) withData(p unsafe.Pointer) ifreqData { -+ return ifreqData{ -+ name: ifr.raw.Ifrn, -+ data: p, -+ } -+} -diff --git a/vendor/golang.org/x/sys/unix/ioctl.go b/vendor/golang.org/x/sys/unix/ioctl.go -index 3559e5d..6c7ad05 100644 ---- a/vendor/golang.org/x/sys/unix/ioctl.go -+++ b/vendor/golang.org/x/sys/unix/ioctl.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris - // +build aix darwin dragonfly freebsd linux netbsd openbsd solaris - - package unix -@@ -20,6 +21,15 @@ func IoctlSetInt(fd int, req uint, value int) error { - return ioctl(fd, req, uintptr(value)) - } - -+// IoctlSetPointerInt performs an ioctl operation which sets an -+// integer value on fd, using the specified request number. The ioctl -+// argument is called with a pointer to the integer value, rather than -+// passing the integer value directly. -+func IoctlSetPointerInt(fd int, req uint, value int) error { -+ v := int32(value) -+ return ioctl(fd, req, uintptr(unsafe.Pointer(&v))) -+} -+ - // IoctlSetWinsize performs an ioctl on fd with a *Winsize argument. - // - // To change fd's window size, the req argument should be TIOCSWINSZ. -diff --git a/vendor/golang.org/x/sys/unix/ioctl_linux.go b/vendor/golang.org/x/sys/unix/ioctl_linux.go -new file mode 100644 -index 0000000..0d12c08 ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/ioctl_linux.go -@@ -0,0 +1,233 @@ -+// Copyright 2021 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+package unix -+ -+import "unsafe" -+ -+// IoctlRetInt performs an ioctl operation specified by req on a device -+// associated with opened file descriptor fd, and returns a non-negative -+// integer that is returned by the ioctl syscall. -+func IoctlRetInt(fd int, req uint) (int, error) { -+ ret, _, err := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), 0) -+ if err != 0 { -+ return 0, err -+ } -+ return int(ret), nil -+} -+ -+func IoctlGetUint32(fd int, req uint) (uint32, error) { -+ var value uint32 -+ err := ioctlPtr(fd, req, unsafe.Pointer(&value)) -+ return value, err -+} -+ -+func IoctlGetRTCTime(fd int) (*RTCTime, error) { -+ var value RTCTime -+ err := ioctlPtr(fd, RTC_RD_TIME, unsafe.Pointer(&value)) -+ return &value, err -+} -+ -+func IoctlSetRTCTime(fd int, value *RTCTime) error { -+ return ioctlPtr(fd, RTC_SET_TIME, unsafe.Pointer(value)) -+} -+ -+func IoctlGetRTCWkAlrm(fd int) (*RTCWkAlrm, error) { -+ var value RTCWkAlrm -+ err := ioctlPtr(fd, RTC_WKALM_RD, unsafe.Pointer(&value)) -+ return &value, err -+} -+ -+func IoctlSetRTCWkAlrm(fd int, value *RTCWkAlrm) error { -+ return ioctlPtr(fd, RTC_WKALM_SET, unsafe.Pointer(value)) -+} -+ -+// IoctlGetEthtoolDrvinfo fetches ethtool driver information for the network -+// device specified by ifname. -+func IoctlGetEthtoolDrvinfo(fd int, ifname string) (*EthtoolDrvinfo, error) { -+ ifr, err := NewIfreq(ifname) -+ if err != nil { -+ return nil, err -+ } -+ -+ value := EthtoolDrvinfo{Cmd: ETHTOOL_GDRVINFO} -+ ifrd := ifr.withData(unsafe.Pointer(&value)) -+ -+ err = ioctlIfreqData(fd, SIOCETHTOOL, &ifrd) -+ return &value, err -+} -+ -+// IoctlGetWatchdogInfo fetches information about a watchdog device from the -+// Linux watchdog API. For more information, see: -+// https://www.kernel.org/doc/html/latest/watchdog/watchdog-api.html. -+func IoctlGetWatchdogInfo(fd int) (*WatchdogInfo, error) { -+ var value WatchdogInfo -+ err := ioctlPtr(fd, WDIOC_GETSUPPORT, unsafe.Pointer(&value)) -+ return &value, err -+} -+ -+// IoctlWatchdogKeepalive issues a keepalive ioctl to a watchdog device. For -+// more information, see: -+// https://www.kernel.org/doc/html/latest/watchdog/watchdog-api.html. -+func IoctlWatchdogKeepalive(fd int) error { -+ // arg is ignored and not a pointer, so ioctl is fine instead of ioctlPtr. -+ return ioctl(fd, WDIOC_KEEPALIVE, 0) -+} -+ -+// IoctlFileCloneRange performs an FICLONERANGE ioctl operation to clone the -+// range of data conveyed in value to the file associated with the file -+// descriptor destFd. See the ioctl_ficlonerange(2) man page for details. -+func IoctlFileCloneRange(destFd int, value *FileCloneRange) error { -+ return ioctlPtr(destFd, FICLONERANGE, unsafe.Pointer(value)) -+} -+ -+// IoctlFileClone performs an FICLONE ioctl operation to clone the entire file -+// associated with the file description srcFd to the file associated with the -+// file descriptor destFd. See the ioctl_ficlone(2) man page for details. -+func IoctlFileClone(destFd, srcFd int) error { -+ return ioctl(destFd, FICLONE, uintptr(srcFd)) -+} -+ -+type FileDedupeRange struct { -+ Src_offset uint64 -+ Src_length uint64 -+ Reserved1 uint16 -+ Reserved2 uint32 -+ Info []FileDedupeRangeInfo -+} -+ -+type FileDedupeRangeInfo struct { -+ Dest_fd int64 -+ Dest_offset uint64 -+ Bytes_deduped uint64 -+ Status int32 -+ Reserved uint32 -+} -+ -+// IoctlFileDedupeRange performs an FIDEDUPERANGE ioctl operation to share the -+// range of data conveyed in value from the file associated with the file -+// descriptor srcFd to the value.Info destinations. See the -+// ioctl_fideduperange(2) man page for details. -+func IoctlFileDedupeRange(srcFd int, value *FileDedupeRange) error { -+ buf := make([]byte, SizeofRawFileDedupeRange+ -+ len(value.Info)*SizeofRawFileDedupeRangeInfo) -+ rawrange := (*RawFileDedupeRange)(unsafe.Pointer(&buf[0])) -+ rawrange.Src_offset = value.Src_offset -+ rawrange.Src_length = value.Src_length -+ rawrange.Dest_count = uint16(len(value.Info)) -+ rawrange.Reserved1 = value.Reserved1 -+ rawrange.Reserved2 = value.Reserved2 -+ -+ for i := range value.Info { -+ rawinfo := (*RawFileDedupeRangeInfo)(unsafe.Pointer( -+ uintptr(unsafe.Pointer(&buf[0])) + uintptr(SizeofRawFileDedupeRange) + -+ uintptr(i*SizeofRawFileDedupeRangeInfo))) -+ rawinfo.Dest_fd = value.Info[i].Dest_fd -+ rawinfo.Dest_offset = value.Info[i].Dest_offset -+ rawinfo.Bytes_deduped = value.Info[i].Bytes_deduped -+ rawinfo.Status = value.Info[i].Status -+ rawinfo.Reserved = value.Info[i].Reserved -+ } -+ -+ err := ioctlPtr(srcFd, FIDEDUPERANGE, unsafe.Pointer(&buf[0])) -+ -+ // Output -+ for i := range value.Info { -+ rawinfo := (*RawFileDedupeRangeInfo)(unsafe.Pointer( -+ uintptr(unsafe.Pointer(&buf[0])) + uintptr(SizeofRawFileDedupeRange) + -+ uintptr(i*SizeofRawFileDedupeRangeInfo))) -+ value.Info[i].Dest_fd = rawinfo.Dest_fd -+ value.Info[i].Dest_offset = rawinfo.Dest_offset -+ value.Info[i].Bytes_deduped = rawinfo.Bytes_deduped -+ value.Info[i].Status = rawinfo.Status -+ value.Info[i].Reserved = rawinfo.Reserved -+ } -+ -+ return err -+} -+ -+func IoctlHIDGetDesc(fd int, value *HIDRawReportDescriptor) error { -+ return ioctlPtr(fd, HIDIOCGRDESC, unsafe.Pointer(value)) -+} -+ -+func IoctlHIDGetRawInfo(fd int) (*HIDRawDevInfo, error) { -+ var value HIDRawDevInfo -+ err := ioctlPtr(fd, HIDIOCGRAWINFO, unsafe.Pointer(&value)) -+ return &value, err -+} -+ -+func IoctlHIDGetRawName(fd int) (string, error) { -+ var value [_HIDIOCGRAWNAME_LEN]byte -+ err := ioctlPtr(fd, _HIDIOCGRAWNAME, unsafe.Pointer(&value[0])) -+ return ByteSliceToString(value[:]), err -+} -+ -+func IoctlHIDGetRawPhys(fd int) (string, error) { -+ var value [_HIDIOCGRAWPHYS_LEN]byte -+ err := ioctlPtr(fd, _HIDIOCGRAWPHYS, unsafe.Pointer(&value[0])) -+ return ByteSliceToString(value[:]), err -+} -+ -+func IoctlHIDGetRawUniq(fd int) (string, error) { -+ var value [_HIDIOCGRAWUNIQ_LEN]byte -+ err := ioctlPtr(fd, _HIDIOCGRAWUNIQ, unsafe.Pointer(&value[0])) -+ return ByteSliceToString(value[:]), err -+} -+ -+// IoctlIfreq performs an ioctl using an Ifreq structure for input and/or -+// output. See the netdevice(7) man page for details. -+func IoctlIfreq(fd int, req uint, value *Ifreq) error { -+ // It is possible we will add more fields to *Ifreq itself later to prevent -+ // misuse, so pass the raw *ifreq directly. -+ return ioctlPtr(fd, req, unsafe.Pointer(&value.raw)) -+} -+ -+// TODO(mdlayher): export if and when IfreqData is exported. -+ -+// ioctlIfreqData performs an ioctl using an ifreqData structure for input -+// and/or output. See the netdevice(7) man page for details. -+func ioctlIfreqData(fd int, req uint, value *ifreqData) error { -+ // The memory layout of IfreqData (type-safe) and ifreq (not type-safe) are -+ // identical so pass *IfreqData directly. -+ return ioctlPtr(fd, req, unsafe.Pointer(value)) -+} -+ -+// IoctlKCMClone attaches a new file descriptor to a multiplexor by cloning an -+// existing KCM socket, returning a structure containing the file descriptor of -+// the new socket. -+func IoctlKCMClone(fd int) (*KCMClone, error) { -+ var info KCMClone -+ if err := ioctlPtr(fd, SIOCKCMCLONE, unsafe.Pointer(&info)); err != nil { -+ return nil, err -+ } -+ -+ return &info, nil -+} -+ -+// IoctlKCMAttach attaches a TCP socket and associated BPF program file -+// descriptor to a multiplexor. -+func IoctlKCMAttach(fd int, info KCMAttach) error { -+ return ioctlPtr(fd, SIOCKCMATTACH, unsafe.Pointer(&info)) -+} -+ -+// IoctlKCMUnattach unattaches a TCP socket file descriptor from a multiplexor. -+func IoctlKCMUnattach(fd int, info KCMUnattach) error { -+ return ioctlPtr(fd, SIOCKCMUNATTACH, unsafe.Pointer(&info)) -+} -+ -+// IoctlLoopGetStatus64 gets the status of the loop device associated with the -+// file descriptor fd using the LOOP_GET_STATUS64 operation. -+func IoctlLoopGetStatus64(fd int) (*LoopInfo64, error) { -+ var value LoopInfo64 -+ if err := ioctlPtr(fd, LOOP_GET_STATUS64, unsafe.Pointer(&value)); err != nil { -+ return nil, err -+ } -+ return &value, nil -+} -+ -+// IoctlLoopSetStatus64 sets the status of the loop device associated with the -+// file descriptor fd using the LOOP_SET_STATUS64 operation. -+func IoctlLoopSetStatus64(fd int, value *LoopInfo64) error { -+ return ioctlPtr(fd, LOOP_SET_STATUS64, unsafe.Pointer(value)) -+} -diff --git a/vendor/golang.org/x/sys/unix/ioctl_zos.go b/vendor/golang.org/x/sys/unix/ioctl_zos.go -new file mode 100644 -index 0000000..5384e7d ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/ioctl_zos.go -@@ -0,0 +1,74 @@ -+// Copyright 2020 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build zos && s390x -+// +build zos,s390x -+ -+package unix -+ -+import ( -+ "runtime" -+ "unsafe" -+) -+ -+// ioctl itself should not be exposed directly, but additional get/set -+// functions for specific types are permissible. -+ -+// IoctlSetInt performs an ioctl operation which sets an integer value -+// on fd, using the specified request number. -+func IoctlSetInt(fd int, req uint, value int) error { -+ return ioctl(fd, req, uintptr(value)) -+} -+ -+// IoctlSetWinsize performs an ioctl on fd with a *Winsize argument. -+// -+// To change fd's window size, the req argument should be TIOCSWINSZ. -+func IoctlSetWinsize(fd int, req uint, value *Winsize) error { -+ // TODO: if we get the chance, remove the req parameter and -+ // hardcode TIOCSWINSZ. -+ err := ioctl(fd, req, uintptr(unsafe.Pointer(value))) -+ runtime.KeepAlive(value) -+ return err -+} -+ -+// IoctlSetTermios performs an ioctl on fd with a *Termios. -+// -+// The req value is expected to be TCSETS, TCSETSW, or TCSETSF -+func IoctlSetTermios(fd int, req uint, value *Termios) error { -+ if (req != TCSETS) && (req != TCSETSW) && (req != TCSETSF) { -+ return ENOSYS -+ } -+ err := Tcsetattr(fd, int(req), value) -+ runtime.KeepAlive(value) -+ return err -+} -+ -+// IoctlGetInt performs an ioctl operation which gets an integer value -+// from fd, using the specified request number. -+// -+// A few ioctl requests use the return value as an output parameter; -+// for those, IoctlRetInt should be used instead of this function. -+func IoctlGetInt(fd int, req uint) (int, error) { -+ var value int -+ err := ioctl(fd, req, uintptr(unsafe.Pointer(&value))) -+ return value, err -+} -+ -+func IoctlGetWinsize(fd int, req uint) (*Winsize, error) { -+ var value Winsize -+ err := ioctl(fd, req, uintptr(unsafe.Pointer(&value))) -+ return &value, err -+} -+ -+// IoctlGetTermios performs an ioctl on fd with a *Termios. -+// -+// The req value is expected to be TCGETS -+func IoctlGetTermios(fd int, req uint) (*Termios, error) { -+ var value Termios -+ if req != TCGETS { -+ return &value, ENOSYS -+ } -+ err := Tcgetattr(fd, &value) -+ return &value, err -+} -diff --git a/vendor/golang.org/x/sys/unix/mkall.sh b/vendor/golang.org/x/sys/unix/mkall.sh -index ece31e9..3b2335d 100644 ---- a/vendor/golang.org/x/sys/unix/mkall.sh -+++ b/vendor/golang.org/x/sys/unix/mkall.sh -@@ -50,7 +50,7 @@ if [[ "$GOOS" = "linux" ]]; then - # Use the Docker-based build system - # Files generated through docker (use $cmd so you can Ctl-C the build or run) - $cmd docker build --tag generate:$GOOS $GOOS -- $cmd docker run --interactive --tty --volume $(cd -- "$(dirname -- "$0")" && /bin/pwd):/build generate:$GOOS -+ $cmd docker run --interactive --tty --volume $(cd -- "$(dirname -- "$0")/.." && /bin/pwd):/build generate:$GOOS - exit - fi - -@@ -70,31 +70,15 @@ aix_ppc64) - mksyscall="go run mksyscall_aix_ppc64.go -aix" - mktypes="GOARCH=$GOARCH go tool cgo -godefs" - ;; --darwin_386) -- mkerrors="$mkerrors -m32" -- mksyscall="go run mksyscall.go -l32" -- mksysnum="go run mksysnum.go $(xcrun --show-sdk-path --sdk macosx)/usr/include/sys/syscall.h" -- mktypes="GOARCH=$GOARCH go tool cgo -godefs" -- mkasm="go run mkasm_darwin.go" -- ;; - darwin_amd64) - mkerrors="$mkerrors -m64" -- mksysnum="go run mksysnum.go $(xcrun --show-sdk-path --sdk macosx)/usr/include/sys/syscall.h" - mktypes="GOARCH=$GOARCH go tool cgo -godefs" -- mkasm="go run mkasm_darwin.go" -- ;; --darwin_arm) -- mkerrors="$mkerrors" -- mksyscall="go run mksyscall.go -l32" -- mksysnum="go run mksysnum.go $(xcrun --show-sdk-path --sdk iphoneos)/usr/include/sys/syscall.h" -- mktypes="GOARCH=$GOARCH go tool cgo -godefs" -- mkasm="go run mkasm_darwin.go" -+ mkasm="go run mkasm.go" - ;; - darwin_arm64) - mkerrors="$mkerrors -m64" -- mksysnum="go run mksysnum.go $(xcrun --show-sdk-path --sdk iphoneos)/usr/include/sys/syscall.h" - mktypes="GOARCH=$GOARCH go tool cgo -godefs" -- mkasm="go run mkasm_darwin.go" -+ mkasm="go run mkasm.go" - ;; - dragonfly_amd64) - mkerrors="$mkerrors -m64" -@@ -105,25 +89,30 @@ dragonfly_amd64) - freebsd_386) - mkerrors="$mkerrors -m32" - mksyscall="go run mksyscall.go -l32" -- mksysnum="go run mksysnum.go 'https://svn.freebsd.org/base/stable/11/sys/kern/syscalls.master'" -+ mksysnum="go run mksysnum.go 'https://cgit.freebsd.org/src/plain/sys/kern/syscalls.master?h=stable/12'" - mktypes="GOARCH=$GOARCH go tool cgo -godefs" - ;; - freebsd_amd64) - mkerrors="$mkerrors -m64" -- mksysnum="go run mksysnum.go 'https://svn.freebsd.org/base/stable/11/sys/kern/syscalls.master'" -+ mksysnum="go run mksysnum.go 'https://cgit.freebsd.org/src/plain/sys/kern/syscalls.master?h=stable/12'" - mktypes="GOARCH=$GOARCH go tool cgo -godefs" - ;; - freebsd_arm) - mkerrors="$mkerrors" - mksyscall="go run mksyscall.go -l32 -arm" -- mksysnum="go run mksysnum.go 'https://svn.freebsd.org/base/stable/11/sys/kern/syscalls.master'" -+ mksysnum="go run mksysnum.go 'https://cgit.freebsd.org/src/plain/sys/kern/syscalls.master?h=stable/12'" - # Let the type of C char be signed for making the bare syscall - # API consistent across platforms. - mktypes="GOARCH=$GOARCH go tool cgo -godefs -- -fsigned-char" - ;; - freebsd_arm64) - mkerrors="$mkerrors -m64" -- mksysnum="go run mksysnum.go 'https://svn.freebsd.org/base/stable/11/sys/kern/syscalls.master'" -+ mksysnum="go run mksysnum.go 'https://cgit.freebsd.org/src/plain/sys/kern/syscalls.master?h=stable/12'" -+ mktypes="GOARCH=$GOARCH go tool cgo -godefs -- -fsigned-char" -+ ;; -+freebsd_riscv64) -+ mkerrors="$mkerrors -m64" -+ mksysnum="go run mksysnum.go 'https://cgit.freebsd.org/src/plain/sys/kern/syscalls.master?h=stable/12'" - mktypes="GOARCH=$GOARCH go tool cgo -godefs -- -fsigned-char" - ;; - netbsd_386) -@@ -153,29 +142,38 @@ netbsd_arm64) - mktypes="GOARCH=$GOARCH go tool cgo -godefs" - ;; - openbsd_386) -+ mkasm="go run mkasm.go" - mkerrors="$mkerrors -m32" -- mksyscall="go run mksyscall.go -l32 -openbsd" -+ mksyscall="go run mksyscall.go -l32 -openbsd -libc" - mksysctl="go run mksysctl_openbsd.go" -- mksysnum="go run mksysnum.go 'https://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master'" - mktypes="GOARCH=$GOARCH go tool cgo -godefs" - ;; - openbsd_amd64) -+ mkasm="go run mkasm.go" - mkerrors="$mkerrors -m64" -- mksyscall="go run mksyscall.go -openbsd" -+ mksyscall="go run mksyscall.go -openbsd -libc" - mksysctl="go run mksysctl_openbsd.go" -- mksysnum="go run mksysnum.go 'https://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master'" - mktypes="GOARCH=$GOARCH go tool cgo -godefs" - ;; - openbsd_arm) -+ mkasm="go run mkasm.go" - mkerrors="$mkerrors" -- mksyscall="go run mksyscall.go -l32 -openbsd -arm" -+ mksyscall="go run mksyscall.go -l32 -openbsd -arm -libc" - mksysctl="go run mksysctl_openbsd.go" -- mksysnum="go run mksysnum.go 'https://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master'" - # Let the type of C char be signed for making the bare syscall - # API consistent across platforms. - mktypes="GOARCH=$GOARCH go tool cgo -godefs -- -fsigned-char" - ;; - openbsd_arm64) -+ mkasm="go run mkasm.go" -+ mkerrors="$mkerrors -m64" -+ mksyscall="go run mksyscall.go -openbsd -libc" -+ mksysctl="go run mksysctl_openbsd.go" -+ # Let the type of C char be signed for making the bare syscall -+ # API consistent across platforms. -+ mktypes="GOARCH=$GOARCH go tool cgo -godefs -- -fsigned-char" -+ ;; -+openbsd_mips64) - mkerrors="$mkerrors -m64" - mksyscall="go run mksyscall.go -openbsd" - mksysctl="go run mksysctl_openbsd.go" -@@ -194,7 +192,7 @@ illumos_amd64) - mksyscall="go run mksyscall_solaris.go" - mkerrors= - mksysnum= -- mktypes= -+ mktypes="GOARCH=$GOARCH go tool cgo -godefs" - ;; - *) - echo 'unrecognized $GOOS_$GOARCH: ' "$GOOSARCH" 1>&2 -@@ -217,8 +215,6 @@ esac - # aix/ppc64 script generates files instead of writing to stdin. - echo "$mksyscall -tags $GOOS,$GOARCH $syscall_goos $GOOSARCH_in && gofmt -w zsyscall_$GOOSARCH.go && gofmt -w zsyscall_"$GOOSARCH"_gccgo.go && gofmt -w zsyscall_"$GOOSARCH"_gc.go " ; - elif [ "$GOOS" == "darwin" ]; then -- # pre-1.12, direct syscalls -- echo "$mksyscall -tags $GOOS,$GOARCH,!go1.12 $syscall_goos syscall_darwin_${GOARCH}.1_11.go $GOOSARCH_in |gofmt >zsyscall_$GOOSARCH.1_11.go"; - # 1.12 and later, syscalls via libSystem - echo "$mksyscall -tags $GOOS,$GOARCH,go1.12 $syscall_goos $GOOSARCH_in |gofmt >zsyscall_$GOOSARCH.go"; - # 1.13 and later, syscalls via libSystem (including syscallPtr) -@@ -236,5 +232,5 @@ esac - if [ -n "$mksysctl" ]; then echo "$mksysctl |gofmt >$zsysctl"; fi - if [ -n "$mksysnum" ]; then echo "$mksysnum |gofmt >zsysnum_$GOOSARCH.go"; fi - if [ -n "$mktypes" ]; then echo "$mktypes types_$GOOS.go | go run mkpost.go > ztypes_$GOOSARCH.go"; fi -- if [ -n "$mkasm" ]; then echo "$mkasm $GOARCH"; fi -+ if [ -n "$mkasm" ]; then echo "$mkasm $GOOS $GOARCH"; fi - ) | $run -diff --git a/vendor/golang.org/x/sys/unix/mkerrors.sh b/vendor/golang.org/x/sys/unix/mkerrors.sh -index ab09aaf..2ab44aa 100644 ---- a/vendor/golang.org/x/sys/unix/mkerrors.sh -+++ b/vendor/golang.org/x/sys/unix/mkerrors.sh -@@ -54,22 +54,28 @@ includes_AIX=' - - includes_Darwin=' - #define _DARWIN_C_SOURCE --#define KERNEL -+#define KERNEL 1 - #define _DARWIN_USE_64_BIT_INODE -+#define __APPLE_USE_RFC_3542 - #include - #include -+#include -+#include - #include - #include - #include - #include - #include -+#include - #include -+#include - #include - #include - #include - #include - #include - #include -+#include - #include - #include - #include -@@ -77,6 +83,9 @@ includes_Darwin=' - #include - #include - #include -+ -+// for backwards compatibility because moved TIOCREMOTE to Kernel.framework after MacOSX12.0.sdk. -+#define TIOCREMOTE 0x80047469 - ' - - includes_DragonFly=' -@@ -93,6 +102,7 @@ includes_DragonFly=' - #include - #include - #include -+#include - #include - #include - #include -@@ -107,8 +117,10 @@ includes_FreeBSD=' - #include - #include - #include -+#include - #include - #include -+#include - #include - #include - #include -@@ -116,6 +128,7 @@ includes_FreeBSD=' - #include - #include - #include -+#include - #include - #include - #include -@@ -187,23 +200,31 @@ struct ltchars { - #include - #include - #include -+#include - #include - #include -+#include - #include - #include -+#include -+#include -+#include - #include - #include - #include -+#include - #include -+#include - #include - #include -+#include - #include - #include - #include - #include - #include - #include --#include -+#include - #include - #include - #include -@@ -213,17 +234,24 @@ struct ltchars { - #include - #include - #include -+#include -+#include - #include - #include -+#include - #include -+#include - #include - #include - #include -+#include - #include - #include - #include -+#include - #include - #include -+#include - #include - #include - #include -@@ -238,8 +266,10 @@ struct ltchars { - #include - #include - #include -+#include - - #include -+#include - #include - - #if defined(__sparc__) -@@ -267,6 +297,10 @@ struct ltchars { - #define SOL_NETLINK 270 - #endif - -+#ifndef SOL_SMC -+#define SOL_SMC 286 -+#endif -+ - #ifdef SOL_BLUETOOTH - // SPARC includes this in /usr/include/sparc64-linux-gnu/bits/socket.h - // but it is already in bluetooth_linux.go -@@ -287,6 +321,17 @@ struct ltchars { - // Including linux/l2tp.h here causes conflicts between linux/in.h - // and netinet/in.h included via net/route.h above. - #define IPPROTO_L2TP 115 -+ -+// Copied from linux/hid.h. -+// Keep in sync with the size of the referenced fields. -+#define _HIDIOCGRAWNAME_LEN 128 // sizeof_field(struct hid_device, name) -+#define _HIDIOCGRAWPHYS_LEN 64 // sizeof_field(struct hid_device, phys) -+#define _HIDIOCGRAWUNIQ_LEN 64 // sizeof_field(struct hid_device, uniq) -+ -+#define _HIDIOCGRAWNAME HIDIOCGRAWNAME(_HIDIOCGRAWNAME_LEN) -+#define _HIDIOCGRAWPHYS HIDIOCGRAWPHYS(_HIDIOCGRAWPHYS_LEN) -+#define _HIDIOCGRAWUNIQ HIDIOCGRAWUNIQ(_HIDIOCGRAWUNIQ_LEN) -+ - ' - - includes_NetBSD=' -@@ -296,6 +341,7 @@ includes_NetBSD=' - #include - #include - #include -+#include - #include - #include - #include -@@ -324,6 +370,7 @@ includes_OpenBSD=' - #include - #include - #include -+#include - #include - #include - #include -@@ -364,6 +411,7 @@ includes_SunOS=' - #include - #include - #include -+#include - #include - #include - #include -@@ -373,10 +421,11 @@ includes_SunOS=' - #include - #include - #include -+#include - #include --#include - #include - #include -+#include - ' - - -@@ -431,6 +480,7 @@ ccflags="$@" - $2 !~ /^EPROC_/ && - $2 !~ /^EQUIV_/ && - $2 !~ /^EXPR_/ && -+ $2 !~ /^EVIOC/ && - $2 ~ /^E[A-Z0-9_]+$/ || - $2 ~ /^B[0-9_]+$/ || - $2 ~ /^(OLD|NEW)DEV$/ || -@@ -462,13 +512,18 @@ ccflags="$@" - $2 ~ /^O?XTABS$/ || - $2 ~ /^TC[IO](ON|OFF)$/ || - $2 ~ /^IN_/ || -+ $2 ~ /^KCM/ || -+ $2 ~ /^LANDLOCK_/ || - $2 ~ /^LOCK_(SH|EX|NB|UN)$/ || - $2 ~ /^LO_(KEY|NAME)_SIZE$/ || - $2 ~ /^LOOP_(CLR|CTL|GET|SET)_/ || -- $2 ~ /^(AF|SOCK|SO|SOL|IPPROTO|IP|IPV6|ICMP6|TCP|MCAST|EVFILT|NOTE|EV|SHUT|PROT|MAP|MFD|T?PACKET|MSG|SCM|MCL|DT|MADV|PR)_/ || -+ $2 ~ /^(AF|SOCK|SO|SOL|IPPROTO|IP|IPV6|TCP|MCAST|EVFILT|NOTE|SHUT|PROT|MAP|MFD|T?PACKET|MSG|SCM|MCL|DT|MADV|PR|LOCAL|TCPOPT)_/ || -+ $2 ~ /^NFC_(GENL|PROTO|COMM|RF|SE|DIRECTION|LLCP|SOCKPROTO)_/ || -+ $2 ~ /^NFC_.*_(MAX)?SIZE$/ || -+ $2 ~ /^RAW_PAYLOAD_/ || - $2 ~ /^TP_STATUS_/ || - $2 ~ /^FALLOC_/ || -- $2 == "ICMPV6_FILTER" || -+ $2 ~ /^ICMPV?6?_(FILTER|SEC)/ || - $2 == "SOMAXCONN" || - $2 == "NAME_MAX" || - $2 == "IFNAMSIZ" || -@@ -477,10 +532,10 @@ ccflags="$@" - $2 ~ /^HW_MACHINE$/ || - $2 ~ /^SYSCTL_VERS/ || - $2 !~ "MNT_BITS" && -- $2 ~ /^(MS|MNT|UMOUNT)_/ || -+ $2 ~ /^(MS|MNT|MOUNT|UMOUNT)_/ || - $2 ~ /^NS_GET_/ || - $2 ~ /^TUN(SET|GET|ATTACH|DETACH)/ || -- $2 ~ /^(O|F|[ES]?FD|NAME|S|PTRACE|PT)_/ || -+ $2 ~ /^(O|F|[ES]?FD|NAME|S|PTRACE|PT|PIOD|TFD)_/ || - $2 ~ /^KEXEC_/ || - $2 ~ /^LINUX_REBOOT_CMD_/ || - $2 ~ /^LINUX_REBOOT_MAGIC[12]$/ || -@@ -488,6 +543,7 @@ ccflags="$@" - $2 !~ "NLA_TYPE_MASK" && - $2 !~ /^RTC_VL_(ACCURACY|BACKUP|DATA)/ && - $2 ~ /^(NETLINK|NLM|NLMSG|NLA|IFA|IFAN|RT|RTC|RTCF|RTN|RTPROT|RTNH|ARPHRD|ETH_P|NETNSA)_/ || -+ $2 ~ /^FIORDCHK$/ || - $2 ~ /^SIOC/ || - $2 ~ /^TIOC/ || - $2 ~ /^TCGET/ || -@@ -503,23 +559,29 @@ ccflags="$@" - $2 ~ /^CLONE_[A-Z_]+/ || - $2 !~ /^(BPF_TIMEVAL|BPF_FIB_LOOKUP_[A-Z]+)$/ && - $2 ~ /^(BPF|DLT)_/ || -+ $2 ~ /^AUDIT_/ || - $2 ~ /^(CLOCK|TIMER)_/ || - $2 ~ /^CAN_/ || - $2 ~ /^CAP_/ || -+ $2 ~ /^CP_/ || -+ $2 ~ /^CPUSTATES$/ || -+ $2 ~ /^CTLIOCGINFO$/ || - $2 ~ /^ALG_/ || -+ $2 ~ /^FI(CLONE|DEDUPERANGE)/ || - $2 ~ /^FS_(POLICY_FLAGS|KEY_DESC|ENCRYPTION_MODE|[A-Z0-9_]+_KEY_SIZE)/ || -- $2 ~ /^FS_IOC_.*(ENCRYPTION|VERITY|GETFLAGS)/ || -+ $2 ~ /^FS_IOC_.*(ENCRYPTION|VERITY|[GS]ETFLAGS)/ || - $2 ~ /^FS_VERITY_/ || - $2 ~ /^FSCRYPT_/ || -+ $2 ~ /^DM_/ || - $2 ~ /^GRND_/ || - $2 ~ /^RND/ || - $2 ~ /^KEY_(SPEC|REQKEY_DEFL)_/ || - $2 ~ /^KEYCTL_/ || -- $2 ~ /^PERF_EVENT_IOC_/ || -+ $2 ~ /^PERF_/ || - $2 ~ /^SECCOMP_MODE_/ || -+ $2 ~ /^SEEK_/ || - $2 ~ /^SPLICE_/ || - $2 ~ /^SYNC_FILE_RANGE_/ || -- $2 !~ /^AUDIT_RECORD_MAGIC/ && - $2 !~ /IOC_MAGIC/ && - $2 ~ /^[A-Z][A-Z0-9_]+_MAGIC2?$/ || - $2 ~ /^(VM|VMADDR)_/ || -@@ -534,18 +596,31 @@ ccflags="$@" - $2 ~ /^XATTR_(CREATE|REPLACE|NO(DEFAULT|FOLLOW|SECURITY)|SHOWCOMPRESSION)/ || - $2 ~ /^ATTR_(BIT_MAP_COUNT|(CMN|VOL|FILE)_)/ || - $2 ~ /^FSOPT_/ || -- $2 ~ /^WDIOC_/ || -+ $2 ~ /^WDIO[CFS]_/ || - $2 ~ /^NFN/ || - $2 ~ /^XDP_/ || - $2 ~ /^RWF_/ || - $2 ~ /^(HDIO|WIN|SMART)_/ || - $2 ~ /^CRYPTO_/ || - $2 ~ /^TIPC_/ || -+ $2 !~ "DEVLINK_RELOAD_LIMITS_VALID_MASK" && - $2 ~ /^DEVLINK_/ || -+ $2 ~ /^ETHTOOL_/ || -+ $2 ~ /^LWTUNNEL_IP/ || -+ $2 ~ /^ITIMER_/ || - $2 !~ "WMESGLEN" && - $2 ~ /^W[A-Z0-9]+$/ || -+ $2 ~ /^P_/ || - $2 ~/^PPPIOC/ || - $2 ~ /^FAN_|FANOTIFY_/ || -+ $2 == "HID_MAX_DESCRIPTOR_SIZE" || -+ $2 ~ /^_?HIDIOC/ || -+ $2 ~ /^BUS_(USB|HIL|BLUETOOTH|VIRTUAL)$/ || -+ $2 ~ /^MTD/ || -+ $2 ~ /^OTP/ || -+ $2 ~ /^MEM/ || -+ $2 ~ /^WG/ || -+ $2 ~ /^FIB_RULE_/ || - $2 ~ /^BLK[A-Z]*(GET$|SET$|BUF$|PART$|SIZE)/ {printf("\t%s = C.%s\n", $2, $2)} - $2 ~ /^__WCOREFLAG$/ {next} - $2 ~ /^__W[A-Z0-9]+$/ {printf("\t%s = C.%s\n", substr($2,3), $2)} -@@ -583,6 +658,7 @@ echo '#include ' | $CC -x c - -E -dM $ccflags | - echo '// mkerrors.sh' "$@" - echo '// Code generated by the command above; see README.md. DO NOT EDIT.' - echo -+echo "//go:build ${GOARCH} && ${GOOS}" - echo "// +build ${GOARCH},${GOOS}" - echo - go tool cgo -godefs -- "$@" _const.go >_error.out -diff --git a/vendor/golang.org/x/sys/unix/pagesize_unix.go b/vendor/golang.org/x/sys/unix/pagesize_unix.go -index bc2f362..53f1b4c 100644 ---- a/vendor/golang.org/x/sys/unix/pagesize_unix.go -+++ b/vendor/golang.org/x/sys/unix/pagesize_unix.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris - // +build aix darwin dragonfly freebsd linux netbsd openbsd solaris - - // For Unix, get the pagesize from the runtime. -diff --git a/vendor/golang.org/x/sys/unix/ptrace_darwin.go b/vendor/golang.org/x/sys/unix/ptrace_darwin.go -new file mode 100644 -index 0000000..463c3ef ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/ptrace_darwin.go -@@ -0,0 +1,12 @@ -+// Copyright 2020 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build darwin && !ios -+// +build darwin,!ios -+ -+package unix -+ -+func ptrace(request int, pid int, addr uintptr, data uintptr) error { -+ return ptrace1(request, pid, addr, data) -+} -diff --git a/vendor/golang.org/x/sys/unix/ptrace_ios.go b/vendor/golang.org/x/sys/unix/ptrace_ios.go -new file mode 100644 -index 0000000..ed0509a ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/ptrace_ios.go -@@ -0,0 +1,12 @@ -+// Copyright 2020 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build ios -+// +build ios -+ -+package unix -+ -+func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) { -+ return ENOTSUP -+} -diff --git a/vendor/golang.org/x/sys/unix/race.go b/vendor/golang.org/x/sys/unix/race.go -index 61712b5..6f6c5fe 100644 ---- a/vendor/golang.org/x/sys/unix/race.go -+++ b/vendor/golang.org/x/sys/unix/race.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build (darwin && race) || (linux && race) || (freebsd && race) - // +build darwin,race linux,race freebsd,race - - package unix -diff --git a/vendor/golang.org/x/sys/unix/race0.go b/vendor/golang.org/x/sys/unix/race0.go -index ad02667..706e132 100644 ---- a/vendor/golang.org/x/sys/unix/race0.go -+++ b/vendor/golang.org/x/sys/unix/race0.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build aix darwin,!race linux,!race freebsd,!race netbsd openbsd solaris dragonfly -+//go:build aix || (darwin && !race) || (linux && !race) || (freebsd && !race) || netbsd || openbsd || solaris || dragonfly || zos -+// +build aix darwin,!race linux,!race freebsd,!race netbsd openbsd solaris dragonfly zos - - package unix - -diff --git a/vendor/golang.org/x/sys/unix/readdirent_getdents.go b/vendor/golang.org/x/sys/unix/readdirent_getdents.go -index 3a90aa6..4d62575 100644 ---- a/vendor/golang.org/x/sys/unix/readdirent_getdents.go -+++ b/vendor/golang.org/x/sys/unix/readdirent_getdents.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build aix || dragonfly || freebsd || linux || netbsd || openbsd - // +build aix dragonfly freebsd linux netbsd openbsd - - package unix -diff --git a/vendor/golang.org/x/sys/unix/readdirent_getdirentries.go b/vendor/golang.org/x/sys/unix/readdirent_getdirentries.go -index 5fdae40..2a4ba47 100644 ---- a/vendor/golang.org/x/sys/unix/readdirent_getdirentries.go -+++ b/vendor/golang.org/x/sys/unix/readdirent_getdirentries.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build darwin - // +build darwin - - package unix -diff --git a/vendor/golang.org/x/sys/unix/sockcmsg_linux.go b/vendor/golang.org/x/sys/unix/sockcmsg_linux.go -index 8bf4570..5f63147 100644 ---- a/vendor/golang.org/x/sys/unix/sockcmsg_linux.go -+++ b/vendor/golang.org/x/sys/unix/sockcmsg_linux.go -@@ -34,3 +34,52 @@ func ParseUnixCredentials(m *SocketControlMessage) (*Ucred, error) { - ucred := *(*Ucred)(unsafe.Pointer(&m.Data[0])) - return &ucred, nil - } -+ -+// PktInfo4 encodes Inet4Pktinfo into a socket control message of type IP_PKTINFO. -+func PktInfo4(info *Inet4Pktinfo) []byte { -+ b := make([]byte, CmsgSpace(SizeofInet4Pktinfo)) -+ h := (*Cmsghdr)(unsafe.Pointer(&b[0])) -+ h.Level = SOL_IP -+ h.Type = IP_PKTINFO -+ h.SetLen(CmsgLen(SizeofInet4Pktinfo)) -+ *(*Inet4Pktinfo)(h.data(0)) = *info -+ return b -+} -+ -+// PktInfo6 encodes Inet6Pktinfo into a socket control message of type IPV6_PKTINFO. -+func PktInfo6(info *Inet6Pktinfo) []byte { -+ b := make([]byte, CmsgSpace(SizeofInet6Pktinfo)) -+ h := (*Cmsghdr)(unsafe.Pointer(&b[0])) -+ h.Level = SOL_IPV6 -+ h.Type = IPV6_PKTINFO -+ h.SetLen(CmsgLen(SizeofInet6Pktinfo)) -+ *(*Inet6Pktinfo)(h.data(0)) = *info -+ return b -+} -+ -+// ParseOrigDstAddr decodes a socket control message containing the original -+// destination address. To receive such a message the IP_RECVORIGDSTADDR or -+// IPV6_RECVORIGDSTADDR option must be enabled on the socket. -+func ParseOrigDstAddr(m *SocketControlMessage) (Sockaddr, error) { -+ switch { -+ case m.Header.Level == SOL_IP && m.Header.Type == IP_ORIGDSTADDR: -+ pp := (*RawSockaddrInet4)(unsafe.Pointer(&m.Data[0])) -+ sa := new(SockaddrInet4) -+ p := (*[2]byte)(unsafe.Pointer(&pp.Port)) -+ sa.Port = int(p[0])<<8 + int(p[1]) -+ sa.Addr = pp.Addr -+ return sa, nil -+ -+ case m.Header.Level == SOL_IPV6 && m.Header.Type == IPV6_ORIGDSTADDR: -+ pp := (*RawSockaddrInet6)(unsafe.Pointer(&m.Data[0])) -+ sa := new(SockaddrInet6) -+ p := (*[2]byte)(unsafe.Pointer(&pp.Port)) -+ sa.Port = int(p[0])<<8 + int(p[1]) -+ sa.ZoneId = pp.Scope_id -+ sa.Addr = pp.Addr -+ return sa, nil -+ -+ default: -+ return nil, EINVAL -+ } -+} -diff --git a/vendor/golang.org/x/sys/unix/sockcmsg_unix.go b/vendor/golang.org/x/sys/unix/sockcmsg_unix.go -index 003916e..453a942 100644 ---- a/vendor/golang.org/x/sys/unix/sockcmsg_unix.go -+++ b/vendor/golang.org/x/sys/unix/sockcmsg_unix.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris -+//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos -+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris zos - - // Socket control messages - -diff --git a/vendor/golang.org/x/sys/unix/sockcmsg_unix_other.go b/vendor/golang.org/x/sys/unix/sockcmsg_unix_other.go -index 7d08dae..0840fe4 100644 ---- a/vendor/golang.org/x/sys/unix/sockcmsg_unix_other.go -+++ b/vendor/golang.org/x/sys/unix/sockcmsg_unix_other.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build aix darwin freebsd linux netbsd openbsd solaris -+//go:build aix || darwin || freebsd || linux || netbsd || openbsd || solaris || zos -+// +build aix darwin freebsd linux netbsd openbsd solaris zos - - package unix - -@@ -20,7 +21,7 @@ func cmsgAlignOf(salen int) int { - case "aix": - // There is no alignment on AIX. - salign = 1 -- case "darwin", "illumos", "solaris": -+ case "darwin", "ios", "illumos", "solaris": - // NOTE: It seems like 64-bit Darwin, Illumos and Solaris - // kernels still require 32-bit aligned access to network - // subsystem. -@@ -32,6 +33,14 @@ func cmsgAlignOf(salen int) int { - if runtime.GOARCH == "arm" { - salign = 8 - } -+ // NetBSD aarch64 requires 128-bit alignment. -+ if runtime.GOOS == "netbsd" && runtime.GOARCH == "arm64" { -+ salign = 16 -+ } -+ case "zos": -+ // z/OS socket macros use [32-bit] sizeof(int) alignment, -+ // not pointer width. -+ salign = SizeofInt - } - - return (salen + salign - 1) & ^(salign - 1) -diff --git a/vendor/golang.org/x/sys/unix/str.go b/vendor/golang.org/x/sys/unix/str.go -deleted file mode 100644 -index 17fb698..0000000 ---- a/vendor/golang.org/x/sys/unix/str.go -+++ /dev/null -@@ -1,26 +0,0 @@ --// Copyright 2009 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris -- --package unix -- --func itoa(val int) string { // do it here rather than with fmt to avoid dependency -- if val < 0 { -- return "-" + uitoa(uint(-val)) -- } -- return uitoa(uint(val)) --} -- --func uitoa(val uint) string { -- var buf [32]byte // big enough for int64 -- i := len(buf) - 1 -- for val >= 10 { -- buf[i] = byte(val%10 + '0') -- i-- -- val /= 10 -- } -- buf[i] = byte(val + '0') -- return string(buf[i:]) --} -diff --git a/vendor/golang.org/x/sys/unix/syscall.go b/vendor/golang.org/x/sys/unix/syscall.go -index fd4ee8e..649fa87 100644 ---- a/vendor/golang.org/x/sys/unix/syscall.go -+++ b/vendor/golang.org/x/sys/unix/syscall.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris -+//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos -+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris zos - - // Package unix contains an interface to the low-level operating system - // primitives. OS details vary depending on the underlying system, and -@@ -24,7 +25,13 @@ - // holds a value of type syscall.Errno. - package unix // import "golang.org/x/sys/unix" - --import "strings" -+import ( -+ "bytes" -+ "strings" -+ "unsafe" -+ -+ "golang.org/x/sys/internal/unsafeheader" -+) - - // ByteSliceFromString returns a NUL-terminated slice of bytes - // containing the text of s. If s contains a NUL byte at any -@@ -49,5 +56,40 @@ func BytePtrFromString(s string) (*byte, error) { - return &a[0], nil - } - -+// ByteSliceToString returns a string form of the text represented by the slice s, with a terminating NUL and any -+// bytes after the NUL removed. -+func ByteSliceToString(s []byte) string { -+ if i := bytes.IndexByte(s, 0); i != -1 { -+ s = s[:i] -+ } -+ return string(s) -+} -+ -+// BytePtrToString takes a pointer to a sequence of text and returns the corresponding string. -+// If the pointer is nil, it returns the empty string. It assumes that the text sequence is terminated -+// at a zero byte; if the zero byte is not present, the program may crash. -+func BytePtrToString(p *byte) string { -+ if p == nil { -+ return "" -+ } -+ if *p == 0 { -+ return "" -+ } -+ -+ // Find NUL terminator. -+ n := 0 -+ for ptr := unsafe.Pointer(p); *(*byte)(ptr) != 0; n++ { -+ ptr = unsafe.Pointer(uintptr(ptr) + 1) -+ } -+ -+ var s []byte -+ h := (*unsafeheader.Slice)(unsafe.Pointer(&s)) -+ h.Data = unsafe.Pointer(p) -+ h.Len = n -+ h.Cap = n -+ -+ return string(s) -+} -+ - // Single-word zero for use when we need a valid pointer to 0 bytes. - var _zero uintptr -diff --git a/vendor/golang.org/x/sys/unix/syscall_aix.go b/vendor/golang.org/x/sys/unix/syscall_aix.go -index 9ad8a0d..2db1b51 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_aix.go -+++ b/vendor/golang.org/x/sys/unix/syscall_aix.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build aix - // +build aix - - // Aix system calls. -@@ -19,7 +20,24 @@ import "unsafe" - * Wrapped - */ - -+func Access(path string, mode uint32) (err error) { -+ return Faccessat(AT_FDCWD, path, mode, 0) -+} -+ -+func Chmod(path string, mode uint32) (err error) { -+ return Fchmodat(AT_FDCWD, path, mode, 0) -+} -+ -+func Chown(path string, uid int, gid int) (err error) { -+ return Fchownat(AT_FDCWD, path, uid, gid, 0) -+} -+ -+func Creat(path string, mode uint32) (fd int, err error) { -+ return Open(path, O_CREAT|O_WRONLY|O_TRUNC, mode) -+} -+ - //sys utimes(path string, times *[2]Timeval) (err error) -+ - func Utimes(path string, tv []Timeval) error { - if len(tv) != 2 { - return EINVAL -@@ -28,6 +46,7 @@ func Utimes(path string, tv []Timeval) error { - } - - //sys utimensat(dirfd int, path string, times *[2]Timespec, flag int) (err error) -+ - func UtimesNano(path string, ts []Timespec) error { - if len(ts) != 2 { - return EINVAL -@@ -53,9 +72,7 @@ func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) { - p := (*[2]byte)(unsafe.Pointer(&sa.raw.Port)) - p[0] = byte(sa.Port >> 8) - p[1] = byte(sa.Port) -- for i := 0; i < len(sa.Addr); i++ { -- sa.raw.Addr[i] = sa.Addr[i] -- } -+ sa.raw.Addr = sa.Addr - return unsafe.Pointer(&sa.raw), SizeofSockaddrInet4, nil - } - -@@ -68,9 +85,7 @@ func (sa *SockaddrInet6) sockaddr() (unsafe.Pointer, _Socklen, error) { - p[0] = byte(sa.Port >> 8) - p[1] = byte(sa.Port) - sa.raw.Scope_id = sa.ZoneId -- for i := 0; i < len(sa.Addr); i++ { -- sa.raw.Addr[i] = sa.Addr[i] -- } -+ sa.raw.Addr = sa.Addr - return unsafe.Pointer(&sa.raw), SizeofSockaddrInet6, nil - } - -@@ -202,20 +217,63 @@ func Accept(fd int) (nfd int, sa Sockaddr, err error) { - return - } - --func Recvmsg(fd int, p, oob []byte, flags int) (n, oobn int, recvflags int, from Sockaddr, err error) { -- // Recvmsg not implemented on AIX -- sa := new(SockaddrUnix) -- return -1, -1, -1, sa, ENOSYS --} -- --func Sendmsg(fd int, p, oob []byte, to Sockaddr, flags int) (err error) { -- _, err = SendmsgN(fd, p, oob, to, flags) -+func recvmsgRaw(fd int, iov []Iovec, oob []byte, flags int, rsa *RawSockaddrAny) (n, oobn int, recvflags int, err error) { -+ var msg Msghdr -+ msg.Name = (*byte)(unsafe.Pointer(rsa)) -+ msg.Namelen = uint32(SizeofSockaddrAny) -+ var dummy byte -+ if len(oob) > 0 { -+ // receive at least one normal byte -+ if emptyIovecs(iov) { -+ var iova [1]Iovec -+ iova[0].Base = &dummy -+ iova[0].SetLen(1) -+ iov = iova[:] -+ } -+ msg.Control = (*byte)(unsafe.Pointer(&oob[0])) -+ msg.SetControllen(len(oob)) -+ } -+ if len(iov) > 0 { -+ msg.Iov = &iov[0] -+ msg.SetIovlen(len(iov)) -+ } -+ if n, err = recvmsg(fd, &msg, flags); n == -1 { -+ return -+ } -+ oobn = int(msg.Controllen) -+ recvflags = int(msg.Flags) - return - } - --func SendmsgN(fd int, p, oob []byte, to Sockaddr, flags int) (n int, err error) { -- // SendmsgN not implemented on AIX -- return -1, ENOSYS -+func sendmsgN(fd int, iov []Iovec, oob []byte, ptr unsafe.Pointer, salen _Socklen, flags int) (n int, err error) { -+ var msg Msghdr -+ msg.Name = (*byte)(unsafe.Pointer(ptr)) -+ msg.Namelen = uint32(salen) -+ var dummy byte -+ var empty bool -+ if len(oob) > 0 { -+ // send at least one normal byte -+ empty = emptyIovecs(iov) -+ if empty { -+ var iova [1]Iovec -+ iova[0].Base = &dummy -+ iova[0].SetLen(1) -+ iov = iova[:] -+ } -+ msg.Control = (*byte)(unsafe.Pointer(&oob[0])) -+ msg.SetControllen(len(oob)) -+ } -+ if len(iov) > 0 { -+ msg.Iov = &iov[0] -+ msg.SetIovlen(len(iov)) -+ } -+ if n, err = sendmsg(fd, &msg, flags); err != nil { -+ return 0, err -+ } -+ if len(oob) > 0 && empty { -+ n = 0 -+ } -+ return n, nil - } - - func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { -@@ -235,7 +293,7 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { - } - } - -- bytes := (*[10000]byte)(unsafe.Pointer(&pp.Path[0]))[0:n] -+ bytes := (*[len(pp.Path)]byte)(unsafe.Pointer(&pp.Path[0]))[0:n] - sa.Name = string(bytes) - return sa, nil - -@@ -244,9 +302,7 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { - sa := new(SockaddrInet4) - p := (*[2]byte)(unsafe.Pointer(&pp.Port)) - sa.Port = int(p[0])<<8 + int(p[1]) -- for i := 0; i < len(sa.Addr); i++ { -- sa.Addr[i] = pp.Addr[i] -- } -+ sa.Addr = pp.Addr - return sa, nil - - case AF_INET6: -@@ -255,9 +311,7 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { - p := (*[2]byte)(unsafe.Pointer(&pp.Port)) - sa.Port = int(p[0])<<8 + int(p[1]) - sa.ZoneId = pp.Scope_id -- for i := 0; i < len(sa.Addr); i++ { -- sa.Addr[i] = pp.Addr[i] -- } -+ sa.Addr = pp.Addr - return sa, nil - } - return nil, EAFNOSUPPORT -@@ -297,11 +351,13 @@ func direntNamlen(buf []byte) (uint64, bool) { - } - - //sys getdirent(fd int, buf []byte) (n int, err error) -+ - func Getdents(fd int, buf []byte) (n int, err error) { - return getdirent(fd, buf) - } - - //sys wait4(pid Pid_t, status *_C_int, options int, rusage *Rusage) (wpid Pid_t, err error) -+ - func Wait4(pid int, wstatus *WaitStatus, options int, rusage *Rusage) (wpid int, err error) { - var status _C_int - var r Pid_t -@@ -368,6 +424,12 @@ func (w WaitStatus) TrapCause() int { return -1 } - - //sys fcntl(fd int, cmd int, arg int) (val int, err error) - -+//sys fsyncRange(fd int, how int, start int64, length int64) (err error) = fsync_range -+ -+func Fsync(fd int) error { -+ return fsyncRange(fd, O_SYNC, 0, 0) -+} -+ - /* - * Direct access - */ -@@ -384,7 +446,6 @@ func (w WaitStatus) TrapCause() int { return -1 } - //sys Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) - //sys Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) - //sys Fdatasync(fd int) (err error) --//sys Fsync(fd int) (err error) - // readdir_r - //sysnb Getpgid(pid int) (pgid int, err error) - -@@ -403,8 +464,8 @@ func (w WaitStatus) TrapCause() int { return -1 } - //sys Mknod(path string, mode uint32, dev int) (err error) - //sys Mknodat(dirfd int, path string, mode uint32, dev int) (err error) - //sys Nanosleep(time *Timespec, leftover *Timespec) (err error) --//sys Open(path string, mode int, perm uint32) (fd int, err error) = open64 --//sys Openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) -+//sys Open(path string, mode int, perm uint32) (fd int, err error) = open64 -+//sys Openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) - //sys read(fd int, p []byte) (n int, err error) - //sys Readlink(path string, buf []byte) (n int, err error) - //sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) -@@ -423,8 +484,8 @@ func (w WaitStatus) TrapCause() int { return -1 } - //sysnb Times(tms *Tms) (ticks uintptr, err error) - //sysnb Umask(mask int) (oldmask int) - //sysnb Uname(buf *Utsname) (err error) --//sys Unlink(path string) (err error) --//sys Unlinkat(dirfd int, path string, flags int) (err error) -+//sys Unlink(path string) (err error) -+//sys Unlinkat(dirfd int, path string, flags int) (err error) - //sys Ustat(dev int, ubuf *Ustat_t) (err error) - //sys write(fd int, p []byte) (n int, err error) - //sys readlen(fd int, p *byte, np int) (n int, err error) = read -@@ -445,8 +506,8 @@ func (w WaitStatus) TrapCause() int { return -1 } - //sys Listen(s int, n int) (err error) - //sys lstat(path string, stat *Stat_t) (err error) - //sys Pause() (err error) --//sys Pread(fd int, p []byte, offset int64) (n int, err error) = pread64 --//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = pwrite64 -+//sys pread(fd int, p []byte, offset int64) (n int, err error) = pread64 -+//sys pwrite(fd int, p []byte, offset int64) (n int, err error) = pwrite64 - //sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) - //sys Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) - //sysnb Setregid(rgid int, egid int) (err error) -@@ -498,7 +559,7 @@ func Munmap(b []byte) (err error) { - //sys Munlock(b []byte) (err error) - //sys Munlockall() (err error) - --//sysnb pipe(p *[2]_C_int) (err error) -+//sysnb pipe(p *[2]_C_int) (err error) - - func Pipe(p []int) (err error) { - if len(p) != 2 { -@@ -506,8 +567,10 @@ func Pipe(p []int) (err error) { - } - var pp [2]_C_int - err = pipe(&pp) -- p[0] = int(pp[0]) -- p[1] = int(pp[1]) -+ if err == nil { -+ p[0] = int(pp[0]) -+ p[1] = int(pp[1]) -+ } - return - } - -@@ -527,6 +590,7 @@ func Poll(fds []PollFd, timeout int) (n int, err error) { - //sys Getsystemcfg(label int) (n uint64) - - //sys umount(target string) (err error) -+ - func Unmount(target string, flags int) (err error) { - if flags != 0 { - // AIX doesn't have any flags for umount. -diff --git a/vendor/golang.org/x/sys/unix/syscall_aix_ppc.go b/vendor/golang.org/x/sys/unix/syscall_aix_ppc.go -index b3c8e33..e92a0be 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_aix_ppc.go -+++ b/vendor/golang.org/x/sys/unix/syscall_aix_ppc.go -@@ -2,8 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build aix --// +build ppc -+//go:build aix && ppc -+// +build aix,ppc - - package unix - -diff --git a/vendor/golang.org/x/sys/unix/syscall_aix_ppc64.go b/vendor/golang.org/x/sys/unix/syscall_aix_ppc64.go -index 9a6e024..16eed17 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_aix_ppc64.go -+++ b/vendor/golang.org/x/sys/unix/syscall_aix_ppc64.go -@@ -2,8 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build aix --// +build ppc64 -+//go:build aix && ppc64 -+// +build aix,ppc64 - - package unix - -diff --git a/vendor/golang.org/x/sys/unix/syscall_bsd.go b/vendor/golang.org/x/sys/unix/syscall_bsd.go -index 68605db..eda4267 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_bsd.go -+++ b/vendor/golang.org/x/sys/unix/syscall_bsd.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build darwin || dragonfly || freebsd || netbsd || openbsd - // +build darwin dragonfly freebsd netbsd openbsd - - // BSD system call wrappers shared by *BSD based systems -@@ -18,6 +19,21 @@ import ( - "unsafe" - ) - -+const ImplementsGetwd = true -+ -+func Getwd() (string, error) { -+ var buf [PathMax]byte -+ _, err := Getcwd(buf[0:]) -+ if err != nil { -+ return "", err -+ } -+ n := clen(buf[:]) -+ if n < 1 { -+ return "", EINVAL -+ } -+ return string(buf[:n]), nil -+} -+ - /* - * Wrapped - */ -@@ -147,9 +163,7 @@ func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) { - p := (*[2]byte)(unsafe.Pointer(&sa.raw.Port)) - p[0] = byte(sa.Port >> 8) - p[1] = byte(sa.Port) -- for i := 0; i < len(sa.Addr); i++ { -- sa.raw.Addr[i] = sa.Addr[i] -- } -+ sa.raw.Addr = sa.Addr - return unsafe.Pointer(&sa.raw), _Socklen(sa.raw.Len), nil - } - -@@ -163,9 +177,7 @@ func (sa *SockaddrInet6) sockaddr() (unsafe.Pointer, _Socklen, error) { - p[0] = byte(sa.Port >> 8) - p[1] = byte(sa.Port) - sa.raw.Scope_id = sa.ZoneId -- for i := 0; i < len(sa.Addr); i++ { -- sa.raw.Addr[i] = sa.Addr[i] -- } -+ sa.raw.Addr = sa.Addr - return unsafe.Pointer(&sa.raw), _Socklen(sa.raw.Len), nil - } - -@@ -194,9 +206,7 @@ func (sa *SockaddrDatalink) sockaddr() (unsafe.Pointer, _Socklen, error) { - sa.raw.Nlen = sa.Nlen - sa.raw.Alen = sa.Alen - sa.raw.Slen = sa.Slen -- for i := 0; i < len(sa.raw.Data); i++ { -- sa.raw.Data[i] = sa.Data[i] -- } -+ sa.raw.Data = sa.Data - return unsafe.Pointer(&sa.raw), SizeofSockaddrDatalink, nil - } - -@@ -212,9 +222,7 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { - sa.Nlen = pp.Nlen - sa.Alen = pp.Alen - sa.Slen = pp.Slen -- for i := 0; i < len(sa.Data); i++ { -- sa.Data[i] = pp.Data[i] -- } -+ sa.Data = pp.Data - return sa, nil - - case AF_UNIX: -@@ -246,9 +254,7 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { - sa := new(SockaddrInet4) - p := (*[2]byte)(unsafe.Pointer(&pp.Port)) - sa.Port = int(p[0])<<8 + int(p[1]) -- for i := 0; i < len(sa.Addr); i++ { -- sa.Addr[i] = pp.Addr[i] -- } -+ sa.Addr = pp.Addr - return sa, nil - - case AF_INET6: -@@ -257,12 +263,10 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { - p := (*[2]byte)(unsafe.Pointer(&pp.Port)) - sa.Port = int(p[0])<<8 + int(p[1]) - sa.ZoneId = pp.Scope_id -- for i := 0; i < len(sa.Addr); i++ { -- sa.Addr[i] = pp.Addr[i] -- } -+ sa.Addr = pp.Addr - return sa, nil - } -- return nil, EAFNOSUPPORT -+ return anyToSockaddrGOOS(fd, rsa) - } - - func Accept(fd int) (nfd int, sa Sockaddr, err error) { -@@ -272,7 +276,7 @@ func Accept(fd int) (nfd int, sa Sockaddr, err error) { - if err != nil { - return - } -- if runtime.GOOS == "darwin" && len == 0 { -+ if (runtime.GOOS == "darwin" || runtime.GOOS == "ios") && len == 0 { - // Accepted socket has no address. - // This is likely due to a bug in xnu kernels, - // where instead of ECONNABORTED error socket -@@ -303,7 +307,7 @@ func Getsockname(fd int) (sa Sockaddr, err error) { - return anyToSockaddr(fd, &rsa) - } - --//sysnb socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) -+//sysnb socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) - - // GetsockoptString returns the string value of the socket option opt for the - // socket associated with fd at the given socket level. -@@ -317,84 +321,66 @@ func GetsockoptString(fd, level, opt int) (string, error) { - return string(buf[:vallen-1]), nil - } - --//sys recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) --//sys sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) -+//sys recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) -+//sys sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) - //sys recvmsg(s int, msg *Msghdr, flags int) (n int, err error) - --func Recvmsg(fd int, p, oob []byte, flags int) (n, oobn int, recvflags int, from Sockaddr, err error) { -+func recvmsgRaw(fd int, iov []Iovec, oob []byte, flags int, rsa *RawSockaddrAny) (n, oobn int, recvflags int, err error) { - var msg Msghdr -- var rsa RawSockaddrAny -- msg.Name = (*byte)(unsafe.Pointer(&rsa)) -+ msg.Name = (*byte)(unsafe.Pointer(rsa)) - msg.Namelen = uint32(SizeofSockaddrAny) -- var iov Iovec -- if len(p) > 0 { -- iov.Base = (*byte)(unsafe.Pointer(&p[0])) -- iov.SetLen(len(p)) -- } - var dummy byte - if len(oob) > 0 { - // receive at least one normal byte -- if len(p) == 0 { -- iov.Base = &dummy -- iov.SetLen(1) -+ if emptyIovecs(iov) { -+ var iova [1]Iovec -+ iova[0].Base = &dummy -+ iova[0].SetLen(1) -+ iov = iova[:] - } - msg.Control = (*byte)(unsafe.Pointer(&oob[0])) - msg.SetControllen(len(oob)) - } -- msg.Iov = &iov -- msg.Iovlen = 1 -+ if len(iov) > 0 { -+ msg.Iov = &iov[0] -+ msg.SetIovlen(len(iov)) -+ } - if n, err = recvmsg(fd, &msg, flags); err != nil { - return - } - oobn = int(msg.Controllen) - recvflags = int(msg.Flags) -- // source address is only specified if the socket is unconnected -- if rsa.Addr.Family != AF_UNSPEC { -- from, err = anyToSockaddr(fd, &rsa) -- } - return - } - - //sys sendmsg(s int, msg *Msghdr, flags int) (n int, err error) - --func Sendmsg(fd int, p, oob []byte, to Sockaddr, flags int) (err error) { -- _, err = SendmsgN(fd, p, oob, to, flags) -- return --} -- --func SendmsgN(fd int, p, oob []byte, to Sockaddr, flags int) (n int, err error) { -- var ptr unsafe.Pointer -- var salen _Socklen -- if to != nil { -- ptr, salen, err = to.sockaddr() -- if err != nil { -- return 0, err -- } -- } -+func sendmsgN(fd int, iov []Iovec, oob []byte, ptr unsafe.Pointer, salen _Socklen, flags int) (n int, err error) { - var msg Msghdr - msg.Name = (*byte)(unsafe.Pointer(ptr)) - msg.Namelen = uint32(salen) -- var iov Iovec -- if len(p) > 0 { -- iov.Base = (*byte)(unsafe.Pointer(&p[0])) -- iov.SetLen(len(p)) -- } - var dummy byte -+ var empty bool - if len(oob) > 0 { - // send at least one normal byte -- if len(p) == 0 { -- iov.Base = &dummy -- iov.SetLen(1) -+ empty = emptyIovecs(iov) -+ if empty { -+ var iova [1]Iovec -+ iova[0].Base = &dummy -+ iova[0].SetLen(1) -+ iov = iova[:] - } - msg.Control = (*byte)(unsafe.Pointer(&oob[0])) - msg.SetControllen(len(oob)) - } -- msg.Iov = &iov -- msg.Iovlen = 1 -+ if len(iov) > 0 { -+ msg.Iov = &iov[0] -+ msg.SetIovlen(len(iov)) -+ } - if n, err = sendmsg(fd, &msg, flags); err != nil { - return 0, err - } -- if len(oob) > 0 && len(p) == 0 { -+ if len(oob) > 0 && empty { - n = 0 - } - return n, nil -@@ -527,6 +513,23 @@ func SysctlClockinfo(name string) (*Clockinfo, error) { - return &ci, nil - } - -+func SysctlTimeval(name string) (*Timeval, error) { -+ mib, err := sysctlmib(name) -+ if err != nil { -+ return nil, err -+ } -+ -+ var tv Timeval -+ n := uintptr(unsafe.Sizeof(tv)) -+ if err := sysctl(mib, (*byte)(unsafe.Pointer(&tv)), &n, nil, 0); err != nil { -+ return nil, err -+ } -+ if n != unsafe.Sizeof(tv) { -+ return nil, EIO -+ } -+ return &tv, nil -+} -+ - //sys utimes(path string, timeval *[2]Timeval) (err error) - - func Utimes(path string, tv []Timeval) error { -@@ -550,12 +553,7 @@ func UtimesNano(path string, ts []Timespec) error { - if len(ts) != 2 { - return EINVAL - } -- // Darwin setattrlist can set nanosecond timestamps -- err := setattrlistTimes(path, ts, 0) -- if err != ENOSYS { -- return err -- } -- err = utimensat(AT_FDCWD, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0) -+ err := utimensat(AT_FDCWD, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0) - if err != ENOSYS { - return err - } -@@ -575,10 +573,6 @@ func UtimesNanoAt(dirfd int, path string, ts []Timespec, flags int) error { - if len(ts) != 2 { - return EINVAL - } -- err := setattrlistTimes(path, ts, flags) -- if err != ENOSYS { -- return err -- } - return utimensat(dirfd, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), flags) - } - -@@ -594,7 +588,7 @@ func Futimes(fd int, tv []Timeval) error { - return futimes(fd, (*[2]Timeval)(unsafe.Pointer(&tv[0]))) - } - --//sys poll(fds *PollFd, nfds int, timeout int) (n int, err error) -+//sys poll(fds *PollFd, nfds int, timeout int) (n int, err error) - - func Poll(fds []PollFd, timeout int) (n int, err error) { - if len(fds) == 0 { -diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin.1_12.go b/vendor/golang.org/x/sys/unix/syscall_darwin.1_12.go -index 6a15cba..b009860 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_darwin.1_12.go -+++ b/vendor/golang.org/x/sys/unix/syscall_darwin.1_12.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build darwin && go1.12 && !go1.13 - // +build darwin,go1.12,!go1.13 - - package unix -@@ -10,6 +11,8 @@ import ( - "unsafe" - ) - -+const _SYS_GETDIRENTRIES64 = 344 -+ - func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) { - // To implement this using libSystem we'd need syscall_syscallPtr for - // fdopendir. However, syscallPtr was only added in Go 1.13, so we fall -@@ -20,7 +23,7 @@ func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) { - } else { - p = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall6(SYS_GETDIRENTRIES64, uintptr(fd), uintptr(p), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0) -+ r0, _, e1 := Syscall6(_SYS_GETDIRENTRIES64, uintptr(fd), uintptr(p), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0) - n = int(r0) - if e1 != 0 { - return n, errnoErr(e1) -diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin.1_13.go b/vendor/golang.org/x/sys/unix/syscall_darwin.1_13.go -index f911617..1596426 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_darwin.1_13.go -+++ b/vendor/golang.org/x/sys/unix/syscall_darwin.1_13.go -@@ -2,17 +2,22 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build darwin && go1.13 - // +build darwin,go1.13 - - package unix - --import "unsafe" -+import ( -+ "unsafe" -+ -+ "golang.org/x/sys/internal/unsafeheader" -+) - - //sys closedir(dir uintptr) (err error) - //sys readdir_r(dir uintptr, entry *Dirent, result **Dirent) (res Errno) - - func fdopendir(fd int) (dir uintptr, err error) { -- r0, _, e1 := syscall_syscallPtr(funcPC(libc_fdopendir_trampoline), uintptr(fd), 0, 0) -+ r0, _, e1 := syscall_syscallPtr(libc_fdopendir_trampoline_addr, uintptr(fd), 0, 0) - dir = uintptr(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -20,9 +25,8 @@ func fdopendir(fd int) (dir uintptr, err error) { - return - } - --func libc_fdopendir_trampoline() -+var libc_fdopendir_trampoline_addr uintptr - --//go:linkname libc_fdopendir libc_fdopendir - //go:cgo_import_dynamic libc_fdopendir fdopendir "/usr/lib/libSystem.B.dylib" - - func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) { -@@ -71,6 +75,7 @@ func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) { - cnt++ - continue - } -+ - reclen := int(entry.Reclen) - if reclen > len(buf) { - // Not enough room. Return for now. -@@ -79,13 +84,15 @@ func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) { - // restarting is O(n^2) in the length of the directory. Oh well. - break - } -+ - // Copy entry into return buffer. -- s := struct { -- ptr unsafe.Pointer -- siz int -- cap int -- }{ptr: unsafe.Pointer(&entry), siz: reclen, cap: reclen} -- copy(buf, *(*[]byte)(unsafe.Pointer(&s))) -+ var s []byte -+ hdr := (*unsafeheader.Slice)(unsafe.Pointer(&s)) -+ hdr.Data = unsafe.Pointer(&entry) -+ hdr.Cap = reclen -+ hdr.Len = reclen -+ copy(buf, s) -+ - buf = buf[reclen:] - n += reclen - cnt++ -diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin.go b/vendor/golang.org/x/sys/unix/syscall_darwin.go -index 9a5a6ee..4f87f16 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_darwin.go -+++ b/vendor/golang.org/x/sys/unix/syscall_darwin.go -@@ -13,29 +13,12 @@ - package unix - - import ( -- "errors" -+ "fmt" -+ "runtime" - "syscall" - "unsafe" - ) - --const ImplementsGetwd = true -- --func Getwd() (string, error) { -- buf := make([]byte, 2048) -- attrs, err := getAttrList(".", attrList{CommonAttr: attrCmnFullpath}, buf, 0) -- if err == nil && len(attrs) == 1 && len(attrs[0]) >= 2 { -- wd := string(attrs[0]) -- // Sanity check that it's an absolute path and ends -- // in a null byte, which we then strip. -- if wd[0] == '/' && wd[len(wd)-1] == 0 { -- return wd[:len(wd)-1], nil -- } -- } -- // If pkg/os/getwd.go gets ENOTSUP, it will fall back to the -- // slow algorithm. -- return "", ENOTSUP --} -- - // SockaddrDatalink implements the Sockaddr interface for AF_LINK type sockets. - type SockaddrDatalink struct { - Len uint8 -@@ -49,6 +32,72 @@ type SockaddrDatalink struct { - raw RawSockaddrDatalink - } - -+// SockaddrCtl implements the Sockaddr interface for AF_SYSTEM type sockets. -+type SockaddrCtl struct { -+ ID uint32 -+ Unit uint32 -+ raw RawSockaddrCtl -+} -+ -+func (sa *SockaddrCtl) sockaddr() (unsafe.Pointer, _Socklen, error) { -+ sa.raw.Sc_len = SizeofSockaddrCtl -+ sa.raw.Sc_family = AF_SYSTEM -+ sa.raw.Ss_sysaddr = AF_SYS_CONTROL -+ sa.raw.Sc_id = sa.ID -+ sa.raw.Sc_unit = sa.Unit -+ return unsafe.Pointer(&sa.raw), SizeofSockaddrCtl, nil -+} -+ -+// SockaddrVM implements the Sockaddr interface for AF_VSOCK type sockets. -+// SockaddrVM provides access to Darwin VM sockets: a mechanism that enables -+// bidirectional communication between a hypervisor and its guest virtual -+// machines. -+type SockaddrVM struct { -+ // CID and Port specify a context ID and port address for a VM socket. -+ // Guests have a unique CID, and hosts may have a well-known CID of: -+ // - VMADDR_CID_HYPERVISOR: refers to the hypervisor process. -+ // - VMADDR_CID_LOCAL: refers to local communication (loopback). -+ // - VMADDR_CID_HOST: refers to other processes on the host. -+ CID uint32 -+ Port uint32 -+ raw RawSockaddrVM -+} -+ -+func (sa *SockaddrVM) sockaddr() (unsafe.Pointer, _Socklen, error) { -+ sa.raw.Len = SizeofSockaddrVM -+ sa.raw.Family = AF_VSOCK -+ sa.raw.Port = sa.Port -+ sa.raw.Cid = sa.CID -+ -+ return unsafe.Pointer(&sa.raw), SizeofSockaddrVM, nil -+} -+ -+func anyToSockaddrGOOS(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { -+ switch rsa.Addr.Family { -+ case AF_SYSTEM: -+ pp := (*RawSockaddrCtl)(unsafe.Pointer(rsa)) -+ if pp.Ss_sysaddr == AF_SYS_CONTROL { -+ sa := new(SockaddrCtl) -+ sa.ID = pp.Sc_id -+ sa.Unit = pp.Sc_unit -+ return sa, nil -+ } -+ case AF_VSOCK: -+ pp := (*RawSockaddrVM)(unsafe.Pointer(rsa)) -+ sa := &SockaddrVM{ -+ CID: pp.Cid, -+ Port: pp.Port, -+ } -+ return sa, nil -+ } -+ return nil, EAFNOSUPPORT -+} -+ -+// Some external packages rely on SYS___SYSCTL being defined to implement their -+// own sysctl wrappers. Provide it here, even though direct syscalls are no -+// longer supported on darwin. -+const SYS___SYSCTL = SYS_SYSCTL -+ - // Translate "kern.hostname" to []_C_int{0,1,2,3}. - func nametomib(name string) (mib []_C_int, err error) { - const siz = unsafe.Sizeof(mib[0]) -@@ -92,76 +141,18 @@ func direntNamlen(buf []byte) (uint64, bool) { - func PtraceAttach(pid int) (err error) { return ptrace(PT_ATTACH, pid, 0, 0) } - func PtraceDetach(pid int) (err error) { return ptrace(PT_DETACH, pid, 0, 0) } - --const ( -- attrBitMapCount = 5 -- attrCmnFullpath = 0x08000000 --) -- --type attrList struct { -- bitmapCount uint16 -- _ uint16 -- CommonAttr uint32 -- VolAttr uint32 -- DirAttr uint32 -- FileAttr uint32 -- Forkattr uint32 --} -- --func getAttrList(path string, attrList attrList, attrBuf []byte, options uint) (attrs [][]byte, err error) { -- if len(attrBuf) < 4 { -- return nil, errors.New("attrBuf too small") -- } -- attrList.bitmapCount = attrBitMapCount -- -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return nil, err -- } -- -- if err := getattrlist(_p0, unsafe.Pointer(&attrList), unsafe.Pointer(&attrBuf[0]), uintptr(len(attrBuf)), int(options)); err != nil { -- return nil, err -- } -- size := *(*uint32)(unsafe.Pointer(&attrBuf[0])) -- -- // dat is the section of attrBuf that contains valid data, -- // without the 4 byte length header. All attribute offsets -- // are relative to dat. -- dat := attrBuf -- if int(size) < len(attrBuf) { -- dat = dat[:size] -- } -- dat = dat[4:] // remove length prefix -- -- for i := uint32(0); int(i) < len(dat); { -- header := dat[i:] -- if len(header) < 8 { -- return attrs, errors.New("truncated attribute header") -- } -- datOff := *(*int32)(unsafe.Pointer(&header[0])) -- attrLen := *(*uint32)(unsafe.Pointer(&header[4])) -- if datOff < 0 || uint32(datOff)+attrLen > uint32(len(dat)) { -- return attrs, errors.New("truncated results; attrBuf too small") -- } -- end := uint32(datOff) + attrLen -- attrs = append(attrs, dat[datOff:end]) -- i = end -- if r := i % 4; r != 0 { -- i += (4 - r) -- } -- } -- return --} -- --//sys getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) -- --//sysnb pipe() (r int, w int, err error) -+//sysnb pipe(p *[2]int32) (err error) - - func Pipe(p []int) (err error) { - if len(p) != 2 { - return EINVAL - } -- p[0], p[1], err = pipe() -+ var x [2]int32 -+ err = pipe(&x) -+ if err == nil { -+ p[0] = int(x[0]) -+ p[1] = int(x[1]) -+ } - return - } - -@@ -281,36 +272,7 @@ func Flistxattr(fd int, dest []byte) (sz int, err error) { - return flistxattr(fd, xattrPointer(dest), len(dest), 0) - } - --func setattrlistTimes(path string, times []Timespec, flags int) error { -- _p0, err := BytePtrFromString(path) -- if err != nil { -- return err -- } -- -- var attrList attrList -- attrList.bitmapCount = ATTR_BIT_MAP_COUNT -- attrList.CommonAttr = ATTR_CMN_MODTIME | ATTR_CMN_ACCTIME -- -- // order is mtime, atime: the opposite of Chtimes -- attributes := [2]Timespec{times[1], times[0]} -- options := 0 -- if flags&AT_SYMLINK_NOFOLLOW != 0 { -- options |= FSOPT_NOFOLLOW -- } -- return setattrlist( -- _p0, -- unsafe.Pointer(&attrList), -- unsafe.Pointer(&attributes), -- unsafe.Sizeof(attributes), -- options) --} -- --//sys setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) -- --func utimensat(dirfd int, path string, times *[2]Timespec, flags int) error { -- // Darwin doesn't support SYS_UTIMENSAT -- return ENOSYS --} -+//sys utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) - - /* - * Wrapped -@@ -324,7 +286,36 @@ func Kill(pid int, signum syscall.Signal) (err error) { return kill(pid, int(sig - - //sys ioctl(fd int, req uint, arg uintptr) (err error) - --//sys sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) = SYS_SYSCTL -+func IoctlCtlInfo(fd int, ctlInfo *CtlInfo) error { -+ err := ioctl(fd, CTLIOCGINFO, uintptr(unsafe.Pointer(ctlInfo))) -+ runtime.KeepAlive(ctlInfo) -+ return err -+} -+ -+// IfreqMTU is struct ifreq used to get or set a network device's MTU. -+type IfreqMTU struct { -+ Name [IFNAMSIZ]byte -+ MTU int32 -+} -+ -+// IoctlGetIfreqMTU performs the SIOCGIFMTU ioctl operation on fd to get the MTU -+// of the network device specified by ifname. -+func IoctlGetIfreqMTU(fd int, ifname string) (*IfreqMTU, error) { -+ var ifreq IfreqMTU -+ copy(ifreq.Name[:], ifname) -+ err := ioctl(fd, SIOCGIFMTU, uintptr(unsafe.Pointer(&ifreq))) -+ return &ifreq, err -+} -+ -+// IoctlSetIfreqMTU performs the SIOCSIFMTU ioctl operation on fd to set the MTU -+// of the network device specified by ifreq.Name. -+func IoctlSetIfreqMTU(fd int, ifreq *IfreqMTU) error { -+ err := ioctl(fd, SIOCSIFMTU, uintptr(unsafe.Pointer(ifreq))) -+ runtime.KeepAlive(ifreq) -+ return err -+} -+ -+//sys sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) = SYS_SYSCTL - - func Uname(uname *Utsname) error { - mib := []_C_int{CTL_KERN, KERN_OSTYPE} -@@ -382,8 +373,89 @@ func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err e - return - } - -+func GetsockoptIPMreqn(fd, level, opt int) (*IPMreqn, error) { -+ var value IPMreqn -+ vallen := _Socklen(SizeofIPMreqn) -+ errno := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen) -+ return &value, errno -+} -+ -+func SetsockoptIPMreqn(fd, level, opt int, mreq *IPMreqn) (err error) { -+ return setsockopt(fd, level, opt, unsafe.Pointer(mreq), unsafe.Sizeof(*mreq)) -+} -+ -+// GetsockoptXucred is a getsockopt wrapper that returns an Xucred struct. -+// The usual level and opt are SOL_LOCAL and LOCAL_PEERCRED, respectively. -+func GetsockoptXucred(fd, level, opt int) (*Xucred, error) { -+ x := new(Xucred) -+ vallen := _Socklen(SizeofXucred) -+ err := getsockopt(fd, level, opt, unsafe.Pointer(x), &vallen) -+ return x, err -+} -+ -+func GetsockoptTCPConnectionInfo(fd, level, opt int) (*TCPConnectionInfo, error) { -+ var value TCPConnectionInfo -+ vallen := _Socklen(SizeofTCPConnectionInfo) -+ err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen) -+ return &value, err -+} -+ -+func SysctlKinfoProc(name string, args ...int) (*KinfoProc, error) { -+ mib, err := sysctlmib(name, args...) -+ if err != nil { -+ return nil, err -+ } -+ -+ var kinfo KinfoProc -+ n := uintptr(SizeofKinfoProc) -+ if err := sysctl(mib, (*byte)(unsafe.Pointer(&kinfo)), &n, nil, 0); err != nil { -+ return nil, err -+ } -+ if n != SizeofKinfoProc { -+ return nil, EIO -+ } -+ return &kinfo, nil -+} -+ -+func SysctlKinfoProcSlice(name string, args ...int) ([]KinfoProc, error) { -+ mib, err := sysctlmib(name, args...) -+ if err != nil { -+ return nil, err -+ } -+ -+ // Find size. -+ n := uintptr(0) -+ if err := sysctl(mib, nil, &n, nil, 0); err != nil { -+ return nil, err -+ } -+ if n == 0 { -+ return nil, nil -+ } -+ if n%SizeofKinfoProc != 0 { -+ return nil, fmt.Errorf("sysctl() returned a size of %d, which is not a multiple of %d", n, SizeofKinfoProc) -+ } -+ -+ // Read into buffer of that size. -+ buf := make([]KinfoProc, n/SizeofKinfoProc) -+ if err := sysctl(mib, (*byte)(unsafe.Pointer(&buf[0])), &n, nil, 0); err != nil { -+ return nil, err -+ } -+ if n%SizeofKinfoProc != 0 { -+ return nil, fmt.Errorf("sysctl() returned a size of %d, which is not a multiple of %d", n, SizeofKinfoProc) -+ } -+ -+ // The actual call may return less than the original reported required -+ // size so ensure we deal with that. -+ return buf[:n/SizeofKinfoProc], nil -+} -+ - //sys sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) - -+//sys shmat(id int, addr uintptr, flag int) (ret uintptr, err error) -+//sys shmctl(id int, cmd int, buf *SysvShmDesc) (result int, err error) -+//sys shmdt(addr uintptr) (err error) -+//sys shmget(key int, size int, flag int) (id int, err error) -+ - /* - * Exposed directly - */ -@@ -396,6 +468,8 @@ func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err e - //sys Chroot(path string) (err error) - //sys ClockGettime(clockid int32, time *Timespec) (err error) - //sys Close(fd int) (err error) -+//sys Clonefile(src string, dst string, flags int) (err error) -+//sys Clonefileat(srcDirfd int, src string, dstDirfd int, dst string, flags int) (err error) - //sys Dup(fd int) (nfd int, err error) - //sys Dup2(from int, to int) (err error) - //sys Exchangedata(path1 string, path2 string, options int) (err error) -@@ -407,10 +481,12 @@ func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err e - //sys Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) - //sys Fchown(fd int, uid int, gid int) (err error) - //sys Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) -+//sys Fclonefileat(srcDirfd int, dstDirfd int, dst string, flags int) (err error) - //sys Flock(fd int, how int) (err error) - //sys Fpathconf(fd int, name int) (val int, err error) - //sys Fsync(fd int) (err error) - //sys Ftruncate(fd int, length int64) (err error) -+//sys Getcwd(buf []byte) (n int, err error) - //sys Getdtablesize() (size int) - //sysnb Getegid() (egid int) - //sysnb Geteuid() (uid int) -@@ -423,6 +499,7 @@ func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err e - //sysnb Getrlimit(which int, lim *Rlimit) (err error) - //sysnb Getrusage(who int, rusage *Rusage) (err error) - //sysnb Getsid(pid int) (sid int, err error) -+//sysnb Gettimeofday(tp *Timeval) (err error) - //sysnb Getuid() (uid int) - //sysnb Issetugid() (tainted bool) - //sys Kqueue() (fd int, err error) -@@ -434,11 +511,12 @@ func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err e - //sys Mkdirat(dirfd int, path string, mode uint32) (err error) - //sys Mkfifo(path string, mode uint32) (err error) - //sys Mknod(path string, mode uint32, dev int) (err error) -+//sys Mount(fsType string, dir string, flags int, data unsafe.Pointer) (err error) - //sys Open(path string, mode int, perm uint32) (fd int, err error) - //sys Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) - //sys Pathconf(path string, name int) (val int, err error) --//sys Pread(fd int, p []byte, offset int64) (n int, err error) --//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) -+//sys pread(fd int, p []byte, offset int64) (n int, err error) -+//sys pwrite(fd int, p []byte, offset int64) (n int, err error) - //sys read(fd int, p []byte) (n int, err error) - //sys Readlink(path string, buf []byte) (n int, err error) - //sys Readlinkat(dirfd int, path string, buf []byte) (n int, err error) -@@ -471,8 +549,8 @@ func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err e - //sys Unlinkat(dirfd int, path string, flags int) (err error) - //sys Unmount(path string, flags int) (err error) - //sys write(fd int, p []byte) (n int, err error) --//sys mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) --//sys munmap(addr uintptr, length uintptr) (err error) -+//sys mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) -+//sys munmap(addr uintptr, length uintptr) (err error) - //sys readlen(fd int, buf *byte, nbuf int) (n int, err error) = SYS_READ - //sys writelen(fd int, buf *byte, nbuf int) (n int, err error) = SYS_WRITE - -@@ -502,7 +580,6 @@ func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err e - // Nfssvc - // Getfh - // Quotactl --// Mount - // Csops - // Waitid - // Add_profil -@@ -536,10 +613,6 @@ func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err e - // Msgget - // Msgsnd - // Msgrcv --// Shmat --// Shmctl --// Shmdt --// Shmget - // Shm_open - // Shm_unlink - // Sem_open -diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_386.1_11.go b/vendor/golang.org/x/sys/unix/syscall_darwin_386.1_11.go -deleted file mode 100644 -index 6b223f9..0000000 ---- a/vendor/golang.org/x/sys/unix/syscall_darwin_386.1_11.go -+++ /dev/null -@@ -1,9 +0,0 @@ --// Copyright 2019 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --// +build darwin,386,!go1.12 -- --package unix -- --//sys Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) = SYS_GETDIRENTRIES64 -diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_386.go b/vendor/golang.org/x/sys/unix/syscall_darwin_386.go -deleted file mode 100644 -index 707ba4f..0000000 ---- a/vendor/golang.org/x/sys/unix/syscall_darwin_386.go -+++ /dev/null -@@ -1,68 +0,0 @@ --// Copyright 2009 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --// +build 386,darwin -- --package unix -- --import ( -- "syscall" --) -- --//sys ptrace(request int, pid int, addr uintptr, data uintptr) (err error) -- --func setTimespec(sec, nsec int64) Timespec { -- return Timespec{Sec: int32(sec), Nsec: int32(nsec)} --} -- --func setTimeval(sec, usec int64) Timeval { -- return Timeval{Sec: int32(sec), Usec: int32(usec)} --} -- --//sysnb gettimeofday(tp *Timeval) (sec int32, usec int32, err error) --func Gettimeofday(tv *Timeval) (err error) { -- // The tv passed to gettimeofday must be non-nil -- // but is otherwise unused. The answers come back -- // in the two registers. -- sec, usec, err := gettimeofday(tv) -- tv.Sec = int32(sec) -- tv.Usec = int32(usec) -- return err --} -- --func SetKevent(k *Kevent_t, fd, mode, flags int) { -- k.Ident = uint32(fd) -- k.Filter = int16(mode) -- k.Flags = uint16(flags) --} -- --func (iov *Iovec) SetLen(length int) { -- iov.Len = uint32(length) --} -- --func (msghdr *Msghdr) SetControllen(length int) { -- msghdr.Controllen = uint32(length) --} -- --func (msghdr *Msghdr) SetIovlen(length int) { -- msghdr.Iovlen = int32(length) --} -- --func (cmsg *Cmsghdr) SetLen(length int) { -- cmsg.Len = uint32(length) --} -- --func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno) -- --// SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions --// of darwin/386 the syscall is called sysctl instead of __sysctl. --const SYS___SYSCTL = SYS_SYSCTL -- --//sys Fstat(fd int, stat *Stat_t) (err error) = SYS_FSTAT64 --//sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) = SYS_FSTATAT64 --//sys Fstatfs(fd int, stat *Statfs_t) (err error) = SYS_FSTATFS64 --//sys getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) = SYS_GETFSSTAT64 --//sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64 --//sys Stat(path string, stat *Stat_t) (err error) = SYS_STAT64 --//sys Statfs(path string, stat *Statfs_t) (err error) = SYS_STATFS64 -diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.1_11.go b/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.1_11.go -deleted file mode 100644 -index 68ebd6f..0000000 ---- a/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.1_11.go -+++ /dev/null -@@ -1,9 +0,0 @@ --// Copyright 2019 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --// +build darwin,amd64,!go1.12 -- --package unix -- --//sys Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) = SYS_GETDIRENTRIES64 -diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.go b/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.go -index fdbfb59..b37310c 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.go -+++ b/vendor/golang.org/x/sys/unix/syscall_darwin_amd64.go -@@ -2,15 +2,12 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build amd64 && darwin - // +build amd64,darwin - - package unix - --import ( -- "syscall" --) -- --//sys ptrace(request int, pid int, addr uintptr, data uintptr) (err error) -+import "syscall" - - func setTimespec(sec, nsec int64) Timespec { - return Timespec{Sec: sec, Nsec: nsec} -@@ -20,17 +17,6 @@ func setTimeval(sec, usec int64) Timeval { - return Timeval{Sec: sec, Usec: int32(usec)} - } - --//sysnb gettimeofday(tp *Timeval) (sec int64, usec int32, err error) --func Gettimeofday(tv *Timeval) (err error) { -- // The tv passed to gettimeofday must be non-nil -- // but is otherwise unused. The answers come back -- // in the two registers. -- sec, usec, err := gettimeofday(tv) -- tv.Sec = sec -- tv.Usec = usec -- return err --} -- - func SetKevent(k *Kevent_t, fd, mode, flags int) { - k.Ident = uint64(fd) - k.Filter = int16(mode) -@@ -55,14 +41,11 @@ func (cmsg *Cmsghdr) SetLen(length int) { - - func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno) - --// SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions --// of darwin/amd64 the syscall is called sysctl instead of __sysctl. --const SYS___SYSCTL = SYS_SYSCTL -- - //sys Fstat(fd int, stat *Stat_t) (err error) = SYS_FSTAT64 - //sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) = SYS_FSTATAT64 - //sys Fstatfs(fd int, stat *Statfs_t) (err error) = SYS_FSTATFS64 - //sys getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) = SYS_GETFSSTAT64 - //sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64 -+//sys ptrace1(request int, pid int, addr uintptr, data uintptr) (err error) = SYS_ptrace - //sys Stat(path string, stat *Stat_t) (err error) = SYS_STAT64 - //sys Statfs(path string, stat *Statfs_t) (err error) = SYS_STATFS64 -diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_arm.1_11.go b/vendor/golang.org/x/sys/unix/syscall_darwin_arm.1_11.go -deleted file mode 100644 -index 0e3f25a..0000000 ---- a/vendor/golang.org/x/sys/unix/syscall_darwin_arm.1_11.go -+++ /dev/null -@@ -1,11 +0,0 @@ --// Copyright 2019 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --// +build darwin,arm,!go1.12 -- --package unix -- --func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) { -- return 0, ENOSYS --} -diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_arm.go b/vendor/golang.org/x/sys/unix/syscall_darwin_arm.go -deleted file mode 100644 -index f8bc4cf..0000000 ---- a/vendor/golang.org/x/sys/unix/syscall_darwin_arm.go -+++ /dev/null -@@ -1,68 +0,0 @@ --// Copyright 2015 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --package unix -- --import ( -- "syscall" --) -- --func ptrace(request int, pid int, addr uintptr, data uintptr) error { -- return ENOTSUP --} -- --func setTimespec(sec, nsec int64) Timespec { -- return Timespec{Sec: int32(sec), Nsec: int32(nsec)} --} -- --func setTimeval(sec, usec int64) Timeval { -- return Timeval{Sec: int32(sec), Usec: int32(usec)} --} -- --//sysnb gettimeofday(tp *Timeval) (sec int32, usec int32, err error) --func Gettimeofday(tv *Timeval) (err error) { -- // The tv passed to gettimeofday must be non-nil -- // but is otherwise unused. The answers come back -- // in the two registers. -- sec, usec, err := gettimeofday(tv) -- tv.Sec = int32(sec) -- tv.Usec = int32(usec) -- return err --} -- --func SetKevent(k *Kevent_t, fd, mode, flags int) { -- k.Ident = uint32(fd) -- k.Filter = int16(mode) -- k.Flags = uint16(flags) --} -- --func (iov *Iovec) SetLen(length int) { -- iov.Len = uint32(length) --} -- --func (msghdr *Msghdr) SetControllen(length int) { -- msghdr.Controllen = uint32(length) --} -- --func (msghdr *Msghdr) SetIovlen(length int) { -- msghdr.Iovlen = int32(length) --} -- --func (cmsg *Cmsghdr) SetLen(length int) { -- cmsg.Len = uint32(length) --} -- --func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno) // sic -- --// SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions --// of darwin/arm the syscall is called sysctl instead of __sysctl. --const SYS___SYSCTL = SYS_SYSCTL -- --//sys Fstat(fd int, stat *Stat_t) (err error) --//sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) --//sys Fstatfs(fd int, stat *Statfs_t) (err error) --//sys getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) = SYS_GETFSSTAT --//sys Lstat(path string, stat *Stat_t) (err error) --//sys Stat(path string, stat *Stat_t) (err error) --//sys Statfs(path string, stat *Statfs_t) (err error) -diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.1_11.go b/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.1_11.go -deleted file mode 100644 -index 01d4504..0000000 ---- a/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.1_11.go -+++ /dev/null -@@ -1,11 +0,0 @@ --// Copyright 2019 The Go Authors. All rights reserved. --// Use of this source code is governed by a BSD-style --// license that can be found in the LICENSE file. -- --// +build darwin,arm64,!go1.12 -- --package unix -- --func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) { -- return 0, ENOSYS --} -diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.go b/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.go -index 5ede3ac..d51ec99 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.go -+++ b/vendor/golang.org/x/sys/unix/syscall_darwin_arm64.go -@@ -2,17 +2,12 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build arm64 && darwin - // +build arm64,darwin - - package unix - --import ( -- "syscall" --) -- --func ptrace(request int, pid int, addr uintptr, data uintptr) error { -- return ENOTSUP --} -+import "syscall" - - func setTimespec(sec, nsec int64) Timespec { - return Timespec{Sec: sec, Nsec: nsec} -@@ -22,17 +17,6 @@ func setTimeval(sec, usec int64) Timeval { - return Timeval{Sec: sec, Usec: int32(usec)} - } - --//sysnb gettimeofday(tp *Timeval) (sec int64, usec int32, err error) --func Gettimeofday(tv *Timeval) (err error) { -- // The tv passed to gettimeofday must be non-nil -- // but is otherwise unused. The answers come back -- // in the two registers. -- sec, usec, err := gettimeofday(tv) -- tv.Sec = sec -- tv.Usec = usec -- return err --} -- - func SetKevent(k *Kevent_t, fd, mode, flags int) { - k.Ident = uint64(fd) - k.Filter = int16(mode) -@@ -57,14 +41,11 @@ func (cmsg *Cmsghdr) SetLen(length int) { - - func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno) // sic - --// SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions --// of darwin/arm64 the syscall is called sysctl instead of __sysctl. --const SYS___SYSCTL = SYS_SYSCTL -- - //sys Fstat(fd int, stat *Stat_t) (err error) - //sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) - //sys Fstatfs(fd int, stat *Statfs_t) (err error) - //sys getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) = SYS_GETFSSTAT - //sys Lstat(path string, stat *Stat_t) (err error) -+//sys ptrace1(request int, pid int, addr uintptr, data uintptr) (err error) = SYS_ptrace - //sys Stat(path string, stat *Stat_t) (err error) - //sys Statfs(path string, stat *Statfs_t) (err error) -diff --git a/vendor/golang.org/x/sys/unix/syscall_darwin_libSystem.go b/vendor/golang.org/x/sys/unix/syscall_darwin_libSystem.go -index f34c86c..53c9664 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_darwin_libSystem.go -+++ b/vendor/golang.org/x/sys/unix/syscall_darwin_libSystem.go -@@ -2,11 +2,12 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build darwin && go1.12 - // +build darwin,go1.12 - - package unix - --import "unsafe" -+import _ "unsafe" - - // Implemented in the runtime package (runtime/sys_darwin.go) - func syscall_syscall(fn, a1, a2, a3 uintptr) (r1, r2 uintptr, err Errno) -@@ -24,10 +25,3 @@ func syscall_syscallPtr(fn, a1, a2, a3 uintptr) (r1, r2 uintptr, err Errno) - //go:linkname syscall_rawSyscall syscall.rawSyscall - //go:linkname syscall_rawSyscall6 syscall.rawSyscall6 - //go:linkname syscall_syscallPtr syscall.syscallPtr -- --// Find the entry point for f. See comments in runtime/proc.go for the --// function of the same name. --//go:nosplit --func funcPC(f func()) uintptr { -- return **(**uintptr)(unsafe.Pointer(&f)) --} -diff --git a/vendor/golang.org/x/sys/unix/syscall_dragonfly.go b/vendor/golang.org/x/sys/unix/syscall_dragonfly.go -index 8a195ae..61c0d0d 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_dragonfly.go -+++ b/vendor/golang.org/x/sys/unix/syscall_dragonfly.go -@@ -47,6 +47,10 @@ type SockaddrDatalink struct { - raw RawSockaddrDatalink - } - -+func anyToSockaddrGOOS(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { -+ return nil, EAFNOSUPPORT -+} -+ - // Translate "kern.hostname" to []_C_int{0,1,2,3}. - func nametomib(name string) (mib []_C_int, err error) { - const siz = unsafe.Sizeof(mib[0]) -@@ -91,23 +95,44 @@ func direntNamlen(buf []byte) (uint64, bool) { - return readInt(buf, unsafe.Offsetof(Dirent{}.Namlen), unsafe.Sizeof(Dirent{}.Namlen)) - } - --//sysnb pipe() (r int, w int, err error) -+//sysnb pipe() (r int, w int, err error) - - func Pipe(p []int) (err error) { - if len(p) != 2 { - return EINVAL - } -- p[0], p[1], err = pipe() -+ r, w, err := pipe() -+ if err == nil { -+ p[0], p[1] = r, w -+ } - return - } - -+//sysnb pipe2(p *[2]_C_int, flags int) (r int, w int, err error) -+ -+func Pipe2(p []int, flags int) (err error) { -+ if len(p) != 2 { -+ return EINVAL -+ } -+ var pp [2]_C_int -+ // pipe2 on dragonfly takes an fds array as an argument, but still -+ // returns the file descriptors. -+ r, w, err := pipe2(&pp, flags) -+ if err == nil { -+ p[0], p[1] = r, w -+ } -+ return err -+} -+ - //sys extpread(fd int, p []byte, flags int, offset int64) (n int, err error) --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+ -+func pread(fd int, p []byte, offset int64) (n int, err error) { - return extpread(fd, p, 0, offset) - } - - //sys extpwrite(fd int, p []byte, flags int, offset int64) (n int, err error) --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+ -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - return extpwrite(fd, p, 0, offset) - } - -@@ -129,23 +154,8 @@ func Accept4(fd, flags int) (nfd int, sa Sockaddr, err error) { - return - } - --const ImplementsGetwd = true -- - //sys Getcwd(buf []byte) (n int, err error) = SYS___GETCWD - --func Getwd() (string, error) { -- var buf [PathMax]byte -- _, err := Getcwd(buf[0:]) -- if err != nil { -- return "", err -- } -- n := clen(buf[:]) -- if n < 1 { -- return "", EINVAL -- } -- return string(buf[:n]), nil --} -- - func Getfsstat(buf []Statfs_t, flags int) (n int, err error) { - var _p0 unsafe.Pointer - var bufsize uintptr -@@ -161,14 +171,9 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) { - return - } - --func setattrlistTimes(path string, times []Timespec, flags int) error { -- // used on Darwin for UtimesNano -- return ENOSYS --} -- - //sys ioctl(fd int, req uint, arg uintptr) (err error) - --//sys sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) = SYS___SYSCTL -+//sys sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) = SYS___SYSCTL - - func sysctlUname(mib []_C_int, old *byte, oldlen *uintptr) error { - err := sysctl(mib, old, oldlen, nil, 0) -@@ -335,8 +340,8 @@ func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err e - //sys Unlinkat(dirfd int, path string, flags int) (err error) - //sys Unmount(path string, flags int) (err error) - //sys write(fd int, p []byte) (n int, err error) --//sys mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) --//sys munmap(addr uintptr, length uintptr) (err error) -+//sys mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) -+//sys munmap(addr uintptr, length uintptr) (err error) - //sys readlen(fd int, buf *byte, nbuf int) (n int, err error) = SYS_READ - //sys writelen(fd int, buf *byte, nbuf int) (n int, err error) = SYS_WRITE - //sys accept4(fd int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (nfd int, err error) -diff --git a/vendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go b/vendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go -index a6b4830..4e2d321 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go -+++ b/vendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build amd64 && dragonfly - // +build amd64,dragonfly - - package unix -diff --git a/vendor/golang.org/x/sys/unix/syscall_freebsd.go b/vendor/golang.org/x/sys/unix/syscall_freebsd.go -index 6932e7c..de7c23e 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_freebsd.go -+++ b/vendor/golang.org/x/sys/unix/syscall_freebsd.go -@@ -17,25 +17,12 @@ import ( - "unsafe" - ) - --const ( -- SYS_FSTAT_FREEBSD12 = 551 // { int fstat(int fd, _Out_ struct stat *sb); } -- SYS_FSTATAT_FREEBSD12 = 552 // { int fstatat(int fd, _In_z_ char *path, \ -- SYS_GETDIRENTRIES_FREEBSD12 = 554 // { ssize_t getdirentries(int fd, \ -- SYS_STATFS_FREEBSD12 = 555 // { int statfs(_In_z_ char *path, \ -- SYS_FSTATFS_FREEBSD12 = 556 // { int fstatfs(int fd, \ -- SYS_GETFSSTAT_FREEBSD12 = 557 // { int getfsstat( \ -- SYS_MKNODAT_FREEBSD12 = 559 // { int mknodat(int fd, _In_z_ char *path, \ --) -- - // See https://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/versions.html. - var ( - osreldateOnce sync.Once - osreldate uint32 - ) - --// INO64_FIRST from /usr/src/lib/libc/sys/compat-ino64.h --const _ino64First = 1200031 -- - func supportsABI(ver uint32) bool { - osreldateOnce.Do(func() { osreldate, _ = SysctlUint32("kern.osreldate") }) - return osreldate >= ver -@@ -54,6 +41,10 @@ type SockaddrDatalink struct { - raw RawSockaddrDatalink - } - -+func anyToSockaddrGOOS(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { -+ return nil, EAFNOSUPPORT -+} -+ - // Translate "kern.hostname" to []_C_int{0,1,2,3}. - func nametomib(name string) (mib []_C_int, err error) { - const siz = unsafe.Sizeof(mib[0]) -@@ -106,8 +97,10 @@ func Pipe2(p []int, flags int) error { - } - var pp [2]_C_int - err := pipe2(&pp, flags) -- p[0] = int(pp[0]) -- p[1] = int(pp[1]) -+ if err == nil { -+ p[0] = int(pp[0]) -+ p[1] = int(pp[1]) -+ } - return err - } - -@@ -122,6 +115,15 @@ func SetsockoptIPMreqn(fd, level, opt int, mreq *IPMreqn) (err error) { - return setsockopt(fd, level, opt, unsafe.Pointer(mreq), unsafe.Sizeof(*mreq)) - } - -+// GetsockoptXucred is a getsockopt wrapper that returns an Xucred struct. -+// The usual level and opt are SOL_LOCAL and LOCAL_PEERCRED, respectively. -+func GetsockoptXucred(fd, level, opt int) (*Xucred, error) { -+ x := new(Xucred) -+ vallen := _Socklen(SizeofXucred) -+ err := getsockopt(fd, level, opt, unsafe.Pointer(x), &vallen) -+ return x, err -+} -+ - func Accept4(fd, flags int) (nfd int, sa Sockaddr, err error) { - var rsa RawSockaddrAny - var len _Socklen = SizeofSockaddrAny -@@ -140,68 +142,28 @@ func Accept4(fd, flags int) (nfd int, sa Sockaddr, err error) { - return - } - --const ImplementsGetwd = true -- - //sys Getcwd(buf []byte) (n int, err error) = SYS___GETCWD - --func Getwd() (string, error) { -- var buf [PathMax]byte -- _, err := Getcwd(buf[0:]) -- if err != nil { -- return "", err -- } -- n := clen(buf[:]) -- if n < 1 { -- return "", EINVAL -- } -- return string(buf[:n]), nil --} -- - func Getfsstat(buf []Statfs_t, flags int) (n int, err error) { - var ( -- _p0 unsafe.Pointer -- bufsize uintptr -- oldBuf []statfs_freebsd11_t -- needsConvert bool -+ _p0 unsafe.Pointer -+ bufsize uintptr - ) -- - if len(buf) > 0 { -- if supportsABI(_ino64First) { -- _p0 = unsafe.Pointer(&buf[0]) -- bufsize = unsafe.Sizeof(Statfs_t{}) * uintptr(len(buf)) -- } else { -- n := len(buf) -- oldBuf = make([]statfs_freebsd11_t, n) -- _p0 = unsafe.Pointer(&oldBuf[0]) -- bufsize = unsafe.Sizeof(statfs_freebsd11_t{}) * uintptr(n) -- needsConvert = true -- } -- } -- var sysno uintptr = SYS_GETFSSTAT -- if supportsABI(_ino64First) { -- sysno = SYS_GETFSSTAT_FREEBSD12 -+ _p0 = unsafe.Pointer(&buf[0]) -+ bufsize = unsafe.Sizeof(Statfs_t{}) * uintptr(len(buf)) - } -- r0, _, e1 := Syscall(sysno, uintptr(_p0), bufsize, uintptr(flags)) -+ r0, _, e1 := Syscall(SYS_GETFSSTAT, uintptr(_p0), bufsize, uintptr(flags)) - n = int(r0) - if e1 != 0 { - err = e1 - } -- if e1 == 0 && needsConvert { -- for i := range oldBuf { -- buf[i].convertFrom(&oldBuf[i]) -- } -- } - return - } - --func setattrlistTimes(path string, times []Timespec, flags int) error { -- // used on Darwin for UtimesNano -- return ENOSYS --} -- --//sys ioctl(fd int, req uint, arg uintptr) (err error) -+//sys ioctl(fd int, req uint, arg uintptr) (err error) - --//sys sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) = SYS___SYSCTL -+//sys sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) = SYS___SYSCTL - - func Uname(uname *Utsname) error { - mib := []_C_int{CTL_KERN, KERN_OSTYPE} -@@ -250,87 +212,11 @@ func Uname(uname *Utsname) error { - } - - func Stat(path string, st *Stat_t) (err error) { -- var oldStat stat_freebsd11_t -- if supportsABI(_ino64First) { -- return fstatat_freebsd12(AT_FDCWD, path, st, 0) -- } -- err = stat(path, &oldStat) -- if err != nil { -- return err -- } -- -- st.convertFrom(&oldStat) -- return nil -+ return Fstatat(AT_FDCWD, path, st, 0) - } - - func Lstat(path string, st *Stat_t) (err error) { -- var oldStat stat_freebsd11_t -- if supportsABI(_ino64First) { -- return fstatat_freebsd12(AT_FDCWD, path, st, AT_SYMLINK_NOFOLLOW) -- } -- err = lstat(path, &oldStat) -- if err != nil { -- return err -- } -- -- st.convertFrom(&oldStat) -- return nil --} -- --func Fstat(fd int, st *Stat_t) (err error) { -- var oldStat stat_freebsd11_t -- if supportsABI(_ino64First) { -- return fstat_freebsd12(fd, st) -- } -- err = fstat(fd, &oldStat) -- if err != nil { -- return err -- } -- -- st.convertFrom(&oldStat) -- return nil --} -- --func Fstatat(fd int, path string, st *Stat_t, flags int) (err error) { -- var oldStat stat_freebsd11_t -- if supportsABI(_ino64First) { -- return fstatat_freebsd12(fd, path, st, flags) -- } -- err = fstatat(fd, path, &oldStat, flags) -- if err != nil { -- return err -- } -- -- st.convertFrom(&oldStat) -- return nil --} -- --func Statfs(path string, st *Statfs_t) (err error) { -- var oldStatfs statfs_freebsd11_t -- if supportsABI(_ino64First) { -- return statfs_freebsd12(path, st) -- } -- err = statfs(path, &oldStatfs) -- if err != nil { -- return err -- } -- -- st.convertFrom(&oldStatfs) -- return nil --} -- --func Fstatfs(fd int, st *Statfs_t) (err error) { -- var oldStatfs statfs_freebsd11_t -- if supportsABI(_ino64First) { -- return fstatfs_freebsd12(fd, st) -- } -- err = fstatfs(fd, &oldStatfs) -- if err != nil { -- return err -- } -- -- st.convertFrom(&oldStatfs) -- return nil -+ return Fstatat(AT_FDCWD, path, st, AT_SYMLINK_NOFOLLOW) - } - - func Getdents(fd int, buf []byte) (n int, err error) { -@@ -338,162 +224,25 @@ func Getdents(fd int, buf []byte) (n int, err error) { - } - - func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) { -- if supportsABI(_ino64First) { -- if basep == nil || unsafe.Sizeof(*basep) == 8 { -- return getdirentries_freebsd12(fd, buf, (*uint64)(unsafe.Pointer(basep))) -- } -- // The freebsd12 syscall needs a 64-bit base. On 32-bit machines -- // we can't just use the basep passed in. See #32498. -- var base uint64 = uint64(*basep) -- n, err = getdirentries_freebsd12(fd, buf, &base) -- *basep = uintptr(base) -- if base>>32 != 0 { -- // We can't stuff the base back into a uintptr, so any -- // future calls would be suspect. Generate an error. -- // EIO is allowed by getdirentries. -- err = EIO -- } -- return -- } -- -- // The old syscall entries are smaller than the new. Use 1/4 of the original -- // buffer size rounded up to DIRBLKSIZ (see /usr/src/lib/libc/sys/getdirentries.c). -- oldBufLen := roundup(len(buf)/4, _dirblksiz) -- oldBuf := make([]byte, oldBufLen) -- n, err = getdirentries(fd, oldBuf, basep) -- if err == nil && n > 0 { -- n = convertFromDirents11(buf, oldBuf[:n]) -+ if basep == nil || unsafe.Sizeof(*basep) == 8 { -+ return getdirentries(fd, buf, (*uint64)(unsafe.Pointer(basep))) -+ } -+ // The syscall needs a 64-bit base. On 32-bit machines -+ // we can't just use the basep passed in. See #32498. -+ var base uint64 = uint64(*basep) -+ n, err = getdirentries(fd, buf, &base) -+ *basep = uintptr(base) -+ if base>>32 != 0 { -+ // We can't stuff the base back into a uintptr, so any -+ // future calls would be suspect. Generate an error. -+ // EIO is allowed by getdirentries. -+ err = EIO - } - return - } - - func Mknod(path string, mode uint32, dev uint64) (err error) { -- var oldDev int -- if supportsABI(_ino64First) { -- return mknodat_freebsd12(AT_FDCWD, path, mode, dev) -- } -- oldDev = int(dev) -- return mknod(path, mode, oldDev) --} -- --func Mknodat(fd int, path string, mode uint32, dev uint64) (err error) { -- var oldDev int -- if supportsABI(_ino64First) { -- return mknodat_freebsd12(fd, path, mode, dev) -- } -- oldDev = int(dev) -- return mknodat(fd, path, mode, oldDev) --} -- --// round x to the nearest multiple of y, larger or equal to x. --// --// from /usr/include/sys/param.h Macros for counting and rounding. --// #define roundup(x, y) ((((x)+((y)-1))/(y))*(y)) --func roundup(x, y int) int { -- return ((x + y - 1) / y) * y --} -- --func (s *Stat_t) convertFrom(old *stat_freebsd11_t) { -- *s = Stat_t{ -- Dev: uint64(old.Dev), -- Ino: uint64(old.Ino), -- Nlink: uint64(old.Nlink), -- Mode: old.Mode, -- Uid: old.Uid, -- Gid: old.Gid, -- Rdev: uint64(old.Rdev), -- Atim: old.Atim, -- Mtim: old.Mtim, -- Ctim: old.Ctim, -- Btim: old.Btim, -- Size: old.Size, -- Blocks: old.Blocks, -- Blksize: old.Blksize, -- Flags: old.Flags, -- Gen: uint64(old.Gen), -- } --} -- --func (s *Statfs_t) convertFrom(old *statfs_freebsd11_t) { -- *s = Statfs_t{ -- Version: _statfsVersion, -- Type: old.Type, -- Flags: old.Flags, -- Bsize: old.Bsize, -- Iosize: old.Iosize, -- Blocks: old.Blocks, -- Bfree: old.Bfree, -- Bavail: old.Bavail, -- Files: old.Files, -- Ffree: old.Ffree, -- Syncwrites: old.Syncwrites, -- Asyncwrites: old.Asyncwrites, -- Syncreads: old.Syncreads, -- Asyncreads: old.Asyncreads, -- // Spare -- Namemax: old.Namemax, -- Owner: old.Owner, -- Fsid: old.Fsid, -- // Charspare -- // Fstypename -- // Mntfromname -- // Mntonname -- } -- -- sl := old.Fstypename[:] -- n := clen(*(*[]byte)(unsafe.Pointer(&sl))) -- copy(s.Fstypename[:], old.Fstypename[:n]) -- -- sl = old.Mntfromname[:] -- n = clen(*(*[]byte)(unsafe.Pointer(&sl))) -- copy(s.Mntfromname[:], old.Mntfromname[:n]) -- -- sl = old.Mntonname[:] -- n = clen(*(*[]byte)(unsafe.Pointer(&sl))) -- copy(s.Mntonname[:], old.Mntonname[:n]) --} -- --func convertFromDirents11(buf []byte, old []byte) int { -- const ( -- fixedSize = int(unsafe.Offsetof(Dirent{}.Name)) -- oldFixedSize = int(unsafe.Offsetof(dirent_freebsd11{}.Name)) -- ) -- -- dstPos := 0 -- srcPos := 0 -- for dstPos+fixedSize < len(buf) && srcPos+oldFixedSize < len(old) { -- var dstDirent Dirent -- var srcDirent dirent_freebsd11 -- -- // If multiple direntries are written, sometimes when we reach the final one, -- // we may have cap of old less than size of dirent_freebsd11. -- copy((*[unsafe.Sizeof(srcDirent)]byte)(unsafe.Pointer(&srcDirent))[:], old[srcPos:]) -- -- reclen := roundup(fixedSize+int(srcDirent.Namlen)+1, 8) -- if dstPos+reclen > len(buf) { -- break -- } -- -- dstDirent.Fileno = uint64(srcDirent.Fileno) -- dstDirent.Off = 0 -- dstDirent.Reclen = uint16(reclen) -- dstDirent.Type = srcDirent.Type -- dstDirent.Pad0 = 0 -- dstDirent.Namlen = uint16(srcDirent.Namlen) -- dstDirent.Pad1 = 0 -- -- copy(dstDirent.Name[:], srcDirent.Name[:srcDirent.Namlen]) -- copy(buf[dstPos:], (*[unsafe.Sizeof(dstDirent)]byte)(unsafe.Pointer(&dstDirent))[:]) -- padding := buf[dstPos+fixedSize+int(dstDirent.Namlen) : dstPos+reclen] -- for i := range padding { -- padding[i] = 0 -- } -- -- dstPos += int(dstDirent.Reclen) -- srcPos += int(srcDirent.Reclen) -- } -- -- return dstPos -+ return Mknodat(AT_FDCWD, path, mode, dev) - } - - func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) { -@@ -506,31 +255,31 @@ func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err e - //sys ptrace(request int, pid int, addr uintptr, data int) (err error) - - func PtraceAttach(pid int) (err error) { -- return ptrace(PTRACE_ATTACH, pid, 0, 0) -+ return ptrace(PT_ATTACH, pid, 0, 0) - } - - func PtraceCont(pid int, signal int) (err error) { -- return ptrace(PTRACE_CONT, pid, 1, signal) -+ return ptrace(PT_CONTINUE, pid, 1, signal) - } - - func PtraceDetach(pid int) (err error) { -- return ptrace(PTRACE_DETACH, pid, 1, 0) -+ return ptrace(PT_DETACH, pid, 1, 0) - } - - func PtraceGetFpRegs(pid int, fpregsout *FpReg) (err error) { -- return ptrace(PTRACE_GETFPREGS, pid, uintptr(unsafe.Pointer(fpregsout)), 0) -+ return ptrace(PT_GETFPREGS, pid, uintptr(unsafe.Pointer(fpregsout)), 0) - } - - func PtraceGetRegs(pid int, regsout *Reg) (err error) { -- return ptrace(PTRACE_GETREGS, pid, uintptr(unsafe.Pointer(regsout)), 0) -+ return ptrace(PT_GETREGS, pid, uintptr(unsafe.Pointer(regsout)), 0) - } - - func PtraceLwpEvents(pid int, enable int) (err error) { -- return ptrace(PTRACE_LWPEVENTS, pid, 0, enable) -+ return ptrace(PT_LWP_EVENTS, pid, 0, enable) - } - - func PtraceLwpInfo(pid int, info uintptr) (err error) { -- return ptrace(PTRACE_LWPINFO, pid, info, int(unsafe.Sizeof(PtraceLwpInfoStruct{}))) -+ return ptrace(PT_LWPINFO, pid, info, int(unsafe.Sizeof(PtraceLwpInfoStruct{}))) - } - - func PtracePeekData(pid int, addr uintptr, out []byte) (count int, err error) { -@@ -550,11 +299,11 @@ func PtracePokeText(pid int, addr uintptr, data []byte) (count int, err error) { - } - - func PtraceSetRegs(pid int, regs *Reg) (err error) { -- return ptrace(PTRACE_SETREGS, pid, uintptr(unsafe.Pointer(regs)), 0) -+ return ptrace(PT_SETREGS, pid, uintptr(unsafe.Pointer(regs)), 0) - } - - func PtraceSingleStep(pid int) (err error) { -- return ptrace(PTRACE_SINGLESTEP, pid, 1, 0) -+ return ptrace(PT_STEP, pid, 1, 0) - } - - /* -@@ -596,16 +345,12 @@ func PtraceSingleStep(pid int) (err error) { - //sys Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) - //sys Flock(fd int, how int) (err error) - //sys Fpathconf(fd int, name int) (val int, err error) --//sys fstat(fd int, stat *stat_freebsd11_t) (err error) --//sys fstat_freebsd12(fd int, stat *Stat_t) (err error) --//sys fstatat(fd int, path string, stat *stat_freebsd11_t, flags int) (err error) --//sys fstatat_freebsd12(fd int, path string, stat *Stat_t, flags int) (err error) --//sys fstatfs(fd int, stat *statfs_freebsd11_t) (err error) --//sys fstatfs_freebsd12(fd int, stat *Statfs_t) (err error) -+//sys Fstat(fd int, stat *Stat_t) (err error) -+//sys Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) -+//sys Fstatfs(fd int, stat *Statfs_t) (err error) - //sys Fsync(fd int) (err error) - //sys Ftruncate(fd int, length int64) (err error) --//sys getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) --//sys getdirentries_freebsd12(fd int, buf []byte, basep *uint64) (n int, err error) -+//sys getdirentries(fd int, buf []byte, basep *uint64) (n int, err error) - //sys Getdtablesize() (size int) - //sysnb Getegid() (egid int) - //sysnb Geteuid() (uid int) -@@ -627,19 +372,16 @@ func PtraceSingleStep(pid int) (err error) { - //sys Link(path string, link string) (err error) - //sys Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) - //sys Listen(s int, backlog int) (err error) --//sys lstat(path string, stat *stat_freebsd11_t) (err error) - //sys Mkdir(path string, mode uint32) (err error) - //sys Mkdirat(dirfd int, path string, mode uint32) (err error) - //sys Mkfifo(path string, mode uint32) (err error) --//sys mknod(path string, mode uint32, dev int) (err error) --//sys mknodat(fd int, path string, mode uint32, dev int) (err error) --//sys mknodat_freebsd12(fd int, path string, mode uint32, dev uint64) (err error) -+//sys Mknodat(fd int, path string, mode uint32, dev uint64) (err error) - //sys Nanosleep(time *Timespec, leftover *Timespec) (err error) - //sys Open(path string, mode int, perm uint32) (fd int, err error) - //sys Openat(fdat int, path string, mode int, perm uint32) (fd int, err error) - //sys Pathconf(path string, name int) (val int, err error) --//sys Pread(fd int, p []byte, offset int64) (n int, err error) --//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) -+//sys pread(fd int, p []byte, offset int64) (n int, err error) -+//sys pwrite(fd int, p []byte, offset int64) (n int, err error) - //sys read(fd int, p []byte) (n int, err error) - //sys Readlink(path string, buf []byte) (n int, err error) - //sys Readlinkat(dirfd int, path string, buf []byte) (n int, err error) -@@ -663,9 +405,7 @@ func PtraceSingleStep(pid int) (err error) { - //sysnb Setsid() (pid int, err error) - //sysnb Settimeofday(tp *Timeval) (err error) - //sysnb Setuid(uid int) (err error) --//sys stat(path string, stat *stat_freebsd11_t) (err error) --//sys statfs(path string, stat *statfs_freebsd11_t) (err error) --//sys statfs_freebsd12(path string, stat *Statfs_t) (err error) -+//sys Statfs(path string, stat *Statfs_t) (err error) - //sys Symlink(path string, link string) (err error) - //sys Symlinkat(oldpath string, newdirfd int, newpath string) (err error) - //sys Sync() (err error) -@@ -676,8 +416,8 @@ func PtraceSingleStep(pid int) (err error) { - //sys Unlinkat(dirfd int, path string, flags int) (err error) - //sys Unmount(path string, flags int) (err error) - //sys write(fd int, p []byte) (n int, err error) --//sys mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) --//sys munmap(addr uintptr, length uintptr) (err error) -+//sys mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) -+//sys munmap(addr uintptr, length uintptr) (err error) - //sys readlen(fd int, buf *byte, nbuf int) (n int, err error) = SYS_READ - //sys writelen(fd int, buf *byte, nbuf int) (n int, err error) = SYS_WRITE - //sys accept4(fd int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (nfd int, err error) -diff --git a/vendor/golang.org/x/sys/unix/syscall_freebsd_386.go b/vendor/golang.org/x/sys/unix/syscall_freebsd_386.go -index 72a506d..b11ede8 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_freebsd_386.go -+++ b/vendor/golang.org/x/sys/unix/syscall_freebsd_386.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build 386 && freebsd - // +build 386,freebsd - - package unix -@@ -56,11 +57,11 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e - func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno) - - func PtraceGetFsBase(pid int, fsbase *int64) (err error) { -- return ptrace(PTRACE_GETFSBASE, pid, uintptr(unsafe.Pointer(fsbase)), 0) -+ return ptrace(PT_GETFSBASE, pid, uintptr(unsafe.Pointer(fsbase)), 0) - } - - func PtraceIO(req int, pid int, addr uintptr, out []byte, countin int) (count int, err error) { -- ioDesc := PtraceIoDesc{Op: int32(req), Offs: (*byte)(unsafe.Pointer(addr)), Addr: (*byte)(unsafe.Pointer(&out[0])), Len: uint32(countin)} -- err = ptrace(PTRACE_IO, pid, uintptr(unsafe.Pointer(&ioDesc)), 0) -+ ioDesc := PtraceIoDesc{Op: int32(req), Offs: uintptr(unsafe.Pointer(addr)), Addr: uintptr(unsafe.Pointer(&out[0])), Len: uint32(countin)} -+ err = ptrace(PT_IO, pid, uintptr(unsafe.Pointer(&ioDesc)), 0) - return int(ioDesc.Len), err - } -diff --git a/vendor/golang.org/x/sys/unix/syscall_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/syscall_freebsd_amd64.go -index d5e376a..9ed8eec 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_freebsd_amd64.go -+++ b/vendor/golang.org/x/sys/unix/syscall_freebsd_amd64.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build amd64 && freebsd - // +build amd64,freebsd - - package unix -@@ -56,11 +57,11 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e - func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno) - - func PtraceGetFsBase(pid int, fsbase *int64) (err error) { -- return ptrace(PTRACE_GETFSBASE, pid, uintptr(unsafe.Pointer(fsbase)), 0) -+ return ptrace(PT_GETFSBASE, pid, uintptr(unsafe.Pointer(fsbase)), 0) - } - - func PtraceIO(req int, pid int, addr uintptr, out []byte, countin int) (count int, err error) { -- ioDesc := PtraceIoDesc{Op: int32(req), Offs: (*byte)(unsafe.Pointer(addr)), Addr: (*byte)(unsafe.Pointer(&out[0])), Len: uint64(countin)} -- err = ptrace(PTRACE_IO, pid, uintptr(unsafe.Pointer(&ioDesc)), 0) -+ ioDesc := PtraceIoDesc{Op: int32(req), Offs: uintptr(unsafe.Pointer(addr)), Addr: uintptr(unsafe.Pointer(&out[0])), Len: uint64(countin)} -+ err = ptrace(PT_IO, pid, uintptr(unsafe.Pointer(&ioDesc)), 0) - return int(ioDesc.Len), err - } -diff --git a/vendor/golang.org/x/sys/unix/syscall_freebsd_arm.go b/vendor/golang.org/x/sys/unix/syscall_freebsd_arm.go -index 4ea45bc..f8ac982 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_freebsd_arm.go -+++ b/vendor/golang.org/x/sys/unix/syscall_freebsd_arm.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build arm && freebsd - // +build arm,freebsd - - package unix -@@ -56,7 +57,7 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e - func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno) - - func PtraceIO(req int, pid int, addr uintptr, out []byte, countin int) (count int, err error) { -- ioDesc := PtraceIoDesc{Op: int32(req), Offs: (*byte)(unsafe.Pointer(addr)), Addr: (*byte)(unsafe.Pointer(&out[0])), Len: uint32(countin)} -- err = ptrace(PTRACE_IO, pid, uintptr(unsafe.Pointer(&ioDesc)), 0) -+ ioDesc := PtraceIoDesc{Op: int32(req), Offs: uintptr(unsafe.Pointer(addr)), Addr: uintptr(unsafe.Pointer(&out[0])), Len: uint32(countin)} -+ err = ptrace(PT_IO, pid, uintptr(unsafe.Pointer(&ioDesc)), 0) - return int(ioDesc.Len), err - } -diff --git a/vendor/golang.org/x/sys/unix/syscall_freebsd_arm64.go b/vendor/golang.org/x/sys/unix/syscall_freebsd_arm64.go -index aa5326d..8e93203 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_freebsd_arm64.go -+++ b/vendor/golang.org/x/sys/unix/syscall_freebsd_arm64.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build arm64 && freebsd - // +build arm64,freebsd - - package unix -@@ -56,7 +57,7 @@ func sendfile(outfd int, infd int, offset *int64, count int) (written int, err e - func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno) - - func PtraceIO(req int, pid int, addr uintptr, out []byte, countin int) (count int, err error) { -- ioDesc := PtraceIoDesc{Op: int32(req), Offs: (*byte)(unsafe.Pointer(addr)), Addr: (*byte)(unsafe.Pointer(&out[0])), Len: uint64(countin)} -- err = ptrace(PTRACE_IO, pid, uintptr(unsafe.Pointer(&ioDesc)), 0) -+ ioDesc := PtraceIoDesc{Op: int32(req), Offs: uintptr(unsafe.Pointer(addr)), Addr: uintptr(unsafe.Pointer(&out[0])), Len: uint64(countin)} -+ err = ptrace(PT_IO, pid, uintptr(unsafe.Pointer(&ioDesc)), 0) - return int(ioDesc.Len), err - } -diff --git a/vendor/golang.org/x/sys/unix/syscall_freebsd_riscv64.go b/vendor/golang.org/x/sys/unix/syscall_freebsd_riscv64.go -new file mode 100644 -index 0000000..cbe1222 ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/syscall_freebsd_riscv64.go -@@ -0,0 +1,63 @@ -+// Copyright 2022 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build riscv64 && freebsd -+// +build riscv64,freebsd -+ -+package unix -+ -+import ( -+ "syscall" -+ "unsafe" -+) -+ -+func setTimespec(sec, nsec int64) Timespec { -+ return Timespec{Sec: sec, Nsec: nsec} -+} -+ -+func setTimeval(sec, usec int64) Timeval { -+ return Timeval{Sec: sec, Usec: usec} -+} -+ -+func SetKevent(k *Kevent_t, fd, mode, flags int) { -+ k.Ident = uint64(fd) -+ k.Filter = int16(mode) -+ k.Flags = uint16(flags) -+} -+ -+func (iov *Iovec) SetLen(length int) { -+ iov.Len = uint64(length) -+} -+ -+func (msghdr *Msghdr) SetControllen(length int) { -+ msghdr.Controllen = uint32(length) -+} -+ -+func (msghdr *Msghdr) SetIovlen(length int) { -+ msghdr.Iovlen = int32(length) -+} -+ -+func (cmsg *Cmsghdr) SetLen(length int) { -+ cmsg.Len = uint32(length) -+} -+ -+func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) { -+ var writtenOut uint64 = 0 -+ _, _, e1 := Syscall9(SYS_SENDFILE, uintptr(infd), uintptr(outfd), uintptr(*offset), uintptr(count), 0, uintptr(unsafe.Pointer(&writtenOut)), 0, 0, 0) -+ -+ written = int(writtenOut) -+ -+ if e1 != 0 { -+ err = e1 -+ } -+ return -+} -+ -+func Syscall9(num, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno) -+ -+func PtraceIO(req int, pid int, addr uintptr, out []byte, countin int) (count int, err error) { -+ ioDesc := PtraceIoDesc{Op: int32(req), Offs: uintptr(unsafe.Pointer(addr)), Addr: uintptr(unsafe.Pointer(&out[0])), Len: uint64(countin)} -+ err = ptrace(PT_IO, pid, uintptr(unsafe.Pointer(&ioDesc)), 0) -+ return int(ioDesc.Len), err -+} -diff --git a/vendor/golang.org/x/sys/unix/syscall_illumos.go b/vendor/golang.org/x/sys/unix/syscall_illumos.go -index 99e62dc..e48244a 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_illumos.go -+++ b/vendor/golang.org/x/sys/unix/syscall_illumos.go -@@ -1,30 +1,34 @@ --// Copyright 2009 The Go Authors. All rights reserved. -+// Copyright 2021 The Go Authors. All rights reserved. - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - - // illumos system calls not present on Solaris. - -+//go:build amd64 && illumos - // +build amd64,illumos - - package unix - --import "unsafe" -+import ( -+ "fmt" -+ "runtime" -+ "unsafe" -+) - - func bytes2iovec(bs [][]byte) []Iovec { - iovecs := make([]Iovec, len(bs)) - for i, b := range bs { - iovecs[i].SetLen(len(b)) - if len(b) > 0 { -- // somehow Iovec.Base on illumos is (*int8), not (*byte) -- iovecs[i].Base = (*int8)(unsafe.Pointer(&b[0])) -+ iovecs[i].Base = &b[0] - } else { -- iovecs[i].Base = (*int8)(unsafe.Pointer(&_zero)) -+ iovecs[i].Base = (*byte)(unsafe.Pointer(&_zero)) - } - } - return iovecs - } - --//sys readv(fd int, iovs []Iovec) (n int, err error) -+//sys readv(fd int, iovs []Iovec) (n int, err error) - - func Readv(fd int, iovs [][]byte) (n int, err error) { - iovecs := bytes2iovec(iovs) -@@ -32,7 +36,7 @@ func Readv(fd int, iovs [][]byte) (n int, err error) { - return n, err - } - --//sys preadv(fd int, iovs []Iovec, off int64) (n int, err error) -+//sys preadv(fd int, iovs []Iovec, off int64) (n int, err error) - - func Preadv(fd int, iovs [][]byte, off int64) (n int, err error) { - iovecs := bytes2iovec(iovs) -@@ -40,7 +44,7 @@ func Preadv(fd int, iovs [][]byte, off int64) (n int, err error) { - return n, err - } - --//sys writev(fd int, iovs []Iovec) (n int, err error) -+//sys writev(fd int, iovs []Iovec) (n int, err error) - - func Writev(fd int, iovs [][]byte) (n int, err error) { - iovecs := bytes2iovec(iovs) -@@ -48,10 +52,134 @@ func Writev(fd int, iovs [][]byte) (n int, err error) { - return n, err - } - --//sys pwritev(fd int, iovs []Iovec, off int64) (n int, err error) -+//sys pwritev(fd int, iovs []Iovec, off int64) (n int, err error) - - func Pwritev(fd int, iovs [][]byte, off int64) (n int, err error) { - iovecs := bytes2iovec(iovs) - n, err = pwritev(fd, iovecs, off) - return n, err - } -+ -+//sys accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) = libsocket.accept4 -+ -+func Accept4(fd int, flags int) (nfd int, sa Sockaddr, err error) { -+ var rsa RawSockaddrAny -+ var len _Socklen = SizeofSockaddrAny -+ nfd, err = accept4(fd, &rsa, &len, flags) -+ if err != nil { -+ return -+ } -+ if len > SizeofSockaddrAny { -+ panic("RawSockaddrAny too small") -+ } -+ sa, err = anyToSockaddr(fd, &rsa) -+ if err != nil { -+ Close(nfd) -+ nfd = 0 -+ } -+ return -+} -+ -+//sys putmsg(fd int, clptr *strbuf, dataptr *strbuf, flags int) (err error) -+ -+func Putmsg(fd int, cl []byte, data []byte, flags int) (err error) { -+ var clp, datap *strbuf -+ if len(cl) > 0 { -+ clp = &strbuf{ -+ Len: int32(len(cl)), -+ Buf: (*int8)(unsafe.Pointer(&cl[0])), -+ } -+ } -+ if len(data) > 0 { -+ datap = &strbuf{ -+ Len: int32(len(data)), -+ Buf: (*int8)(unsafe.Pointer(&data[0])), -+ } -+ } -+ return putmsg(fd, clp, datap, flags) -+} -+ -+//sys getmsg(fd int, clptr *strbuf, dataptr *strbuf, flags *int) (err error) -+ -+func Getmsg(fd int, cl []byte, data []byte) (retCl []byte, retData []byte, flags int, err error) { -+ var clp, datap *strbuf -+ if len(cl) > 0 { -+ clp = &strbuf{ -+ Maxlen: int32(len(cl)), -+ Buf: (*int8)(unsafe.Pointer(&cl[0])), -+ } -+ } -+ if len(data) > 0 { -+ datap = &strbuf{ -+ Maxlen: int32(len(data)), -+ Buf: (*int8)(unsafe.Pointer(&data[0])), -+ } -+ } -+ -+ if err = getmsg(fd, clp, datap, &flags); err != nil { -+ return nil, nil, 0, err -+ } -+ -+ if len(cl) > 0 { -+ retCl = cl[:clp.Len] -+ } -+ if len(data) > 0 { -+ retData = data[:datap.Len] -+ } -+ return retCl, retData, flags, nil -+} -+ -+func IoctlSetIntRetInt(fd int, req uint, arg int) (int, error) { -+ return ioctlRet(fd, req, uintptr(arg)) -+} -+ -+func IoctlSetString(fd int, req uint, val string) error { -+ bs := make([]byte, len(val)+1) -+ copy(bs[:len(bs)-1], val) -+ err := ioctl(fd, req, uintptr(unsafe.Pointer(&bs[0]))) -+ runtime.KeepAlive(&bs[0]) -+ return err -+} -+ -+// Lifreq Helpers -+ -+func (l *Lifreq) SetName(name string) error { -+ if len(name) >= len(l.Name) { -+ return fmt.Errorf("name cannot be more than %d characters", len(l.Name)-1) -+ } -+ for i := range name { -+ l.Name[i] = int8(name[i]) -+ } -+ return nil -+} -+ -+func (l *Lifreq) SetLifruInt(d int) { -+ *(*int)(unsafe.Pointer(&l.Lifru[0])) = d -+} -+ -+func (l *Lifreq) GetLifruInt() int { -+ return *(*int)(unsafe.Pointer(&l.Lifru[0])) -+} -+ -+func (l *Lifreq) SetLifruUint(d uint) { -+ *(*uint)(unsafe.Pointer(&l.Lifru[0])) = d -+} -+ -+func (l *Lifreq) GetLifruUint() uint { -+ return *(*uint)(unsafe.Pointer(&l.Lifru[0])) -+} -+ -+func IoctlLifreq(fd int, req uint, l *Lifreq) error { -+ return ioctl(fd, req, uintptr(unsafe.Pointer(l))) -+} -+ -+// Strioctl Helpers -+ -+func (s *Strioctl) SetInt(i int) { -+ s.Len = int32(unsafe.Sizeof(i)) -+ s.Dp = (*int8)(unsafe.Pointer(&i)) -+} -+ -+func IoctlSetStrioctlRetInt(fd int, req uint, s *Strioctl) (int, error) { -+ return ioctlRet(fd, req, uintptr(unsafe.Pointer(s))) -+} -diff --git a/vendor/golang.org/x/sys/unix/syscall_linux.go b/vendor/golang.org/x/sys/unix/syscall_linux.go -index bbe1abb..4714691 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_linux.go -+++ b/vendor/golang.org/x/sys/unix/syscall_linux.go -@@ -13,8 +13,9 @@ package unix - - import ( - "encoding/binary" -- "runtime" -+ "strconv" - "syscall" -+ "time" - "unsafe" - ) - -@@ -38,6 +39,13 @@ func Creat(path string, mode uint32) (fd int, err error) { - return Open(path, O_CREAT|O_WRONLY|O_TRUNC, mode) - } - -+func EpollCreate(size int) (fd int, err error) { -+ if size <= 0 { -+ return -1, EINVAL -+ } -+ return EpollCreate1(0) -+} -+ - //sys FanotifyInit(flags uint, event_f_flags uint) (fd int, err error) - //sys fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) - -@@ -66,48 +74,22 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) { - return fchmodat(dirfd, path, mode) - } - --//sys ioctl(fd int, req uint, arg uintptr) (err error) -- --// ioctl itself should not be exposed directly, but additional get/set --// functions for specific types are permissible. -- --// IoctlRetInt performs an ioctl operation specified by req on a device --// associated with opened file descriptor fd, and returns a non-negative --// integer that is returned by the ioctl syscall. --func IoctlRetInt(fd int, req uint) (int, error) { -- ret, _, err := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), 0) -- if err != 0 { -- return 0, err -- } -- return int(ret), nil --} -- --// IoctlSetPointerInt performs an ioctl operation which sets an --// integer value on fd, using the specified request number. The ioctl --// argument is called with a pointer to the integer value, rather than --// passing the integer value directly. --func IoctlSetPointerInt(fd int, req uint, value int) error { -- v := int32(value) -- return ioctl(fd, req, uintptr(unsafe.Pointer(&v))) -+func InotifyInit() (fd int, err error) { -+ return InotifyInit1(0) - } - --func IoctlSetRTCTime(fd int, value *RTCTime) error { -- err := ioctl(fd, RTC_SET_TIME, uintptr(unsafe.Pointer(value))) -- runtime.KeepAlive(value) -- return err --} -+//sys ioctl(fd int, req uint, arg uintptr) (err error) = SYS_IOCTL -+//sys ioctlPtr(fd int, req uint, arg unsafe.Pointer) (err error) = SYS_IOCTL - --func IoctlGetUint32(fd int, req uint) (uint32, error) { -- var value uint32 -- err := ioctl(fd, req, uintptr(unsafe.Pointer(&value))) -- return value, err --} -- --func IoctlGetRTCTime(fd int) (*RTCTime, error) { -- var value RTCTime -- err := ioctl(fd, RTC_RD_TIME, uintptr(unsafe.Pointer(&value))) -- return &value, err --} -+// ioctl itself should not be exposed directly, but additional get/set functions -+// for specific types are permissible. These are defined in ioctl.go and -+// ioctl_linux.go. -+// -+// The third argument to ioctl is often a pointer but sometimes an integer. -+// Callers should use ioctlPtr when the third argument is a pointer and ioctl -+// when the third argument is an integer. -+// -+// TODO: some existing code incorrectly uses ioctl when it should use ioctlPtr. - - //sys Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) - -@@ -133,6 +115,31 @@ func Openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) - return openat(dirfd, path, flags|O_LARGEFILE, mode) - } - -+//sys openat2(dirfd int, path string, open_how *OpenHow, size int) (fd int, err error) -+ -+func Openat2(dirfd int, path string, how *OpenHow) (fd int, err error) { -+ return openat2(dirfd, path, how, SizeofOpenHow) -+} -+ -+func Pipe(p []int) error { -+ return Pipe2(p, 0) -+} -+ -+//sysnb pipe2(p *[2]_C_int, flags int) (err error) -+ -+func Pipe2(p []int, flags int) error { -+ if len(p) != 2 { -+ return EINVAL -+ } -+ var pp [2]_C_int -+ err := pipe2(&pp, flags) -+ if err == nil { -+ p[0] = int(pp[0]) -+ p[1] = int(pp[1]) -+ } -+ return err -+} -+ - //sys ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) - - func Ppoll(fds []PollFd, timeout *Timespec, sigmask *Sigset_t) (n int, err error) { -@@ -142,6 +149,15 @@ func Ppoll(fds []PollFd, timeout *Timespec, sigmask *Sigset_t) (n int, err error - return ppoll(&fds[0], len(fds), timeout, sigmask) - } - -+func Poll(fds []PollFd, timeout int) (n int, err error) { -+ var ts *Timespec -+ if timeout >= 0 { -+ ts = new(Timespec) -+ *ts = NsecToTimespec(int64(timeout) * 1e6) -+ } -+ return Ppoll(fds, ts, nil) -+} -+ - //sys Readlinkat(dirfd int, path string, buf []byte) (n int, err error) - - func Readlink(path string, buf []byte) (n int, err error) { -@@ -192,27 +208,7 @@ func Utimes(path string, tv []Timeval) error { - //sys utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) - - func UtimesNano(path string, ts []Timespec) error { -- if ts == nil { -- err := utimensat(AT_FDCWD, path, nil, 0) -- if err != ENOSYS { -- return err -- } -- return utimes(path, nil) -- } -- if len(ts) != 2 { -- return EINVAL -- } -- err := utimensat(AT_FDCWD, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0) -- if err != ENOSYS { -- return err -- } -- // If the utimensat syscall isn't available (utimensat was added to Linux -- // in 2.6.22, Released, 8 July 2007) then fall back to utimes -- var tv [2]Timeval -- for i := 0; i < 2; i++ { -- tv[i] = NsecToTimeval(TimespecToNsec(ts[i])) -- } -- return utimes(path, (*[2]Timeval)(unsafe.Pointer(&tv[0]))) -+ return UtimesNanoAt(AT_FDCWD, path, ts, 0) - } - - func UtimesNanoAt(dirfd int, path string, ts []Timespec, flags int) error { -@@ -238,7 +234,7 @@ func Futimesat(dirfd int, path string, tv []Timeval) error { - func Futimes(fd int, tv []Timeval) (err error) { - // Believe it or not, this is the best we can do on Linux - // (and is what glibc does). -- return Utimes("/proc/self/fd/"+itoa(fd), tv) -+ return Utimes("/proc/self/fd/"+strconv.Itoa(fd), tv) - } - - const ImplementsGetwd = true -@@ -255,6 +251,13 @@ func Getwd() (wd string, err error) { - if n < 1 || n > len(buf) || buf[n-1] != 0 { - return "", EINVAL - } -+ // In some cases, Linux can return a path that starts with the -+ // "(unreachable)" prefix, which can potentially be a valid relative -+ // path. To work around that, return ENOENT if path is not absolute. -+ if buf[0] != '/' { -+ return "", ENOENT -+ } -+ - return string(buf[0 : n-1]), nil - } - -@@ -364,6 +367,8 @@ func Wait4(pid int, wstatus *WaitStatus, options int, rusage *Rusage) (wpid int, - return - } - -+//sys Waitid(idType int, id int, info *Siginfo, options int, rusage *Rusage) (err error) -+ - func Mkfifo(path string, mode uint32) error { - return Mknod(path, mode|S_IFIFO, 0) - } -@@ -380,9 +385,7 @@ func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) { - p := (*[2]byte)(unsafe.Pointer(&sa.raw.Port)) - p[0] = byte(sa.Port >> 8) - p[1] = byte(sa.Port) -- for i := 0; i < len(sa.Addr); i++ { -- sa.raw.Addr[i] = sa.Addr[i] -- } -+ sa.raw.Addr = sa.Addr - return unsafe.Pointer(&sa.raw), SizeofSockaddrInet4, nil - } - -@@ -395,9 +398,7 @@ func (sa *SockaddrInet6) sockaddr() (unsafe.Pointer, _Socklen, error) { - p[0] = byte(sa.Port >> 8) - p[1] = byte(sa.Port) - sa.raw.Scope_id = sa.ZoneId -- for i := 0; i < len(sa.Addr); i++ { -- sa.raw.Addr[i] = sa.Addr[i] -- } -+ sa.raw.Addr = sa.Addr - return unsafe.Pointer(&sa.raw), SizeofSockaddrInet6, nil - } - -@@ -446,9 +447,7 @@ func (sa *SockaddrLinklayer) sockaddr() (unsafe.Pointer, _Socklen, error) { - sa.raw.Hatype = sa.Hatype - sa.raw.Pkttype = sa.Pkttype - sa.raw.Halen = sa.Halen -- for i := 0; i < len(sa.Addr); i++ { -- sa.raw.Addr[i] = sa.Addr[i] -- } -+ sa.raw.Addr = sa.Addr - return unsafe.Pointer(&sa.raw), SizeofSockaddrLinklayer, nil - } - -@@ -514,24 +513,24 @@ func (sa *SockaddrL2) sockaddr() (unsafe.Pointer, _Socklen, error) { - // - // Server example: - // --// fd, _ := Socket(AF_BLUETOOTH, SOCK_STREAM, BTPROTO_RFCOMM) --// _ = unix.Bind(fd, &unix.SockaddrRFCOMM{ --// Channel: 1, --// Addr: [6]uint8{0, 0, 0, 0, 0, 0}, // BDADDR_ANY or 00:00:00:00:00:00 --// }) --// _ = Listen(fd, 1) --// nfd, sa, _ := Accept(fd) --// fmt.Printf("conn addr=%v fd=%d", sa.(*unix.SockaddrRFCOMM).Addr, nfd) --// Read(nfd, buf) -+// fd, _ := Socket(AF_BLUETOOTH, SOCK_STREAM, BTPROTO_RFCOMM) -+// _ = unix.Bind(fd, &unix.SockaddrRFCOMM{ -+// Channel: 1, -+// Addr: [6]uint8{0, 0, 0, 0, 0, 0}, // BDADDR_ANY or 00:00:00:00:00:00 -+// }) -+// _ = Listen(fd, 1) -+// nfd, sa, _ := Accept(fd) -+// fmt.Printf("conn addr=%v fd=%d", sa.(*unix.SockaddrRFCOMM).Addr, nfd) -+// Read(nfd, buf) - // - // Client example: - // --// fd, _ := Socket(AF_BLUETOOTH, SOCK_STREAM, BTPROTO_RFCOMM) --// _ = Connect(fd, &SockaddrRFCOMM{ --// Channel: 1, --// Addr: [6]byte{0x11, 0x22, 0x33, 0xaa, 0xbb, 0xcc}, // CC:BB:AA:33:22:11 --// }) --// Write(fd, []byte(`hello`)) -+// fd, _ := Socket(AF_BLUETOOTH, SOCK_STREAM, BTPROTO_RFCOMM) -+// _ = Connect(fd, &SockaddrRFCOMM{ -+// Channel: 1, -+// Addr: [6]byte{0x11, 0x22, 0x33, 0xaa, 0xbb, 0xcc}, // CC:BB:AA:33:22:11 -+// }) -+// Write(fd, []byte(`hello`)) - type SockaddrRFCOMM struct { - // Addr represents a bluetooth address, byte ordering is little-endian. - Addr [6]uint8 -@@ -558,12 +557,12 @@ func (sa *SockaddrRFCOMM) sockaddr() (unsafe.Pointer, _Socklen, error) { - // The SockaddrCAN struct must be bound to the socket file descriptor - // using Bind before the CAN socket can be used. - // --// // Read one raw CAN frame --// fd, _ := Socket(AF_CAN, SOCK_RAW, CAN_RAW) --// addr := &SockaddrCAN{Ifindex: index} --// Bind(fd, addr) --// frame := make([]byte, 16) --// Read(fd, frame) -+// // Read one raw CAN frame -+// fd, _ := Socket(AF_CAN, SOCK_RAW, CAN_RAW) -+// addr := &SockaddrCAN{Ifindex: index} -+// Bind(fd, addr) -+// frame := make([]byte, 16) -+// Read(fd, frame) - // - // The full SocketCAN documentation can be found in the linux kernel - // archives at: https://www.kernel.org/doc/Documentation/networking/can.txt -@@ -591,6 +590,36 @@ func (sa *SockaddrCAN) sockaddr() (unsafe.Pointer, _Socklen, error) { - return unsafe.Pointer(&sa.raw), SizeofSockaddrCAN, nil - } - -+// SockaddrCANJ1939 implements the Sockaddr interface for AF_CAN using J1939 -+// protocol (https://en.wikipedia.org/wiki/SAE_J1939). For more information -+// on the purposes of the fields, check the official linux kernel documentation -+// available here: https://www.kernel.org/doc/Documentation/networking/j1939.rst -+type SockaddrCANJ1939 struct { -+ Ifindex int -+ Name uint64 -+ PGN uint32 -+ Addr uint8 -+ raw RawSockaddrCAN -+} -+ -+func (sa *SockaddrCANJ1939) sockaddr() (unsafe.Pointer, _Socklen, error) { -+ if sa.Ifindex < 0 || sa.Ifindex > 0x7fffffff { -+ return nil, 0, EINVAL -+ } -+ sa.raw.Family = AF_CAN -+ sa.raw.Ifindex = int32(sa.Ifindex) -+ n := (*[8]byte)(unsafe.Pointer(&sa.Name)) -+ for i := 0; i < 8; i++ { -+ sa.raw.Addr[i] = n[i] -+ } -+ p := (*[4]byte)(unsafe.Pointer(&sa.PGN)) -+ for i := 0; i < 4; i++ { -+ sa.raw.Addr[i+8] = p[i] -+ } -+ sa.raw.Addr[12] = sa.Addr -+ return unsafe.Pointer(&sa.raw), SizeofSockaddrCAN, nil -+} -+ - // SockaddrALG implements the Sockaddr interface for AF_ALG type sockets. - // SockaddrALG enables userspace access to the Linux kernel's cryptography - // subsystem. The Type and Name fields specify which type of hash or cipher -@@ -604,13 +633,13 @@ func (sa *SockaddrCAN) sockaddr() (unsafe.Pointer, _Socklen, error) { - // Here is an example of using an AF_ALG socket with SHA1 hashing. - // The initial socket setup process is as follows: - // --// // Open a socket to perform SHA1 hashing. --// fd, _ := unix.Socket(unix.AF_ALG, unix.SOCK_SEQPACKET, 0) --// addr := &unix.SockaddrALG{Type: "hash", Name: "sha1"} --// unix.Bind(fd, addr) --// // Note: unix.Accept does not work at this time; must invoke accept() --// // manually using unix.Syscall. --// hashfd, _, _ := unix.Syscall(unix.SYS_ACCEPT, uintptr(fd), 0, 0) -+// // Open a socket to perform SHA1 hashing. -+// fd, _ := unix.Socket(unix.AF_ALG, unix.SOCK_SEQPACKET, 0) -+// addr := &unix.SockaddrALG{Type: "hash", Name: "sha1"} -+// unix.Bind(fd, addr) -+// // Note: unix.Accept does not work at this time; must invoke accept() -+// // manually using unix.Syscall. -+// hashfd, _, _ := unix.Syscall(unix.SYS_ACCEPT, uintptr(fd), 0, 0) - // - // Once a file descriptor has been returned from Accept, it may be used to - // perform SHA1 hashing. The descriptor is not safe for concurrent use, but -@@ -619,39 +648,39 @@ func (sa *SockaddrCAN) sockaddr() (unsafe.Pointer, _Socklen, error) { - // When hashing a small byte slice or string, a single Write and Read may - // be used: - // --// // Assume hashfd is already configured using the setup process. --// hash := os.NewFile(hashfd, "sha1") --// // Hash an input string and read the results. Each Write discards --// // previous hash state. Read always reads the current state. --// b := make([]byte, 20) --// for i := 0; i < 2; i++ { --// io.WriteString(hash, "Hello, world.") --// hash.Read(b) --// fmt.Println(hex.EncodeToString(b)) --// } --// // Output: --// // 2ae01472317d1935a84797ec1983ae243fc6aa28 --// // 2ae01472317d1935a84797ec1983ae243fc6aa28 -+// // Assume hashfd is already configured using the setup process. -+// hash := os.NewFile(hashfd, "sha1") -+// // Hash an input string and read the results. Each Write discards -+// // previous hash state. Read always reads the current state. -+// b := make([]byte, 20) -+// for i := 0; i < 2; i++ { -+// io.WriteString(hash, "Hello, world.") -+// hash.Read(b) -+// fmt.Println(hex.EncodeToString(b)) -+// } -+// // Output: -+// // 2ae01472317d1935a84797ec1983ae243fc6aa28 -+// // 2ae01472317d1935a84797ec1983ae243fc6aa28 - // - // For hashing larger byte slices, or byte streams such as those read from - // a file or socket, use Sendto with MSG_MORE to instruct the kernel to update - // the hash digest instead of creating a new one for a given chunk and finalizing it. - // --// // Assume hashfd and addr are already configured using the setup process. --// hash := os.NewFile(hashfd, "sha1") --// // Hash the contents of a file. --// f, _ := os.Open("/tmp/linux-4.10-rc7.tar.xz") --// b := make([]byte, 4096) --// for { --// n, err := f.Read(b) --// if err == io.EOF { --// break --// } --// unix.Sendto(hashfd, b[:n], unix.MSG_MORE, addr) --// } --// hash.Read(b) --// fmt.Println(hex.EncodeToString(b)) --// // Output: 85cdcad0c06eef66f805ecce353bec9accbeecc5 -+// // Assume hashfd and addr are already configured using the setup process. -+// hash := os.NewFile(hashfd, "sha1") -+// // Hash the contents of a file. -+// f, _ := os.Open("/tmp/linux-4.10-rc7.tar.xz") -+// b := make([]byte, 4096) -+// for { -+// n, err := f.Read(b) -+// if err == io.EOF { -+// break -+// } -+// unix.Sendto(hashfd, b[:n], unix.MSG_MORE, addr) -+// } -+// hash.Read(b) -+// fmt.Println(hex.EncodeToString(b)) -+// // Output: 85cdcad0c06eef66f805ecce353bec9accbeecc5 - // - // For more information, see: http://www.chronox.de/crypto-API/crypto/userspace-if.html. - type SockaddrALG struct { -@@ -698,16 +727,19 @@ type SockaddrVM struct { - // CID and Port specify a context ID and port address for a VM socket. - // Guests have a unique CID, and hosts may have a well-known CID of: - // - VMADDR_CID_HYPERVISOR: refers to the hypervisor process. -+ // - VMADDR_CID_LOCAL: refers to local communication (loopback). - // - VMADDR_CID_HOST: refers to other processes on the host. -- CID uint32 -- Port uint32 -- raw RawSockaddrVM -+ CID uint32 -+ Port uint32 -+ Flags uint8 -+ raw RawSockaddrVM - } - - func (sa *SockaddrVM) sockaddr() (unsafe.Pointer, _Socklen, error) { - sa.raw.Family = AF_VSOCK - sa.raw.Port = sa.Port - sa.raw.Cid = sa.CID -+ sa.raw.Flags = sa.Flags - - return unsafe.Pointer(&sa.raw), SizeofSockaddrVM, nil - } -@@ -830,12 +862,10 @@ func (sa *SockaddrTIPC) sockaddr() (unsafe.Pointer, _Socklen, error) { - if sa.Addr == nil { - return nil, 0, EINVAL - } -- - sa.raw.Family = AF_TIPC - sa.raw.Scope = int8(sa.Scope) - sa.raw.Addrtype = sa.Addr.tipcAddrtype() - sa.raw.Addr = sa.Addr.tipcAddr() -- - return unsafe.Pointer(&sa.raw), SizeofSockaddrTIPC, nil - } - -@@ -849,9 +879,7 @@ type SockaddrL2TPIP struct { - func (sa *SockaddrL2TPIP) sockaddr() (unsafe.Pointer, _Socklen, error) { - sa.raw.Family = AF_INET - sa.raw.Conn_id = sa.ConnId -- for i := 0; i < len(sa.Addr); i++ { -- sa.raw.Addr[i] = sa.Addr[i] -- } -+ sa.raw.Addr = sa.Addr - return unsafe.Pointer(&sa.raw), SizeofSockaddrL2TPIP, nil - } - -@@ -867,12 +895,83 @@ func (sa *SockaddrL2TPIP6) sockaddr() (unsafe.Pointer, _Socklen, error) { - sa.raw.Family = AF_INET6 - sa.raw.Conn_id = sa.ConnId - sa.raw.Scope_id = sa.ZoneId -- for i := 0; i < len(sa.Addr); i++ { -- sa.raw.Addr[i] = sa.Addr[i] -- } -+ sa.raw.Addr = sa.Addr - return unsafe.Pointer(&sa.raw), SizeofSockaddrL2TPIP6, nil - } - -+// SockaddrIUCV implements the Sockaddr interface for AF_IUCV sockets. -+type SockaddrIUCV struct { -+ UserID string -+ Name string -+ raw RawSockaddrIUCV -+} -+ -+func (sa *SockaddrIUCV) sockaddr() (unsafe.Pointer, _Socklen, error) { -+ sa.raw.Family = AF_IUCV -+ // These are EBCDIC encoded by the kernel, but we still need to pad them -+ // with blanks. Initializing with blanks allows the caller to feed in either -+ // a padded or an unpadded string. -+ for i := 0; i < 8; i++ { -+ sa.raw.Nodeid[i] = ' ' -+ sa.raw.User_id[i] = ' ' -+ sa.raw.Name[i] = ' ' -+ } -+ if len(sa.UserID) > 8 || len(sa.Name) > 8 { -+ return nil, 0, EINVAL -+ } -+ for i, b := range []byte(sa.UserID[:]) { -+ sa.raw.User_id[i] = int8(b) -+ } -+ for i, b := range []byte(sa.Name[:]) { -+ sa.raw.Name[i] = int8(b) -+ } -+ return unsafe.Pointer(&sa.raw), SizeofSockaddrIUCV, nil -+} -+ -+type SockaddrNFC struct { -+ DeviceIdx uint32 -+ TargetIdx uint32 -+ NFCProtocol uint32 -+ raw RawSockaddrNFC -+} -+ -+func (sa *SockaddrNFC) sockaddr() (unsafe.Pointer, _Socklen, error) { -+ sa.raw.Sa_family = AF_NFC -+ sa.raw.Dev_idx = sa.DeviceIdx -+ sa.raw.Target_idx = sa.TargetIdx -+ sa.raw.Nfc_protocol = sa.NFCProtocol -+ return unsafe.Pointer(&sa.raw), SizeofSockaddrNFC, nil -+} -+ -+type SockaddrNFCLLCP struct { -+ DeviceIdx uint32 -+ TargetIdx uint32 -+ NFCProtocol uint32 -+ DestinationSAP uint8 -+ SourceSAP uint8 -+ ServiceName string -+ raw RawSockaddrNFCLLCP -+} -+ -+func (sa *SockaddrNFCLLCP) sockaddr() (unsafe.Pointer, _Socklen, error) { -+ sa.raw.Sa_family = AF_NFC -+ sa.raw.Dev_idx = sa.DeviceIdx -+ sa.raw.Target_idx = sa.TargetIdx -+ sa.raw.Nfc_protocol = sa.NFCProtocol -+ sa.raw.Dsap = sa.DestinationSAP -+ sa.raw.Ssap = sa.SourceSAP -+ if len(sa.ServiceName) > len(sa.raw.Service_name) { -+ return nil, 0, EINVAL -+ } -+ copy(sa.raw.Service_name[:], sa.ServiceName) -+ sa.raw.SetServiceNameLen(len(sa.ServiceName)) -+ return unsafe.Pointer(&sa.raw), SizeofSockaddrNFCLLCP, nil -+} -+ -+var socketProtocol = func(fd int) (int, error) { -+ return GetsockoptInt(fd, SOL_SOCKET, SO_PROTOCOL) -+} -+ - func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { - switch rsa.Addr.Family { - case AF_NETLINK: -@@ -892,9 +991,7 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { - sa.Hatype = pp.Hatype - sa.Pkttype = pp.Pkttype - sa.Halen = pp.Halen -- for i := 0; i < len(sa.Addr); i++ { -- sa.Addr[i] = pp.Addr[i] -- } -+ sa.Addr = pp.Addr - return sa, nil - - case AF_UNIX: -@@ -923,7 +1020,7 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { - return sa, nil - - case AF_INET: -- proto, err := GetsockoptInt(fd, SOL_SOCKET, SO_PROTOCOL) -+ proto, err := socketProtocol(fd) - if err != nil { - return nil, err - } -@@ -933,23 +1030,19 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { - pp := (*RawSockaddrL2TPIP)(unsafe.Pointer(rsa)) - sa := new(SockaddrL2TPIP) - sa.ConnId = pp.Conn_id -- for i := 0; i < len(sa.Addr); i++ { -- sa.Addr[i] = pp.Addr[i] -- } -+ sa.Addr = pp.Addr - return sa, nil - default: - pp := (*RawSockaddrInet4)(unsafe.Pointer(rsa)) - sa := new(SockaddrInet4) - p := (*[2]byte)(unsafe.Pointer(&pp.Port)) - sa.Port = int(p[0])<<8 + int(p[1]) -- for i := 0; i < len(sa.Addr); i++ { -- sa.Addr[i] = pp.Addr[i] -- } -+ sa.Addr = pp.Addr - return sa, nil - } - - case AF_INET6: -- proto, err := GetsockoptInt(fd, SOL_SOCKET, SO_PROTOCOL) -+ proto, err := socketProtocol(fd) - if err != nil { - return nil, err - } -@@ -960,9 +1053,7 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { - sa := new(SockaddrL2TPIP6) - sa.ConnId = pp.Conn_id - sa.ZoneId = pp.Scope_id -- for i := 0; i < len(sa.Addr); i++ { -- sa.Addr[i] = pp.Addr[i] -- } -+ sa.Addr = pp.Addr - return sa, nil - default: - pp := (*RawSockaddrInet6)(unsafe.Pointer(rsa)) -@@ -970,21 +1061,20 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { - p := (*[2]byte)(unsafe.Pointer(&pp.Port)) - sa.Port = int(p[0])<<8 + int(p[1]) - sa.ZoneId = pp.Scope_id -- for i := 0; i < len(sa.Addr); i++ { -- sa.Addr[i] = pp.Addr[i] -- } -+ sa.Addr = pp.Addr - return sa, nil - } - - case AF_VSOCK: - pp := (*RawSockaddrVM)(unsafe.Pointer(rsa)) - sa := &SockaddrVM{ -- CID: pp.Cid, -- Port: pp.Port, -+ CID: pp.Cid, -+ Port: pp.Port, -+ Flags: pp.Flags, - } - return sa, nil - case AF_BLUETOOTH: -- proto, err := GetsockoptInt(fd, SOL_SOCKET, SO_PROTOCOL) -+ proto, err := socketProtocol(fd) - if err != nil { - return nil, err - } -@@ -1053,6 +1143,92 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { - } - - return sa, nil -+ case AF_IUCV: -+ pp := (*RawSockaddrIUCV)(unsafe.Pointer(rsa)) -+ -+ var user [8]byte -+ var name [8]byte -+ -+ for i := 0; i < 8; i++ { -+ user[i] = byte(pp.User_id[i]) -+ name[i] = byte(pp.Name[i]) -+ } -+ -+ sa := &SockaddrIUCV{ -+ UserID: string(user[:]), -+ Name: string(name[:]), -+ } -+ return sa, nil -+ -+ case AF_CAN: -+ proto, err := socketProtocol(fd) -+ if err != nil { -+ return nil, err -+ } -+ -+ pp := (*RawSockaddrCAN)(unsafe.Pointer(rsa)) -+ -+ switch proto { -+ case CAN_J1939: -+ sa := &SockaddrCANJ1939{ -+ Ifindex: int(pp.Ifindex), -+ } -+ name := (*[8]byte)(unsafe.Pointer(&sa.Name)) -+ for i := 0; i < 8; i++ { -+ name[i] = pp.Addr[i] -+ } -+ pgn := (*[4]byte)(unsafe.Pointer(&sa.PGN)) -+ for i := 0; i < 4; i++ { -+ pgn[i] = pp.Addr[i+8] -+ } -+ addr := (*[1]byte)(unsafe.Pointer(&sa.Addr)) -+ addr[0] = pp.Addr[12] -+ return sa, nil -+ default: -+ sa := &SockaddrCAN{ -+ Ifindex: int(pp.Ifindex), -+ } -+ rx := (*[4]byte)(unsafe.Pointer(&sa.RxID)) -+ for i := 0; i < 4; i++ { -+ rx[i] = pp.Addr[i] -+ } -+ tx := (*[4]byte)(unsafe.Pointer(&sa.TxID)) -+ for i := 0; i < 4; i++ { -+ tx[i] = pp.Addr[i+4] -+ } -+ return sa, nil -+ } -+ case AF_NFC: -+ proto, err := socketProtocol(fd) -+ if err != nil { -+ return nil, err -+ } -+ switch proto { -+ case NFC_SOCKPROTO_RAW: -+ pp := (*RawSockaddrNFC)(unsafe.Pointer(rsa)) -+ sa := &SockaddrNFC{ -+ DeviceIdx: pp.Dev_idx, -+ TargetIdx: pp.Target_idx, -+ NFCProtocol: pp.Nfc_protocol, -+ } -+ return sa, nil -+ case NFC_SOCKPROTO_LLCP: -+ pp := (*RawSockaddrNFCLLCP)(unsafe.Pointer(rsa)) -+ if uint64(pp.Service_name_len) > uint64(len(pp.Service_name)) { -+ return nil, EINVAL -+ } -+ sa := &SockaddrNFCLLCP{ -+ DeviceIdx: pp.Dev_idx, -+ TargetIdx: pp.Target_idx, -+ NFCProtocol: pp.Nfc_protocol, -+ DestinationSAP: pp.Dsap, -+ SourceSAP: pp.Ssap, -+ ServiceName: string(pp.Service_name[:pp.Service_name_len]), -+ } -+ return sa, nil -+ default: -+ return nil, EINVAL -+ } - } - return nil, EAFNOSUPPORT - } -@@ -1060,7 +1236,7 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { - func Accept(fd int) (nfd int, sa Sockaddr, err error) { - var rsa RawSockaddrAny - var len _Socklen = SizeofSockaddrAny -- nfd, err = accept(fd, &rsa, &len) -+ nfd, err = accept4(fd, &rsa, &len, 0) - if err != nil { - return - } -@@ -1182,6 +1358,13 @@ func SetsockoptTpacketReq3(fd, level, opt int, tp *TpacketReq3) error { - return setsockopt(fd, level, opt, unsafe.Pointer(tp), unsafe.Sizeof(*tp)) - } - -+func SetsockoptTCPRepairOpt(fd, level, opt int, o []TCPRepairOpt) (err error) { -+ if len(o) == 0 { -+ return EINVAL -+ } -+ return setsockopt(fd, level, opt, unsafe.Pointer(&o[0]), uintptr(SizeofTCPRepairOpt*len(o))) -+} -+ - // Keyctl Commands (http://man7.org/linux/man-pages/man2/keyctl.2.html) - - // KeyctlInt calls keyctl commands in which each argument is an int. -@@ -1314,22 +1497,16 @@ func KeyctlRestrictKeyring(ringid int, keyType string, restriction string) error - return keyctlRestrictKeyringByType(KEYCTL_RESTRICT_KEYRING, ringid, keyType, restriction) - } - --//sys keyctlRestrictKeyringByType(cmd int, arg2 int, keyType string, restriction string) (err error) = SYS_KEYCTL --//sys keyctlRestrictKeyring(cmd int, arg2 int) (err error) = SYS_KEYCTL -+//sys keyctlRestrictKeyringByType(cmd int, arg2 int, keyType string, restriction string) (err error) = SYS_KEYCTL -+//sys keyctlRestrictKeyring(cmd int, arg2 int) (err error) = SYS_KEYCTL - --func Recvmsg(fd int, p, oob []byte, flags int) (n, oobn int, recvflags int, from Sockaddr, err error) { -+func recvmsgRaw(fd int, iov []Iovec, oob []byte, flags int, rsa *RawSockaddrAny) (n, oobn int, recvflags int, err error) { - var msg Msghdr -- var rsa RawSockaddrAny -- msg.Name = (*byte)(unsafe.Pointer(&rsa)) -+ msg.Name = (*byte)(unsafe.Pointer(rsa)) - msg.Namelen = uint32(SizeofSockaddrAny) -- var iov Iovec -- if len(p) > 0 { -- iov.Base = &p[0] -- iov.SetLen(len(p)) -- } - var dummy byte - if len(oob) > 0 { -- if len(p) == 0 { -+ if emptyIovecs(iov) { - var sockType int - sockType, err = GetsockoptInt(fd, SOL_SOCKET, SO_TYPE) - if err != nil { -@@ -1337,53 +1514,36 @@ func Recvmsg(fd int, p, oob []byte, flags int) (n, oobn int, recvflags int, from - } - // receive at least one normal byte - if sockType != SOCK_DGRAM { -- iov.Base = &dummy -- iov.SetLen(1) -+ var iova [1]Iovec -+ iova[0].Base = &dummy -+ iova[0].SetLen(1) -+ iov = iova[:] - } - } - msg.Control = &oob[0] - msg.SetControllen(len(oob)) - } -- msg.Iov = &iov -- msg.Iovlen = 1 -+ if len(iov) > 0 { -+ msg.Iov = &iov[0] -+ msg.SetIovlen(len(iov)) -+ } - if n, err = recvmsg(fd, &msg, flags); err != nil { - return - } - oobn = int(msg.Controllen) - recvflags = int(msg.Flags) -- // source address is only specified if the socket is unconnected -- if rsa.Addr.Family != AF_UNSPEC { -- from, err = anyToSockaddr(fd, &rsa) -- } - return - } - --func Sendmsg(fd int, p, oob []byte, to Sockaddr, flags int) (err error) { -- _, err = SendmsgN(fd, p, oob, to, flags) -- return --} -- --func SendmsgN(fd int, p, oob []byte, to Sockaddr, flags int) (n int, err error) { -- var ptr unsafe.Pointer -- var salen _Socklen -- if to != nil { -- var err error -- ptr, salen, err = to.sockaddr() -- if err != nil { -- return 0, err -- } -- } -+func sendmsgN(fd int, iov []Iovec, oob []byte, ptr unsafe.Pointer, salen _Socklen, flags int) (n int, err error) { - var msg Msghdr - msg.Name = (*byte)(ptr) - msg.Namelen = uint32(salen) -- var iov Iovec -- if len(p) > 0 { -- iov.Base = &p[0] -- iov.SetLen(len(p)) -- } - var dummy byte -+ var empty bool - if len(oob) > 0 { -- if len(p) == 0 { -+ empty = emptyIovecs(iov) -+ if empty { - var sockType int - sockType, err = GetsockoptInt(fd, SOL_SOCKET, SO_TYPE) - if err != nil { -@@ -1391,19 +1551,22 @@ func SendmsgN(fd int, p, oob []byte, to Sockaddr, flags int) (n int, err error) - } - // send at least one normal byte - if sockType != SOCK_DGRAM { -- iov.Base = &dummy -- iov.SetLen(1) -+ var iova [1]Iovec -+ iova[0].Base = &dummy -+ iova[0].SetLen(1) - } - } - msg.Control = &oob[0] - msg.SetControllen(len(oob)) - } -- msg.Iov = &iov -- msg.Iovlen = 1 -+ if len(iov) > 0 { -+ msg.Iov = &iov[0] -+ msg.SetIovlen(len(iov)) -+ } - if n, err = sendmsg(fd, &msg, flags); err != nil { - return 0, err - } -- if len(oob) > 0 && len(p) == 0 { -+ if len(oob) > 0 && empty { - n = 0 - } - return n, nil -@@ -1605,6 +1768,16 @@ func Mount(source string, target string, fstype string, flags uintptr, data stri - return mount(source, target, fstype, flags, datap) - } - -+//sys mountSetattr(dirfd int, pathname string, flags uint, attr *MountAttr, size uintptr) (err error) = SYS_MOUNT_SETATTR -+ -+// MountSetattr is a wrapper for mount_setattr(2). -+// https://man7.org/linux/man-pages/man2/mount_setattr.2.html -+// -+// Requires kernel >= 5.12. -+func MountSetattr(dirfd int, pathname string, flags uint, attr *MountAttr) error { -+ return mountSetattr(dirfd, pathname, flags, attr, unsafe.Sizeof(*attr)) -+} -+ - func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) { - if raceenabled { - raceReleaseMerge(unsafe.Pointer(&ioSync)) -@@ -1630,9 +1803,15 @@ func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err e - //sys ClockGettime(clockid int32, time *Timespec) (err error) - //sys ClockNanosleep(clockid int32, flags int, request *Timespec, remain *Timespec) (err error) - //sys Close(fd int) (err error) -+//sys CloseRange(first uint, last uint, flags uint) (err error) - //sys CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) - //sys DeleteModule(name string, flags int) (err error) - //sys Dup(oldfd int) (fd int, err error) -+ -+func Dup2(oldfd, newfd int) error { -+ return Dup3(oldfd, newfd, 0) -+} -+ - //sys Dup3(oldfd int, newfd int, flags int) (err error) - //sysnb EpollCreate1(flag int) (fd int, err error) - //sysnb EpollCtl(epfd int, op int, fd int, event *EpollEvent) (err error) -@@ -1650,6 +1829,9 @@ func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err e - //sys Fremovexattr(fd int, attr string) (err error) - //sys Fsetxattr(fd int, attr string, dest []byte, flags int) (err error) - //sys Fsync(fd int) (err error) -+//sys Fsmount(fd int, flags int, mountAttrs int) (fsfd int, err error) -+//sys Fsopen(fsName string, flags int) (fd int, err error) -+//sys Fspick(dirfd int, pathName string, flags int) (fd int, err error) - //sys Getdents(fd int, buf []byte) (n int, err error) = SYS_GETDENTS64 - //sysnb Getpgid(pid int) (pgid int, err error) - -@@ -1680,11 +1862,13 @@ func Getpgrp() (pid int) { - //sys MemfdCreate(name string, flags int) (fd int, err error) - //sys Mkdirat(dirfd int, path string, mode uint32) (err error) - //sys Mknodat(dirfd int, path string, mode uint32, dev int) (err error) -+//sys MoveMount(fromDirfd int, fromPathName string, toDirfd int, toPathName string, flags int) (err error) - //sys Nanosleep(time *Timespec, leftover *Timespec) (err error) -+//sys OpenTree(dfd int, fileName string, flags uint) (r int, err error) - //sys PerfEventOpen(attr *PerfEventAttr, pid int, cpu int, groupFd int, flags int) (fd int, err error) - //sys PivotRoot(newroot string, putold string) (err error) = SYS_PIVOT_ROOT --//sysnb prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) = SYS_PRLIMIT64 --//sys Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) -+//sysnb Prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) = SYS_PRLIMIT64 -+//sys Prctl(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uintptr) (err error) - //sys Pselect(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timespec, sigmask *Sigset_t) (n int, err error) = SYS_PSELECT6 - //sys read(fd int, p []byte) (n int, err error) - //sys Removexattr(path string, attr string) (err error) -@@ -1708,17 +1892,28 @@ func PrctlRetInt(option int, arg2 uintptr, arg3 uintptr, arg4 uintptr, arg5 uint - return int(ret), nil - } - --// issue 1435. --// On linux Setuid and Setgid only affects the current thread, not the process. --// This does not match what most callers expect so we must return an error --// here rather than letting the caller think that the call succeeded. -- - func Setuid(uid int) (err error) { -- return EOPNOTSUPP -+ return syscall.Setuid(uid) -+} -+ -+func Setgid(gid int) (err error) { -+ return syscall.Setgid(gid) -+} -+ -+func Setreuid(ruid, euid int) (err error) { -+ return syscall.Setreuid(ruid, euid) -+} -+ -+func Setregid(rgid, egid int) (err error) { -+ return syscall.Setregid(rgid, egid) -+} -+ -+func Setresuid(ruid, euid, suid int) (err error) { -+ return syscall.Setresuid(ruid, euid, suid) - } - --func Setgid(uid int) (err error) { -- return EOPNOTSUPP -+func Setresgid(rgid, egid, sgid int) (err error) { -+ return syscall.Setresgid(rgid, egid, sgid) - } - - // SetfsgidRetGid sets fsgid for current thread and returns previous fsgid set. -@@ -1757,6 +1952,9 @@ func Signalfd(fd int, sigmask *Sigset_t, flags int) (newfd int, err error) { - //sys Syncfs(fd int) (err error) - //sysnb Sysinfo(info *Sysinfo_t) (err error) - //sys Tee(rfd int, wfd int, len int, flags int) (n int64, err error) -+//sysnb TimerfdCreate(clockid int, flags int) (fd int, err error) -+//sysnb TimerfdGettime(fd int, currValue *ItimerSpec) (err error) -+//sysnb TimerfdSettime(fd int, flags int, newValue *ItimerSpec, oldValue *ItimerSpec) (err error) - //sysnb Tgkill(tgid int, tid int, sig syscall.Signal) (err error) - //sysnb Times(tms *Tms) (ticks uintptr, err error) - //sysnb Umask(mask int) (oldmask int) -@@ -1926,11 +2124,30 @@ func Vmsplice(fd int, iovs []Iovec, flags int) (int, error) { - return int(n), nil - } - -+func isGroupMember(gid int) bool { -+ groups, err := Getgroups() -+ if err != nil { -+ return false -+ } -+ -+ for _, g := range groups { -+ if g == gid { -+ return true -+ } -+ } -+ return false -+} -+ - //sys faccessat(dirfd int, path string, mode uint32) (err error) -+//sys Faccessat2(dirfd int, path string, mode uint32, flags int) (err error) - - func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) { -- if flags & ^(AT_SYMLINK_NOFOLLOW|AT_EACCESS) != 0 { -- return EINVAL -+ if flags == 0 { -+ return faccessat(dirfd, path, mode) -+ } -+ -+ if err := Faccessat2(dirfd, path, mode, flags); err != ENOSYS && err != EPERM { -+ return err - } - - // The Linux kernel faccessat system call does not take any flags. -@@ -1939,8 +2156,8 @@ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) { - // Because people naturally expect syscall.Faccessat to act - // like C faccessat, we do the same. - -- if flags == 0 { -- return faccessat(dirfd, path, mode) -+ if flags & ^(AT_SYMLINK_NOFOLLOW|AT_EACCESS) != 0 { -+ return EINVAL - } - - var st Stat_t -@@ -1983,7 +2200,7 @@ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) { - gid = Getgid() - } - -- if uint32(gid) == st.Gid { -+ if uint32(gid) == st.Gid || isGroupMember(int(st.Gid)) { - fmode = (st.Mode >> 3) & 7 - } else { - fmode = st.Mode & 7 -@@ -1997,8 +2214,8 @@ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) { - return EACCES - } - --//sys nameToHandleAt(dirFD int, pathname string, fh *fileHandle, mountID *_C_int, flags int) (err error) = SYS_NAME_TO_HANDLE_AT --//sys openByHandleAt(mountFD int, fh *fileHandle, flags int) (fd int, err error) = SYS_OPEN_BY_HANDLE_AT -+//sys nameToHandleAt(dirFD int, pathname string, fh *fileHandle, mountID *_C_int, flags int) (err error) = SYS_NAME_TO_HANDLE_AT -+//sys openByHandleAt(mountFD int, fh *fileHandle, flags int) (fd int, err error) = SYS_OPEN_BY_HANDLE_AT - - // fileHandle is the argument to nameToHandleAt and openByHandleAt. We - // originally tried to generate it via unix/linux/types.go with "type -@@ -2084,11 +2301,77 @@ func Klogset(typ int, arg int) (err error) { - return nil - } - -+// RemoteIovec is Iovec with the pointer replaced with an integer. -+// It is used for ProcessVMReadv and ProcessVMWritev, where the pointer -+// refers to a location in a different process' address space, which -+// would confuse the Go garbage collector. -+type RemoteIovec struct { -+ Base uintptr -+ Len int -+} -+ -+//sys ProcessVMReadv(pid int, localIov []Iovec, remoteIov []RemoteIovec, flags uint) (n int, err error) = SYS_PROCESS_VM_READV -+//sys ProcessVMWritev(pid int, localIov []Iovec, remoteIov []RemoteIovec, flags uint) (n int, err error) = SYS_PROCESS_VM_WRITEV -+ -+//sys PidfdOpen(pid int, flags int) (fd int, err error) = SYS_PIDFD_OPEN -+//sys PidfdGetfd(pidfd int, targetfd int, flags int) (fd int, err error) = SYS_PIDFD_GETFD -+//sys PidfdSendSignal(pidfd int, sig Signal, info *Siginfo, flags int) (err error) = SYS_PIDFD_SEND_SIGNAL -+ -+//sys shmat(id int, addr uintptr, flag int) (ret uintptr, err error) -+//sys shmctl(id int, cmd int, buf *SysvShmDesc) (result int, err error) -+//sys shmdt(addr uintptr) (err error) -+//sys shmget(key int, size int, flag int) (id int, err error) -+ -+//sys getitimer(which int, currValue *Itimerval) (err error) -+//sys setitimer(which int, newValue *Itimerval, oldValue *Itimerval) (err error) -+ -+// MakeItimerval creates an Itimerval from interval and value durations. -+func MakeItimerval(interval, value time.Duration) Itimerval { -+ return Itimerval{ -+ Interval: NsecToTimeval(interval.Nanoseconds()), -+ Value: NsecToTimeval(value.Nanoseconds()), -+ } -+} -+ -+// A value which may be passed to the which parameter for Getitimer and -+// Setitimer. -+type ItimerWhich int -+ -+// Possible which values for Getitimer and Setitimer. -+const ( -+ ItimerReal ItimerWhich = ITIMER_REAL -+ ItimerVirtual ItimerWhich = ITIMER_VIRTUAL -+ ItimerProf ItimerWhich = ITIMER_PROF -+) -+ -+// Getitimer wraps getitimer(2) to return the current value of the timer -+// specified by which. -+func Getitimer(which ItimerWhich) (Itimerval, error) { -+ var it Itimerval -+ if err := getitimer(int(which), &it); err != nil { -+ return Itimerval{}, err -+ } -+ -+ return it, nil -+} -+ -+// Setitimer wraps setitimer(2) to arm or disarm the timer specified by which. -+// It returns the previous value of the timer. -+// -+// If the Itimerval argument is the zero value, the timer will be disarmed. -+func Setitimer(which ItimerWhich, it Itimerval) (Itimerval, error) { -+ var prev Itimerval -+ if err := setitimer(int(which), &it, &prev); err != nil { -+ return Itimerval{}, err -+ } -+ -+ return prev, nil -+} -+ - /* - * Unimplemented - */ - // AfsSyscall --// Alarm - // ArchPrctl - // Brk - // ClockNanosleep -@@ -2104,7 +2387,6 @@ func Klogset(typ int, arg int) (err error) { - // GetMempolicy - // GetRobustList - // GetThreadArea --// Getitimer - // Getpmsg - // IoCancel - // IoDestroy -@@ -2165,10 +2447,6 @@ func Klogset(typ int, arg int) (err error) { - // SetRobustList - // SetThreadArea - // SetTidAddress --// Shmat --// Shmctl --// Shmdt --// Shmget - // Sigaltstack - // Swapoff - // Swapon -@@ -2178,7 +2456,6 @@ func Klogset(typ int, arg int) (err error) { - // TimerGetoverrun - // TimerGettime - // TimerSettime --// Timerfd - // Tkill (obsolete) - // Tuxcall - // Umount2 -@@ -2187,5 +2464,4 @@ func Klogset(typ int, arg int) (err error) { - // Vfork - // Vhangup - // Vserver --// Waitid - // _Sysctl -diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_386.go b/vendor/golang.org/x/sys/unix/syscall_linux_386.go -index a8374b6..ff5b589 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_linux_386.go -+++ b/vendor/golang.org/x/sys/unix/syscall_linux_386.go -@@ -2,9 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// TODO(rsc): Rewrite all nn(SP) references into name+(nn-8)(FP) --// so that go vet can check that they are correct. -- -+//go:build 386 && linux - // +build 386,linux - - package unix -@@ -21,36 +19,8 @@ func setTimeval(sec, usec int64) Timeval { - return Timeval{Sec: int32(sec), Usec: int32(usec)} - } - --//sysnb pipe(p *[2]_C_int) (err error) -- --func Pipe(p []int) (err error) { -- if len(p) != 2 { -- return EINVAL -- } -- var pp [2]_C_int -- err = pipe(&pp) -- p[0] = int(pp[0]) -- p[1] = int(pp[1]) -- return --} -- --//sysnb pipe2(p *[2]_C_int, flags int) (err error) -- --func Pipe2(p []int, flags int) (err error) { -- if len(p) != 2 { -- return EINVAL -- } -- var pp [2]_C_int -- err = pipe2(&pp, flags) -- p[0] = int(pp[0]) -- p[1] = int(pp[1]) -- return --} -- - // 64-bit file system and 32-bit uid calls - // (386 default is 32-bit file system and 16-bit uid). --//sys Dup2(oldfd int, newfd int) (err error) --//sysnb EpollCreate(size int) (fd int, err error) - //sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) - //sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64_64 - //sys Fchown(fd int, uid int, gid int) (err error) = SYS_FCHOWN32 -@@ -61,21 +31,16 @@ func Pipe2(p []int, flags int) (err error) { - //sysnb Geteuid() (euid int) = SYS_GETEUID32 - //sysnb Getgid() (gid int) = SYS_GETGID32 - //sysnb Getuid() (uid int) = SYS_GETUID32 --//sysnb InotifyInit() (fd int, err error) - //sys Ioperm(from int, num int, on int) (err error) - //sys Iopl(level int) (err error) - //sys Lchown(path string, uid int, gid int) (err error) = SYS_LCHOWN32 - //sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64 --//sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64 --//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64 -+//sys pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64 -+//sys pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64 - //sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) - //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) = SYS_SENDFILE64 - //sys setfsgid(gid int) (prev int, err error) = SYS_SETFSGID32 - //sys setfsuid(uid int) (prev int, err error) = SYS_SETFSUID32 --//sysnb Setregid(rgid int, egid int) (err error) = SYS_SETREGID32 --//sysnb Setresgid(rgid int, egid int, sgid int) (err error) = SYS_SETRESGID32 --//sysnb Setresuid(ruid int, euid int, suid int) (err error) = SYS_SETRESUID32 --//sysnb Setreuid(ruid int, euid int) (err error) = SYS_SETREUID32 - //sys Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) - //sys Stat(path string, stat *Stat_t) (err error) = SYS_STAT64 - //sys SyncFileRange(fd int, off int64, n int64, flags int) (err error) -@@ -101,13 +66,13 @@ type rlimit32 struct { - Max uint32 - } - --//sysnb getrlimit(resource int, rlim *rlimit32) (err error) = SYS_GETRLIMIT -+//sysnb getrlimit(resource int, rlim *rlimit32) (err error) = SYS_GETRLIMIT - - const rlimInf32 = ^uint32(0) - const rlimInf64 = ^uint64(0) - - func Getrlimit(resource int, rlim *Rlimit) (err error) { -- err = prlimit(0, resource, nil, rlim) -+ err = Prlimit(0, resource, nil, rlim) - if err != ENOSYS { - return err - } -@@ -132,10 +97,10 @@ func Getrlimit(resource int, rlim *Rlimit) (err error) { - return - } - --//sysnb setrlimit(resource int, rlim *rlimit32) (err error) = SYS_SETRLIMIT -+//sysnb setrlimit(resource int, rlim *rlimit32) (err error) = SYS_SETRLIMIT - - func Setrlimit(resource int, rlim *Rlimit) (err error) { -- err = prlimit(0, resource, rlim, nil) -+ err = Prlimit(0, resource, rlim, nil) - if err != ENOSYS { - return err - } -@@ -204,14 +169,6 @@ const ( - _SENDMMSG = 20 - ) - --func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { -- fd, e := socketcall(_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), 0, 0, 0) -- if e != 0 { -- err = e -- } -- return --} -- - func accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) { - fd, e := socketcall(_ACCEPT4, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), uintptr(flags), 0, 0) - if e != 0 { -@@ -380,11 +337,6 @@ func (cmsg *Cmsghdr) SetLen(length int) { - cmsg.Len = uint32(length) - } - --//sys poll(fds *PollFd, nfds int, timeout int) (n int, err error) -- --func Poll(fds []PollFd, timeout int) (n int, err error) { -- if len(fds) == 0 { -- return poll(nil, 0, timeout) -- } -- return poll(&fds[0], len(fds), timeout) -+func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { -+ rsa.Service_name_len = uint32(length) - } -diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_alarm.go b/vendor/golang.org/x/sys/unix/syscall_linux_alarm.go -new file mode 100644 -index 0000000..08086ac ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/syscall_linux_alarm.go -@@ -0,0 +1,14 @@ -+// Copyright 2022 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build linux && (386 || amd64 || mips || mipsle || mips64 || mipsle || ppc64 || ppc64le || ppc || s390x || sparc64) -+// +build linux -+// +build 386 amd64 mips mipsle mips64 mipsle ppc64 ppc64le ppc s390x sparc64 -+ -+package unix -+ -+// SYS_ALARM is not defined on arm or riscv, but is available for other GOARCH -+// values. -+ -+//sys Alarm(seconds uint) (remaining uint, err error) -diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_amd64.go b/vendor/golang.org/x/sys/unix/syscall_linux_amd64.go -index 8ed1d54..9b27035 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_linux_amd64.go -+++ b/vendor/golang.org/x/sys/unix/syscall_linux_amd64.go -@@ -2,12 +2,11 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build amd64 && linux - // +build amd64,linux - - package unix - --//sys Dup2(oldfd int, newfd int) (err error) --//sysnb EpollCreate(size int) (fd int, err error) - //sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) - //sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64 - //sys Fchown(fd int, uid int, gid int) (err error) -@@ -20,17 +19,6 @@ package unix - //sysnb Getgid() (gid int) - //sysnb Getrlimit(resource int, rlim *Rlimit) (err error) - //sysnb Getuid() (uid int) --//sysnb inotifyInit() (fd int, err error) -- --func InotifyInit() (fd int, err error) { -- // First try inotify_init1, because Android's seccomp policy blocks the latter. -- fd, err = InotifyInit1(0) -- if err == ENOSYS { -- fd, err = inotifyInit() -- } -- return --} -- - //sys Ioperm(from int, num int, on int) (err error) - //sys Iopl(level int) (err error) - //sys Lchown(path string, uid int, gid int) (err error) -@@ -40,9 +28,10 @@ func Lstat(path string, stat *Stat_t) (err error) { - return Fstatat(AT_FDCWD, path, stat, AT_SYMLINK_NOFOLLOW) - } - -+//sys MemfdSecret(flags int) (fd int, err error) - //sys Pause() (err error) --//sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64 --//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64 -+//sys pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64 -+//sys pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64 - //sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) - //sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK - -@@ -57,11 +46,7 @@ func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err - //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) - //sys setfsgid(gid int) (prev int, err error) - //sys setfsuid(uid int) (prev int, err error) --//sysnb Setregid(rgid int, egid int) (err error) --//sysnb Setresgid(rgid int, egid int, sgid int) (err error) --//sysnb Setresuid(ruid int, euid int, suid int) (err error) - //sysnb Setrlimit(resource int, rlim *Rlimit) (err error) --//sysnb Setreuid(ruid int, euid int) (err error) - //sys Shutdown(fd int, how int) (err error) - //sys Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error) - -@@ -74,7 +59,6 @@ func Stat(path string, stat *Stat_t) (err error) { - //sys SyncFileRange(fd int, off int64, n int64, flags int) (err error) - //sys Truncate(path string, length int64) (err error) - //sys Ustat(dev int, ubuf *Ustat_t) (err error) --//sys accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) - //sys accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) - //sys bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) - //sys connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) -@@ -125,32 +109,6 @@ func setTimeval(sec, usec int64) Timeval { - return Timeval{Sec: sec, Usec: usec} - } - --//sysnb pipe(p *[2]_C_int) (err error) -- --func Pipe(p []int) (err error) { -- if len(p) != 2 { -- return EINVAL -- } -- var pp [2]_C_int -- err = pipe(&pp) -- p[0] = int(pp[0]) -- p[1] = int(pp[1]) -- return --} -- --//sysnb pipe2(p *[2]_C_int, flags int) (err error) -- --func Pipe2(p []int, flags int) (err error) { -- if len(p) != 2 { -- return EINVAL -- } -- var pp [2]_C_int -- err = pipe2(&pp, flags) -- p[0] = int(pp[0]) -- p[1] = int(pp[1]) -- return --} -- - func (r *PtraceRegs) PC() uint64 { return r.Rip } - - func (r *PtraceRegs) SetPC(pc uint64) { r.Rip = pc } -@@ -171,13 +129,8 @@ func (cmsg *Cmsghdr) SetLen(length int) { - cmsg.Len = uint64(length) - } - --//sys poll(fds *PollFd, nfds int, timeout int) (n int, err error) -- --func Poll(fds []PollFd, timeout int) (n int, err error) { -- if len(fds) == 0 { -- return poll(nil, 0, timeout) -- } -- return poll(&fds[0], len(fds), timeout) -+func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { -+ rsa.Service_name_len = uint64(length) - } - - //sys kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error) -diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_amd64_gc.go b/vendor/golang.org/x/sys/unix/syscall_linux_amd64_gc.go -index 21a4946..8b0f0f3 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_linux_amd64_gc.go -+++ b/vendor/golang.org/x/sys/unix/syscall_linux_amd64_gc.go -@@ -2,8 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build amd64,linux --// +build !gccgo -+//go:build amd64 && linux && gc -+// +build amd64,linux,gc - - package unix - -diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_arm.go b/vendor/golang.org/x/sys/unix/syscall_linux_arm.go -index 99ae613..856ad1d 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_linux_arm.go -+++ b/vendor/golang.org/x/sys/unix/syscall_linux_arm.go -@@ -2,12 +2,12 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build arm && linux - // +build arm,linux - - package unix - - import ( -- "syscall" - "unsafe" - ) - -@@ -19,40 +19,6 @@ func setTimeval(sec, usec int64) Timeval { - return Timeval{Sec: int32(sec), Usec: int32(usec)} - } - --//sysnb pipe(p *[2]_C_int) (err error) -- --func Pipe(p []int) (err error) { -- if len(p) != 2 { -- return EINVAL -- } -- var pp [2]_C_int -- // Try pipe2 first for Android O, then try pipe for kernel 2.6.23. -- err = pipe2(&pp, 0) -- if err == ENOSYS { -- err = pipe(&pp) -- } -- p[0] = int(pp[0]) -- p[1] = int(pp[1]) -- return --} -- --//sysnb pipe2(p *[2]_C_int, flags int) (err error) -- --func Pipe2(p []int, flags int) (err error) { -- if len(p) != 2 { -- return EINVAL -- } -- var pp [2]_C_int -- err = pipe2(&pp, flags) -- p[0] = int(pp[0]) -- p[1] = int(pp[1]) -- return --} -- --// Underlying system call writes to newoffset via pointer. --// Implemented in assembly to avoid allocation. --func seek(fd int, offset int64, whence int) (newoffset int64, err syscall.Errno) -- - func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { - newoffset, errno := seek(fd, offset, whence) - if errno != 0 { -@@ -61,7 +27,6 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { - return newoffset, nil - } - --//sys accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) - //sys accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) - //sys bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) - //sys connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) -@@ -80,8 +45,6 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { - - // 64-bit file system and 32-bit uid calls - // (16-bit uid calls are not always supported in newer kernels) --//sys Dup2(oldfd int, newfd int) (err error) --//sysnb EpollCreate(size int) (fd int, err error) - //sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) - //sys Fchown(fd int, uid int, gid int) (err error) = SYS_FCHOWN32 - //sys Fstat(fd int, stat *Stat_t) (err error) = SYS_FSTAT64 -@@ -90,7 +53,6 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { - //sysnb Geteuid() (euid int) = SYS_GETEUID32 - //sysnb Getgid() (gid int) = SYS_GETGID32 - //sysnb Getuid() (uid int) = SYS_GETUID32 --//sysnb InotifyInit() (fd int, err error) - //sys Lchown(path string, uid int, gid int) (err error) = SYS_LCHOWN32 - //sys Listen(s int, n int) (err error) - //sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64 -@@ -100,10 +62,6 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { - //sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) = SYS__NEWSELECT - //sys setfsgid(gid int) (prev int, err error) = SYS_SETFSGID32 - //sys setfsuid(uid int) (prev int, err error) = SYS_SETFSUID32 --//sysnb Setregid(rgid int, egid int) (err error) = SYS_SETREGID32 --//sysnb Setresgid(rgid int, egid int, sgid int) (err error) = SYS_SETRESGID32 --//sysnb Setresuid(ruid int, euid int, suid int) (err error) = SYS_SETRESUID32 --//sysnb Setreuid(ruid int, euid int) (err error) = SYS_SETREUID32 - //sys Shutdown(fd int, how int) (err error) - //sys Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) - //sys Stat(path string, stat *Stat_t) (err error) = SYS_STAT64 -@@ -134,8 +92,8 @@ func Utime(path string, buf *Utimbuf) error { - - //sys utimes(path string, times *[2]Timeval) (err error) - --//sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64 --//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64 -+//sys pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64 -+//sys pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64 - //sys Truncate(path string, length int64) (err error) = SYS_TRUNCATE64 - //sys Ftruncate(fd int, length int64) (err error) = SYS_FTRUNCATE64 - -@@ -182,13 +140,13 @@ type rlimit32 struct { - Max uint32 - } - --//sysnb getrlimit(resource int, rlim *rlimit32) (err error) = SYS_UGETRLIMIT -+//sysnb getrlimit(resource int, rlim *rlimit32) (err error) = SYS_UGETRLIMIT - - const rlimInf32 = ^uint32(0) - const rlimInf64 = ^uint64(0) - - func Getrlimit(resource int, rlim *Rlimit) (err error) { -- err = prlimit(0, resource, nil, rlim) -+ err = Prlimit(0, resource, nil, rlim) - if err != ENOSYS { - return err - } -@@ -213,10 +171,10 @@ func Getrlimit(resource int, rlim *Rlimit) (err error) { - return - } - --//sysnb setrlimit(resource int, rlim *rlimit32) (err error) = SYS_SETRLIMIT -+//sysnb setrlimit(resource int, rlim *rlimit32) (err error) = SYS_SETRLIMIT - - func Setrlimit(resource int, rlim *Rlimit) (err error) { -- err = prlimit(0, resource, rlim, nil) -+ err = Prlimit(0, resource, rlim, nil) - if err != ENOSYS { - return err - } -@@ -260,13 +218,8 @@ func (cmsg *Cmsghdr) SetLen(length int) { - cmsg.Len = uint32(length) - } - --//sys poll(fds *PollFd, nfds int, timeout int) (n int, err error) -- --func Poll(fds []PollFd, timeout int) (n int, err error) { -- if len(fds) == 0 { -- return poll(nil, 0, timeout) -- } -- return poll(&fds[0], len(fds), timeout) -+func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { -+ rsa.Service_name_len = uint32(length) - } - - //sys armSyncFileRange(fd int, flags int, off int64, n int64) (err error) = SYS_ARM_SYNC_FILE_RANGE -diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go b/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go -index 807a0b2..6422704 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go -+++ b/vendor/golang.org/x/sys/unix/syscall_linux_arm64.go -@@ -2,19 +2,13 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build arm64 && linux - // +build arm64,linux - - package unix - - import "unsafe" - --func EpollCreate(size int) (fd int, err error) { -- if size <= 0 { -- return -1, EINVAL -- } -- return EpollCreate1(0) --} -- - //sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) = SYS_EPOLL_PWAIT - //sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64 - //sys Fchown(fd int, uid int, gid int) (err error) -@@ -25,11 +19,12 @@ func EpollCreate(size int) (fd int, err error) { - //sysnb Getegid() (egid int) - //sysnb Geteuid() (euid int) - //sysnb Getgid() (gid int) --//sysnb Getrlimit(resource int, rlim *Rlimit) (err error) -+//sysnb getrlimit(resource int, rlim *Rlimit) (err error) - //sysnb Getuid() (uid int) - //sys Listen(s int, n int) (err error) --//sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64 --//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64 -+//sys MemfdSecret(flags int) (fd int, err error) -+//sys pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64 -+//sys pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64 - //sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) - //sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK - -@@ -44,11 +39,7 @@ func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err - //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) - //sys setfsgid(gid int) (prev int, err error) - //sys setfsuid(uid int) (prev int, err error) --//sysnb Setregid(rgid int, egid int) (err error) --//sysnb Setresgid(rgid int, egid int, sgid int) (err error) --//sysnb Setresuid(ruid int, euid int, suid int) (err error) --//sysnb Setrlimit(resource int, rlim *Rlimit) (err error) --//sysnb Setreuid(ruid int, euid int) (err error) -+//sysnb setrlimit(resource int, rlim *Rlimit) (err error) - //sys Shutdown(fd int, how int) (err error) - //sys Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error) - -@@ -72,7 +63,6 @@ func Ustat(dev int, ubuf *Ustat_t) (err error) { - return ENOSYS - } - --//sys accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) - //sys accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) - //sys bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) - //sys connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) -@@ -144,28 +134,22 @@ func utimes(path string, tv *[2]Timeval) (err error) { - return utimensat(AT_FDCWD, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0) - } - --func Pipe(p []int) (err error) { -- if len(p) != 2 { -- return EINVAL -+// Getrlimit prefers the prlimit64 system call. See issue 38604. -+func Getrlimit(resource int, rlim *Rlimit) error { -+ err := Prlimit(0, resource, nil, rlim) -+ if err != ENOSYS { -+ return err - } -- var pp [2]_C_int -- err = pipe2(&pp, 0) -- p[0] = int(pp[0]) -- p[1] = int(pp[1]) -- return -+ return getrlimit(resource, rlim) - } - --//sysnb pipe2(p *[2]_C_int, flags int) (err error) -- --func Pipe2(p []int, flags int) (err error) { -- if len(p) != 2 { -- return EINVAL -+// Setrlimit prefers the prlimit64 system call. See issue 38604. -+func Setrlimit(resource int, rlim *Rlimit) error { -+ err := Prlimit(0, resource, rlim, nil) -+ if err != ENOSYS { -+ return err - } -- var pp [2]_C_int -- err = pipe2(&pp, flags) -- p[0] = int(pp[0]) -- p[1] = int(pp[1]) -- return -+ return setrlimit(resource, rlim) - } - - func (r *PtraceRegs) PC() uint64 { return r.Pc } -@@ -188,12 +172,8 @@ func (cmsg *Cmsghdr) SetLen(length int) { - cmsg.Len = uint64(length) - } - --func InotifyInit() (fd int, err error) { -- return InotifyInit1(0) --} -- --func Dup2(oldfd int, newfd int) (err error) { -- return Dup3(oldfd, newfd, 0) -+func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { -+ rsa.Service_name_len = uint64(length) - } - - func Pause() error { -@@ -201,18 +181,6 @@ func Pause() error { - return err - } - --func Poll(fds []PollFd, timeout int) (n int, err error) { -- var ts *Timespec -- if timeout >= 0 { -- ts = new(Timespec) -- *ts = NsecToTimespec(int64(timeout) * 1e6) -- } -- if len(fds) == 0 { -- return ppoll(nil, 0, ts, nil) -- } -- return ppoll(&fds[0], len(fds), ts, nil) --} -- - //sys kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error) - - func KexecFileLoad(kernelFd int, initrdFd int, cmdline string, flags int) error { -diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_gc.go b/vendor/golang.org/x/sys/unix/syscall_linux_gc.go -index c26e6ec..2b1168d 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_linux_gc.go -+++ b/vendor/golang.org/x/sys/unix/syscall_linux_gc.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build linux,!gccgo -+//go:build linux && gc -+// +build linux,gc - - package unix - -diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_gc_386.go b/vendor/golang.org/x/sys/unix/syscall_linux_gc_386.go -index 070bd38..9843fb4 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_linux_gc_386.go -+++ b/vendor/golang.org/x/sys/unix/syscall_linux_gc_386.go -@@ -2,7 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build linux,!gccgo,386 -+//go:build linux && gc && 386 -+// +build linux,gc,386 - - package unix - -diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_gc_arm.go b/vendor/golang.org/x/sys/unix/syscall_linux_gc_arm.go -new file mode 100644 -index 0000000..a6008fc ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/syscall_linux_gc_arm.go -@@ -0,0 +1,14 @@ -+// Copyright 2009 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build arm && gc && linux -+// +build arm,gc,linux -+ -+package unix -+ -+import "syscall" -+ -+// Underlying system call writes to newoffset via pointer. -+// Implemented in assembly to avoid allocation. -+func seek(fd int, offset int64, whence int) (newoffset int64, err syscall.Errno) -diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_386.go b/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_386.go -index 308eb7a..7740af2 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_386.go -+++ b/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_386.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build linux && gccgo && 386 - // +build linux,gccgo,386 - - package unix -diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_arm.go b/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_arm.go -index aa7fc9e..e16a122 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_arm.go -+++ b/vendor/golang.org/x/sys/unix/syscall_linux_gccgo_arm.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build linux && gccgo && arm - // +build linux,gccgo,arm - - package unix -diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_loong64.go b/vendor/golang.org/x/sys/unix/syscall_linux_loong64.go -new file mode 100644 -index 0000000..59dab51 ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/syscall_linux_loong64.go -@@ -0,0 +1,222 @@ -+// Copyright 2022 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build loong64 && linux -+// +build loong64,linux -+ -+package unix -+ -+import "unsafe" -+ -+//sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) = SYS_EPOLL_PWAIT -+//sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64 -+//sys Fchown(fd int, uid int, gid int) (err error) -+//sys Fstatfs(fd int, buf *Statfs_t) (err error) -+//sys Ftruncate(fd int, length int64) (err error) -+//sysnb Getegid() (egid int) -+//sysnb Geteuid() (euid int) -+//sysnb Getgid() (gid int) -+//sysnb Getuid() (uid int) -+//sys Listen(s int, n int) (err error) -+//sys pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64 -+//sys pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64 -+//sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK -+ -+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) { -+ var ts *Timespec -+ if timeout != nil { -+ ts = &Timespec{Sec: timeout.Sec, Nsec: timeout.Usec * 1000} -+ } -+ return Pselect(nfd, r, w, e, ts, nil) -+} -+ -+//sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) -+//sys setfsgid(gid int) (prev int, err error) -+//sys setfsuid(uid int) (prev int, err error) -+//sys Shutdown(fd int, how int) (err error) -+//sys Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error) -+ -+func timespecFromStatxTimestamp(x StatxTimestamp) Timespec { -+ return Timespec{ -+ Sec: x.Sec, -+ Nsec: int64(x.Nsec), -+ } -+} -+ -+func Fstatat(fd int, path string, stat *Stat_t, flags int) error { -+ var r Statx_t -+ // Do it the glibc way, add AT_NO_AUTOMOUNT. -+ if err := Statx(fd, path, AT_NO_AUTOMOUNT|flags, STATX_BASIC_STATS, &r); err != nil { -+ return err -+ } -+ -+ stat.Dev = Mkdev(r.Dev_major, r.Dev_minor) -+ stat.Ino = r.Ino -+ stat.Mode = uint32(r.Mode) -+ stat.Nlink = r.Nlink -+ stat.Uid = r.Uid -+ stat.Gid = r.Gid -+ stat.Rdev = Mkdev(r.Rdev_major, r.Rdev_minor) -+ // hope we don't get to process files so large to overflow these size -+ // fields... -+ stat.Size = int64(r.Size) -+ stat.Blksize = int32(r.Blksize) -+ stat.Blocks = int64(r.Blocks) -+ stat.Atim = timespecFromStatxTimestamp(r.Atime) -+ stat.Mtim = timespecFromStatxTimestamp(r.Mtime) -+ stat.Ctim = timespecFromStatxTimestamp(r.Ctime) -+ -+ return nil -+} -+ -+func Fstat(fd int, stat *Stat_t) (err error) { -+ return Fstatat(fd, "", stat, AT_EMPTY_PATH) -+} -+ -+func Stat(path string, stat *Stat_t) (err error) { -+ return Fstatat(AT_FDCWD, path, stat, 0) -+} -+ -+func Lchown(path string, uid int, gid int) (err error) { -+ return Fchownat(AT_FDCWD, path, uid, gid, AT_SYMLINK_NOFOLLOW) -+} -+ -+func Lstat(path string, stat *Stat_t) (err error) { -+ return Fstatat(AT_FDCWD, path, stat, AT_SYMLINK_NOFOLLOW) -+} -+ -+//sys Statfs(path string, buf *Statfs_t) (err error) -+//sys SyncFileRange(fd int, off int64, n int64, flags int) (err error) -+//sys Truncate(path string, length int64) (err error) -+ -+func Ustat(dev int, ubuf *Ustat_t) (err error) { -+ return ENOSYS -+} -+ -+//sys accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) -+//sys bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) -+//sys connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) -+//sysnb getgroups(n int, list *_Gid_t) (nn int, err error) -+//sysnb setgroups(n int, list *_Gid_t) (err error) -+//sys getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) -+//sys setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) -+//sysnb socket(domain int, typ int, proto int) (fd int, err error) -+//sysnb socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) -+//sysnb getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) -+//sysnb getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) -+//sys recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) -+//sys sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) -+//sys recvmsg(s int, msg *Msghdr, flags int) (n int, err error) -+//sys sendmsg(s int, msg *Msghdr, flags int) (n int, err error) -+//sys mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error) -+ -+//sysnb Gettimeofday(tv *Timeval) (err error) -+ -+func setTimespec(sec, nsec int64) Timespec { -+ return Timespec{Sec: sec, Nsec: nsec} -+} -+ -+func setTimeval(sec, usec int64) Timeval { -+ return Timeval{Sec: sec, Usec: usec} -+} -+ -+func Getrlimit(resource int, rlim *Rlimit) (err error) { -+ err = Prlimit(0, resource, nil, rlim) -+ return -+} -+ -+func Setrlimit(resource int, rlim *Rlimit) (err error) { -+ err = Prlimit(0, resource, rlim, nil) -+ return -+} -+ -+func futimesat(dirfd int, path string, tv *[2]Timeval) (err error) { -+ if tv == nil { -+ return utimensat(dirfd, path, nil, 0) -+ } -+ -+ ts := []Timespec{ -+ NsecToTimespec(TimevalToNsec(tv[0])), -+ NsecToTimespec(TimevalToNsec(tv[1])), -+ } -+ return utimensat(dirfd, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0) -+} -+ -+func Time(t *Time_t) (Time_t, error) { -+ var tv Timeval -+ err := Gettimeofday(&tv) -+ if err != nil { -+ return 0, err -+ } -+ if t != nil { -+ *t = Time_t(tv.Sec) -+ } -+ return Time_t(tv.Sec), nil -+} -+ -+func Utime(path string, buf *Utimbuf) error { -+ tv := []Timeval{ -+ {Sec: buf.Actime}, -+ {Sec: buf.Modtime}, -+ } -+ return Utimes(path, tv) -+} -+ -+func utimes(path string, tv *[2]Timeval) (err error) { -+ if tv == nil { -+ return utimensat(AT_FDCWD, path, nil, 0) -+ } -+ -+ ts := []Timespec{ -+ NsecToTimespec(TimevalToNsec(tv[0])), -+ NsecToTimespec(TimevalToNsec(tv[1])), -+ } -+ return utimensat(AT_FDCWD, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0) -+} -+ -+func (r *PtraceRegs) PC() uint64 { return r.Era } -+ -+func (r *PtraceRegs) SetPC(era uint64) { r.Era = era } -+ -+func (iov *Iovec) SetLen(length int) { -+ iov.Len = uint64(length) -+} -+ -+func (msghdr *Msghdr) SetControllen(length int) { -+ msghdr.Controllen = uint64(length) -+} -+ -+func (msghdr *Msghdr) SetIovlen(length int) { -+ msghdr.Iovlen = uint64(length) -+} -+ -+func (cmsg *Cmsghdr) SetLen(length int) { -+ cmsg.Len = uint64(length) -+} -+ -+func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { -+ rsa.Service_name_len = uint64(length) -+} -+ -+func Pause() error { -+ _, err := ppoll(nil, 0, nil, nil) -+ return err -+} -+ -+func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) { -+ return Renameat2(olddirfd, oldpath, newdirfd, newpath, 0) -+} -+ -+//sys kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error) -+ -+func KexecFileLoad(kernelFd int, initrdFd int, cmdline string, flags int) error { -+ cmdlineLen := len(cmdline) -+ if cmdlineLen > 0 { -+ // Account for the additional NULL byte added by -+ // BytePtrFromString in kexecFileLoad. The kexec_file_load -+ // syscall expects a NULL-terminated string. -+ cmdlineLen++ -+ } -+ return kexecFileLoad(kernelFd, initrdFd, cmdlineLen, cmdline, flags) -+} -diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_mips64x.go b/vendor/golang.org/x/sys/unix/syscall_linux_mips64x.go -index af77e6e..bfef09a 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_linux_mips64x.go -+++ b/vendor/golang.org/x/sys/unix/syscall_linux_mips64x.go -@@ -2,13 +2,12 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build linux && (mips64 || mips64le) - // +build linux - // +build mips64 mips64le - - package unix - --//sys Dup2(oldfd int, newfd int) (err error) --//sysnb EpollCreate(size int) (fd int, err error) - //sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) - //sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64 - //sys Fchown(fd int, uid int, gid int) (err error) -@@ -22,8 +21,8 @@ package unix - //sys Lchown(path string, uid int, gid int) (err error) - //sys Listen(s int, n int) (err error) - //sys Pause() (err error) --//sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64 --//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64 -+//sys pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64 -+//sys pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64 - //sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) - //sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK - -@@ -38,18 +37,13 @@ func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err - //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) - //sys setfsgid(gid int) (prev int, err error) - //sys setfsuid(uid int) (prev int, err error) --//sysnb Setregid(rgid int, egid int) (err error) --//sysnb Setresgid(rgid int, egid int, sgid int) (err error) --//sysnb Setresuid(ruid int, euid int, suid int) (err error) - //sysnb Setrlimit(resource int, rlim *Rlimit) (err error) --//sysnb Setreuid(ruid int, euid int) (err error) - //sys Shutdown(fd int, how int) (err error) - //sys Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error) - //sys Statfs(path string, buf *Statfs_t) (err error) - //sys SyncFileRange(fd int, off int64, n int64, flags int) (err error) - //sys Truncate(path string, length int64) (err error) - //sys Ustat(dev int, ubuf *Ustat_t) (err error) --//sys accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) - //sys accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) - //sys bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) - //sys connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) -@@ -93,30 +87,6 @@ func setTimeval(sec, usec int64) Timeval { - return Timeval{Sec: sec, Usec: usec} - } - --func Pipe(p []int) (err error) { -- if len(p) != 2 { -- return EINVAL -- } -- var pp [2]_C_int -- err = pipe2(&pp, 0) -- p[0] = int(pp[0]) -- p[1] = int(pp[1]) -- return --} -- --//sysnb pipe2(p *[2]_C_int, flags int) (err error) -- --func Pipe2(p []int, flags int) (err error) { -- if len(p) != 2 { -- return EINVAL -- } -- var pp [2]_C_int -- err = pipe2(&pp, flags) -- p[0] = int(pp[0]) -- p[1] = int(pp[1]) -- return --} -- - func Ioperm(from int, num int, on int) (err error) { - return ENOSYS - } -@@ -216,15 +186,6 @@ func (cmsg *Cmsghdr) SetLen(length int) { - cmsg.Len = uint64(length) - } - --func InotifyInit() (fd int, err error) { -- return InotifyInit1(0) --} -- --//sys poll(fds *PollFd, nfds int, timeout int) (n int, err error) -- --func Poll(fds []PollFd, timeout int) (n int, err error) { -- if len(fds) == 0 { -- return poll(nil, 0, timeout) -- } -- return poll(&fds[0], len(fds), timeout) -+func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { -+ rsa.Service_name_len = uint64(length) - } -diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_mipsx.go b/vendor/golang.org/x/sys/unix/syscall_linux_mipsx.go -index e286c6b..ab30250 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_linux_mipsx.go -+++ b/vendor/golang.org/x/sys/unix/syscall_linux_mipsx.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build linux && (mips || mipsle) - // +build linux - // +build mips mipsle - -@@ -14,8 +15,6 @@ import ( - - func Syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno) - --//sys Dup2(oldfd int, newfd int) (err error) --//sysnb EpollCreate(size int) (fd int, err error) - //sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) - //sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64 - //sys Fchown(fd int, uid int, gid int) (err error) -@@ -26,23 +25,18 @@ func Syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, - //sysnb Getuid() (uid int) - //sys Lchown(path string, uid int, gid int) (err error) - //sys Listen(s int, n int) (err error) --//sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64 --//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64 -+//sys pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64 -+//sys pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64 - //sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) - //sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) = SYS__NEWSELECT - //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) = SYS_SENDFILE64 - //sys setfsgid(gid int) (prev int, err error) - //sys setfsuid(uid int) (prev int, err error) --//sysnb Setregid(rgid int, egid int) (err error) --//sysnb Setresgid(rgid int, egid int, sgid int) (err error) --//sysnb Setresuid(ruid int, euid int, suid int) (err error) --//sysnb Setreuid(ruid int, euid int) (err error) - //sys Shutdown(fd int, how int) (err error) - //sys Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) - //sys SyncFileRange(fd int, off int64, n int64, flags int) (err error) - //sys Truncate(path string, length int64) (err error) = SYS_TRUNCATE64 - //sys Ustat(dev int, ubuf *Ustat_t) (err error) --//sys accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) - //sys accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) - //sys bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) - //sys connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) -@@ -59,7 +53,6 @@ func Syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, - //sys recvmsg(s int, msg *Msghdr, flags int) (n int, err error) - //sys sendmsg(s int, msg *Msghdr, flags int) (n int, err error) - --//sysnb InotifyInit() (fd int, err error) - //sys Ioperm(from int, num int, on int) (err error) - //sys Iopl(level int) (err error) - -@@ -112,29 +105,6 @@ func setTimeval(sec, usec int64) Timeval { - return Timeval{Sec: int32(sec), Usec: int32(usec)} - } - --//sysnb pipe2(p *[2]_C_int, flags int) (err error) -- --func Pipe2(p []int, flags int) (err error) { -- if len(p) != 2 { -- return EINVAL -- } -- var pp [2]_C_int -- err = pipe2(&pp, flags) -- p[0] = int(pp[0]) -- p[1] = int(pp[1]) -- return --} -- --//sysnb pipe() (p1 int, p2 int, err error) -- --func Pipe(p []int) (err error) { -- if len(p) != 2 { -- return EINVAL -- } -- p[0], p[1], err = pipe() -- return --} -- - //sys mmap2(addr uintptr, length uintptr, prot int, flags int, fd int, pageOffset uintptr) (xaddr uintptr, err error) - - func mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error) { -@@ -153,10 +123,10 @@ type rlimit32 struct { - Max uint32 - } - --//sysnb getrlimit(resource int, rlim *rlimit32) (err error) = SYS_GETRLIMIT -+//sysnb getrlimit(resource int, rlim *rlimit32) (err error) = SYS_GETRLIMIT - - func Getrlimit(resource int, rlim *Rlimit) (err error) { -- err = prlimit(0, resource, nil, rlim) -+ err = Prlimit(0, resource, nil, rlim) - if err != ENOSYS { - return err - } -@@ -181,10 +151,10 @@ func Getrlimit(resource int, rlim *Rlimit) (err error) { - return - } - --//sysnb setrlimit(resource int, rlim *rlimit32) (err error) = SYS_SETRLIMIT -+//sysnb setrlimit(resource int, rlim *rlimit32) (err error) = SYS_SETRLIMIT - - func Setrlimit(resource int, rlim *Rlimit) (err error) { -- err = prlimit(0, resource, rlim, nil) -+ err = Prlimit(0, resource, rlim, nil) - if err != ENOSYS { - return err - } -@@ -228,11 +198,6 @@ func (cmsg *Cmsghdr) SetLen(length int) { - cmsg.Len = uint32(length) - } - --//sys poll(fds *PollFd, nfds int, timeout int) (n int, err error) -- --func Poll(fds []PollFd, timeout int) (n int, err error) { -- if len(fds) == 0 { -- return poll(nil, 0, timeout) -- } -- return poll(&fds[0], len(fds), timeout) -+func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { -+ rsa.Service_name_len = uint32(length) - } -diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_ppc.go b/vendor/golang.org/x/sys/unix/syscall_linux_ppc.go -new file mode 100644 -index 0000000..eac1cf1 ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/syscall_linux_ppc.go -@@ -0,0 +1,232 @@ -+// Copyright 2021 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build linux && ppc -+// +build linux,ppc -+ -+package unix -+ -+import ( -+ "syscall" -+ "unsafe" -+) -+ -+//sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) -+//sys Fchown(fd int, uid int, gid int) (err error) -+//sys Fstat(fd int, stat *Stat_t) (err error) = SYS_FSTAT64 -+//sys Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) = SYS_FSTATAT64 -+//sys Ftruncate(fd int, length int64) (err error) = SYS_FTRUNCATE64 -+//sysnb Getegid() (egid int) -+//sysnb Geteuid() (euid int) -+//sysnb Getgid() (gid int) -+//sysnb Getuid() (uid int) -+//sys Ioperm(from int, num int, on int) (err error) -+//sys Iopl(level int) (err error) -+//sys Lchown(path string, uid int, gid int) (err error) -+//sys Listen(s int, n int) (err error) -+//sys Lstat(path string, stat *Stat_t) (err error) = SYS_LSTAT64 -+//sys Pause() (err error) -+//sys pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64 -+//sys pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64 -+//sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) -+//sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) = SYS__NEWSELECT -+//sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) = SYS_SENDFILE64 -+//sys setfsgid(gid int) (prev int, err error) -+//sys setfsuid(uid int) (prev int, err error) -+//sys Shutdown(fd int, how int) (err error) -+//sys Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) -+//sys Stat(path string, stat *Stat_t) (err error) = SYS_STAT64 -+//sys Truncate(path string, length int64) (err error) = SYS_TRUNCATE64 -+//sys Ustat(dev int, ubuf *Ustat_t) (err error) -+//sys accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) -+//sys bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) -+//sys connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) -+//sysnb getgroups(n int, list *_Gid_t) (nn int, err error) -+//sysnb setgroups(n int, list *_Gid_t) (err error) -+//sys getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) -+//sys setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) -+//sysnb socket(domain int, typ int, proto int) (fd int, err error) -+//sysnb socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) -+//sysnb getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) -+//sysnb getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) -+//sys recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) -+//sys sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) -+//sys recvmsg(s int, msg *Msghdr, flags int) (n int, err error) -+//sys sendmsg(s int, msg *Msghdr, flags int) (n int, err error) -+ -+//sys futimesat(dirfd int, path string, times *[2]Timeval) (err error) -+//sysnb Gettimeofday(tv *Timeval) (err error) -+//sysnb Time(t *Time_t) (tt Time_t, err error) -+//sys Utime(path string, buf *Utimbuf) (err error) -+//sys utimes(path string, times *[2]Timeval) (err error) -+ -+func Fadvise(fd int, offset int64, length int64, advice int) (err error) { -+ _, _, e1 := Syscall6(SYS_FADVISE64_64, uintptr(fd), uintptr(advice), uintptr(offset>>32), uintptr(offset), uintptr(length>>32), uintptr(length)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+func seek(fd int, offset int64, whence int) (int64, syscall.Errno) { -+ var newoffset int64 -+ offsetLow := uint32(offset & 0xffffffff) -+ offsetHigh := uint32((offset >> 32) & 0xffffffff) -+ _, _, err := Syscall6(SYS__LLSEEK, uintptr(fd), uintptr(offsetHigh), uintptr(offsetLow), uintptr(unsafe.Pointer(&newoffset)), uintptr(whence), 0) -+ return newoffset, err -+} -+ -+func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { -+ newoffset, errno := seek(fd, offset, whence) -+ if errno != 0 { -+ return 0, errno -+ } -+ return newoffset, nil -+} -+ -+func Fstatfs(fd int, buf *Statfs_t) (err error) { -+ _, _, e := Syscall(SYS_FSTATFS64, uintptr(fd), unsafe.Sizeof(*buf), uintptr(unsafe.Pointer(buf))) -+ if e != 0 { -+ err = e -+ } -+ return -+} -+ -+func Statfs(path string, buf *Statfs_t) (err error) { -+ pathp, err := BytePtrFromString(path) -+ if err != nil { -+ return err -+ } -+ _, _, e := Syscall(SYS_STATFS64, uintptr(unsafe.Pointer(pathp)), unsafe.Sizeof(*buf), uintptr(unsafe.Pointer(buf))) -+ if e != 0 { -+ err = e -+ } -+ return -+} -+ -+//sys mmap2(addr uintptr, length uintptr, prot int, flags int, fd int, pageOffset uintptr) (xaddr uintptr, err error) -+ -+func mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error) { -+ page := uintptr(offset / 4096) -+ if offset != int64(page)*4096 { -+ return 0, EINVAL -+ } -+ return mmap2(addr, length, prot, flags, fd, page) -+} -+ -+func setTimespec(sec, nsec int64) Timespec { -+ return Timespec{Sec: int32(sec), Nsec: int32(nsec)} -+} -+ -+func setTimeval(sec, usec int64) Timeval { -+ return Timeval{Sec: int32(sec), Usec: int32(usec)} -+} -+ -+type rlimit32 struct { -+ Cur uint32 -+ Max uint32 -+} -+ -+//sysnb getrlimit(resource int, rlim *rlimit32) (err error) = SYS_UGETRLIMIT -+ -+const rlimInf32 = ^uint32(0) -+const rlimInf64 = ^uint64(0) -+ -+func Getrlimit(resource int, rlim *Rlimit) (err error) { -+ err = Prlimit(0, resource, nil, rlim) -+ if err != ENOSYS { -+ return err -+ } -+ -+ rl := rlimit32{} -+ err = getrlimit(resource, &rl) -+ if err != nil { -+ return -+ } -+ -+ if rl.Cur == rlimInf32 { -+ rlim.Cur = rlimInf64 -+ } else { -+ rlim.Cur = uint64(rl.Cur) -+ } -+ -+ if rl.Max == rlimInf32 { -+ rlim.Max = rlimInf64 -+ } else { -+ rlim.Max = uint64(rl.Max) -+ } -+ return -+} -+ -+//sysnb setrlimit(resource int, rlim *rlimit32) (err error) = SYS_SETRLIMIT -+ -+func Setrlimit(resource int, rlim *Rlimit) (err error) { -+ err = Prlimit(0, resource, rlim, nil) -+ if err != ENOSYS { -+ return err -+ } -+ -+ rl := rlimit32{} -+ if rlim.Cur == rlimInf64 { -+ rl.Cur = rlimInf32 -+ } else if rlim.Cur < uint64(rlimInf32) { -+ rl.Cur = uint32(rlim.Cur) -+ } else { -+ return EINVAL -+ } -+ if rlim.Max == rlimInf64 { -+ rl.Max = rlimInf32 -+ } else if rlim.Max < uint64(rlimInf32) { -+ rl.Max = uint32(rlim.Max) -+ } else { -+ return EINVAL -+ } -+ -+ return setrlimit(resource, &rl) -+} -+ -+func (r *PtraceRegs) PC() uint32 { return r.Nip } -+ -+func (r *PtraceRegs) SetPC(pc uint32) { r.Nip = pc } -+ -+func (iov *Iovec) SetLen(length int) { -+ iov.Len = uint32(length) -+} -+ -+func (msghdr *Msghdr) SetControllen(length int) { -+ msghdr.Controllen = uint32(length) -+} -+ -+func (msghdr *Msghdr) SetIovlen(length int) { -+ msghdr.Iovlen = uint32(length) -+} -+ -+func (cmsg *Cmsghdr) SetLen(length int) { -+ cmsg.Len = uint32(length) -+} -+ -+func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { -+ rsa.Service_name_len = uint32(length) -+} -+ -+//sys syncFileRange2(fd int, flags int, off int64, n int64) (err error) = SYS_SYNC_FILE_RANGE2 -+ -+func SyncFileRange(fd int, off int64, n int64, flags int) error { -+ // The sync_file_range and sync_file_range2 syscalls differ only in the -+ // order of their arguments. -+ return syncFileRange2(fd, flags, off, n) -+} -+ -+//sys kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error) -+ -+func KexecFileLoad(kernelFd int, initrdFd int, cmdline string, flags int) error { -+ cmdlineLen := len(cmdline) -+ if cmdlineLen > 0 { -+ // Account for the additional NULL byte added by -+ // BytePtrFromString in kexecFileLoad. The kexec_file_load -+ // syscall expects a NULL-terminated string. -+ cmdlineLen++ -+ } -+ return kexecFileLoad(kernelFd, initrdFd, cmdlineLen, cmdline, flags) -+} -diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go b/vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go -index ca0345a..4df5661 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go -+++ b/vendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go -@@ -2,13 +2,12 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build linux && (ppc64 || ppc64le) - // +build linux - // +build ppc64 ppc64le - - package unix - --//sys Dup2(oldfd int, newfd int) (err error) --//sysnb EpollCreate(size int) (fd int, err error) - //sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) - //sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64 - //sys Fchown(fd int, uid int, gid int) (err error) -@@ -21,33 +20,27 @@ package unix - //sysnb Getgid() (gid int) - //sysnb Getrlimit(resource int, rlim *Rlimit) (err error) = SYS_UGETRLIMIT - //sysnb Getuid() (uid int) --//sysnb InotifyInit() (fd int, err error) - //sys Ioperm(from int, num int, on int) (err error) - //sys Iopl(level int) (err error) - //sys Lchown(path string, uid int, gid int) (err error) - //sys Listen(s int, n int) (err error) - //sys Lstat(path string, stat *Stat_t) (err error) - //sys Pause() (err error) --//sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64 --//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64 -+//sys pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64 -+//sys pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64 - //sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) - //sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK - //sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) = SYS__NEWSELECT - //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) - //sys setfsgid(gid int) (prev int, err error) - //sys setfsuid(uid int) (prev int, err error) --//sysnb Setregid(rgid int, egid int) (err error) --//sysnb Setresgid(rgid int, egid int, sgid int) (err error) --//sysnb Setresuid(ruid int, euid int, suid int) (err error) - //sysnb Setrlimit(resource int, rlim *Rlimit) (err error) --//sysnb Setreuid(ruid int, euid int) (err error) - //sys Shutdown(fd int, how int) (err error) - //sys Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error) - //sys Stat(path string, stat *Stat_t) (err error) - //sys Statfs(path string, buf *Statfs_t) (err error) - //sys Truncate(path string, length int64) (err error) - //sys Ustat(dev int, ubuf *Ustat_t) (err error) --//sys accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) - //sys accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) - //sys bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) - //sys connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) -@@ -99,39 +92,8 @@ func (cmsg *Cmsghdr) SetLen(length int) { - cmsg.Len = uint64(length) - } - --//sysnb pipe(p *[2]_C_int) (err error) -- --func Pipe(p []int) (err error) { -- if len(p) != 2 { -- return EINVAL -- } -- var pp [2]_C_int -- err = pipe(&pp) -- p[0] = int(pp[0]) -- p[1] = int(pp[1]) -- return --} -- --//sysnb pipe2(p *[2]_C_int, flags int) (err error) -- --func Pipe2(p []int, flags int) (err error) { -- if len(p) != 2 { -- return EINVAL -- } -- var pp [2]_C_int -- err = pipe2(&pp, flags) -- p[0] = int(pp[0]) -- p[1] = int(pp[1]) -- return --} -- --//sys poll(fds *PollFd, nfds int, timeout int) (n int, err error) -- --func Poll(fds []PollFd, timeout int) (n int, err error) { -- if len(fds) == 0 { -- return poll(nil, 0, timeout) -- } -- return poll(&fds[0], len(fds), timeout) -+func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { -+ rsa.Service_name_len = uint64(length) - } - - //sys syncFileRange2(fd int, flags int, off int64, n int64) (err error) = SYS_SYNC_FILE_RANGE2 -diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_riscv64.go b/vendor/golang.org/x/sys/unix/syscall_linux_riscv64.go -index abdabba..5f4243d 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_linux_riscv64.go -+++ b/vendor/golang.org/x/sys/unix/syscall_linux_riscv64.go -@@ -2,19 +2,13 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build riscv64 && linux - // +build riscv64,linux - - package unix - - import "unsafe" - --func EpollCreate(size int) (fd int, err error) { -- if size <= 0 { -- return -1, EINVAL -- } -- return EpollCreate1(0) --} -- - //sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) = SYS_EPOLL_PWAIT - //sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64 - //sys Fchown(fd int, uid int, gid int) (err error) -@@ -28,8 +22,9 @@ func EpollCreate(size int) (fd int, err error) { - //sysnb Getrlimit(resource int, rlim *Rlimit) (err error) - //sysnb Getuid() (uid int) - //sys Listen(s int, n int) (err error) --//sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64 --//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64 -+//sys MemfdSecret(flags int) (fd int, err error) -+//sys pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64 -+//sys pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64 - //sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK - - func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) { -@@ -43,11 +38,7 @@ func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err - //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) - //sys setfsgid(gid int) (prev int, err error) - //sys setfsuid(uid int) (prev int, err error) --//sysnb Setregid(rgid int, egid int) (err error) --//sysnb Setresgid(rgid int, egid int, sgid int) (err error) --//sysnb Setresuid(ruid int, euid int, suid int) (err error) - //sysnb Setrlimit(resource int, rlim *Rlimit) (err error) --//sysnb Setreuid(ruid int, euid int) (err error) - //sys Shutdown(fd int, how int) (err error) - //sys Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error) - -@@ -71,7 +62,6 @@ func Ustat(dev int, ubuf *Ustat_t) (err error) { - return ENOSYS - } - --//sys accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) - //sys accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) - //sys bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) - //sys connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) -@@ -143,30 +133,6 @@ func utimes(path string, tv *[2]Timeval) (err error) { - return utimensat(AT_FDCWD, path, (*[2]Timespec)(unsafe.Pointer(&ts[0])), 0) - } - --func Pipe(p []int) (err error) { -- if len(p) != 2 { -- return EINVAL -- } -- var pp [2]_C_int -- err = pipe2(&pp, 0) -- p[0] = int(pp[0]) -- p[1] = int(pp[1]) -- return --} -- --//sysnb pipe2(p *[2]_C_int, flags int) (err error) -- --func Pipe2(p []int, flags int) (err error) { -- if len(p) != 2 { -- return EINVAL -- } -- var pp [2]_C_int -- err = pipe2(&pp, flags) -- p[0] = int(pp[0]) -- p[1] = int(pp[1]) -- return --} -- - func (r *PtraceRegs) PC() uint64 { return r.Pc } - - func (r *PtraceRegs) SetPC(pc uint64) { r.Pc = pc } -@@ -187,12 +153,8 @@ func (cmsg *Cmsghdr) SetLen(length int) { - cmsg.Len = uint64(length) - } - --func InotifyInit() (fd int, err error) { -- return InotifyInit1(0) --} -- --func Dup2(oldfd int, newfd int) (err error) { -- return Dup3(oldfd, newfd, 0) -+func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { -+ rsa.Service_name_len = uint64(length) - } - - func Pause() error { -@@ -200,18 +162,6 @@ func Pause() error { - return err - } - --func Poll(fds []PollFd, timeout int) (n int, err error) { -- var ts *Timespec -- if timeout >= 0 { -- ts = new(Timespec) -- *ts = NsecToTimespec(int64(timeout) * 1e6) -- } -- if len(fds) == 0 { -- return ppoll(nil, 0, ts, nil) -- } -- return ppoll(&fds[0], len(fds), ts, nil) --} -- - func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) { - return Renameat2(olddirfd, oldpath, newdirfd, newpath, 0) - } -diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_s390x.go b/vendor/golang.org/x/sys/unix/syscall_linux_s390x.go -index 533e930..d0a7d40 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_linux_s390x.go -+++ b/vendor/golang.org/x/sys/unix/syscall_linux_s390x.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build s390x && linux - // +build s390x,linux - - package unix -@@ -10,8 +11,6 @@ import ( - "unsafe" - ) - --//sys Dup2(oldfd int, newfd int) (err error) --//sysnb EpollCreate(size int) (fd int, err error) - //sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) - //sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64 - //sys Fchown(fd int, uid int, gid int) (err error) -@@ -24,23 +23,18 @@ import ( - //sysnb Getgid() (gid int) - //sysnb Getrlimit(resource int, rlim *Rlimit) (err error) - //sysnb Getuid() (uid int) --//sysnb InotifyInit() (fd int, err error) - //sys Lchown(path string, uid int, gid int) (err error) - //sys Lstat(path string, stat *Stat_t) (err error) - //sys Pause() (err error) --//sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64 --//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64 -+//sys pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64 -+//sys pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64 - //sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) - //sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK - //sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) - //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) - //sys setfsgid(gid int) (prev int, err error) - //sys setfsuid(uid int) (prev int, err error) --//sysnb Setregid(rgid int, egid int) (err error) --//sysnb Setresgid(rgid int, egid int, sgid int) (err error) --//sysnb Setresuid(ruid int, euid int, suid int) (err error) - //sysnb Setrlimit(resource int, rlim *Rlimit) (err error) --//sysnb Setreuid(ruid int, euid int) (err error) - //sys Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error) - //sys Stat(path string, stat *Stat_t) (err error) - //sys Statfs(path string, buf *Statfs_t) (err error) -@@ -76,30 +70,6 @@ func setTimeval(sec, usec int64) Timeval { - return Timeval{Sec: sec, Usec: usec} - } - --//sysnb pipe2(p *[2]_C_int, flags int) (err error) -- --func Pipe(p []int) (err error) { -- if len(p) != 2 { -- return EINVAL -- } -- var pp [2]_C_int -- err = pipe2(&pp, 0) // pipe2 is the same as pipe when flags are set to 0. -- p[0] = int(pp[0]) -- p[1] = int(pp[1]) -- return --} -- --func Pipe2(p []int, flags int) (err error) { -- if len(p) != 2 { -- return EINVAL -- } -- var pp [2]_C_int -- err = pipe2(&pp, flags) -- p[0] = int(pp[0]) -- p[1] = int(pp[1]) -- return --} -- - func Ioperm(from int, num int, on int) (err error) { - return ENOSYS - } -@@ -128,6 +98,10 @@ func (cmsg *Cmsghdr) SetLen(length int) { - cmsg.Len = uint64(length) - } - -+func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { -+ rsa.Service_name_len = uint64(length) -+} -+ - // Linux on s390x uses the old mmap interface, which requires arguments to be passed in a struct. - // mmap2 also requires arguments to be passed in a struct; it is currently not exposed in . - func mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error) { -@@ -167,15 +141,6 @@ const ( - netSendMMsg = 20 - ) - --func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (int, error) { -- args := [3]uintptr{uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))} -- fd, _, err := Syscall(SYS_SOCKETCALL, netAccept, uintptr(unsafe.Pointer(&args)), 0) -- if err != 0 { -- return 0, err -- } -- return int(fd), nil --} -- - func accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (int, error) { - args := [4]uintptr{uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), uintptr(flags)} - fd, _, err := Syscall(SYS_SOCKETCALL, netAccept4, uintptr(unsafe.Pointer(&args)), 0) -@@ -249,7 +214,7 @@ func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen - } - - func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) error { -- args := [4]uintptr{uintptr(s), uintptr(level), uintptr(name), uintptr(val)} -+ args := [5]uintptr{uintptr(s), uintptr(level), uintptr(name), uintptr(val), vallen} - _, _, err := Syscall(SYS_SOCKETCALL, netSetSockOpt, uintptr(unsafe.Pointer(&args)), 0) - if err != 0 { - return err -@@ -319,15 +284,6 @@ func Shutdown(s, how int) error { - return nil - } - --//sys poll(fds *PollFd, nfds int, timeout int) (n int, err error) -- --func Poll(fds []PollFd, timeout int) (n int, err error) { -- if len(fds) == 0 { -- return poll(nil, 0, timeout) -- } -- return poll(&fds[0], len(fds), timeout) --} -- - //sys kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error) - - func KexecFileLoad(kernelFd int, initrdFd int, cmdline string, flags int) error { -diff --git a/vendor/golang.org/x/sys/unix/syscall_linux_sparc64.go b/vendor/golang.org/x/sys/unix/syscall_linux_sparc64.go -index d890a22..f5c793b 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_linux_sparc64.go -+++ b/vendor/golang.org/x/sys/unix/syscall_linux_sparc64.go -@@ -2,13 +2,13 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build sparc64 && linux - // +build sparc64,linux - - package unix - - //sys EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) - //sys Fadvise(fd int, offset int64, length int64, advice int) (err error) = SYS_FADVISE64 --//sys Dup2(oldfd int, newfd int) (err error) - //sys Fchown(fd int, uid int, gid int) (err error) - //sys Fstat(fd int, stat *Stat_t) (err error) - //sys Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) = SYS_FSTATAT64 -@@ -19,31 +19,25 @@ package unix - //sysnb Getgid() (gid int) - //sysnb Getrlimit(resource int, rlim *Rlimit) (err error) - //sysnb Getuid() (uid int) --//sysnb InotifyInit() (fd int, err error) - //sys Lchown(path string, uid int, gid int) (err error) - //sys Listen(s int, n int) (err error) - //sys Lstat(path string, stat *Stat_t) (err error) - //sys Pause() (err error) --//sys Pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64 --//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64 -+//sys pread(fd int, p []byte, offset int64) (n int, err error) = SYS_PREAD64 -+//sys pwrite(fd int, p []byte, offset int64) (n int, err error) = SYS_PWRITE64 - //sys Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) - //sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK - //sys Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) - //sys sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) - //sys setfsgid(gid int) (prev int, err error) - //sys setfsuid(uid int) (prev int, err error) --//sysnb Setregid(rgid int, egid int) (err error) --//sysnb Setresgid(rgid int, egid int, sgid int) (err error) --//sysnb Setresuid(ruid int, euid int, suid int) (err error) - //sysnb Setrlimit(resource int, rlim *Rlimit) (err error) --//sysnb Setreuid(ruid int, euid int) (err error) - //sys Shutdown(fd int, how int) (err error) - //sys Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error) - //sys Stat(path string, stat *Stat_t) (err error) - //sys Statfs(path string, buf *Statfs_t) (err error) - //sys SyncFileRange(fd int, off int64, n int64, flags int) (err error) - //sys Truncate(path string, length int64) (err error) --//sys accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) - //sys accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) - //sys bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) - //sys connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) -@@ -115,37 +109,6 @@ func (cmsg *Cmsghdr) SetLen(length int) { - cmsg.Len = uint64(length) - } - --//sysnb pipe(p *[2]_C_int) (err error) -- --func Pipe(p []int) (err error) { -- if len(p) != 2 { -- return EINVAL -- } -- var pp [2]_C_int -- err = pipe(&pp) -- p[0] = int(pp[0]) -- p[1] = int(pp[1]) -- return --} -- --//sysnb pipe2(p *[2]_C_int, flags int) (err error) -- --func Pipe2(p []int, flags int) (err error) { -- if len(p) != 2 { -- return EINVAL -- } -- var pp [2]_C_int -- err = pipe2(&pp, flags) -- p[0] = int(pp[0]) -- p[1] = int(pp[1]) -- return --} -- --//sys poll(fds *PollFd, nfds int, timeout int) (n int, err error) -- --func Poll(fds []PollFd, timeout int) (n int, err error) { -- if len(fds) == 0 { -- return poll(nil, 0, timeout) -- } -- return poll(&fds[0], len(fds), timeout) -+func (rsa *RawSockaddrNFCLLCP) SetServiceNameLen(length int) { -+ rsa.Service_name_len = uint64(length) - } -diff --git a/vendor/golang.org/x/sys/unix/syscall_netbsd.go b/vendor/golang.org/x/sys/unix/syscall_netbsd.go -index 45b50a6..666f0a1 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_netbsd.go -+++ b/vendor/golang.org/x/sys/unix/syscall_netbsd.go -@@ -31,6 +31,10 @@ type SockaddrDatalink struct { - raw RawSockaddrDatalink - } - -+func anyToSockaddrGOOS(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { -+ return nil, EAFNOSUPPORT -+} -+ - func Syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno) - - func sysctlNodes(mib []_C_int) (nodes []Sysctlnode, err error) { -@@ -106,16 +110,27 @@ func direntNamlen(buf []byte) (uint64, bool) { - return readInt(buf, unsafe.Offsetof(Dirent{}.Namlen), unsafe.Sizeof(Dirent{}.Namlen)) - } - --//sysnb pipe() (fd1 int, fd2 int, err error) - func Pipe(p []int) (err error) { -+ return Pipe2(p, 0) -+} -+ -+//sysnb pipe2(p *[2]_C_int, flags int) (err error) -+ -+func Pipe2(p []int, flags int) error { - if len(p) != 2 { - return EINVAL - } -- p[0], p[1], err = pipe() -- return -+ var pp [2]_C_int -+ err := pipe2(&pp, flags) -+ if err == nil { -+ p[0] = int(pp[0]) -+ p[1] = int(pp[1]) -+ } -+ return err - } - --//sys Getdents(fd int, buf []byte) (n int, err error) -+//sys Getdents(fd int, buf []byte) (n int, err error) -+ - func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) { - n, err = Getdents(fd, buf) - if err != nil || basep == nil { -@@ -141,36 +156,16 @@ func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) { - return - } - --const ImplementsGetwd = true -- - //sys Getcwd(buf []byte) (n int, err error) = SYS___GETCWD - --func Getwd() (string, error) { -- var buf [PathMax]byte -- _, err := Getcwd(buf[0:]) -- if err != nil { -- return "", err -- } -- n := clen(buf[:]) -- if n < 1 { -- return "", EINVAL -- } -- return string(buf[:n]), nil --} -- - // TODO - func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) { - return -1, ENOSYS - } - --func setattrlistTimes(path string, times []Timespec, flags int) error { -- // used on Darwin for UtimesNano -- return ENOSYS --} -- - //sys ioctl(fd int, req uint, arg uintptr) (err error) - --//sys sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) = SYS___SYSCTL -+//sys sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) = SYS___SYSCTL - - func IoctlGetPtmget(fd int, req uint) (*Ptmget, error) { - var value Ptmget -@@ -313,8 +308,8 @@ func Statvfs(path string, buf *Statvfs_t) (err error) { - //sys Open(path string, mode int, perm uint32) (fd int, err error) - //sys Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) - //sys Pathconf(path string, name int) (val int, err error) --//sys Pread(fd int, p []byte, offset int64) (n int, err error) --//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) -+//sys pread(fd int, p []byte, offset int64) (n int, err error) -+//sys pwrite(fd int, p []byte, offset int64) (n int, err error) - //sys read(fd int, p []byte) (n int, err error) - //sys Readlink(path string, buf []byte) (n int, err error) - //sys Readlinkat(dirfd int, path string, buf []byte) (n int, err error) -diff --git a/vendor/golang.org/x/sys/unix/syscall_netbsd_386.go b/vendor/golang.org/x/sys/unix/syscall_netbsd_386.go -index 24da8b5..5199d28 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_netbsd_386.go -+++ b/vendor/golang.org/x/sys/unix/syscall_netbsd_386.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build 386 && netbsd - // +build 386,netbsd - - package unix -diff --git a/vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go -index 25a0ac8..70a9c52 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go -+++ b/vendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build amd64 && netbsd - // +build amd64,netbsd - - package unix -diff --git a/vendor/golang.org/x/sys/unix/syscall_netbsd_arm.go b/vendor/golang.org/x/sys/unix/syscall_netbsd_arm.go -index 21591ec..3eb5942 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_netbsd_arm.go -+++ b/vendor/golang.org/x/sys/unix/syscall_netbsd_arm.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build arm && netbsd - // +build arm,netbsd - - package unix -diff --git a/vendor/golang.org/x/sys/unix/syscall_netbsd_arm64.go b/vendor/golang.org/x/sys/unix/syscall_netbsd_arm64.go -index 8047496..fc6ccfd 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_netbsd_arm64.go -+++ b/vendor/golang.org/x/sys/unix/syscall_netbsd_arm64.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build arm64 && netbsd - // +build arm64,netbsd - - package unix -diff --git a/vendor/golang.org/x/sys/unix/syscall_openbsd.go b/vendor/golang.org/x/sys/unix/syscall_openbsd.go -index a266e92..78daceb 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_openbsd.go -+++ b/vendor/golang.org/x/sys/unix/syscall_openbsd.go -@@ -31,6 +31,10 @@ type SockaddrDatalink struct { - raw RawSockaddrDatalink - } - -+func anyToSockaddrGOOS(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { -+ return nil, EAFNOSUPPORT -+} -+ - func Syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err syscall.Errno) - - func nametomib(name string) (mib []_C_int, err error) { -@@ -77,18 +81,22 @@ func Pipe(p []int) (err error) { - } - - //sysnb pipe2(p *[2]_C_int, flags int) (err error) -+ - func Pipe2(p []int, flags int) error { - if len(p) != 2 { - return EINVAL - } - var pp [2]_C_int - err := pipe2(&pp, flags) -- p[0] = int(pp[0]) -- p[1] = int(pp[1]) -+ if err == nil { -+ p[0] = int(pp[0]) -+ p[1] = int(pp[1]) -+ } - return err - } - --//sys Getdents(fd int, buf []byte) (n int, err error) -+//sys Getdents(fd int, buf []byte) (n int, err error) -+ - func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) { - n, err = Getdents(fd, buf) - if err != nil || basep == nil { -@@ -114,23 +122,8 @@ func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) { - return - } - --const ImplementsGetwd = true -- - //sys Getcwd(buf []byte) (n int, err error) = SYS___GETCWD - --func Getwd() (string, error) { -- var buf [PathMax]byte -- _, err := Getcwd(buf[0:]) -- if err != nil { -- return "", err -- } -- n := clen(buf[:]) -- if n < 1 { -- return "", EINVAL -- } -- return string(buf[:n]), nil --} -- - func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) { - if raceenabled { - raceReleaseMerge(unsafe.Pointer(&ioSync)) -@@ -158,14 +151,9 @@ func Getfsstat(buf []Statfs_t, flags int) (n int, err error) { - return - } - --func setattrlistTimes(path string, times []Timespec, flags int) error { -- // used on Darwin for UtimesNano -- return ENOSYS --} -- - //sys ioctl(fd int, req uint, arg uintptr) (err error) - --//sys sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) = SYS___SYSCTL -+//sys sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) = SYS___SYSCTL - - //sys ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) - -@@ -283,8 +271,8 @@ func Uname(uname *Utsname) error { - //sys Open(path string, mode int, perm uint32) (fd int, err error) - //sys Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) - //sys Pathconf(path string, name int) (val int, err error) --//sys Pread(fd int, p []byte, offset int64) (n int, err error) --//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) -+//sys pread(fd int, p []byte, offset int64) (n int, err error) -+//sys pwrite(fd int, p []byte, offset int64) (n int, err error) - //sys read(fd int, p []byte) (n int, err error) - //sys Readlink(path string, buf []byte) (n int, err error) - //sys Readlinkat(dirfd int, path string, buf []byte) (n int, err error) -diff --git a/vendor/golang.org/x/sys/unix/syscall_openbsd_386.go b/vendor/golang.org/x/sys/unix/syscall_openbsd_386.go -index 42b5a0e..6baabcd 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_openbsd_386.go -+++ b/vendor/golang.org/x/sys/unix/syscall_openbsd_386.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build 386 && openbsd - // +build 386,openbsd - - package unix -diff --git a/vendor/golang.org/x/sys/unix/syscall_openbsd_amd64.go b/vendor/golang.org/x/sys/unix/syscall_openbsd_amd64.go -index 6ea4b48..bab2536 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_openbsd_amd64.go -+++ b/vendor/golang.org/x/sys/unix/syscall_openbsd_amd64.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build amd64 && openbsd - // +build amd64,openbsd - - package unix -diff --git a/vendor/golang.org/x/sys/unix/syscall_openbsd_arm.go b/vendor/golang.org/x/sys/unix/syscall_openbsd_arm.go -index 1c3d26f..8eed3c4 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_openbsd_arm.go -+++ b/vendor/golang.org/x/sys/unix/syscall_openbsd_arm.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build arm && openbsd - // +build arm,openbsd - - package unix -diff --git a/vendor/golang.org/x/sys/unix/syscall_openbsd_arm64.go b/vendor/golang.org/x/sys/unix/syscall_openbsd_arm64.go -index a8c458c..483dde9 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_openbsd_arm64.go -+++ b/vendor/golang.org/x/sys/unix/syscall_openbsd_arm64.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build arm64 && openbsd - // +build arm64,openbsd - - package unix -diff --git a/vendor/golang.org/x/sys/unix/syscall_openbsd_libc.go b/vendor/golang.org/x/sys/unix/syscall_openbsd_libc.go -new file mode 100644 -index 0000000..5930a89 ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/syscall_openbsd_libc.go -@@ -0,0 +1,27 @@ -+// Copyright 2022 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build (openbsd && 386) || (openbsd && amd64) || (openbsd && arm) || (openbsd && arm64) -+// +build openbsd,386 openbsd,amd64 openbsd,arm openbsd,arm64 -+ -+package unix -+ -+import _ "unsafe" -+ -+// Implemented in the runtime package (runtime/sys_openbsd3.go) -+func syscall_syscall(fn, a1, a2, a3 uintptr) (r1, r2 uintptr, err Errno) -+func syscall_syscall6(fn, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno) -+func syscall_syscall10(fn, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10 uintptr) (r1, r2 uintptr, err Errno) -+func syscall_rawSyscall(fn, a1, a2, a3 uintptr) (r1, r2 uintptr, err Errno) -+func syscall_rawSyscall6(fn, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno) -+ -+//go:linkname syscall_syscall syscall.syscall -+//go:linkname syscall_syscall6 syscall.syscall6 -+//go:linkname syscall_syscall10 syscall.syscall10 -+//go:linkname syscall_rawSyscall syscall.rawSyscall -+//go:linkname syscall_rawSyscall6 syscall.rawSyscall6 -+ -+func syscall_syscall9(fn, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err Errno) { -+ return syscall_syscall10(fn, a1, a2, a3, a4, a5, a6, a7, a8, a9, 0) -+} -diff --git a/vendor/golang.org/x/sys/unix/syscall_openbsd_mips64.go b/vendor/golang.org/x/sys/unix/syscall_openbsd_mips64.go -new file mode 100644 -index 0000000..1378489 ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/syscall_openbsd_mips64.go -@@ -0,0 +1,39 @@ -+// Copyright 2019 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+package unix -+ -+func setTimespec(sec, nsec int64) Timespec { -+ return Timespec{Sec: sec, Nsec: nsec} -+} -+ -+func setTimeval(sec, usec int64) Timeval { -+ return Timeval{Sec: sec, Usec: usec} -+} -+ -+func SetKevent(k *Kevent_t, fd, mode, flags int) { -+ k.Ident = uint64(fd) -+ k.Filter = int16(mode) -+ k.Flags = uint16(flags) -+} -+ -+func (iov *Iovec) SetLen(length int) { -+ iov.Len = uint64(length) -+} -+ -+func (msghdr *Msghdr) SetControllen(length int) { -+ msghdr.Controllen = uint32(length) -+} -+ -+func (msghdr *Msghdr) SetIovlen(length int) { -+ msghdr.Iovlen = uint32(length) -+} -+ -+func (cmsg *Cmsghdr) SetLen(length int) { -+ cmsg.Len = uint32(length) -+} -+ -+// SYS___SYSCTL is used by syscall_bsd.go for all BSDs, but in modern versions -+// of OpenBSD the syscall is called sysctl instead of __sysctl. -+const SYS___SYSCTL = SYS_SYSCTL -diff --git a/vendor/golang.org/x/sys/unix/syscall_solaris.go b/vendor/golang.org/x/sys/unix/syscall_solaris.go -index 0e2a696..8c6f409 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_solaris.go -+++ b/vendor/golang.org/x/sys/unix/syscall_solaris.go -@@ -13,6 +13,10 @@ - package unix - - import ( -+ "fmt" -+ "os" -+ "runtime" -+ "sync" - "syscall" - "unsafe" - ) -@@ -62,11 +66,28 @@ func Pipe(p []int) (err error) { - if n != 0 { - return err - } -- p[0] = int(pp[0]) -- p[1] = int(pp[1]) -+ if err == nil { -+ p[0] = int(pp[0]) -+ p[1] = int(pp[1]) -+ } - return nil - } - -+//sysnb pipe2(p *[2]_C_int, flags int) (err error) -+ -+func Pipe2(p []int, flags int) error { -+ if len(p) != 2 { -+ return EINVAL -+ } -+ var pp [2]_C_int -+ err := pipe2(&pp, flags) -+ if err == nil { -+ p[0] = int(pp[0]) -+ p[1] = int(pp[1]) -+ } -+ return err -+} -+ - func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) { - if sa.Port < 0 || sa.Port > 0xFFFF { - return nil, 0, EINVAL -@@ -75,9 +96,7 @@ func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) { - p := (*[2]byte)(unsafe.Pointer(&sa.raw.Port)) - p[0] = byte(sa.Port >> 8) - p[1] = byte(sa.Port) -- for i := 0; i < len(sa.Addr); i++ { -- sa.raw.Addr[i] = sa.Addr[i] -- } -+ sa.raw.Addr = sa.Addr - return unsafe.Pointer(&sa.raw), SizeofSockaddrInet4, nil - } - -@@ -90,9 +109,7 @@ func (sa *SockaddrInet6) sockaddr() (unsafe.Pointer, _Socklen, error) { - p[0] = byte(sa.Port >> 8) - p[1] = byte(sa.Port) - sa.raw.Scope_id = sa.ZoneId -- for i := 0; i < len(sa.Addr); i++ { -- sa.raw.Addr[i] = sa.Addr[i] -- } -+ sa.raw.Addr = sa.Addr - return unsafe.Pointer(&sa.raw), SizeofSockaddrInet6, nil - } - -@@ -400,9 +417,7 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { - sa := new(SockaddrInet4) - p := (*[2]byte)(unsafe.Pointer(&pp.Port)) - sa.Port = int(p[0])<<8 + int(p[1]) -- for i := 0; i < len(sa.Addr); i++ { -- sa.Addr[i] = pp.Addr[i] -- } -+ sa.Addr = pp.Addr - return sa, nil - - case AF_INET6: -@@ -411,9 +426,7 @@ func anyToSockaddr(fd int, rsa *RawSockaddrAny) (Sockaddr, error) { - p := (*[2]byte)(unsafe.Pointer(&pp.Port)) - sa.Port = int(p[0])<<8 + int(p[1]) - sa.ZoneId = pp.Scope_id -- for i := 0; i < len(sa.Addr); i++ { -- sa.Addr[i] = pp.Addr[i] -- } -+ sa.Addr = pp.Addr - return sa, nil - } - return nil, EAFNOSUPPORT -@@ -438,77 +451,59 @@ func Accept(fd int) (nfd int, sa Sockaddr, err error) { - - //sys recvmsg(s int, msg *Msghdr, flags int) (n int, err error) = libsocket.__xnet_recvmsg - --func Recvmsg(fd int, p, oob []byte, flags int) (n, oobn int, recvflags int, from Sockaddr, err error) { -+func recvmsgRaw(fd int, iov []Iovec, oob []byte, flags int, rsa *RawSockaddrAny) (n, oobn int, recvflags int, err error) { - var msg Msghdr -- var rsa RawSockaddrAny -- msg.Name = (*byte)(unsafe.Pointer(&rsa)) -+ msg.Name = (*byte)(unsafe.Pointer(rsa)) - msg.Namelen = uint32(SizeofSockaddrAny) -- var iov Iovec -- if len(p) > 0 { -- iov.Base = (*int8)(unsafe.Pointer(&p[0])) -- iov.SetLen(len(p)) -- } -- var dummy int8 -+ var dummy byte - if len(oob) > 0 { - // receive at least one normal byte -- if len(p) == 0 { -- iov.Base = &dummy -- iov.SetLen(1) -+ if emptyIovecs(iov) { -+ var iova [1]Iovec -+ iova[0].Base = &dummy -+ iova[0].SetLen(1) -+ iov = iova[:] - } - msg.Accrightslen = int32(len(oob)) - } -- msg.Iov = &iov -- msg.Iovlen = 1 -+ if len(iov) > 0 { -+ msg.Iov = &iov[0] -+ msg.SetIovlen(len(iov)) -+ } - if n, err = recvmsg(fd, &msg, flags); n == -1 { - return - } - oobn = int(msg.Accrightslen) -- // source address is only specified if the socket is unconnected -- if rsa.Addr.Family != AF_UNSPEC { -- from, err = anyToSockaddr(fd, &rsa) -- } -- return --} -- --func Sendmsg(fd int, p, oob []byte, to Sockaddr, flags int) (err error) { -- _, err = SendmsgN(fd, p, oob, to, flags) - return - } - - //sys sendmsg(s int, msg *Msghdr, flags int) (n int, err error) = libsocket.__xnet_sendmsg - --func SendmsgN(fd int, p, oob []byte, to Sockaddr, flags int) (n int, err error) { -- var ptr unsafe.Pointer -- var salen _Socklen -- if to != nil { -- ptr, salen, err = to.sockaddr() -- if err != nil { -- return 0, err -- } -- } -+func sendmsgN(fd int, iov []Iovec, oob []byte, ptr unsafe.Pointer, salen _Socklen, flags int) (n int, err error) { - var msg Msghdr - msg.Name = (*byte)(unsafe.Pointer(ptr)) - msg.Namelen = uint32(salen) -- var iov Iovec -- if len(p) > 0 { -- iov.Base = (*int8)(unsafe.Pointer(&p[0])) -- iov.SetLen(len(p)) -- } -- var dummy int8 -+ var dummy byte -+ var empty bool - if len(oob) > 0 { - // send at least one normal byte -- if len(p) == 0 { -- iov.Base = &dummy -- iov.SetLen(1) -+ empty = emptyIovecs(iov) -+ if empty { -+ var iova [1]Iovec -+ iova[0].Base = &dummy -+ iova[0].SetLen(1) -+ iov = iova[:] - } - msg.Accrightslen = int32(len(oob)) - } -- msg.Iov = &iov -- msg.Iovlen = 1 -+ if len(iov) > 0 { -+ msg.Iov = &iov[0] -+ msg.SetIovlen(len(iov)) -+ } - if n, err = sendmsg(fd, &msg, flags); err != nil { - return 0, err - } -- if len(oob) > 0 && len(p) == 0 { -+ if len(oob) > 0 && empty { - n = 0 - } - return n, nil -@@ -551,10 +546,17 @@ func Minor(dev uint64) uint32 { - * Expose the ioctl function - */ - --//sys ioctl(fd int, req uint, arg uintptr) (err error) -+//sys ioctlRet(fd int, req uint, arg uintptr) (ret int, err error) = libc.ioctl -+ -+func ioctl(fd int, req uint, arg uintptr) (err error) { -+ _, err = ioctlRet(fd, req, arg) -+ return err -+} - --func IoctlSetTermio(fd int, req uint, value *Termio) (err error) { -- return ioctl(fd, req, uintptr(unsafe.Pointer(value))) -+func IoctlSetTermio(fd int, req uint, value *Termio) error { -+ err := ioctl(fd, req, uintptr(unsafe.Pointer(value))) -+ runtime.KeepAlive(value) -+ return err - } - - func IoctlGetTermio(fd int, req uint) (*Termio, error) { -@@ -563,7 +565,7 @@ func IoctlGetTermio(fd int, req uint) (*Termio, error) { - return &value, err - } - --//sys poll(fds *PollFd, nfds int, timeout int) (n int, err error) -+//sys poll(fds *PollFd, nfds int, timeout int) (n int, err error) - - func Poll(fds []PollFd, timeout int) (n int, err error) { - if len(fds) == 0 { -@@ -616,6 +618,7 @@ func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err e - //sys Getpriority(which int, who int) (n int, err error) - //sysnb Getrlimit(which int, lim *Rlimit) (err error) - //sysnb Getrusage(who int, rusage *Rusage) (err error) -+//sysnb Getsid(pid int) (sid int, err error) - //sysnb Gettimeofday(tv *Timeval) (err error) - //sysnb Getuid() (uid int) - //sys Kill(pid int, signum syscall.Signal) (err error) -@@ -641,8 +644,8 @@ func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err e - //sys Openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) - //sys Pathconf(path string, name int) (val int, err error) - //sys Pause() (err error) --//sys Pread(fd int, p []byte, offset int64) (n int, err error) --//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) -+//sys pread(fd int, p []byte, offset int64) (n int, err error) -+//sys pwrite(fd int, p []byte, offset int64) (n int, err error) - //sys read(fd int, p []byte) (n int, err error) - //sys Readlink(path string, buf []byte) (n int, err error) - //sys Rename(from string, to string) (err error) -@@ -666,6 +669,7 @@ func Sendfile(outfd int, infd int, offset *int64, count int) (written int, err e - //sys Statvfs(path string, vfsstat *Statvfs_t) (err error) - //sys Symlink(path string, link string) (err error) - //sys Sync() (err error) -+//sys Sysconf(which int) (n int64, err error) - //sysnb Times(tms *Tms) (ticks uintptr, err error) - //sys Truncate(path string, length int64) (err error) - //sys Fsync(fd int) (err error) -@@ -722,3 +726,303 @@ func Mmap(fd int, offset int64, length int, prot int, flags int) (data []byte, e - func Munmap(b []byte) (err error) { - return mapper.Munmap(b) - } -+ -+// Event Ports -+ -+type fileObjCookie struct { -+ fobj *fileObj -+ cookie interface{} -+} -+ -+// EventPort provides a safe abstraction on top of Solaris/illumos Event Ports. -+type EventPort struct { -+ port int -+ mu sync.Mutex -+ fds map[uintptr]*fileObjCookie -+ paths map[string]*fileObjCookie -+ // The user cookie presents an interesting challenge from a memory management perspective. -+ // There are two paths by which we can discover that it is no longer in use: -+ // 1. The user calls port_dissociate before any events fire -+ // 2. An event fires and we return it to the user -+ // The tricky situation is if the event has fired in the kernel but -+ // the user hasn't requested/received it yet. -+ // If the user wants to port_dissociate before the event has been processed, -+ // we should handle things gracefully. To do so, we need to keep an extra -+ // reference to the cookie around until the event is processed -+ // thus the otherwise seemingly extraneous "cookies" map -+ // The key of this map is a pointer to the corresponding fCookie -+ cookies map[*fileObjCookie]struct{} -+} -+ -+// PortEvent is an abstraction of the port_event C struct. -+// Compare Source against PORT_SOURCE_FILE or PORT_SOURCE_FD -+// to see if Path or Fd was the event source. The other will be -+// uninitialized. -+type PortEvent struct { -+ Cookie interface{} -+ Events int32 -+ Fd uintptr -+ Path string -+ Source uint16 -+ fobj *fileObj -+} -+ -+// NewEventPort creates a new EventPort including the -+// underlying call to port_create(3c). -+func NewEventPort() (*EventPort, error) { -+ port, err := port_create() -+ if err != nil { -+ return nil, err -+ } -+ e := &EventPort{ -+ port: port, -+ fds: make(map[uintptr]*fileObjCookie), -+ paths: make(map[string]*fileObjCookie), -+ cookies: make(map[*fileObjCookie]struct{}), -+ } -+ return e, nil -+} -+ -+//sys port_create() (n int, err error) -+//sys port_associate(port int, source int, object uintptr, events int, user *byte) (n int, err error) -+//sys port_dissociate(port int, source int, object uintptr) (n int, err error) -+//sys port_get(port int, pe *portEvent, timeout *Timespec) (n int, err error) -+//sys port_getn(port int, pe *portEvent, max uint32, nget *uint32, timeout *Timespec) (n int, err error) -+ -+// Close closes the event port. -+func (e *EventPort) Close() error { -+ e.mu.Lock() -+ defer e.mu.Unlock() -+ err := Close(e.port) -+ if err != nil { -+ return err -+ } -+ e.fds = nil -+ e.paths = nil -+ e.cookies = nil -+ return nil -+} -+ -+// PathIsWatched checks to see if path is associated with this EventPort. -+func (e *EventPort) PathIsWatched(path string) bool { -+ e.mu.Lock() -+ defer e.mu.Unlock() -+ _, found := e.paths[path] -+ return found -+} -+ -+// FdIsWatched checks to see if fd is associated with this EventPort. -+func (e *EventPort) FdIsWatched(fd uintptr) bool { -+ e.mu.Lock() -+ defer e.mu.Unlock() -+ _, found := e.fds[fd] -+ return found -+} -+ -+// AssociatePath wraps port_associate(3c) for a filesystem path including -+// creating the necessary file_obj from the provided stat information. -+func (e *EventPort) AssociatePath(path string, stat os.FileInfo, events int, cookie interface{}) error { -+ e.mu.Lock() -+ defer e.mu.Unlock() -+ if _, found := e.paths[path]; found { -+ return fmt.Errorf("%v is already associated with this Event Port", path) -+ } -+ fCookie, err := createFileObjCookie(path, stat, cookie) -+ if err != nil { -+ return err -+ } -+ _, err = port_associate(e.port, PORT_SOURCE_FILE, uintptr(unsafe.Pointer(fCookie.fobj)), events, (*byte)(unsafe.Pointer(fCookie))) -+ if err != nil { -+ return err -+ } -+ e.paths[path] = fCookie -+ e.cookies[fCookie] = struct{}{} -+ return nil -+} -+ -+// DissociatePath wraps port_dissociate(3c) for a filesystem path. -+func (e *EventPort) DissociatePath(path string) error { -+ e.mu.Lock() -+ defer e.mu.Unlock() -+ f, ok := e.paths[path] -+ if !ok { -+ return fmt.Errorf("%v is not associated with this Event Port", path) -+ } -+ _, err := port_dissociate(e.port, PORT_SOURCE_FILE, uintptr(unsafe.Pointer(f.fobj))) -+ // If the path is no longer associated with this event port (ENOENT) -+ // we should delete it from our map. We can still return ENOENT to the caller. -+ // But we need to save the cookie -+ if err != nil && err != ENOENT { -+ return err -+ } -+ if err == nil { -+ // dissociate was successful, safe to delete the cookie -+ fCookie := e.paths[path] -+ delete(e.cookies, fCookie) -+ } -+ delete(e.paths, path) -+ return err -+} -+ -+// AssociateFd wraps calls to port_associate(3c) on file descriptors. -+func (e *EventPort) AssociateFd(fd uintptr, events int, cookie interface{}) error { -+ e.mu.Lock() -+ defer e.mu.Unlock() -+ if _, found := e.fds[fd]; found { -+ return fmt.Errorf("%v is already associated with this Event Port", fd) -+ } -+ fCookie, err := createFileObjCookie("", nil, cookie) -+ if err != nil { -+ return err -+ } -+ _, err = port_associate(e.port, PORT_SOURCE_FD, fd, events, (*byte)(unsafe.Pointer(fCookie))) -+ if err != nil { -+ return err -+ } -+ e.fds[fd] = fCookie -+ e.cookies[fCookie] = struct{}{} -+ return nil -+} -+ -+// DissociateFd wraps calls to port_dissociate(3c) on file descriptors. -+func (e *EventPort) DissociateFd(fd uintptr) error { -+ e.mu.Lock() -+ defer e.mu.Unlock() -+ _, ok := e.fds[fd] -+ if !ok { -+ return fmt.Errorf("%v is not associated with this Event Port", fd) -+ } -+ _, err := port_dissociate(e.port, PORT_SOURCE_FD, fd) -+ if err != nil && err != ENOENT { -+ return err -+ } -+ if err == nil { -+ // dissociate was successful, safe to delete the cookie -+ fCookie := e.fds[fd] -+ delete(e.cookies, fCookie) -+ } -+ delete(e.fds, fd) -+ return err -+} -+ -+func createFileObjCookie(name string, stat os.FileInfo, cookie interface{}) (*fileObjCookie, error) { -+ fCookie := new(fileObjCookie) -+ fCookie.cookie = cookie -+ if name != "" && stat != nil { -+ fCookie.fobj = new(fileObj) -+ bs, err := ByteSliceFromString(name) -+ if err != nil { -+ return nil, err -+ } -+ fCookie.fobj.Name = (*int8)(unsafe.Pointer(&bs[0])) -+ s := stat.Sys().(*syscall.Stat_t) -+ fCookie.fobj.Atim.Sec = s.Atim.Sec -+ fCookie.fobj.Atim.Nsec = s.Atim.Nsec -+ fCookie.fobj.Mtim.Sec = s.Mtim.Sec -+ fCookie.fobj.Mtim.Nsec = s.Mtim.Nsec -+ fCookie.fobj.Ctim.Sec = s.Ctim.Sec -+ fCookie.fobj.Ctim.Nsec = s.Ctim.Nsec -+ } -+ return fCookie, nil -+} -+ -+// GetOne wraps port_get(3c) and returns a single PortEvent. -+func (e *EventPort) GetOne(t *Timespec) (*PortEvent, error) { -+ pe := new(portEvent) -+ _, err := port_get(e.port, pe, t) -+ if err != nil { -+ return nil, err -+ } -+ p := new(PortEvent) -+ e.mu.Lock() -+ defer e.mu.Unlock() -+ err = e.peIntToExt(pe, p) -+ if err != nil { -+ return nil, err -+ } -+ return p, nil -+} -+ -+// peIntToExt converts a cgo portEvent struct into the friendlier PortEvent -+// NOTE: Always call this function while holding the e.mu mutex -+func (e *EventPort) peIntToExt(peInt *portEvent, peExt *PortEvent) error { -+ if e.cookies == nil { -+ return fmt.Errorf("this EventPort is already closed") -+ } -+ peExt.Events = peInt.Events -+ peExt.Source = peInt.Source -+ fCookie := (*fileObjCookie)(unsafe.Pointer(peInt.User)) -+ _, found := e.cookies[fCookie] -+ -+ if !found { -+ panic("unexpected event port address; may be due to kernel bug; see https://go.dev/issue/54254") -+ } -+ peExt.Cookie = fCookie.cookie -+ delete(e.cookies, fCookie) -+ -+ switch peInt.Source { -+ case PORT_SOURCE_FD: -+ peExt.Fd = uintptr(peInt.Object) -+ // Only remove the fds entry if it exists and this cookie matches -+ if fobj, ok := e.fds[peExt.Fd]; ok { -+ if fobj == fCookie { -+ delete(e.fds, peExt.Fd) -+ } -+ } -+ case PORT_SOURCE_FILE: -+ peExt.fobj = fCookie.fobj -+ peExt.Path = BytePtrToString((*byte)(unsafe.Pointer(peExt.fobj.Name))) -+ // Only remove the paths entry if it exists and this cookie matches -+ if fobj, ok := e.paths[peExt.Path]; ok { -+ if fobj == fCookie { -+ delete(e.paths, peExt.Path) -+ } -+ } -+ } -+ return nil -+} -+ -+// Pending wraps port_getn(3c) and returns how many events are pending. -+func (e *EventPort) Pending() (int, error) { -+ var n uint32 = 0 -+ _, err := port_getn(e.port, nil, 0, &n, nil) -+ return int(n), err -+} -+ -+// Get wraps port_getn(3c) and fills a slice of PortEvent. -+// It will block until either min events have been received -+// or the timeout has been exceeded. It will return how many -+// events were actually received along with any error information. -+func (e *EventPort) Get(s []PortEvent, min int, timeout *Timespec) (int, error) { -+ if min == 0 { -+ return 0, fmt.Errorf("need to request at least one event or use Pending() instead") -+ } -+ if len(s) < min { -+ return 0, fmt.Errorf("len(s) (%d) is less than min events requested (%d)", len(s), min) -+ } -+ got := uint32(min) -+ max := uint32(len(s)) -+ var err error -+ ps := make([]portEvent, max) -+ _, err = port_getn(e.port, &ps[0], max, &got, timeout) -+ // got will be trustworthy with ETIME, but not any other error. -+ if err != nil && err != ETIME { -+ return 0, err -+ } -+ e.mu.Lock() -+ defer e.mu.Unlock() -+ valid := 0 -+ for i := 0; i < int(got); i++ { -+ err2 := e.peIntToExt(&ps[i], &s[i]) -+ if err2 != nil { -+ if valid == 0 && err == nil { -+ // If err2 is the only error and there are no valid events -+ // to return, return it to the caller. -+ err = err2 -+ } -+ break -+ } -+ valid = i + 1 -+ } -+ return valid, err -+} -diff --git a/vendor/golang.org/x/sys/unix/syscall_solaris_amd64.go b/vendor/golang.org/x/sys/unix/syscall_solaris_amd64.go -index b22a34d..0bd25ef 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_solaris_amd64.go -+++ b/vendor/golang.org/x/sys/unix/syscall_solaris_amd64.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build amd64 && solaris - // +build amd64,solaris - - package unix -diff --git a/vendor/golang.org/x/sys/unix/syscall_unix.go b/vendor/golang.org/x/sys/unix/syscall_unix.go -index 8f710d0..1ff5060 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_unix.go -+++ b/vendor/golang.org/x/sys/unix/syscall_unix.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris - // +build aix darwin dragonfly freebsd linux netbsd openbsd solaris - - package unix -@@ -12,6 +13,8 @@ import ( - "sync" - "syscall" - "unsafe" -+ -+ "golang.org/x/sys/internal/unsafeheader" - ) - - var ( -@@ -113,15 +116,12 @@ func (m *mmapper) Mmap(fd int, offset int64, length int, prot int, flags int) (d - return nil, errno - } - -- // Slice memory layout -- var sl = struct { -- addr uintptr -- len int -- cap int -- }{addr, length, length} -- -- // Use unsafe to turn sl into a []byte. -- b := *(*[]byte)(unsafe.Pointer(&sl)) -+ // Use unsafe to convert addr into a []byte. -+ var b []byte -+ hdr := (*unsafeheader.Slice)(unsafe.Pointer(&b)) -+ hdr.Data = unsafe.Pointer(addr) -+ hdr.Cap = length -+ hdr.Len = length - - // Register mapping in m and return it. - p := &b[cap(b)-1] -@@ -177,6 +177,30 @@ func Write(fd int, p []byte) (n int, err error) { - return - } - -+func Pread(fd int, p []byte, offset int64) (n int, err error) { -+ n, err = pread(fd, p, offset) -+ if raceenabled { -+ if n > 0 { -+ raceWriteRange(unsafe.Pointer(&p[0]), n) -+ } -+ if err == nil { -+ raceAcquire(unsafe.Pointer(&ioSync)) -+ } -+ } -+ return -+} -+ -+func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+ if raceenabled { -+ raceReleaseMerge(unsafe.Pointer(&ioSync)) -+ } -+ n, err = pwrite(fd, p, offset) -+ if raceenabled && n > 0 { -+ raceReadRange(unsafe.Pointer(&p[0]), n) -+ } -+ return -+} -+ - // For testing: clients can set this flag to force - // creation of IPv6 sockets to return EAFNOSUPPORT. - var SocketDisableIPv6 bool -@@ -313,6 +337,97 @@ func Recvfrom(fd int, p []byte, flags int) (n int, from Sockaddr, err error) { - return - } - -+func Recvmsg(fd int, p, oob []byte, flags int) (n, oobn int, recvflags int, from Sockaddr, err error) { -+ var iov [1]Iovec -+ if len(p) > 0 { -+ iov[0].Base = &p[0] -+ iov[0].SetLen(len(p)) -+ } -+ var rsa RawSockaddrAny -+ n, oobn, recvflags, err = recvmsgRaw(fd, iov[:], oob, flags, &rsa) -+ // source address is only specified if the socket is unconnected -+ if rsa.Addr.Family != AF_UNSPEC { -+ from, err = anyToSockaddr(fd, &rsa) -+ } -+ return -+} -+ -+// RecvmsgBuffers receives a message from a socket using the recvmsg -+// system call. The flags are passed to recvmsg. Any non-control data -+// read is scattered into the buffers slices. The results are: -+// - n is the number of non-control data read into bufs -+// - oobn is the number of control data read into oob; this may be interpreted using [ParseSocketControlMessage] -+// - recvflags is flags returned by recvmsg -+// - from is the address of the sender -+func RecvmsgBuffers(fd int, buffers [][]byte, oob []byte, flags int) (n, oobn int, recvflags int, from Sockaddr, err error) { -+ iov := make([]Iovec, len(buffers)) -+ for i := range buffers { -+ if len(buffers[i]) > 0 { -+ iov[i].Base = &buffers[i][0] -+ iov[i].SetLen(len(buffers[i])) -+ } else { -+ iov[i].Base = (*byte)(unsafe.Pointer(&_zero)) -+ } -+ } -+ var rsa RawSockaddrAny -+ n, oobn, recvflags, err = recvmsgRaw(fd, iov, oob, flags, &rsa) -+ if err == nil && rsa.Addr.Family != AF_UNSPEC { -+ from, err = anyToSockaddr(fd, &rsa) -+ } -+ return -+} -+ -+func Sendmsg(fd int, p, oob []byte, to Sockaddr, flags int) (err error) { -+ _, err = SendmsgN(fd, p, oob, to, flags) -+ return -+} -+ -+func SendmsgN(fd int, p, oob []byte, to Sockaddr, flags int) (n int, err error) { -+ var iov [1]Iovec -+ if len(p) > 0 { -+ iov[0].Base = &p[0] -+ iov[0].SetLen(len(p)) -+ } -+ var ptr unsafe.Pointer -+ var salen _Socklen -+ if to != nil { -+ ptr, salen, err = to.sockaddr() -+ if err != nil { -+ return 0, err -+ } -+ } -+ return sendmsgN(fd, iov[:], oob, ptr, salen, flags) -+} -+ -+// SendmsgBuffers sends a message on a socket to an address using the sendmsg -+// system call. The flags are passed to sendmsg. Any non-control data written -+// is gathered from buffers. The function returns the number of bytes written -+// to the socket. -+func SendmsgBuffers(fd int, buffers [][]byte, oob []byte, to Sockaddr, flags int) (n int, err error) { -+ iov := make([]Iovec, len(buffers)) -+ for i := range buffers { -+ if len(buffers[i]) > 0 { -+ iov[i].Base = &buffers[i][0] -+ iov[i].SetLen(len(buffers[i])) -+ } else { -+ iov[i].Base = (*byte)(unsafe.Pointer(&_zero)) -+ } -+ } -+ var ptr unsafe.Pointer -+ var salen _Socklen -+ if to != nil { -+ ptr, salen, err = to.sockaddr() -+ if err != nil { -+ return 0, err -+ } -+ } -+ return sendmsgN(fd, iov, oob, ptr, salen, flags) -+} -+ -+func Send(s int, buf []byte, flags int) (err error) { -+ return sendto(s, buf, flags, nil, 0) -+} -+ - func Sendto(fd int, p []byte, flags int, to Sockaddr) (err error) { - ptr, n, err := to.sockaddr() - if err != nil { -@@ -429,3 +544,13 @@ func Lutimes(path string, tv []Timeval) error { - } - return UtimesNanoAt(AT_FDCWD, path, ts, AT_SYMLINK_NOFOLLOW) - } -+ -+// emptyIovec reports whether there are no bytes in the slice of Iovec. -+func emptyIovecs(iov []Iovec) bool { -+ for i := range iov { -+ if iov[i].Len > 0 { -+ return false -+ } -+ } -+ return true -+} -diff --git a/vendor/golang.org/x/sys/unix/syscall_unix_gc.go b/vendor/golang.org/x/sys/unix/syscall_unix_gc.go -index 1c70d1b..5898e9a 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_unix_gc.go -+++ b/vendor/golang.org/x/sys/unix/syscall_unix_gc.go -@@ -2,8 +2,11 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build (darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris) && gc && !ppc64le && !ppc64 - // +build darwin dragonfly freebsd linux netbsd openbsd solaris --// +build !gccgo,!ppc64le,!ppc64 -+// +build gc -+// +build !ppc64le -+// +build !ppc64 - - package unix - -diff --git a/vendor/golang.org/x/sys/unix/syscall_unix_gc_ppc64x.go b/vendor/golang.org/x/sys/unix/syscall_unix_gc_ppc64x.go -index 86dc765..f6f707a 100644 ---- a/vendor/golang.org/x/sys/unix/syscall_unix_gc_ppc64x.go -+++ b/vendor/golang.org/x/sys/unix/syscall_unix_gc_ppc64x.go -@@ -2,9 +2,10 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build linux && (ppc64le || ppc64) && gc - // +build linux - // +build ppc64le ppc64 --// +build !gccgo -+// +build gc - - package unix - -diff --git a/vendor/golang.org/x/sys/unix/syscall_zos_s390x.go b/vendor/golang.org/x/sys/unix/syscall_zos_s390x.go -new file mode 100644 -index 0000000..f8616f4 ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/syscall_zos_s390x.go -@@ -0,0 +1,1823 @@ -+// Copyright 2020 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build zos && s390x -+// +build zos,s390x -+ -+package unix -+ -+import ( -+ "bytes" -+ "runtime" -+ "sort" -+ "sync" -+ "syscall" -+ "unsafe" -+) -+ -+const ( -+ O_CLOEXEC = 0 // Dummy value (not supported). -+ AF_LOCAL = AF_UNIX // AF_LOCAL is an alias for AF_UNIX -+) -+ -+func syscall_syscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err Errno) -+func syscall_rawsyscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err Errno) -+func syscall_syscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno) -+func syscall_rawsyscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno) -+func syscall_syscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err Errno) -+func syscall_rawsyscall9(trap, a1, a2, a3, a4, a5, a6, a7, a8, a9 uintptr) (r1, r2 uintptr, err Errno) -+ -+func copyStat(stat *Stat_t, statLE *Stat_LE_t) { -+ stat.Dev = uint64(statLE.Dev) -+ stat.Ino = uint64(statLE.Ino) -+ stat.Nlink = uint64(statLE.Nlink) -+ stat.Mode = uint32(statLE.Mode) -+ stat.Uid = uint32(statLE.Uid) -+ stat.Gid = uint32(statLE.Gid) -+ stat.Rdev = uint64(statLE.Rdev) -+ stat.Size = statLE.Size -+ stat.Atim.Sec = int64(statLE.Atim) -+ stat.Atim.Nsec = 0 //zos doesn't return nanoseconds -+ stat.Mtim.Sec = int64(statLE.Mtim) -+ stat.Mtim.Nsec = 0 //zos doesn't return nanoseconds -+ stat.Ctim.Sec = int64(statLE.Ctim) -+ stat.Ctim.Nsec = 0 //zos doesn't return nanoseconds -+ stat.Blksize = int64(statLE.Blksize) -+ stat.Blocks = statLE.Blocks -+} -+ -+func svcCall(fnptr unsafe.Pointer, argv *unsafe.Pointer, dsa *uint64) -+func svcLoad(name *byte) unsafe.Pointer -+func svcUnload(name *byte, fnptr unsafe.Pointer) int64 -+ -+func (d *Dirent) NameString() string { -+ if d == nil { -+ return "" -+ } -+ return string(d.Name[:d.Namlen]) -+} -+ -+func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) { -+ if sa.Port < 0 || sa.Port > 0xFFFF { -+ return nil, 0, EINVAL -+ } -+ sa.raw.Len = SizeofSockaddrInet4 -+ sa.raw.Family = AF_INET -+ p := (*[2]byte)(unsafe.Pointer(&sa.raw.Port)) -+ p[0] = byte(sa.Port >> 8) -+ p[1] = byte(sa.Port) -+ sa.raw.Addr = sa.Addr -+ return unsafe.Pointer(&sa.raw), _Socklen(sa.raw.Len), nil -+} -+ -+func (sa *SockaddrInet6) sockaddr() (unsafe.Pointer, _Socklen, error) { -+ if sa.Port < 0 || sa.Port > 0xFFFF { -+ return nil, 0, EINVAL -+ } -+ sa.raw.Len = SizeofSockaddrInet6 -+ sa.raw.Family = AF_INET6 -+ p := (*[2]byte)(unsafe.Pointer(&sa.raw.Port)) -+ p[0] = byte(sa.Port >> 8) -+ p[1] = byte(sa.Port) -+ sa.raw.Scope_id = sa.ZoneId -+ sa.raw.Addr = sa.Addr -+ return unsafe.Pointer(&sa.raw), _Socklen(sa.raw.Len), nil -+} -+ -+func (sa *SockaddrUnix) sockaddr() (unsafe.Pointer, _Socklen, error) { -+ name := sa.Name -+ n := len(name) -+ if n >= len(sa.raw.Path) || n == 0 { -+ return nil, 0, EINVAL -+ } -+ sa.raw.Len = byte(3 + n) // 2 for Family, Len; 1 for NUL -+ sa.raw.Family = AF_UNIX -+ for i := 0; i < n; i++ { -+ sa.raw.Path[i] = int8(name[i]) -+ } -+ return unsafe.Pointer(&sa.raw), _Socklen(sa.raw.Len), nil -+} -+ -+func anyToSockaddr(_ int, rsa *RawSockaddrAny) (Sockaddr, error) { -+ // TODO(neeilan): Implement use of first param (fd) -+ switch rsa.Addr.Family { -+ case AF_UNIX: -+ pp := (*RawSockaddrUnix)(unsafe.Pointer(rsa)) -+ sa := new(SockaddrUnix) -+ // For z/OS, only replace NUL with @ when the -+ // length is not zero. -+ if pp.Len != 0 && pp.Path[0] == 0 { -+ // "Abstract" Unix domain socket. -+ // Rewrite leading NUL as @ for textual display. -+ // (This is the standard convention.) -+ // Not friendly to overwrite in place, -+ // but the callers below don't care. -+ pp.Path[0] = '@' -+ } -+ -+ // Assume path ends at NUL. -+ // -+ // For z/OS, the length of the name is a field -+ // in the structure. To be on the safe side, we -+ // will still scan the name for a NUL but only -+ // to the length provided in the structure. -+ // -+ // This is not technically the Linux semantics for -+ // abstract Unix domain sockets--they are supposed -+ // to be uninterpreted fixed-size binary blobs--but -+ // everyone uses this convention. -+ n := 0 -+ for n < int(pp.Len) && pp.Path[n] != 0 { -+ n++ -+ } -+ bytes := (*[len(pp.Path)]byte)(unsafe.Pointer(&pp.Path[0]))[0:n] -+ sa.Name = string(bytes) -+ return sa, nil -+ -+ case AF_INET: -+ pp := (*RawSockaddrInet4)(unsafe.Pointer(rsa)) -+ sa := new(SockaddrInet4) -+ p := (*[2]byte)(unsafe.Pointer(&pp.Port)) -+ sa.Port = int(p[0])<<8 + int(p[1]) -+ sa.Addr = pp.Addr -+ return sa, nil -+ -+ case AF_INET6: -+ pp := (*RawSockaddrInet6)(unsafe.Pointer(rsa)) -+ sa := new(SockaddrInet6) -+ p := (*[2]byte)(unsafe.Pointer(&pp.Port)) -+ sa.Port = int(p[0])<<8 + int(p[1]) -+ sa.ZoneId = pp.Scope_id -+ sa.Addr = pp.Addr -+ return sa, nil -+ } -+ return nil, EAFNOSUPPORT -+} -+ -+func Accept(fd int) (nfd int, sa Sockaddr, err error) { -+ var rsa RawSockaddrAny -+ var len _Socklen = SizeofSockaddrAny -+ nfd, err = accept(fd, &rsa, &len) -+ if err != nil { -+ return -+ } -+ // TODO(neeilan): Remove 0 in call -+ sa, err = anyToSockaddr(0, &rsa) -+ if err != nil { -+ Close(nfd) -+ nfd = 0 -+ } -+ return -+} -+ -+func (iov *Iovec) SetLen(length int) { -+ iov.Len = uint64(length) -+} -+ -+func (msghdr *Msghdr) SetControllen(length int) { -+ msghdr.Controllen = int32(length) -+} -+ -+func (cmsg *Cmsghdr) SetLen(length int) { -+ cmsg.Len = int32(length) -+} -+ -+//sys fcntl(fd int, cmd int, arg int) (val int, err error) -+//sys read(fd int, p []byte) (n int, err error) -+//sys readlen(fd int, buf *byte, nbuf int) (n int, err error) = SYS_READ -+//sys write(fd int, p []byte) (n int, err error) -+ -+//sys accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) = SYS___ACCEPT_A -+//sys bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) = SYS___BIND_A -+//sys connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) = SYS___CONNECT_A -+//sysnb getgroups(n int, list *_Gid_t) (nn int, err error) -+//sysnb setgroups(n int, list *_Gid_t) (err error) -+//sys getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) -+//sys setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) -+//sysnb socket(domain int, typ int, proto int) (fd int, err error) -+//sysnb socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) -+//sysnb getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) = SYS___GETPEERNAME_A -+//sysnb getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) = SYS___GETSOCKNAME_A -+//sys recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) = SYS___RECVFROM_A -+//sys sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) = SYS___SENDTO_A -+//sys recvmsg(s int, msg *Msghdr, flags int) (n int, err error) = SYS___RECVMSG_A -+//sys sendmsg(s int, msg *Msghdr, flags int) (n int, err error) = SYS___SENDMSG_A -+//sys mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) = SYS_MMAP -+//sys munmap(addr uintptr, length uintptr) (err error) = SYS_MUNMAP -+//sys ioctl(fd int, req uint, arg uintptr) (err error) = SYS_IOCTL -+ -+//sys Access(path string, mode uint32) (err error) = SYS___ACCESS_A -+//sys Chdir(path string) (err error) = SYS___CHDIR_A -+//sys Chown(path string, uid int, gid int) (err error) = SYS___CHOWN_A -+//sys Chmod(path string, mode uint32) (err error) = SYS___CHMOD_A -+//sys Creat(path string, mode uint32) (fd int, err error) = SYS___CREAT_A -+//sys Dup(oldfd int) (fd int, err error) -+//sys Dup2(oldfd int, newfd int) (err error) -+//sys Errno2() (er2 int) = SYS___ERRNO2 -+//sys Err2ad() (eadd *int) = SYS___ERR2AD -+//sys Exit(code int) -+//sys Fchdir(fd int) (err error) -+//sys Fchmod(fd int, mode uint32) (err error) -+//sys Fchown(fd int, uid int, gid int) (err error) -+//sys FcntlInt(fd uintptr, cmd int, arg int) (retval int, err error) = SYS_FCNTL -+//sys fstat(fd int, stat *Stat_LE_t) (err error) -+ -+func Fstat(fd int, stat *Stat_t) (err error) { -+ var statLE Stat_LE_t -+ err = fstat(fd, &statLE) -+ copyStat(stat, &statLE) -+ return -+} -+ -+//sys Fstatvfs(fd int, stat *Statvfs_t) (err error) = SYS_FSTATVFS -+//sys Fsync(fd int) (err error) -+//sys Ftruncate(fd int, length int64) (err error) -+//sys Getpagesize() (pgsize int) = SYS_GETPAGESIZE -+//sys Mprotect(b []byte, prot int) (err error) = SYS_MPROTECT -+//sys Msync(b []byte, flags int) (err error) = SYS_MSYNC -+//sys Poll(fds []PollFd, timeout int) (n int, err error) = SYS_POLL -+//sys Times(tms *Tms) (ticks uintptr, err error) = SYS_TIMES -+//sys W_Getmntent(buff *byte, size int) (lastsys int, err error) = SYS_W_GETMNTENT -+//sys W_Getmntent_A(buff *byte, size int) (lastsys int, err error) = SYS___W_GETMNTENT_A -+ -+//sys mount_LE(path string, filesystem string, fstype string, mtm uint32, parmlen int32, parm string) (err error) = SYS___MOUNT_A -+//sys unmount(filesystem string, mtm int) (err error) = SYS___UMOUNT_A -+//sys Chroot(path string) (err error) = SYS___CHROOT_A -+//sys Select(nmsgsfds int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (ret int, err error) = SYS_SELECT -+//sysnb Uname(buf *Utsname) (err error) = SYS___UNAME_A -+ -+func Ptsname(fd int) (name string, err error) { -+ r0, _, e1 := syscall_syscall(SYS___PTSNAME_A, uintptr(fd), 0, 0) -+ name = u2s(unsafe.Pointer(r0)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+func u2s(cstr unsafe.Pointer) string { -+ str := (*[1024]uint8)(cstr) -+ i := 0 -+ for str[i] != 0 { -+ i++ -+ } -+ return string(str[:i]) -+} -+ -+func Close(fd int) (err error) { -+ _, _, e1 := syscall_syscall(SYS_CLOSE, uintptr(fd), 0, 0) -+ for i := 0; e1 == EAGAIN && i < 10; i++ { -+ _, _, _ = syscall_syscall(SYS_USLEEP, uintptr(10), 0, 0) -+ _, _, e1 = syscall_syscall(SYS_CLOSE, uintptr(fd), 0, 0) -+ } -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+var mapper = &mmapper{ -+ active: make(map[*byte][]byte), -+ mmap: mmap, -+ munmap: munmap, -+} -+ -+// Dummy function: there are no semantics for Madvise on z/OS -+func Madvise(b []byte, advice int) (err error) { -+ return -+} -+ -+func Mmap(fd int, offset int64, length int, prot int, flags int) (data []byte, err error) { -+ return mapper.Mmap(fd, offset, length, prot, flags) -+} -+ -+func Munmap(b []byte) (err error) { -+ return mapper.Munmap(b) -+} -+ -+//sys Gethostname(buf []byte) (err error) = SYS___GETHOSTNAME_A -+//sysnb Getegid() (egid int) -+//sysnb Geteuid() (uid int) -+//sysnb Getgid() (gid int) -+//sysnb Getpid() (pid int) -+//sysnb Getpgid(pid int) (pgid int, err error) = SYS_GETPGID -+ -+func Getpgrp() (pid int) { -+ pid, _ = Getpgid(0) -+ return -+} -+ -+//sysnb Getppid() (pid int) -+//sys Getpriority(which int, who int) (prio int, err error) -+//sysnb Getrlimit(resource int, rlim *Rlimit) (err error) = SYS_GETRLIMIT -+ -+//sysnb getrusage(who int, rusage *rusage_zos) (err error) = SYS_GETRUSAGE -+ -+func Getrusage(who int, rusage *Rusage) (err error) { -+ var ruz rusage_zos -+ err = getrusage(who, &ruz) -+ //Only the first two fields of Rusage are set -+ rusage.Utime.Sec = ruz.Utime.Sec -+ rusage.Utime.Usec = int64(ruz.Utime.Usec) -+ rusage.Stime.Sec = ruz.Stime.Sec -+ rusage.Stime.Usec = int64(ruz.Stime.Usec) -+ return -+} -+ -+//sysnb Getsid(pid int) (sid int, err error) = SYS_GETSID -+//sysnb Getuid() (uid int) -+//sysnb Kill(pid int, sig Signal) (err error) -+//sys Lchown(path string, uid int, gid int) (err error) = SYS___LCHOWN_A -+//sys Link(path string, link string) (err error) = SYS___LINK_A -+//sys Listen(s int, n int) (err error) -+//sys lstat(path string, stat *Stat_LE_t) (err error) = SYS___LSTAT_A -+ -+func Lstat(path string, stat *Stat_t) (err error) { -+ var statLE Stat_LE_t -+ err = lstat(path, &statLE) -+ copyStat(stat, &statLE) -+ return -+} -+ -+//sys Mkdir(path string, mode uint32) (err error) = SYS___MKDIR_A -+//sys Mkfifo(path string, mode uint32) (err error) = SYS___MKFIFO_A -+//sys Mknod(path string, mode uint32, dev int) (err error) = SYS___MKNOD_A -+//sys Pread(fd int, p []byte, offset int64) (n int, err error) -+//sys Pwrite(fd int, p []byte, offset int64) (n int, err error) -+//sys Readlink(path string, buf []byte) (n int, err error) = SYS___READLINK_A -+//sys Rename(from string, to string) (err error) = SYS___RENAME_A -+//sys Rmdir(path string) (err error) = SYS___RMDIR_A -+//sys Seek(fd int, offset int64, whence int) (off int64, err error) = SYS_LSEEK -+//sys Setpriority(which int, who int, prio int) (err error) -+//sysnb Setpgid(pid int, pgid int) (err error) = SYS_SETPGID -+//sysnb Setrlimit(resource int, lim *Rlimit) (err error) -+//sysnb Setregid(rgid int, egid int) (err error) = SYS_SETREGID -+//sysnb Setreuid(ruid int, euid int) (err error) = SYS_SETREUID -+//sysnb Setsid() (pid int, err error) = SYS_SETSID -+//sys Setuid(uid int) (err error) = SYS_SETUID -+//sys Setgid(uid int) (err error) = SYS_SETGID -+//sys Shutdown(fd int, how int) (err error) -+//sys stat(path string, statLE *Stat_LE_t) (err error) = SYS___STAT_A -+ -+func Stat(path string, sta *Stat_t) (err error) { -+ var statLE Stat_LE_t -+ err = stat(path, &statLE) -+ copyStat(sta, &statLE) -+ return -+} -+ -+//sys Symlink(path string, link string) (err error) = SYS___SYMLINK_A -+//sys Sync() = SYS_SYNC -+//sys Truncate(path string, length int64) (err error) = SYS___TRUNCATE_A -+//sys Tcgetattr(fildes int, termptr *Termios) (err error) = SYS_TCGETATTR -+//sys Tcsetattr(fildes int, when int, termptr *Termios) (err error) = SYS_TCSETATTR -+//sys Umask(mask int) (oldmask int) -+//sys Unlink(path string) (err error) = SYS___UNLINK_A -+//sys Utime(path string, utim *Utimbuf) (err error) = SYS___UTIME_A -+ -+//sys open(path string, mode int, perm uint32) (fd int, err error) = SYS___OPEN_A -+ -+func Open(path string, mode int, perm uint32) (fd int, err error) { -+ return open(path, mode, perm) -+} -+ -+func Mkfifoat(dirfd int, path string, mode uint32) (err error) { -+ wd, err := Getwd() -+ if err != nil { -+ return err -+ } -+ -+ if err := Fchdir(dirfd); err != nil { -+ return err -+ } -+ defer Chdir(wd) -+ -+ return Mkfifo(path, mode) -+} -+ -+//sys remove(path string) (err error) -+ -+func Remove(path string) error { -+ return remove(path) -+} -+ -+const ImplementsGetwd = true -+ -+func Getcwd(buf []byte) (n int, err error) { -+ var p unsafe.Pointer -+ if len(buf) > 0 { -+ p = unsafe.Pointer(&buf[0]) -+ } else { -+ p = unsafe.Pointer(&_zero) -+ } -+ _, _, e := syscall_syscall(SYS___GETCWD_A, uintptr(p), uintptr(len(buf)), 0) -+ n = clen(buf) + 1 -+ if e != 0 { -+ err = errnoErr(e) -+ } -+ return -+} -+ -+func Getwd() (wd string, err error) { -+ var buf [PathMax]byte -+ n, err := Getcwd(buf[0:]) -+ if err != nil { -+ return "", err -+ } -+ // Getcwd returns the number of bytes written to buf, including the NUL. -+ if n < 1 || n > len(buf) || buf[n-1] != 0 { -+ return "", EINVAL -+ } -+ return string(buf[0 : n-1]), nil -+} -+ -+func Getgroups() (gids []int, err error) { -+ n, err := getgroups(0, nil) -+ if err != nil { -+ return nil, err -+ } -+ if n == 0 { -+ return nil, nil -+ } -+ -+ // Sanity check group count. Max is 1<<16 on Linux. -+ if n < 0 || n > 1<<20 { -+ return nil, EINVAL -+ } -+ -+ a := make([]_Gid_t, n) -+ n, err = getgroups(n, &a[0]) -+ if err != nil { -+ return nil, err -+ } -+ gids = make([]int, n) -+ for i, v := range a[0:n] { -+ gids[i] = int(v) -+ } -+ return -+} -+ -+func Setgroups(gids []int) (err error) { -+ if len(gids) == 0 { -+ return setgroups(0, nil) -+ } -+ -+ a := make([]_Gid_t, len(gids)) -+ for i, v := range gids { -+ a[i] = _Gid_t(v) -+ } -+ return setgroups(len(a), &a[0]) -+} -+ -+func gettid() uint64 -+ -+func Gettid() (tid int) { -+ return int(gettid()) -+} -+ -+type WaitStatus uint32 -+ -+// Wait status is 7 bits at bottom, either 0 (exited), -+// 0x7F (stopped), or a signal number that caused an exit. -+// The 0x80 bit is whether there was a core dump. -+// An extra number (exit code, signal causing a stop) -+// is in the high bits. At least that's the idea. -+// There are various irregularities. For example, the -+// "continued" status is 0xFFFF, distinguishing itself -+// from stopped via the core dump bit. -+ -+const ( -+ mask = 0x7F -+ core = 0x80 -+ exited = 0x00 -+ stopped = 0x7F -+ shift = 8 -+) -+ -+func (w WaitStatus) Exited() bool { return w&mask == exited } -+ -+func (w WaitStatus) Signaled() bool { return w&mask != stopped && w&mask != exited } -+ -+func (w WaitStatus) Stopped() bool { return w&0xFF == stopped } -+ -+func (w WaitStatus) Continued() bool { return w == 0xFFFF } -+ -+func (w WaitStatus) CoreDump() bool { return w.Signaled() && w&core != 0 } -+ -+func (w WaitStatus) ExitStatus() int { -+ if !w.Exited() { -+ return -1 -+ } -+ return int(w>>shift) & 0xFF -+} -+ -+func (w WaitStatus) Signal() Signal { -+ if !w.Signaled() { -+ return -1 -+ } -+ return Signal(w & mask) -+} -+ -+func (w WaitStatus) StopSignal() Signal { -+ if !w.Stopped() { -+ return -1 -+ } -+ return Signal(w>>shift) & 0xFF -+} -+ -+func (w WaitStatus) TrapCause() int { return -1 } -+ -+//sys waitpid(pid int, wstatus *_C_int, options int) (wpid int, err error) -+ -+func Wait4(pid int, wstatus *WaitStatus, options int, rusage *Rusage) (wpid int, err error) { -+ // TODO(mundaym): z/OS doesn't have wait4. I don't think getrusage does what we want. -+ // At the moment rusage will not be touched. -+ var status _C_int -+ wpid, err = waitpid(pid, &status, options) -+ if wstatus != nil { -+ *wstatus = WaitStatus(status) -+ } -+ return -+} -+ -+//sysnb gettimeofday(tv *timeval_zos) (err error) -+ -+func Gettimeofday(tv *Timeval) (err error) { -+ var tvz timeval_zos -+ err = gettimeofday(&tvz) -+ tv.Sec = tvz.Sec -+ tv.Usec = int64(tvz.Usec) -+ return -+} -+ -+func Time(t *Time_t) (tt Time_t, err error) { -+ var tv Timeval -+ err = Gettimeofday(&tv) -+ if err != nil { -+ return 0, err -+ } -+ if t != nil { -+ *t = Time_t(tv.Sec) -+ } -+ return Time_t(tv.Sec), nil -+} -+ -+func setTimespec(sec, nsec int64) Timespec { -+ return Timespec{Sec: sec, Nsec: nsec} -+} -+ -+func setTimeval(sec, usec int64) Timeval { //fix -+ return Timeval{Sec: sec, Usec: usec} -+} -+ -+//sysnb pipe(p *[2]_C_int) (err error) -+ -+func Pipe(p []int) (err error) { -+ if len(p) != 2 { -+ return EINVAL -+ } -+ var pp [2]_C_int -+ err = pipe(&pp) -+ if err == nil { -+ p[0] = int(pp[0]) -+ p[1] = int(pp[1]) -+ } -+ return -+} -+ -+//sys utimes(path string, timeval *[2]Timeval) (err error) = SYS___UTIMES_A -+ -+func Utimes(path string, tv []Timeval) (err error) { -+ if len(tv) != 2 { -+ return EINVAL -+ } -+ return utimes(path, (*[2]Timeval)(unsafe.Pointer(&tv[0]))) -+} -+ -+func UtimesNano(path string, ts []Timespec) error { -+ if len(ts) != 2 { -+ return EINVAL -+ } -+ // Not as efficient as it could be because Timespec and -+ // Timeval have different types in the different OSes -+ tv := [2]Timeval{ -+ NsecToTimeval(TimespecToNsec(ts[0])), -+ NsecToTimeval(TimespecToNsec(ts[1])), -+ } -+ return utimes(path, (*[2]Timeval)(unsafe.Pointer(&tv[0]))) -+} -+ -+func Getsockname(fd int) (sa Sockaddr, err error) { -+ var rsa RawSockaddrAny -+ var len _Socklen = SizeofSockaddrAny -+ if err = getsockname(fd, &rsa, &len); err != nil { -+ return -+ } -+ // TODO(neeilan) : Remove this 0 ( added to get sys/unix compiling on z/OS ) -+ return anyToSockaddr(0, &rsa) -+} -+ -+const ( -+ // identifier constants -+ nwmHeaderIdentifier = 0xd5e6d4c8 -+ nwmFilterIdentifier = 0xd5e6d4c6 -+ nwmTCPConnIdentifier = 0xd5e6d4c3 -+ nwmRecHeaderIdentifier = 0xd5e6d4d9 -+ nwmIPStatsIdentifier = 0xd5e6d4c9d7e2e340 -+ nwmIPGStatsIdentifier = 0xd5e6d4c9d7c7e2e3 -+ nwmTCPStatsIdentifier = 0xd5e6d4e3c3d7e2e3 -+ nwmUDPStatsIdentifier = 0xd5e6d4e4c4d7e2e3 -+ nwmICMPGStatsEntry = 0xd5e6d4c9c3d4d7c7 -+ nwmICMPTStatsEntry = 0xd5e6d4c9c3d4d7e3 -+ -+ // nwmHeader constants -+ nwmVersion1 = 1 -+ nwmVersion2 = 2 -+ nwmCurrentVer = 2 -+ -+ nwmTCPConnType = 1 -+ nwmGlobalStatsType = 14 -+ -+ // nwmFilter constants -+ nwmFilterLclAddrMask = 0x20000000 // Local address -+ nwmFilterSrcAddrMask = 0x20000000 // Source address -+ nwmFilterLclPortMask = 0x10000000 // Local port -+ nwmFilterSrcPortMask = 0x10000000 // Source port -+ -+ // nwmConnEntry constants -+ nwmTCPStateClosed = 1 -+ nwmTCPStateListen = 2 -+ nwmTCPStateSynSent = 3 -+ nwmTCPStateSynRcvd = 4 -+ nwmTCPStateEstab = 5 -+ nwmTCPStateFinWait1 = 6 -+ nwmTCPStateFinWait2 = 7 -+ nwmTCPStateClosWait = 8 -+ nwmTCPStateLastAck = 9 -+ nwmTCPStateClosing = 10 -+ nwmTCPStateTimeWait = 11 -+ nwmTCPStateDeletTCB = 12 -+ -+ // Existing constants on linux -+ BPF_TCP_CLOSE = 1 -+ BPF_TCP_LISTEN = 2 -+ BPF_TCP_SYN_SENT = 3 -+ BPF_TCP_SYN_RECV = 4 -+ BPF_TCP_ESTABLISHED = 5 -+ BPF_TCP_FIN_WAIT1 = 6 -+ BPF_TCP_FIN_WAIT2 = 7 -+ BPF_TCP_CLOSE_WAIT = 8 -+ BPF_TCP_LAST_ACK = 9 -+ BPF_TCP_CLOSING = 10 -+ BPF_TCP_TIME_WAIT = 11 -+ BPF_TCP_NEW_SYN_RECV = -1 -+ BPF_TCP_MAX_STATES = -2 -+) -+ -+type nwmTriplet struct { -+ offset uint32 -+ length uint32 -+ number uint32 -+} -+ -+type nwmQuadruplet struct { -+ offset uint32 -+ length uint32 -+ number uint32 -+ match uint32 -+} -+ -+type nwmHeader struct { -+ ident uint32 -+ length uint32 -+ version uint16 -+ nwmType uint16 -+ bytesNeeded uint32 -+ options uint32 -+ _ [16]byte -+ inputDesc nwmTriplet -+ outputDesc nwmQuadruplet -+} -+ -+type nwmFilter struct { -+ ident uint32 -+ flags uint32 -+ resourceName [8]byte -+ resourceId uint32 -+ listenerId uint32 -+ local [28]byte // union of sockaddr4 and sockaddr6 -+ remote [28]byte // union of sockaddr4 and sockaddr6 -+ _ uint16 -+ _ uint16 -+ asid uint16 -+ _ [2]byte -+ tnLuName [8]byte -+ tnMonGrp uint32 -+ tnAppl [8]byte -+ applData [40]byte -+ nInterface [16]byte -+ dVipa [16]byte -+ dVipaPfx uint16 -+ dVipaPort uint16 -+ dVipaFamily byte -+ _ [3]byte -+ destXCF [16]byte -+ destXCFPfx uint16 -+ destXCFFamily byte -+ _ [1]byte -+ targIP [16]byte -+ targIPPfx uint16 -+ targIPFamily byte -+ _ [1]byte -+ _ [20]byte -+} -+ -+type nwmRecHeader struct { -+ ident uint32 -+ length uint32 -+ number byte -+ _ [3]byte -+} -+ -+type nwmTCPStatsEntry struct { -+ ident uint64 -+ currEstab uint32 -+ activeOpened uint32 -+ passiveOpened uint32 -+ connClosed uint32 -+ estabResets uint32 -+ attemptFails uint32 -+ passiveDrops uint32 -+ timeWaitReused uint32 -+ inSegs uint64 -+ predictAck uint32 -+ predictData uint32 -+ inDupAck uint32 -+ inBadSum uint32 -+ inBadLen uint32 -+ inShort uint32 -+ inDiscOldTime uint32 -+ inAllBeforeWin uint32 -+ inSomeBeforeWin uint32 -+ inAllAfterWin uint32 -+ inSomeAfterWin uint32 -+ inOutOfOrder uint32 -+ inAfterClose uint32 -+ inWinProbes uint32 -+ inWinUpdates uint32 -+ outWinUpdates uint32 -+ outSegs uint64 -+ outDelayAcks uint32 -+ outRsts uint32 -+ retransSegs uint32 -+ retransTimeouts uint32 -+ retransDrops uint32 -+ pmtuRetrans uint32 -+ pmtuErrors uint32 -+ outWinProbes uint32 -+ probeDrops uint32 -+ keepAliveProbes uint32 -+ keepAliveDrops uint32 -+ finwait2Drops uint32 -+ acceptCount uint64 -+ inBulkQSegs uint64 -+ inDiscards uint64 -+ connFloods uint32 -+ connStalls uint32 -+ cfgEphemDef uint16 -+ ephemInUse uint16 -+ ephemHiWater uint16 -+ flags byte -+ _ [1]byte -+ ephemExhaust uint32 -+ smcRCurrEstabLnks uint32 -+ smcRLnkActTimeOut uint32 -+ smcRActLnkOpened uint32 -+ smcRPasLnkOpened uint32 -+ smcRLnksClosed uint32 -+ smcRCurrEstab uint32 -+ smcRActiveOpened uint32 -+ smcRPassiveOpened uint32 -+ smcRConnClosed uint32 -+ smcRInSegs uint64 -+ smcROutSegs uint64 -+ smcRInRsts uint32 -+ smcROutRsts uint32 -+ smcDCurrEstabLnks uint32 -+ smcDActLnkOpened uint32 -+ smcDPasLnkOpened uint32 -+ smcDLnksClosed uint32 -+ smcDCurrEstab uint32 -+ smcDActiveOpened uint32 -+ smcDPassiveOpened uint32 -+ smcDConnClosed uint32 -+ smcDInSegs uint64 -+ smcDOutSegs uint64 -+ smcDInRsts uint32 -+ smcDOutRsts uint32 -+} -+ -+type nwmConnEntry struct { -+ ident uint32 -+ local [28]byte // union of sockaddr4 and sockaddr6 -+ remote [28]byte // union of sockaddr4 and sockaddr6 -+ startTime [8]byte // uint64, changed to prevent padding from being inserted -+ lastActivity [8]byte // uint64 -+ bytesIn [8]byte // uint64 -+ bytesOut [8]byte // uint64 -+ inSegs [8]byte // uint64 -+ outSegs [8]byte // uint64 -+ state uint16 -+ activeOpen byte -+ flag01 byte -+ outBuffered uint32 -+ inBuffered uint32 -+ maxSndWnd uint32 -+ reXmtCount uint32 -+ congestionWnd uint32 -+ ssThresh uint32 -+ roundTripTime uint32 -+ roundTripVar uint32 -+ sendMSS uint32 -+ sndWnd uint32 -+ rcvBufSize uint32 -+ sndBufSize uint32 -+ outOfOrderCount uint32 -+ lcl0WindowCount uint32 -+ rmt0WindowCount uint32 -+ dupacks uint32 -+ flag02 byte -+ sockOpt6Cont byte -+ asid uint16 -+ resourceName [8]byte -+ resourceId uint32 -+ subtask uint32 -+ sockOpt byte -+ sockOpt6 byte -+ clusterConnFlag byte -+ proto byte -+ targetAppl [8]byte -+ luName [8]byte -+ clientUserId [8]byte -+ logMode [8]byte -+ timeStamp uint32 -+ timeStampAge uint32 -+ serverResourceId uint32 -+ intfName [16]byte -+ ttlsStatPol byte -+ ttlsStatConn byte -+ ttlsSSLProt uint16 -+ ttlsNegCiph [2]byte -+ ttlsSecType byte -+ ttlsFIPS140Mode byte -+ ttlsUserID [8]byte -+ applData [40]byte -+ inOldestTime [8]byte // uint64 -+ outOldestTime [8]byte // uint64 -+ tcpTrustedPartner byte -+ _ [3]byte -+ bulkDataIntfName [16]byte -+ ttlsNegCiph4 [4]byte -+ smcReason uint32 -+ lclSMCLinkId uint32 -+ rmtSMCLinkId uint32 -+ smcStatus byte -+ smcFlags byte -+ _ [2]byte -+ rcvWnd uint32 -+ lclSMCBufSz uint32 -+ rmtSMCBufSz uint32 -+ ttlsSessID [32]byte -+ ttlsSessIDLen int16 -+ _ [1]byte -+ smcDStatus byte -+ smcDReason uint32 -+} -+ -+var svcNameTable [][]byte = [][]byte{ -+ []byte("\xc5\xe9\xc2\xd5\xd4\xc9\xc6\xf4"), // svc_EZBNMIF4 -+} -+ -+const ( -+ svc_EZBNMIF4 = 0 -+) -+ -+func GetsockoptTCPInfo(fd, level, opt int) (*TCPInfo, error) { -+ jobname := []byte("\x5c\x40\x40\x40\x40\x40\x40\x40") // "*" -+ responseBuffer := [4096]byte{0} -+ var bufferAlet, reasonCode uint32 = 0, 0 -+ var bufferLen, returnValue, returnCode int32 = 4096, 0, 0 -+ -+ dsa := [18]uint64{0} -+ var argv [7]unsafe.Pointer -+ argv[0] = unsafe.Pointer(&jobname[0]) -+ argv[1] = unsafe.Pointer(&responseBuffer[0]) -+ argv[2] = unsafe.Pointer(&bufferAlet) -+ argv[3] = unsafe.Pointer(&bufferLen) -+ argv[4] = unsafe.Pointer(&returnValue) -+ argv[5] = unsafe.Pointer(&returnCode) -+ argv[6] = unsafe.Pointer(&reasonCode) -+ -+ request := (*struct { -+ header nwmHeader -+ filter nwmFilter -+ })(unsafe.Pointer(&responseBuffer[0])) -+ -+ EZBNMIF4 := svcLoad(&svcNameTable[svc_EZBNMIF4][0]) -+ if EZBNMIF4 == nil { -+ return nil, errnoErr(EINVAL) -+ } -+ -+ // GetGlobalStats EZBNMIF4 call -+ request.header.ident = nwmHeaderIdentifier -+ request.header.length = uint32(unsafe.Sizeof(request.header)) -+ request.header.version = nwmCurrentVer -+ request.header.nwmType = nwmGlobalStatsType -+ request.header.options = 0x80000000 -+ -+ svcCall(EZBNMIF4, &argv[0], &dsa[0]) -+ -+ // outputDesc field is filled by EZBNMIF4 on success -+ if returnCode != 0 || request.header.outputDesc.offset == 0 { -+ return nil, errnoErr(EINVAL) -+ } -+ -+ // Check that EZBNMIF4 returned a nwmRecHeader -+ recHeader := (*nwmRecHeader)(unsafe.Pointer(&responseBuffer[request.header.outputDesc.offset])) -+ if recHeader.ident != nwmRecHeaderIdentifier { -+ return nil, errnoErr(EINVAL) -+ } -+ -+ // Parse nwmTriplets to get offsets of returned entries -+ var sections []*uint64 -+ var sectionDesc *nwmTriplet = (*nwmTriplet)(unsafe.Pointer(&responseBuffer[0])) -+ for i := uint32(0); i < uint32(recHeader.number); i++ { -+ offset := request.header.outputDesc.offset + uint32(unsafe.Sizeof(*recHeader)) + i*uint32(unsafe.Sizeof(*sectionDesc)) -+ sectionDesc = (*nwmTriplet)(unsafe.Pointer(&responseBuffer[offset])) -+ for j := uint32(0); j < sectionDesc.number; j++ { -+ offset = request.header.outputDesc.offset + sectionDesc.offset + j*sectionDesc.length -+ sections = append(sections, (*uint64)(unsafe.Pointer(&responseBuffer[offset]))) -+ } -+ } -+ -+ // Find nwmTCPStatsEntry in returned entries -+ var tcpStats *nwmTCPStatsEntry = nil -+ for _, ptr := range sections { -+ switch *ptr { -+ case nwmTCPStatsIdentifier: -+ if tcpStats != nil { -+ return nil, errnoErr(EINVAL) -+ } -+ tcpStats = (*nwmTCPStatsEntry)(unsafe.Pointer(ptr)) -+ case nwmIPStatsIdentifier: -+ case nwmIPGStatsIdentifier: -+ case nwmUDPStatsIdentifier: -+ case nwmICMPGStatsEntry: -+ case nwmICMPTStatsEntry: -+ default: -+ return nil, errnoErr(EINVAL) -+ } -+ } -+ if tcpStats == nil { -+ return nil, errnoErr(EINVAL) -+ } -+ -+ // GetConnectionDetail EZBNMIF4 call -+ responseBuffer = [4096]byte{0} -+ dsa = [18]uint64{0} -+ bufferAlet, reasonCode = 0, 0 -+ bufferLen, returnValue, returnCode = 4096, 0, 0 -+ nameptr := (*uint32)(unsafe.Pointer(uintptr(0x21c))) // Get jobname of current process -+ nameptr = (*uint32)(unsafe.Pointer(uintptr(*nameptr + 12))) -+ argv[0] = unsafe.Pointer(uintptr(*nameptr)) -+ -+ request.header.ident = nwmHeaderIdentifier -+ request.header.length = uint32(unsafe.Sizeof(request.header)) -+ request.header.version = nwmCurrentVer -+ request.header.nwmType = nwmTCPConnType -+ request.header.options = 0x80000000 -+ -+ request.filter.ident = nwmFilterIdentifier -+ -+ var localSockaddr RawSockaddrAny -+ socklen := _Socklen(SizeofSockaddrAny) -+ err := getsockname(fd, &localSockaddr, &socklen) -+ if err != nil { -+ return nil, errnoErr(EINVAL) -+ } -+ if localSockaddr.Addr.Family == AF_INET { -+ localSockaddr := (*RawSockaddrInet4)(unsafe.Pointer(&localSockaddr.Addr)) -+ localSockFilter := (*RawSockaddrInet4)(unsafe.Pointer(&request.filter.local[0])) -+ localSockFilter.Family = AF_INET -+ var i int -+ for i = 0; i < 4; i++ { -+ if localSockaddr.Addr[i] != 0 { -+ break -+ } -+ } -+ if i != 4 { -+ request.filter.flags |= nwmFilterLclAddrMask -+ for i = 0; i < 4; i++ { -+ localSockFilter.Addr[i] = localSockaddr.Addr[i] -+ } -+ } -+ if localSockaddr.Port != 0 { -+ request.filter.flags |= nwmFilterLclPortMask -+ localSockFilter.Port = localSockaddr.Port -+ } -+ } else if localSockaddr.Addr.Family == AF_INET6 { -+ localSockaddr := (*RawSockaddrInet6)(unsafe.Pointer(&localSockaddr.Addr)) -+ localSockFilter := (*RawSockaddrInet6)(unsafe.Pointer(&request.filter.local[0])) -+ localSockFilter.Family = AF_INET6 -+ var i int -+ for i = 0; i < 16; i++ { -+ if localSockaddr.Addr[i] != 0 { -+ break -+ } -+ } -+ if i != 16 { -+ request.filter.flags |= nwmFilterLclAddrMask -+ for i = 0; i < 16; i++ { -+ localSockFilter.Addr[i] = localSockaddr.Addr[i] -+ } -+ } -+ if localSockaddr.Port != 0 { -+ request.filter.flags |= nwmFilterLclPortMask -+ localSockFilter.Port = localSockaddr.Port -+ } -+ } -+ -+ svcCall(EZBNMIF4, &argv[0], &dsa[0]) -+ -+ // outputDesc field is filled by EZBNMIF4 on success -+ if returnCode != 0 || request.header.outputDesc.offset == 0 { -+ return nil, errnoErr(EINVAL) -+ } -+ -+ // Check that EZBNMIF4 returned a nwmConnEntry -+ conn := (*nwmConnEntry)(unsafe.Pointer(&responseBuffer[request.header.outputDesc.offset])) -+ if conn.ident != nwmTCPConnIdentifier { -+ return nil, errnoErr(EINVAL) -+ } -+ -+ // Copy data from the returned data structures into tcpInfo -+ // Stats from nwmConnEntry are specific to that connection. -+ // Stats from nwmTCPStatsEntry are global (to the interface?) -+ // Fields may not be an exact match. Some fields have no equivalent. -+ var tcpinfo TCPInfo -+ tcpinfo.State = uint8(conn.state) -+ tcpinfo.Ca_state = 0 // dummy -+ tcpinfo.Retransmits = uint8(tcpStats.retransSegs) -+ tcpinfo.Probes = uint8(tcpStats.outWinProbes) -+ tcpinfo.Backoff = 0 // dummy -+ tcpinfo.Options = 0 // dummy -+ tcpinfo.Rto = tcpStats.retransTimeouts -+ tcpinfo.Ato = tcpStats.outDelayAcks -+ tcpinfo.Snd_mss = conn.sendMSS -+ tcpinfo.Rcv_mss = conn.sendMSS // dummy -+ tcpinfo.Unacked = 0 // dummy -+ tcpinfo.Sacked = 0 // dummy -+ tcpinfo.Lost = 0 // dummy -+ tcpinfo.Retrans = conn.reXmtCount -+ tcpinfo.Fackets = 0 // dummy -+ tcpinfo.Last_data_sent = uint32(*(*uint64)(unsafe.Pointer(&conn.lastActivity[0]))) -+ tcpinfo.Last_ack_sent = uint32(*(*uint64)(unsafe.Pointer(&conn.outOldestTime[0]))) -+ tcpinfo.Last_data_recv = uint32(*(*uint64)(unsafe.Pointer(&conn.inOldestTime[0]))) -+ tcpinfo.Last_ack_recv = uint32(*(*uint64)(unsafe.Pointer(&conn.inOldestTime[0]))) -+ tcpinfo.Pmtu = conn.sendMSS // dummy, NWMIfRouteMtu is a candidate -+ tcpinfo.Rcv_ssthresh = conn.ssThresh -+ tcpinfo.Rtt = conn.roundTripTime -+ tcpinfo.Rttvar = conn.roundTripVar -+ tcpinfo.Snd_ssthresh = conn.ssThresh // dummy -+ tcpinfo.Snd_cwnd = conn.congestionWnd -+ tcpinfo.Advmss = conn.sendMSS // dummy -+ tcpinfo.Reordering = 0 // dummy -+ tcpinfo.Rcv_rtt = conn.roundTripTime // dummy -+ tcpinfo.Rcv_space = conn.sendMSS // dummy -+ tcpinfo.Total_retrans = conn.reXmtCount -+ -+ svcUnload(&svcNameTable[svc_EZBNMIF4][0], EZBNMIF4) -+ -+ return &tcpinfo, nil -+} -+ -+// GetsockoptString returns the string value of the socket option opt for the -+// socket associated with fd at the given socket level. -+func GetsockoptString(fd, level, opt int) (string, error) { -+ buf := make([]byte, 256) -+ vallen := _Socklen(len(buf)) -+ err := getsockopt(fd, level, opt, unsafe.Pointer(&buf[0]), &vallen) -+ if err != nil { -+ return "", err -+ } -+ -+ return string(buf[:vallen-1]), nil -+} -+ -+func Recvmsg(fd int, p, oob []byte, flags int) (n, oobn int, recvflags int, from Sockaddr, err error) { -+ var msg Msghdr -+ var rsa RawSockaddrAny -+ msg.Name = (*byte)(unsafe.Pointer(&rsa)) -+ msg.Namelen = SizeofSockaddrAny -+ var iov Iovec -+ if len(p) > 0 { -+ iov.Base = (*byte)(unsafe.Pointer(&p[0])) -+ iov.SetLen(len(p)) -+ } -+ var dummy byte -+ if len(oob) > 0 { -+ // receive at least one normal byte -+ if len(p) == 0 { -+ iov.Base = &dummy -+ iov.SetLen(1) -+ } -+ msg.Control = (*byte)(unsafe.Pointer(&oob[0])) -+ msg.SetControllen(len(oob)) -+ } -+ msg.Iov = &iov -+ msg.Iovlen = 1 -+ if n, err = recvmsg(fd, &msg, flags); err != nil { -+ return -+ } -+ oobn = int(msg.Controllen) -+ recvflags = int(msg.Flags) -+ // source address is only specified if the socket is unconnected -+ if rsa.Addr.Family != AF_UNSPEC { -+ // TODO(neeilan): Remove 0 arg added to get this compiling on z/OS -+ from, err = anyToSockaddr(0, &rsa) -+ } -+ return -+} -+ -+func Sendmsg(fd int, p, oob []byte, to Sockaddr, flags int) (err error) { -+ _, err = SendmsgN(fd, p, oob, to, flags) -+ return -+} -+ -+func SendmsgN(fd int, p, oob []byte, to Sockaddr, flags int) (n int, err error) { -+ var ptr unsafe.Pointer -+ var salen _Socklen -+ if to != nil { -+ var err error -+ ptr, salen, err = to.sockaddr() -+ if err != nil { -+ return 0, err -+ } -+ } -+ var msg Msghdr -+ msg.Name = (*byte)(unsafe.Pointer(ptr)) -+ msg.Namelen = int32(salen) -+ var iov Iovec -+ if len(p) > 0 { -+ iov.Base = (*byte)(unsafe.Pointer(&p[0])) -+ iov.SetLen(len(p)) -+ } -+ var dummy byte -+ if len(oob) > 0 { -+ // send at least one normal byte -+ if len(p) == 0 { -+ iov.Base = &dummy -+ iov.SetLen(1) -+ } -+ msg.Control = (*byte)(unsafe.Pointer(&oob[0])) -+ msg.SetControllen(len(oob)) -+ } -+ msg.Iov = &iov -+ msg.Iovlen = 1 -+ if n, err = sendmsg(fd, &msg, flags); err != nil { -+ return 0, err -+ } -+ if len(oob) > 0 && len(p) == 0 { -+ n = 0 -+ } -+ return n, nil -+} -+ -+func Opendir(name string) (uintptr, error) { -+ p, err := BytePtrFromString(name) -+ if err != nil { -+ return 0, err -+ } -+ dir, _, e := syscall_syscall(SYS___OPENDIR_A, uintptr(unsafe.Pointer(p)), 0, 0) -+ runtime.KeepAlive(unsafe.Pointer(p)) -+ if e != 0 { -+ err = errnoErr(e) -+ } -+ return dir, err -+} -+ -+// clearsyscall.Errno resets the errno value to 0. -+func clearErrno() -+ -+func Readdir(dir uintptr) (*Dirent, error) { -+ var ent Dirent -+ var res uintptr -+ // __readdir_r_a returns errno at the end of the directory stream, rather than 0. -+ // Therefore to avoid false positives we clear errno before calling it. -+ -+ // TODO(neeilan): Commented this out to get sys/unix compiling on z/OS. Uncomment and fix. Error: "undefined: clearsyscall" -+ //clearsyscall.Errno() // TODO(mundaym): check pre-emption rules. -+ -+ e, _, _ := syscall_syscall(SYS___READDIR_R_A, dir, uintptr(unsafe.Pointer(&ent)), uintptr(unsafe.Pointer(&res))) -+ var err error -+ if e != 0 { -+ err = errnoErr(Errno(e)) -+ } -+ if res == 0 { -+ return nil, err -+ } -+ return &ent, err -+} -+ -+func Closedir(dir uintptr) error { -+ _, _, e := syscall_syscall(SYS_CLOSEDIR, dir, 0, 0) -+ if e != 0 { -+ return errnoErr(e) -+ } -+ return nil -+} -+ -+func Seekdir(dir uintptr, pos int) { -+ _, _, _ = syscall_syscall(SYS_SEEKDIR, dir, uintptr(pos), 0) -+} -+ -+func Telldir(dir uintptr) (int, error) { -+ p, _, e := syscall_syscall(SYS_TELLDIR, dir, 0, 0) -+ pos := int(p) -+ if pos == -1 { -+ return pos, errnoErr(e) -+ } -+ return pos, nil -+} -+ -+// FcntlFlock performs a fcntl syscall for the F_GETLK, F_SETLK or F_SETLKW command. -+func FcntlFlock(fd uintptr, cmd int, lk *Flock_t) error { -+ // struct flock is packed on z/OS. We can't emulate that in Go so -+ // instead we pack it here. -+ var flock [24]byte -+ *(*int16)(unsafe.Pointer(&flock[0])) = lk.Type -+ *(*int16)(unsafe.Pointer(&flock[2])) = lk.Whence -+ *(*int64)(unsafe.Pointer(&flock[4])) = lk.Start -+ *(*int64)(unsafe.Pointer(&flock[12])) = lk.Len -+ *(*int32)(unsafe.Pointer(&flock[20])) = lk.Pid -+ _, _, errno := syscall_syscall(SYS_FCNTL, fd, uintptr(cmd), uintptr(unsafe.Pointer(&flock))) -+ lk.Type = *(*int16)(unsafe.Pointer(&flock[0])) -+ lk.Whence = *(*int16)(unsafe.Pointer(&flock[2])) -+ lk.Start = *(*int64)(unsafe.Pointer(&flock[4])) -+ lk.Len = *(*int64)(unsafe.Pointer(&flock[12])) -+ lk.Pid = *(*int32)(unsafe.Pointer(&flock[20])) -+ if errno == 0 { -+ return nil -+ } -+ return errno -+} -+ -+func Flock(fd int, how int) error { -+ -+ var flock_type int16 -+ var fcntl_cmd int -+ -+ switch how { -+ case LOCK_SH | LOCK_NB: -+ flock_type = F_RDLCK -+ fcntl_cmd = F_SETLK -+ case LOCK_EX | LOCK_NB: -+ flock_type = F_WRLCK -+ fcntl_cmd = F_SETLK -+ case LOCK_EX: -+ flock_type = F_WRLCK -+ fcntl_cmd = F_SETLKW -+ case LOCK_UN: -+ flock_type = F_UNLCK -+ fcntl_cmd = F_SETLKW -+ default: -+ } -+ -+ flock := Flock_t{ -+ Type: int16(flock_type), -+ Whence: int16(0), -+ Start: int64(0), -+ Len: int64(0), -+ Pid: int32(Getppid()), -+ } -+ -+ err := FcntlFlock(uintptr(fd), fcntl_cmd, &flock) -+ return err -+} -+ -+func Mlock(b []byte) (err error) { -+ _, _, e1 := syscall_syscall(SYS___MLOCKALL, _BPX_NONSWAP, 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+func Mlock2(b []byte, flags int) (err error) { -+ _, _, e1 := syscall_syscall(SYS___MLOCKALL, _BPX_NONSWAP, 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+func Mlockall(flags int) (err error) { -+ _, _, e1 := syscall_syscall(SYS___MLOCKALL, _BPX_NONSWAP, 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+func Munlock(b []byte) (err error) { -+ _, _, e1 := syscall_syscall(SYS___MLOCKALL, _BPX_SWAP, 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+func Munlockall() (err error) { -+ _, _, e1 := syscall_syscall(SYS___MLOCKALL, _BPX_SWAP, 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+func ClockGettime(clockid int32, ts *Timespec) error { -+ -+ var ticks_per_sec uint32 = 100 //TODO(kenan): value is currently hardcoded; need sysconf() call otherwise -+ var nsec_per_sec int64 = 1000000000 -+ -+ if ts == nil { -+ return EFAULT -+ } -+ if clockid == CLOCK_REALTIME || clockid == CLOCK_MONOTONIC { -+ var nanotime int64 = runtime.Nanotime1() -+ ts.Sec = nanotime / nsec_per_sec -+ ts.Nsec = nanotime % nsec_per_sec -+ } else if clockid == CLOCK_PROCESS_CPUTIME_ID || clockid == CLOCK_THREAD_CPUTIME_ID { -+ var tm Tms -+ _, err := Times(&tm) -+ if err != nil { -+ return EFAULT -+ } -+ ts.Sec = int64(tm.Utime / ticks_per_sec) -+ ts.Nsec = int64(tm.Utime) * nsec_per_sec / int64(ticks_per_sec) -+ } else { -+ return EINVAL -+ } -+ return nil -+} -+ -+func Statfs(path string, stat *Statfs_t) (err error) { -+ fd, err := open(path, O_RDONLY, 0) -+ defer Close(fd) -+ if err != nil { -+ return err -+ } -+ return Fstatfs(fd, stat) -+} -+ -+var ( -+ Stdin = 0 -+ Stdout = 1 -+ Stderr = 2 -+) -+ -+// Do the interface allocations only once for common -+// Errno values. -+var ( -+ errEAGAIN error = syscall.EAGAIN -+ errEINVAL error = syscall.EINVAL -+ errENOENT error = syscall.ENOENT -+) -+ -+var ( -+ signalNameMapOnce sync.Once -+ signalNameMap map[string]syscall.Signal -+) -+ -+// errnoErr returns common boxed Errno values, to prevent -+// allocations at runtime. -+func errnoErr(e Errno) error { -+ switch e { -+ case 0: -+ return nil -+ case EAGAIN: -+ return errEAGAIN -+ case EINVAL: -+ return errEINVAL -+ case ENOENT: -+ return errENOENT -+ } -+ return e -+} -+ -+// ErrnoName returns the error name for error number e. -+func ErrnoName(e Errno) string { -+ i := sort.Search(len(errorList), func(i int) bool { -+ return errorList[i].num >= e -+ }) -+ if i < len(errorList) && errorList[i].num == e { -+ return errorList[i].name -+ } -+ return "" -+} -+ -+// SignalName returns the signal name for signal number s. -+func SignalName(s syscall.Signal) string { -+ i := sort.Search(len(signalList), func(i int) bool { -+ return signalList[i].num >= s -+ }) -+ if i < len(signalList) && signalList[i].num == s { -+ return signalList[i].name -+ } -+ return "" -+} -+ -+// SignalNum returns the syscall.Signal for signal named s, -+// or 0 if a signal with such name is not found. -+// The signal name should start with "SIG". -+func SignalNum(s string) syscall.Signal { -+ signalNameMapOnce.Do(func() { -+ signalNameMap = make(map[string]syscall.Signal, len(signalList)) -+ for _, signal := range signalList { -+ signalNameMap[signal.name] = signal.num -+ } -+ }) -+ return signalNameMap[s] -+} -+ -+// clen returns the index of the first NULL byte in n or len(n) if n contains no NULL byte. -+func clen(n []byte) int { -+ i := bytes.IndexByte(n, 0) -+ if i == -1 { -+ i = len(n) -+ } -+ return i -+} -+ -+// Mmap manager, for use by operating system-specific implementations. -+ -+type mmapper struct { -+ sync.Mutex -+ active map[*byte][]byte // active mappings; key is last byte in mapping -+ mmap func(addr, length uintptr, prot, flags, fd int, offset int64) (uintptr, error) -+ munmap func(addr uintptr, length uintptr) error -+} -+ -+func (m *mmapper) Mmap(fd int, offset int64, length int, prot int, flags int) (data []byte, err error) { -+ if length <= 0 { -+ return nil, EINVAL -+ } -+ -+ // Map the requested memory. -+ addr, errno := m.mmap(0, uintptr(length), prot, flags, fd, offset) -+ if errno != nil { -+ return nil, errno -+ } -+ -+ // Slice memory layout -+ var sl = struct { -+ addr uintptr -+ len int -+ cap int -+ }{addr, length, length} -+ -+ // Use unsafe to turn sl into a []byte. -+ b := *(*[]byte)(unsafe.Pointer(&sl)) -+ -+ // Register mapping in m and return it. -+ p := &b[cap(b)-1] -+ m.Lock() -+ defer m.Unlock() -+ m.active[p] = b -+ return b, nil -+} -+ -+func (m *mmapper) Munmap(data []byte) (err error) { -+ if len(data) == 0 || len(data) != cap(data) { -+ return EINVAL -+ } -+ -+ // Find the base of the mapping. -+ p := &data[cap(data)-1] -+ m.Lock() -+ defer m.Unlock() -+ b := m.active[p] -+ if b == nil || &b[0] != &data[0] { -+ return EINVAL -+ } -+ -+ // Unmap the memory and update m. -+ if errno := m.munmap(uintptr(unsafe.Pointer(&b[0])), uintptr(len(b))); errno != nil { -+ return errno -+ } -+ delete(m.active, p) -+ return nil -+} -+ -+func Read(fd int, p []byte) (n int, err error) { -+ n, err = read(fd, p) -+ if raceenabled { -+ if n > 0 { -+ raceWriteRange(unsafe.Pointer(&p[0]), n) -+ } -+ if err == nil { -+ raceAcquire(unsafe.Pointer(&ioSync)) -+ } -+ } -+ return -+} -+ -+func Write(fd int, p []byte) (n int, err error) { -+ if raceenabled { -+ raceReleaseMerge(unsafe.Pointer(&ioSync)) -+ } -+ n, err = write(fd, p) -+ if raceenabled && n > 0 { -+ raceReadRange(unsafe.Pointer(&p[0]), n) -+ } -+ return -+} -+ -+// For testing: clients can set this flag to force -+// creation of IPv6 sockets to return EAFNOSUPPORT. -+var SocketDisableIPv6 bool -+ -+// Sockaddr represents a socket address. -+type Sockaddr interface { -+ sockaddr() (ptr unsafe.Pointer, len _Socklen, err error) // lowercase; only we can define Sockaddrs -+} -+ -+// SockaddrInet4 implements the Sockaddr interface for AF_INET type sockets. -+type SockaddrInet4 struct { -+ Port int -+ Addr [4]byte -+ raw RawSockaddrInet4 -+} -+ -+// SockaddrInet6 implements the Sockaddr interface for AF_INET6 type sockets. -+type SockaddrInet6 struct { -+ Port int -+ ZoneId uint32 -+ Addr [16]byte -+ raw RawSockaddrInet6 -+} -+ -+// SockaddrUnix implements the Sockaddr interface for AF_UNIX type sockets. -+type SockaddrUnix struct { -+ Name string -+ raw RawSockaddrUnix -+} -+ -+func Bind(fd int, sa Sockaddr) (err error) { -+ ptr, n, err := sa.sockaddr() -+ if err != nil { -+ return err -+ } -+ return bind(fd, ptr, n) -+} -+ -+func Connect(fd int, sa Sockaddr) (err error) { -+ ptr, n, err := sa.sockaddr() -+ if err != nil { -+ return err -+ } -+ return connect(fd, ptr, n) -+} -+ -+func Getpeername(fd int) (sa Sockaddr, err error) { -+ var rsa RawSockaddrAny -+ var len _Socklen = SizeofSockaddrAny -+ if err = getpeername(fd, &rsa, &len); err != nil { -+ return -+ } -+ return anyToSockaddr(fd, &rsa) -+} -+ -+func GetsockoptByte(fd, level, opt int) (value byte, err error) { -+ var n byte -+ vallen := _Socklen(1) -+ err = getsockopt(fd, level, opt, unsafe.Pointer(&n), &vallen) -+ return n, err -+} -+ -+func GetsockoptInt(fd, level, opt int) (value int, err error) { -+ var n int32 -+ vallen := _Socklen(4) -+ err = getsockopt(fd, level, opt, unsafe.Pointer(&n), &vallen) -+ return int(n), err -+} -+ -+func GetsockoptInet4Addr(fd, level, opt int) (value [4]byte, err error) { -+ vallen := _Socklen(4) -+ err = getsockopt(fd, level, opt, unsafe.Pointer(&value[0]), &vallen) -+ return value, err -+} -+ -+func GetsockoptIPMreq(fd, level, opt int) (*IPMreq, error) { -+ var value IPMreq -+ vallen := _Socklen(SizeofIPMreq) -+ err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen) -+ return &value, err -+} -+ -+func GetsockoptIPv6Mreq(fd, level, opt int) (*IPv6Mreq, error) { -+ var value IPv6Mreq -+ vallen := _Socklen(SizeofIPv6Mreq) -+ err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen) -+ return &value, err -+} -+ -+func GetsockoptIPv6MTUInfo(fd, level, opt int) (*IPv6MTUInfo, error) { -+ var value IPv6MTUInfo -+ vallen := _Socklen(SizeofIPv6MTUInfo) -+ err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen) -+ return &value, err -+} -+ -+func GetsockoptICMPv6Filter(fd, level, opt int) (*ICMPv6Filter, error) { -+ var value ICMPv6Filter -+ vallen := _Socklen(SizeofICMPv6Filter) -+ err := getsockopt(fd, level, opt, unsafe.Pointer(&value), &vallen) -+ return &value, err -+} -+ -+func GetsockoptLinger(fd, level, opt int) (*Linger, error) { -+ var linger Linger -+ vallen := _Socklen(SizeofLinger) -+ err := getsockopt(fd, level, opt, unsafe.Pointer(&linger), &vallen) -+ return &linger, err -+} -+ -+func GetsockoptTimeval(fd, level, opt int) (*Timeval, error) { -+ var tv Timeval -+ vallen := _Socklen(unsafe.Sizeof(tv)) -+ err := getsockopt(fd, level, opt, unsafe.Pointer(&tv), &vallen) -+ return &tv, err -+} -+ -+func GetsockoptUint64(fd, level, opt int) (value uint64, err error) { -+ var n uint64 -+ vallen := _Socklen(8) -+ err = getsockopt(fd, level, opt, unsafe.Pointer(&n), &vallen) -+ return n, err -+} -+ -+func Recvfrom(fd int, p []byte, flags int) (n int, from Sockaddr, err error) { -+ var rsa RawSockaddrAny -+ var len _Socklen = SizeofSockaddrAny -+ if n, err = recvfrom(fd, p, flags, &rsa, &len); err != nil { -+ return -+ } -+ if rsa.Addr.Family != AF_UNSPEC { -+ from, err = anyToSockaddr(fd, &rsa) -+ } -+ return -+} -+ -+func Sendto(fd int, p []byte, flags int, to Sockaddr) (err error) { -+ ptr, n, err := to.sockaddr() -+ if err != nil { -+ return err -+ } -+ return sendto(fd, p, flags, ptr, n) -+} -+ -+func SetsockoptByte(fd, level, opt int, value byte) (err error) { -+ return setsockopt(fd, level, opt, unsafe.Pointer(&value), 1) -+} -+ -+func SetsockoptInt(fd, level, opt int, value int) (err error) { -+ var n = int32(value) -+ return setsockopt(fd, level, opt, unsafe.Pointer(&n), 4) -+} -+ -+func SetsockoptInet4Addr(fd, level, opt int, value [4]byte) (err error) { -+ return setsockopt(fd, level, opt, unsafe.Pointer(&value[0]), 4) -+} -+ -+func SetsockoptIPMreq(fd, level, opt int, mreq *IPMreq) (err error) { -+ return setsockopt(fd, level, opt, unsafe.Pointer(mreq), SizeofIPMreq) -+} -+ -+func SetsockoptIPv6Mreq(fd, level, opt int, mreq *IPv6Mreq) (err error) { -+ return setsockopt(fd, level, opt, unsafe.Pointer(mreq), SizeofIPv6Mreq) -+} -+ -+func SetsockoptICMPv6Filter(fd, level, opt int, filter *ICMPv6Filter) error { -+ return setsockopt(fd, level, opt, unsafe.Pointer(filter), SizeofICMPv6Filter) -+} -+ -+func SetsockoptLinger(fd, level, opt int, l *Linger) (err error) { -+ return setsockopt(fd, level, opt, unsafe.Pointer(l), SizeofLinger) -+} -+ -+func SetsockoptString(fd, level, opt int, s string) (err error) { -+ var p unsafe.Pointer -+ if len(s) > 0 { -+ p = unsafe.Pointer(&[]byte(s)[0]) -+ } -+ return setsockopt(fd, level, opt, p, uintptr(len(s))) -+} -+ -+func SetsockoptTimeval(fd, level, opt int, tv *Timeval) (err error) { -+ return setsockopt(fd, level, opt, unsafe.Pointer(tv), unsafe.Sizeof(*tv)) -+} -+ -+func SetsockoptUint64(fd, level, opt int, value uint64) (err error) { -+ return setsockopt(fd, level, opt, unsafe.Pointer(&value), 8) -+} -+ -+func Socket(domain, typ, proto int) (fd int, err error) { -+ if domain == AF_INET6 && SocketDisableIPv6 { -+ return -1, EAFNOSUPPORT -+ } -+ fd, err = socket(domain, typ, proto) -+ return -+} -+ -+func Socketpair(domain, typ, proto int) (fd [2]int, err error) { -+ var fdx [2]int32 -+ err = socketpair(domain, typ, proto, &fdx) -+ if err == nil { -+ fd[0] = int(fdx[0]) -+ fd[1] = int(fdx[1]) -+ } -+ return -+} -+ -+var ioSync int64 -+ -+func CloseOnExec(fd int) { fcntl(fd, F_SETFD, FD_CLOEXEC) } -+ -+func SetNonblock(fd int, nonblocking bool) (err error) { -+ flag, err := fcntl(fd, F_GETFL, 0) -+ if err != nil { -+ return err -+ } -+ if nonblocking { -+ flag |= O_NONBLOCK -+ } else { -+ flag &= ^O_NONBLOCK -+ } -+ _, err = fcntl(fd, F_SETFL, flag) -+ return err -+} -+ -+// Exec calls execve(2), which replaces the calling executable in the process -+// tree. argv0 should be the full path to an executable ("/bin/ls") and the -+// executable name should also be the first argument in argv (["ls", "-l"]). -+// envv are the environment variables that should be passed to the new -+// process (["USER=go", "PWD=/tmp"]). -+func Exec(argv0 string, argv []string, envv []string) error { -+ return syscall.Exec(argv0, argv, envv) -+} -+ -+func Mount(source string, target string, fstype string, flags uintptr, data string) (err error) { -+ if needspace := 8 - len(fstype); needspace <= 0 { -+ fstype = fstype[:8] -+ } else { -+ fstype += " "[:needspace] -+ } -+ return mount_LE(target, source, fstype, uint32(flags), int32(len(data)), data) -+} -+ -+func Unmount(name string, mtm int) (err error) { -+ // mountpoint is always a full path and starts with a '/' -+ // check if input string is not a mountpoint but a filesystem name -+ if name[0] != '/' { -+ return unmount(name, mtm) -+ } -+ // treat name as mountpoint -+ b2s := func(arr []byte) string { -+ nulli := bytes.IndexByte(arr, 0) -+ if nulli == -1 { -+ return string(arr) -+ } else { -+ return string(arr[:nulli]) -+ } -+ } -+ var buffer struct { -+ header W_Mnth -+ fsinfo [64]W_Mntent -+ } -+ fsCount, err := W_Getmntent_A((*byte)(unsafe.Pointer(&buffer)), int(unsafe.Sizeof(buffer))) -+ if err != nil { -+ return err -+ } -+ if fsCount == 0 { -+ return EINVAL -+ } -+ for i := 0; i < fsCount; i++ { -+ if b2s(buffer.fsinfo[i].Mountpoint[:]) == name { -+ err = unmount(b2s(buffer.fsinfo[i].Fsname[:]), mtm) -+ break -+ } -+ } -+ return err -+} -diff --git a/vendor/golang.org/x/sys/unix/sysvshm_linux.go b/vendor/golang.org/x/sys/unix/sysvshm_linux.go -new file mode 100644 -index 0000000..2c3a443 ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/sysvshm_linux.go -@@ -0,0 +1,21 @@ -+// Copyright 2021 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build linux -+// +build linux -+ -+package unix -+ -+import "runtime" -+ -+// SysvShmCtl performs control operations on the shared memory segment -+// specified by id. -+func SysvShmCtl(id, cmd int, desc *SysvShmDesc) (result int, err error) { -+ if runtime.GOARCH == "arm" || -+ runtime.GOARCH == "mips64" || runtime.GOARCH == "mips64le" { -+ cmd |= ipc_64 -+ } -+ -+ return shmctl(id, cmd, desc) -+} -diff --git a/vendor/golang.org/x/sys/unix/sysvshm_unix.go b/vendor/golang.org/x/sys/unix/sysvshm_unix.go -new file mode 100644 -index 0000000..0bb4c8d ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/sysvshm_unix.go -@@ -0,0 +1,61 @@ -+// Copyright 2021 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build (darwin && !ios) || linux -+// +build darwin,!ios linux -+ -+package unix -+ -+import ( -+ "unsafe" -+ -+ "golang.org/x/sys/internal/unsafeheader" -+) -+ -+// SysvShmAttach attaches the Sysv shared memory segment associated with the -+// shared memory identifier id. -+func SysvShmAttach(id int, addr uintptr, flag int) ([]byte, error) { -+ addr, errno := shmat(id, addr, flag) -+ if errno != nil { -+ return nil, errno -+ } -+ -+ // Retrieve the size of the shared memory to enable slice creation -+ var info SysvShmDesc -+ -+ _, err := SysvShmCtl(id, IPC_STAT, &info) -+ if err != nil { -+ // release the shared memory if we can't find the size -+ -+ // ignoring error from shmdt as there's nothing sensible to return here -+ shmdt(addr) -+ return nil, err -+ } -+ -+ // Use unsafe to convert addr into a []byte. -+ // TODO: convert to unsafe.Slice once we can assume Go 1.17 -+ var b []byte -+ hdr := (*unsafeheader.Slice)(unsafe.Pointer(&b)) -+ hdr.Data = unsafe.Pointer(addr) -+ hdr.Cap = int(info.Segsz) -+ hdr.Len = int(info.Segsz) -+ return b, nil -+} -+ -+// SysvShmDetach unmaps the shared memory slice returned from SysvShmAttach. -+// -+// It is not safe to use the slice after calling this function. -+func SysvShmDetach(data []byte) error { -+ if len(data) == 0 { -+ return EINVAL -+ } -+ -+ return shmdt(uintptr(unsafe.Pointer(&data[0]))) -+} -+ -+// SysvShmGet returns the Sysv shared memory identifier associated with key. -+// If the IPC_CREAT flag is specified a new segment is created. -+func SysvShmGet(key, size, flag int) (id int, err error) { -+ return shmget(key, size, flag) -+} -diff --git a/vendor/golang.org/x/sys/unix/sysvshm_unix_other.go b/vendor/golang.org/x/sys/unix/sysvshm_unix_other.go -new file mode 100644 -index 0000000..71bddef ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/sysvshm_unix_other.go -@@ -0,0 +1,14 @@ -+// Copyright 2021 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build darwin && !ios -+// +build darwin,!ios -+ -+package unix -+ -+// SysvShmCtl performs control operations on the shared memory segment -+// specified by id. -+func SysvShmCtl(id, cmd int, desc *SysvShmDesc) (result int, err error) { -+ return shmctl(id, cmd, desc) -+} -diff --git a/vendor/golang.org/x/sys/unix/timestruct.go b/vendor/golang.org/x/sys/unix/timestruct.go -index 4a672f5..3d89304 100644 ---- a/vendor/golang.org/x/sys/unix/timestruct.go -+++ b/vendor/golang.org/x/sys/unix/timestruct.go -@@ -2,18 +2,17 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris -+//go:build aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos -+// +build aix darwin dragonfly freebsd linux netbsd openbsd solaris zos - - package unix - - import "time" - --// TimespecToNsec converts a Timespec value into a number of --// nanoseconds since the Unix epoch. --func TimespecToNsec(ts Timespec) int64 { return int64(ts.Sec)*1e9 + int64(ts.Nsec) } -+// TimespecToNSec returns the time stored in ts as nanoseconds. -+func TimespecToNsec(ts Timespec) int64 { return ts.Nano() } - --// NsecToTimespec takes a number of nanoseconds since the Unix epoch --// and returns the corresponding Timespec value. -+// NsecToTimespec converts a number of nanoseconds into a Timespec. - func NsecToTimespec(nsec int64) Timespec { - sec := nsec / 1e9 - nsec = nsec % 1e9 -@@ -42,12 +41,10 @@ func TimeToTimespec(t time.Time) (Timespec, error) { - return ts, nil - } - --// TimevalToNsec converts a Timeval value into a number of nanoseconds --// since the Unix epoch. --func TimevalToNsec(tv Timeval) int64 { return int64(tv.Sec)*1e9 + int64(tv.Usec)*1e3 } -+// TimevalToNsec returns the time stored in tv as nanoseconds. -+func TimevalToNsec(tv Timeval) int64 { return tv.Nano() } - --// NsecToTimeval takes a number of nanoseconds since the Unix epoch --// and returns the corresponding Timeval value. -+// NsecToTimeval converts a number of nanoseconds into a Timeval. - func NsecToTimeval(nsec int64) Timeval { - nsec += 999 // round up to microsecond - usec := nsec % 1e9 / 1e3 -@@ -59,24 +56,22 @@ func NsecToTimeval(nsec int64) Timeval { - return setTimeval(sec, usec) - } - --// Unix returns ts as the number of seconds and nanoseconds elapsed since the --// Unix epoch. -+// Unix returns the time stored in ts as seconds plus nanoseconds. - func (ts *Timespec) Unix() (sec int64, nsec int64) { - return int64(ts.Sec), int64(ts.Nsec) - } - --// Unix returns tv as the number of seconds and nanoseconds elapsed since the --// Unix epoch. -+// Unix returns the time stored in tv as seconds plus nanoseconds. - func (tv *Timeval) Unix() (sec int64, nsec int64) { - return int64(tv.Sec), int64(tv.Usec) * 1000 - } - --// Nano returns ts as the number of nanoseconds elapsed since the Unix epoch. -+// Nano returns the time stored in ts as nanoseconds. - func (ts *Timespec) Nano() int64 { - return int64(ts.Sec)*1e9 + int64(ts.Nsec) - } - --// Nano returns tv as the number of nanoseconds elapsed since the Unix epoch. -+// Nano returns the time stored in tv as nanoseconds. - func (tv *Timeval) Nano() int64 { - return int64(tv.Sec)*1e9 + int64(tv.Usec)*1000 - } -diff --git a/vendor/golang.org/x/sys/unix/xattr_bsd.go b/vendor/golang.org/x/sys/unix/xattr_bsd.go -index 30c1d71..25df1e3 100644 ---- a/vendor/golang.org/x/sys/unix/xattr_bsd.go -+++ b/vendor/golang.org/x/sys/unix/xattr_bsd.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build freebsd || netbsd - // +build freebsd netbsd - - package unix -diff --git a/vendor/golang.org/x/sys/unix/zerrors_aix_ppc.go b/vendor/golang.org/x/sys/unix/zerrors_aix_ppc.go -index 104994b..ca9799b 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_aix_ppc.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_aix_ppc.go -@@ -1,6 +1,7 @@ - // mkerrors.sh -maix32 - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build ppc && aix - // +build ppc,aix - - // Created by cgo -godefs - DO NOT EDIT -diff --git a/vendor/golang.org/x/sys/unix/zerrors_aix_ppc64.go b/vendor/golang.org/x/sys/unix/zerrors_aix_ppc64.go -index 4fc8d30..200c8c2 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_aix_ppc64.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_aix_ppc64.go -@@ -1,6 +1,7 @@ - // mkerrors.sh -maix64 - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build ppc64 && aix - // +build ppc64,aix - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. -diff --git a/vendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go -index e3ff2ee..476a1c7 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go -@@ -1,6 +1,7 @@ - // mkerrors.sh -m64 - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build amd64 && darwin - // +build amd64,darwin - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. -@@ -11,1475 +12,1582 @@ package unix - import "syscall" - - const ( -- AF_APPLETALK = 0x10 -- AF_CCITT = 0xa -- AF_CHAOS = 0x5 -- AF_CNT = 0x15 -- AF_COIP = 0x14 -- AF_DATAKIT = 0x9 -- AF_DECnet = 0xc -- AF_DLI = 0xd -- AF_E164 = 0x1c -- AF_ECMA = 0x8 -- AF_HYLINK = 0xf -- AF_IEEE80211 = 0x25 -- AF_IMPLINK = 0x3 -- AF_INET = 0x2 -- AF_INET6 = 0x1e -- AF_IPX = 0x17 -- AF_ISDN = 0x1c -- AF_ISO = 0x7 -- AF_LAT = 0xe -- AF_LINK = 0x12 -- AF_LOCAL = 0x1 -- AF_MAX = 0x28 -- AF_NATM = 0x1f -- AF_NDRV = 0x1b -- AF_NETBIOS = 0x21 -- AF_NS = 0x6 -- AF_OSI = 0x7 -- AF_PPP = 0x22 -- AF_PUP = 0x4 -- AF_RESERVED_36 = 0x24 -- AF_ROUTE = 0x11 -- AF_SIP = 0x18 -- AF_SNA = 0xb -- AF_SYSTEM = 0x20 -- AF_UNIX = 0x1 -- AF_UNSPEC = 0x0 -- AF_UTUN = 0x26 -- ALTWERASE = 0x200 -- ATTR_BIT_MAP_COUNT = 0x5 -- ATTR_CMN_ACCESSMASK = 0x20000 -- ATTR_CMN_ACCTIME = 0x1000 -- ATTR_CMN_ADDEDTIME = 0x10000000 -- ATTR_CMN_BKUPTIME = 0x2000 -- ATTR_CMN_CHGTIME = 0x800 -- ATTR_CMN_CRTIME = 0x200 -- ATTR_CMN_DATA_PROTECT_FLAGS = 0x40000000 -- ATTR_CMN_DEVID = 0x2 -- ATTR_CMN_DOCUMENT_ID = 0x100000 -- ATTR_CMN_ERROR = 0x20000000 -- ATTR_CMN_EXTENDED_SECURITY = 0x400000 -- ATTR_CMN_FILEID = 0x2000000 -- ATTR_CMN_FLAGS = 0x40000 -- ATTR_CMN_FNDRINFO = 0x4000 -- ATTR_CMN_FSID = 0x4 -- ATTR_CMN_FULLPATH = 0x8000000 -- ATTR_CMN_GEN_COUNT = 0x80000 -- ATTR_CMN_GRPID = 0x10000 -- ATTR_CMN_GRPUUID = 0x1000000 -- ATTR_CMN_MODTIME = 0x400 -- ATTR_CMN_NAME = 0x1 -- ATTR_CMN_NAMEDATTRCOUNT = 0x80000 -- ATTR_CMN_NAMEDATTRLIST = 0x100000 -- ATTR_CMN_OBJID = 0x20 -- ATTR_CMN_OBJPERMANENTID = 0x40 -- ATTR_CMN_OBJTAG = 0x10 -- ATTR_CMN_OBJTYPE = 0x8 -- ATTR_CMN_OWNERID = 0x8000 -- ATTR_CMN_PARENTID = 0x4000000 -- ATTR_CMN_PAROBJID = 0x80 -- ATTR_CMN_RETURNED_ATTRS = 0x80000000 -- ATTR_CMN_SCRIPT = 0x100 -- ATTR_CMN_SETMASK = 0x41c7ff00 -- ATTR_CMN_USERACCESS = 0x200000 -- ATTR_CMN_UUID = 0x800000 -- ATTR_CMN_VALIDMASK = 0xffffffff -- ATTR_CMN_VOLSETMASK = 0x6700 -- ATTR_FILE_ALLOCSIZE = 0x4 -- ATTR_FILE_CLUMPSIZE = 0x10 -- ATTR_FILE_DATAALLOCSIZE = 0x400 -- ATTR_FILE_DATAEXTENTS = 0x800 -- ATTR_FILE_DATALENGTH = 0x200 -- ATTR_FILE_DEVTYPE = 0x20 -- ATTR_FILE_FILETYPE = 0x40 -- ATTR_FILE_FORKCOUNT = 0x80 -- ATTR_FILE_FORKLIST = 0x100 -- ATTR_FILE_IOBLOCKSIZE = 0x8 -- ATTR_FILE_LINKCOUNT = 0x1 -- ATTR_FILE_RSRCALLOCSIZE = 0x2000 -- ATTR_FILE_RSRCEXTENTS = 0x4000 -- ATTR_FILE_RSRCLENGTH = 0x1000 -- ATTR_FILE_SETMASK = 0x20 -- ATTR_FILE_TOTALSIZE = 0x2 -- ATTR_FILE_VALIDMASK = 0x37ff -- ATTR_VOL_ALLOCATIONCLUMP = 0x40 -- ATTR_VOL_ATTRIBUTES = 0x40000000 -- ATTR_VOL_CAPABILITIES = 0x20000 -- ATTR_VOL_DIRCOUNT = 0x400 -- ATTR_VOL_ENCODINGSUSED = 0x10000 -- ATTR_VOL_FILECOUNT = 0x200 -- ATTR_VOL_FSTYPE = 0x1 -- ATTR_VOL_INFO = 0x80000000 -- ATTR_VOL_IOBLOCKSIZE = 0x80 -- ATTR_VOL_MAXOBJCOUNT = 0x800 -- ATTR_VOL_MINALLOCATION = 0x20 -- ATTR_VOL_MOUNTEDDEVICE = 0x8000 -- ATTR_VOL_MOUNTFLAGS = 0x4000 -- ATTR_VOL_MOUNTPOINT = 0x1000 -- ATTR_VOL_NAME = 0x2000 -- ATTR_VOL_OBJCOUNT = 0x100 -- ATTR_VOL_QUOTA_SIZE = 0x10000000 -- ATTR_VOL_RESERVED_SIZE = 0x20000000 -- ATTR_VOL_SETMASK = 0x80002000 -- ATTR_VOL_SIGNATURE = 0x2 -- ATTR_VOL_SIZE = 0x4 -- ATTR_VOL_SPACEAVAIL = 0x10 -- ATTR_VOL_SPACEFREE = 0x8 -- ATTR_VOL_UUID = 0x40000 -- ATTR_VOL_VALIDMASK = 0xf007ffff -- B0 = 0x0 -- B110 = 0x6e -- B115200 = 0x1c200 -- B1200 = 0x4b0 -- B134 = 0x86 -- B14400 = 0x3840 -- B150 = 0x96 -- B1800 = 0x708 -- B19200 = 0x4b00 -- B200 = 0xc8 -- B230400 = 0x38400 -- B2400 = 0x960 -- B28800 = 0x7080 -- B300 = 0x12c -- B38400 = 0x9600 -- B4800 = 0x12c0 -- B50 = 0x32 -- B57600 = 0xe100 -- B600 = 0x258 -- B7200 = 0x1c20 -- B75 = 0x4b -- B76800 = 0x12c00 -- B9600 = 0x2580 -- BIOCFLUSH = 0x20004268 -- BIOCGBLEN = 0x40044266 -- BIOCGDLT = 0x4004426a -- BIOCGDLTLIST = 0xc00c4279 -- BIOCGETIF = 0x4020426b -- BIOCGHDRCMPLT = 0x40044274 -- BIOCGRSIG = 0x40044272 -- BIOCGRTIMEOUT = 0x4010426e -- BIOCGSEESENT = 0x40044276 -- BIOCGSTATS = 0x4008426f -- BIOCIMMEDIATE = 0x80044270 -- BIOCPROMISC = 0x20004269 -- BIOCSBLEN = 0xc0044266 -- BIOCSDLT = 0x80044278 -- BIOCSETF = 0x80104267 -- BIOCSETFNR = 0x8010427e -- BIOCSETIF = 0x8020426c -- BIOCSHDRCMPLT = 0x80044275 -- BIOCSRSIG = 0x80044273 -- BIOCSRTIMEOUT = 0x8010426d -- BIOCSSEESENT = 0x80044277 -- BIOCVERSION = 0x40044271 -- BPF_A = 0x10 -- BPF_ABS = 0x20 -- BPF_ADD = 0x0 -- BPF_ALIGNMENT = 0x4 -- BPF_ALU = 0x4 -- BPF_AND = 0x50 -- BPF_B = 0x10 -- BPF_DIV = 0x30 -- BPF_H = 0x8 -- BPF_IMM = 0x0 -- BPF_IND = 0x40 -- BPF_JA = 0x0 -- BPF_JEQ = 0x10 -- BPF_JGE = 0x30 -- BPF_JGT = 0x20 -- BPF_JMP = 0x5 -- BPF_JSET = 0x40 -- BPF_K = 0x0 -- BPF_LD = 0x0 -- BPF_LDX = 0x1 -- BPF_LEN = 0x80 -- BPF_LSH = 0x60 -- BPF_MAJOR_VERSION = 0x1 -- BPF_MAXBUFSIZE = 0x80000 -- BPF_MAXINSNS = 0x200 -- BPF_MEM = 0x60 -- BPF_MEMWORDS = 0x10 -- BPF_MINBUFSIZE = 0x20 -- BPF_MINOR_VERSION = 0x1 -- BPF_MISC = 0x7 -- BPF_MSH = 0xa0 -- BPF_MUL = 0x20 -- BPF_NEG = 0x80 -- BPF_OR = 0x40 -- BPF_RELEASE = 0x30bb6 -- BPF_RET = 0x6 -- BPF_RSH = 0x70 -- BPF_ST = 0x2 -- BPF_STX = 0x3 -- BPF_SUB = 0x10 -- BPF_TAX = 0x0 -- BPF_TXA = 0x80 -- BPF_W = 0x0 -- BPF_X = 0x8 -- BRKINT = 0x2 -- BS0 = 0x0 -- BS1 = 0x8000 -- BSDLY = 0x8000 -- CFLUSH = 0xf -- CLOCAL = 0x8000 -- CLOCK_MONOTONIC = 0x6 -- CLOCK_MONOTONIC_RAW = 0x4 -- CLOCK_MONOTONIC_RAW_APPROX = 0x5 -- CLOCK_PROCESS_CPUTIME_ID = 0xc -- CLOCK_REALTIME = 0x0 -- CLOCK_THREAD_CPUTIME_ID = 0x10 -- CLOCK_UPTIME_RAW = 0x8 -- CLOCK_UPTIME_RAW_APPROX = 0x9 -- CR0 = 0x0 -- CR1 = 0x1000 -- CR2 = 0x2000 -- CR3 = 0x3000 -- CRDLY = 0x3000 -- CREAD = 0x800 -- CRTSCTS = 0x30000 -- CS5 = 0x0 -- CS6 = 0x100 -- CS7 = 0x200 -- CS8 = 0x300 -- CSIZE = 0x300 -- CSTART = 0x11 -- CSTATUS = 0x14 -- CSTOP = 0x13 -- CSTOPB = 0x400 -- CSUSP = 0x1a -- CTL_HW = 0x6 -- CTL_KERN = 0x1 -- CTL_MAXNAME = 0xc -- CTL_NET = 0x4 -- DLT_A429 = 0xb8 -- DLT_A653_ICM = 0xb9 -- DLT_AIRONET_HEADER = 0x78 -- DLT_AOS = 0xde -- DLT_APPLE_IP_OVER_IEEE1394 = 0x8a -- DLT_ARCNET = 0x7 -- DLT_ARCNET_LINUX = 0x81 -- DLT_ATM_CLIP = 0x13 -- DLT_ATM_RFC1483 = 0xb -- DLT_AURORA = 0x7e -- DLT_AX25 = 0x3 -- DLT_AX25_KISS = 0xca -- DLT_BACNET_MS_TP = 0xa5 -- DLT_BLUETOOTH_HCI_H4 = 0xbb -- DLT_BLUETOOTH_HCI_H4_WITH_PHDR = 0xc9 -- DLT_CAN20B = 0xbe -- DLT_CAN_SOCKETCAN = 0xe3 -- DLT_CHAOS = 0x5 -- DLT_CHDLC = 0x68 -- DLT_CISCO_IOS = 0x76 -- DLT_C_HDLC = 0x68 -- DLT_C_HDLC_WITH_DIR = 0xcd -- DLT_DBUS = 0xe7 -- DLT_DECT = 0xdd -- DLT_DOCSIS = 0x8f -- DLT_DVB_CI = 0xeb -- DLT_ECONET = 0x73 -- DLT_EN10MB = 0x1 -- DLT_EN3MB = 0x2 -- DLT_ENC = 0x6d -- DLT_ERF = 0xc5 -- DLT_ERF_ETH = 0xaf -- DLT_ERF_POS = 0xb0 -- DLT_FC_2 = 0xe0 -- DLT_FC_2_WITH_FRAME_DELIMS = 0xe1 -- DLT_FDDI = 0xa -- DLT_FLEXRAY = 0xd2 -- DLT_FRELAY = 0x6b -- DLT_FRELAY_WITH_DIR = 0xce -- DLT_GCOM_SERIAL = 0xad -- DLT_GCOM_T1E1 = 0xac -- DLT_GPF_F = 0xab -- DLT_GPF_T = 0xaa -- DLT_GPRS_LLC = 0xa9 -- DLT_GSMTAP_ABIS = 0xda -- DLT_GSMTAP_UM = 0xd9 -- DLT_HHDLC = 0x79 -- DLT_IBM_SN = 0x92 -- DLT_IBM_SP = 0x91 -- DLT_IEEE802 = 0x6 -- DLT_IEEE802_11 = 0x69 -- DLT_IEEE802_11_RADIO = 0x7f -- DLT_IEEE802_11_RADIO_AVS = 0xa3 -- DLT_IEEE802_15_4 = 0xc3 -- DLT_IEEE802_15_4_LINUX = 0xbf -- DLT_IEEE802_15_4_NOFCS = 0xe6 -- DLT_IEEE802_15_4_NONASK_PHY = 0xd7 -- DLT_IEEE802_16_MAC_CPS = 0xbc -- DLT_IEEE802_16_MAC_CPS_RADIO = 0xc1 -- DLT_IPFILTER = 0x74 -- DLT_IPMB = 0xc7 -- DLT_IPMB_LINUX = 0xd1 -- DLT_IPNET = 0xe2 -- DLT_IPOIB = 0xf2 -- DLT_IPV4 = 0xe4 -- DLT_IPV6 = 0xe5 -- DLT_IP_OVER_FC = 0x7a -- DLT_JUNIPER_ATM1 = 0x89 -- DLT_JUNIPER_ATM2 = 0x87 -- DLT_JUNIPER_ATM_CEMIC = 0xee -- DLT_JUNIPER_CHDLC = 0xb5 -- DLT_JUNIPER_ES = 0x84 -- DLT_JUNIPER_ETHER = 0xb2 -- DLT_JUNIPER_FIBRECHANNEL = 0xea -- DLT_JUNIPER_FRELAY = 0xb4 -- DLT_JUNIPER_GGSN = 0x85 -- DLT_JUNIPER_ISM = 0xc2 -- DLT_JUNIPER_MFR = 0x86 -- DLT_JUNIPER_MLFR = 0x83 -- DLT_JUNIPER_MLPPP = 0x82 -- DLT_JUNIPER_MONITOR = 0xa4 -- DLT_JUNIPER_PIC_PEER = 0xae -- DLT_JUNIPER_PPP = 0xb3 -- DLT_JUNIPER_PPPOE = 0xa7 -- DLT_JUNIPER_PPPOE_ATM = 0xa8 -- DLT_JUNIPER_SERVICES = 0x88 -- DLT_JUNIPER_SRX_E2E = 0xe9 -- DLT_JUNIPER_ST = 0xc8 -- DLT_JUNIPER_VP = 0xb7 -- DLT_JUNIPER_VS = 0xe8 -- DLT_LAPB_WITH_DIR = 0xcf -- DLT_LAPD = 0xcb -- DLT_LIN = 0xd4 -- DLT_LINUX_EVDEV = 0xd8 -- DLT_LINUX_IRDA = 0x90 -- DLT_LINUX_LAPD = 0xb1 -- DLT_LINUX_PPP_WITHDIRECTION = 0xa6 -- DLT_LINUX_SLL = 0x71 -- DLT_LOOP = 0x6c -- DLT_LTALK = 0x72 -- DLT_MATCHING_MAX = 0xf5 -- DLT_MATCHING_MIN = 0x68 -- DLT_MFR = 0xb6 -- DLT_MOST = 0xd3 -- DLT_MPEG_2_TS = 0xf3 -- DLT_MPLS = 0xdb -- DLT_MTP2 = 0x8c -- DLT_MTP2_WITH_PHDR = 0x8b -- DLT_MTP3 = 0x8d -- DLT_MUX27010 = 0xec -- DLT_NETANALYZER = 0xf0 -- DLT_NETANALYZER_TRANSPARENT = 0xf1 -- DLT_NFC_LLCP = 0xf5 -- DLT_NFLOG = 0xef -- DLT_NG40 = 0xf4 -- DLT_NULL = 0x0 -- DLT_PCI_EXP = 0x7d -- DLT_PFLOG = 0x75 -- DLT_PFSYNC = 0x12 -- DLT_PPI = 0xc0 -- DLT_PPP = 0x9 -- DLT_PPP_BSDOS = 0x10 -- DLT_PPP_ETHER = 0x33 -- DLT_PPP_PPPD = 0xa6 -- DLT_PPP_SERIAL = 0x32 -- DLT_PPP_WITH_DIR = 0xcc -- DLT_PPP_WITH_DIRECTION = 0xa6 -- DLT_PRISM_HEADER = 0x77 -- DLT_PRONET = 0x4 -- DLT_RAIF1 = 0xc6 -- DLT_RAW = 0xc -- DLT_RIO = 0x7c -- DLT_SCCP = 0x8e -- DLT_SITA = 0xc4 -- DLT_SLIP = 0x8 -- DLT_SLIP_BSDOS = 0xf -- DLT_STANAG_5066_D_PDU = 0xed -- DLT_SUNATM = 0x7b -- DLT_SYMANTEC_FIREWALL = 0x63 -- DLT_TZSP = 0x80 -- DLT_USB = 0xba -- DLT_USB_LINUX = 0xbd -- DLT_USB_LINUX_MMAPPED = 0xdc -- DLT_USER0 = 0x93 -- DLT_USER1 = 0x94 -- DLT_USER10 = 0x9d -- DLT_USER11 = 0x9e -- DLT_USER12 = 0x9f -- DLT_USER13 = 0xa0 -- DLT_USER14 = 0xa1 -- DLT_USER15 = 0xa2 -- DLT_USER2 = 0x95 -- DLT_USER3 = 0x96 -- DLT_USER4 = 0x97 -- DLT_USER5 = 0x98 -- DLT_USER6 = 0x99 -- DLT_USER7 = 0x9a -- DLT_USER8 = 0x9b -- DLT_USER9 = 0x9c -- DLT_WIHART = 0xdf -- DLT_X2E_SERIAL = 0xd5 -- DLT_X2E_XORAYA = 0xd6 -- DT_BLK = 0x6 -- DT_CHR = 0x2 -- DT_DIR = 0x4 -- DT_FIFO = 0x1 -- DT_LNK = 0xa -- DT_REG = 0x8 -- DT_SOCK = 0xc -- DT_UNKNOWN = 0x0 -- DT_WHT = 0xe -- ECHO = 0x8 -- ECHOCTL = 0x40 -- ECHOE = 0x2 -- ECHOK = 0x4 -- ECHOKE = 0x1 -- ECHONL = 0x10 -- ECHOPRT = 0x20 -- EVFILT_AIO = -0x3 -- EVFILT_EXCEPT = -0xf -- EVFILT_FS = -0x9 -- EVFILT_MACHPORT = -0x8 -- EVFILT_PROC = -0x5 -- EVFILT_READ = -0x1 -- EVFILT_SIGNAL = -0x6 -- EVFILT_SYSCOUNT = 0xf -- EVFILT_THREADMARKER = 0xf -- EVFILT_TIMER = -0x7 -- EVFILT_USER = -0xa -- EVFILT_VM = -0xc -- EVFILT_VNODE = -0x4 -- EVFILT_WRITE = -0x2 -- EV_ADD = 0x1 -- EV_CLEAR = 0x20 -- EV_DELETE = 0x2 -- EV_DISABLE = 0x8 -- EV_DISPATCH = 0x80 -- EV_DISPATCH2 = 0x180 -- EV_ENABLE = 0x4 -- EV_EOF = 0x8000 -- EV_ERROR = 0x4000 -- EV_FLAG0 = 0x1000 -- EV_FLAG1 = 0x2000 -- EV_ONESHOT = 0x10 -- EV_OOBAND = 0x2000 -- EV_POLL = 0x1000 -- EV_RECEIPT = 0x40 -- EV_SYSFLAGS = 0xf000 -- EV_UDATA_SPECIFIC = 0x100 -- EV_VANISHED = 0x200 -- EXTA = 0x4b00 -- EXTB = 0x9600 -- EXTPROC = 0x800 -- FD_CLOEXEC = 0x1 -- FD_SETSIZE = 0x400 -- FF0 = 0x0 -- FF1 = 0x4000 -- FFDLY = 0x4000 -- FLUSHO = 0x800000 -- FSOPT_ATTR_CMN_EXTENDED = 0x20 -- FSOPT_NOFOLLOW = 0x1 -- FSOPT_NOINMEMUPDATE = 0x2 -- FSOPT_PACK_INVAL_ATTRS = 0x8 -- FSOPT_REPORT_FULLSIZE = 0x4 -- F_ADDFILESIGS = 0x3d -- F_ADDFILESIGS_FOR_DYLD_SIM = 0x53 -- F_ADDFILESIGS_RETURN = 0x61 -- F_ADDSIGS = 0x3b -- F_ALLOCATEALL = 0x4 -- F_ALLOCATECONTIG = 0x2 -- F_BARRIERFSYNC = 0x55 -- F_CHECK_LV = 0x62 -- F_CHKCLEAN = 0x29 -- F_DUPFD = 0x0 -- F_DUPFD_CLOEXEC = 0x43 -- F_FINDSIGS = 0x4e -- F_FLUSH_DATA = 0x28 -- F_FREEZE_FS = 0x35 -- F_FULLFSYNC = 0x33 -- F_GETCODEDIR = 0x48 -- F_GETFD = 0x1 -- F_GETFL = 0x3 -- F_GETLK = 0x7 -- F_GETLKPID = 0x42 -- F_GETNOSIGPIPE = 0x4a -- F_GETOWN = 0x5 -- F_GETPATH = 0x32 -- F_GETPATH_MTMINFO = 0x47 -- F_GETPROTECTIONCLASS = 0x3f -- F_GETPROTECTIONLEVEL = 0x4d -- F_GLOBAL_NOCACHE = 0x37 -- F_LOG2PHYS = 0x31 -- F_LOG2PHYS_EXT = 0x41 -- F_NOCACHE = 0x30 -- F_NODIRECT = 0x3e -- F_OK = 0x0 -- F_PATHPKG_CHECK = 0x34 -- F_PEOFPOSMODE = 0x3 -- F_PREALLOCATE = 0x2a -- F_PUNCHHOLE = 0x63 -- F_RDADVISE = 0x2c -- F_RDAHEAD = 0x2d -- F_RDLCK = 0x1 -- F_SETBACKINGSTORE = 0x46 -- F_SETFD = 0x2 -- F_SETFL = 0x4 -- F_SETLK = 0x8 -- F_SETLKW = 0x9 -- F_SETLKWTIMEOUT = 0xa -- F_SETNOSIGPIPE = 0x49 -- F_SETOWN = 0x6 -- F_SETPROTECTIONCLASS = 0x40 -- F_SETSIZE = 0x2b -- F_SINGLE_WRITER = 0x4c -- F_THAW_FS = 0x36 -- F_TRANSCODEKEY = 0x4b -- F_TRIM_ACTIVE_FILE = 0x64 -- F_UNLCK = 0x2 -- F_VOLPOSMODE = 0x4 -- F_WRLCK = 0x3 -- HUPCL = 0x4000 -- HW_MACHINE = 0x1 -- ICANON = 0x100 -- ICMP6_FILTER = 0x12 -- ICRNL = 0x100 -- IEXTEN = 0x400 -- IFF_ALLMULTI = 0x200 -- IFF_ALTPHYS = 0x4000 -- IFF_BROADCAST = 0x2 -- IFF_DEBUG = 0x4 -- IFF_LINK0 = 0x1000 -- IFF_LINK1 = 0x2000 -- IFF_LINK2 = 0x4000 -- IFF_LOOPBACK = 0x8 -- IFF_MULTICAST = 0x8000 -- IFF_NOARP = 0x80 -- IFF_NOTRAILERS = 0x20 -- IFF_OACTIVE = 0x400 -- IFF_POINTOPOINT = 0x10 -- IFF_PROMISC = 0x100 -- IFF_RUNNING = 0x40 -- IFF_SIMPLEX = 0x800 -- IFF_UP = 0x1 -- IFNAMSIZ = 0x10 -- IFT_1822 = 0x2 -- IFT_AAL5 = 0x31 -- IFT_ARCNET = 0x23 -- IFT_ARCNETPLUS = 0x24 -- IFT_ATM = 0x25 -- IFT_BRIDGE = 0xd1 -- IFT_CARP = 0xf8 -- IFT_CELLULAR = 0xff -- IFT_CEPT = 0x13 -- IFT_DS3 = 0x1e -- IFT_ENC = 0xf4 -- IFT_EON = 0x19 -- IFT_ETHER = 0x6 -- IFT_FAITH = 0x38 -- IFT_FDDI = 0xf -- IFT_FRELAY = 0x20 -- IFT_FRELAYDCE = 0x2c -- IFT_GIF = 0x37 -- IFT_HDH1822 = 0x3 -- IFT_HIPPI = 0x2f -- IFT_HSSI = 0x2e -- IFT_HY = 0xe -- IFT_IEEE1394 = 0x90 -- IFT_IEEE8023ADLAG = 0x88 -- IFT_ISDNBASIC = 0x14 -- IFT_ISDNPRIMARY = 0x15 -- IFT_ISO88022LLC = 0x29 -- IFT_ISO88023 = 0x7 -- IFT_ISO88024 = 0x8 -- IFT_ISO88025 = 0x9 -- IFT_ISO88026 = 0xa -- IFT_L2VLAN = 0x87 -- IFT_LAPB = 0x10 -- IFT_LOCALTALK = 0x2a -- IFT_LOOP = 0x18 -- IFT_MIOX25 = 0x26 -- IFT_MODEM = 0x30 -- IFT_NSIP = 0x1b -- IFT_OTHER = 0x1 -- IFT_P10 = 0xc -- IFT_P80 = 0xd -- IFT_PARA = 0x22 -- IFT_PDP = 0xff -- IFT_PFLOG = 0xf5 -- IFT_PFSYNC = 0xf6 -- IFT_PKTAP = 0xfe -- IFT_PPP = 0x17 -- IFT_PROPMUX = 0x36 -- IFT_PROPVIRTUAL = 0x35 -- IFT_PTPSERIAL = 0x16 -- IFT_RS232 = 0x21 -- IFT_SDLC = 0x11 -- IFT_SIP = 0x1f -- IFT_SLIP = 0x1c -- IFT_SMDSDXI = 0x2b -- IFT_SMDSICIP = 0x34 -- IFT_SONET = 0x27 -- IFT_SONETPATH = 0x32 -- IFT_SONETVT = 0x33 -- IFT_STARLAN = 0xb -- IFT_STF = 0x39 -- IFT_T1 = 0x12 -- IFT_ULTRA = 0x1d -- IFT_V35 = 0x2d -- IFT_X25 = 0x5 -- IFT_X25DDN = 0x4 -- IFT_X25PLE = 0x28 -- IFT_XETHER = 0x1a -- IGNBRK = 0x1 -- IGNCR = 0x80 -- IGNPAR = 0x4 -- IMAXBEL = 0x2000 -- INLCR = 0x40 -- INPCK = 0x10 -- IN_CLASSA_HOST = 0xffffff -- IN_CLASSA_MAX = 0x80 -- IN_CLASSA_NET = 0xff000000 -- IN_CLASSA_NSHIFT = 0x18 -- IN_CLASSB_HOST = 0xffff -- IN_CLASSB_MAX = 0x10000 -- IN_CLASSB_NET = 0xffff0000 -- IN_CLASSB_NSHIFT = 0x10 -- IN_CLASSC_HOST = 0xff -- IN_CLASSC_NET = 0xffffff00 -- IN_CLASSC_NSHIFT = 0x8 -- IN_CLASSD_HOST = 0xfffffff -- IN_CLASSD_NET = 0xf0000000 -- IN_CLASSD_NSHIFT = 0x1c -- IN_LINKLOCALNETNUM = 0xa9fe0000 -- IN_LOOPBACKNET = 0x7f -- IPPROTO_3PC = 0x22 -- IPPROTO_ADFS = 0x44 -- IPPROTO_AH = 0x33 -- IPPROTO_AHIP = 0x3d -- IPPROTO_APES = 0x63 -- IPPROTO_ARGUS = 0xd -- IPPROTO_AX25 = 0x5d -- IPPROTO_BHA = 0x31 -- IPPROTO_BLT = 0x1e -- IPPROTO_BRSATMON = 0x4c -- IPPROTO_CFTP = 0x3e -- IPPROTO_CHAOS = 0x10 -- IPPROTO_CMTP = 0x26 -- IPPROTO_CPHB = 0x49 -- IPPROTO_CPNX = 0x48 -- IPPROTO_DDP = 0x25 -- IPPROTO_DGP = 0x56 -- IPPROTO_DIVERT = 0xfe -- IPPROTO_DONE = 0x101 -- IPPROTO_DSTOPTS = 0x3c -- IPPROTO_EGP = 0x8 -- IPPROTO_EMCON = 0xe -- IPPROTO_ENCAP = 0x62 -- IPPROTO_EON = 0x50 -- IPPROTO_ESP = 0x32 -- IPPROTO_ETHERIP = 0x61 -- IPPROTO_FRAGMENT = 0x2c -- IPPROTO_GGP = 0x3 -- IPPROTO_GMTP = 0x64 -- IPPROTO_GRE = 0x2f -- IPPROTO_HELLO = 0x3f -- IPPROTO_HMP = 0x14 -- IPPROTO_HOPOPTS = 0x0 -- IPPROTO_ICMP = 0x1 -- IPPROTO_ICMPV6 = 0x3a -- IPPROTO_IDP = 0x16 -- IPPROTO_IDPR = 0x23 -- IPPROTO_IDRP = 0x2d -- IPPROTO_IGMP = 0x2 -- IPPROTO_IGP = 0x55 -- IPPROTO_IGRP = 0x58 -- IPPROTO_IL = 0x28 -- IPPROTO_INLSP = 0x34 -- IPPROTO_INP = 0x20 -- IPPROTO_IP = 0x0 -- IPPROTO_IPCOMP = 0x6c -- IPPROTO_IPCV = 0x47 -- IPPROTO_IPEIP = 0x5e -- IPPROTO_IPIP = 0x4 -- IPPROTO_IPPC = 0x43 -- IPPROTO_IPV4 = 0x4 -- IPPROTO_IPV6 = 0x29 -- IPPROTO_IRTP = 0x1c -- IPPROTO_KRYPTOLAN = 0x41 -- IPPROTO_LARP = 0x5b -- IPPROTO_LEAF1 = 0x19 -- IPPROTO_LEAF2 = 0x1a -- IPPROTO_MAX = 0x100 -- IPPROTO_MAXID = 0x34 -- IPPROTO_MEAS = 0x13 -- IPPROTO_MHRP = 0x30 -- IPPROTO_MICP = 0x5f -- IPPROTO_MTP = 0x5c -- IPPROTO_MUX = 0x12 -- IPPROTO_ND = 0x4d -- IPPROTO_NHRP = 0x36 -- IPPROTO_NONE = 0x3b -- IPPROTO_NSP = 0x1f -- IPPROTO_NVPII = 0xb -- IPPROTO_OSPFIGP = 0x59 -- IPPROTO_PGM = 0x71 -- IPPROTO_PIGP = 0x9 -- IPPROTO_PIM = 0x67 -- IPPROTO_PRM = 0x15 -- IPPROTO_PUP = 0xc -- IPPROTO_PVP = 0x4b -- IPPROTO_RAW = 0xff -- IPPROTO_RCCMON = 0xa -- IPPROTO_RDP = 0x1b -- IPPROTO_ROUTING = 0x2b -- IPPROTO_RSVP = 0x2e -- IPPROTO_RVD = 0x42 -- IPPROTO_SATEXPAK = 0x40 -- IPPROTO_SATMON = 0x45 -- IPPROTO_SCCSP = 0x60 -- IPPROTO_SCTP = 0x84 -- IPPROTO_SDRP = 0x2a -- IPPROTO_SEP = 0x21 -- IPPROTO_SRPC = 0x5a -- IPPROTO_ST = 0x7 -- IPPROTO_SVMTP = 0x52 -- IPPROTO_SWIPE = 0x35 -- IPPROTO_TCF = 0x57 -- IPPROTO_TCP = 0x6 -- IPPROTO_TP = 0x1d -- IPPROTO_TPXX = 0x27 -- IPPROTO_TRUNK1 = 0x17 -- IPPROTO_TRUNK2 = 0x18 -- IPPROTO_TTP = 0x54 -- IPPROTO_UDP = 0x11 -- IPPROTO_VINES = 0x53 -- IPPROTO_VISA = 0x46 -- IPPROTO_VMTP = 0x51 -- IPPROTO_WBEXPAK = 0x4f -- IPPROTO_WBMON = 0x4e -- IPPROTO_WSN = 0x4a -- IPPROTO_XNET = 0xf -- IPPROTO_XTP = 0x24 -- IPV6_2292DSTOPTS = 0x17 -- IPV6_2292HOPLIMIT = 0x14 -- IPV6_2292HOPOPTS = 0x16 -- IPV6_2292NEXTHOP = 0x15 -- IPV6_2292PKTINFO = 0x13 -- IPV6_2292PKTOPTIONS = 0x19 -- IPV6_2292RTHDR = 0x18 -- IPV6_BINDV6ONLY = 0x1b -- IPV6_BOUND_IF = 0x7d -- IPV6_CHECKSUM = 0x1a -- IPV6_DEFAULT_MULTICAST_HOPS = 0x1 -- IPV6_DEFAULT_MULTICAST_LOOP = 0x1 -- IPV6_DEFHLIM = 0x40 -- IPV6_FAITH = 0x1d -- IPV6_FLOWINFO_MASK = 0xffffff0f -- IPV6_FLOWLABEL_MASK = 0xffff0f00 -- IPV6_FLOW_ECN_MASK = 0x300 -- IPV6_FRAGTTL = 0x3c -- IPV6_FW_ADD = 0x1e -- IPV6_FW_DEL = 0x1f -- IPV6_FW_FLUSH = 0x20 -- IPV6_FW_GET = 0x22 -- IPV6_FW_ZERO = 0x21 -- IPV6_HLIMDEC = 0x1 -- IPV6_IPSEC_POLICY = 0x1c -- IPV6_JOIN_GROUP = 0xc -- IPV6_LEAVE_GROUP = 0xd -- IPV6_MAXHLIM = 0xff -- IPV6_MAXOPTHDR = 0x800 -- IPV6_MAXPACKET = 0xffff -- IPV6_MAX_GROUP_SRC_FILTER = 0x200 -- IPV6_MAX_MEMBERSHIPS = 0xfff -- IPV6_MAX_SOCK_SRC_FILTER = 0x80 -- IPV6_MIN_MEMBERSHIPS = 0x1f -- IPV6_MMTU = 0x500 -- IPV6_MULTICAST_HOPS = 0xa -- IPV6_MULTICAST_IF = 0x9 -- IPV6_MULTICAST_LOOP = 0xb -- IPV6_PORTRANGE = 0xe -- IPV6_PORTRANGE_DEFAULT = 0x0 -- IPV6_PORTRANGE_HIGH = 0x1 -- IPV6_PORTRANGE_LOW = 0x2 -- IPV6_RECVTCLASS = 0x23 -- IPV6_RTHDR_LOOSE = 0x0 -- IPV6_RTHDR_STRICT = 0x1 -- IPV6_RTHDR_TYPE_0 = 0x0 -- IPV6_SOCKOPT_RESERVED1 = 0x3 -- IPV6_TCLASS = 0x24 -- IPV6_UNICAST_HOPS = 0x4 -- IPV6_V6ONLY = 0x1b -- IPV6_VERSION = 0x60 -- IPV6_VERSION_MASK = 0xf0 -- IP_ADD_MEMBERSHIP = 0xc -- IP_ADD_SOURCE_MEMBERSHIP = 0x46 -- IP_BLOCK_SOURCE = 0x48 -- IP_BOUND_IF = 0x19 -- IP_DEFAULT_MULTICAST_LOOP = 0x1 -- IP_DEFAULT_MULTICAST_TTL = 0x1 -- IP_DF = 0x4000 -- IP_DROP_MEMBERSHIP = 0xd -- IP_DROP_SOURCE_MEMBERSHIP = 0x47 -- IP_DUMMYNET_CONFIGURE = 0x3c -- IP_DUMMYNET_DEL = 0x3d -- IP_DUMMYNET_FLUSH = 0x3e -- IP_DUMMYNET_GET = 0x40 -- IP_FAITH = 0x16 -- IP_FW_ADD = 0x28 -- IP_FW_DEL = 0x29 -- IP_FW_FLUSH = 0x2a -- IP_FW_GET = 0x2c -- IP_FW_RESETLOG = 0x2d -- IP_FW_ZERO = 0x2b -- IP_HDRINCL = 0x2 -- IP_IPSEC_POLICY = 0x15 -- IP_MAXPACKET = 0xffff -- IP_MAX_GROUP_SRC_FILTER = 0x200 -- IP_MAX_MEMBERSHIPS = 0xfff -- IP_MAX_SOCK_MUTE_FILTER = 0x80 -- IP_MAX_SOCK_SRC_FILTER = 0x80 -- IP_MF = 0x2000 -- IP_MIN_MEMBERSHIPS = 0x1f -- IP_MSFILTER = 0x4a -- IP_MSS = 0x240 -- IP_MULTICAST_IF = 0x9 -- IP_MULTICAST_IFINDEX = 0x42 -- IP_MULTICAST_LOOP = 0xb -- IP_MULTICAST_TTL = 0xa -- IP_MULTICAST_VIF = 0xe -- IP_NAT__XXX = 0x37 -- IP_OFFMASK = 0x1fff -- IP_OLD_FW_ADD = 0x32 -- IP_OLD_FW_DEL = 0x33 -- IP_OLD_FW_FLUSH = 0x34 -- IP_OLD_FW_GET = 0x36 -- IP_OLD_FW_RESETLOG = 0x38 -- IP_OLD_FW_ZERO = 0x35 -- IP_OPTIONS = 0x1 -- IP_PKTINFO = 0x1a -- IP_PORTRANGE = 0x13 -- IP_PORTRANGE_DEFAULT = 0x0 -- IP_PORTRANGE_HIGH = 0x1 -- IP_PORTRANGE_LOW = 0x2 -- IP_RECVDSTADDR = 0x7 -- IP_RECVIF = 0x14 -- IP_RECVOPTS = 0x5 -- IP_RECVPKTINFO = 0x1a -- IP_RECVRETOPTS = 0x6 -- IP_RECVTOS = 0x1b -- IP_RECVTTL = 0x18 -- IP_RETOPTS = 0x8 -- IP_RF = 0x8000 -- IP_RSVP_OFF = 0x10 -- IP_RSVP_ON = 0xf -- IP_RSVP_VIF_OFF = 0x12 -- IP_RSVP_VIF_ON = 0x11 -- IP_STRIPHDR = 0x17 -- IP_TOS = 0x3 -- IP_TRAFFIC_MGT_BACKGROUND = 0x41 -- IP_TTL = 0x4 -- IP_UNBLOCK_SOURCE = 0x49 -- ISIG = 0x80 -- ISTRIP = 0x20 -- IUTF8 = 0x4000 -- IXANY = 0x800 -- IXOFF = 0x400 -- IXON = 0x200 -- KERN_HOSTNAME = 0xa -- KERN_OSRELEASE = 0x2 -- KERN_OSTYPE = 0x1 -- KERN_VERSION = 0x4 -- LOCK_EX = 0x2 -- LOCK_NB = 0x4 -- LOCK_SH = 0x1 -- LOCK_UN = 0x8 -- MADV_CAN_REUSE = 0x9 -- MADV_DONTNEED = 0x4 -- MADV_FREE = 0x5 -- MADV_FREE_REUSABLE = 0x7 -- MADV_FREE_REUSE = 0x8 -- MADV_NORMAL = 0x0 -- MADV_PAGEOUT = 0xa -- MADV_RANDOM = 0x1 -- MADV_SEQUENTIAL = 0x2 -- MADV_WILLNEED = 0x3 -- MADV_ZERO_WIRED_PAGES = 0x6 -- MAP_ANON = 0x1000 -- MAP_ANONYMOUS = 0x1000 -- MAP_COPY = 0x2 -- MAP_FILE = 0x0 -- MAP_FIXED = 0x10 -- MAP_HASSEMAPHORE = 0x200 -- MAP_JIT = 0x800 -- MAP_NOCACHE = 0x400 -- MAP_NOEXTEND = 0x100 -- MAP_NORESERVE = 0x40 -- MAP_PRIVATE = 0x2 -- MAP_RENAME = 0x20 -- MAP_RESERVED0080 = 0x80 -- MAP_RESILIENT_CODESIGN = 0x2000 -- MAP_RESILIENT_MEDIA = 0x4000 -- MAP_SHARED = 0x1 -- MCL_CURRENT = 0x1 -- MCL_FUTURE = 0x2 -- MNT_ASYNC = 0x40 -- MNT_AUTOMOUNTED = 0x400000 -- MNT_CMDFLAGS = 0xf0000 -- MNT_CPROTECT = 0x80 -- MNT_DEFWRITE = 0x2000000 -- MNT_DONTBROWSE = 0x100000 -- MNT_DOVOLFS = 0x8000 -- MNT_DWAIT = 0x4 -- MNT_EXPORTED = 0x100 -- MNT_FORCE = 0x80000 -- MNT_IGNORE_OWNERSHIP = 0x200000 -- MNT_JOURNALED = 0x800000 -- MNT_LOCAL = 0x1000 -- MNT_MULTILABEL = 0x4000000 -- MNT_NOATIME = 0x10000000 -- MNT_NOBLOCK = 0x20000 -- MNT_NODEV = 0x10 -- MNT_NOEXEC = 0x4 -- MNT_NOSUID = 0x8 -- MNT_NOUSERXATTR = 0x1000000 -- MNT_NOWAIT = 0x2 -- MNT_QUARANTINE = 0x400 -- MNT_QUOTA = 0x2000 -- MNT_RDONLY = 0x1 -- MNT_RELOAD = 0x40000 -- MNT_ROOTFS = 0x4000 -- MNT_SYNCHRONOUS = 0x2 -- MNT_UNION = 0x20 -- MNT_UNKNOWNPERMISSIONS = 0x200000 -- MNT_UPDATE = 0x10000 -- MNT_VISFLAGMASK = 0x17f0f5ff -- MNT_WAIT = 0x1 -- MSG_CTRUNC = 0x20 -- MSG_DONTROUTE = 0x4 -- MSG_DONTWAIT = 0x80 -- MSG_EOF = 0x100 -- MSG_EOR = 0x8 -- MSG_FLUSH = 0x400 -- MSG_HAVEMORE = 0x2000 -- MSG_HOLD = 0x800 -- MSG_NEEDSA = 0x10000 -- MSG_OOB = 0x1 -- MSG_PEEK = 0x2 -- MSG_RCVMORE = 0x4000 -- MSG_SEND = 0x1000 -- MSG_TRUNC = 0x10 -- MSG_WAITALL = 0x40 -- MSG_WAITSTREAM = 0x200 -- MS_ASYNC = 0x1 -- MS_DEACTIVATE = 0x8 -- MS_INVALIDATE = 0x2 -- MS_KILLPAGES = 0x4 -- MS_SYNC = 0x10 -- NAME_MAX = 0xff -- NET_RT_DUMP = 0x1 -- NET_RT_DUMP2 = 0x7 -- NET_RT_FLAGS = 0x2 -- NET_RT_IFLIST = 0x3 -- NET_RT_IFLIST2 = 0x6 -- NET_RT_MAXID = 0xa -- NET_RT_STAT = 0x4 -- NET_RT_TRASH = 0x5 -- NFDBITS = 0x20 -- NL0 = 0x0 -- NL1 = 0x100 -- NL2 = 0x200 -- NL3 = 0x300 -- NLDLY = 0x300 -- NOFLSH = 0x80000000 -- NOKERNINFO = 0x2000000 -- NOTE_ABSOLUTE = 0x8 -- NOTE_ATTRIB = 0x8 -- NOTE_BACKGROUND = 0x40 -- NOTE_CHILD = 0x4 -- NOTE_CRITICAL = 0x20 -- NOTE_DELETE = 0x1 -- NOTE_EXEC = 0x20000000 -- NOTE_EXIT = 0x80000000 -- NOTE_EXITSTATUS = 0x4000000 -- NOTE_EXIT_CSERROR = 0x40000 -- NOTE_EXIT_DECRYPTFAIL = 0x10000 -- NOTE_EXIT_DETAIL = 0x2000000 -- NOTE_EXIT_DETAIL_MASK = 0x70000 -- NOTE_EXIT_MEMORY = 0x20000 -- NOTE_EXIT_REPARENTED = 0x80000 -- NOTE_EXTEND = 0x4 -- NOTE_FFAND = 0x40000000 -- NOTE_FFCOPY = 0xc0000000 -- NOTE_FFCTRLMASK = 0xc0000000 -- NOTE_FFLAGSMASK = 0xffffff -- NOTE_FFNOP = 0x0 -- NOTE_FFOR = 0x80000000 -- NOTE_FORK = 0x40000000 -- NOTE_FUNLOCK = 0x100 -- NOTE_LEEWAY = 0x10 -- NOTE_LINK = 0x10 -- NOTE_LOWAT = 0x1 -- NOTE_MACH_CONTINUOUS_TIME = 0x80 -- NOTE_NONE = 0x80 -- NOTE_NSECONDS = 0x4 -- NOTE_OOB = 0x2 -- NOTE_PCTRLMASK = -0x100000 -- NOTE_PDATAMASK = 0xfffff -- NOTE_REAP = 0x10000000 -- NOTE_RENAME = 0x20 -- NOTE_REVOKE = 0x40 -- NOTE_SECONDS = 0x1 -- NOTE_SIGNAL = 0x8000000 -- NOTE_TRACK = 0x1 -- NOTE_TRACKERR = 0x2 -- NOTE_TRIGGER = 0x1000000 -- NOTE_USECONDS = 0x2 -- NOTE_VM_ERROR = 0x10000000 -- NOTE_VM_PRESSURE = 0x80000000 -- NOTE_VM_PRESSURE_SUDDEN_TERMINATE = 0x20000000 -- NOTE_VM_PRESSURE_TERMINATE = 0x40000000 -- NOTE_WRITE = 0x2 -- OCRNL = 0x10 -- OFDEL = 0x20000 -- OFILL = 0x80 -- ONLCR = 0x2 -- ONLRET = 0x40 -- ONOCR = 0x20 -- ONOEOT = 0x8 -- OPOST = 0x1 -- OXTABS = 0x4 -- O_ACCMODE = 0x3 -- O_ALERT = 0x20000000 -- O_APPEND = 0x8 -- O_ASYNC = 0x40 -- O_CLOEXEC = 0x1000000 -- O_CREAT = 0x200 -- O_DIRECTORY = 0x100000 -- O_DP_GETRAWENCRYPTED = 0x1 -- O_DP_GETRAWUNENCRYPTED = 0x2 -- O_DSYNC = 0x400000 -- O_EVTONLY = 0x8000 -- O_EXCL = 0x800 -- O_EXLOCK = 0x20 -- O_FSYNC = 0x80 -- O_NDELAY = 0x4 -- O_NOCTTY = 0x20000 -- O_NOFOLLOW = 0x100 -- O_NONBLOCK = 0x4 -- O_POPUP = 0x80000000 -- O_RDONLY = 0x0 -- O_RDWR = 0x2 -- O_SHLOCK = 0x10 -- O_SYMLINK = 0x200000 -- O_SYNC = 0x80 -- O_TRUNC = 0x400 -- O_WRONLY = 0x1 -- PARENB = 0x1000 -- PARMRK = 0x8 -- PARODD = 0x2000 -- PENDIN = 0x20000000 -- PRIO_PGRP = 0x1 -- PRIO_PROCESS = 0x0 -- PRIO_USER = 0x2 -- PROT_EXEC = 0x4 -- PROT_NONE = 0x0 -- PROT_READ = 0x1 -- PROT_WRITE = 0x2 -- PT_ATTACH = 0xa -- PT_ATTACHEXC = 0xe -- PT_CONTINUE = 0x7 -- PT_DENY_ATTACH = 0x1f -- PT_DETACH = 0xb -- PT_FIRSTMACH = 0x20 -- PT_FORCEQUOTA = 0x1e -- PT_KILL = 0x8 -- PT_READ_D = 0x2 -- PT_READ_I = 0x1 -- PT_READ_U = 0x3 -- PT_SIGEXC = 0xc -- PT_STEP = 0x9 -- PT_THUPDATE = 0xd -- PT_TRACE_ME = 0x0 -- PT_WRITE_D = 0x5 -- PT_WRITE_I = 0x4 -- PT_WRITE_U = 0x6 -- RLIMIT_AS = 0x5 -- RLIMIT_CORE = 0x4 -- RLIMIT_CPU = 0x0 -- RLIMIT_CPU_USAGE_MONITOR = 0x2 -- RLIMIT_DATA = 0x2 -- RLIMIT_FSIZE = 0x1 -- RLIMIT_MEMLOCK = 0x6 -- RLIMIT_NOFILE = 0x8 -- RLIMIT_NPROC = 0x7 -- RLIMIT_RSS = 0x5 -- RLIMIT_STACK = 0x3 -- RLIM_INFINITY = 0x7fffffffffffffff -- RTAX_AUTHOR = 0x6 -- RTAX_BRD = 0x7 -- RTAX_DST = 0x0 -- RTAX_GATEWAY = 0x1 -- RTAX_GENMASK = 0x3 -- RTAX_IFA = 0x5 -- RTAX_IFP = 0x4 -- RTAX_MAX = 0x8 -- RTAX_NETMASK = 0x2 -- RTA_AUTHOR = 0x40 -- RTA_BRD = 0x80 -- RTA_DST = 0x1 -- RTA_GATEWAY = 0x2 -- RTA_GENMASK = 0x8 -- RTA_IFA = 0x20 -- RTA_IFP = 0x10 -- RTA_NETMASK = 0x4 -- RTF_BLACKHOLE = 0x1000 -- RTF_BROADCAST = 0x400000 -- RTF_CLONING = 0x100 -- RTF_CONDEMNED = 0x2000000 -- RTF_DELCLONE = 0x80 -- RTF_DONE = 0x40 -- RTF_DYNAMIC = 0x10 -- RTF_GATEWAY = 0x2 -- RTF_HOST = 0x4 -- RTF_IFREF = 0x4000000 -- RTF_IFSCOPE = 0x1000000 -- RTF_LLINFO = 0x400 -- RTF_LOCAL = 0x200000 -- RTF_MODIFIED = 0x20 -- RTF_MULTICAST = 0x800000 -- RTF_NOIFREF = 0x2000 -- RTF_PINNED = 0x100000 -- RTF_PRCLONING = 0x10000 -- RTF_PROTO1 = 0x8000 -- RTF_PROTO2 = 0x4000 -- RTF_PROTO3 = 0x40000 -- RTF_PROXY = 0x8000000 -- RTF_REJECT = 0x8 -- RTF_ROUTER = 0x10000000 -- RTF_STATIC = 0x800 -- RTF_UP = 0x1 -- RTF_WASCLONED = 0x20000 -- RTF_XRESOLVE = 0x200 -- RTM_ADD = 0x1 -- RTM_CHANGE = 0x3 -- RTM_DELADDR = 0xd -- RTM_DELETE = 0x2 -- RTM_DELMADDR = 0x10 -- RTM_GET = 0x4 -- RTM_GET2 = 0x14 -- RTM_IFINFO = 0xe -- RTM_IFINFO2 = 0x12 -- RTM_LOCK = 0x8 -- RTM_LOSING = 0x5 -- RTM_MISS = 0x7 -- RTM_NEWADDR = 0xc -- RTM_NEWMADDR = 0xf -- RTM_NEWMADDR2 = 0x13 -- RTM_OLDADD = 0x9 -- RTM_OLDDEL = 0xa -- RTM_REDIRECT = 0x6 -- RTM_RESOLVE = 0xb -- RTM_RTTUNIT = 0xf4240 -- RTM_VERSION = 0x5 -- RTV_EXPIRE = 0x4 -- RTV_HOPCOUNT = 0x2 -- RTV_MTU = 0x1 -- RTV_RPIPE = 0x8 -- RTV_RTT = 0x40 -- RTV_RTTVAR = 0x80 -- RTV_SPIPE = 0x10 -- RTV_SSTHRESH = 0x20 -- RUSAGE_CHILDREN = -0x1 -- RUSAGE_SELF = 0x0 -- SCM_CREDS = 0x3 -- SCM_RIGHTS = 0x1 -- SCM_TIMESTAMP = 0x2 -- SCM_TIMESTAMP_MONOTONIC = 0x4 -- SHUT_RD = 0x0 -- SHUT_RDWR = 0x2 -- SHUT_WR = 0x1 -- SIOCADDMULTI = 0x80206931 -- SIOCAIFADDR = 0x8040691a -- SIOCARPIPLL = 0xc0206928 -- SIOCATMARK = 0x40047307 -- SIOCAUTOADDR = 0xc0206926 -- SIOCAUTONETMASK = 0x80206927 -- SIOCDELMULTI = 0x80206932 -- SIOCDIFADDR = 0x80206919 -- SIOCDIFPHYADDR = 0x80206941 -- SIOCGDRVSPEC = 0xc028697b -- SIOCGETVLAN = 0xc020697f -- SIOCGHIWAT = 0x40047301 -- SIOCGIFADDR = 0xc0206921 -- SIOCGIFALTMTU = 0xc0206948 -- SIOCGIFASYNCMAP = 0xc020697c -- SIOCGIFBOND = 0xc0206947 -- SIOCGIFBRDADDR = 0xc0206923 -- SIOCGIFCAP = 0xc020695b -- SIOCGIFCONF = 0xc00c6924 -- SIOCGIFDEVMTU = 0xc0206944 -- SIOCGIFDSTADDR = 0xc0206922 -- SIOCGIFFLAGS = 0xc0206911 -- SIOCGIFGENERIC = 0xc020693a -- SIOCGIFKPI = 0xc0206987 -- SIOCGIFMAC = 0xc0206982 -- SIOCGIFMEDIA = 0xc02c6938 -- SIOCGIFMETRIC = 0xc0206917 -- SIOCGIFMTU = 0xc0206933 -- SIOCGIFNETMASK = 0xc0206925 -- SIOCGIFPDSTADDR = 0xc0206940 -- SIOCGIFPHYS = 0xc0206935 -- SIOCGIFPSRCADDR = 0xc020693f -- SIOCGIFSTATUS = 0xc331693d -- SIOCGIFVLAN = 0xc020697f -- SIOCGIFWAKEFLAGS = 0xc0206988 -- SIOCGLOWAT = 0x40047303 -- SIOCGPGRP = 0x40047309 -- SIOCIFCREATE = 0xc0206978 -- SIOCIFCREATE2 = 0xc020697a -- SIOCIFDESTROY = 0x80206979 -- SIOCIFGCLONERS = 0xc0106981 -- SIOCRSLVMULTI = 0xc010693b -- SIOCSDRVSPEC = 0x8028697b -- SIOCSETVLAN = 0x8020697e -- SIOCSHIWAT = 0x80047300 -- SIOCSIFADDR = 0x8020690c -- SIOCSIFALTMTU = 0x80206945 -- SIOCSIFASYNCMAP = 0x8020697d -- SIOCSIFBOND = 0x80206946 -- SIOCSIFBRDADDR = 0x80206913 -- SIOCSIFCAP = 0x8020695a -- SIOCSIFDSTADDR = 0x8020690e -- SIOCSIFFLAGS = 0x80206910 -- SIOCSIFGENERIC = 0x80206939 -- SIOCSIFKPI = 0x80206986 -- SIOCSIFLLADDR = 0x8020693c -- SIOCSIFMAC = 0x80206983 -- SIOCSIFMEDIA = 0xc0206937 -- SIOCSIFMETRIC = 0x80206918 -- SIOCSIFMTU = 0x80206934 -- SIOCSIFNETMASK = 0x80206916 -- SIOCSIFPHYADDR = 0x8040693e -- SIOCSIFPHYS = 0x80206936 -- SIOCSIFVLAN = 0x8020697e -- SIOCSLOWAT = 0x80047302 -- SIOCSPGRP = 0x80047308 -- SOCK_DGRAM = 0x2 -- SOCK_MAXADDRLEN = 0xff -- SOCK_RAW = 0x3 -- SOCK_RDM = 0x4 -- SOCK_SEQPACKET = 0x5 -- SOCK_STREAM = 0x1 -- SOL_SOCKET = 0xffff -- SOMAXCONN = 0x80 -- SO_ACCEPTCONN = 0x2 -- SO_BROADCAST = 0x20 -- SO_DEBUG = 0x1 -- SO_DONTROUTE = 0x10 -- SO_DONTTRUNC = 0x2000 -- SO_ERROR = 0x1007 -- SO_KEEPALIVE = 0x8 -- SO_LABEL = 0x1010 -- SO_LINGER = 0x80 -- SO_LINGER_SEC = 0x1080 -- SO_NETSVC_MARKING_LEVEL = 0x1119 -- SO_NET_SERVICE_TYPE = 0x1116 -- SO_NKE = 0x1021 -- SO_NOADDRERR = 0x1023 -- SO_NOSIGPIPE = 0x1022 -- SO_NOTIFYCONFLICT = 0x1026 -- SO_NP_EXTENSIONS = 0x1083 -- SO_NREAD = 0x1020 -- SO_NUMRCVPKT = 0x1112 -- SO_NWRITE = 0x1024 -- SO_OOBINLINE = 0x100 -- SO_PEERLABEL = 0x1011 -- SO_RANDOMPORT = 0x1082 -- SO_RCVBUF = 0x1002 -- SO_RCVLOWAT = 0x1004 -- SO_RCVTIMEO = 0x1006 -- SO_REUSEADDR = 0x4 -- SO_REUSEPORT = 0x200 -- SO_REUSESHAREUID = 0x1025 -- SO_SNDBUF = 0x1001 -- SO_SNDLOWAT = 0x1003 -- SO_SNDTIMEO = 0x1005 -- SO_TIMESTAMP = 0x400 -- SO_TIMESTAMP_MONOTONIC = 0x800 -- SO_TYPE = 0x1008 -- SO_UPCALLCLOSEWAIT = 0x1027 -- SO_USELOOPBACK = 0x40 -- SO_WANTMORE = 0x4000 -- SO_WANTOOBFLAG = 0x8000 -- S_IEXEC = 0x40 -- S_IFBLK = 0x6000 -- S_IFCHR = 0x2000 -- S_IFDIR = 0x4000 -- S_IFIFO = 0x1000 -- S_IFLNK = 0xa000 -- S_IFMT = 0xf000 -- S_IFREG = 0x8000 -- S_IFSOCK = 0xc000 -- S_IFWHT = 0xe000 -- S_IREAD = 0x100 -- S_IRGRP = 0x20 -- S_IROTH = 0x4 -- S_IRUSR = 0x100 -- S_IRWXG = 0x38 -- S_IRWXO = 0x7 -- S_IRWXU = 0x1c0 -- S_ISGID = 0x400 -- S_ISTXT = 0x200 -- S_ISUID = 0x800 -- S_ISVTX = 0x200 -- S_IWGRP = 0x10 -- S_IWOTH = 0x2 -- S_IWRITE = 0x80 -- S_IWUSR = 0x80 -- S_IXGRP = 0x8 -- S_IXOTH = 0x1 -- S_IXUSR = 0x40 -- TAB0 = 0x0 -- TAB1 = 0x400 -- TAB2 = 0x800 -- TAB3 = 0x4 -- TABDLY = 0xc04 -- TCIFLUSH = 0x1 -- TCIOFF = 0x3 -- TCIOFLUSH = 0x3 -- TCION = 0x4 -- TCOFLUSH = 0x2 -- TCOOFF = 0x1 -- TCOON = 0x2 -- TCP_CONNECTIONTIMEOUT = 0x20 -- TCP_CONNECTION_INFO = 0x106 -- TCP_ENABLE_ECN = 0x104 -- TCP_FASTOPEN = 0x105 -- TCP_KEEPALIVE = 0x10 -- TCP_KEEPCNT = 0x102 -- TCP_KEEPINTVL = 0x101 -- TCP_MAXHLEN = 0x3c -- TCP_MAXOLEN = 0x28 -- TCP_MAXSEG = 0x2 -- TCP_MAXWIN = 0xffff -- TCP_MAX_SACK = 0x4 -- TCP_MAX_WINSHIFT = 0xe -- TCP_MINMSS = 0xd8 -- TCP_MSS = 0x200 -- TCP_NODELAY = 0x1 -- TCP_NOOPT = 0x8 -- TCP_NOPUSH = 0x4 -- TCP_NOTSENT_LOWAT = 0x201 -- TCP_RXT_CONNDROPTIME = 0x80 -- TCP_RXT_FINDROP = 0x100 -- TCP_SENDMOREACKS = 0x103 -- TCSAFLUSH = 0x2 -- TIOCCBRK = 0x2000747a -- TIOCCDTR = 0x20007478 -- TIOCCONS = 0x80047462 -- TIOCDCDTIMESTAMP = 0x40107458 -- TIOCDRAIN = 0x2000745e -- TIOCDSIMICROCODE = 0x20007455 -- TIOCEXCL = 0x2000740d -- TIOCEXT = 0x80047460 -- TIOCFLUSH = 0x80047410 -- TIOCGDRAINWAIT = 0x40047456 -- TIOCGETA = 0x40487413 -- TIOCGETD = 0x4004741a -- TIOCGPGRP = 0x40047477 -- TIOCGWINSZ = 0x40087468 -- TIOCIXOFF = 0x20007480 -- TIOCIXON = 0x20007481 -- TIOCMBIC = 0x8004746b -- TIOCMBIS = 0x8004746c -- TIOCMGDTRWAIT = 0x4004745a -- TIOCMGET = 0x4004746a -- TIOCMODG = 0x40047403 -- TIOCMODS = 0x80047404 -- TIOCMSDTRWAIT = 0x8004745b -- TIOCMSET = 0x8004746d -- TIOCM_CAR = 0x40 -- TIOCM_CD = 0x40 -- TIOCM_CTS = 0x20 -- TIOCM_DSR = 0x100 -- TIOCM_DTR = 0x2 -- TIOCM_LE = 0x1 -- TIOCM_RI = 0x80 -- TIOCM_RNG = 0x80 -- TIOCM_RTS = 0x4 -- TIOCM_SR = 0x10 -- TIOCM_ST = 0x8 -- TIOCNOTTY = 0x20007471 -- TIOCNXCL = 0x2000740e -- TIOCOUTQ = 0x40047473 -- TIOCPKT = 0x80047470 -- TIOCPKT_DATA = 0x0 -- TIOCPKT_DOSTOP = 0x20 -- TIOCPKT_FLUSHREAD = 0x1 -- TIOCPKT_FLUSHWRITE = 0x2 -- TIOCPKT_IOCTL = 0x40 -- TIOCPKT_NOSTOP = 0x10 -- TIOCPKT_START = 0x8 -- TIOCPKT_STOP = 0x4 -- TIOCPTYGNAME = 0x40807453 -- TIOCPTYGRANT = 0x20007454 -- TIOCPTYUNLK = 0x20007452 -- TIOCREMOTE = 0x80047469 -- TIOCSBRK = 0x2000747b -- TIOCSCONS = 0x20007463 -- TIOCSCTTY = 0x20007461 -- TIOCSDRAINWAIT = 0x80047457 -- TIOCSDTR = 0x20007479 -- TIOCSETA = 0x80487414 -- TIOCSETAF = 0x80487416 -- TIOCSETAW = 0x80487415 -- TIOCSETD = 0x8004741b -- TIOCSIG = 0x2000745f -- TIOCSPGRP = 0x80047476 -- TIOCSTART = 0x2000746e -- TIOCSTAT = 0x20007465 -- TIOCSTI = 0x80017472 -- TIOCSTOP = 0x2000746f -- TIOCSWINSZ = 0x80087467 -- TIOCTIMESTAMP = 0x40107459 -- TIOCUCNTL = 0x80047466 -- TOSTOP = 0x400000 -- VDISCARD = 0xf -- VDSUSP = 0xb -- VEOF = 0x0 -- VEOL = 0x1 -- VEOL2 = 0x2 -- VERASE = 0x3 -- VINTR = 0x8 -- VKILL = 0x5 -- VLNEXT = 0xe -- VMIN = 0x10 -- VM_LOADAVG = 0x2 -- VM_MACHFACTOR = 0x4 -- VM_MAXID = 0x6 -- VM_METER = 0x1 -- VM_SWAPUSAGE = 0x5 -- VQUIT = 0x9 -- VREPRINT = 0x6 -- VSTART = 0xc -- VSTATUS = 0x12 -- VSTOP = 0xd -- VSUSP = 0xa -- VT0 = 0x0 -- VT1 = 0x10000 -- VTDLY = 0x10000 -- VTIME = 0x11 -- VWERASE = 0x4 -- WCONTINUED = 0x10 -- WCOREFLAG = 0x80 -- WEXITED = 0x4 -- WNOHANG = 0x1 -- WNOWAIT = 0x20 -- WORDSIZE = 0x40 -- WSTOPPED = 0x8 -- WUNTRACED = 0x2 -- XATTR_CREATE = 0x2 -- XATTR_NODEFAULT = 0x10 -- XATTR_NOFOLLOW = 0x1 -- XATTR_NOSECURITY = 0x8 -- XATTR_REPLACE = 0x4 -- XATTR_SHOWCOMPRESSION = 0x20 -+ AF_APPLETALK = 0x10 -+ AF_CCITT = 0xa -+ AF_CHAOS = 0x5 -+ AF_CNT = 0x15 -+ AF_COIP = 0x14 -+ AF_DATAKIT = 0x9 -+ AF_DECnet = 0xc -+ AF_DLI = 0xd -+ AF_E164 = 0x1c -+ AF_ECMA = 0x8 -+ AF_HYLINK = 0xf -+ AF_IEEE80211 = 0x25 -+ AF_IMPLINK = 0x3 -+ AF_INET = 0x2 -+ AF_INET6 = 0x1e -+ AF_IPX = 0x17 -+ AF_ISDN = 0x1c -+ AF_ISO = 0x7 -+ AF_LAT = 0xe -+ AF_LINK = 0x12 -+ AF_LOCAL = 0x1 -+ AF_MAX = 0x29 -+ AF_NATM = 0x1f -+ AF_NDRV = 0x1b -+ AF_NETBIOS = 0x21 -+ AF_NS = 0x6 -+ AF_OSI = 0x7 -+ AF_PPP = 0x22 -+ AF_PUP = 0x4 -+ AF_RESERVED_36 = 0x24 -+ AF_ROUTE = 0x11 -+ AF_SIP = 0x18 -+ AF_SNA = 0xb -+ AF_SYSTEM = 0x20 -+ AF_SYS_CONTROL = 0x2 -+ AF_UNIX = 0x1 -+ AF_UNSPEC = 0x0 -+ AF_UTUN = 0x26 -+ AF_VSOCK = 0x28 -+ ALTWERASE = 0x200 -+ ATTR_BIT_MAP_COUNT = 0x5 -+ ATTR_CMN_ACCESSMASK = 0x20000 -+ ATTR_CMN_ACCTIME = 0x1000 -+ ATTR_CMN_ADDEDTIME = 0x10000000 -+ ATTR_CMN_BKUPTIME = 0x2000 -+ ATTR_CMN_CHGTIME = 0x800 -+ ATTR_CMN_CRTIME = 0x200 -+ ATTR_CMN_DATA_PROTECT_FLAGS = 0x40000000 -+ ATTR_CMN_DEVID = 0x2 -+ ATTR_CMN_DOCUMENT_ID = 0x100000 -+ ATTR_CMN_ERROR = 0x20000000 -+ ATTR_CMN_EXTENDED_SECURITY = 0x400000 -+ ATTR_CMN_FILEID = 0x2000000 -+ ATTR_CMN_FLAGS = 0x40000 -+ ATTR_CMN_FNDRINFO = 0x4000 -+ ATTR_CMN_FSID = 0x4 -+ ATTR_CMN_FULLPATH = 0x8000000 -+ ATTR_CMN_GEN_COUNT = 0x80000 -+ ATTR_CMN_GRPID = 0x10000 -+ ATTR_CMN_GRPUUID = 0x1000000 -+ ATTR_CMN_MODTIME = 0x400 -+ ATTR_CMN_NAME = 0x1 -+ ATTR_CMN_NAMEDATTRCOUNT = 0x80000 -+ ATTR_CMN_NAMEDATTRLIST = 0x100000 -+ ATTR_CMN_OBJID = 0x20 -+ ATTR_CMN_OBJPERMANENTID = 0x40 -+ ATTR_CMN_OBJTAG = 0x10 -+ ATTR_CMN_OBJTYPE = 0x8 -+ ATTR_CMN_OWNERID = 0x8000 -+ ATTR_CMN_PARENTID = 0x4000000 -+ ATTR_CMN_PAROBJID = 0x80 -+ ATTR_CMN_RETURNED_ATTRS = 0x80000000 -+ ATTR_CMN_SCRIPT = 0x100 -+ ATTR_CMN_SETMASK = 0x51c7ff00 -+ ATTR_CMN_USERACCESS = 0x200000 -+ ATTR_CMN_UUID = 0x800000 -+ ATTR_CMN_VALIDMASK = 0xffffffff -+ ATTR_CMN_VOLSETMASK = 0x6700 -+ ATTR_FILE_ALLOCSIZE = 0x4 -+ ATTR_FILE_CLUMPSIZE = 0x10 -+ ATTR_FILE_DATAALLOCSIZE = 0x400 -+ ATTR_FILE_DATAEXTENTS = 0x800 -+ ATTR_FILE_DATALENGTH = 0x200 -+ ATTR_FILE_DEVTYPE = 0x20 -+ ATTR_FILE_FILETYPE = 0x40 -+ ATTR_FILE_FORKCOUNT = 0x80 -+ ATTR_FILE_FORKLIST = 0x100 -+ ATTR_FILE_IOBLOCKSIZE = 0x8 -+ ATTR_FILE_LINKCOUNT = 0x1 -+ ATTR_FILE_RSRCALLOCSIZE = 0x2000 -+ ATTR_FILE_RSRCEXTENTS = 0x4000 -+ ATTR_FILE_RSRCLENGTH = 0x1000 -+ ATTR_FILE_SETMASK = 0x20 -+ ATTR_FILE_TOTALSIZE = 0x2 -+ ATTR_FILE_VALIDMASK = 0x37ff -+ ATTR_VOL_ALLOCATIONCLUMP = 0x40 -+ ATTR_VOL_ATTRIBUTES = 0x40000000 -+ ATTR_VOL_CAPABILITIES = 0x20000 -+ ATTR_VOL_DIRCOUNT = 0x400 -+ ATTR_VOL_ENCODINGSUSED = 0x10000 -+ ATTR_VOL_FILECOUNT = 0x200 -+ ATTR_VOL_FSTYPE = 0x1 -+ ATTR_VOL_INFO = 0x80000000 -+ ATTR_VOL_IOBLOCKSIZE = 0x80 -+ ATTR_VOL_MAXOBJCOUNT = 0x800 -+ ATTR_VOL_MINALLOCATION = 0x20 -+ ATTR_VOL_MOUNTEDDEVICE = 0x8000 -+ ATTR_VOL_MOUNTFLAGS = 0x4000 -+ ATTR_VOL_MOUNTPOINT = 0x1000 -+ ATTR_VOL_NAME = 0x2000 -+ ATTR_VOL_OBJCOUNT = 0x100 -+ ATTR_VOL_QUOTA_SIZE = 0x10000000 -+ ATTR_VOL_RESERVED_SIZE = 0x20000000 -+ ATTR_VOL_SETMASK = 0x80002000 -+ ATTR_VOL_SIGNATURE = 0x2 -+ ATTR_VOL_SIZE = 0x4 -+ ATTR_VOL_SPACEAVAIL = 0x10 -+ ATTR_VOL_SPACEFREE = 0x8 -+ ATTR_VOL_SPACEUSED = 0x800000 -+ ATTR_VOL_UUID = 0x40000 -+ ATTR_VOL_VALIDMASK = 0xf087ffff -+ B0 = 0x0 -+ B110 = 0x6e -+ B115200 = 0x1c200 -+ B1200 = 0x4b0 -+ B134 = 0x86 -+ B14400 = 0x3840 -+ B150 = 0x96 -+ B1800 = 0x708 -+ B19200 = 0x4b00 -+ B200 = 0xc8 -+ B230400 = 0x38400 -+ B2400 = 0x960 -+ B28800 = 0x7080 -+ B300 = 0x12c -+ B38400 = 0x9600 -+ B4800 = 0x12c0 -+ B50 = 0x32 -+ B57600 = 0xe100 -+ B600 = 0x258 -+ B7200 = 0x1c20 -+ B75 = 0x4b -+ B76800 = 0x12c00 -+ B9600 = 0x2580 -+ BIOCFLUSH = 0x20004268 -+ BIOCGBLEN = 0x40044266 -+ BIOCGDLT = 0x4004426a -+ BIOCGDLTLIST = 0xc00c4279 -+ BIOCGETIF = 0x4020426b -+ BIOCGHDRCMPLT = 0x40044274 -+ BIOCGRSIG = 0x40044272 -+ BIOCGRTIMEOUT = 0x4010426e -+ BIOCGSEESENT = 0x40044276 -+ BIOCGSTATS = 0x4008426f -+ BIOCIMMEDIATE = 0x80044270 -+ BIOCPROMISC = 0x20004269 -+ BIOCSBLEN = 0xc0044266 -+ BIOCSDLT = 0x80044278 -+ BIOCSETF = 0x80104267 -+ BIOCSETFNR = 0x8010427e -+ BIOCSETIF = 0x8020426c -+ BIOCSHDRCMPLT = 0x80044275 -+ BIOCSRSIG = 0x80044273 -+ BIOCSRTIMEOUT = 0x8010426d -+ BIOCSSEESENT = 0x80044277 -+ BIOCVERSION = 0x40044271 -+ BPF_A = 0x10 -+ BPF_ABS = 0x20 -+ BPF_ADD = 0x0 -+ BPF_ALIGNMENT = 0x4 -+ BPF_ALU = 0x4 -+ BPF_AND = 0x50 -+ BPF_B = 0x10 -+ BPF_DIV = 0x30 -+ BPF_H = 0x8 -+ BPF_IMM = 0x0 -+ BPF_IND = 0x40 -+ BPF_JA = 0x0 -+ BPF_JEQ = 0x10 -+ BPF_JGE = 0x30 -+ BPF_JGT = 0x20 -+ BPF_JMP = 0x5 -+ BPF_JSET = 0x40 -+ BPF_K = 0x0 -+ BPF_LD = 0x0 -+ BPF_LDX = 0x1 -+ BPF_LEN = 0x80 -+ BPF_LSH = 0x60 -+ BPF_MAJOR_VERSION = 0x1 -+ BPF_MAXBUFSIZE = 0x80000 -+ BPF_MAXINSNS = 0x200 -+ BPF_MEM = 0x60 -+ BPF_MEMWORDS = 0x10 -+ BPF_MINBUFSIZE = 0x20 -+ BPF_MINOR_VERSION = 0x1 -+ BPF_MISC = 0x7 -+ BPF_MSH = 0xa0 -+ BPF_MUL = 0x20 -+ BPF_NEG = 0x80 -+ BPF_OR = 0x40 -+ BPF_RELEASE = 0x30bb6 -+ BPF_RET = 0x6 -+ BPF_RSH = 0x70 -+ BPF_ST = 0x2 -+ BPF_STX = 0x3 -+ BPF_SUB = 0x10 -+ BPF_TAX = 0x0 -+ BPF_TXA = 0x80 -+ BPF_W = 0x0 -+ BPF_X = 0x8 -+ BRKINT = 0x2 -+ BS0 = 0x0 -+ BS1 = 0x8000 -+ BSDLY = 0x8000 -+ CFLUSH = 0xf -+ CLOCAL = 0x8000 -+ CLOCK_MONOTONIC = 0x6 -+ CLOCK_MONOTONIC_RAW = 0x4 -+ CLOCK_MONOTONIC_RAW_APPROX = 0x5 -+ CLOCK_PROCESS_CPUTIME_ID = 0xc -+ CLOCK_REALTIME = 0x0 -+ CLOCK_THREAD_CPUTIME_ID = 0x10 -+ CLOCK_UPTIME_RAW = 0x8 -+ CLOCK_UPTIME_RAW_APPROX = 0x9 -+ CLONE_NOFOLLOW = 0x1 -+ CLONE_NOOWNERCOPY = 0x2 -+ CR0 = 0x0 -+ CR1 = 0x1000 -+ CR2 = 0x2000 -+ CR3 = 0x3000 -+ CRDLY = 0x3000 -+ CREAD = 0x800 -+ CRTSCTS = 0x30000 -+ CS5 = 0x0 -+ CS6 = 0x100 -+ CS7 = 0x200 -+ CS8 = 0x300 -+ CSIZE = 0x300 -+ CSTART = 0x11 -+ CSTATUS = 0x14 -+ CSTOP = 0x13 -+ CSTOPB = 0x400 -+ CSUSP = 0x1a -+ CTLIOCGINFO = 0xc0644e03 -+ CTL_HW = 0x6 -+ CTL_KERN = 0x1 -+ CTL_MAXNAME = 0xc -+ CTL_NET = 0x4 -+ DLT_A429 = 0xb8 -+ DLT_A653_ICM = 0xb9 -+ DLT_AIRONET_HEADER = 0x78 -+ DLT_AOS = 0xde -+ DLT_APPLE_IP_OVER_IEEE1394 = 0x8a -+ DLT_ARCNET = 0x7 -+ DLT_ARCNET_LINUX = 0x81 -+ DLT_ATM_CLIP = 0x13 -+ DLT_ATM_RFC1483 = 0xb -+ DLT_AURORA = 0x7e -+ DLT_AX25 = 0x3 -+ DLT_AX25_KISS = 0xca -+ DLT_BACNET_MS_TP = 0xa5 -+ DLT_BLUETOOTH_HCI_H4 = 0xbb -+ DLT_BLUETOOTH_HCI_H4_WITH_PHDR = 0xc9 -+ DLT_CAN20B = 0xbe -+ DLT_CAN_SOCKETCAN = 0xe3 -+ DLT_CHAOS = 0x5 -+ DLT_CHDLC = 0x68 -+ DLT_CISCO_IOS = 0x76 -+ DLT_C_HDLC = 0x68 -+ DLT_C_HDLC_WITH_DIR = 0xcd -+ DLT_DBUS = 0xe7 -+ DLT_DECT = 0xdd -+ DLT_DOCSIS = 0x8f -+ DLT_DVB_CI = 0xeb -+ DLT_ECONET = 0x73 -+ DLT_EN10MB = 0x1 -+ DLT_EN3MB = 0x2 -+ DLT_ENC = 0x6d -+ DLT_ERF = 0xc5 -+ DLT_ERF_ETH = 0xaf -+ DLT_ERF_POS = 0xb0 -+ DLT_FC_2 = 0xe0 -+ DLT_FC_2_WITH_FRAME_DELIMS = 0xe1 -+ DLT_FDDI = 0xa -+ DLT_FLEXRAY = 0xd2 -+ DLT_FRELAY = 0x6b -+ DLT_FRELAY_WITH_DIR = 0xce -+ DLT_GCOM_SERIAL = 0xad -+ DLT_GCOM_T1E1 = 0xac -+ DLT_GPF_F = 0xab -+ DLT_GPF_T = 0xaa -+ DLT_GPRS_LLC = 0xa9 -+ DLT_GSMTAP_ABIS = 0xda -+ DLT_GSMTAP_UM = 0xd9 -+ DLT_HHDLC = 0x79 -+ DLT_IBM_SN = 0x92 -+ DLT_IBM_SP = 0x91 -+ DLT_IEEE802 = 0x6 -+ DLT_IEEE802_11 = 0x69 -+ DLT_IEEE802_11_RADIO = 0x7f -+ DLT_IEEE802_11_RADIO_AVS = 0xa3 -+ DLT_IEEE802_15_4 = 0xc3 -+ DLT_IEEE802_15_4_LINUX = 0xbf -+ DLT_IEEE802_15_4_NOFCS = 0xe6 -+ DLT_IEEE802_15_4_NONASK_PHY = 0xd7 -+ DLT_IEEE802_16_MAC_CPS = 0xbc -+ DLT_IEEE802_16_MAC_CPS_RADIO = 0xc1 -+ DLT_IPFILTER = 0x74 -+ DLT_IPMB = 0xc7 -+ DLT_IPMB_LINUX = 0xd1 -+ DLT_IPNET = 0xe2 -+ DLT_IPOIB = 0xf2 -+ DLT_IPV4 = 0xe4 -+ DLT_IPV6 = 0xe5 -+ DLT_IP_OVER_FC = 0x7a -+ DLT_JUNIPER_ATM1 = 0x89 -+ DLT_JUNIPER_ATM2 = 0x87 -+ DLT_JUNIPER_ATM_CEMIC = 0xee -+ DLT_JUNIPER_CHDLC = 0xb5 -+ DLT_JUNIPER_ES = 0x84 -+ DLT_JUNIPER_ETHER = 0xb2 -+ DLT_JUNIPER_FIBRECHANNEL = 0xea -+ DLT_JUNIPER_FRELAY = 0xb4 -+ DLT_JUNIPER_GGSN = 0x85 -+ DLT_JUNIPER_ISM = 0xc2 -+ DLT_JUNIPER_MFR = 0x86 -+ DLT_JUNIPER_MLFR = 0x83 -+ DLT_JUNIPER_MLPPP = 0x82 -+ DLT_JUNIPER_MONITOR = 0xa4 -+ DLT_JUNIPER_PIC_PEER = 0xae -+ DLT_JUNIPER_PPP = 0xb3 -+ DLT_JUNIPER_PPPOE = 0xa7 -+ DLT_JUNIPER_PPPOE_ATM = 0xa8 -+ DLT_JUNIPER_SERVICES = 0x88 -+ DLT_JUNIPER_SRX_E2E = 0xe9 -+ DLT_JUNIPER_ST = 0xc8 -+ DLT_JUNIPER_VP = 0xb7 -+ DLT_JUNIPER_VS = 0xe8 -+ DLT_LAPB_WITH_DIR = 0xcf -+ DLT_LAPD = 0xcb -+ DLT_LIN = 0xd4 -+ DLT_LINUX_EVDEV = 0xd8 -+ DLT_LINUX_IRDA = 0x90 -+ DLT_LINUX_LAPD = 0xb1 -+ DLT_LINUX_PPP_WITHDIRECTION = 0xa6 -+ DLT_LINUX_SLL = 0x71 -+ DLT_LOOP = 0x6c -+ DLT_LTALK = 0x72 -+ DLT_MATCHING_MAX = 0x10a -+ DLT_MATCHING_MIN = 0x68 -+ DLT_MFR = 0xb6 -+ DLT_MOST = 0xd3 -+ DLT_MPEG_2_TS = 0xf3 -+ DLT_MPLS = 0xdb -+ DLT_MTP2 = 0x8c -+ DLT_MTP2_WITH_PHDR = 0x8b -+ DLT_MTP3 = 0x8d -+ DLT_MUX27010 = 0xec -+ DLT_NETANALYZER = 0xf0 -+ DLT_NETANALYZER_TRANSPARENT = 0xf1 -+ DLT_NFC_LLCP = 0xf5 -+ DLT_NFLOG = 0xef -+ DLT_NG40 = 0xf4 -+ DLT_NULL = 0x0 -+ DLT_PCI_EXP = 0x7d -+ DLT_PFLOG = 0x75 -+ DLT_PFSYNC = 0x12 -+ DLT_PPI = 0xc0 -+ DLT_PPP = 0x9 -+ DLT_PPP_BSDOS = 0x10 -+ DLT_PPP_ETHER = 0x33 -+ DLT_PPP_PPPD = 0xa6 -+ DLT_PPP_SERIAL = 0x32 -+ DLT_PPP_WITH_DIR = 0xcc -+ DLT_PPP_WITH_DIRECTION = 0xa6 -+ DLT_PRISM_HEADER = 0x77 -+ DLT_PRONET = 0x4 -+ DLT_RAIF1 = 0xc6 -+ DLT_RAW = 0xc -+ DLT_RIO = 0x7c -+ DLT_SCCP = 0x8e -+ DLT_SITA = 0xc4 -+ DLT_SLIP = 0x8 -+ DLT_SLIP_BSDOS = 0xf -+ DLT_STANAG_5066_D_PDU = 0xed -+ DLT_SUNATM = 0x7b -+ DLT_SYMANTEC_FIREWALL = 0x63 -+ DLT_TZSP = 0x80 -+ DLT_USB = 0xba -+ DLT_USB_DARWIN = 0x10a -+ DLT_USB_LINUX = 0xbd -+ DLT_USB_LINUX_MMAPPED = 0xdc -+ DLT_USER0 = 0x93 -+ DLT_USER1 = 0x94 -+ DLT_USER10 = 0x9d -+ DLT_USER11 = 0x9e -+ DLT_USER12 = 0x9f -+ DLT_USER13 = 0xa0 -+ DLT_USER14 = 0xa1 -+ DLT_USER15 = 0xa2 -+ DLT_USER2 = 0x95 -+ DLT_USER3 = 0x96 -+ DLT_USER4 = 0x97 -+ DLT_USER5 = 0x98 -+ DLT_USER6 = 0x99 -+ DLT_USER7 = 0x9a -+ DLT_USER8 = 0x9b -+ DLT_USER9 = 0x9c -+ DLT_WIHART = 0xdf -+ DLT_X2E_SERIAL = 0xd5 -+ DLT_X2E_XORAYA = 0xd6 -+ DT_BLK = 0x6 -+ DT_CHR = 0x2 -+ DT_DIR = 0x4 -+ DT_FIFO = 0x1 -+ DT_LNK = 0xa -+ DT_REG = 0x8 -+ DT_SOCK = 0xc -+ DT_UNKNOWN = 0x0 -+ DT_WHT = 0xe -+ ECHO = 0x8 -+ ECHOCTL = 0x40 -+ ECHOE = 0x2 -+ ECHOK = 0x4 -+ ECHOKE = 0x1 -+ ECHONL = 0x10 -+ ECHOPRT = 0x20 -+ EVFILT_AIO = -0x3 -+ EVFILT_EXCEPT = -0xf -+ EVFILT_FS = -0x9 -+ EVFILT_MACHPORT = -0x8 -+ EVFILT_PROC = -0x5 -+ EVFILT_READ = -0x1 -+ EVFILT_SIGNAL = -0x6 -+ EVFILT_SYSCOUNT = 0x11 -+ EVFILT_THREADMARKER = 0x11 -+ EVFILT_TIMER = -0x7 -+ EVFILT_USER = -0xa -+ EVFILT_VM = -0xc -+ EVFILT_VNODE = -0x4 -+ EVFILT_WRITE = -0x2 -+ EV_ADD = 0x1 -+ EV_CLEAR = 0x20 -+ EV_DELETE = 0x2 -+ EV_DISABLE = 0x8 -+ EV_DISPATCH = 0x80 -+ EV_DISPATCH2 = 0x180 -+ EV_ENABLE = 0x4 -+ EV_EOF = 0x8000 -+ EV_ERROR = 0x4000 -+ EV_FLAG0 = 0x1000 -+ EV_FLAG1 = 0x2000 -+ EV_ONESHOT = 0x10 -+ EV_OOBAND = 0x2000 -+ EV_POLL = 0x1000 -+ EV_RECEIPT = 0x40 -+ EV_SYSFLAGS = 0xf000 -+ EV_UDATA_SPECIFIC = 0x100 -+ EV_VANISHED = 0x200 -+ EXTA = 0x4b00 -+ EXTB = 0x9600 -+ EXTPROC = 0x800 -+ FD_CLOEXEC = 0x1 -+ FD_SETSIZE = 0x400 -+ FF0 = 0x0 -+ FF1 = 0x4000 -+ FFDLY = 0x4000 -+ FLUSHO = 0x800000 -+ FSOPT_ATTR_CMN_EXTENDED = 0x20 -+ FSOPT_NOFOLLOW = 0x1 -+ FSOPT_NOINMEMUPDATE = 0x2 -+ FSOPT_PACK_INVAL_ATTRS = 0x8 -+ FSOPT_REPORT_FULLSIZE = 0x4 -+ FSOPT_RETURN_REALDEV = 0x200 -+ F_ADDFILESIGS = 0x3d -+ F_ADDFILESIGS_FOR_DYLD_SIM = 0x53 -+ F_ADDFILESIGS_INFO = 0x67 -+ F_ADDFILESIGS_RETURN = 0x61 -+ F_ADDFILESUPPL = 0x68 -+ F_ADDSIGS = 0x3b -+ F_ALLOCATEALL = 0x4 -+ F_ALLOCATECONTIG = 0x2 -+ F_BARRIERFSYNC = 0x55 -+ F_CHECK_LV = 0x62 -+ F_CHKCLEAN = 0x29 -+ F_DUPFD = 0x0 -+ F_DUPFD_CLOEXEC = 0x43 -+ F_FINDSIGS = 0x4e -+ F_FLUSH_DATA = 0x28 -+ F_FREEZE_FS = 0x35 -+ F_FULLFSYNC = 0x33 -+ F_GETCODEDIR = 0x48 -+ F_GETFD = 0x1 -+ F_GETFL = 0x3 -+ F_GETLK = 0x7 -+ F_GETLKPID = 0x42 -+ F_GETNOSIGPIPE = 0x4a -+ F_GETOWN = 0x5 -+ F_GETPATH = 0x32 -+ F_GETPATH_MTMINFO = 0x47 -+ F_GETPATH_NOFIRMLINK = 0x66 -+ F_GETPROTECTIONCLASS = 0x3f -+ F_GETPROTECTIONLEVEL = 0x4d -+ F_GETSIGSINFO = 0x69 -+ F_GLOBAL_NOCACHE = 0x37 -+ F_LOG2PHYS = 0x31 -+ F_LOG2PHYS_EXT = 0x41 -+ F_NOCACHE = 0x30 -+ F_NODIRECT = 0x3e -+ F_OK = 0x0 -+ F_PATHPKG_CHECK = 0x34 -+ F_PEOFPOSMODE = 0x3 -+ F_PREALLOCATE = 0x2a -+ F_PUNCHHOLE = 0x63 -+ F_RDADVISE = 0x2c -+ F_RDAHEAD = 0x2d -+ F_RDLCK = 0x1 -+ F_SETBACKINGSTORE = 0x46 -+ F_SETFD = 0x2 -+ F_SETFL = 0x4 -+ F_SETLK = 0x8 -+ F_SETLKW = 0x9 -+ F_SETLKWTIMEOUT = 0xa -+ F_SETNOSIGPIPE = 0x49 -+ F_SETOWN = 0x6 -+ F_SETPROTECTIONCLASS = 0x40 -+ F_SETSIZE = 0x2b -+ F_SINGLE_WRITER = 0x4c -+ F_SPECULATIVE_READ = 0x65 -+ F_THAW_FS = 0x36 -+ F_TRANSCODEKEY = 0x4b -+ F_TRIM_ACTIVE_FILE = 0x64 -+ F_UNLCK = 0x2 -+ F_VOLPOSMODE = 0x4 -+ F_WRLCK = 0x3 -+ HUPCL = 0x4000 -+ HW_MACHINE = 0x1 -+ ICANON = 0x100 -+ ICMP6_FILTER = 0x12 -+ ICRNL = 0x100 -+ IEXTEN = 0x400 -+ IFF_ALLMULTI = 0x200 -+ IFF_ALTPHYS = 0x4000 -+ IFF_BROADCAST = 0x2 -+ IFF_DEBUG = 0x4 -+ IFF_LINK0 = 0x1000 -+ IFF_LINK1 = 0x2000 -+ IFF_LINK2 = 0x4000 -+ IFF_LOOPBACK = 0x8 -+ IFF_MULTICAST = 0x8000 -+ IFF_NOARP = 0x80 -+ IFF_NOTRAILERS = 0x20 -+ IFF_OACTIVE = 0x400 -+ IFF_POINTOPOINT = 0x10 -+ IFF_PROMISC = 0x100 -+ IFF_RUNNING = 0x40 -+ IFF_SIMPLEX = 0x800 -+ IFF_UP = 0x1 -+ IFNAMSIZ = 0x10 -+ IFT_1822 = 0x2 -+ IFT_6LOWPAN = 0x40 -+ IFT_AAL5 = 0x31 -+ IFT_ARCNET = 0x23 -+ IFT_ARCNETPLUS = 0x24 -+ IFT_ATM = 0x25 -+ IFT_BRIDGE = 0xd1 -+ IFT_CARP = 0xf8 -+ IFT_CELLULAR = 0xff -+ IFT_CEPT = 0x13 -+ IFT_DS3 = 0x1e -+ IFT_ENC = 0xf4 -+ IFT_EON = 0x19 -+ IFT_ETHER = 0x6 -+ IFT_FAITH = 0x38 -+ IFT_FDDI = 0xf -+ IFT_FRELAY = 0x20 -+ IFT_FRELAYDCE = 0x2c -+ IFT_GIF = 0x37 -+ IFT_HDH1822 = 0x3 -+ IFT_HIPPI = 0x2f -+ IFT_HSSI = 0x2e -+ IFT_HY = 0xe -+ IFT_IEEE1394 = 0x90 -+ IFT_IEEE8023ADLAG = 0x88 -+ IFT_ISDNBASIC = 0x14 -+ IFT_ISDNPRIMARY = 0x15 -+ IFT_ISO88022LLC = 0x29 -+ IFT_ISO88023 = 0x7 -+ IFT_ISO88024 = 0x8 -+ IFT_ISO88025 = 0x9 -+ IFT_ISO88026 = 0xa -+ IFT_L2VLAN = 0x87 -+ IFT_LAPB = 0x10 -+ IFT_LOCALTALK = 0x2a -+ IFT_LOOP = 0x18 -+ IFT_MIOX25 = 0x26 -+ IFT_MODEM = 0x30 -+ IFT_NSIP = 0x1b -+ IFT_OTHER = 0x1 -+ IFT_P10 = 0xc -+ IFT_P80 = 0xd -+ IFT_PARA = 0x22 -+ IFT_PDP = 0xff -+ IFT_PFLOG = 0xf5 -+ IFT_PFSYNC = 0xf6 -+ IFT_PKTAP = 0xfe -+ IFT_PPP = 0x17 -+ IFT_PROPMUX = 0x36 -+ IFT_PROPVIRTUAL = 0x35 -+ IFT_PTPSERIAL = 0x16 -+ IFT_RS232 = 0x21 -+ IFT_SDLC = 0x11 -+ IFT_SIP = 0x1f -+ IFT_SLIP = 0x1c -+ IFT_SMDSDXI = 0x2b -+ IFT_SMDSICIP = 0x34 -+ IFT_SONET = 0x27 -+ IFT_SONETPATH = 0x32 -+ IFT_SONETVT = 0x33 -+ IFT_STARLAN = 0xb -+ IFT_STF = 0x39 -+ IFT_T1 = 0x12 -+ IFT_ULTRA = 0x1d -+ IFT_V35 = 0x2d -+ IFT_X25 = 0x5 -+ IFT_X25DDN = 0x4 -+ IFT_X25PLE = 0x28 -+ IFT_XETHER = 0x1a -+ IGNBRK = 0x1 -+ IGNCR = 0x80 -+ IGNPAR = 0x4 -+ IMAXBEL = 0x2000 -+ INLCR = 0x40 -+ INPCK = 0x10 -+ IN_CLASSA_HOST = 0xffffff -+ IN_CLASSA_MAX = 0x80 -+ IN_CLASSA_NET = 0xff000000 -+ IN_CLASSA_NSHIFT = 0x18 -+ IN_CLASSB_HOST = 0xffff -+ IN_CLASSB_MAX = 0x10000 -+ IN_CLASSB_NET = 0xffff0000 -+ IN_CLASSB_NSHIFT = 0x10 -+ IN_CLASSC_HOST = 0xff -+ IN_CLASSC_NET = 0xffffff00 -+ IN_CLASSC_NSHIFT = 0x8 -+ IN_CLASSD_HOST = 0xfffffff -+ IN_CLASSD_NET = 0xf0000000 -+ IN_CLASSD_NSHIFT = 0x1c -+ IN_LINKLOCALNETNUM = 0xa9fe0000 -+ IN_LOOPBACKNET = 0x7f -+ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x400473d1 -+ IPPROTO_3PC = 0x22 -+ IPPROTO_ADFS = 0x44 -+ IPPROTO_AH = 0x33 -+ IPPROTO_AHIP = 0x3d -+ IPPROTO_APES = 0x63 -+ IPPROTO_ARGUS = 0xd -+ IPPROTO_AX25 = 0x5d -+ IPPROTO_BHA = 0x31 -+ IPPROTO_BLT = 0x1e -+ IPPROTO_BRSATMON = 0x4c -+ IPPROTO_CFTP = 0x3e -+ IPPROTO_CHAOS = 0x10 -+ IPPROTO_CMTP = 0x26 -+ IPPROTO_CPHB = 0x49 -+ IPPROTO_CPNX = 0x48 -+ IPPROTO_DDP = 0x25 -+ IPPROTO_DGP = 0x56 -+ IPPROTO_DIVERT = 0xfe -+ IPPROTO_DONE = 0x101 -+ IPPROTO_DSTOPTS = 0x3c -+ IPPROTO_EGP = 0x8 -+ IPPROTO_EMCON = 0xe -+ IPPROTO_ENCAP = 0x62 -+ IPPROTO_EON = 0x50 -+ IPPROTO_ESP = 0x32 -+ IPPROTO_ETHERIP = 0x61 -+ IPPROTO_FRAGMENT = 0x2c -+ IPPROTO_GGP = 0x3 -+ IPPROTO_GMTP = 0x64 -+ IPPROTO_GRE = 0x2f -+ IPPROTO_HELLO = 0x3f -+ IPPROTO_HMP = 0x14 -+ IPPROTO_HOPOPTS = 0x0 -+ IPPROTO_ICMP = 0x1 -+ IPPROTO_ICMPV6 = 0x3a -+ IPPROTO_IDP = 0x16 -+ IPPROTO_IDPR = 0x23 -+ IPPROTO_IDRP = 0x2d -+ IPPROTO_IGMP = 0x2 -+ IPPROTO_IGP = 0x55 -+ IPPROTO_IGRP = 0x58 -+ IPPROTO_IL = 0x28 -+ IPPROTO_INLSP = 0x34 -+ IPPROTO_INP = 0x20 -+ IPPROTO_IP = 0x0 -+ IPPROTO_IPCOMP = 0x6c -+ IPPROTO_IPCV = 0x47 -+ IPPROTO_IPEIP = 0x5e -+ IPPROTO_IPIP = 0x4 -+ IPPROTO_IPPC = 0x43 -+ IPPROTO_IPV4 = 0x4 -+ IPPROTO_IPV6 = 0x29 -+ IPPROTO_IRTP = 0x1c -+ IPPROTO_KRYPTOLAN = 0x41 -+ IPPROTO_LARP = 0x5b -+ IPPROTO_LEAF1 = 0x19 -+ IPPROTO_LEAF2 = 0x1a -+ IPPROTO_MAX = 0x100 -+ IPPROTO_MAXID = 0x34 -+ IPPROTO_MEAS = 0x13 -+ IPPROTO_MHRP = 0x30 -+ IPPROTO_MICP = 0x5f -+ IPPROTO_MTP = 0x5c -+ IPPROTO_MUX = 0x12 -+ IPPROTO_ND = 0x4d -+ IPPROTO_NHRP = 0x36 -+ IPPROTO_NONE = 0x3b -+ IPPROTO_NSP = 0x1f -+ IPPROTO_NVPII = 0xb -+ IPPROTO_OSPFIGP = 0x59 -+ IPPROTO_PGM = 0x71 -+ IPPROTO_PIGP = 0x9 -+ IPPROTO_PIM = 0x67 -+ IPPROTO_PRM = 0x15 -+ IPPROTO_PUP = 0xc -+ IPPROTO_PVP = 0x4b -+ IPPROTO_RAW = 0xff -+ IPPROTO_RCCMON = 0xa -+ IPPROTO_RDP = 0x1b -+ IPPROTO_ROUTING = 0x2b -+ IPPROTO_RSVP = 0x2e -+ IPPROTO_RVD = 0x42 -+ IPPROTO_SATEXPAK = 0x40 -+ IPPROTO_SATMON = 0x45 -+ IPPROTO_SCCSP = 0x60 -+ IPPROTO_SCTP = 0x84 -+ IPPROTO_SDRP = 0x2a -+ IPPROTO_SEP = 0x21 -+ IPPROTO_SRPC = 0x5a -+ IPPROTO_ST = 0x7 -+ IPPROTO_SVMTP = 0x52 -+ IPPROTO_SWIPE = 0x35 -+ IPPROTO_TCF = 0x57 -+ IPPROTO_TCP = 0x6 -+ IPPROTO_TP = 0x1d -+ IPPROTO_TPXX = 0x27 -+ IPPROTO_TRUNK1 = 0x17 -+ IPPROTO_TRUNK2 = 0x18 -+ IPPROTO_TTP = 0x54 -+ IPPROTO_UDP = 0x11 -+ IPPROTO_VINES = 0x53 -+ IPPROTO_VISA = 0x46 -+ IPPROTO_VMTP = 0x51 -+ IPPROTO_WBEXPAK = 0x4f -+ IPPROTO_WBMON = 0x4e -+ IPPROTO_WSN = 0x4a -+ IPPROTO_XNET = 0xf -+ IPPROTO_XTP = 0x24 -+ IPV6_2292DSTOPTS = 0x17 -+ IPV6_2292HOPLIMIT = 0x14 -+ IPV6_2292HOPOPTS = 0x16 -+ IPV6_2292NEXTHOP = 0x15 -+ IPV6_2292PKTINFO = 0x13 -+ IPV6_2292PKTOPTIONS = 0x19 -+ IPV6_2292RTHDR = 0x18 -+ IPV6_3542DSTOPTS = 0x32 -+ IPV6_3542HOPLIMIT = 0x2f -+ IPV6_3542HOPOPTS = 0x31 -+ IPV6_3542NEXTHOP = 0x30 -+ IPV6_3542PKTINFO = 0x2e -+ IPV6_3542RTHDR = 0x33 -+ IPV6_ADDR_MC_FLAGS_PREFIX = 0x20 -+ IPV6_ADDR_MC_FLAGS_TRANSIENT = 0x10 -+ IPV6_ADDR_MC_FLAGS_UNICAST_BASED = 0x30 -+ IPV6_AUTOFLOWLABEL = 0x3b -+ IPV6_BINDV6ONLY = 0x1b -+ IPV6_BOUND_IF = 0x7d -+ IPV6_CHECKSUM = 0x1a -+ IPV6_DEFAULT_MULTICAST_HOPS = 0x1 -+ IPV6_DEFAULT_MULTICAST_LOOP = 0x1 -+ IPV6_DEFHLIM = 0x40 -+ IPV6_DONTFRAG = 0x3e -+ IPV6_DSTOPTS = 0x32 -+ IPV6_FAITH = 0x1d -+ IPV6_FLOWINFO_MASK = 0xffffff0f -+ IPV6_FLOWLABEL_MASK = 0xffff0f00 -+ IPV6_FLOW_ECN_MASK = 0x3000 -+ IPV6_FRAGTTL = 0x3c -+ IPV6_FW_ADD = 0x1e -+ IPV6_FW_DEL = 0x1f -+ IPV6_FW_FLUSH = 0x20 -+ IPV6_FW_GET = 0x22 -+ IPV6_FW_ZERO = 0x21 -+ IPV6_HLIMDEC = 0x1 -+ IPV6_HOPLIMIT = 0x2f -+ IPV6_HOPOPTS = 0x31 -+ IPV6_IPSEC_POLICY = 0x1c -+ IPV6_JOIN_GROUP = 0xc -+ IPV6_LEAVE_GROUP = 0xd -+ IPV6_MAXHLIM = 0xff -+ IPV6_MAXOPTHDR = 0x800 -+ IPV6_MAXPACKET = 0xffff -+ IPV6_MAX_GROUP_SRC_FILTER = 0x200 -+ IPV6_MAX_MEMBERSHIPS = 0xfff -+ IPV6_MAX_SOCK_SRC_FILTER = 0x80 -+ IPV6_MIN_MEMBERSHIPS = 0x1f -+ IPV6_MMTU = 0x500 -+ IPV6_MSFILTER = 0x4a -+ IPV6_MULTICAST_HOPS = 0xa -+ IPV6_MULTICAST_IF = 0x9 -+ IPV6_MULTICAST_LOOP = 0xb -+ IPV6_NEXTHOP = 0x30 -+ IPV6_PATHMTU = 0x2c -+ IPV6_PKTINFO = 0x2e -+ IPV6_PORTRANGE = 0xe -+ IPV6_PORTRANGE_DEFAULT = 0x0 -+ IPV6_PORTRANGE_HIGH = 0x1 -+ IPV6_PORTRANGE_LOW = 0x2 -+ IPV6_PREFER_TEMPADDR = 0x3f -+ IPV6_RECVDSTOPTS = 0x28 -+ IPV6_RECVHOPLIMIT = 0x25 -+ IPV6_RECVHOPOPTS = 0x27 -+ IPV6_RECVPATHMTU = 0x2b -+ IPV6_RECVPKTINFO = 0x3d -+ IPV6_RECVRTHDR = 0x26 -+ IPV6_RECVTCLASS = 0x23 -+ IPV6_RTHDR = 0x33 -+ IPV6_RTHDRDSTOPTS = 0x39 -+ IPV6_RTHDR_LOOSE = 0x0 -+ IPV6_RTHDR_STRICT = 0x1 -+ IPV6_RTHDR_TYPE_0 = 0x0 -+ IPV6_SOCKOPT_RESERVED1 = 0x3 -+ IPV6_TCLASS = 0x24 -+ IPV6_UNICAST_HOPS = 0x4 -+ IPV6_USE_MIN_MTU = 0x2a -+ IPV6_V6ONLY = 0x1b -+ IPV6_VERSION = 0x60 -+ IPV6_VERSION_MASK = 0xf0 -+ IP_ADD_MEMBERSHIP = 0xc -+ IP_ADD_SOURCE_MEMBERSHIP = 0x46 -+ IP_BLOCK_SOURCE = 0x48 -+ IP_BOUND_IF = 0x19 -+ IP_DEFAULT_MULTICAST_LOOP = 0x1 -+ IP_DEFAULT_MULTICAST_TTL = 0x1 -+ IP_DF = 0x4000 -+ IP_DONTFRAG = 0x1c -+ IP_DROP_MEMBERSHIP = 0xd -+ IP_DROP_SOURCE_MEMBERSHIP = 0x47 -+ IP_DUMMYNET_CONFIGURE = 0x3c -+ IP_DUMMYNET_DEL = 0x3d -+ IP_DUMMYNET_FLUSH = 0x3e -+ IP_DUMMYNET_GET = 0x40 -+ IP_FAITH = 0x16 -+ IP_FW_ADD = 0x28 -+ IP_FW_DEL = 0x29 -+ IP_FW_FLUSH = 0x2a -+ IP_FW_GET = 0x2c -+ IP_FW_RESETLOG = 0x2d -+ IP_FW_ZERO = 0x2b -+ IP_HDRINCL = 0x2 -+ IP_IPSEC_POLICY = 0x15 -+ IP_MAXPACKET = 0xffff -+ IP_MAX_GROUP_SRC_FILTER = 0x200 -+ IP_MAX_MEMBERSHIPS = 0xfff -+ IP_MAX_SOCK_MUTE_FILTER = 0x80 -+ IP_MAX_SOCK_SRC_FILTER = 0x80 -+ IP_MF = 0x2000 -+ IP_MIN_MEMBERSHIPS = 0x1f -+ IP_MSFILTER = 0x4a -+ IP_MSS = 0x240 -+ IP_MULTICAST_IF = 0x9 -+ IP_MULTICAST_IFINDEX = 0x42 -+ IP_MULTICAST_LOOP = 0xb -+ IP_MULTICAST_TTL = 0xa -+ IP_MULTICAST_VIF = 0xe -+ IP_NAT__XXX = 0x37 -+ IP_OFFMASK = 0x1fff -+ IP_OLD_FW_ADD = 0x32 -+ IP_OLD_FW_DEL = 0x33 -+ IP_OLD_FW_FLUSH = 0x34 -+ IP_OLD_FW_GET = 0x36 -+ IP_OLD_FW_RESETLOG = 0x38 -+ IP_OLD_FW_ZERO = 0x35 -+ IP_OPTIONS = 0x1 -+ IP_PKTINFO = 0x1a -+ IP_PORTRANGE = 0x13 -+ IP_PORTRANGE_DEFAULT = 0x0 -+ IP_PORTRANGE_HIGH = 0x1 -+ IP_PORTRANGE_LOW = 0x2 -+ IP_RECVDSTADDR = 0x7 -+ IP_RECVIF = 0x14 -+ IP_RECVOPTS = 0x5 -+ IP_RECVPKTINFO = 0x1a -+ IP_RECVRETOPTS = 0x6 -+ IP_RECVTOS = 0x1b -+ IP_RECVTTL = 0x18 -+ IP_RETOPTS = 0x8 -+ IP_RF = 0x8000 -+ IP_RSVP_OFF = 0x10 -+ IP_RSVP_ON = 0xf -+ IP_RSVP_VIF_OFF = 0x12 -+ IP_RSVP_VIF_ON = 0x11 -+ IP_STRIPHDR = 0x17 -+ IP_TOS = 0x3 -+ IP_TRAFFIC_MGT_BACKGROUND = 0x41 -+ IP_TTL = 0x4 -+ IP_UNBLOCK_SOURCE = 0x49 -+ ISIG = 0x80 -+ ISTRIP = 0x20 -+ IUTF8 = 0x4000 -+ IXANY = 0x800 -+ IXOFF = 0x400 -+ IXON = 0x200 -+ KERN_HOSTNAME = 0xa -+ KERN_OSRELEASE = 0x2 -+ KERN_OSTYPE = 0x1 -+ KERN_VERSION = 0x4 -+ LOCAL_PEERCRED = 0x1 -+ LOCAL_PEEREPID = 0x3 -+ LOCAL_PEEREUUID = 0x5 -+ LOCAL_PEERPID = 0x2 -+ LOCAL_PEERTOKEN = 0x6 -+ LOCAL_PEERUUID = 0x4 -+ LOCK_EX = 0x2 -+ LOCK_NB = 0x4 -+ LOCK_SH = 0x1 -+ LOCK_UN = 0x8 -+ MADV_CAN_REUSE = 0x9 -+ MADV_DONTNEED = 0x4 -+ MADV_FREE = 0x5 -+ MADV_FREE_REUSABLE = 0x7 -+ MADV_FREE_REUSE = 0x8 -+ MADV_NORMAL = 0x0 -+ MADV_PAGEOUT = 0xa -+ MADV_RANDOM = 0x1 -+ MADV_SEQUENTIAL = 0x2 -+ MADV_WILLNEED = 0x3 -+ MADV_ZERO_WIRED_PAGES = 0x6 -+ MAP_32BIT = 0x8000 -+ MAP_ANON = 0x1000 -+ MAP_ANONYMOUS = 0x1000 -+ MAP_COPY = 0x2 -+ MAP_FILE = 0x0 -+ MAP_FIXED = 0x10 -+ MAP_HASSEMAPHORE = 0x200 -+ MAP_JIT = 0x800 -+ MAP_NOCACHE = 0x400 -+ MAP_NOEXTEND = 0x100 -+ MAP_NORESERVE = 0x40 -+ MAP_PRIVATE = 0x2 -+ MAP_RENAME = 0x20 -+ MAP_RESERVED0080 = 0x80 -+ MAP_RESILIENT_CODESIGN = 0x2000 -+ MAP_RESILIENT_MEDIA = 0x4000 -+ MAP_SHARED = 0x1 -+ MAP_TRANSLATED_ALLOW_EXECUTE = 0x20000 -+ MAP_UNIX03 = 0x40000 -+ MCAST_BLOCK_SOURCE = 0x54 -+ MCAST_EXCLUDE = 0x2 -+ MCAST_INCLUDE = 0x1 -+ MCAST_JOIN_GROUP = 0x50 -+ MCAST_JOIN_SOURCE_GROUP = 0x52 -+ MCAST_LEAVE_GROUP = 0x51 -+ MCAST_LEAVE_SOURCE_GROUP = 0x53 -+ MCAST_UNBLOCK_SOURCE = 0x55 -+ MCAST_UNDEFINED = 0x0 -+ MCL_CURRENT = 0x1 -+ MCL_FUTURE = 0x2 -+ MNT_ASYNC = 0x40 -+ MNT_AUTOMOUNTED = 0x400000 -+ MNT_CMDFLAGS = 0xf0000 -+ MNT_CPROTECT = 0x80 -+ MNT_DEFWRITE = 0x2000000 -+ MNT_DONTBROWSE = 0x100000 -+ MNT_DOVOLFS = 0x8000 -+ MNT_DWAIT = 0x4 -+ MNT_EXPORTED = 0x100 -+ MNT_EXT_ROOT_DATA_VOL = 0x1 -+ MNT_FORCE = 0x80000 -+ MNT_IGNORE_OWNERSHIP = 0x200000 -+ MNT_JOURNALED = 0x800000 -+ MNT_LOCAL = 0x1000 -+ MNT_MULTILABEL = 0x4000000 -+ MNT_NOATIME = 0x10000000 -+ MNT_NOBLOCK = 0x20000 -+ MNT_NODEV = 0x10 -+ MNT_NOEXEC = 0x4 -+ MNT_NOSUID = 0x8 -+ MNT_NOUSERXATTR = 0x1000000 -+ MNT_NOWAIT = 0x2 -+ MNT_QUARANTINE = 0x400 -+ MNT_QUOTA = 0x2000 -+ MNT_RDONLY = 0x1 -+ MNT_RELOAD = 0x40000 -+ MNT_REMOVABLE = 0x200 -+ MNT_ROOTFS = 0x4000 -+ MNT_SNAPSHOT = 0x40000000 -+ MNT_STRICTATIME = 0x80000000 -+ MNT_SYNCHRONOUS = 0x2 -+ MNT_UNION = 0x20 -+ MNT_UNKNOWNPERMISSIONS = 0x200000 -+ MNT_UPDATE = 0x10000 -+ MNT_VISFLAGMASK = 0xd7f0f7ff -+ MNT_WAIT = 0x1 -+ MSG_CTRUNC = 0x20 -+ MSG_DONTROUTE = 0x4 -+ MSG_DONTWAIT = 0x80 -+ MSG_EOF = 0x100 -+ MSG_EOR = 0x8 -+ MSG_FLUSH = 0x400 -+ MSG_HAVEMORE = 0x2000 -+ MSG_HOLD = 0x800 -+ MSG_NEEDSA = 0x10000 -+ MSG_NOSIGNAL = 0x80000 -+ MSG_OOB = 0x1 -+ MSG_PEEK = 0x2 -+ MSG_RCVMORE = 0x4000 -+ MSG_SEND = 0x1000 -+ MSG_TRUNC = 0x10 -+ MSG_WAITALL = 0x40 -+ MSG_WAITSTREAM = 0x200 -+ MS_ASYNC = 0x1 -+ MS_DEACTIVATE = 0x8 -+ MS_INVALIDATE = 0x2 -+ MS_KILLPAGES = 0x4 -+ MS_SYNC = 0x10 -+ NAME_MAX = 0xff -+ NET_RT_DUMP = 0x1 -+ NET_RT_DUMP2 = 0x7 -+ NET_RT_FLAGS = 0x2 -+ NET_RT_FLAGS_PRIV = 0xa -+ NET_RT_IFLIST = 0x3 -+ NET_RT_IFLIST2 = 0x6 -+ NET_RT_MAXID = 0xb -+ NET_RT_STAT = 0x4 -+ NET_RT_TRASH = 0x5 -+ NFDBITS = 0x20 -+ NL0 = 0x0 -+ NL1 = 0x100 -+ NL2 = 0x200 -+ NL3 = 0x300 -+ NLDLY = 0x300 -+ NOFLSH = 0x80000000 -+ NOKERNINFO = 0x2000000 -+ NOTE_ABSOLUTE = 0x8 -+ NOTE_ATTRIB = 0x8 -+ NOTE_BACKGROUND = 0x40 -+ NOTE_CHILD = 0x4 -+ NOTE_CRITICAL = 0x20 -+ NOTE_DELETE = 0x1 -+ NOTE_EXEC = 0x20000000 -+ NOTE_EXIT = 0x80000000 -+ NOTE_EXITSTATUS = 0x4000000 -+ NOTE_EXIT_CSERROR = 0x40000 -+ NOTE_EXIT_DECRYPTFAIL = 0x10000 -+ NOTE_EXIT_DETAIL = 0x2000000 -+ NOTE_EXIT_DETAIL_MASK = 0x70000 -+ NOTE_EXIT_MEMORY = 0x20000 -+ NOTE_EXIT_REPARENTED = 0x80000 -+ NOTE_EXTEND = 0x4 -+ NOTE_FFAND = 0x40000000 -+ NOTE_FFCOPY = 0xc0000000 -+ NOTE_FFCTRLMASK = 0xc0000000 -+ NOTE_FFLAGSMASK = 0xffffff -+ NOTE_FFNOP = 0x0 -+ NOTE_FFOR = 0x80000000 -+ NOTE_FORK = 0x40000000 -+ NOTE_FUNLOCK = 0x100 -+ NOTE_LEEWAY = 0x10 -+ NOTE_LINK = 0x10 -+ NOTE_LOWAT = 0x1 -+ NOTE_MACHTIME = 0x100 -+ NOTE_MACH_CONTINUOUS_TIME = 0x80 -+ NOTE_NONE = 0x80 -+ NOTE_NSECONDS = 0x4 -+ NOTE_OOB = 0x2 -+ NOTE_PCTRLMASK = -0x100000 -+ NOTE_PDATAMASK = 0xfffff -+ NOTE_REAP = 0x10000000 -+ NOTE_RENAME = 0x20 -+ NOTE_REVOKE = 0x40 -+ NOTE_SECONDS = 0x1 -+ NOTE_SIGNAL = 0x8000000 -+ NOTE_TRACK = 0x1 -+ NOTE_TRACKERR = 0x2 -+ NOTE_TRIGGER = 0x1000000 -+ NOTE_USECONDS = 0x2 -+ NOTE_VM_ERROR = 0x10000000 -+ NOTE_VM_PRESSURE = 0x80000000 -+ NOTE_VM_PRESSURE_SUDDEN_TERMINATE = 0x20000000 -+ NOTE_VM_PRESSURE_TERMINATE = 0x40000000 -+ NOTE_WRITE = 0x2 -+ OCRNL = 0x10 -+ OFDEL = 0x20000 -+ OFILL = 0x80 -+ ONLCR = 0x2 -+ ONLRET = 0x40 -+ ONOCR = 0x20 -+ ONOEOT = 0x8 -+ OPOST = 0x1 -+ OXTABS = 0x4 -+ O_ACCMODE = 0x3 -+ O_ALERT = 0x20000000 -+ O_APPEND = 0x8 -+ O_ASYNC = 0x40 -+ O_CLOEXEC = 0x1000000 -+ O_CREAT = 0x200 -+ O_DIRECTORY = 0x100000 -+ O_DP_GETRAWENCRYPTED = 0x1 -+ O_DP_GETRAWUNENCRYPTED = 0x2 -+ O_DSYNC = 0x400000 -+ O_EVTONLY = 0x8000 -+ O_EXCL = 0x800 -+ O_EXLOCK = 0x20 -+ O_FSYNC = 0x80 -+ O_NDELAY = 0x4 -+ O_NOCTTY = 0x20000 -+ O_NOFOLLOW = 0x100 -+ O_NOFOLLOW_ANY = 0x20000000 -+ O_NONBLOCK = 0x4 -+ O_POPUP = 0x80000000 -+ O_RDONLY = 0x0 -+ O_RDWR = 0x2 -+ O_SHLOCK = 0x10 -+ O_SYMLINK = 0x200000 -+ O_SYNC = 0x80 -+ O_TRUNC = 0x400 -+ O_WRONLY = 0x1 -+ PARENB = 0x1000 -+ PARMRK = 0x8 -+ PARODD = 0x2000 -+ PENDIN = 0x20000000 -+ PRIO_PGRP = 0x1 -+ PRIO_PROCESS = 0x0 -+ PRIO_USER = 0x2 -+ PROT_EXEC = 0x4 -+ PROT_NONE = 0x0 -+ PROT_READ = 0x1 -+ PROT_WRITE = 0x2 -+ PT_ATTACH = 0xa -+ PT_ATTACHEXC = 0xe -+ PT_CONTINUE = 0x7 -+ PT_DENY_ATTACH = 0x1f -+ PT_DETACH = 0xb -+ PT_FIRSTMACH = 0x20 -+ PT_FORCEQUOTA = 0x1e -+ PT_KILL = 0x8 -+ PT_READ_D = 0x2 -+ PT_READ_I = 0x1 -+ PT_READ_U = 0x3 -+ PT_SIGEXC = 0xc -+ PT_STEP = 0x9 -+ PT_THUPDATE = 0xd -+ PT_TRACE_ME = 0x0 -+ PT_WRITE_D = 0x5 -+ PT_WRITE_I = 0x4 -+ PT_WRITE_U = 0x6 -+ RLIMIT_AS = 0x5 -+ RLIMIT_CORE = 0x4 -+ RLIMIT_CPU = 0x0 -+ RLIMIT_CPU_USAGE_MONITOR = 0x2 -+ RLIMIT_DATA = 0x2 -+ RLIMIT_FSIZE = 0x1 -+ RLIMIT_MEMLOCK = 0x6 -+ RLIMIT_NOFILE = 0x8 -+ RLIMIT_NPROC = 0x7 -+ RLIMIT_RSS = 0x5 -+ RLIMIT_STACK = 0x3 -+ RLIM_INFINITY = 0x7fffffffffffffff -+ RTAX_AUTHOR = 0x6 -+ RTAX_BRD = 0x7 -+ RTAX_DST = 0x0 -+ RTAX_GATEWAY = 0x1 -+ RTAX_GENMASK = 0x3 -+ RTAX_IFA = 0x5 -+ RTAX_IFP = 0x4 -+ RTAX_MAX = 0x8 -+ RTAX_NETMASK = 0x2 -+ RTA_AUTHOR = 0x40 -+ RTA_BRD = 0x80 -+ RTA_DST = 0x1 -+ RTA_GATEWAY = 0x2 -+ RTA_GENMASK = 0x8 -+ RTA_IFA = 0x20 -+ RTA_IFP = 0x10 -+ RTA_NETMASK = 0x4 -+ RTF_BLACKHOLE = 0x1000 -+ RTF_BROADCAST = 0x400000 -+ RTF_CLONING = 0x100 -+ RTF_CONDEMNED = 0x2000000 -+ RTF_DEAD = 0x20000000 -+ RTF_DELCLONE = 0x80 -+ RTF_DONE = 0x40 -+ RTF_DYNAMIC = 0x10 -+ RTF_GATEWAY = 0x2 -+ RTF_GLOBAL = 0x40000000 -+ RTF_HOST = 0x4 -+ RTF_IFREF = 0x4000000 -+ RTF_IFSCOPE = 0x1000000 -+ RTF_LLDATA = 0x400 -+ RTF_LLINFO = 0x400 -+ RTF_LOCAL = 0x200000 -+ RTF_MODIFIED = 0x20 -+ RTF_MULTICAST = 0x800000 -+ RTF_NOIFREF = 0x2000 -+ RTF_PINNED = 0x100000 -+ RTF_PRCLONING = 0x10000 -+ RTF_PROTO1 = 0x8000 -+ RTF_PROTO2 = 0x4000 -+ RTF_PROTO3 = 0x40000 -+ RTF_PROXY = 0x8000000 -+ RTF_REJECT = 0x8 -+ RTF_ROUTER = 0x10000000 -+ RTF_STATIC = 0x800 -+ RTF_UP = 0x1 -+ RTF_WASCLONED = 0x20000 -+ RTF_XRESOLVE = 0x200 -+ RTM_ADD = 0x1 -+ RTM_CHANGE = 0x3 -+ RTM_DELADDR = 0xd -+ RTM_DELETE = 0x2 -+ RTM_DELMADDR = 0x10 -+ RTM_GET = 0x4 -+ RTM_GET2 = 0x14 -+ RTM_IFINFO = 0xe -+ RTM_IFINFO2 = 0x12 -+ RTM_LOCK = 0x8 -+ RTM_LOSING = 0x5 -+ RTM_MISS = 0x7 -+ RTM_NEWADDR = 0xc -+ RTM_NEWMADDR = 0xf -+ RTM_NEWMADDR2 = 0x13 -+ RTM_OLDADD = 0x9 -+ RTM_OLDDEL = 0xa -+ RTM_REDIRECT = 0x6 -+ RTM_RESOLVE = 0xb -+ RTM_RTTUNIT = 0xf4240 -+ RTM_VERSION = 0x5 -+ RTV_EXPIRE = 0x4 -+ RTV_HOPCOUNT = 0x2 -+ RTV_MTU = 0x1 -+ RTV_RPIPE = 0x8 -+ RTV_RTT = 0x40 -+ RTV_RTTVAR = 0x80 -+ RTV_SPIPE = 0x10 -+ RTV_SSTHRESH = 0x20 -+ RUSAGE_CHILDREN = -0x1 -+ RUSAGE_SELF = 0x0 -+ SCM_CREDS = 0x3 -+ SCM_RIGHTS = 0x1 -+ SCM_TIMESTAMP = 0x2 -+ SCM_TIMESTAMP_MONOTONIC = 0x4 -+ SEEK_CUR = 0x1 -+ SEEK_DATA = 0x4 -+ SEEK_END = 0x2 -+ SEEK_HOLE = 0x3 -+ SEEK_SET = 0x0 -+ SHUT_RD = 0x0 -+ SHUT_RDWR = 0x2 -+ SHUT_WR = 0x1 -+ SIOCADDMULTI = 0x80206931 -+ SIOCAIFADDR = 0x8040691a -+ SIOCARPIPLL = 0xc0206928 -+ SIOCATMARK = 0x40047307 -+ SIOCAUTOADDR = 0xc0206926 -+ SIOCAUTONETMASK = 0x80206927 -+ SIOCDELMULTI = 0x80206932 -+ SIOCDIFADDR = 0x80206919 -+ SIOCDIFPHYADDR = 0x80206941 -+ SIOCGDRVSPEC = 0xc028697b -+ SIOCGETVLAN = 0xc020697f -+ SIOCGHIWAT = 0x40047301 -+ SIOCGIF6LOWPAN = 0xc02069c5 -+ SIOCGIFADDR = 0xc0206921 -+ SIOCGIFALTMTU = 0xc0206948 -+ SIOCGIFASYNCMAP = 0xc020697c -+ SIOCGIFBOND = 0xc0206947 -+ SIOCGIFBRDADDR = 0xc0206923 -+ SIOCGIFCAP = 0xc020695b -+ SIOCGIFCONF = 0xc00c6924 -+ SIOCGIFDEVMTU = 0xc0206944 -+ SIOCGIFDSTADDR = 0xc0206922 -+ SIOCGIFFLAGS = 0xc0206911 -+ SIOCGIFFUNCTIONALTYPE = 0xc02069ad -+ SIOCGIFGENERIC = 0xc020693a -+ SIOCGIFKPI = 0xc0206987 -+ SIOCGIFMAC = 0xc0206982 -+ SIOCGIFMEDIA = 0xc02c6938 -+ SIOCGIFMETRIC = 0xc0206917 -+ SIOCGIFMTU = 0xc0206933 -+ SIOCGIFNETMASK = 0xc0206925 -+ SIOCGIFPDSTADDR = 0xc0206940 -+ SIOCGIFPHYS = 0xc0206935 -+ SIOCGIFPSRCADDR = 0xc020693f -+ SIOCGIFSTATUS = 0xc331693d -+ SIOCGIFVLAN = 0xc020697f -+ SIOCGIFWAKEFLAGS = 0xc0206988 -+ SIOCGIFXMEDIA = 0xc02c6948 -+ SIOCGLOWAT = 0x40047303 -+ SIOCGPGRP = 0x40047309 -+ SIOCIFCREATE = 0xc0206978 -+ SIOCIFCREATE2 = 0xc020697a -+ SIOCIFDESTROY = 0x80206979 -+ SIOCIFGCLONERS = 0xc0106981 -+ SIOCRSLVMULTI = 0xc010693b -+ SIOCSDRVSPEC = 0x8028697b -+ SIOCSETVLAN = 0x8020697e -+ SIOCSHIWAT = 0x80047300 -+ SIOCSIF6LOWPAN = 0x802069c4 -+ SIOCSIFADDR = 0x8020690c -+ SIOCSIFALTMTU = 0x80206945 -+ SIOCSIFASYNCMAP = 0x8020697d -+ SIOCSIFBOND = 0x80206946 -+ SIOCSIFBRDADDR = 0x80206913 -+ SIOCSIFCAP = 0x8020695a -+ SIOCSIFDSTADDR = 0x8020690e -+ SIOCSIFFLAGS = 0x80206910 -+ SIOCSIFGENERIC = 0x80206939 -+ SIOCSIFKPI = 0x80206986 -+ SIOCSIFLLADDR = 0x8020693c -+ SIOCSIFMAC = 0x80206983 -+ SIOCSIFMEDIA = 0xc0206937 -+ SIOCSIFMETRIC = 0x80206918 -+ SIOCSIFMTU = 0x80206934 -+ SIOCSIFNETMASK = 0x80206916 -+ SIOCSIFPHYADDR = 0x8040693e -+ SIOCSIFPHYS = 0x80206936 -+ SIOCSIFVLAN = 0x8020697e -+ SIOCSLOWAT = 0x80047302 -+ SIOCSPGRP = 0x80047308 -+ SOCK_DGRAM = 0x2 -+ SOCK_MAXADDRLEN = 0xff -+ SOCK_RAW = 0x3 -+ SOCK_RDM = 0x4 -+ SOCK_SEQPACKET = 0x5 -+ SOCK_STREAM = 0x1 -+ SOL_LOCAL = 0x0 -+ SOL_SOCKET = 0xffff -+ SOMAXCONN = 0x80 -+ SO_ACCEPTCONN = 0x2 -+ SO_BROADCAST = 0x20 -+ SO_DEBUG = 0x1 -+ SO_DONTROUTE = 0x10 -+ SO_DONTTRUNC = 0x2000 -+ SO_ERROR = 0x1007 -+ SO_KEEPALIVE = 0x8 -+ SO_LABEL = 0x1010 -+ SO_LINGER = 0x80 -+ SO_LINGER_SEC = 0x1080 -+ SO_NETSVC_MARKING_LEVEL = 0x1119 -+ SO_NET_SERVICE_TYPE = 0x1116 -+ SO_NKE = 0x1021 -+ SO_NOADDRERR = 0x1023 -+ SO_NOSIGPIPE = 0x1022 -+ SO_NOTIFYCONFLICT = 0x1026 -+ SO_NP_EXTENSIONS = 0x1083 -+ SO_NREAD = 0x1020 -+ SO_NUMRCVPKT = 0x1112 -+ SO_NWRITE = 0x1024 -+ SO_OOBINLINE = 0x100 -+ SO_PEERLABEL = 0x1011 -+ SO_RANDOMPORT = 0x1082 -+ SO_RCVBUF = 0x1002 -+ SO_RCVLOWAT = 0x1004 -+ SO_RCVTIMEO = 0x1006 -+ SO_REUSEADDR = 0x4 -+ SO_REUSEPORT = 0x200 -+ SO_REUSESHAREUID = 0x1025 -+ SO_SNDBUF = 0x1001 -+ SO_SNDLOWAT = 0x1003 -+ SO_SNDTIMEO = 0x1005 -+ SO_TIMESTAMP = 0x400 -+ SO_TIMESTAMP_MONOTONIC = 0x800 -+ SO_TRACKER_ATTRIBUTE_FLAGS_APP_APPROVED = 0x1 -+ SO_TRACKER_ATTRIBUTE_FLAGS_DOMAIN_SHORT = 0x4 -+ SO_TRACKER_ATTRIBUTE_FLAGS_TRACKER = 0x2 -+ SO_TRACKER_TRANSPARENCY_VERSION = 0x3 -+ SO_TYPE = 0x1008 -+ SO_UPCALLCLOSEWAIT = 0x1027 -+ SO_USELOOPBACK = 0x40 -+ SO_WANTMORE = 0x4000 -+ SO_WANTOOBFLAG = 0x8000 -+ S_IEXEC = 0x40 -+ S_IFBLK = 0x6000 -+ S_IFCHR = 0x2000 -+ S_IFDIR = 0x4000 -+ S_IFIFO = 0x1000 -+ S_IFLNK = 0xa000 -+ S_IFMT = 0xf000 -+ S_IFREG = 0x8000 -+ S_IFSOCK = 0xc000 -+ S_IFWHT = 0xe000 -+ S_IREAD = 0x100 -+ S_IRGRP = 0x20 -+ S_IROTH = 0x4 -+ S_IRUSR = 0x100 -+ S_IRWXG = 0x38 -+ S_IRWXO = 0x7 -+ S_IRWXU = 0x1c0 -+ S_ISGID = 0x400 -+ S_ISTXT = 0x200 -+ S_ISUID = 0x800 -+ S_ISVTX = 0x200 -+ S_IWGRP = 0x10 -+ S_IWOTH = 0x2 -+ S_IWRITE = 0x80 -+ S_IWUSR = 0x80 -+ S_IXGRP = 0x8 -+ S_IXOTH = 0x1 -+ S_IXUSR = 0x40 -+ TAB0 = 0x0 -+ TAB1 = 0x400 -+ TAB2 = 0x800 -+ TAB3 = 0x4 -+ TABDLY = 0xc04 -+ TCIFLUSH = 0x1 -+ TCIOFF = 0x3 -+ TCIOFLUSH = 0x3 -+ TCION = 0x4 -+ TCOFLUSH = 0x2 -+ TCOOFF = 0x1 -+ TCOON = 0x2 -+ TCPOPT_CC = 0xb -+ TCPOPT_CCECHO = 0xd -+ TCPOPT_CCNEW = 0xc -+ TCPOPT_EOL = 0x0 -+ TCPOPT_FASTOPEN = 0x22 -+ TCPOPT_MAXSEG = 0x2 -+ TCPOPT_NOP = 0x1 -+ TCPOPT_SACK = 0x5 -+ TCPOPT_SACK_HDR = 0x1010500 -+ TCPOPT_SACK_PERMITTED = 0x4 -+ TCPOPT_SACK_PERMIT_HDR = 0x1010402 -+ TCPOPT_SIGNATURE = 0x13 -+ TCPOPT_TIMESTAMP = 0x8 -+ TCPOPT_TSTAMP_HDR = 0x101080a -+ TCPOPT_WINDOW = 0x3 -+ TCP_CONNECTIONTIMEOUT = 0x20 -+ TCP_CONNECTION_INFO = 0x106 -+ TCP_ENABLE_ECN = 0x104 -+ TCP_FASTOPEN = 0x105 -+ TCP_KEEPALIVE = 0x10 -+ TCP_KEEPCNT = 0x102 -+ TCP_KEEPINTVL = 0x101 -+ TCP_MAXHLEN = 0x3c -+ TCP_MAXOLEN = 0x28 -+ TCP_MAXSEG = 0x2 -+ TCP_MAXWIN = 0xffff -+ TCP_MAX_SACK = 0x4 -+ TCP_MAX_WINSHIFT = 0xe -+ TCP_MINMSS = 0xd8 -+ TCP_MSS = 0x200 -+ TCP_NODELAY = 0x1 -+ TCP_NOOPT = 0x8 -+ TCP_NOPUSH = 0x4 -+ TCP_NOTSENT_LOWAT = 0x201 -+ TCP_RXT_CONNDROPTIME = 0x80 -+ TCP_RXT_FINDROP = 0x100 -+ TCP_SENDMOREACKS = 0x103 -+ TCSAFLUSH = 0x2 -+ TIOCCBRK = 0x2000747a -+ TIOCCDTR = 0x20007478 -+ TIOCCONS = 0x80047462 -+ TIOCDCDTIMESTAMP = 0x40107458 -+ TIOCDRAIN = 0x2000745e -+ TIOCDSIMICROCODE = 0x20007455 -+ TIOCEXCL = 0x2000740d -+ TIOCEXT = 0x80047460 -+ TIOCFLUSH = 0x80047410 -+ TIOCGDRAINWAIT = 0x40047456 -+ TIOCGETA = 0x40487413 -+ TIOCGETD = 0x4004741a -+ TIOCGPGRP = 0x40047477 -+ TIOCGWINSZ = 0x40087468 -+ TIOCIXOFF = 0x20007480 -+ TIOCIXON = 0x20007481 -+ TIOCMBIC = 0x8004746b -+ TIOCMBIS = 0x8004746c -+ TIOCMGDTRWAIT = 0x4004745a -+ TIOCMGET = 0x4004746a -+ TIOCMODG = 0x40047403 -+ TIOCMODS = 0x80047404 -+ TIOCMSDTRWAIT = 0x8004745b -+ TIOCMSET = 0x8004746d -+ TIOCM_CAR = 0x40 -+ TIOCM_CD = 0x40 -+ TIOCM_CTS = 0x20 -+ TIOCM_DSR = 0x100 -+ TIOCM_DTR = 0x2 -+ TIOCM_LE = 0x1 -+ TIOCM_RI = 0x80 -+ TIOCM_RNG = 0x80 -+ TIOCM_RTS = 0x4 -+ TIOCM_SR = 0x10 -+ TIOCM_ST = 0x8 -+ TIOCNOTTY = 0x20007471 -+ TIOCNXCL = 0x2000740e -+ TIOCOUTQ = 0x40047473 -+ TIOCPKT = 0x80047470 -+ TIOCPKT_DATA = 0x0 -+ TIOCPKT_DOSTOP = 0x20 -+ TIOCPKT_FLUSHREAD = 0x1 -+ TIOCPKT_FLUSHWRITE = 0x2 -+ TIOCPKT_IOCTL = 0x40 -+ TIOCPKT_NOSTOP = 0x10 -+ TIOCPKT_START = 0x8 -+ TIOCPKT_STOP = 0x4 -+ TIOCPTYGNAME = 0x40807453 -+ TIOCPTYGRANT = 0x20007454 -+ TIOCPTYUNLK = 0x20007452 -+ TIOCREMOTE = 0x80047469 -+ TIOCSBRK = 0x2000747b -+ TIOCSCONS = 0x20007463 -+ TIOCSCTTY = 0x20007461 -+ TIOCSDRAINWAIT = 0x80047457 -+ TIOCSDTR = 0x20007479 -+ TIOCSETA = 0x80487414 -+ TIOCSETAF = 0x80487416 -+ TIOCSETAW = 0x80487415 -+ TIOCSETD = 0x8004741b -+ TIOCSIG = 0x2000745f -+ TIOCSPGRP = 0x80047476 -+ TIOCSTART = 0x2000746e -+ TIOCSTAT = 0x20007465 -+ TIOCSTI = 0x80017472 -+ TIOCSTOP = 0x2000746f -+ TIOCSWINSZ = 0x80087467 -+ TIOCTIMESTAMP = 0x40107459 -+ TIOCUCNTL = 0x80047466 -+ TOSTOP = 0x400000 -+ VDISCARD = 0xf -+ VDSUSP = 0xb -+ VEOF = 0x0 -+ VEOL = 0x1 -+ VEOL2 = 0x2 -+ VERASE = 0x3 -+ VINTR = 0x8 -+ VKILL = 0x5 -+ VLNEXT = 0xe -+ VMADDR_CID_ANY = 0xffffffff -+ VMADDR_CID_HOST = 0x2 -+ VMADDR_CID_HYPERVISOR = 0x0 -+ VMADDR_CID_RESERVED = 0x1 -+ VMADDR_PORT_ANY = 0xffffffff -+ VMIN = 0x10 -+ VM_LOADAVG = 0x2 -+ VM_MACHFACTOR = 0x4 -+ VM_MAXID = 0x6 -+ VM_METER = 0x1 -+ VM_SWAPUSAGE = 0x5 -+ VQUIT = 0x9 -+ VREPRINT = 0x6 -+ VSTART = 0xc -+ VSTATUS = 0x12 -+ VSTOP = 0xd -+ VSUSP = 0xa -+ VT0 = 0x0 -+ VT1 = 0x10000 -+ VTDLY = 0x10000 -+ VTIME = 0x11 -+ VWERASE = 0x4 -+ WCONTINUED = 0x10 -+ WCOREFLAG = 0x80 -+ WEXITED = 0x4 -+ WNOHANG = 0x1 -+ WNOWAIT = 0x20 -+ WORDSIZE = 0x40 -+ WSTOPPED = 0x8 -+ WUNTRACED = 0x2 -+ XATTR_CREATE = 0x2 -+ XATTR_NODEFAULT = 0x10 -+ XATTR_NOFOLLOW = 0x1 -+ XATTR_NOSECURITY = 0x8 -+ XATTR_REPLACE = 0x4 -+ XATTR_SHOWCOMPRESSION = 0x20 - ) - - // Errors -diff --git a/vendor/golang.org/x/sys/unix/zerrors_darwin_arm.go b/vendor/golang.org/x/sys/unix/zerrors_darwin_arm.go -deleted file mode 100644 -index 3e41757..0000000 ---- a/vendor/golang.org/x/sys/unix/zerrors_darwin_arm.go -+++ /dev/null -@@ -1,1784 +0,0 @@ --// mkerrors.sh --// Code generated by the command above; see README.md. DO NOT EDIT. -- --// +build arm,darwin -- --// Code generated by cmd/cgo -godefs; DO NOT EDIT. --// cgo -godefs -- _const.go -- --package unix -- --import "syscall" -- --const ( -- AF_APPLETALK = 0x10 -- AF_CCITT = 0xa -- AF_CHAOS = 0x5 -- AF_CNT = 0x15 -- AF_COIP = 0x14 -- AF_DATAKIT = 0x9 -- AF_DECnet = 0xc -- AF_DLI = 0xd -- AF_E164 = 0x1c -- AF_ECMA = 0x8 -- AF_HYLINK = 0xf -- AF_IEEE80211 = 0x25 -- AF_IMPLINK = 0x3 -- AF_INET = 0x2 -- AF_INET6 = 0x1e -- AF_IPX = 0x17 -- AF_ISDN = 0x1c -- AF_ISO = 0x7 -- AF_LAT = 0xe -- AF_LINK = 0x12 -- AF_LOCAL = 0x1 -- AF_MAX = 0x28 -- AF_NATM = 0x1f -- AF_NDRV = 0x1b -- AF_NETBIOS = 0x21 -- AF_NS = 0x6 -- AF_OSI = 0x7 -- AF_PPP = 0x22 -- AF_PUP = 0x4 -- AF_RESERVED_36 = 0x24 -- AF_ROUTE = 0x11 -- AF_SIP = 0x18 -- AF_SNA = 0xb -- AF_SYSTEM = 0x20 -- AF_UNIX = 0x1 -- AF_UNSPEC = 0x0 -- AF_UTUN = 0x26 -- ALTWERASE = 0x200 -- ATTR_BIT_MAP_COUNT = 0x5 -- ATTR_CMN_ACCESSMASK = 0x20000 -- ATTR_CMN_ACCTIME = 0x1000 -- ATTR_CMN_ADDEDTIME = 0x10000000 -- ATTR_CMN_BKUPTIME = 0x2000 -- ATTR_CMN_CHGTIME = 0x800 -- ATTR_CMN_CRTIME = 0x200 -- ATTR_CMN_DATA_PROTECT_FLAGS = 0x40000000 -- ATTR_CMN_DEVID = 0x2 -- ATTR_CMN_DOCUMENT_ID = 0x100000 -- ATTR_CMN_ERROR = 0x20000000 -- ATTR_CMN_EXTENDED_SECURITY = 0x400000 -- ATTR_CMN_FILEID = 0x2000000 -- ATTR_CMN_FLAGS = 0x40000 -- ATTR_CMN_FNDRINFO = 0x4000 -- ATTR_CMN_FSID = 0x4 -- ATTR_CMN_FULLPATH = 0x8000000 -- ATTR_CMN_GEN_COUNT = 0x80000 -- ATTR_CMN_GRPID = 0x10000 -- ATTR_CMN_GRPUUID = 0x1000000 -- ATTR_CMN_MODTIME = 0x400 -- ATTR_CMN_NAME = 0x1 -- ATTR_CMN_NAMEDATTRCOUNT = 0x80000 -- ATTR_CMN_NAMEDATTRLIST = 0x100000 -- ATTR_CMN_OBJID = 0x20 -- ATTR_CMN_OBJPERMANENTID = 0x40 -- ATTR_CMN_OBJTAG = 0x10 -- ATTR_CMN_OBJTYPE = 0x8 -- ATTR_CMN_OWNERID = 0x8000 -- ATTR_CMN_PARENTID = 0x4000000 -- ATTR_CMN_PAROBJID = 0x80 -- ATTR_CMN_RETURNED_ATTRS = 0x80000000 -- ATTR_CMN_SCRIPT = 0x100 -- ATTR_CMN_SETMASK = 0x41c7ff00 -- ATTR_CMN_USERACCESS = 0x200000 -- ATTR_CMN_UUID = 0x800000 -- ATTR_CMN_VALIDMASK = 0xffffffff -- ATTR_CMN_VOLSETMASK = 0x6700 -- ATTR_FILE_ALLOCSIZE = 0x4 -- ATTR_FILE_CLUMPSIZE = 0x10 -- ATTR_FILE_DATAALLOCSIZE = 0x400 -- ATTR_FILE_DATAEXTENTS = 0x800 -- ATTR_FILE_DATALENGTH = 0x200 -- ATTR_FILE_DEVTYPE = 0x20 -- ATTR_FILE_FILETYPE = 0x40 -- ATTR_FILE_FORKCOUNT = 0x80 -- ATTR_FILE_FORKLIST = 0x100 -- ATTR_FILE_IOBLOCKSIZE = 0x8 -- ATTR_FILE_LINKCOUNT = 0x1 -- ATTR_FILE_RSRCALLOCSIZE = 0x2000 -- ATTR_FILE_RSRCEXTENTS = 0x4000 -- ATTR_FILE_RSRCLENGTH = 0x1000 -- ATTR_FILE_SETMASK = 0x20 -- ATTR_FILE_TOTALSIZE = 0x2 -- ATTR_FILE_VALIDMASK = 0x37ff -- ATTR_VOL_ALLOCATIONCLUMP = 0x40 -- ATTR_VOL_ATTRIBUTES = 0x40000000 -- ATTR_VOL_CAPABILITIES = 0x20000 -- ATTR_VOL_DIRCOUNT = 0x400 -- ATTR_VOL_ENCODINGSUSED = 0x10000 -- ATTR_VOL_FILECOUNT = 0x200 -- ATTR_VOL_FSTYPE = 0x1 -- ATTR_VOL_INFO = 0x80000000 -- ATTR_VOL_IOBLOCKSIZE = 0x80 -- ATTR_VOL_MAXOBJCOUNT = 0x800 -- ATTR_VOL_MINALLOCATION = 0x20 -- ATTR_VOL_MOUNTEDDEVICE = 0x8000 -- ATTR_VOL_MOUNTFLAGS = 0x4000 -- ATTR_VOL_MOUNTPOINT = 0x1000 -- ATTR_VOL_NAME = 0x2000 -- ATTR_VOL_OBJCOUNT = 0x100 -- ATTR_VOL_QUOTA_SIZE = 0x10000000 -- ATTR_VOL_RESERVED_SIZE = 0x20000000 -- ATTR_VOL_SETMASK = 0x80002000 -- ATTR_VOL_SIGNATURE = 0x2 -- ATTR_VOL_SIZE = 0x4 -- ATTR_VOL_SPACEAVAIL = 0x10 -- ATTR_VOL_SPACEFREE = 0x8 -- ATTR_VOL_UUID = 0x40000 -- ATTR_VOL_VALIDMASK = 0xf007ffff -- B0 = 0x0 -- B110 = 0x6e -- B115200 = 0x1c200 -- B1200 = 0x4b0 -- B134 = 0x86 -- B14400 = 0x3840 -- B150 = 0x96 -- B1800 = 0x708 -- B19200 = 0x4b00 -- B200 = 0xc8 -- B230400 = 0x38400 -- B2400 = 0x960 -- B28800 = 0x7080 -- B300 = 0x12c -- B38400 = 0x9600 -- B4800 = 0x12c0 -- B50 = 0x32 -- B57600 = 0xe100 -- B600 = 0x258 -- B7200 = 0x1c20 -- B75 = 0x4b -- B76800 = 0x12c00 -- B9600 = 0x2580 -- BIOCFLUSH = 0x20004268 -- BIOCGBLEN = 0x40044266 -- BIOCGDLT = 0x4004426a -- BIOCGDLTLIST = 0xc00c4279 -- BIOCGETIF = 0x4020426b -- BIOCGHDRCMPLT = 0x40044274 -- BIOCGRSIG = 0x40044272 -- BIOCGRTIMEOUT = 0x4010426e -- BIOCGSEESENT = 0x40044276 -- BIOCGSTATS = 0x4008426f -- BIOCIMMEDIATE = 0x80044270 -- BIOCPROMISC = 0x20004269 -- BIOCSBLEN = 0xc0044266 -- BIOCSDLT = 0x80044278 -- BIOCSETF = 0x80104267 -- BIOCSETFNR = 0x8010427e -- BIOCSETIF = 0x8020426c -- BIOCSHDRCMPLT = 0x80044275 -- BIOCSRSIG = 0x80044273 -- BIOCSRTIMEOUT = 0x8010426d -- BIOCSSEESENT = 0x80044277 -- BIOCVERSION = 0x40044271 -- BPF_A = 0x10 -- BPF_ABS = 0x20 -- BPF_ADD = 0x0 -- BPF_ALIGNMENT = 0x4 -- BPF_ALU = 0x4 -- BPF_AND = 0x50 -- BPF_B = 0x10 -- BPF_DIV = 0x30 -- BPF_H = 0x8 -- BPF_IMM = 0x0 -- BPF_IND = 0x40 -- BPF_JA = 0x0 -- BPF_JEQ = 0x10 -- BPF_JGE = 0x30 -- BPF_JGT = 0x20 -- BPF_JMP = 0x5 -- BPF_JSET = 0x40 -- BPF_K = 0x0 -- BPF_LD = 0x0 -- BPF_LDX = 0x1 -- BPF_LEN = 0x80 -- BPF_LSH = 0x60 -- BPF_MAJOR_VERSION = 0x1 -- BPF_MAXBUFSIZE = 0x80000 -- BPF_MAXINSNS = 0x200 -- BPF_MEM = 0x60 -- BPF_MEMWORDS = 0x10 -- BPF_MINBUFSIZE = 0x20 -- BPF_MINOR_VERSION = 0x1 -- BPF_MISC = 0x7 -- BPF_MSH = 0xa0 -- BPF_MUL = 0x20 -- BPF_NEG = 0x80 -- BPF_OR = 0x40 -- BPF_RELEASE = 0x30bb6 -- BPF_RET = 0x6 -- BPF_RSH = 0x70 -- BPF_ST = 0x2 -- BPF_STX = 0x3 -- BPF_SUB = 0x10 -- BPF_TAX = 0x0 -- BPF_TXA = 0x80 -- BPF_W = 0x0 -- BPF_X = 0x8 -- BRKINT = 0x2 -- BS0 = 0x0 -- BS1 = 0x8000 -- BSDLY = 0x8000 -- CFLUSH = 0xf -- CLOCAL = 0x8000 -- CLOCK_MONOTONIC = 0x6 -- CLOCK_MONOTONIC_RAW = 0x4 -- CLOCK_MONOTONIC_RAW_APPROX = 0x5 -- CLOCK_PROCESS_CPUTIME_ID = 0xc -- CLOCK_REALTIME = 0x0 -- CLOCK_THREAD_CPUTIME_ID = 0x10 -- CLOCK_UPTIME_RAW = 0x8 -- CLOCK_UPTIME_RAW_APPROX = 0x9 -- CR0 = 0x0 -- CR1 = 0x1000 -- CR2 = 0x2000 -- CR3 = 0x3000 -- CRDLY = 0x3000 -- CREAD = 0x800 -- CRTSCTS = 0x30000 -- CS5 = 0x0 -- CS6 = 0x100 -- CS7 = 0x200 -- CS8 = 0x300 -- CSIZE = 0x300 -- CSTART = 0x11 -- CSTATUS = 0x14 -- CSTOP = 0x13 -- CSTOPB = 0x400 -- CSUSP = 0x1a -- CTL_HW = 0x6 -- CTL_KERN = 0x1 -- CTL_MAXNAME = 0xc -- CTL_NET = 0x4 -- DLT_A429 = 0xb8 -- DLT_A653_ICM = 0xb9 -- DLT_AIRONET_HEADER = 0x78 -- DLT_AOS = 0xde -- DLT_APPLE_IP_OVER_IEEE1394 = 0x8a -- DLT_ARCNET = 0x7 -- DLT_ARCNET_LINUX = 0x81 -- DLT_ATM_CLIP = 0x13 -- DLT_ATM_RFC1483 = 0xb -- DLT_AURORA = 0x7e -- DLT_AX25 = 0x3 -- DLT_AX25_KISS = 0xca -- DLT_BACNET_MS_TP = 0xa5 -- DLT_BLUETOOTH_HCI_H4 = 0xbb -- DLT_BLUETOOTH_HCI_H4_WITH_PHDR = 0xc9 -- DLT_CAN20B = 0xbe -- DLT_CAN_SOCKETCAN = 0xe3 -- DLT_CHAOS = 0x5 -- DLT_CHDLC = 0x68 -- DLT_CISCO_IOS = 0x76 -- DLT_C_HDLC = 0x68 -- DLT_C_HDLC_WITH_DIR = 0xcd -- DLT_DBUS = 0xe7 -- DLT_DECT = 0xdd -- DLT_DOCSIS = 0x8f -- DLT_DVB_CI = 0xeb -- DLT_ECONET = 0x73 -- DLT_EN10MB = 0x1 -- DLT_EN3MB = 0x2 -- DLT_ENC = 0x6d -- DLT_ERF = 0xc5 -- DLT_ERF_ETH = 0xaf -- DLT_ERF_POS = 0xb0 -- DLT_FC_2 = 0xe0 -- DLT_FC_2_WITH_FRAME_DELIMS = 0xe1 -- DLT_FDDI = 0xa -- DLT_FLEXRAY = 0xd2 -- DLT_FRELAY = 0x6b -- DLT_FRELAY_WITH_DIR = 0xce -- DLT_GCOM_SERIAL = 0xad -- DLT_GCOM_T1E1 = 0xac -- DLT_GPF_F = 0xab -- DLT_GPF_T = 0xaa -- DLT_GPRS_LLC = 0xa9 -- DLT_GSMTAP_ABIS = 0xda -- DLT_GSMTAP_UM = 0xd9 -- DLT_HHDLC = 0x79 -- DLT_IBM_SN = 0x92 -- DLT_IBM_SP = 0x91 -- DLT_IEEE802 = 0x6 -- DLT_IEEE802_11 = 0x69 -- DLT_IEEE802_11_RADIO = 0x7f -- DLT_IEEE802_11_RADIO_AVS = 0xa3 -- DLT_IEEE802_15_4 = 0xc3 -- DLT_IEEE802_15_4_LINUX = 0xbf -- DLT_IEEE802_15_4_NOFCS = 0xe6 -- DLT_IEEE802_15_4_NONASK_PHY = 0xd7 -- DLT_IEEE802_16_MAC_CPS = 0xbc -- DLT_IEEE802_16_MAC_CPS_RADIO = 0xc1 -- DLT_IPFILTER = 0x74 -- DLT_IPMB = 0xc7 -- DLT_IPMB_LINUX = 0xd1 -- DLT_IPNET = 0xe2 -- DLT_IPOIB = 0xf2 -- DLT_IPV4 = 0xe4 -- DLT_IPV6 = 0xe5 -- DLT_IP_OVER_FC = 0x7a -- DLT_JUNIPER_ATM1 = 0x89 -- DLT_JUNIPER_ATM2 = 0x87 -- DLT_JUNIPER_ATM_CEMIC = 0xee -- DLT_JUNIPER_CHDLC = 0xb5 -- DLT_JUNIPER_ES = 0x84 -- DLT_JUNIPER_ETHER = 0xb2 -- DLT_JUNIPER_FIBRECHANNEL = 0xea -- DLT_JUNIPER_FRELAY = 0xb4 -- DLT_JUNIPER_GGSN = 0x85 -- DLT_JUNIPER_ISM = 0xc2 -- DLT_JUNIPER_MFR = 0x86 -- DLT_JUNIPER_MLFR = 0x83 -- DLT_JUNIPER_MLPPP = 0x82 -- DLT_JUNIPER_MONITOR = 0xa4 -- DLT_JUNIPER_PIC_PEER = 0xae -- DLT_JUNIPER_PPP = 0xb3 -- DLT_JUNIPER_PPPOE = 0xa7 -- DLT_JUNIPER_PPPOE_ATM = 0xa8 -- DLT_JUNIPER_SERVICES = 0x88 -- DLT_JUNIPER_SRX_E2E = 0xe9 -- DLT_JUNIPER_ST = 0xc8 -- DLT_JUNIPER_VP = 0xb7 -- DLT_JUNIPER_VS = 0xe8 -- DLT_LAPB_WITH_DIR = 0xcf -- DLT_LAPD = 0xcb -- DLT_LIN = 0xd4 -- DLT_LINUX_EVDEV = 0xd8 -- DLT_LINUX_IRDA = 0x90 -- DLT_LINUX_LAPD = 0xb1 -- DLT_LINUX_PPP_WITHDIRECTION = 0xa6 -- DLT_LINUX_SLL = 0x71 -- DLT_LOOP = 0x6c -- DLT_LTALK = 0x72 -- DLT_MATCHING_MAX = 0xf5 -- DLT_MATCHING_MIN = 0x68 -- DLT_MFR = 0xb6 -- DLT_MOST = 0xd3 -- DLT_MPEG_2_TS = 0xf3 -- DLT_MPLS = 0xdb -- DLT_MTP2 = 0x8c -- DLT_MTP2_WITH_PHDR = 0x8b -- DLT_MTP3 = 0x8d -- DLT_MUX27010 = 0xec -- DLT_NETANALYZER = 0xf0 -- DLT_NETANALYZER_TRANSPARENT = 0xf1 -- DLT_NFC_LLCP = 0xf5 -- DLT_NFLOG = 0xef -- DLT_NG40 = 0xf4 -- DLT_NULL = 0x0 -- DLT_PCI_EXP = 0x7d -- DLT_PFLOG = 0x75 -- DLT_PFSYNC = 0x12 -- DLT_PPI = 0xc0 -- DLT_PPP = 0x9 -- DLT_PPP_BSDOS = 0x10 -- DLT_PPP_ETHER = 0x33 -- DLT_PPP_PPPD = 0xa6 -- DLT_PPP_SERIAL = 0x32 -- DLT_PPP_WITH_DIR = 0xcc -- DLT_PPP_WITH_DIRECTION = 0xa6 -- DLT_PRISM_HEADER = 0x77 -- DLT_PRONET = 0x4 -- DLT_RAIF1 = 0xc6 -- DLT_RAW = 0xc -- DLT_RIO = 0x7c -- DLT_SCCP = 0x8e -- DLT_SITA = 0xc4 -- DLT_SLIP = 0x8 -- DLT_SLIP_BSDOS = 0xf -- DLT_STANAG_5066_D_PDU = 0xed -- DLT_SUNATM = 0x7b -- DLT_SYMANTEC_FIREWALL = 0x63 -- DLT_TZSP = 0x80 -- DLT_USB = 0xba -- DLT_USB_LINUX = 0xbd -- DLT_USB_LINUX_MMAPPED = 0xdc -- DLT_USER0 = 0x93 -- DLT_USER1 = 0x94 -- DLT_USER10 = 0x9d -- DLT_USER11 = 0x9e -- DLT_USER12 = 0x9f -- DLT_USER13 = 0xa0 -- DLT_USER14 = 0xa1 -- DLT_USER15 = 0xa2 -- DLT_USER2 = 0x95 -- DLT_USER3 = 0x96 -- DLT_USER4 = 0x97 -- DLT_USER5 = 0x98 -- DLT_USER6 = 0x99 -- DLT_USER7 = 0x9a -- DLT_USER8 = 0x9b -- DLT_USER9 = 0x9c -- DLT_WIHART = 0xdf -- DLT_X2E_SERIAL = 0xd5 -- DLT_X2E_XORAYA = 0xd6 -- DT_BLK = 0x6 -- DT_CHR = 0x2 -- DT_DIR = 0x4 -- DT_FIFO = 0x1 -- DT_LNK = 0xa -- DT_REG = 0x8 -- DT_SOCK = 0xc -- DT_UNKNOWN = 0x0 -- DT_WHT = 0xe -- ECHO = 0x8 -- ECHOCTL = 0x40 -- ECHOE = 0x2 -- ECHOK = 0x4 -- ECHOKE = 0x1 -- ECHONL = 0x10 -- ECHOPRT = 0x20 -- EVFILT_AIO = -0x3 -- EVFILT_EXCEPT = -0xf -- EVFILT_FS = -0x9 -- EVFILT_MACHPORT = -0x8 -- EVFILT_PROC = -0x5 -- EVFILT_READ = -0x1 -- EVFILT_SIGNAL = -0x6 -- EVFILT_SYSCOUNT = 0xf -- EVFILT_THREADMARKER = 0xf -- EVFILT_TIMER = -0x7 -- EVFILT_USER = -0xa -- EVFILT_VM = -0xc -- EVFILT_VNODE = -0x4 -- EVFILT_WRITE = -0x2 -- EV_ADD = 0x1 -- EV_CLEAR = 0x20 -- EV_DELETE = 0x2 -- EV_DISABLE = 0x8 -- EV_DISPATCH = 0x80 -- EV_DISPATCH2 = 0x180 -- EV_ENABLE = 0x4 -- EV_EOF = 0x8000 -- EV_ERROR = 0x4000 -- EV_FLAG0 = 0x1000 -- EV_FLAG1 = 0x2000 -- EV_ONESHOT = 0x10 -- EV_OOBAND = 0x2000 -- EV_POLL = 0x1000 -- EV_RECEIPT = 0x40 -- EV_SYSFLAGS = 0xf000 -- EV_UDATA_SPECIFIC = 0x100 -- EV_VANISHED = 0x200 -- EXTA = 0x4b00 -- EXTB = 0x9600 -- EXTPROC = 0x800 -- FD_CLOEXEC = 0x1 -- FD_SETSIZE = 0x400 -- FF0 = 0x0 -- FF1 = 0x4000 -- FFDLY = 0x4000 -- FLUSHO = 0x800000 -- FSOPT_ATTR_CMN_EXTENDED = 0x20 -- FSOPT_NOFOLLOW = 0x1 -- FSOPT_NOINMEMUPDATE = 0x2 -- FSOPT_PACK_INVAL_ATTRS = 0x8 -- FSOPT_REPORT_FULLSIZE = 0x4 -- F_ADDFILESIGS = 0x3d -- F_ADDFILESIGS_FOR_DYLD_SIM = 0x53 -- F_ADDFILESIGS_RETURN = 0x61 -- F_ADDSIGS = 0x3b -- F_ALLOCATEALL = 0x4 -- F_ALLOCATECONTIG = 0x2 -- F_BARRIERFSYNC = 0x55 -- F_CHECK_LV = 0x62 -- F_CHKCLEAN = 0x29 -- F_DUPFD = 0x0 -- F_DUPFD_CLOEXEC = 0x43 -- F_FINDSIGS = 0x4e -- F_FLUSH_DATA = 0x28 -- F_FREEZE_FS = 0x35 -- F_FULLFSYNC = 0x33 -- F_GETCODEDIR = 0x48 -- F_GETFD = 0x1 -- F_GETFL = 0x3 -- F_GETLK = 0x7 -- F_GETLKPID = 0x42 -- F_GETNOSIGPIPE = 0x4a -- F_GETOWN = 0x5 -- F_GETPATH = 0x32 -- F_GETPATH_MTMINFO = 0x47 -- F_GETPROTECTIONCLASS = 0x3f -- F_GETPROTECTIONLEVEL = 0x4d -- F_GLOBAL_NOCACHE = 0x37 -- F_LOG2PHYS = 0x31 -- F_LOG2PHYS_EXT = 0x41 -- F_NOCACHE = 0x30 -- F_NODIRECT = 0x3e -- F_OK = 0x0 -- F_PATHPKG_CHECK = 0x34 -- F_PEOFPOSMODE = 0x3 -- F_PREALLOCATE = 0x2a -- F_PUNCHHOLE = 0x63 -- F_RDADVISE = 0x2c -- F_RDAHEAD = 0x2d -- F_RDLCK = 0x1 -- F_SETBACKINGSTORE = 0x46 -- F_SETFD = 0x2 -- F_SETFL = 0x4 -- F_SETLK = 0x8 -- F_SETLKW = 0x9 -- F_SETLKWTIMEOUT = 0xa -- F_SETNOSIGPIPE = 0x49 -- F_SETOWN = 0x6 -- F_SETPROTECTIONCLASS = 0x40 -- F_SETSIZE = 0x2b -- F_SINGLE_WRITER = 0x4c -- F_THAW_FS = 0x36 -- F_TRANSCODEKEY = 0x4b -- F_TRIM_ACTIVE_FILE = 0x64 -- F_UNLCK = 0x2 -- F_VOLPOSMODE = 0x4 -- F_WRLCK = 0x3 -- HUPCL = 0x4000 -- HW_MACHINE = 0x1 -- ICANON = 0x100 -- ICMP6_FILTER = 0x12 -- ICRNL = 0x100 -- IEXTEN = 0x400 -- IFF_ALLMULTI = 0x200 -- IFF_ALTPHYS = 0x4000 -- IFF_BROADCAST = 0x2 -- IFF_DEBUG = 0x4 -- IFF_LINK0 = 0x1000 -- IFF_LINK1 = 0x2000 -- IFF_LINK2 = 0x4000 -- IFF_LOOPBACK = 0x8 -- IFF_MULTICAST = 0x8000 -- IFF_NOARP = 0x80 -- IFF_NOTRAILERS = 0x20 -- IFF_OACTIVE = 0x400 -- IFF_POINTOPOINT = 0x10 -- IFF_PROMISC = 0x100 -- IFF_RUNNING = 0x40 -- IFF_SIMPLEX = 0x800 -- IFF_UP = 0x1 -- IFNAMSIZ = 0x10 -- IFT_1822 = 0x2 -- IFT_AAL5 = 0x31 -- IFT_ARCNET = 0x23 -- IFT_ARCNETPLUS = 0x24 -- IFT_ATM = 0x25 -- IFT_BRIDGE = 0xd1 -- IFT_CARP = 0xf8 -- IFT_CELLULAR = 0xff -- IFT_CEPT = 0x13 -- IFT_DS3 = 0x1e -- IFT_ENC = 0xf4 -- IFT_EON = 0x19 -- IFT_ETHER = 0x6 -- IFT_FAITH = 0x38 -- IFT_FDDI = 0xf -- IFT_FRELAY = 0x20 -- IFT_FRELAYDCE = 0x2c -- IFT_GIF = 0x37 -- IFT_HDH1822 = 0x3 -- IFT_HIPPI = 0x2f -- IFT_HSSI = 0x2e -- IFT_HY = 0xe -- IFT_IEEE1394 = 0x90 -- IFT_IEEE8023ADLAG = 0x88 -- IFT_ISDNBASIC = 0x14 -- IFT_ISDNPRIMARY = 0x15 -- IFT_ISO88022LLC = 0x29 -- IFT_ISO88023 = 0x7 -- IFT_ISO88024 = 0x8 -- IFT_ISO88025 = 0x9 -- IFT_ISO88026 = 0xa -- IFT_L2VLAN = 0x87 -- IFT_LAPB = 0x10 -- IFT_LOCALTALK = 0x2a -- IFT_LOOP = 0x18 -- IFT_MIOX25 = 0x26 -- IFT_MODEM = 0x30 -- IFT_NSIP = 0x1b -- IFT_OTHER = 0x1 -- IFT_P10 = 0xc -- IFT_P80 = 0xd -- IFT_PARA = 0x22 -- IFT_PDP = 0xff -- IFT_PFLOG = 0xf5 -- IFT_PFSYNC = 0xf6 -- IFT_PKTAP = 0xfe -- IFT_PPP = 0x17 -- IFT_PROPMUX = 0x36 -- IFT_PROPVIRTUAL = 0x35 -- IFT_PTPSERIAL = 0x16 -- IFT_RS232 = 0x21 -- IFT_SDLC = 0x11 -- IFT_SIP = 0x1f -- IFT_SLIP = 0x1c -- IFT_SMDSDXI = 0x2b -- IFT_SMDSICIP = 0x34 -- IFT_SONET = 0x27 -- IFT_SONETPATH = 0x32 -- IFT_SONETVT = 0x33 -- IFT_STARLAN = 0xb -- IFT_STF = 0x39 -- IFT_T1 = 0x12 -- IFT_ULTRA = 0x1d -- IFT_V35 = 0x2d -- IFT_X25 = 0x5 -- IFT_X25DDN = 0x4 -- IFT_X25PLE = 0x28 -- IFT_XETHER = 0x1a -- IGNBRK = 0x1 -- IGNCR = 0x80 -- IGNPAR = 0x4 -- IMAXBEL = 0x2000 -- INLCR = 0x40 -- INPCK = 0x10 -- IN_CLASSA_HOST = 0xffffff -- IN_CLASSA_MAX = 0x80 -- IN_CLASSA_NET = 0xff000000 -- IN_CLASSA_NSHIFT = 0x18 -- IN_CLASSB_HOST = 0xffff -- IN_CLASSB_MAX = 0x10000 -- IN_CLASSB_NET = 0xffff0000 -- IN_CLASSB_NSHIFT = 0x10 -- IN_CLASSC_HOST = 0xff -- IN_CLASSC_NET = 0xffffff00 -- IN_CLASSC_NSHIFT = 0x8 -- IN_CLASSD_HOST = 0xfffffff -- IN_CLASSD_NET = 0xf0000000 -- IN_CLASSD_NSHIFT = 0x1c -- IN_LINKLOCALNETNUM = 0xa9fe0000 -- IN_LOOPBACKNET = 0x7f -- IPPROTO_3PC = 0x22 -- IPPROTO_ADFS = 0x44 -- IPPROTO_AH = 0x33 -- IPPROTO_AHIP = 0x3d -- IPPROTO_APES = 0x63 -- IPPROTO_ARGUS = 0xd -- IPPROTO_AX25 = 0x5d -- IPPROTO_BHA = 0x31 -- IPPROTO_BLT = 0x1e -- IPPROTO_BRSATMON = 0x4c -- IPPROTO_CFTP = 0x3e -- IPPROTO_CHAOS = 0x10 -- IPPROTO_CMTP = 0x26 -- IPPROTO_CPHB = 0x49 -- IPPROTO_CPNX = 0x48 -- IPPROTO_DDP = 0x25 -- IPPROTO_DGP = 0x56 -- IPPROTO_DIVERT = 0xfe -- IPPROTO_DONE = 0x101 -- IPPROTO_DSTOPTS = 0x3c -- IPPROTO_EGP = 0x8 -- IPPROTO_EMCON = 0xe -- IPPROTO_ENCAP = 0x62 -- IPPROTO_EON = 0x50 -- IPPROTO_ESP = 0x32 -- IPPROTO_ETHERIP = 0x61 -- IPPROTO_FRAGMENT = 0x2c -- IPPROTO_GGP = 0x3 -- IPPROTO_GMTP = 0x64 -- IPPROTO_GRE = 0x2f -- IPPROTO_HELLO = 0x3f -- IPPROTO_HMP = 0x14 -- IPPROTO_HOPOPTS = 0x0 -- IPPROTO_ICMP = 0x1 -- IPPROTO_ICMPV6 = 0x3a -- IPPROTO_IDP = 0x16 -- IPPROTO_IDPR = 0x23 -- IPPROTO_IDRP = 0x2d -- IPPROTO_IGMP = 0x2 -- IPPROTO_IGP = 0x55 -- IPPROTO_IGRP = 0x58 -- IPPROTO_IL = 0x28 -- IPPROTO_INLSP = 0x34 -- IPPROTO_INP = 0x20 -- IPPROTO_IP = 0x0 -- IPPROTO_IPCOMP = 0x6c -- IPPROTO_IPCV = 0x47 -- IPPROTO_IPEIP = 0x5e -- IPPROTO_IPIP = 0x4 -- IPPROTO_IPPC = 0x43 -- IPPROTO_IPV4 = 0x4 -- IPPROTO_IPV6 = 0x29 -- IPPROTO_IRTP = 0x1c -- IPPROTO_KRYPTOLAN = 0x41 -- IPPROTO_LARP = 0x5b -- IPPROTO_LEAF1 = 0x19 -- IPPROTO_LEAF2 = 0x1a -- IPPROTO_MAX = 0x100 -- IPPROTO_MAXID = 0x34 -- IPPROTO_MEAS = 0x13 -- IPPROTO_MHRP = 0x30 -- IPPROTO_MICP = 0x5f -- IPPROTO_MTP = 0x5c -- IPPROTO_MUX = 0x12 -- IPPROTO_ND = 0x4d -- IPPROTO_NHRP = 0x36 -- IPPROTO_NONE = 0x3b -- IPPROTO_NSP = 0x1f -- IPPROTO_NVPII = 0xb -- IPPROTO_OSPFIGP = 0x59 -- IPPROTO_PGM = 0x71 -- IPPROTO_PIGP = 0x9 -- IPPROTO_PIM = 0x67 -- IPPROTO_PRM = 0x15 -- IPPROTO_PUP = 0xc -- IPPROTO_PVP = 0x4b -- IPPROTO_RAW = 0xff -- IPPROTO_RCCMON = 0xa -- IPPROTO_RDP = 0x1b -- IPPROTO_ROUTING = 0x2b -- IPPROTO_RSVP = 0x2e -- IPPROTO_RVD = 0x42 -- IPPROTO_SATEXPAK = 0x40 -- IPPROTO_SATMON = 0x45 -- IPPROTO_SCCSP = 0x60 -- IPPROTO_SCTP = 0x84 -- IPPROTO_SDRP = 0x2a -- IPPROTO_SEP = 0x21 -- IPPROTO_SRPC = 0x5a -- IPPROTO_ST = 0x7 -- IPPROTO_SVMTP = 0x52 -- IPPROTO_SWIPE = 0x35 -- IPPROTO_TCF = 0x57 -- IPPROTO_TCP = 0x6 -- IPPROTO_TP = 0x1d -- IPPROTO_TPXX = 0x27 -- IPPROTO_TRUNK1 = 0x17 -- IPPROTO_TRUNK2 = 0x18 -- IPPROTO_TTP = 0x54 -- IPPROTO_UDP = 0x11 -- IPPROTO_VINES = 0x53 -- IPPROTO_VISA = 0x46 -- IPPROTO_VMTP = 0x51 -- IPPROTO_WBEXPAK = 0x4f -- IPPROTO_WBMON = 0x4e -- IPPROTO_WSN = 0x4a -- IPPROTO_XNET = 0xf -- IPPROTO_XTP = 0x24 -- IPV6_2292DSTOPTS = 0x17 -- IPV6_2292HOPLIMIT = 0x14 -- IPV6_2292HOPOPTS = 0x16 -- IPV6_2292NEXTHOP = 0x15 -- IPV6_2292PKTINFO = 0x13 -- IPV6_2292PKTOPTIONS = 0x19 -- IPV6_2292RTHDR = 0x18 -- IPV6_BINDV6ONLY = 0x1b -- IPV6_BOUND_IF = 0x7d -- IPV6_CHECKSUM = 0x1a -- IPV6_DEFAULT_MULTICAST_HOPS = 0x1 -- IPV6_DEFAULT_MULTICAST_LOOP = 0x1 -- IPV6_DEFHLIM = 0x40 -- IPV6_FAITH = 0x1d -- IPV6_FLOWINFO_MASK = 0xffffff0f -- IPV6_FLOWLABEL_MASK = 0xffff0f00 -- IPV6_FLOW_ECN_MASK = 0x300 -- IPV6_FRAGTTL = 0x3c -- IPV6_FW_ADD = 0x1e -- IPV6_FW_DEL = 0x1f -- IPV6_FW_FLUSH = 0x20 -- IPV6_FW_GET = 0x22 -- IPV6_FW_ZERO = 0x21 -- IPV6_HLIMDEC = 0x1 -- IPV6_IPSEC_POLICY = 0x1c -- IPV6_JOIN_GROUP = 0xc -- IPV6_LEAVE_GROUP = 0xd -- IPV6_MAXHLIM = 0xff -- IPV6_MAXOPTHDR = 0x800 -- IPV6_MAXPACKET = 0xffff -- IPV6_MAX_GROUP_SRC_FILTER = 0x200 -- IPV6_MAX_MEMBERSHIPS = 0xfff -- IPV6_MAX_SOCK_SRC_FILTER = 0x80 -- IPV6_MIN_MEMBERSHIPS = 0x1f -- IPV6_MMTU = 0x500 -- IPV6_MULTICAST_HOPS = 0xa -- IPV6_MULTICAST_IF = 0x9 -- IPV6_MULTICAST_LOOP = 0xb -- IPV6_PORTRANGE = 0xe -- IPV6_PORTRANGE_DEFAULT = 0x0 -- IPV6_PORTRANGE_HIGH = 0x1 -- IPV6_PORTRANGE_LOW = 0x2 -- IPV6_RECVTCLASS = 0x23 -- IPV6_RTHDR_LOOSE = 0x0 -- IPV6_RTHDR_STRICT = 0x1 -- IPV6_RTHDR_TYPE_0 = 0x0 -- IPV6_SOCKOPT_RESERVED1 = 0x3 -- IPV6_TCLASS = 0x24 -- IPV6_UNICAST_HOPS = 0x4 -- IPV6_V6ONLY = 0x1b -- IPV6_VERSION = 0x60 -- IPV6_VERSION_MASK = 0xf0 -- IP_ADD_MEMBERSHIP = 0xc -- IP_ADD_SOURCE_MEMBERSHIP = 0x46 -- IP_BLOCK_SOURCE = 0x48 -- IP_BOUND_IF = 0x19 -- IP_DEFAULT_MULTICAST_LOOP = 0x1 -- IP_DEFAULT_MULTICAST_TTL = 0x1 -- IP_DF = 0x4000 -- IP_DROP_MEMBERSHIP = 0xd -- IP_DROP_SOURCE_MEMBERSHIP = 0x47 -- IP_DUMMYNET_CONFIGURE = 0x3c -- IP_DUMMYNET_DEL = 0x3d -- IP_DUMMYNET_FLUSH = 0x3e -- IP_DUMMYNET_GET = 0x40 -- IP_FAITH = 0x16 -- IP_FW_ADD = 0x28 -- IP_FW_DEL = 0x29 -- IP_FW_FLUSH = 0x2a -- IP_FW_GET = 0x2c -- IP_FW_RESETLOG = 0x2d -- IP_FW_ZERO = 0x2b -- IP_HDRINCL = 0x2 -- IP_IPSEC_POLICY = 0x15 -- IP_MAXPACKET = 0xffff -- IP_MAX_GROUP_SRC_FILTER = 0x200 -- IP_MAX_MEMBERSHIPS = 0xfff -- IP_MAX_SOCK_MUTE_FILTER = 0x80 -- IP_MAX_SOCK_SRC_FILTER = 0x80 -- IP_MF = 0x2000 -- IP_MIN_MEMBERSHIPS = 0x1f -- IP_MSFILTER = 0x4a -- IP_MSS = 0x240 -- IP_MULTICAST_IF = 0x9 -- IP_MULTICAST_IFINDEX = 0x42 -- IP_MULTICAST_LOOP = 0xb -- IP_MULTICAST_TTL = 0xa -- IP_MULTICAST_VIF = 0xe -- IP_NAT__XXX = 0x37 -- IP_OFFMASK = 0x1fff -- IP_OLD_FW_ADD = 0x32 -- IP_OLD_FW_DEL = 0x33 -- IP_OLD_FW_FLUSH = 0x34 -- IP_OLD_FW_GET = 0x36 -- IP_OLD_FW_RESETLOG = 0x38 -- IP_OLD_FW_ZERO = 0x35 -- IP_OPTIONS = 0x1 -- IP_PKTINFO = 0x1a -- IP_PORTRANGE = 0x13 -- IP_PORTRANGE_DEFAULT = 0x0 -- IP_PORTRANGE_HIGH = 0x1 -- IP_PORTRANGE_LOW = 0x2 -- IP_RECVDSTADDR = 0x7 -- IP_RECVIF = 0x14 -- IP_RECVOPTS = 0x5 -- IP_RECVPKTINFO = 0x1a -- IP_RECVRETOPTS = 0x6 -- IP_RECVTOS = 0x1b -- IP_RECVTTL = 0x18 -- IP_RETOPTS = 0x8 -- IP_RF = 0x8000 -- IP_RSVP_OFF = 0x10 -- IP_RSVP_ON = 0xf -- IP_RSVP_VIF_OFF = 0x12 -- IP_RSVP_VIF_ON = 0x11 -- IP_STRIPHDR = 0x17 -- IP_TOS = 0x3 -- IP_TRAFFIC_MGT_BACKGROUND = 0x41 -- IP_TTL = 0x4 -- IP_UNBLOCK_SOURCE = 0x49 -- ISIG = 0x80 -- ISTRIP = 0x20 -- IUTF8 = 0x4000 -- IXANY = 0x800 -- IXOFF = 0x400 -- IXON = 0x200 -- KERN_HOSTNAME = 0xa -- KERN_OSRELEASE = 0x2 -- KERN_OSTYPE = 0x1 -- KERN_VERSION = 0x4 -- LOCK_EX = 0x2 -- LOCK_NB = 0x4 -- LOCK_SH = 0x1 -- LOCK_UN = 0x8 -- MADV_CAN_REUSE = 0x9 -- MADV_DONTNEED = 0x4 -- MADV_FREE = 0x5 -- MADV_FREE_REUSABLE = 0x7 -- MADV_FREE_REUSE = 0x8 -- MADV_NORMAL = 0x0 -- MADV_PAGEOUT = 0xa -- MADV_RANDOM = 0x1 -- MADV_SEQUENTIAL = 0x2 -- MADV_WILLNEED = 0x3 -- MADV_ZERO_WIRED_PAGES = 0x6 -- MAP_ANON = 0x1000 -- MAP_ANONYMOUS = 0x1000 -- MAP_COPY = 0x2 -- MAP_FILE = 0x0 -- MAP_FIXED = 0x10 -- MAP_HASSEMAPHORE = 0x200 -- MAP_JIT = 0x800 -- MAP_NOCACHE = 0x400 -- MAP_NOEXTEND = 0x100 -- MAP_NORESERVE = 0x40 -- MAP_PRIVATE = 0x2 -- MAP_RENAME = 0x20 -- MAP_RESERVED0080 = 0x80 -- MAP_RESILIENT_CODESIGN = 0x2000 -- MAP_RESILIENT_MEDIA = 0x4000 -- MAP_SHARED = 0x1 -- MCL_CURRENT = 0x1 -- MCL_FUTURE = 0x2 -- MNT_ASYNC = 0x40 -- MNT_AUTOMOUNTED = 0x400000 -- MNT_CMDFLAGS = 0xf0000 -- MNT_CPROTECT = 0x80 -- MNT_DEFWRITE = 0x2000000 -- MNT_DONTBROWSE = 0x100000 -- MNT_DOVOLFS = 0x8000 -- MNT_DWAIT = 0x4 -- MNT_EXPORTED = 0x100 -- MNT_FORCE = 0x80000 -- MNT_IGNORE_OWNERSHIP = 0x200000 -- MNT_JOURNALED = 0x800000 -- MNT_LOCAL = 0x1000 -- MNT_MULTILABEL = 0x4000000 -- MNT_NOATIME = 0x10000000 -- MNT_NOBLOCK = 0x20000 -- MNT_NODEV = 0x10 -- MNT_NOEXEC = 0x4 -- MNT_NOSUID = 0x8 -- MNT_NOUSERXATTR = 0x1000000 -- MNT_NOWAIT = 0x2 -- MNT_QUARANTINE = 0x400 -- MNT_QUOTA = 0x2000 -- MNT_RDONLY = 0x1 -- MNT_RELOAD = 0x40000 -- MNT_ROOTFS = 0x4000 -- MNT_SYNCHRONOUS = 0x2 -- MNT_UNION = 0x20 -- MNT_UNKNOWNPERMISSIONS = 0x200000 -- MNT_UPDATE = 0x10000 -- MNT_VISFLAGMASK = 0x17f0f5ff -- MNT_WAIT = 0x1 -- MSG_CTRUNC = 0x20 -- MSG_DONTROUTE = 0x4 -- MSG_DONTWAIT = 0x80 -- MSG_EOF = 0x100 -- MSG_EOR = 0x8 -- MSG_FLUSH = 0x400 -- MSG_HAVEMORE = 0x2000 -- MSG_HOLD = 0x800 -- MSG_NEEDSA = 0x10000 -- MSG_OOB = 0x1 -- MSG_PEEK = 0x2 -- MSG_RCVMORE = 0x4000 -- MSG_SEND = 0x1000 -- MSG_TRUNC = 0x10 -- MSG_WAITALL = 0x40 -- MSG_WAITSTREAM = 0x200 -- MS_ASYNC = 0x1 -- MS_DEACTIVATE = 0x8 -- MS_INVALIDATE = 0x2 -- MS_KILLPAGES = 0x4 -- MS_SYNC = 0x10 -- NAME_MAX = 0xff -- NET_RT_DUMP = 0x1 -- NET_RT_DUMP2 = 0x7 -- NET_RT_FLAGS = 0x2 -- NET_RT_IFLIST = 0x3 -- NET_RT_IFLIST2 = 0x6 -- NET_RT_MAXID = 0xa -- NET_RT_STAT = 0x4 -- NET_RT_TRASH = 0x5 -- NFDBITS = 0x20 -- NL0 = 0x0 -- NL1 = 0x100 -- NL2 = 0x200 -- NL3 = 0x300 -- NLDLY = 0x300 -- NOFLSH = 0x80000000 -- NOKERNINFO = 0x2000000 -- NOTE_ABSOLUTE = 0x8 -- NOTE_ATTRIB = 0x8 -- NOTE_BACKGROUND = 0x40 -- NOTE_CHILD = 0x4 -- NOTE_CRITICAL = 0x20 -- NOTE_DELETE = 0x1 -- NOTE_EXEC = 0x20000000 -- NOTE_EXIT = 0x80000000 -- NOTE_EXITSTATUS = 0x4000000 -- NOTE_EXIT_CSERROR = 0x40000 -- NOTE_EXIT_DECRYPTFAIL = 0x10000 -- NOTE_EXIT_DETAIL = 0x2000000 -- NOTE_EXIT_DETAIL_MASK = 0x70000 -- NOTE_EXIT_MEMORY = 0x20000 -- NOTE_EXIT_REPARENTED = 0x80000 -- NOTE_EXTEND = 0x4 -- NOTE_FFAND = 0x40000000 -- NOTE_FFCOPY = 0xc0000000 -- NOTE_FFCTRLMASK = 0xc0000000 -- NOTE_FFLAGSMASK = 0xffffff -- NOTE_FFNOP = 0x0 -- NOTE_FFOR = 0x80000000 -- NOTE_FORK = 0x40000000 -- NOTE_FUNLOCK = 0x100 -- NOTE_LEEWAY = 0x10 -- NOTE_LINK = 0x10 -- NOTE_LOWAT = 0x1 -- NOTE_MACH_CONTINUOUS_TIME = 0x80 -- NOTE_NONE = 0x80 -- NOTE_NSECONDS = 0x4 -- NOTE_OOB = 0x2 -- NOTE_PCTRLMASK = -0x100000 -- NOTE_PDATAMASK = 0xfffff -- NOTE_REAP = 0x10000000 -- NOTE_RENAME = 0x20 -- NOTE_REVOKE = 0x40 -- NOTE_SECONDS = 0x1 -- NOTE_SIGNAL = 0x8000000 -- NOTE_TRACK = 0x1 -- NOTE_TRACKERR = 0x2 -- NOTE_TRIGGER = 0x1000000 -- NOTE_USECONDS = 0x2 -- NOTE_VM_ERROR = 0x10000000 -- NOTE_VM_PRESSURE = 0x80000000 -- NOTE_VM_PRESSURE_SUDDEN_TERMINATE = 0x20000000 -- NOTE_VM_PRESSURE_TERMINATE = 0x40000000 -- NOTE_WRITE = 0x2 -- OCRNL = 0x10 -- OFDEL = 0x20000 -- OFILL = 0x80 -- ONLCR = 0x2 -- ONLRET = 0x40 -- ONOCR = 0x20 -- ONOEOT = 0x8 -- OPOST = 0x1 -- OXTABS = 0x4 -- O_ACCMODE = 0x3 -- O_ALERT = 0x20000000 -- O_APPEND = 0x8 -- O_ASYNC = 0x40 -- O_CLOEXEC = 0x1000000 -- O_CREAT = 0x200 -- O_DIRECTORY = 0x100000 -- O_DP_GETRAWENCRYPTED = 0x1 -- O_DP_GETRAWUNENCRYPTED = 0x2 -- O_DSYNC = 0x400000 -- O_EVTONLY = 0x8000 -- O_EXCL = 0x800 -- O_EXLOCK = 0x20 -- O_FSYNC = 0x80 -- O_NDELAY = 0x4 -- O_NOCTTY = 0x20000 -- O_NOFOLLOW = 0x100 -- O_NONBLOCK = 0x4 -- O_POPUP = 0x80000000 -- O_RDONLY = 0x0 -- O_RDWR = 0x2 -- O_SHLOCK = 0x10 -- O_SYMLINK = 0x200000 -- O_SYNC = 0x80 -- O_TRUNC = 0x400 -- O_WRONLY = 0x1 -- PARENB = 0x1000 -- PARMRK = 0x8 -- PARODD = 0x2000 -- PENDIN = 0x20000000 -- PRIO_PGRP = 0x1 -- PRIO_PROCESS = 0x0 -- PRIO_USER = 0x2 -- PROT_EXEC = 0x4 -- PROT_NONE = 0x0 -- PROT_READ = 0x1 -- PROT_WRITE = 0x2 -- PT_ATTACH = 0xa -- PT_ATTACHEXC = 0xe -- PT_CONTINUE = 0x7 -- PT_DENY_ATTACH = 0x1f -- PT_DETACH = 0xb -- PT_FIRSTMACH = 0x20 -- PT_FORCEQUOTA = 0x1e -- PT_KILL = 0x8 -- PT_READ_D = 0x2 -- PT_READ_I = 0x1 -- PT_READ_U = 0x3 -- PT_SIGEXC = 0xc -- PT_STEP = 0x9 -- PT_THUPDATE = 0xd -- PT_TRACE_ME = 0x0 -- PT_WRITE_D = 0x5 -- PT_WRITE_I = 0x4 -- PT_WRITE_U = 0x6 -- RLIMIT_AS = 0x5 -- RLIMIT_CORE = 0x4 -- RLIMIT_CPU = 0x0 -- RLIMIT_CPU_USAGE_MONITOR = 0x2 -- RLIMIT_DATA = 0x2 -- RLIMIT_FSIZE = 0x1 -- RLIMIT_MEMLOCK = 0x6 -- RLIMIT_NOFILE = 0x8 -- RLIMIT_NPROC = 0x7 -- RLIMIT_RSS = 0x5 -- RLIMIT_STACK = 0x3 -- RLIM_INFINITY = 0x7fffffffffffffff -- RTAX_AUTHOR = 0x6 -- RTAX_BRD = 0x7 -- RTAX_DST = 0x0 -- RTAX_GATEWAY = 0x1 -- RTAX_GENMASK = 0x3 -- RTAX_IFA = 0x5 -- RTAX_IFP = 0x4 -- RTAX_MAX = 0x8 -- RTAX_NETMASK = 0x2 -- RTA_AUTHOR = 0x40 -- RTA_BRD = 0x80 -- RTA_DST = 0x1 -- RTA_GATEWAY = 0x2 -- RTA_GENMASK = 0x8 -- RTA_IFA = 0x20 -- RTA_IFP = 0x10 -- RTA_NETMASK = 0x4 -- RTF_BLACKHOLE = 0x1000 -- RTF_BROADCAST = 0x400000 -- RTF_CLONING = 0x100 -- RTF_CONDEMNED = 0x2000000 -- RTF_DELCLONE = 0x80 -- RTF_DONE = 0x40 -- RTF_DYNAMIC = 0x10 -- RTF_GATEWAY = 0x2 -- RTF_HOST = 0x4 -- RTF_IFREF = 0x4000000 -- RTF_IFSCOPE = 0x1000000 -- RTF_LLINFO = 0x400 -- RTF_LOCAL = 0x200000 -- RTF_MODIFIED = 0x20 -- RTF_MULTICAST = 0x800000 -- RTF_NOIFREF = 0x2000 -- RTF_PINNED = 0x100000 -- RTF_PRCLONING = 0x10000 -- RTF_PROTO1 = 0x8000 -- RTF_PROTO2 = 0x4000 -- RTF_PROTO3 = 0x40000 -- RTF_PROXY = 0x8000000 -- RTF_REJECT = 0x8 -- RTF_ROUTER = 0x10000000 -- RTF_STATIC = 0x800 -- RTF_UP = 0x1 -- RTF_WASCLONED = 0x20000 -- RTF_XRESOLVE = 0x200 -- RTM_ADD = 0x1 -- RTM_CHANGE = 0x3 -- RTM_DELADDR = 0xd -- RTM_DELETE = 0x2 -- RTM_DELMADDR = 0x10 -- RTM_GET = 0x4 -- RTM_GET2 = 0x14 -- RTM_IFINFO = 0xe -- RTM_IFINFO2 = 0x12 -- RTM_LOCK = 0x8 -- RTM_LOSING = 0x5 -- RTM_MISS = 0x7 -- RTM_NEWADDR = 0xc -- RTM_NEWMADDR = 0xf -- RTM_NEWMADDR2 = 0x13 -- RTM_OLDADD = 0x9 -- RTM_OLDDEL = 0xa -- RTM_REDIRECT = 0x6 -- RTM_RESOLVE = 0xb -- RTM_RTTUNIT = 0xf4240 -- RTM_VERSION = 0x5 -- RTV_EXPIRE = 0x4 -- RTV_HOPCOUNT = 0x2 -- RTV_MTU = 0x1 -- RTV_RPIPE = 0x8 -- RTV_RTT = 0x40 -- RTV_RTTVAR = 0x80 -- RTV_SPIPE = 0x10 -- RTV_SSTHRESH = 0x20 -- RUSAGE_CHILDREN = -0x1 -- RUSAGE_SELF = 0x0 -- SCM_CREDS = 0x3 -- SCM_RIGHTS = 0x1 -- SCM_TIMESTAMP = 0x2 -- SCM_TIMESTAMP_MONOTONIC = 0x4 -- SHUT_RD = 0x0 -- SHUT_RDWR = 0x2 -- SHUT_WR = 0x1 -- SIOCADDMULTI = 0x80206931 -- SIOCAIFADDR = 0x8040691a -- SIOCARPIPLL = 0xc0206928 -- SIOCATMARK = 0x40047307 -- SIOCAUTOADDR = 0xc0206926 -- SIOCAUTONETMASK = 0x80206927 -- SIOCDELMULTI = 0x80206932 -- SIOCDIFADDR = 0x80206919 -- SIOCDIFPHYADDR = 0x80206941 -- SIOCGDRVSPEC = 0xc028697b -- SIOCGETVLAN = 0xc020697f -- SIOCGHIWAT = 0x40047301 -- SIOCGIFADDR = 0xc0206921 -- SIOCGIFALTMTU = 0xc0206948 -- SIOCGIFASYNCMAP = 0xc020697c -- SIOCGIFBOND = 0xc0206947 -- SIOCGIFBRDADDR = 0xc0206923 -- SIOCGIFCAP = 0xc020695b -- SIOCGIFCONF = 0xc00c6924 -- SIOCGIFDEVMTU = 0xc0206944 -- SIOCGIFDSTADDR = 0xc0206922 -- SIOCGIFFLAGS = 0xc0206911 -- SIOCGIFGENERIC = 0xc020693a -- SIOCGIFKPI = 0xc0206987 -- SIOCGIFMAC = 0xc0206982 -- SIOCGIFMEDIA = 0xc02c6938 -- SIOCGIFMETRIC = 0xc0206917 -- SIOCGIFMTU = 0xc0206933 -- SIOCGIFNETMASK = 0xc0206925 -- SIOCGIFPDSTADDR = 0xc0206940 -- SIOCGIFPHYS = 0xc0206935 -- SIOCGIFPSRCADDR = 0xc020693f -- SIOCGIFSTATUS = 0xc331693d -- SIOCGIFVLAN = 0xc020697f -- SIOCGIFWAKEFLAGS = 0xc0206988 -- SIOCGLOWAT = 0x40047303 -- SIOCGPGRP = 0x40047309 -- SIOCIFCREATE = 0xc0206978 -- SIOCIFCREATE2 = 0xc020697a -- SIOCIFDESTROY = 0x80206979 -- SIOCIFGCLONERS = 0xc0106981 -- SIOCRSLVMULTI = 0xc010693b -- SIOCSDRVSPEC = 0x8028697b -- SIOCSETVLAN = 0x8020697e -- SIOCSHIWAT = 0x80047300 -- SIOCSIFADDR = 0x8020690c -- SIOCSIFALTMTU = 0x80206945 -- SIOCSIFASYNCMAP = 0x8020697d -- SIOCSIFBOND = 0x80206946 -- SIOCSIFBRDADDR = 0x80206913 -- SIOCSIFCAP = 0x8020695a -- SIOCSIFDSTADDR = 0x8020690e -- SIOCSIFFLAGS = 0x80206910 -- SIOCSIFGENERIC = 0x80206939 -- SIOCSIFKPI = 0x80206986 -- SIOCSIFLLADDR = 0x8020693c -- SIOCSIFMAC = 0x80206983 -- SIOCSIFMEDIA = 0xc0206937 -- SIOCSIFMETRIC = 0x80206918 -- SIOCSIFMTU = 0x80206934 -- SIOCSIFNETMASK = 0x80206916 -- SIOCSIFPHYADDR = 0x8040693e -- SIOCSIFPHYS = 0x80206936 -- SIOCSIFVLAN = 0x8020697e -- SIOCSLOWAT = 0x80047302 -- SIOCSPGRP = 0x80047308 -- SOCK_DGRAM = 0x2 -- SOCK_MAXADDRLEN = 0xff -- SOCK_RAW = 0x3 -- SOCK_RDM = 0x4 -- SOCK_SEQPACKET = 0x5 -- SOCK_STREAM = 0x1 -- SOL_SOCKET = 0xffff -- SOMAXCONN = 0x80 -- SO_ACCEPTCONN = 0x2 -- SO_BROADCAST = 0x20 -- SO_DEBUG = 0x1 -- SO_DONTROUTE = 0x10 -- SO_DONTTRUNC = 0x2000 -- SO_ERROR = 0x1007 -- SO_KEEPALIVE = 0x8 -- SO_LABEL = 0x1010 -- SO_LINGER = 0x80 -- SO_LINGER_SEC = 0x1080 -- SO_NETSVC_MARKING_LEVEL = 0x1119 -- SO_NET_SERVICE_TYPE = 0x1116 -- SO_NKE = 0x1021 -- SO_NOADDRERR = 0x1023 -- SO_NOSIGPIPE = 0x1022 -- SO_NOTIFYCONFLICT = 0x1026 -- SO_NP_EXTENSIONS = 0x1083 -- SO_NREAD = 0x1020 -- SO_NUMRCVPKT = 0x1112 -- SO_NWRITE = 0x1024 -- SO_OOBINLINE = 0x100 -- SO_PEERLABEL = 0x1011 -- SO_RANDOMPORT = 0x1082 -- SO_RCVBUF = 0x1002 -- SO_RCVLOWAT = 0x1004 -- SO_RCVTIMEO = 0x1006 -- SO_REUSEADDR = 0x4 -- SO_REUSEPORT = 0x200 -- SO_REUSESHAREUID = 0x1025 -- SO_SNDBUF = 0x1001 -- SO_SNDLOWAT = 0x1003 -- SO_SNDTIMEO = 0x1005 -- SO_TIMESTAMP = 0x400 -- SO_TIMESTAMP_MONOTONIC = 0x800 -- SO_TYPE = 0x1008 -- SO_UPCALLCLOSEWAIT = 0x1027 -- SO_USELOOPBACK = 0x40 -- SO_WANTMORE = 0x4000 -- SO_WANTOOBFLAG = 0x8000 -- S_IEXEC = 0x40 -- S_IFBLK = 0x6000 -- S_IFCHR = 0x2000 -- S_IFDIR = 0x4000 -- S_IFIFO = 0x1000 -- S_IFLNK = 0xa000 -- S_IFMT = 0xf000 -- S_IFREG = 0x8000 -- S_IFSOCK = 0xc000 -- S_IFWHT = 0xe000 -- S_IREAD = 0x100 -- S_IRGRP = 0x20 -- S_IROTH = 0x4 -- S_IRUSR = 0x100 -- S_IRWXG = 0x38 -- S_IRWXO = 0x7 -- S_IRWXU = 0x1c0 -- S_ISGID = 0x400 -- S_ISTXT = 0x200 -- S_ISUID = 0x800 -- S_ISVTX = 0x200 -- S_IWGRP = 0x10 -- S_IWOTH = 0x2 -- S_IWRITE = 0x80 -- S_IWUSR = 0x80 -- S_IXGRP = 0x8 -- S_IXOTH = 0x1 -- S_IXUSR = 0x40 -- TAB0 = 0x0 -- TAB1 = 0x400 -- TAB2 = 0x800 -- TAB3 = 0x4 -- TABDLY = 0xc04 -- TCIFLUSH = 0x1 -- TCIOFF = 0x3 -- TCIOFLUSH = 0x3 -- TCION = 0x4 -- TCOFLUSH = 0x2 -- TCOOFF = 0x1 -- TCOON = 0x2 -- TCP_CONNECTIONTIMEOUT = 0x20 -- TCP_CONNECTION_INFO = 0x106 -- TCP_ENABLE_ECN = 0x104 -- TCP_FASTOPEN = 0x105 -- TCP_KEEPALIVE = 0x10 -- TCP_KEEPCNT = 0x102 -- TCP_KEEPINTVL = 0x101 -- TCP_MAXHLEN = 0x3c -- TCP_MAXOLEN = 0x28 -- TCP_MAXSEG = 0x2 -- TCP_MAXWIN = 0xffff -- TCP_MAX_SACK = 0x4 -- TCP_MAX_WINSHIFT = 0xe -- TCP_MINMSS = 0xd8 -- TCP_MSS = 0x200 -- TCP_NODELAY = 0x1 -- TCP_NOOPT = 0x8 -- TCP_NOPUSH = 0x4 -- TCP_NOTSENT_LOWAT = 0x201 -- TCP_RXT_CONNDROPTIME = 0x80 -- TCP_RXT_FINDROP = 0x100 -- TCP_SENDMOREACKS = 0x103 -- TCSAFLUSH = 0x2 -- TIOCCBRK = 0x2000747a -- TIOCCDTR = 0x20007478 -- TIOCCONS = 0x80047462 -- TIOCDCDTIMESTAMP = 0x40107458 -- TIOCDRAIN = 0x2000745e -- TIOCDSIMICROCODE = 0x20007455 -- TIOCEXCL = 0x2000740d -- TIOCEXT = 0x80047460 -- TIOCFLUSH = 0x80047410 -- TIOCGDRAINWAIT = 0x40047456 -- TIOCGETA = 0x40487413 -- TIOCGETD = 0x4004741a -- TIOCGPGRP = 0x40047477 -- TIOCGWINSZ = 0x40087468 -- TIOCIXOFF = 0x20007480 -- TIOCIXON = 0x20007481 -- TIOCMBIC = 0x8004746b -- TIOCMBIS = 0x8004746c -- TIOCMGDTRWAIT = 0x4004745a -- TIOCMGET = 0x4004746a -- TIOCMODG = 0x40047403 -- TIOCMODS = 0x80047404 -- TIOCMSDTRWAIT = 0x8004745b -- TIOCMSET = 0x8004746d -- TIOCM_CAR = 0x40 -- TIOCM_CD = 0x40 -- TIOCM_CTS = 0x20 -- TIOCM_DSR = 0x100 -- TIOCM_DTR = 0x2 -- TIOCM_LE = 0x1 -- TIOCM_RI = 0x80 -- TIOCM_RNG = 0x80 -- TIOCM_RTS = 0x4 -- TIOCM_SR = 0x10 -- TIOCM_ST = 0x8 -- TIOCNOTTY = 0x20007471 -- TIOCNXCL = 0x2000740e -- TIOCOUTQ = 0x40047473 -- TIOCPKT = 0x80047470 -- TIOCPKT_DATA = 0x0 -- TIOCPKT_DOSTOP = 0x20 -- TIOCPKT_FLUSHREAD = 0x1 -- TIOCPKT_FLUSHWRITE = 0x2 -- TIOCPKT_IOCTL = 0x40 -- TIOCPKT_NOSTOP = 0x10 -- TIOCPKT_START = 0x8 -- TIOCPKT_STOP = 0x4 -- TIOCPTYGNAME = 0x40807453 -- TIOCPTYGRANT = 0x20007454 -- TIOCPTYUNLK = 0x20007452 -- TIOCREMOTE = 0x80047469 -- TIOCSBRK = 0x2000747b -- TIOCSCONS = 0x20007463 -- TIOCSCTTY = 0x20007461 -- TIOCSDRAINWAIT = 0x80047457 -- TIOCSDTR = 0x20007479 -- TIOCSETA = 0x80487414 -- TIOCSETAF = 0x80487416 -- TIOCSETAW = 0x80487415 -- TIOCSETD = 0x8004741b -- TIOCSIG = 0x2000745f -- TIOCSPGRP = 0x80047476 -- TIOCSTART = 0x2000746e -- TIOCSTAT = 0x20007465 -- TIOCSTI = 0x80017472 -- TIOCSTOP = 0x2000746f -- TIOCSWINSZ = 0x80087467 -- TIOCTIMESTAMP = 0x40107459 -- TIOCUCNTL = 0x80047466 -- TOSTOP = 0x400000 -- VDISCARD = 0xf -- VDSUSP = 0xb -- VEOF = 0x0 -- VEOL = 0x1 -- VEOL2 = 0x2 -- VERASE = 0x3 -- VINTR = 0x8 -- VKILL = 0x5 -- VLNEXT = 0xe -- VMIN = 0x10 -- VM_LOADAVG = 0x2 -- VM_MACHFACTOR = 0x4 -- VM_MAXID = 0x6 -- VM_METER = 0x1 -- VM_SWAPUSAGE = 0x5 -- VQUIT = 0x9 -- VREPRINT = 0x6 -- VSTART = 0xc -- VSTATUS = 0x12 -- VSTOP = 0xd -- VSUSP = 0xa -- VT0 = 0x0 -- VT1 = 0x10000 -- VTDLY = 0x10000 -- VTIME = 0x11 -- VWERASE = 0x4 -- WCONTINUED = 0x10 -- WCOREFLAG = 0x80 -- WEXITED = 0x4 -- WNOHANG = 0x1 -- WNOWAIT = 0x20 -- WORDSIZE = 0x40 -- WSTOPPED = 0x8 -- WUNTRACED = 0x2 -- XATTR_CREATE = 0x2 -- XATTR_NODEFAULT = 0x10 -- XATTR_NOFOLLOW = 0x1 -- XATTR_NOSECURITY = 0x8 -- XATTR_REPLACE = 0x4 -- XATTR_SHOWCOMPRESSION = 0x20 --) -- --// Errors --const ( -- E2BIG = syscall.Errno(0x7) -- EACCES = syscall.Errno(0xd) -- EADDRINUSE = syscall.Errno(0x30) -- EADDRNOTAVAIL = syscall.Errno(0x31) -- EAFNOSUPPORT = syscall.Errno(0x2f) -- EAGAIN = syscall.Errno(0x23) -- EALREADY = syscall.Errno(0x25) -- EAUTH = syscall.Errno(0x50) -- EBADARCH = syscall.Errno(0x56) -- EBADEXEC = syscall.Errno(0x55) -- EBADF = syscall.Errno(0x9) -- EBADMACHO = syscall.Errno(0x58) -- EBADMSG = syscall.Errno(0x5e) -- EBADRPC = syscall.Errno(0x48) -- EBUSY = syscall.Errno(0x10) -- ECANCELED = syscall.Errno(0x59) -- ECHILD = syscall.Errno(0xa) -- ECONNABORTED = syscall.Errno(0x35) -- ECONNREFUSED = syscall.Errno(0x3d) -- ECONNRESET = syscall.Errno(0x36) -- EDEADLK = syscall.Errno(0xb) -- EDESTADDRREQ = syscall.Errno(0x27) -- EDEVERR = syscall.Errno(0x53) -- EDOM = syscall.Errno(0x21) -- EDQUOT = syscall.Errno(0x45) -- EEXIST = syscall.Errno(0x11) -- EFAULT = syscall.Errno(0xe) -- EFBIG = syscall.Errno(0x1b) -- EFTYPE = syscall.Errno(0x4f) -- EHOSTDOWN = syscall.Errno(0x40) -- EHOSTUNREACH = syscall.Errno(0x41) -- EIDRM = syscall.Errno(0x5a) -- EILSEQ = syscall.Errno(0x5c) -- EINPROGRESS = syscall.Errno(0x24) -- EINTR = syscall.Errno(0x4) -- EINVAL = syscall.Errno(0x16) -- EIO = syscall.Errno(0x5) -- EISCONN = syscall.Errno(0x38) -- EISDIR = syscall.Errno(0x15) -- ELAST = syscall.Errno(0x6a) -- ELOOP = syscall.Errno(0x3e) -- EMFILE = syscall.Errno(0x18) -- EMLINK = syscall.Errno(0x1f) -- EMSGSIZE = syscall.Errno(0x28) -- EMULTIHOP = syscall.Errno(0x5f) -- ENAMETOOLONG = syscall.Errno(0x3f) -- ENEEDAUTH = syscall.Errno(0x51) -- ENETDOWN = syscall.Errno(0x32) -- ENETRESET = syscall.Errno(0x34) -- ENETUNREACH = syscall.Errno(0x33) -- ENFILE = syscall.Errno(0x17) -- ENOATTR = syscall.Errno(0x5d) -- ENOBUFS = syscall.Errno(0x37) -- ENODATA = syscall.Errno(0x60) -- ENODEV = syscall.Errno(0x13) -- ENOENT = syscall.Errno(0x2) -- ENOEXEC = syscall.Errno(0x8) -- ENOLCK = syscall.Errno(0x4d) -- ENOLINK = syscall.Errno(0x61) -- ENOMEM = syscall.Errno(0xc) -- ENOMSG = syscall.Errno(0x5b) -- ENOPOLICY = syscall.Errno(0x67) -- ENOPROTOOPT = syscall.Errno(0x2a) -- ENOSPC = syscall.Errno(0x1c) -- ENOSR = syscall.Errno(0x62) -- ENOSTR = syscall.Errno(0x63) -- ENOSYS = syscall.Errno(0x4e) -- ENOTBLK = syscall.Errno(0xf) -- ENOTCONN = syscall.Errno(0x39) -- ENOTDIR = syscall.Errno(0x14) -- ENOTEMPTY = syscall.Errno(0x42) -- ENOTRECOVERABLE = syscall.Errno(0x68) -- ENOTSOCK = syscall.Errno(0x26) -- ENOTSUP = syscall.Errno(0x2d) -- ENOTTY = syscall.Errno(0x19) -- ENXIO = syscall.Errno(0x6) -- EOPNOTSUPP = syscall.Errno(0x66) -- EOVERFLOW = syscall.Errno(0x54) -- EOWNERDEAD = syscall.Errno(0x69) -- EPERM = syscall.Errno(0x1) -- EPFNOSUPPORT = syscall.Errno(0x2e) -- EPIPE = syscall.Errno(0x20) -- EPROCLIM = syscall.Errno(0x43) -- EPROCUNAVAIL = syscall.Errno(0x4c) -- EPROGMISMATCH = syscall.Errno(0x4b) -- EPROGUNAVAIL = syscall.Errno(0x4a) -- EPROTO = syscall.Errno(0x64) -- EPROTONOSUPPORT = syscall.Errno(0x2b) -- EPROTOTYPE = syscall.Errno(0x29) -- EPWROFF = syscall.Errno(0x52) -- EQFULL = syscall.Errno(0x6a) -- ERANGE = syscall.Errno(0x22) -- EREMOTE = syscall.Errno(0x47) -- EROFS = syscall.Errno(0x1e) -- ERPCMISMATCH = syscall.Errno(0x49) -- ESHLIBVERS = syscall.Errno(0x57) -- ESHUTDOWN = syscall.Errno(0x3a) -- ESOCKTNOSUPPORT = syscall.Errno(0x2c) -- ESPIPE = syscall.Errno(0x1d) -- ESRCH = syscall.Errno(0x3) -- ESTALE = syscall.Errno(0x46) -- ETIME = syscall.Errno(0x65) -- ETIMEDOUT = syscall.Errno(0x3c) -- ETOOMANYREFS = syscall.Errno(0x3b) -- ETXTBSY = syscall.Errno(0x1a) -- EUSERS = syscall.Errno(0x44) -- EWOULDBLOCK = syscall.Errno(0x23) -- EXDEV = syscall.Errno(0x12) --) -- --// Signals --const ( -- SIGABRT = syscall.Signal(0x6) -- SIGALRM = syscall.Signal(0xe) -- SIGBUS = syscall.Signal(0xa) -- SIGCHLD = syscall.Signal(0x14) -- SIGCONT = syscall.Signal(0x13) -- SIGEMT = syscall.Signal(0x7) -- SIGFPE = syscall.Signal(0x8) -- SIGHUP = syscall.Signal(0x1) -- SIGILL = syscall.Signal(0x4) -- SIGINFO = syscall.Signal(0x1d) -- SIGINT = syscall.Signal(0x2) -- SIGIO = syscall.Signal(0x17) -- SIGIOT = syscall.Signal(0x6) -- SIGKILL = syscall.Signal(0x9) -- SIGPIPE = syscall.Signal(0xd) -- SIGPROF = syscall.Signal(0x1b) -- SIGQUIT = syscall.Signal(0x3) -- SIGSEGV = syscall.Signal(0xb) -- SIGSTOP = syscall.Signal(0x11) -- SIGSYS = syscall.Signal(0xc) -- SIGTERM = syscall.Signal(0xf) -- SIGTRAP = syscall.Signal(0x5) -- SIGTSTP = syscall.Signal(0x12) -- SIGTTIN = syscall.Signal(0x15) -- SIGTTOU = syscall.Signal(0x16) -- SIGURG = syscall.Signal(0x10) -- SIGUSR1 = syscall.Signal(0x1e) -- SIGUSR2 = syscall.Signal(0x1f) -- SIGVTALRM = syscall.Signal(0x1a) -- SIGWINCH = syscall.Signal(0x1c) -- SIGXCPU = syscall.Signal(0x18) -- SIGXFSZ = syscall.Signal(0x19) --) -- --// Error table --var errorList = [...]struct { -- num syscall.Errno -- name string -- desc string --}{ -- {1, "EPERM", "operation not permitted"}, -- {2, "ENOENT", "no such file or directory"}, -- {3, "ESRCH", "no such process"}, -- {4, "EINTR", "interrupted system call"}, -- {5, "EIO", "input/output error"}, -- {6, "ENXIO", "device not configured"}, -- {7, "E2BIG", "argument list too long"}, -- {8, "ENOEXEC", "exec format error"}, -- {9, "EBADF", "bad file descriptor"}, -- {10, "ECHILD", "no child processes"}, -- {11, "EDEADLK", "resource deadlock avoided"}, -- {12, "ENOMEM", "cannot allocate memory"}, -- {13, "EACCES", "permission denied"}, -- {14, "EFAULT", "bad address"}, -- {15, "ENOTBLK", "block device required"}, -- {16, "EBUSY", "resource busy"}, -- {17, "EEXIST", "file exists"}, -- {18, "EXDEV", "cross-device link"}, -- {19, "ENODEV", "operation not supported by device"}, -- {20, "ENOTDIR", "not a directory"}, -- {21, "EISDIR", "is a directory"}, -- {22, "EINVAL", "invalid argument"}, -- {23, "ENFILE", "too many open files in system"}, -- {24, "EMFILE", "too many open files"}, -- {25, "ENOTTY", "inappropriate ioctl for device"}, -- {26, "ETXTBSY", "text file busy"}, -- {27, "EFBIG", "file too large"}, -- {28, "ENOSPC", "no space left on device"}, -- {29, "ESPIPE", "illegal seek"}, -- {30, "EROFS", "read-only file system"}, -- {31, "EMLINK", "too many links"}, -- {32, "EPIPE", "broken pipe"}, -- {33, "EDOM", "numerical argument out of domain"}, -- {34, "ERANGE", "result too large"}, -- {35, "EAGAIN", "resource temporarily unavailable"}, -- {36, "EINPROGRESS", "operation now in progress"}, -- {37, "EALREADY", "operation already in progress"}, -- {38, "ENOTSOCK", "socket operation on non-socket"}, -- {39, "EDESTADDRREQ", "destination address required"}, -- {40, "EMSGSIZE", "message too long"}, -- {41, "EPROTOTYPE", "protocol wrong type for socket"}, -- {42, "ENOPROTOOPT", "protocol not available"}, -- {43, "EPROTONOSUPPORT", "protocol not supported"}, -- {44, "ESOCKTNOSUPPORT", "socket type not supported"}, -- {45, "ENOTSUP", "operation not supported"}, -- {46, "EPFNOSUPPORT", "protocol family not supported"}, -- {47, "EAFNOSUPPORT", "address family not supported by protocol family"}, -- {48, "EADDRINUSE", "address already in use"}, -- {49, "EADDRNOTAVAIL", "can't assign requested address"}, -- {50, "ENETDOWN", "network is down"}, -- {51, "ENETUNREACH", "network is unreachable"}, -- {52, "ENETRESET", "network dropped connection on reset"}, -- {53, "ECONNABORTED", "software caused connection abort"}, -- {54, "ECONNRESET", "connection reset by peer"}, -- {55, "ENOBUFS", "no buffer space available"}, -- {56, "EISCONN", "socket is already connected"}, -- {57, "ENOTCONN", "socket is not connected"}, -- {58, "ESHUTDOWN", "can't send after socket shutdown"}, -- {59, "ETOOMANYREFS", "too many references: can't splice"}, -- {60, "ETIMEDOUT", "operation timed out"}, -- {61, "ECONNREFUSED", "connection refused"}, -- {62, "ELOOP", "too many levels of symbolic links"}, -- {63, "ENAMETOOLONG", "file name too long"}, -- {64, "EHOSTDOWN", "host is down"}, -- {65, "EHOSTUNREACH", "no route to host"}, -- {66, "ENOTEMPTY", "directory not empty"}, -- {67, "EPROCLIM", "too many processes"}, -- {68, "EUSERS", "too many users"}, -- {69, "EDQUOT", "disc quota exceeded"}, -- {70, "ESTALE", "stale NFS file handle"}, -- {71, "EREMOTE", "too many levels of remote in path"}, -- {72, "EBADRPC", "RPC struct is bad"}, -- {73, "ERPCMISMATCH", "RPC version wrong"}, -- {74, "EPROGUNAVAIL", "RPC prog. not avail"}, -- {75, "EPROGMISMATCH", "program version wrong"}, -- {76, "EPROCUNAVAIL", "bad procedure for program"}, -- {77, "ENOLCK", "no locks available"}, -- {78, "ENOSYS", "function not implemented"}, -- {79, "EFTYPE", "inappropriate file type or format"}, -- {80, "EAUTH", "authentication error"}, -- {81, "ENEEDAUTH", "need authenticator"}, -- {82, "EPWROFF", "device power is off"}, -- {83, "EDEVERR", "device error"}, -- {84, "EOVERFLOW", "value too large to be stored in data type"}, -- {85, "EBADEXEC", "bad executable (or shared library)"}, -- {86, "EBADARCH", "bad CPU type in executable"}, -- {87, "ESHLIBVERS", "shared library version mismatch"}, -- {88, "EBADMACHO", "malformed Mach-o file"}, -- {89, "ECANCELED", "operation canceled"}, -- {90, "EIDRM", "identifier removed"}, -- {91, "ENOMSG", "no message of desired type"}, -- {92, "EILSEQ", "illegal byte sequence"}, -- {93, "ENOATTR", "attribute not found"}, -- {94, "EBADMSG", "bad message"}, -- {95, "EMULTIHOP", "EMULTIHOP (Reserved)"}, -- {96, "ENODATA", "no message available on STREAM"}, -- {97, "ENOLINK", "ENOLINK (Reserved)"}, -- {98, "ENOSR", "no STREAM resources"}, -- {99, "ENOSTR", "not a STREAM"}, -- {100, "EPROTO", "protocol error"}, -- {101, "ETIME", "STREAM ioctl timeout"}, -- {102, "EOPNOTSUPP", "operation not supported on socket"}, -- {103, "ENOPOLICY", "policy not found"}, -- {104, "ENOTRECOVERABLE", "state not recoverable"}, -- {105, "EOWNERDEAD", "previous owner died"}, -- {106, "EQFULL", "interface output queue is full"}, --} -- --// Signal table --var signalList = [...]struct { -- num syscall.Signal -- name string -- desc string --}{ -- {1, "SIGHUP", "hangup"}, -- {2, "SIGINT", "interrupt"}, -- {3, "SIGQUIT", "quit"}, -- {4, "SIGILL", "illegal instruction"}, -- {5, "SIGTRAP", "trace/BPT trap"}, -- {6, "SIGABRT", "abort trap"}, -- {7, "SIGEMT", "EMT trap"}, -- {8, "SIGFPE", "floating point exception"}, -- {9, "SIGKILL", "killed"}, -- {10, "SIGBUS", "bus error"}, -- {11, "SIGSEGV", "segmentation fault"}, -- {12, "SIGSYS", "bad system call"}, -- {13, "SIGPIPE", "broken pipe"}, -- {14, "SIGALRM", "alarm clock"}, -- {15, "SIGTERM", "terminated"}, -- {16, "SIGURG", "urgent I/O condition"}, -- {17, "SIGSTOP", "suspended (signal)"}, -- {18, "SIGTSTP", "suspended"}, -- {19, "SIGCONT", "continued"}, -- {20, "SIGCHLD", "child exited"}, -- {21, "SIGTTIN", "stopped (tty input)"}, -- {22, "SIGTTOU", "stopped (tty output)"}, -- {23, "SIGIO", "I/O possible"}, -- {24, "SIGXCPU", "cputime limit exceeded"}, -- {25, "SIGXFSZ", "filesize limit exceeded"}, -- {26, "SIGVTALRM", "virtual timer expired"}, -- {27, "SIGPROF", "profiling timer expired"}, -- {28, "SIGWINCH", "window size changes"}, -- {29, "SIGINFO", "information request"}, -- {30, "SIGUSR1", "user defined signal 1"}, -- {31, "SIGUSR2", "user defined signal 2"}, --} -diff --git a/vendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go b/vendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go -index cbd8ed1..e36f517 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go -@@ -1,6 +1,7 @@ - // mkerrors.sh -m64 - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build arm64 && darwin - // +build arm64,darwin - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. -@@ -11,1475 +12,1582 @@ package unix - import "syscall" - - const ( -- AF_APPLETALK = 0x10 -- AF_CCITT = 0xa -- AF_CHAOS = 0x5 -- AF_CNT = 0x15 -- AF_COIP = 0x14 -- AF_DATAKIT = 0x9 -- AF_DECnet = 0xc -- AF_DLI = 0xd -- AF_E164 = 0x1c -- AF_ECMA = 0x8 -- AF_HYLINK = 0xf -- AF_IEEE80211 = 0x25 -- AF_IMPLINK = 0x3 -- AF_INET = 0x2 -- AF_INET6 = 0x1e -- AF_IPX = 0x17 -- AF_ISDN = 0x1c -- AF_ISO = 0x7 -- AF_LAT = 0xe -- AF_LINK = 0x12 -- AF_LOCAL = 0x1 -- AF_MAX = 0x28 -- AF_NATM = 0x1f -- AF_NDRV = 0x1b -- AF_NETBIOS = 0x21 -- AF_NS = 0x6 -- AF_OSI = 0x7 -- AF_PPP = 0x22 -- AF_PUP = 0x4 -- AF_RESERVED_36 = 0x24 -- AF_ROUTE = 0x11 -- AF_SIP = 0x18 -- AF_SNA = 0xb -- AF_SYSTEM = 0x20 -- AF_UNIX = 0x1 -- AF_UNSPEC = 0x0 -- AF_UTUN = 0x26 -- ALTWERASE = 0x200 -- ATTR_BIT_MAP_COUNT = 0x5 -- ATTR_CMN_ACCESSMASK = 0x20000 -- ATTR_CMN_ACCTIME = 0x1000 -- ATTR_CMN_ADDEDTIME = 0x10000000 -- ATTR_CMN_BKUPTIME = 0x2000 -- ATTR_CMN_CHGTIME = 0x800 -- ATTR_CMN_CRTIME = 0x200 -- ATTR_CMN_DATA_PROTECT_FLAGS = 0x40000000 -- ATTR_CMN_DEVID = 0x2 -- ATTR_CMN_DOCUMENT_ID = 0x100000 -- ATTR_CMN_ERROR = 0x20000000 -- ATTR_CMN_EXTENDED_SECURITY = 0x400000 -- ATTR_CMN_FILEID = 0x2000000 -- ATTR_CMN_FLAGS = 0x40000 -- ATTR_CMN_FNDRINFO = 0x4000 -- ATTR_CMN_FSID = 0x4 -- ATTR_CMN_FULLPATH = 0x8000000 -- ATTR_CMN_GEN_COUNT = 0x80000 -- ATTR_CMN_GRPID = 0x10000 -- ATTR_CMN_GRPUUID = 0x1000000 -- ATTR_CMN_MODTIME = 0x400 -- ATTR_CMN_NAME = 0x1 -- ATTR_CMN_NAMEDATTRCOUNT = 0x80000 -- ATTR_CMN_NAMEDATTRLIST = 0x100000 -- ATTR_CMN_OBJID = 0x20 -- ATTR_CMN_OBJPERMANENTID = 0x40 -- ATTR_CMN_OBJTAG = 0x10 -- ATTR_CMN_OBJTYPE = 0x8 -- ATTR_CMN_OWNERID = 0x8000 -- ATTR_CMN_PARENTID = 0x4000000 -- ATTR_CMN_PAROBJID = 0x80 -- ATTR_CMN_RETURNED_ATTRS = 0x80000000 -- ATTR_CMN_SCRIPT = 0x100 -- ATTR_CMN_SETMASK = 0x41c7ff00 -- ATTR_CMN_USERACCESS = 0x200000 -- ATTR_CMN_UUID = 0x800000 -- ATTR_CMN_VALIDMASK = 0xffffffff -- ATTR_CMN_VOLSETMASK = 0x6700 -- ATTR_FILE_ALLOCSIZE = 0x4 -- ATTR_FILE_CLUMPSIZE = 0x10 -- ATTR_FILE_DATAALLOCSIZE = 0x400 -- ATTR_FILE_DATAEXTENTS = 0x800 -- ATTR_FILE_DATALENGTH = 0x200 -- ATTR_FILE_DEVTYPE = 0x20 -- ATTR_FILE_FILETYPE = 0x40 -- ATTR_FILE_FORKCOUNT = 0x80 -- ATTR_FILE_FORKLIST = 0x100 -- ATTR_FILE_IOBLOCKSIZE = 0x8 -- ATTR_FILE_LINKCOUNT = 0x1 -- ATTR_FILE_RSRCALLOCSIZE = 0x2000 -- ATTR_FILE_RSRCEXTENTS = 0x4000 -- ATTR_FILE_RSRCLENGTH = 0x1000 -- ATTR_FILE_SETMASK = 0x20 -- ATTR_FILE_TOTALSIZE = 0x2 -- ATTR_FILE_VALIDMASK = 0x37ff -- ATTR_VOL_ALLOCATIONCLUMP = 0x40 -- ATTR_VOL_ATTRIBUTES = 0x40000000 -- ATTR_VOL_CAPABILITIES = 0x20000 -- ATTR_VOL_DIRCOUNT = 0x400 -- ATTR_VOL_ENCODINGSUSED = 0x10000 -- ATTR_VOL_FILECOUNT = 0x200 -- ATTR_VOL_FSTYPE = 0x1 -- ATTR_VOL_INFO = 0x80000000 -- ATTR_VOL_IOBLOCKSIZE = 0x80 -- ATTR_VOL_MAXOBJCOUNT = 0x800 -- ATTR_VOL_MINALLOCATION = 0x20 -- ATTR_VOL_MOUNTEDDEVICE = 0x8000 -- ATTR_VOL_MOUNTFLAGS = 0x4000 -- ATTR_VOL_MOUNTPOINT = 0x1000 -- ATTR_VOL_NAME = 0x2000 -- ATTR_VOL_OBJCOUNT = 0x100 -- ATTR_VOL_QUOTA_SIZE = 0x10000000 -- ATTR_VOL_RESERVED_SIZE = 0x20000000 -- ATTR_VOL_SETMASK = 0x80002000 -- ATTR_VOL_SIGNATURE = 0x2 -- ATTR_VOL_SIZE = 0x4 -- ATTR_VOL_SPACEAVAIL = 0x10 -- ATTR_VOL_SPACEFREE = 0x8 -- ATTR_VOL_UUID = 0x40000 -- ATTR_VOL_VALIDMASK = 0xf007ffff -- B0 = 0x0 -- B110 = 0x6e -- B115200 = 0x1c200 -- B1200 = 0x4b0 -- B134 = 0x86 -- B14400 = 0x3840 -- B150 = 0x96 -- B1800 = 0x708 -- B19200 = 0x4b00 -- B200 = 0xc8 -- B230400 = 0x38400 -- B2400 = 0x960 -- B28800 = 0x7080 -- B300 = 0x12c -- B38400 = 0x9600 -- B4800 = 0x12c0 -- B50 = 0x32 -- B57600 = 0xe100 -- B600 = 0x258 -- B7200 = 0x1c20 -- B75 = 0x4b -- B76800 = 0x12c00 -- B9600 = 0x2580 -- BIOCFLUSH = 0x20004268 -- BIOCGBLEN = 0x40044266 -- BIOCGDLT = 0x4004426a -- BIOCGDLTLIST = 0xc00c4279 -- BIOCGETIF = 0x4020426b -- BIOCGHDRCMPLT = 0x40044274 -- BIOCGRSIG = 0x40044272 -- BIOCGRTIMEOUT = 0x4010426e -- BIOCGSEESENT = 0x40044276 -- BIOCGSTATS = 0x4008426f -- BIOCIMMEDIATE = 0x80044270 -- BIOCPROMISC = 0x20004269 -- BIOCSBLEN = 0xc0044266 -- BIOCSDLT = 0x80044278 -- BIOCSETF = 0x80104267 -- BIOCSETFNR = 0x8010427e -- BIOCSETIF = 0x8020426c -- BIOCSHDRCMPLT = 0x80044275 -- BIOCSRSIG = 0x80044273 -- BIOCSRTIMEOUT = 0x8010426d -- BIOCSSEESENT = 0x80044277 -- BIOCVERSION = 0x40044271 -- BPF_A = 0x10 -- BPF_ABS = 0x20 -- BPF_ADD = 0x0 -- BPF_ALIGNMENT = 0x4 -- BPF_ALU = 0x4 -- BPF_AND = 0x50 -- BPF_B = 0x10 -- BPF_DIV = 0x30 -- BPF_H = 0x8 -- BPF_IMM = 0x0 -- BPF_IND = 0x40 -- BPF_JA = 0x0 -- BPF_JEQ = 0x10 -- BPF_JGE = 0x30 -- BPF_JGT = 0x20 -- BPF_JMP = 0x5 -- BPF_JSET = 0x40 -- BPF_K = 0x0 -- BPF_LD = 0x0 -- BPF_LDX = 0x1 -- BPF_LEN = 0x80 -- BPF_LSH = 0x60 -- BPF_MAJOR_VERSION = 0x1 -- BPF_MAXBUFSIZE = 0x80000 -- BPF_MAXINSNS = 0x200 -- BPF_MEM = 0x60 -- BPF_MEMWORDS = 0x10 -- BPF_MINBUFSIZE = 0x20 -- BPF_MINOR_VERSION = 0x1 -- BPF_MISC = 0x7 -- BPF_MSH = 0xa0 -- BPF_MUL = 0x20 -- BPF_NEG = 0x80 -- BPF_OR = 0x40 -- BPF_RELEASE = 0x30bb6 -- BPF_RET = 0x6 -- BPF_RSH = 0x70 -- BPF_ST = 0x2 -- BPF_STX = 0x3 -- BPF_SUB = 0x10 -- BPF_TAX = 0x0 -- BPF_TXA = 0x80 -- BPF_W = 0x0 -- BPF_X = 0x8 -- BRKINT = 0x2 -- BS0 = 0x0 -- BS1 = 0x8000 -- BSDLY = 0x8000 -- CFLUSH = 0xf -- CLOCAL = 0x8000 -- CLOCK_MONOTONIC = 0x6 -- CLOCK_MONOTONIC_RAW = 0x4 -- CLOCK_MONOTONIC_RAW_APPROX = 0x5 -- CLOCK_PROCESS_CPUTIME_ID = 0xc -- CLOCK_REALTIME = 0x0 -- CLOCK_THREAD_CPUTIME_ID = 0x10 -- CLOCK_UPTIME_RAW = 0x8 -- CLOCK_UPTIME_RAW_APPROX = 0x9 -- CR0 = 0x0 -- CR1 = 0x1000 -- CR2 = 0x2000 -- CR3 = 0x3000 -- CRDLY = 0x3000 -- CREAD = 0x800 -- CRTSCTS = 0x30000 -- CS5 = 0x0 -- CS6 = 0x100 -- CS7 = 0x200 -- CS8 = 0x300 -- CSIZE = 0x300 -- CSTART = 0x11 -- CSTATUS = 0x14 -- CSTOP = 0x13 -- CSTOPB = 0x400 -- CSUSP = 0x1a -- CTL_HW = 0x6 -- CTL_KERN = 0x1 -- CTL_MAXNAME = 0xc -- CTL_NET = 0x4 -- DLT_A429 = 0xb8 -- DLT_A653_ICM = 0xb9 -- DLT_AIRONET_HEADER = 0x78 -- DLT_AOS = 0xde -- DLT_APPLE_IP_OVER_IEEE1394 = 0x8a -- DLT_ARCNET = 0x7 -- DLT_ARCNET_LINUX = 0x81 -- DLT_ATM_CLIP = 0x13 -- DLT_ATM_RFC1483 = 0xb -- DLT_AURORA = 0x7e -- DLT_AX25 = 0x3 -- DLT_AX25_KISS = 0xca -- DLT_BACNET_MS_TP = 0xa5 -- DLT_BLUETOOTH_HCI_H4 = 0xbb -- DLT_BLUETOOTH_HCI_H4_WITH_PHDR = 0xc9 -- DLT_CAN20B = 0xbe -- DLT_CAN_SOCKETCAN = 0xe3 -- DLT_CHAOS = 0x5 -- DLT_CHDLC = 0x68 -- DLT_CISCO_IOS = 0x76 -- DLT_C_HDLC = 0x68 -- DLT_C_HDLC_WITH_DIR = 0xcd -- DLT_DBUS = 0xe7 -- DLT_DECT = 0xdd -- DLT_DOCSIS = 0x8f -- DLT_DVB_CI = 0xeb -- DLT_ECONET = 0x73 -- DLT_EN10MB = 0x1 -- DLT_EN3MB = 0x2 -- DLT_ENC = 0x6d -- DLT_ERF = 0xc5 -- DLT_ERF_ETH = 0xaf -- DLT_ERF_POS = 0xb0 -- DLT_FC_2 = 0xe0 -- DLT_FC_2_WITH_FRAME_DELIMS = 0xe1 -- DLT_FDDI = 0xa -- DLT_FLEXRAY = 0xd2 -- DLT_FRELAY = 0x6b -- DLT_FRELAY_WITH_DIR = 0xce -- DLT_GCOM_SERIAL = 0xad -- DLT_GCOM_T1E1 = 0xac -- DLT_GPF_F = 0xab -- DLT_GPF_T = 0xaa -- DLT_GPRS_LLC = 0xa9 -- DLT_GSMTAP_ABIS = 0xda -- DLT_GSMTAP_UM = 0xd9 -- DLT_HHDLC = 0x79 -- DLT_IBM_SN = 0x92 -- DLT_IBM_SP = 0x91 -- DLT_IEEE802 = 0x6 -- DLT_IEEE802_11 = 0x69 -- DLT_IEEE802_11_RADIO = 0x7f -- DLT_IEEE802_11_RADIO_AVS = 0xa3 -- DLT_IEEE802_15_4 = 0xc3 -- DLT_IEEE802_15_4_LINUX = 0xbf -- DLT_IEEE802_15_4_NOFCS = 0xe6 -- DLT_IEEE802_15_4_NONASK_PHY = 0xd7 -- DLT_IEEE802_16_MAC_CPS = 0xbc -- DLT_IEEE802_16_MAC_CPS_RADIO = 0xc1 -- DLT_IPFILTER = 0x74 -- DLT_IPMB = 0xc7 -- DLT_IPMB_LINUX = 0xd1 -- DLT_IPNET = 0xe2 -- DLT_IPOIB = 0xf2 -- DLT_IPV4 = 0xe4 -- DLT_IPV6 = 0xe5 -- DLT_IP_OVER_FC = 0x7a -- DLT_JUNIPER_ATM1 = 0x89 -- DLT_JUNIPER_ATM2 = 0x87 -- DLT_JUNIPER_ATM_CEMIC = 0xee -- DLT_JUNIPER_CHDLC = 0xb5 -- DLT_JUNIPER_ES = 0x84 -- DLT_JUNIPER_ETHER = 0xb2 -- DLT_JUNIPER_FIBRECHANNEL = 0xea -- DLT_JUNIPER_FRELAY = 0xb4 -- DLT_JUNIPER_GGSN = 0x85 -- DLT_JUNIPER_ISM = 0xc2 -- DLT_JUNIPER_MFR = 0x86 -- DLT_JUNIPER_MLFR = 0x83 -- DLT_JUNIPER_MLPPP = 0x82 -- DLT_JUNIPER_MONITOR = 0xa4 -- DLT_JUNIPER_PIC_PEER = 0xae -- DLT_JUNIPER_PPP = 0xb3 -- DLT_JUNIPER_PPPOE = 0xa7 -- DLT_JUNIPER_PPPOE_ATM = 0xa8 -- DLT_JUNIPER_SERVICES = 0x88 -- DLT_JUNIPER_SRX_E2E = 0xe9 -- DLT_JUNIPER_ST = 0xc8 -- DLT_JUNIPER_VP = 0xb7 -- DLT_JUNIPER_VS = 0xe8 -- DLT_LAPB_WITH_DIR = 0xcf -- DLT_LAPD = 0xcb -- DLT_LIN = 0xd4 -- DLT_LINUX_EVDEV = 0xd8 -- DLT_LINUX_IRDA = 0x90 -- DLT_LINUX_LAPD = 0xb1 -- DLT_LINUX_PPP_WITHDIRECTION = 0xa6 -- DLT_LINUX_SLL = 0x71 -- DLT_LOOP = 0x6c -- DLT_LTALK = 0x72 -- DLT_MATCHING_MAX = 0xf5 -- DLT_MATCHING_MIN = 0x68 -- DLT_MFR = 0xb6 -- DLT_MOST = 0xd3 -- DLT_MPEG_2_TS = 0xf3 -- DLT_MPLS = 0xdb -- DLT_MTP2 = 0x8c -- DLT_MTP2_WITH_PHDR = 0x8b -- DLT_MTP3 = 0x8d -- DLT_MUX27010 = 0xec -- DLT_NETANALYZER = 0xf0 -- DLT_NETANALYZER_TRANSPARENT = 0xf1 -- DLT_NFC_LLCP = 0xf5 -- DLT_NFLOG = 0xef -- DLT_NG40 = 0xf4 -- DLT_NULL = 0x0 -- DLT_PCI_EXP = 0x7d -- DLT_PFLOG = 0x75 -- DLT_PFSYNC = 0x12 -- DLT_PPI = 0xc0 -- DLT_PPP = 0x9 -- DLT_PPP_BSDOS = 0x10 -- DLT_PPP_ETHER = 0x33 -- DLT_PPP_PPPD = 0xa6 -- DLT_PPP_SERIAL = 0x32 -- DLT_PPP_WITH_DIR = 0xcc -- DLT_PPP_WITH_DIRECTION = 0xa6 -- DLT_PRISM_HEADER = 0x77 -- DLT_PRONET = 0x4 -- DLT_RAIF1 = 0xc6 -- DLT_RAW = 0xc -- DLT_RIO = 0x7c -- DLT_SCCP = 0x8e -- DLT_SITA = 0xc4 -- DLT_SLIP = 0x8 -- DLT_SLIP_BSDOS = 0xf -- DLT_STANAG_5066_D_PDU = 0xed -- DLT_SUNATM = 0x7b -- DLT_SYMANTEC_FIREWALL = 0x63 -- DLT_TZSP = 0x80 -- DLT_USB = 0xba -- DLT_USB_LINUX = 0xbd -- DLT_USB_LINUX_MMAPPED = 0xdc -- DLT_USER0 = 0x93 -- DLT_USER1 = 0x94 -- DLT_USER10 = 0x9d -- DLT_USER11 = 0x9e -- DLT_USER12 = 0x9f -- DLT_USER13 = 0xa0 -- DLT_USER14 = 0xa1 -- DLT_USER15 = 0xa2 -- DLT_USER2 = 0x95 -- DLT_USER3 = 0x96 -- DLT_USER4 = 0x97 -- DLT_USER5 = 0x98 -- DLT_USER6 = 0x99 -- DLT_USER7 = 0x9a -- DLT_USER8 = 0x9b -- DLT_USER9 = 0x9c -- DLT_WIHART = 0xdf -- DLT_X2E_SERIAL = 0xd5 -- DLT_X2E_XORAYA = 0xd6 -- DT_BLK = 0x6 -- DT_CHR = 0x2 -- DT_DIR = 0x4 -- DT_FIFO = 0x1 -- DT_LNK = 0xa -- DT_REG = 0x8 -- DT_SOCK = 0xc -- DT_UNKNOWN = 0x0 -- DT_WHT = 0xe -- ECHO = 0x8 -- ECHOCTL = 0x40 -- ECHOE = 0x2 -- ECHOK = 0x4 -- ECHOKE = 0x1 -- ECHONL = 0x10 -- ECHOPRT = 0x20 -- EVFILT_AIO = -0x3 -- EVFILT_EXCEPT = -0xf -- EVFILT_FS = -0x9 -- EVFILT_MACHPORT = -0x8 -- EVFILT_PROC = -0x5 -- EVFILT_READ = -0x1 -- EVFILT_SIGNAL = -0x6 -- EVFILT_SYSCOUNT = 0xf -- EVFILT_THREADMARKER = 0xf -- EVFILT_TIMER = -0x7 -- EVFILT_USER = -0xa -- EVFILT_VM = -0xc -- EVFILT_VNODE = -0x4 -- EVFILT_WRITE = -0x2 -- EV_ADD = 0x1 -- EV_CLEAR = 0x20 -- EV_DELETE = 0x2 -- EV_DISABLE = 0x8 -- EV_DISPATCH = 0x80 -- EV_DISPATCH2 = 0x180 -- EV_ENABLE = 0x4 -- EV_EOF = 0x8000 -- EV_ERROR = 0x4000 -- EV_FLAG0 = 0x1000 -- EV_FLAG1 = 0x2000 -- EV_ONESHOT = 0x10 -- EV_OOBAND = 0x2000 -- EV_POLL = 0x1000 -- EV_RECEIPT = 0x40 -- EV_SYSFLAGS = 0xf000 -- EV_UDATA_SPECIFIC = 0x100 -- EV_VANISHED = 0x200 -- EXTA = 0x4b00 -- EXTB = 0x9600 -- EXTPROC = 0x800 -- FD_CLOEXEC = 0x1 -- FD_SETSIZE = 0x400 -- FF0 = 0x0 -- FF1 = 0x4000 -- FFDLY = 0x4000 -- FLUSHO = 0x800000 -- FSOPT_ATTR_CMN_EXTENDED = 0x20 -- FSOPT_NOFOLLOW = 0x1 -- FSOPT_NOINMEMUPDATE = 0x2 -- FSOPT_PACK_INVAL_ATTRS = 0x8 -- FSOPT_REPORT_FULLSIZE = 0x4 -- F_ADDFILESIGS = 0x3d -- F_ADDFILESIGS_FOR_DYLD_SIM = 0x53 -- F_ADDFILESIGS_RETURN = 0x61 -- F_ADDSIGS = 0x3b -- F_ALLOCATEALL = 0x4 -- F_ALLOCATECONTIG = 0x2 -- F_BARRIERFSYNC = 0x55 -- F_CHECK_LV = 0x62 -- F_CHKCLEAN = 0x29 -- F_DUPFD = 0x0 -- F_DUPFD_CLOEXEC = 0x43 -- F_FINDSIGS = 0x4e -- F_FLUSH_DATA = 0x28 -- F_FREEZE_FS = 0x35 -- F_FULLFSYNC = 0x33 -- F_GETCODEDIR = 0x48 -- F_GETFD = 0x1 -- F_GETFL = 0x3 -- F_GETLK = 0x7 -- F_GETLKPID = 0x42 -- F_GETNOSIGPIPE = 0x4a -- F_GETOWN = 0x5 -- F_GETPATH = 0x32 -- F_GETPATH_MTMINFO = 0x47 -- F_GETPROTECTIONCLASS = 0x3f -- F_GETPROTECTIONLEVEL = 0x4d -- F_GLOBAL_NOCACHE = 0x37 -- F_LOG2PHYS = 0x31 -- F_LOG2PHYS_EXT = 0x41 -- F_NOCACHE = 0x30 -- F_NODIRECT = 0x3e -- F_OK = 0x0 -- F_PATHPKG_CHECK = 0x34 -- F_PEOFPOSMODE = 0x3 -- F_PREALLOCATE = 0x2a -- F_PUNCHHOLE = 0x63 -- F_RDADVISE = 0x2c -- F_RDAHEAD = 0x2d -- F_RDLCK = 0x1 -- F_SETBACKINGSTORE = 0x46 -- F_SETFD = 0x2 -- F_SETFL = 0x4 -- F_SETLK = 0x8 -- F_SETLKW = 0x9 -- F_SETLKWTIMEOUT = 0xa -- F_SETNOSIGPIPE = 0x49 -- F_SETOWN = 0x6 -- F_SETPROTECTIONCLASS = 0x40 -- F_SETSIZE = 0x2b -- F_SINGLE_WRITER = 0x4c -- F_THAW_FS = 0x36 -- F_TRANSCODEKEY = 0x4b -- F_TRIM_ACTIVE_FILE = 0x64 -- F_UNLCK = 0x2 -- F_VOLPOSMODE = 0x4 -- F_WRLCK = 0x3 -- HUPCL = 0x4000 -- HW_MACHINE = 0x1 -- ICANON = 0x100 -- ICMP6_FILTER = 0x12 -- ICRNL = 0x100 -- IEXTEN = 0x400 -- IFF_ALLMULTI = 0x200 -- IFF_ALTPHYS = 0x4000 -- IFF_BROADCAST = 0x2 -- IFF_DEBUG = 0x4 -- IFF_LINK0 = 0x1000 -- IFF_LINK1 = 0x2000 -- IFF_LINK2 = 0x4000 -- IFF_LOOPBACK = 0x8 -- IFF_MULTICAST = 0x8000 -- IFF_NOARP = 0x80 -- IFF_NOTRAILERS = 0x20 -- IFF_OACTIVE = 0x400 -- IFF_POINTOPOINT = 0x10 -- IFF_PROMISC = 0x100 -- IFF_RUNNING = 0x40 -- IFF_SIMPLEX = 0x800 -- IFF_UP = 0x1 -- IFNAMSIZ = 0x10 -- IFT_1822 = 0x2 -- IFT_AAL5 = 0x31 -- IFT_ARCNET = 0x23 -- IFT_ARCNETPLUS = 0x24 -- IFT_ATM = 0x25 -- IFT_BRIDGE = 0xd1 -- IFT_CARP = 0xf8 -- IFT_CELLULAR = 0xff -- IFT_CEPT = 0x13 -- IFT_DS3 = 0x1e -- IFT_ENC = 0xf4 -- IFT_EON = 0x19 -- IFT_ETHER = 0x6 -- IFT_FAITH = 0x38 -- IFT_FDDI = 0xf -- IFT_FRELAY = 0x20 -- IFT_FRELAYDCE = 0x2c -- IFT_GIF = 0x37 -- IFT_HDH1822 = 0x3 -- IFT_HIPPI = 0x2f -- IFT_HSSI = 0x2e -- IFT_HY = 0xe -- IFT_IEEE1394 = 0x90 -- IFT_IEEE8023ADLAG = 0x88 -- IFT_ISDNBASIC = 0x14 -- IFT_ISDNPRIMARY = 0x15 -- IFT_ISO88022LLC = 0x29 -- IFT_ISO88023 = 0x7 -- IFT_ISO88024 = 0x8 -- IFT_ISO88025 = 0x9 -- IFT_ISO88026 = 0xa -- IFT_L2VLAN = 0x87 -- IFT_LAPB = 0x10 -- IFT_LOCALTALK = 0x2a -- IFT_LOOP = 0x18 -- IFT_MIOX25 = 0x26 -- IFT_MODEM = 0x30 -- IFT_NSIP = 0x1b -- IFT_OTHER = 0x1 -- IFT_P10 = 0xc -- IFT_P80 = 0xd -- IFT_PARA = 0x22 -- IFT_PDP = 0xff -- IFT_PFLOG = 0xf5 -- IFT_PFSYNC = 0xf6 -- IFT_PKTAP = 0xfe -- IFT_PPP = 0x17 -- IFT_PROPMUX = 0x36 -- IFT_PROPVIRTUAL = 0x35 -- IFT_PTPSERIAL = 0x16 -- IFT_RS232 = 0x21 -- IFT_SDLC = 0x11 -- IFT_SIP = 0x1f -- IFT_SLIP = 0x1c -- IFT_SMDSDXI = 0x2b -- IFT_SMDSICIP = 0x34 -- IFT_SONET = 0x27 -- IFT_SONETPATH = 0x32 -- IFT_SONETVT = 0x33 -- IFT_STARLAN = 0xb -- IFT_STF = 0x39 -- IFT_T1 = 0x12 -- IFT_ULTRA = 0x1d -- IFT_V35 = 0x2d -- IFT_X25 = 0x5 -- IFT_X25DDN = 0x4 -- IFT_X25PLE = 0x28 -- IFT_XETHER = 0x1a -- IGNBRK = 0x1 -- IGNCR = 0x80 -- IGNPAR = 0x4 -- IMAXBEL = 0x2000 -- INLCR = 0x40 -- INPCK = 0x10 -- IN_CLASSA_HOST = 0xffffff -- IN_CLASSA_MAX = 0x80 -- IN_CLASSA_NET = 0xff000000 -- IN_CLASSA_NSHIFT = 0x18 -- IN_CLASSB_HOST = 0xffff -- IN_CLASSB_MAX = 0x10000 -- IN_CLASSB_NET = 0xffff0000 -- IN_CLASSB_NSHIFT = 0x10 -- IN_CLASSC_HOST = 0xff -- IN_CLASSC_NET = 0xffffff00 -- IN_CLASSC_NSHIFT = 0x8 -- IN_CLASSD_HOST = 0xfffffff -- IN_CLASSD_NET = 0xf0000000 -- IN_CLASSD_NSHIFT = 0x1c -- IN_LINKLOCALNETNUM = 0xa9fe0000 -- IN_LOOPBACKNET = 0x7f -- IPPROTO_3PC = 0x22 -- IPPROTO_ADFS = 0x44 -- IPPROTO_AH = 0x33 -- IPPROTO_AHIP = 0x3d -- IPPROTO_APES = 0x63 -- IPPROTO_ARGUS = 0xd -- IPPROTO_AX25 = 0x5d -- IPPROTO_BHA = 0x31 -- IPPROTO_BLT = 0x1e -- IPPROTO_BRSATMON = 0x4c -- IPPROTO_CFTP = 0x3e -- IPPROTO_CHAOS = 0x10 -- IPPROTO_CMTP = 0x26 -- IPPROTO_CPHB = 0x49 -- IPPROTO_CPNX = 0x48 -- IPPROTO_DDP = 0x25 -- IPPROTO_DGP = 0x56 -- IPPROTO_DIVERT = 0xfe -- IPPROTO_DONE = 0x101 -- IPPROTO_DSTOPTS = 0x3c -- IPPROTO_EGP = 0x8 -- IPPROTO_EMCON = 0xe -- IPPROTO_ENCAP = 0x62 -- IPPROTO_EON = 0x50 -- IPPROTO_ESP = 0x32 -- IPPROTO_ETHERIP = 0x61 -- IPPROTO_FRAGMENT = 0x2c -- IPPROTO_GGP = 0x3 -- IPPROTO_GMTP = 0x64 -- IPPROTO_GRE = 0x2f -- IPPROTO_HELLO = 0x3f -- IPPROTO_HMP = 0x14 -- IPPROTO_HOPOPTS = 0x0 -- IPPROTO_ICMP = 0x1 -- IPPROTO_ICMPV6 = 0x3a -- IPPROTO_IDP = 0x16 -- IPPROTO_IDPR = 0x23 -- IPPROTO_IDRP = 0x2d -- IPPROTO_IGMP = 0x2 -- IPPROTO_IGP = 0x55 -- IPPROTO_IGRP = 0x58 -- IPPROTO_IL = 0x28 -- IPPROTO_INLSP = 0x34 -- IPPROTO_INP = 0x20 -- IPPROTO_IP = 0x0 -- IPPROTO_IPCOMP = 0x6c -- IPPROTO_IPCV = 0x47 -- IPPROTO_IPEIP = 0x5e -- IPPROTO_IPIP = 0x4 -- IPPROTO_IPPC = 0x43 -- IPPROTO_IPV4 = 0x4 -- IPPROTO_IPV6 = 0x29 -- IPPROTO_IRTP = 0x1c -- IPPROTO_KRYPTOLAN = 0x41 -- IPPROTO_LARP = 0x5b -- IPPROTO_LEAF1 = 0x19 -- IPPROTO_LEAF2 = 0x1a -- IPPROTO_MAX = 0x100 -- IPPROTO_MAXID = 0x34 -- IPPROTO_MEAS = 0x13 -- IPPROTO_MHRP = 0x30 -- IPPROTO_MICP = 0x5f -- IPPROTO_MTP = 0x5c -- IPPROTO_MUX = 0x12 -- IPPROTO_ND = 0x4d -- IPPROTO_NHRP = 0x36 -- IPPROTO_NONE = 0x3b -- IPPROTO_NSP = 0x1f -- IPPROTO_NVPII = 0xb -- IPPROTO_OSPFIGP = 0x59 -- IPPROTO_PGM = 0x71 -- IPPROTO_PIGP = 0x9 -- IPPROTO_PIM = 0x67 -- IPPROTO_PRM = 0x15 -- IPPROTO_PUP = 0xc -- IPPROTO_PVP = 0x4b -- IPPROTO_RAW = 0xff -- IPPROTO_RCCMON = 0xa -- IPPROTO_RDP = 0x1b -- IPPROTO_ROUTING = 0x2b -- IPPROTO_RSVP = 0x2e -- IPPROTO_RVD = 0x42 -- IPPROTO_SATEXPAK = 0x40 -- IPPROTO_SATMON = 0x45 -- IPPROTO_SCCSP = 0x60 -- IPPROTO_SCTP = 0x84 -- IPPROTO_SDRP = 0x2a -- IPPROTO_SEP = 0x21 -- IPPROTO_SRPC = 0x5a -- IPPROTO_ST = 0x7 -- IPPROTO_SVMTP = 0x52 -- IPPROTO_SWIPE = 0x35 -- IPPROTO_TCF = 0x57 -- IPPROTO_TCP = 0x6 -- IPPROTO_TP = 0x1d -- IPPROTO_TPXX = 0x27 -- IPPROTO_TRUNK1 = 0x17 -- IPPROTO_TRUNK2 = 0x18 -- IPPROTO_TTP = 0x54 -- IPPROTO_UDP = 0x11 -- IPPROTO_VINES = 0x53 -- IPPROTO_VISA = 0x46 -- IPPROTO_VMTP = 0x51 -- IPPROTO_WBEXPAK = 0x4f -- IPPROTO_WBMON = 0x4e -- IPPROTO_WSN = 0x4a -- IPPROTO_XNET = 0xf -- IPPROTO_XTP = 0x24 -- IPV6_2292DSTOPTS = 0x17 -- IPV6_2292HOPLIMIT = 0x14 -- IPV6_2292HOPOPTS = 0x16 -- IPV6_2292NEXTHOP = 0x15 -- IPV6_2292PKTINFO = 0x13 -- IPV6_2292PKTOPTIONS = 0x19 -- IPV6_2292RTHDR = 0x18 -- IPV6_BINDV6ONLY = 0x1b -- IPV6_BOUND_IF = 0x7d -- IPV6_CHECKSUM = 0x1a -- IPV6_DEFAULT_MULTICAST_HOPS = 0x1 -- IPV6_DEFAULT_MULTICAST_LOOP = 0x1 -- IPV6_DEFHLIM = 0x40 -- IPV6_FAITH = 0x1d -- IPV6_FLOWINFO_MASK = 0xffffff0f -- IPV6_FLOWLABEL_MASK = 0xffff0f00 -- IPV6_FLOW_ECN_MASK = 0x300 -- IPV6_FRAGTTL = 0x3c -- IPV6_FW_ADD = 0x1e -- IPV6_FW_DEL = 0x1f -- IPV6_FW_FLUSH = 0x20 -- IPV6_FW_GET = 0x22 -- IPV6_FW_ZERO = 0x21 -- IPV6_HLIMDEC = 0x1 -- IPV6_IPSEC_POLICY = 0x1c -- IPV6_JOIN_GROUP = 0xc -- IPV6_LEAVE_GROUP = 0xd -- IPV6_MAXHLIM = 0xff -- IPV6_MAXOPTHDR = 0x800 -- IPV6_MAXPACKET = 0xffff -- IPV6_MAX_GROUP_SRC_FILTER = 0x200 -- IPV6_MAX_MEMBERSHIPS = 0xfff -- IPV6_MAX_SOCK_SRC_FILTER = 0x80 -- IPV6_MIN_MEMBERSHIPS = 0x1f -- IPV6_MMTU = 0x500 -- IPV6_MULTICAST_HOPS = 0xa -- IPV6_MULTICAST_IF = 0x9 -- IPV6_MULTICAST_LOOP = 0xb -- IPV6_PORTRANGE = 0xe -- IPV6_PORTRANGE_DEFAULT = 0x0 -- IPV6_PORTRANGE_HIGH = 0x1 -- IPV6_PORTRANGE_LOW = 0x2 -- IPV6_RECVTCLASS = 0x23 -- IPV6_RTHDR_LOOSE = 0x0 -- IPV6_RTHDR_STRICT = 0x1 -- IPV6_RTHDR_TYPE_0 = 0x0 -- IPV6_SOCKOPT_RESERVED1 = 0x3 -- IPV6_TCLASS = 0x24 -- IPV6_UNICAST_HOPS = 0x4 -- IPV6_V6ONLY = 0x1b -- IPV6_VERSION = 0x60 -- IPV6_VERSION_MASK = 0xf0 -- IP_ADD_MEMBERSHIP = 0xc -- IP_ADD_SOURCE_MEMBERSHIP = 0x46 -- IP_BLOCK_SOURCE = 0x48 -- IP_BOUND_IF = 0x19 -- IP_DEFAULT_MULTICAST_LOOP = 0x1 -- IP_DEFAULT_MULTICAST_TTL = 0x1 -- IP_DF = 0x4000 -- IP_DROP_MEMBERSHIP = 0xd -- IP_DROP_SOURCE_MEMBERSHIP = 0x47 -- IP_DUMMYNET_CONFIGURE = 0x3c -- IP_DUMMYNET_DEL = 0x3d -- IP_DUMMYNET_FLUSH = 0x3e -- IP_DUMMYNET_GET = 0x40 -- IP_FAITH = 0x16 -- IP_FW_ADD = 0x28 -- IP_FW_DEL = 0x29 -- IP_FW_FLUSH = 0x2a -- IP_FW_GET = 0x2c -- IP_FW_RESETLOG = 0x2d -- IP_FW_ZERO = 0x2b -- IP_HDRINCL = 0x2 -- IP_IPSEC_POLICY = 0x15 -- IP_MAXPACKET = 0xffff -- IP_MAX_GROUP_SRC_FILTER = 0x200 -- IP_MAX_MEMBERSHIPS = 0xfff -- IP_MAX_SOCK_MUTE_FILTER = 0x80 -- IP_MAX_SOCK_SRC_FILTER = 0x80 -- IP_MF = 0x2000 -- IP_MIN_MEMBERSHIPS = 0x1f -- IP_MSFILTER = 0x4a -- IP_MSS = 0x240 -- IP_MULTICAST_IF = 0x9 -- IP_MULTICAST_IFINDEX = 0x42 -- IP_MULTICAST_LOOP = 0xb -- IP_MULTICAST_TTL = 0xa -- IP_MULTICAST_VIF = 0xe -- IP_NAT__XXX = 0x37 -- IP_OFFMASK = 0x1fff -- IP_OLD_FW_ADD = 0x32 -- IP_OLD_FW_DEL = 0x33 -- IP_OLD_FW_FLUSH = 0x34 -- IP_OLD_FW_GET = 0x36 -- IP_OLD_FW_RESETLOG = 0x38 -- IP_OLD_FW_ZERO = 0x35 -- IP_OPTIONS = 0x1 -- IP_PKTINFO = 0x1a -- IP_PORTRANGE = 0x13 -- IP_PORTRANGE_DEFAULT = 0x0 -- IP_PORTRANGE_HIGH = 0x1 -- IP_PORTRANGE_LOW = 0x2 -- IP_RECVDSTADDR = 0x7 -- IP_RECVIF = 0x14 -- IP_RECVOPTS = 0x5 -- IP_RECVPKTINFO = 0x1a -- IP_RECVRETOPTS = 0x6 -- IP_RECVTOS = 0x1b -- IP_RECVTTL = 0x18 -- IP_RETOPTS = 0x8 -- IP_RF = 0x8000 -- IP_RSVP_OFF = 0x10 -- IP_RSVP_ON = 0xf -- IP_RSVP_VIF_OFF = 0x12 -- IP_RSVP_VIF_ON = 0x11 -- IP_STRIPHDR = 0x17 -- IP_TOS = 0x3 -- IP_TRAFFIC_MGT_BACKGROUND = 0x41 -- IP_TTL = 0x4 -- IP_UNBLOCK_SOURCE = 0x49 -- ISIG = 0x80 -- ISTRIP = 0x20 -- IUTF8 = 0x4000 -- IXANY = 0x800 -- IXOFF = 0x400 -- IXON = 0x200 -- KERN_HOSTNAME = 0xa -- KERN_OSRELEASE = 0x2 -- KERN_OSTYPE = 0x1 -- KERN_VERSION = 0x4 -- LOCK_EX = 0x2 -- LOCK_NB = 0x4 -- LOCK_SH = 0x1 -- LOCK_UN = 0x8 -- MADV_CAN_REUSE = 0x9 -- MADV_DONTNEED = 0x4 -- MADV_FREE = 0x5 -- MADV_FREE_REUSABLE = 0x7 -- MADV_FREE_REUSE = 0x8 -- MADV_NORMAL = 0x0 -- MADV_PAGEOUT = 0xa -- MADV_RANDOM = 0x1 -- MADV_SEQUENTIAL = 0x2 -- MADV_WILLNEED = 0x3 -- MADV_ZERO_WIRED_PAGES = 0x6 -- MAP_ANON = 0x1000 -- MAP_ANONYMOUS = 0x1000 -- MAP_COPY = 0x2 -- MAP_FILE = 0x0 -- MAP_FIXED = 0x10 -- MAP_HASSEMAPHORE = 0x200 -- MAP_JIT = 0x800 -- MAP_NOCACHE = 0x400 -- MAP_NOEXTEND = 0x100 -- MAP_NORESERVE = 0x40 -- MAP_PRIVATE = 0x2 -- MAP_RENAME = 0x20 -- MAP_RESERVED0080 = 0x80 -- MAP_RESILIENT_CODESIGN = 0x2000 -- MAP_RESILIENT_MEDIA = 0x4000 -- MAP_SHARED = 0x1 -- MCL_CURRENT = 0x1 -- MCL_FUTURE = 0x2 -- MNT_ASYNC = 0x40 -- MNT_AUTOMOUNTED = 0x400000 -- MNT_CMDFLAGS = 0xf0000 -- MNT_CPROTECT = 0x80 -- MNT_DEFWRITE = 0x2000000 -- MNT_DONTBROWSE = 0x100000 -- MNT_DOVOLFS = 0x8000 -- MNT_DWAIT = 0x4 -- MNT_EXPORTED = 0x100 -- MNT_FORCE = 0x80000 -- MNT_IGNORE_OWNERSHIP = 0x200000 -- MNT_JOURNALED = 0x800000 -- MNT_LOCAL = 0x1000 -- MNT_MULTILABEL = 0x4000000 -- MNT_NOATIME = 0x10000000 -- MNT_NOBLOCK = 0x20000 -- MNT_NODEV = 0x10 -- MNT_NOEXEC = 0x4 -- MNT_NOSUID = 0x8 -- MNT_NOUSERXATTR = 0x1000000 -- MNT_NOWAIT = 0x2 -- MNT_QUARANTINE = 0x400 -- MNT_QUOTA = 0x2000 -- MNT_RDONLY = 0x1 -- MNT_RELOAD = 0x40000 -- MNT_ROOTFS = 0x4000 -- MNT_SYNCHRONOUS = 0x2 -- MNT_UNION = 0x20 -- MNT_UNKNOWNPERMISSIONS = 0x200000 -- MNT_UPDATE = 0x10000 -- MNT_VISFLAGMASK = 0x17f0f5ff -- MNT_WAIT = 0x1 -- MSG_CTRUNC = 0x20 -- MSG_DONTROUTE = 0x4 -- MSG_DONTWAIT = 0x80 -- MSG_EOF = 0x100 -- MSG_EOR = 0x8 -- MSG_FLUSH = 0x400 -- MSG_HAVEMORE = 0x2000 -- MSG_HOLD = 0x800 -- MSG_NEEDSA = 0x10000 -- MSG_OOB = 0x1 -- MSG_PEEK = 0x2 -- MSG_RCVMORE = 0x4000 -- MSG_SEND = 0x1000 -- MSG_TRUNC = 0x10 -- MSG_WAITALL = 0x40 -- MSG_WAITSTREAM = 0x200 -- MS_ASYNC = 0x1 -- MS_DEACTIVATE = 0x8 -- MS_INVALIDATE = 0x2 -- MS_KILLPAGES = 0x4 -- MS_SYNC = 0x10 -- NAME_MAX = 0xff -- NET_RT_DUMP = 0x1 -- NET_RT_DUMP2 = 0x7 -- NET_RT_FLAGS = 0x2 -- NET_RT_IFLIST = 0x3 -- NET_RT_IFLIST2 = 0x6 -- NET_RT_MAXID = 0xa -- NET_RT_STAT = 0x4 -- NET_RT_TRASH = 0x5 -- NFDBITS = 0x20 -- NL0 = 0x0 -- NL1 = 0x100 -- NL2 = 0x200 -- NL3 = 0x300 -- NLDLY = 0x300 -- NOFLSH = 0x80000000 -- NOKERNINFO = 0x2000000 -- NOTE_ABSOLUTE = 0x8 -- NOTE_ATTRIB = 0x8 -- NOTE_BACKGROUND = 0x40 -- NOTE_CHILD = 0x4 -- NOTE_CRITICAL = 0x20 -- NOTE_DELETE = 0x1 -- NOTE_EXEC = 0x20000000 -- NOTE_EXIT = 0x80000000 -- NOTE_EXITSTATUS = 0x4000000 -- NOTE_EXIT_CSERROR = 0x40000 -- NOTE_EXIT_DECRYPTFAIL = 0x10000 -- NOTE_EXIT_DETAIL = 0x2000000 -- NOTE_EXIT_DETAIL_MASK = 0x70000 -- NOTE_EXIT_MEMORY = 0x20000 -- NOTE_EXIT_REPARENTED = 0x80000 -- NOTE_EXTEND = 0x4 -- NOTE_FFAND = 0x40000000 -- NOTE_FFCOPY = 0xc0000000 -- NOTE_FFCTRLMASK = 0xc0000000 -- NOTE_FFLAGSMASK = 0xffffff -- NOTE_FFNOP = 0x0 -- NOTE_FFOR = 0x80000000 -- NOTE_FORK = 0x40000000 -- NOTE_FUNLOCK = 0x100 -- NOTE_LEEWAY = 0x10 -- NOTE_LINK = 0x10 -- NOTE_LOWAT = 0x1 -- NOTE_MACH_CONTINUOUS_TIME = 0x80 -- NOTE_NONE = 0x80 -- NOTE_NSECONDS = 0x4 -- NOTE_OOB = 0x2 -- NOTE_PCTRLMASK = -0x100000 -- NOTE_PDATAMASK = 0xfffff -- NOTE_REAP = 0x10000000 -- NOTE_RENAME = 0x20 -- NOTE_REVOKE = 0x40 -- NOTE_SECONDS = 0x1 -- NOTE_SIGNAL = 0x8000000 -- NOTE_TRACK = 0x1 -- NOTE_TRACKERR = 0x2 -- NOTE_TRIGGER = 0x1000000 -- NOTE_USECONDS = 0x2 -- NOTE_VM_ERROR = 0x10000000 -- NOTE_VM_PRESSURE = 0x80000000 -- NOTE_VM_PRESSURE_SUDDEN_TERMINATE = 0x20000000 -- NOTE_VM_PRESSURE_TERMINATE = 0x40000000 -- NOTE_WRITE = 0x2 -- OCRNL = 0x10 -- OFDEL = 0x20000 -- OFILL = 0x80 -- ONLCR = 0x2 -- ONLRET = 0x40 -- ONOCR = 0x20 -- ONOEOT = 0x8 -- OPOST = 0x1 -- OXTABS = 0x4 -- O_ACCMODE = 0x3 -- O_ALERT = 0x20000000 -- O_APPEND = 0x8 -- O_ASYNC = 0x40 -- O_CLOEXEC = 0x1000000 -- O_CREAT = 0x200 -- O_DIRECTORY = 0x100000 -- O_DP_GETRAWENCRYPTED = 0x1 -- O_DP_GETRAWUNENCRYPTED = 0x2 -- O_DSYNC = 0x400000 -- O_EVTONLY = 0x8000 -- O_EXCL = 0x800 -- O_EXLOCK = 0x20 -- O_FSYNC = 0x80 -- O_NDELAY = 0x4 -- O_NOCTTY = 0x20000 -- O_NOFOLLOW = 0x100 -- O_NONBLOCK = 0x4 -- O_POPUP = 0x80000000 -- O_RDONLY = 0x0 -- O_RDWR = 0x2 -- O_SHLOCK = 0x10 -- O_SYMLINK = 0x200000 -- O_SYNC = 0x80 -- O_TRUNC = 0x400 -- O_WRONLY = 0x1 -- PARENB = 0x1000 -- PARMRK = 0x8 -- PARODD = 0x2000 -- PENDIN = 0x20000000 -- PRIO_PGRP = 0x1 -- PRIO_PROCESS = 0x0 -- PRIO_USER = 0x2 -- PROT_EXEC = 0x4 -- PROT_NONE = 0x0 -- PROT_READ = 0x1 -- PROT_WRITE = 0x2 -- PT_ATTACH = 0xa -- PT_ATTACHEXC = 0xe -- PT_CONTINUE = 0x7 -- PT_DENY_ATTACH = 0x1f -- PT_DETACH = 0xb -- PT_FIRSTMACH = 0x20 -- PT_FORCEQUOTA = 0x1e -- PT_KILL = 0x8 -- PT_READ_D = 0x2 -- PT_READ_I = 0x1 -- PT_READ_U = 0x3 -- PT_SIGEXC = 0xc -- PT_STEP = 0x9 -- PT_THUPDATE = 0xd -- PT_TRACE_ME = 0x0 -- PT_WRITE_D = 0x5 -- PT_WRITE_I = 0x4 -- PT_WRITE_U = 0x6 -- RLIMIT_AS = 0x5 -- RLIMIT_CORE = 0x4 -- RLIMIT_CPU = 0x0 -- RLIMIT_CPU_USAGE_MONITOR = 0x2 -- RLIMIT_DATA = 0x2 -- RLIMIT_FSIZE = 0x1 -- RLIMIT_MEMLOCK = 0x6 -- RLIMIT_NOFILE = 0x8 -- RLIMIT_NPROC = 0x7 -- RLIMIT_RSS = 0x5 -- RLIMIT_STACK = 0x3 -- RLIM_INFINITY = 0x7fffffffffffffff -- RTAX_AUTHOR = 0x6 -- RTAX_BRD = 0x7 -- RTAX_DST = 0x0 -- RTAX_GATEWAY = 0x1 -- RTAX_GENMASK = 0x3 -- RTAX_IFA = 0x5 -- RTAX_IFP = 0x4 -- RTAX_MAX = 0x8 -- RTAX_NETMASK = 0x2 -- RTA_AUTHOR = 0x40 -- RTA_BRD = 0x80 -- RTA_DST = 0x1 -- RTA_GATEWAY = 0x2 -- RTA_GENMASK = 0x8 -- RTA_IFA = 0x20 -- RTA_IFP = 0x10 -- RTA_NETMASK = 0x4 -- RTF_BLACKHOLE = 0x1000 -- RTF_BROADCAST = 0x400000 -- RTF_CLONING = 0x100 -- RTF_CONDEMNED = 0x2000000 -- RTF_DELCLONE = 0x80 -- RTF_DONE = 0x40 -- RTF_DYNAMIC = 0x10 -- RTF_GATEWAY = 0x2 -- RTF_HOST = 0x4 -- RTF_IFREF = 0x4000000 -- RTF_IFSCOPE = 0x1000000 -- RTF_LLINFO = 0x400 -- RTF_LOCAL = 0x200000 -- RTF_MODIFIED = 0x20 -- RTF_MULTICAST = 0x800000 -- RTF_NOIFREF = 0x2000 -- RTF_PINNED = 0x100000 -- RTF_PRCLONING = 0x10000 -- RTF_PROTO1 = 0x8000 -- RTF_PROTO2 = 0x4000 -- RTF_PROTO3 = 0x40000 -- RTF_PROXY = 0x8000000 -- RTF_REJECT = 0x8 -- RTF_ROUTER = 0x10000000 -- RTF_STATIC = 0x800 -- RTF_UP = 0x1 -- RTF_WASCLONED = 0x20000 -- RTF_XRESOLVE = 0x200 -- RTM_ADD = 0x1 -- RTM_CHANGE = 0x3 -- RTM_DELADDR = 0xd -- RTM_DELETE = 0x2 -- RTM_DELMADDR = 0x10 -- RTM_GET = 0x4 -- RTM_GET2 = 0x14 -- RTM_IFINFO = 0xe -- RTM_IFINFO2 = 0x12 -- RTM_LOCK = 0x8 -- RTM_LOSING = 0x5 -- RTM_MISS = 0x7 -- RTM_NEWADDR = 0xc -- RTM_NEWMADDR = 0xf -- RTM_NEWMADDR2 = 0x13 -- RTM_OLDADD = 0x9 -- RTM_OLDDEL = 0xa -- RTM_REDIRECT = 0x6 -- RTM_RESOLVE = 0xb -- RTM_RTTUNIT = 0xf4240 -- RTM_VERSION = 0x5 -- RTV_EXPIRE = 0x4 -- RTV_HOPCOUNT = 0x2 -- RTV_MTU = 0x1 -- RTV_RPIPE = 0x8 -- RTV_RTT = 0x40 -- RTV_RTTVAR = 0x80 -- RTV_SPIPE = 0x10 -- RTV_SSTHRESH = 0x20 -- RUSAGE_CHILDREN = -0x1 -- RUSAGE_SELF = 0x0 -- SCM_CREDS = 0x3 -- SCM_RIGHTS = 0x1 -- SCM_TIMESTAMP = 0x2 -- SCM_TIMESTAMP_MONOTONIC = 0x4 -- SHUT_RD = 0x0 -- SHUT_RDWR = 0x2 -- SHUT_WR = 0x1 -- SIOCADDMULTI = 0x80206931 -- SIOCAIFADDR = 0x8040691a -- SIOCARPIPLL = 0xc0206928 -- SIOCATMARK = 0x40047307 -- SIOCAUTOADDR = 0xc0206926 -- SIOCAUTONETMASK = 0x80206927 -- SIOCDELMULTI = 0x80206932 -- SIOCDIFADDR = 0x80206919 -- SIOCDIFPHYADDR = 0x80206941 -- SIOCGDRVSPEC = 0xc028697b -- SIOCGETVLAN = 0xc020697f -- SIOCGHIWAT = 0x40047301 -- SIOCGIFADDR = 0xc0206921 -- SIOCGIFALTMTU = 0xc0206948 -- SIOCGIFASYNCMAP = 0xc020697c -- SIOCGIFBOND = 0xc0206947 -- SIOCGIFBRDADDR = 0xc0206923 -- SIOCGIFCAP = 0xc020695b -- SIOCGIFCONF = 0xc00c6924 -- SIOCGIFDEVMTU = 0xc0206944 -- SIOCGIFDSTADDR = 0xc0206922 -- SIOCGIFFLAGS = 0xc0206911 -- SIOCGIFGENERIC = 0xc020693a -- SIOCGIFKPI = 0xc0206987 -- SIOCGIFMAC = 0xc0206982 -- SIOCGIFMEDIA = 0xc02c6938 -- SIOCGIFMETRIC = 0xc0206917 -- SIOCGIFMTU = 0xc0206933 -- SIOCGIFNETMASK = 0xc0206925 -- SIOCGIFPDSTADDR = 0xc0206940 -- SIOCGIFPHYS = 0xc0206935 -- SIOCGIFPSRCADDR = 0xc020693f -- SIOCGIFSTATUS = 0xc331693d -- SIOCGIFVLAN = 0xc020697f -- SIOCGIFWAKEFLAGS = 0xc0206988 -- SIOCGLOWAT = 0x40047303 -- SIOCGPGRP = 0x40047309 -- SIOCIFCREATE = 0xc0206978 -- SIOCIFCREATE2 = 0xc020697a -- SIOCIFDESTROY = 0x80206979 -- SIOCIFGCLONERS = 0xc0106981 -- SIOCRSLVMULTI = 0xc010693b -- SIOCSDRVSPEC = 0x8028697b -- SIOCSETVLAN = 0x8020697e -- SIOCSHIWAT = 0x80047300 -- SIOCSIFADDR = 0x8020690c -- SIOCSIFALTMTU = 0x80206945 -- SIOCSIFASYNCMAP = 0x8020697d -- SIOCSIFBOND = 0x80206946 -- SIOCSIFBRDADDR = 0x80206913 -- SIOCSIFCAP = 0x8020695a -- SIOCSIFDSTADDR = 0x8020690e -- SIOCSIFFLAGS = 0x80206910 -- SIOCSIFGENERIC = 0x80206939 -- SIOCSIFKPI = 0x80206986 -- SIOCSIFLLADDR = 0x8020693c -- SIOCSIFMAC = 0x80206983 -- SIOCSIFMEDIA = 0xc0206937 -- SIOCSIFMETRIC = 0x80206918 -- SIOCSIFMTU = 0x80206934 -- SIOCSIFNETMASK = 0x80206916 -- SIOCSIFPHYADDR = 0x8040693e -- SIOCSIFPHYS = 0x80206936 -- SIOCSIFVLAN = 0x8020697e -- SIOCSLOWAT = 0x80047302 -- SIOCSPGRP = 0x80047308 -- SOCK_DGRAM = 0x2 -- SOCK_MAXADDRLEN = 0xff -- SOCK_RAW = 0x3 -- SOCK_RDM = 0x4 -- SOCK_SEQPACKET = 0x5 -- SOCK_STREAM = 0x1 -- SOL_SOCKET = 0xffff -- SOMAXCONN = 0x80 -- SO_ACCEPTCONN = 0x2 -- SO_BROADCAST = 0x20 -- SO_DEBUG = 0x1 -- SO_DONTROUTE = 0x10 -- SO_DONTTRUNC = 0x2000 -- SO_ERROR = 0x1007 -- SO_KEEPALIVE = 0x8 -- SO_LABEL = 0x1010 -- SO_LINGER = 0x80 -- SO_LINGER_SEC = 0x1080 -- SO_NETSVC_MARKING_LEVEL = 0x1119 -- SO_NET_SERVICE_TYPE = 0x1116 -- SO_NKE = 0x1021 -- SO_NOADDRERR = 0x1023 -- SO_NOSIGPIPE = 0x1022 -- SO_NOTIFYCONFLICT = 0x1026 -- SO_NP_EXTENSIONS = 0x1083 -- SO_NREAD = 0x1020 -- SO_NUMRCVPKT = 0x1112 -- SO_NWRITE = 0x1024 -- SO_OOBINLINE = 0x100 -- SO_PEERLABEL = 0x1011 -- SO_RANDOMPORT = 0x1082 -- SO_RCVBUF = 0x1002 -- SO_RCVLOWAT = 0x1004 -- SO_RCVTIMEO = 0x1006 -- SO_REUSEADDR = 0x4 -- SO_REUSEPORT = 0x200 -- SO_REUSESHAREUID = 0x1025 -- SO_SNDBUF = 0x1001 -- SO_SNDLOWAT = 0x1003 -- SO_SNDTIMEO = 0x1005 -- SO_TIMESTAMP = 0x400 -- SO_TIMESTAMP_MONOTONIC = 0x800 -- SO_TYPE = 0x1008 -- SO_UPCALLCLOSEWAIT = 0x1027 -- SO_USELOOPBACK = 0x40 -- SO_WANTMORE = 0x4000 -- SO_WANTOOBFLAG = 0x8000 -- S_IEXEC = 0x40 -- S_IFBLK = 0x6000 -- S_IFCHR = 0x2000 -- S_IFDIR = 0x4000 -- S_IFIFO = 0x1000 -- S_IFLNK = 0xa000 -- S_IFMT = 0xf000 -- S_IFREG = 0x8000 -- S_IFSOCK = 0xc000 -- S_IFWHT = 0xe000 -- S_IREAD = 0x100 -- S_IRGRP = 0x20 -- S_IROTH = 0x4 -- S_IRUSR = 0x100 -- S_IRWXG = 0x38 -- S_IRWXO = 0x7 -- S_IRWXU = 0x1c0 -- S_ISGID = 0x400 -- S_ISTXT = 0x200 -- S_ISUID = 0x800 -- S_ISVTX = 0x200 -- S_IWGRP = 0x10 -- S_IWOTH = 0x2 -- S_IWRITE = 0x80 -- S_IWUSR = 0x80 -- S_IXGRP = 0x8 -- S_IXOTH = 0x1 -- S_IXUSR = 0x40 -- TAB0 = 0x0 -- TAB1 = 0x400 -- TAB2 = 0x800 -- TAB3 = 0x4 -- TABDLY = 0xc04 -- TCIFLUSH = 0x1 -- TCIOFF = 0x3 -- TCIOFLUSH = 0x3 -- TCION = 0x4 -- TCOFLUSH = 0x2 -- TCOOFF = 0x1 -- TCOON = 0x2 -- TCP_CONNECTIONTIMEOUT = 0x20 -- TCP_CONNECTION_INFO = 0x106 -- TCP_ENABLE_ECN = 0x104 -- TCP_FASTOPEN = 0x105 -- TCP_KEEPALIVE = 0x10 -- TCP_KEEPCNT = 0x102 -- TCP_KEEPINTVL = 0x101 -- TCP_MAXHLEN = 0x3c -- TCP_MAXOLEN = 0x28 -- TCP_MAXSEG = 0x2 -- TCP_MAXWIN = 0xffff -- TCP_MAX_SACK = 0x4 -- TCP_MAX_WINSHIFT = 0xe -- TCP_MINMSS = 0xd8 -- TCP_MSS = 0x200 -- TCP_NODELAY = 0x1 -- TCP_NOOPT = 0x8 -- TCP_NOPUSH = 0x4 -- TCP_NOTSENT_LOWAT = 0x201 -- TCP_RXT_CONNDROPTIME = 0x80 -- TCP_RXT_FINDROP = 0x100 -- TCP_SENDMOREACKS = 0x103 -- TCSAFLUSH = 0x2 -- TIOCCBRK = 0x2000747a -- TIOCCDTR = 0x20007478 -- TIOCCONS = 0x80047462 -- TIOCDCDTIMESTAMP = 0x40107458 -- TIOCDRAIN = 0x2000745e -- TIOCDSIMICROCODE = 0x20007455 -- TIOCEXCL = 0x2000740d -- TIOCEXT = 0x80047460 -- TIOCFLUSH = 0x80047410 -- TIOCGDRAINWAIT = 0x40047456 -- TIOCGETA = 0x40487413 -- TIOCGETD = 0x4004741a -- TIOCGPGRP = 0x40047477 -- TIOCGWINSZ = 0x40087468 -- TIOCIXOFF = 0x20007480 -- TIOCIXON = 0x20007481 -- TIOCMBIC = 0x8004746b -- TIOCMBIS = 0x8004746c -- TIOCMGDTRWAIT = 0x4004745a -- TIOCMGET = 0x4004746a -- TIOCMODG = 0x40047403 -- TIOCMODS = 0x80047404 -- TIOCMSDTRWAIT = 0x8004745b -- TIOCMSET = 0x8004746d -- TIOCM_CAR = 0x40 -- TIOCM_CD = 0x40 -- TIOCM_CTS = 0x20 -- TIOCM_DSR = 0x100 -- TIOCM_DTR = 0x2 -- TIOCM_LE = 0x1 -- TIOCM_RI = 0x80 -- TIOCM_RNG = 0x80 -- TIOCM_RTS = 0x4 -- TIOCM_SR = 0x10 -- TIOCM_ST = 0x8 -- TIOCNOTTY = 0x20007471 -- TIOCNXCL = 0x2000740e -- TIOCOUTQ = 0x40047473 -- TIOCPKT = 0x80047470 -- TIOCPKT_DATA = 0x0 -- TIOCPKT_DOSTOP = 0x20 -- TIOCPKT_FLUSHREAD = 0x1 -- TIOCPKT_FLUSHWRITE = 0x2 -- TIOCPKT_IOCTL = 0x40 -- TIOCPKT_NOSTOP = 0x10 -- TIOCPKT_START = 0x8 -- TIOCPKT_STOP = 0x4 -- TIOCPTYGNAME = 0x40807453 -- TIOCPTYGRANT = 0x20007454 -- TIOCPTYUNLK = 0x20007452 -- TIOCREMOTE = 0x80047469 -- TIOCSBRK = 0x2000747b -- TIOCSCONS = 0x20007463 -- TIOCSCTTY = 0x20007461 -- TIOCSDRAINWAIT = 0x80047457 -- TIOCSDTR = 0x20007479 -- TIOCSETA = 0x80487414 -- TIOCSETAF = 0x80487416 -- TIOCSETAW = 0x80487415 -- TIOCSETD = 0x8004741b -- TIOCSIG = 0x2000745f -- TIOCSPGRP = 0x80047476 -- TIOCSTART = 0x2000746e -- TIOCSTAT = 0x20007465 -- TIOCSTI = 0x80017472 -- TIOCSTOP = 0x2000746f -- TIOCSWINSZ = 0x80087467 -- TIOCTIMESTAMP = 0x40107459 -- TIOCUCNTL = 0x80047466 -- TOSTOP = 0x400000 -- VDISCARD = 0xf -- VDSUSP = 0xb -- VEOF = 0x0 -- VEOL = 0x1 -- VEOL2 = 0x2 -- VERASE = 0x3 -- VINTR = 0x8 -- VKILL = 0x5 -- VLNEXT = 0xe -- VMIN = 0x10 -- VM_LOADAVG = 0x2 -- VM_MACHFACTOR = 0x4 -- VM_MAXID = 0x6 -- VM_METER = 0x1 -- VM_SWAPUSAGE = 0x5 -- VQUIT = 0x9 -- VREPRINT = 0x6 -- VSTART = 0xc -- VSTATUS = 0x12 -- VSTOP = 0xd -- VSUSP = 0xa -- VT0 = 0x0 -- VT1 = 0x10000 -- VTDLY = 0x10000 -- VTIME = 0x11 -- VWERASE = 0x4 -- WCONTINUED = 0x10 -- WCOREFLAG = 0x80 -- WEXITED = 0x4 -- WNOHANG = 0x1 -- WNOWAIT = 0x20 -- WORDSIZE = 0x40 -- WSTOPPED = 0x8 -- WUNTRACED = 0x2 -- XATTR_CREATE = 0x2 -- XATTR_NODEFAULT = 0x10 -- XATTR_NOFOLLOW = 0x1 -- XATTR_NOSECURITY = 0x8 -- XATTR_REPLACE = 0x4 -- XATTR_SHOWCOMPRESSION = 0x20 -+ AF_APPLETALK = 0x10 -+ AF_CCITT = 0xa -+ AF_CHAOS = 0x5 -+ AF_CNT = 0x15 -+ AF_COIP = 0x14 -+ AF_DATAKIT = 0x9 -+ AF_DECnet = 0xc -+ AF_DLI = 0xd -+ AF_E164 = 0x1c -+ AF_ECMA = 0x8 -+ AF_HYLINK = 0xf -+ AF_IEEE80211 = 0x25 -+ AF_IMPLINK = 0x3 -+ AF_INET = 0x2 -+ AF_INET6 = 0x1e -+ AF_IPX = 0x17 -+ AF_ISDN = 0x1c -+ AF_ISO = 0x7 -+ AF_LAT = 0xe -+ AF_LINK = 0x12 -+ AF_LOCAL = 0x1 -+ AF_MAX = 0x29 -+ AF_NATM = 0x1f -+ AF_NDRV = 0x1b -+ AF_NETBIOS = 0x21 -+ AF_NS = 0x6 -+ AF_OSI = 0x7 -+ AF_PPP = 0x22 -+ AF_PUP = 0x4 -+ AF_RESERVED_36 = 0x24 -+ AF_ROUTE = 0x11 -+ AF_SIP = 0x18 -+ AF_SNA = 0xb -+ AF_SYSTEM = 0x20 -+ AF_SYS_CONTROL = 0x2 -+ AF_UNIX = 0x1 -+ AF_UNSPEC = 0x0 -+ AF_UTUN = 0x26 -+ AF_VSOCK = 0x28 -+ ALTWERASE = 0x200 -+ ATTR_BIT_MAP_COUNT = 0x5 -+ ATTR_CMN_ACCESSMASK = 0x20000 -+ ATTR_CMN_ACCTIME = 0x1000 -+ ATTR_CMN_ADDEDTIME = 0x10000000 -+ ATTR_CMN_BKUPTIME = 0x2000 -+ ATTR_CMN_CHGTIME = 0x800 -+ ATTR_CMN_CRTIME = 0x200 -+ ATTR_CMN_DATA_PROTECT_FLAGS = 0x40000000 -+ ATTR_CMN_DEVID = 0x2 -+ ATTR_CMN_DOCUMENT_ID = 0x100000 -+ ATTR_CMN_ERROR = 0x20000000 -+ ATTR_CMN_EXTENDED_SECURITY = 0x400000 -+ ATTR_CMN_FILEID = 0x2000000 -+ ATTR_CMN_FLAGS = 0x40000 -+ ATTR_CMN_FNDRINFO = 0x4000 -+ ATTR_CMN_FSID = 0x4 -+ ATTR_CMN_FULLPATH = 0x8000000 -+ ATTR_CMN_GEN_COUNT = 0x80000 -+ ATTR_CMN_GRPID = 0x10000 -+ ATTR_CMN_GRPUUID = 0x1000000 -+ ATTR_CMN_MODTIME = 0x400 -+ ATTR_CMN_NAME = 0x1 -+ ATTR_CMN_NAMEDATTRCOUNT = 0x80000 -+ ATTR_CMN_NAMEDATTRLIST = 0x100000 -+ ATTR_CMN_OBJID = 0x20 -+ ATTR_CMN_OBJPERMANENTID = 0x40 -+ ATTR_CMN_OBJTAG = 0x10 -+ ATTR_CMN_OBJTYPE = 0x8 -+ ATTR_CMN_OWNERID = 0x8000 -+ ATTR_CMN_PARENTID = 0x4000000 -+ ATTR_CMN_PAROBJID = 0x80 -+ ATTR_CMN_RETURNED_ATTRS = 0x80000000 -+ ATTR_CMN_SCRIPT = 0x100 -+ ATTR_CMN_SETMASK = 0x51c7ff00 -+ ATTR_CMN_USERACCESS = 0x200000 -+ ATTR_CMN_UUID = 0x800000 -+ ATTR_CMN_VALIDMASK = 0xffffffff -+ ATTR_CMN_VOLSETMASK = 0x6700 -+ ATTR_FILE_ALLOCSIZE = 0x4 -+ ATTR_FILE_CLUMPSIZE = 0x10 -+ ATTR_FILE_DATAALLOCSIZE = 0x400 -+ ATTR_FILE_DATAEXTENTS = 0x800 -+ ATTR_FILE_DATALENGTH = 0x200 -+ ATTR_FILE_DEVTYPE = 0x20 -+ ATTR_FILE_FILETYPE = 0x40 -+ ATTR_FILE_FORKCOUNT = 0x80 -+ ATTR_FILE_FORKLIST = 0x100 -+ ATTR_FILE_IOBLOCKSIZE = 0x8 -+ ATTR_FILE_LINKCOUNT = 0x1 -+ ATTR_FILE_RSRCALLOCSIZE = 0x2000 -+ ATTR_FILE_RSRCEXTENTS = 0x4000 -+ ATTR_FILE_RSRCLENGTH = 0x1000 -+ ATTR_FILE_SETMASK = 0x20 -+ ATTR_FILE_TOTALSIZE = 0x2 -+ ATTR_FILE_VALIDMASK = 0x37ff -+ ATTR_VOL_ALLOCATIONCLUMP = 0x40 -+ ATTR_VOL_ATTRIBUTES = 0x40000000 -+ ATTR_VOL_CAPABILITIES = 0x20000 -+ ATTR_VOL_DIRCOUNT = 0x400 -+ ATTR_VOL_ENCODINGSUSED = 0x10000 -+ ATTR_VOL_FILECOUNT = 0x200 -+ ATTR_VOL_FSTYPE = 0x1 -+ ATTR_VOL_INFO = 0x80000000 -+ ATTR_VOL_IOBLOCKSIZE = 0x80 -+ ATTR_VOL_MAXOBJCOUNT = 0x800 -+ ATTR_VOL_MINALLOCATION = 0x20 -+ ATTR_VOL_MOUNTEDDEVICE = 0x8000 -+ ATTR_VOL_MOUNTFLAGS = 0x4000 -+ ATTR_VOL_MOUNTPOINT = 0x1000 -+ ATTR_VOL_NAME = 0x2000 -+ ATTR_VOL_OBJCOUNT = 0x100 -+ ATTR_VOL_QUOTA_SIZE = 0x10000000 -+ ATTR_VOL_RESERVED_SIZE = 0x20000000 -+ ATTR_VOL_SETMASK = 0x80002000 -+ ATTR_VOL_SIGNATURE = 0x2 -+ ATTR_VOL_SIZE = 0x4 -+ ATTR_VOL_SPACEAVAIL = 0x10 -+ ATTR_VOL_SPACEFREE = 0x8 -+ ATTR_VOL_SPACEUSED = 0x800000 -+ ATTR_VOL_UUID = 0x40000 -+ ATTR_VOL_VALIDMASK = 0xf087ffff -+ B0 = 0x0 -+ B110 = 0x6e -+ B115200 = 0x1c200 -+ B1200 = 0x4b0 -+ B134 = 0x86 -+ B14400 = 0x3840 -+ B150 = 0x96 -+ B1800 = 0x708 -+ B19200 = 0x4b00 -+ B200 = 0xc8 -+ B230400 = 0x38400 -+ B2400 = 0x960 -+ B28800 = 0x7080 -+ B300 = 0x12c -+ B38400 = 0x9600 -+ B4800 = 0x12c0 -+ B50 = 0x32 -+ B57600 = 0xe100 -+ B600 = 0x258 -+ B7200 = 0x1c20 -+ B75 = 0x4b -+ B76800 = 0x12c00 -+ B9600 = 0x2580 -+ BIOCFLUSH = 0x20004268 -+ BIOCGBLEN = 0x40044266 -+ BIOCGDLT = 0x4004426a -+ BIOCGDLTLIST = 0xc00c4279 -+ BIOCGETIF = 0x4020426b -+ BIOCGHDRCMPLT = 0x40044274 -+ BIOCGRSIG = 0x40044272 -+ BIOCGRTIMEOUT = 0x4010426e -+ BIOCGSEESENT = 0x40044276 -+ BIOCGSTATS = 0x4008426f -+ BIOCIMMEDIATE = 0x80044270 -+ BIOCPROMISC = 0x20004269 -+ BIOCSBLEN = 0xc0044266 -+ BIOCSDLT = 0x80044278 -+ BIOCSETF = 0x80104267 -+ BIOCSETFNR = 0x8010427e -+ BIOCSETIF = 0x8020426c -+ BIOCSHDRCMPLT = 0x80044275 -+ BIOCSRSIG = 0x80044273 -+ BIOCSRTIMEOUT = 0x8010426d -+ BIOCSSEESENT = 0x80044277 -+ BIOCVERSION = 0x40044271 -+ BPF_A = 0x10 -+ BPF_ABS = 0x20 -+ BPF_ADD = 0x0 -+ BPF_ALIGNMENT = 0x4 -+ BPF_ALU = 0x4 -+ BPF_AND = 0x50 -+ BPF_B = 0x10 -+ BPF_DIV = 0x30 -+ BPF_H = 0x8 -+ BPF_IMM = 0x0 -+ BPF_IND = 0x40 -+ BPF_JA = 0x0 -+ BPF_JEQ = 0x10 -+ BPF_JGE = 0x30 -+ BPF_JGT = 0x20 -+ BPF_JMP = 0x5 -+ BPF_JSET = 0x40 -+ BPF_K = 0x0 -+ BPF_LD = 0x0 -+ BPF_LDX = 0x1 -+ BPF_LEN = 0x80 -+ BPF_LSH = 0x60 -+ BPF_MAJOR_VERSION = 0x1 -+ BPF_MAXBUFSIZE = 0x80000 -+ BPF_MAXINSNS = 0x200 -+ BPF_MEM = 0x60 -+ BPF_MEMWORDS = 0x10 -+ BPF_MINBUFSIZE = 0x20 -+ BPF_MINOR_VERSION = 0x1 -+ BPF_MISC = 0x7 -+ BPF_MSH = 0xa0 -+ BPF_MUL = 0x20 -+ BPF_NEG = 0x80 -+ BPF_OR = 0x40 -+ BPF_RELEASE = 0x30bb6 -+ BPF_RET = 0x6 -+ BPF_RSH = 0x70 -+ BPF_ST = 0x2 -+ BPF_STX = 0x3 -+ BPF_SUB = 0x10 -+ BPF_TAX = 0x0 -+ BPF_TXA = 0x80 -+ BPF_W = 0x0 -+ BPF_X = 0x8 -+ BRKINT = 0x2 -+ BS0 = 0x0 -+ BS1 = 0x8000 -+ BSDLY = 0x8000 -+ CFLUSH = 0xf -+ CLOCAL = 0x8000 -+ CLOCK_MONOTONIC = 0x6 -+ CLOCK_MONOTONIC_RAW = 0x4 -+ CLOCK_MONOTONIC_RAW_APPROX = 0x5 -+ CLOCK_PROCESS_CPUTIME_ID = 0xc -+ CLOCK_REALTIME = 0x0 -+ CLOCK_THREAD_CPUTIME_ID = 0x10 -+ CLOCK_UPTIME_RAW = 0x8 -+ CLOCK_UPTIME_RAW_APPROX = 0x9 -+ CLONE_NOFOLLOW = 0x1 -+ CLONE_NOOWNERCOPY = 0x2 -+ CR0 = 0x0 -+ CR1 = 0x1000 -+ CR2 = 0x2000 -+ CR3 = 0x3000 -+ CRDLY = 0x3000 -+ CREAD = 0x800 -+ CRTSCTS = 0x30000 -+ CS5 = 0x0 -+ CS6 = 0x100 -+ CS7 = 0x200 -+ CS8 = 0x300 -+ CSIZE = 0x300 -+ CSTART = 0x11 -+ CSTATUS = 0x14 -+ CSTOP = 0x13 -+ CSTOPB = 0x400 -+ CSUSP = 0x1a -+ CTLIOCGINFO = 0xc0644e03 -+ CTL_HW = 0x6 -+ CTL_KERN = 0x1 -+ CTL_MAXNAME = 0xc -+ CTL_NET = 0x4 -+ DLT_A429 = 0xb8 -+ DLT_A653_ICM = 0xb9 -+ DLT_AIRONET_HEADER = 0x78 -+ DLT_AOS = 0xde -+ DLT_APPLE_IP_OVER_IEEE1394 = 0x8a -+ DLT_ARCNET = 0x7 -+ DLT_ARCNET_LINUX = 0x81 -+ DLT_ATM_CLIP = 0x13 -+ DLT_ATM_RFC1483 = 0xb -+ DLT_AURORA = 0x7e -+ DLT_AX25 = 0x3 -+ DLT_AX25_KISS = 0xca -+ DLT_BACNET_MS_TP = 0xa5 -+ DLT_BLUETOOTH_HCI_H4 = 0xbb -+ DLT_BLUETOOTH_HCI_H4_WITH_PHDR = 0xc9 -+ DLT_CAN20B = 0xbe -+ DLT_CAN_SOCKETCAN = 0xe3 -+ DLT_CHAOS = 0x5 -+ DLT_CHDLC = 0x68 -+ DLT_CISCO_IOS = 0x76 -+ DLT_C_HDLC = 0x68 -+ DLT_C_HDLC_WITH_DIR = 0xcd -+ DLT_DBUS = 0xe7 -+ DLT_DECT = 0xdd -+ DLT_DOCSIS = 0x8f -+ DLT_DVB_CI = 0xeb -+ DLT_ECONET = 0x73 -+ DLT_EN10MB = 0x1 -+ DLT_EN3MB = 0x2 -+ DLT_ENC = 0x6d -+ DLT_ERF = 0xc5 -+ DLT_ERF_ETH = 0xaf -+ DLT_ERF_POS = 0xb0 -+ DLT_FC_2 = 0xe0 -+ DLT_FC_2_WITH_FRAME_DELIMS = 0xe1 -+ DLT_FDDI = 0xa -+ DLT_FLEXRAY = 0xd2 -+ DLT_FRELAY = 0x6b -+ DLT_FRELAY_WITH_DIR = 0xce -+ DLT_GCOM_SERIAL = 0xad -+ DLT_GCOM_T1E1 = 0xac -+ DLT_GPF_F = 0xab -+ DLT_GPF_T = 0xaa -+ DLT_GPRS_LLC = 0xa9 -+ DLT_GSMTAP_ABIS = 0xda -+ DLT_GSMTAP_UM = 0xd9 -+ DLT_HHDLC = 0x79 -+ DLT_IBM_SN = 0x92 -+ DLT_IBM_SP = 0x91 -+ DLT_IEEE802 = 0x6 -+ DLT_IEEE802_11 = 0x69 -+ DLT_IEEE802_11_RADIO = 0x7f -+ DLT_IEEE802_11_RADIO_AVS = 0xa3 -+ DLT_IEEE802_15_4 = 0xc3 -+ DLT_IEEE802_15_4_LINUX = 0xbf -+ DLT_IEEE802_15_4_NOFCS = 0xe6 -+ DLT_IEEE802_15_4_NONASK_PHY = 0xd7 -+ DLT_IEEE802_16_MAC_CPS = 0xbc -+ DLT_IEEE802_16_MAC_CPS_RADIO = 0xc1 -+ DLT_IPFILTER = 0x74 -+ DLT_IPMB = 0xc7 -+ DLT_IPMB_LINUX = 0xd1 -+ DLT_IPNET = 0xe2 -+ DLT_IPOIB = 0xf2 -+ DLT_IPV4 = 0xe4 -+ DLT_IPV6 = 0xe5 -+ DLT_IP_OVER_FC = 0x7a -+ DLT_JUNIPER_ATM1 = 0x89 -+ DLT_JUNIPER_ATM2 = 0x87 -+ DLT_JUNIPER_ATM_CEMIC = 0xee -+ DLT_JUNIPER_CHDLC = 0xb5 -+ DLT_JUNIPER_ES = 0x84 -+ DLT_JUNIPER_ETHER = 0xb2 -+ DLT_JUNIPER_FIBRECHANNEL = 0xea -+ DLT_JUNIPER_FRELAY = 0xb4 -+ DLT_JUNIPER_GGSN = 0x85 -+ DLT_JUNIPER_ISM = 0xc2 -+ DLT_JUNIPER_MFR = 0x86 -+ DLT_JUNIPER_MLFR = 0x83 -+ DLT_JUNIPER_MLPPP = 0x82 -+ DLT_JUNIPER_MONITOR = 0xa4 -+ DLT_JUNIPER_PIC_PEER = 0xae -+ DLT_JUNIPER_PPP = 0xb3 -+ DLT_JUNIPER_PPPOE = 0xa7 -+ DLT_JUNIPER_PPPOE_ATM = 0xa8 -+ DLT_JUNIPER_SERVICES = 0x88 -+ DLT_JUNIPER_SRX_E2E = 0xe9 -+ DLT_JUNIPER_ST = 0xc8 -+ DLT_JUNIPER_VP = 0xb7 -+ DLT_JUNIPER_VS = 0xe8 -+ DLT_LAPB_WITH_DIR = 0xcf -+ DLT_LAPD = 0xcb -+ DLT_LIN = 0xd4 -+ DLT_LINUX_EVDEV = 0xd8 -+ DLT_LINUX_IRDA = 0x90 -+ DLT_LINUX_LAPD = 0xb1 -+ DLT_LINUX_PPP_WITHDIRECTION = 0xa6 -+ DLT_LINUX_SLL = 0x71 -+ DLT_LOOP = 0x6c -+ DLT_LTALK = 0x72 -+ DLT_MATCHING_MAX = 0x10a -+ DLT_MATCHING_MIN = 0x68 -+ DLT_MFR = 0xb6 -+ DLT_MOST = 0xd3 -+ DLT_MPEG_2_TS = 0xf3 -+ DLT_MPLS = 0xdb -+ DLT_MTP2 = 0x8c -+ DLT_MTP2_WITH_PHDR = 0x8b -+ DLT_MTP3 = 0x8d -+ DLT_MUX27010 = 0xec -+ DLT_NETANALYZER = 0xf0 -+ DLT_NETANALYZER_TRANSPARENT = 0xf1 -+ DLT_NFC_LLCP = 0xf5 -+ DLT_NFLOG = 0xef -+ DLT_NG40 = 0xf4 -+ DLT_NULL = 0x0 -+ DLT_PCI_EXP = 0x7d -+ DLT_PFLOG = 0x75 -+ DLT_PFSYNC = 0x12 -+ DLT_PPI = 0xc0 -+ DLT_PPP = 0x9 -+ DLT_PPP_BSDOS = 0x10 -+ DLT_PPP_ETHER = 0x33 -+ DLT_PPP_PPPD = 0xa6 -+ DLT_PPP_SERIAL = 0x32 -+ DLT_PPP_WITH_DIR = 0xcc -+ DLT_PPP_WITH_DIRECTION = 0xa6 -+ DLT_PRISM_HEADER = 0x77 -+ DLT_PRONET = 0x4 -+ DLT_RAIF1 = 0xc6 -+ DLT_RAW = 0xc -+ DLT_RIO = 0x7c -+ DLT_SCCP = 0x8e -+ DLT_SITA = 0xc4 -+ DLT_SLIP = 0x8 -+ DLT_SLIP_BSDOS = 0xf -+ DLT_STANAG_5066_D_PDU = 0xed -+ DLT_SUNATM = 0x7b -+ DLT_SYMANTEC_FIREWALL = 0x63 -+ DLT_TZSP = 0x80 -+ DLT_USB = 0xba -+ DLT_USB_DARWIN = 0x10a -+ DLT_USB_LINUX = 0xbd -+ DLT_USB_LINUX_MMAPPED = 0xdc -+ DLT_USER0 = 0x93 -+ DLT_USER1 = 0x94 -+ DLT_USER10 = 0x9d -+ DLT_USER11 = 0x9e -+ DLT_USER12 = 0x9f -+ DLT_USER13 = 0xa0 -+ DLT_USER14 = 0xa1 -+ DLT_USER15 = 0xa2 -+ DLT_USER2 = 0x95 -+ DLT_USER3 = 0x96 -+ DLT_USER4 = 0x97 -+ DLT_USER5 = 0x98 -+ DLT_USER6 = 0x99 -+ DLT_USER7 = 0x9a -+ DLT_USER8 = 0x9b -+ DLT_USER9 = 0x9c -+ DLT_WIHART = 0xdf -+ DLT_X2E_SERIAL = 0xd5 -+ DLT_X2E_XORAYA = 0xd6 -+ DT_BLK = 0x6 -+ DT_CHR = 0x2 -+ DT_DIR = 0x4 -+ DT_FIFO = 0x1 -+ DT_LNK = 0xa -+ DT_REG = 0x8 -+ DT_SOCK = 0xc -+ DT_UNKNOWN = 0x0 -+ DT_WHT = 0xe -+ ECHO = 0x8 -+ ECHOCTL = 0x40 -+ ECHOE = 0x2 -+ ECHOK = 0x4 -+ ECHOKE = 0x1 -+ ECHONL = 0x10 -+ ECHOPRT = 0x20 -+ EVFILT_AIO = -0x3 -+ EVFILT_EXCEPT = -0xf -+ EVFILT_FS = -0x9 -+ EVFILT_MACHPORT = -0x8 -+ EVFILT_PROC = -0x5 -+ EVFILT_READ = -0x1 -+ EVFILT_SIGNAL = -0x6 -+ EVFILT_SYSCOUNT = 0x11 -+ EVFILT_THREADMARKER = 0x11 -+ EVFILT_TIMER = -0x7 -+ EVFILT_USER = -0xa -+ EVFILT_VM = -0xc -+ EVFILT_VNODE = -0x4 -+ EVFILT_WRITE = -0x2 -+ EV_ADD = 0x1 -+ EV_CLEAR = 0x20 -+ EV_DELETE = 0x2 -+ EV_DISABLE = 0x8 -+ EV_DISPATCH = 0x80 -+ EV_DISPATCH2 = 0x180 -+ EV_ENABLE = 0x4 -+ EV_EOF = 0x8000 -+ EV_ERROR = 0x4000 -+ EV_FLAG0 = 0x1000 -+ EV_FLAG1 = 0x2000 -+ EV_ONESHOT = 0x10 -+ EV_OOBAND = 0x2000 -+ EV_POLL = 0x1000 -+ EV_RECEIPT = 0x40 -+ EV_SYSFLAGS = 0xf000 -+ EV_UDATA_SPECIFIC = 0x100 -+ EV_VANISHED = 0x200 -+ EXTA = 0x4b00 -+ EXTB = 0x9600 -+ EXTPROC = 0x800 -+ FD_CLOEXEC = 0x1 -+ FD_SETSIZE = 0x400 -+ FF0 = 0x0 -+ FF1 = 0x4000 -+ FFDLY = 0x4000 -+ FLUSHO = 0x800000 -+ FSOPT_ATTR_CMN_EXTENDED = 0x20 -+ FSOPT_NOFOLLOW = 0x1 -+ FSOPT_NOINMEMUPDATE = 0x2 -+ FSOPT_PACK_INVAL_ATTRS = 0x8 -+ FSOPT_REPORT_FULLSIZE = 0x4 -+ FSOPT_RETURN_REALDEV = 0x200 -+ F_ADDFILESIGS = 0x3d -+ F_ADDFILESIGS_FOR_DYLD_SIM = 0x53 -+ F_ADDFILESIGS_INFO = 0x67 -+ F_ADDFILESIGS_RETURN = 0x61 -+ F_ADDFILESUPPL = 0x68 -+ F_ADDSIGS = 0x3b -+ F_ALLOCATEALL = 0x4 -+ F_ALLOCATECONTIG = 0x2 -+ F_BARRIERFSYNC = 0x55 -+ F_CHECK_LV = 0x62 -+ F_CHKCLEAN = 0x29 -+ F_DUPFD = 0x0 -+ F_DUPFD_CLOEXEC = 0x43 -+ F_FINDSIGS = 0x4e -+ F_FLUSH_DATA = 0x28 -+ F_FREEZE_FS = 0x35 -+ F_FULLFSYNC = 0x33 -+ F_GETCODEDIR = 0x48 -+ F_GETFD = 0x1 -+ F_GETFL = 0x3 -+ F_GETLK = 0x7 -+ F_GETLKPID = 0x42 -+ F_GETNOSIGPIPE = 0x4a -+ F_GETOWN = 0x5 -+ F_GETPATH = 0x32 -+ F_GETPATH_MTMINFO = 0x47 -+ F_GETPATH_NOFIRMLINK = 0x66 -+ F_GETPROTECTIONCLASS = 0x3f -+ F_GETPROTECTIONLEVEL = 0x4d -+ F_GETSIGSINFO = 0x69 -+ F_GLOBAL_NOCACHE = 0x37 -+ F_LOG2PHYS = 0x31 -+ F_LOG2PHYS_EXT = 0x41 -+ F_NOCACHE = 0x30 -+ F_NODIRECT = 0x3e -+ F_OK = 0x0 -+ F_PATHPKG_CHECK = 0x34 -+ F_PEOFPOSMODE = 0x3 -+ F_PREALLOCATE = 0x2a -+ F_PUNCHHOLE = 0x63 -+ F_RDADVISE = 0x2c -+ F_RDAHEAD = 0x2d -+ F_RDLCK = 0x1 -+ F_SETBACKINGSTORE = 0x46 -+ F_SETFD = 0x2 -+ F_SETFL = 0x4 -+ F_SETLK = 0x8 -+ F_SETLKW = 0x9 -+ F_SETLKWTIMEOUT = 0xa -+ F_SETNOSIGPIPE = 0x49 -+ F_SETOWN = 0x6 -+ F_SETPROTECTIONCLASS = 0x40 -+ F_SETSIZE = 0x2b -+ F_SINGLE_WRITER = 0x4c -+ F_SPECULATIVE_READ = 0x65 -+ F_THAW_FS = 0x36 -+ F_TRANSCODEKEY = 0x4b -+ F_TRIM_ACTIVE_FILE = 0x64 -+ F_UNLCK = 0x2 -+ F_VOLPOSMODE = 0x4 -+ F_WRLCK = 0x3 -+ HUPCL = 0x4000 -+ HW_MACHINE = 0x1 -+ ICANON = 0x100 -+ ICMP6_FILTER = 0x12 -+ ICRNL = 0x100 -+ IEXTEN = 0x400 -+ IFF_ALLMULTI = 0x200 -+ IFF_ALTPHYS = 0x4000 -+ IFF_BROADCAST = 0x2 -+ IFF_DEBUG = 0x4 -+ IFF_LINK0 = 0x1000 -+ IFF_LINK1 = 0x2000 -+ IFF_LINK2 = 0x4000 -+ IFF_LOOPBACK = 0x8 -+ IFF_MULTICAST = 0x8000 -+ IFF_NOARP = 0x80 -+ IFF_NOTRAILERS = 0x20 -+ IFF_OACTIVE = 0x400 -+ IFF_POINTOPOINT = 0x10 -+ IFF_PROMISC = 0x100 -+ IFF_RUNNING = 0x40 -+ IFF_SIMPLEX = 0x800 -+ IFF_UP = 0x1 -+ IFNAMSIZ = 0x10 -+ IFT_1822 = 0x2 -+ IFT_6LOWPAN = 0x40 -+ IFT_AAL5 = 0x31 -+ IFT_ARCNET = 0x23 -+ IFT_ARCNETPLUS = 0x24 -+ IFT_ATM = 0x25 -+ IFT_BRIDGE = 0xd1 -+ IFT_CARP = 0xf8 -+ IFT_CELLULAR = 0xff -+ IFT_CEPT = 0x13 -+ IFT_DS3 = 0x1e -+ IFT_ENC = 0xf4 -+ IFT_EON = 0x19 -+ IFT_ETHER = 0x6 -+ IFT_FAITH = 0x38 -+ IFT_FDDI = 0xf -+ IFT_FRELAY = 0x20 -+ IFT_FRELAYDCE = 0x2c -+ IFT_GIF = 0x37 -+ IFT_HDH1822 = 0x3 -+ IFT_HIPPI = 0x2f -+ IFT_HSSI = 0x2e -+ IFT_HY = 0xe -+ IFT_IEEE1394 = 0x90 -+ IFT_IEEE8023ADLAG = 0x88 -+ IFT_ISDNBASIC = 0x14 -+ IFT_ISDNPRIMARY = 0x15 -+ IFT_ISO88022LLC = 0x29 -+ IFT_ISO88023 = 0x7 -+ IFT_ISO88024 = 0x8 -+ IFT_ISO88025 = 0x9 -+ IFT_ISO88026 = 0xa -+ IFT_L2VLAN = 0x87 -+ IFT_LAPB = 0x10 -+ IFT_LOCALTALK = 0x2a -+ IFT_LOOP = 0x18 -+ IFT_MIOX25 = 0x26 -+ IFT_MODEM = 0x30 -+ IFT_NSIP = 0x1b -+ IFT_OTHER = 0x1 -+ IFT_P10 = 0xc -+ IFT_P80 = 0xd -+ IFT_PARA = 0x22 -+ IFT_PDP = 0xff -+ IFT_PFLOG = 0xf5 -+ IFT_PFSYNC = 0xf6 -+ IFT_PKTAP = 0xfe -+ IFT_PPP = 0x17 -+ IFT_PROPMUX = 0x36 -+ IFT_PROPVIRTUAL = 0x35 -+ IFT_PTPSERIAL = 0x16 -+ IFT_RS232 = 0x21 -+ IFT_SDLC = 0x11 -+ IFT_SIP = 0x1f -+ IFT_SLIP = 0x1c -+ IFT_SMDSDXI = 0x2b -+ IFT_SMDSICIP = 0x34 -+ IFT_SONET = 0x27 -+ IFT_SONETPATH = 0x32 -+ IFT_SONETVT = 0x33 -+ IFT_STARLAN = 0xb -+ IFT_STF = 0x39 -+ IFT_T1 = 0x12 -+ IFT_ULTRA = 0x1d -+ IFT_V35 = 0x2d -+ IFT_X25 = 0x5 -+ IFT_X25DDN = 0x4 -+ IFT_X25PLE = 0x28 -+ IFT_XETHER = 0x1a -+ IGNBRK = 0x1 -+ IGNCR = 0x80 -+ IGNPAR = 0x4 -+ IMAXBEL = 0x2000 -+ INLCR = 0x40 -+ INPCK = 0x10 -+ IN_CLASSA_HOST = 0xffffff -+ IN_CLASSA_MAX = 0x80 -+ IN_CLASSA_NET = 0xff000000 -+ IN_CLASSA_NSHIFT = 0x18 -+ IN_CLASSB_HOST = 0xffff -+ IN_CLASSB_MAX = 0x10000 -+ IN_CLASSB_NET = 0xffff0000 -+ IN_CLASSB_NSHIFT = 0x10 -+ IN_CLASSC_HOST = 0xff -+ IN_CLASSC_NET = 0xffffff00 -+ IN_CLASSC_NSHIFT = 0x8 -+ IN_CLASSD_HOST = 0xfffffff -+ IN_CLASSD_NET = 0xf0000000 -+ IN_CLASSD_NSHIFT = 0x1c -+ IN_LINKLOCALNETNUM = 0xa9fe0000 -+ IN_LOOPBACKNET = 0x7f -+ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x400473d1 -+ IPPROTO_3PC = 0x22 -+ IPPROTO_ADFS = 0x44 -+ IPPROTO_AH = 0x33 -+ IPPROTO_AHIP = 0x3d -+ IPPROTO_APES = 0x63 -+ IPPROTO_ARGUS = 0xd -+ IPPROTO_AX25 = 0x5d -+ IPPROTO_BHA = 0x31 -+ IPPROTO_BLT = 0x1e -+ IPPROTO_BRSATMON = 0x4c -+ IPPROTO_CFTP = 0x3e -+ IPPROTO_CHAOS = 0x10 -+ IPPROTO_CMTP = 0x26 -+ IPPROTO_CPHB = 0x49 -+ IPPROTO_CPNX = 0x48 -+ IPPROTO_DDP = 0x25 -+ IPPROTO_DGP = 0x56 -+ IPPROTO_DIVERT = 0xfe -+ IPPROTO_DONE = 0x101 -+ IPPROTO_DSTOPTS = 0x3c -+ IPPROTO_EGP = 0x8 -+ IPPROTO_EMCON = 0xe -+ IPPROTO_ENCAP = 0x62 -+ IPPROTO_EON = 0x50 -+ IPPROTO_ESP = 0x32 -+ IPPROTO_ETHERIP = 0x61 -+ IPPROTO_FRAGMENT = 0x2c -+ IPPROTO_GGP = 0x3 -+ IPPROTO_GMTP = 0x64 -+ IPPROTO_GRE = 0x2f -+ IPPROTO_HELLO = 0x3f -+ IPPROTO_HMP = 0x14 -+ IPPROTO_HOPOPTS = 0x0 -+ IPPROTO_ICMP = 0x1 -+ IPPROTO_ICMPV6 = 0x3a -+ IPPROTO_IDP = 0x16 -+ IPPROTO_IDPR = 0x23 -+ IPPROTO_IDRP = 0x2d -+ IPPROTO_IGMP = 0x2 -+ IPPROTO_IGP = 0x55 -+ IPPROTO_IGRP = 0x58 -+ IPPROTO_IL = 0x28 -+ IPPROTO_INLSP = 0x34 -+ IPPROTO_INP = 0x20 -+ IPPROTO_IP = 0x0 -+ IPPROTO_IPCOMP = 0x6c -+ IPPROTO_IPCV = 0x47 -+ IPPROTO_IPEIP = 0x5e -+ IPPROTO_IPIP = 0x4 -+ IPPROTO_IPPC = 0x43 -+ IPPROTO_IPV4 = 0x4 -+ IPPROTO_IPV6 = 0x29 -+ IPPROTO_IRTP = 0x1c -+ IPPROTO_KRYPTOLAN = 0x41 -+ IPPROTO_LARP = 0x5b -+ IPPROTO_LEAF1 = 0x19 -+ IPPROTO_LEAF2 = 0x1a -+ IPPROTO_MAX = 0x100 -+ IPPROTO_MAXID = 0x34 -+ IPPROTO_MEAS = 0x13 -+ IPPROTO_MHRP = 0x30 -+ IPPROTO_MICP = 0x5f -+ IPPROTO_MTP = 0x5c -+ IPPROTO_MUX = 0x12 -+ IPPROTO_ND = 0x4d -+ IPPROTO_NHRP = 0x36 -+ IPPROTO_NONE = 0x3b -+ IPPROTO_NSP = 0x1f -+ IPPROTO_NVPII = 0xb -+ IPPROTO_OSPFIGP = 0x59 -+ IPPROTO_PGM = 0x71 -+ IPPROTO_PIGP = 0x9 -+ IPPROTO_PIM = 0x67 -+ IPPROTO_PRM = 0x15 -+ IPPROTO_PUP = 0xc -+ IPPROTO_PVP = 0x4b -+ IPPROTO_RAW = 0xff -+ IPPROTO_RCCMON = 0xa -+ IPPROTO_RDP = 0x1b -+ IPPROTO_ROUTING = 0x2b -+ IPPROTO_RSVP = 0x2e -+ IPPROTO_RVD = 0x42 -+ IPPROTO_SATEXPAK = 0x40 -+ IPPROTO_SATMON = 0x45 -+ IPPROTO_SCCSP = 0x60 -+ IPPROTO_SCTP = 0x84 -+ IPPROTO_SDRP = 0x2a -+ IPPROTO_SEP = 0x21 -+ IPPROTO_SRPC = 0x5a -+ IPPROTO_ST = 0x7 -+ IPPROTO_SVMTP = 0x52 -+ IPPROTO_SWIPE = 0x35 -+ IPPROTO_TCF = 0x57 -+ IPPROTO_TCP = 0x6 -+ IPPROTO_TP = 0x1d -+ IPPROTO_TPXX = 0x27 -+ IPPROTO_TRUNK1 = 0x17 -+ IPPROTO_TRUNK2 = 0x18 -+ IPPROTO_TTP = 0x54 -+ IPPROTO_UDP = 0x11 -+ IPPROTO_VINES = 0x53 -+ IPPROTO_VISA = 0x46 -+ IPPROTO_VMTP = 0x51 -+ IPPROTO_WBEXPAK = 0x4f -+ IPPROTO_WBMON = 0x4e -+ IPPROTO_WSN = 0x4a -+ IPPROTO_XNET = 0xf -+ IPPROTO_XTP = 0x24 -+ IPV6_2292DSTOPTS = 0x17 -+ IPV6_2292HOPLIMIT = 0x14 -+ IPV6_2292HOPOPTS = 0x16 -+ IPV6_2292NEXTHOP = 0x15 -+ IPV6_2292PKTINFO = 0x13 -+ IPV6_2292PKTOPTIONS = 0x19 -+ IPV6_2292RTHDR = 0x18 -+ IPV6_3542DSTOPTS = 0x32 -+ IPV6_3542HOPLIMIT = 0x2f -+ IPV6_3542HOPOPTS = 0x31 -+ IPV6_3542NEXTHOP = 0x30 -+ IPV6_3542PKTINFO = 0x2e -+ IPV6_3542RTHDR = 0x33 -+ IPV6_ADDR_MC_FLAGS_PREFIX = 0x20 -+ IPV6_ADDR_MC_FLAGS_TRANSIENT = 0x10 -+ IPV6_ADDR_MC_FLAGS_UNICAST_BASED = 0x30 -+ IPV6_AUTOFLOWLABEL = 0x3b -+ IPV6_BINDV6ONLY = 0x1b -+ IPV6_BOUND_IF = 0x7d -+ IPV6_CHECKSUM = 0x1a -+ IPV6_DEFAULT_MULTICAST_HOPS = 0x1 -+ IPV6_DEFAULT_MULTICAST_LOOP = 0x1 -+ IPV6_DEFHLIM = 0x40 -+ IPV6_DONTFRAG = 0x3e -+ IPV6_DSTOPTS = 0x32 -+ IPV6_FAITH = 0x1d -+ IPV6_FLOWINFO_MASK = 0xffffff0f -+ IPV6_FLOWLABEL_MASK = 0xffff0f00 -+ IPV6_FLOW_ECN_MASK = 0x3000 -+ IPV6_FRAGTTL = 0x3c -+ IPV6_FW_ADD = 0x1e -+ IPV6_FW_DEL = 0x1f -+ IPV6_FW_FLUSH = 0x20 -+ IPV6_FW_GET = 0x22 -+ IPV6_FW_ZERO = 0x21 -+ IPV6_HLIMDEC = 0x1 -+ IPV6_HOPLIMIT = 0x2f -+ IPV6_HOPOPTS = 0x31 -+ IPV6_IPSEC_POLICY = 0x1c -+ IPV6_JOIN_GROUP = 0xc -+ IPV6_LEAVE_GROUP = 0xd -+ IPV6_MAXHLIM = 0xff -+ IPV6_MAXOPTHDR = 0x800 -+ IPV6_MAXPACKET = 0xffff -+ IPV6_MAX_GROUP_SRC_FILTER = 0x200 -+ IPV6_MAX_MEMBERSHIPS = 0xfff -+ IPV6_MAX_SOCK_SRC_FILTER = 0x80 -+ IPV6_MIN_MEMBERSHIPS = 0x1f -+ IPV6_MMTU = 0x500 -+ IPV6_MSFILTER = 0x4a -+ IPV6_MULTICAST_HOPS = 0xa -+ IPV6_MULTICAST_IF = 0x9 -+ IPV6_MULTICAST_LOOP = 0xb -+ IPV6_NEXTHOP = 0x30 -+ IPV6_PATHMTU = 0x2c -+ IPV6_PKTINFO = 0x2e -+ IPV6_PORTRANGE = 0xe -+ IPV6_PORTRANGE_DEFAULT = 0x0 -+ IPV6_PORTRANGE_HIGH = 0x1 -+ IPV6_PORTRANGE_LOW = 0x2 -+ IPV6_PREFER_TEMPADDR = 0x3f -+ IPV6_RECVDSTOPTS = 0x28 -+ IPV6_RECVHOPLIMIT = 0x25 -+ IPV6_RECVHOPOPTS = 0x27 -+ IPV6_RECVPATHMTU = 0x2b -+ IPV6_RECVPKTINFO = 0x3d -+ IPV6_RECVRTHDR = 0x26 -+ IPV6_RECVTCLASS = 0x23 -+ IPV6_RTHDR = 0x33 -+ IPV6_RTHDRDSTOPTS = 0x39 -+ IPV6_RTHDR_LOOSE = 0x0 -+ IPV6_RTHDR_STRICT = 0x1 -+ IPV6_RTHDR_TYPE_0 = 0x0 -+ IPV6_SOCKOPT_RESERVED1 = 0x3 -+ IPV6_TCLASS = 0x24 -+ IPV6_UNICAST_HOPS = 0x4 -+ IPV6_USE_MIN_MTU = 0x2a -+ IPV6_V6ONLY = 0x1b -+ IPV6_VERSION = 0x60 -+ IPV6_VERSION_MASK = 0xf0 -+ IP_ADD_MEMBERSHIP = 0xc -+ IP_ADD_SOURCE_MEMBERSHIP = 0x46 -+ IP_BLOCK_SOURCE = 0x48 -+ IP_BOUND_IF = 0x19 -+ IP_DEFAULT_MULTICAST_LOOP = 0x1 -+ IP_DEFAULT_MULTICAST_TTL = 0x1 -+ IP_DF = 0x4000 -+ IP_DONTFRAG = 0x1c -+ IP_DROP_MEMBERSHIP = 0xd -+ IP_DROP_SOURCE_MEMBERSHIP = 0x47 -+ IP_DUMMYNET_CONFIGURE = 0x3c -+ IP_DUMMYNET_DEL = 0x3d -+ IP_DUMMYNET_FLUSH = 0x3e -+ IP_DUMMYNET_GET = 0x40 -+ IP_FAITH = 0x16 -+ IP_FW_ADD = 0x28 -+ IP_FW_DEL = 0x29 -+ IP_FW_FLUSH = 0x2a -+ IP_FW_GET = 0x2c -+ IP_FW_RESETLOG = 0x2d -+ IP_FW_ZERO = 0x2b -+ IP_HDRINCL = 0x2 -+ IP_IPSEC_POLICY = 0x15 -+ IP_MAXPACKET = 0xffff -+ IP_MAX_GROUP_SRC_FILTER = 0x200 -+ IP_MAX_MEMBERSHIPS = 0xfff -+ IP_MAX_SOCK_MUTE_FILTER = 0x80 -+ IP_MAX_SOCK_SRC_FILTER = 0x80 -+ IP_MF = 0x2000 -+ IP_MIN_MEMBERSHIPS = 0x1f -+ IP_MSFILTER = 0x4a -+ IP_MSS = 0x240 -+ IP_MULTICAST_IF = 0x9 -+ IP_MULTICAST_IFINDEX = 0x42 -+ IP_MULTICAST_LOOP = 0xb -+ IP_MULTICAST_TTL = 0xa -+ IP_MULTICAST_VIF = 0xe -+ IP_NAT__XXX = 0x37 -+ IP_OFFMASK = 0x1fff -+ IP_OLD_FW_ADD = 0x32 -+ IP_OLD_FW_DEL = 0x33 -+ IP_OLD_FW_FLUSH = 0x34 -+ IP_OLD_FW_GET = 0x36 -+ IP_OLD_FW_RESETLOG = 0x38 -+ IP_OLD_FW_ZERO = 0x35 -+ IP_OPTIONS = 0x1 -+ IP_PKTINFO = 0x1a -+ IP_PORTRANGE = 0x13 -+ IP_PORTRANGE_DEFAULT = 0x0 -+ IP_PORTRANGE_HIGH = 0x1 -+ IP_PORTRANGE_LOW = 0x2 -+ IP_RECVDSTADDR = 0x7 -+ IP_RECVIF = 0x14 -+ IP_RECVOPTS = 0x5 -+ IP_RECVPKTINFO = 0x1a -+ IP_RECVRETOPTS = 0x6 -+ IP_RECVTOS = 0x1b -+ IP_RECVTTL = 0x18 -+ IP_RETOPTS = 0x8 -+ IP_RF = 0x8000 -+ IP_RSVP_OFF = 0x10 -+ IP_RSVP_ON = 0xf -+ IP_RSVP_VIF_OFF = 0x12 -+ IP_RSVP_VIF_ON = 0x11 -+ IP_STRIPHDR = 0x17 -+ IP_TOS = 0x3 -+ IP_TRAFFIC_MGT_BACKGROUND = 0x41 -+ IP_TTL = 0x4 -+ IP_UNBLOCK_SOURCE = 0x49 -+ ISIG = 0x80 -+ ISTRIP = 0x20 -+ IUTF8 = 0x4000 -+ IXANY = 0x800 -+ IXOFF = 0x400 -+ IXON = 0x200 -+ KERN_HOSTNAME = 0xa -+ KERN_OSRELEASE = 0x2 -+ KERN_OSTYPE = 0x1 -+ KERN_VERSION = 0x4 -+ LOCAL_PEERCRED = 0x1 -+ LOCAL_PEEREPID = 0x3 -+ LOCAL_PEEREUUID = 0x5 -+ LOCAL_PEERPID = 0x2 -+ LOCAL_PEERTOKEN = 0x6 -+ LOCAL_PEERUUID = 0x4 -+ LOCK_EX = 0x2 -+ LOCK_NB = 0x4 -+ LOCK_SH = 0x1 -+ LOCK_UN = 0x8 -+ MADV_CAN_REUSE = 0x9 -+ MADV_DONTNEED = 0x4 -+ MADV_FREE = 0x5 -+ MADV_FREE_REUSABLE = 0x7 -+ MADV_FREE_REUSE = 0x8 -+ MADV_NORMAL = 0x0 -+ MADV_PAGEOUT = 0xa -+ MADV_RANDOM = 0x1 -+ MADV_SEQUENTIAL = 0x2 -+ MADV_WILLNEED = 0x3 -+ MADV_ZERO_WIRED_PAGES = 0x6 -+ MAP_32BIT = 0x8000 -+ MAP_ANON = 0x1000 -+ MAP_ANONYMOUS = 0x1000 -+ MAP_COPY = 0x2 -+ MAP_FILE = 0x0 -+ MAP_FIXED = 0x10 -+ MAP_HASSEMAPHORE = 0x200 -+ MAP_JIT = 0x800 -+ MAP_NOCACHE = 0x400 -+ MAP_NOEXTEND = 0x100 -+ MAP_NORESERVE = 0x40 -+ MAP_PRIVATE = 0x2 -+ MAP_RENAME = 0x20 -+ MAP_RESERVED0080 = 0x80 -+ MAP_RESILIENT_CODESIGN = 0x2000 -+ MAP_RESILIENT_MEDIA = 0x4000 -+ MAP_SHARED = 0x1 -+ MAP_TRANSLATED_ALLOW_EXECUTE = 0x20000 -+ MAP_UNIX03 = 0x40000 -+ MCAST_BLOCK_SOURCE = 0x54 -+ MCAST_EXCLUDE = 0x2 -+ MCAST_INCLUDE = 0x1 -+ MCAST_JOIN_GROUP = 0x50 -+ MCAST_JOIN_SOURCE_GROUP = 0x52 -+ MCAST_LEAVE_GROUP = 0x51 -+ MCAST_LEAVE_SOURCE_GROUP = 0x53 -+ MCAST_UNBLOCK_SOURCE = 0x55 -+ MCAST_UNDEFINED = 0x0 -+ MCL_CURRENT = 0x1 -+ MCL_FUTURE = 0x2 -+ MNT_ASYNC = 0x40 -+ MNT_AUTOMOUNTED = 0x400000 -+ MNT_CMDFLAGS = 0xf0000 -+ MNT_CPROTECT = 0x80 -+ MNT_DEFWRITE = 0x2000000 -+ MNT_DONTBROWSE = 0x100000 -+ MNT_DOVOLFS = 0x8000 -+ MNT_DWAIT = 0x4 -+ MNT_EXPORTED = 0x100 -+ MNT_EXT_ROOT_DATA_VOL = 0x1 -+ MNT_FORCE = 0x80000 -+ MNT_IGNORE_OWNERSHIP = 0x200000 -+ MNT_JOURNALED = 0x800000 -+ MNT_LOCAL = 0x1000 -+ MNT_MULTILABEL = 0x4000000 -+ MNT_NOATIME = 0x10000000 -+ MNT_NOBLOCK = 0x20000 -+ MNT_NODEV = 0x10 -+ MNT_NOEXEC = 0x4 -+ MNT_NOSUID = 0x8 -+ MNT_NOUSERXATTR = 0x1000000 -+ MNT_NOWAIT = 0x2 -+ MNT_QUARANTINE = 0x400 -+ MNT_QUOTA = 0x2000 -+ MNT_RDONLY = 0x1 -+ MNT_RELOAD = 0x40000 -+ MNT_REMOVABLE = 0x200 -+ MNT_ROOTFS = 0x4000 -+ MNT_SNAPSHOT = 0x40000000 -+ MNT_STRICTATIME = 0x80000000 -+ MNT_SYNCHRONOUS = 0x2 -+ MNT_UNION = 0x20 -+ MNT_UNKNOWNPERMISSIONS = 0x200000 -+ MNT_UPDATE = 0x10000 -+ MNT_VISFLAGMASK = 0xd7f0f7ff -+ MNT_WAIT = 0x1 -+ MSG_CTRUNC = 0x20 -+ MSG_DONTROUTE = 0x4 -+ MSG_DONTWAIT = 0x80 -+ MSG_EOF = 0x100 -+ MSG_EOR = 0x8 -+ MSG_FLUSH = 0x400 -+ MSG_HAVEMORE = 0x2000 -+ MSG_HOLD = 0x800 -+ MSG_NEEDSA = 0x10000 -+ MSG_NOSIGNAL = 0x80000 -+ MSG_OOB = 0x1 -+ MSG_PEEK = 0x2 -+ MSG_RCVMORE = 0x4000 -+ MSG_SEND = 0x1000 -+ MSG_TRUNC = 0x10 -+ MSG_WAITALL = 0x40 -+ MSG_WAITSTREAM = 0x200 -+ MS_ASYNC = 0x1 -+ MS_DEACTIVATE = 0x8 -+ MS_INVALIDATE = 0x2 -+ MS_KILLPAGES = 0x4 -+ MS_SYNC = 0x10 -+ NAME_MAX = 0xff -+ NET_RT_DUMP = 0x1 -+ NET_RT_DUMP2 = 0x7 -+ NET_RT_FLAGS = 0x2 -+ NET_RT_FLAGS_PRIV = 0xa -+ NET_RT_IFLIST = 0x3 -+ NET_RT_IFLIST2 = 0x6 -+ NET_RT_MAXID = 0xb -+ NET_RT_STAT = 0x4 -+ NET_RT_TRASH = 0x5 -+ NFDBITS = 0x20 -+ NL0 = 0x0 -+ NL1 = 0x100 -+ NL2 = 0x200 -+ NL3 = 0x300 -+ NLDLY = 0x300 -+ NOFLSH = 0x80000000 -+ NOKERNINFO = 0x2000000 -+ NOTE_ABSOLUTE = 0x8 -+ NOTE_ATTRIB = 0x8 -+ NOTE_BACKGROUND = 0x40 -+ NOTE_CHILD = 0x4 -+ NOTE_CRITICAL = 0x20 -+ NOTE_DELETE = 0x1 -+ NOTE_EXEC = 0x20000000 -+ NOTE_EXIT = 0x80000000 -+ NOTE_EXITSTATUS = 0x4000000 -+ NOTE_EXIT_CSERROR = 0x40000 -+ NOTE_EXIT_DECRYPTFAIL = 0x10000 -+ NOTE_EXIT_DETAIL = 0x2000000 -+ NOTE_EXIT_DETAIL_MASK = 0x70000 -+ NOTE_EXIT_MEMORY = 0x20000 -+ NOTE_EXIT_REPARENTED = 0x80000 -+ NOTE_EXTEND = 0x4 -+ NOTE_FFAND = 0x40000000 -+ NOTE_FFCOPY = 0xc0000000 -+ NOTE_FFCTRLMASK = 0xc0000000 -+ NOTE_FFLAGSMASK = 0xffffff -+ NOTE_FFNOP = 0x0 -+ NOTE_FFOR = 0x80000000 -+ NOTE_FORK = 0x40000000 -+ NOTE_FUNLOCK = 0x100 -+ NOTE_LEEWAY = 0x10 -+ NOTE_LINK = 0x10 -+ NOTE_LOWAT = 0x1 -+ NOTE_MACHTIME = 0x100 -+ NOTE_MACH_CONTINUOUS_TIME = 0x80 -+ NOTE_NONE = 0x80 -+ NOTE_NSECONDS = 0x4 -+ NOTE_OOB = 0x2 -+ NOTE_PCTRLMASK = -0x100000 -+ NOTE_PDATAMASK = 0xfffff -+ NOTE_REAP = 0x10000000 -+ NOTE_RENAME = 0x20 -+ NOTE_REVOKE = 0x40 -+ NOTE_SECONDS = 0x1 -+ NOTE_SIGNAL = 0x8000000 -+ NOTE_TRACK = 0x1 -+ NOTE_TRACKERR = 0x2 -+ NOTE_TRIGGER = 0x1000000 -+ NOTE_USECONDS = 0x2 -+ NOTE_VM_ERROR = 0x10000000 -+ NOTE_VM_PRESSURE = 0x80000000 -+ NOTE_VM_PRESSURE_SUDDEN_TERMINATE = 0x20000000 -+ NOTE_VM_PRESSURE_TERMINATE = 0x40000000 -+ NOTE_WRITE = 0x2 -+ OCRNL = 0x10 -+ OFDEL = 0x20000 -+ OFILL = 0x80 -+ ONLCR = 0x2 -+ ONLRET = 0x40 -+ ONOCR = 0x20 -+ ONOEOT = 0x8 -+ OPOST = 0x1 -+ OXTABS = 0x4 -+ O_ACCMODE = 0x3 -+ O_ALERT = 0x20000000 -+ O_APPEND = 0x8 -+ O_ASYNC = 0x40 -+ O_CLOEXEC = 0x1000000 -+ O_CREAT = 0x200 -+ O_DIRECTORY = 0x100000 -+ O_DP_GETRAWENCRYPTED = 0x1 -+ O_DP_GETRAWUNENCRYPTED = 0x2 -+ O_DSYNC = 0x400000 -+ O_EVTONLY = 0x8000 -+ O_EXCL = 0x800 -+ O_EXLOCK = 0x20 -+ O_FSYNC = 0x80 -+ O_NDELAY = 0x4 -+ O_NOCTTY = 0x20000 -+ O_NOFOLLOW = 0x100 -+ O_NOFOLLOW_ANY = 0x20000000 -+ O_NONBLOCK = 0x4 -+ O_POPUP = 0x80000000 -+ O_RDONLY = 0x0 -+ O_RDWR = 0x2 -+ O_SHLOCK = 0x10 -+ O_SYMLINK = 0x200000 -+ O_SYNC = 0x80 -+ O_TRUNC = 0x400 -+ O_WRONLY = 0x1 -+ PARENB = 0x1000 -+ PARMRK = 0x8 -+ PARODD = 0x2000 -+ PENDIN = 0x20000000 -+ PRIO_PGRP = 0x1 -+ PRIO_PROCESS = 0x0 -+ PRIO_USER = 0x2 -+ PROT_EXEC = 0x4 -+ PROT_NONE = 0x0 -+ PROT_READ = 0x1 -+ PROT_WRITE = 0x2 -+ PT_ATTACH = 0xa -+ PT_ATTACHEXC = 0xe -+ PT_CONTINUE = 0x7 -+ PT_DENY_ATTACH = 0x1f -+ PT_DETACH = 0xb -+ PT_FIRSTMACH = 0x20 -+ PT_FORCEQUOTA = 0x1e -+ PT_KILL = 0x8 -+ PT_READ_D = 0x2 -+ PT_READ_I = 0x1 -+ PT_READ_U = 0x3 -+ PT_SIGEXC = 0xc -+ PT_STEP = 0x9 -+ PT_THUPDATE = 0xd -+ PT_TRACE_ME = 0x0 -+ PT_WRITE_D = 0x5 -+ PT_WRITE_I = 0x4 -+ PT_WRITE_U = 0x6 -+ RLIMIT_AS = 0x5 -+ RLIMIT_CORE = 0x4 -+ RLIMIT_CPU = 0x0 -+ RLIMIT_CPU_USAGE_MONITOR = 0x2 -+ RLIMIT_DATA = 0x2 -+ RLIMIT_FSIZE = 0x1 -+ RLIMIT_MEMLOCK = 0x6 -+ RLIMIT_NOFILE = 0x8 -+ RLIMIT_NPROC = 0x7 -+ RLIMIT_RSS = 0x5 -+ RLIMIT_STACK = 0x3 -+ RLIM_INFINITY = 0x7fffffffffffffff -+ RTAX_AUTHOR = 0x6 -+ RTAX_BRD = 0x7 -+ RTAX_DST = 0x0 -+ RTAX_GATEWAY = 0x1 -+ RTAX_GENMASK = 0x3 -+ RTAX_IFA = 0x5 -+ RTAX_IFP = 0x4 -+ RTAX_MAX = 0x8 -+ RTAX_NETMASK = 0x2 -+ RTA_AUTHOR = 0x40 -+ RTA_BRD = 0x80 -+ RTA_DST = 0x1 -+ RTA_GATEWAY = 0x2 -+ RTA_GENMASK = 0x8 -+ RTA_IFA = 0x20 -+ RTA_IFP = 0x10 -+ RTA_NETMASK = 0x4 -+ RTF_BLACKHOLE = 0x1000 -+ RTF_BROADCAST = 0x400000 -+ RTF_CLONING = 0x100 -+ RTF_CONDEMNED = 0x2000000 -+ RTF_DEAD = 0x20000000 -+ RTF_DELCLONE = 0x80 -+ RTF_DONE = 0x40 -+ RTF_DYNAMIC = 0x10 -+ RTF_GATEWAY = 0x2 -+ RTF_GLOBAL = 0x40000000 -+ RTF_HOST = 0x4 -+ RTF_IFREF = 0x4000000 -+ RTF_IFSCOPE = 0x1000000 -+ RTF_LLDATA = 0x400 -+ RTF_LLINFO = 0x400 -+ RTF_LOCAL = 0x200000 -+ RTF_MODIFIED = 0x20 -+ RTF_MULTICAST = 0x800000 -+ RTF_NOIFREF = 0x2000 -+ RTF_PINNED = 0x100000 -+ RTF_PRCLONING = 0x10000 -+ RTF_PROTO1 = 0x8000 -+ RTF_PROTO2 = 0x4000 -+ RTF_PROTO3 = 0x40000 -+ RTF_PROXY = 0x8000000 -+ RTF_REJECT = 0x8 -+ RTF_ROUTER = 0x10000000 -+ RTF_STATIC = 0x800 -+ RTF_UP = 0x1 -+ RTF_WASCLONED = 0x20000 -+ RTF_XRESOLVE = 0x200 -+ RTM_ADD = 0x1 -+ RTM_CHANGE = 0x3 -+ RTM_DELADDR = 0xd -+ RTM_DELETE = 0x2 -+ RTM_DELMADDR = 0x10 -+ RTM_GET = 0x4 -+ RTM_GET2 = 0x14 -+ RTM_IFINFO = 0xe -+ RTM_IFINFO2 = 0x12 -+ RTM_LOCK = 0x8 -+ RTM_LOSING = 0x5 -+ RTM_MISS = 0x7 -+ RTM_NEWADDR = 0xc -+ RTM_NEWMADDR = 0xf -+ RTM_NEWMADDR2 = 0x13 -+ RTM_OLDADD = 0x9 -+ RTM_OLDDEL = 0xa -+ RTM_REDIRECT = 0x6 -+ RTM_RESOLVE = 0xb -+ RTM_RTTUNIT = 0xf4240 -+ RTM_VERSION = 0x5 -+ RTV_EXPIRE = 0x4 -+ RTV_HOPCOUNT = 0x2 -+ RTV_MTU = 0x1 -+ RTV_RPIPE = 0x8 -+ RTV_RTT = 0x40 -+ RTV_RTTVAR = 0x80 -+ RTV_SPIPE = 0x10 -+ RTV_SSTHRESH = 0x20 -+ RUSAGE_CHILDREN = -0x1 -+ RUSAGE_SELF = 0x0 -+ SCM_CREDS = 0x3 -+ SCM_RIGHTS = 0x1 -+ SCM_TIMESTAMP = 0x2 -+ SCM_TIMESTAMP_MONOTONIC = 0x4 -+ SEEK_CUR = 0x1 -+ SEEK_DATA = 0x4 -+ SEEK_END = 0x2 -+ SEEK_HOLE = 0x3 -+ SEEK_SET = 0x0 -+ SHUT_RD = 0x0 -+ SHUT_RDWR = 0x2 -+ SHUT_WR = 0x1 -+ SIOCADDMULTI = 0x80206931 -+ SIOCAIFADDR = 0x8040691a -+ SIOCARPIPLL = 0xc0206928 -+ SIOCATMARK = 0x40047307 -+ SIOCAUTOADDR = 0xc0206926 -+ SIOCAUTONETMASK = 0x80206927 -+ SIOCDELMULTI = 0x80206932 -+ SIOCDIFADDR = 0x80206919 -+ SIOCDIFPHYADDR = 0x80206941 -+ SIOCGDRVSPEC = 0xc028697b -+ SIOCGETVLAN = 0xc020697f -+ SIOCGHIWAT = 0x40047301 -+ SIOCGIF6LOWPAN = 0xc02069c5 -+ SIOCGIFADDR = 0xc0206921 -+ SIOCGIFALTMTU = 0xc0206948 -+ SIOCGIFASYNCMAP = 0xc020697c -+ SIOCGIFBOND = 0xc0206947 -+ SIOCGIFBRDADDR = 0xc0206923 -+ SIOCGIFCAP = 0xc020695b -+ SIOCGIFCONF = 0xc00c6924 -+ SIOCGIFDEVMTU = 0xc0206944 -+ SIOCGIFDSTADDR = 0xc0206922 -+ SIOCGIFFLAGS = 0xc0206911 -+ SIOCGIFFUNCTIONALTYPE = 0xc02069ad -+ SIOCGIFGENERIC = 0xc020693a -+ SIOCGIFKPI = 0xc0206987 -+ SIOCGIFMAC = 0xc0206982 -+ SIOCGIFMEDIA = 0xc02c6938 -+ SIOCGIFMETRIC = 0xc0206917 -+ SIOCGIFMTU = 0xc0206933 -+ SIOCGIFNETMASK = 0xc0206925 -+ SIOCGIFPDSTADDR = 0xc0206940 -+ SIOCGIFPHYS = 0xc0206935 -+ SIOCGIFPSRCADDR = 0xc020693f -+ SIOCGIFSTATUS = 0xc331693d -+ SIOCGIFVLAN = 0xc020697f -+ SIOCGIFWAKEFLAGS = 0xc0206988 -+ SIOCGIFXMEDIA = 0xc02c6948 -+ SIOCGLOWAT = 0x40047303 -+ SIOCGPGRP = 0x40047309 -+ SIOCIFCREATE = 0xc0206978 -+ SIOCIFCREATE2 = 0xc020697a -+ SIOCIFDESTROY = 0x80206979 -+ SIOCIFGCLONERS = 0xc0106981 -+ SIOCRSLVMULTI = 0xc010693b -+ SIOCSDRVSPEC = 0x8028697b -+ SIOCSETVLAN = 0x8020697e -+ SIOCSHIWAT = 0x80047300 -+ SIOCSIF6LOWPAN = 0x802069c4 -+ SIOCSIFADDR = 0x8020690c -+ SIOCSIFALTMTU = 0x80206945 -+ SIOCSIFASYNCMAP = 0x8020697d -+ SIOCSIFBOND = 0x80206946 -+ SIOCSIFBRDADDR = 0x80206913 -+ SIOCSIFCAP = 0x8020695a -+ SIOCSIFDSTADDR = 0x8020690e -+ SIOCSIFFLAGS = 0x80206910 -+ SIOCSIFGENERIC = 0x80206939 -+ SIOCSIFKPI = 0x80206986 -+ SIOCSIFLLADDR = 0x8020693c -+ SIOCSIFMAC = 0x80206983 -+ SIOCSIFMEDIA = 0xc0206937 -+ SIOCSIFMETRIC = 0x80206918 -+ SIOCSIFMTU = 0x80206934 -+ SIOCSIFNETMASK = 0x80206916 -+ SIOCSIFPHYADDR = 0x8040693e -+ SIOCSIFPHYS = 0x80206936 -+ SIOCSIFVLAN = 0x8020697e -+ SIOCSLOWAT = 0x80047302 -+ SIOCSPGRP = 0x80047308 -+ SOCK_DGRAM = 0x2 -+ SOCK_MAXADDRLEN = 0xff -+ SOCK_RAW = 0x3 -+ SOCK_RDM = 0x4 -+ SOCK_SEQPACKET = 0x5 -+ SOCK_STREAM = 0x1 -+ SOL_LOCAL = 0x0 -+ SOL_SOCKET = 0xffff -+ SOMAXCONN = 0x80 -+ SO_ACCEPTCONN = 0x2 -+ SO_BROADCAST = 0x20 -+ SO_DEBUG = 0x1 -+ SO_DONTROUTE = 0x10 -+ SO_DONTTRUNC = 0x2000 -+ SO_ERROR = 0x1007 -+ SO_KEEPALIVE = 0x8 -+ SO_LABEL = 0x1010 -+ SO_LINGER = 0x80 -+ SO_LINGER_SEC = 0x1080 -+ SO_NETSVC_MARKING_LEVEL = 0x1119 -+ SO_NET_SERVICE_TYPE = 0x1116 -+ SO_NKE = 0x1021 -+ SO_NOADDRERR = 0x1023 -+ SO_NOSIGPIPE = 0x1022 -+ SO_NOTIFYCONFLICT = 0x1026 -+ SO_NP_EXTENSIONS = 0x1083 -+ SO_NREAD = 0x1020 -+ SO_NUMRCVPKT = 0x1112 -+ SO_NWRITE = 0x1024 -+ SO_OOBINLINE = 0x100 -+ SO_PEERLABEL = 0x1011 -+ SO_RANDOMPORT = 0x1082 -+ SO_RCVBUF = 0x1002 -+ SO_RCVLOWAT = 0x1004 -+ SO_RCVTIMEO = 0x1006 -+ SO_REUSEADDR = 0x4 -+ SO_REUSEPORT = 0x200 -+ SO_REUSESHAREUID = 0x1025 -+ SO_SNDBUF = 0x1001 -+ SO_SNDLOWAT = 0x1003 -+ SO_SNDTIMEO = 0x1005 -+ SO_TIMESTAMP = 0x400 -+ SO_TIMESTAMP_MONOTONIC = 0x800 -+ SO_TRACKER_ATTRIBUTE_FLAGS_APP_APPROVED = 0x1 -+ SO_TRACKER_ATTRIBUTE_FLAGS_DOMAIN_SHORT = 0x4 -+ SO_TRACKER_ATTRIBUTE_FLAGS_TRACKER = 0x2 -+ SO_TRACKER_TRANSPARENCY_VERSION = 0x3 -+ SO_TYPE = 0x1008 -+ SO_UPCALLCLOSEWAIT = 0x1027 -+ SO_USELOOPBACK = 0x40 -+ SO_WANTMORE = 0x4000 -+ SO_WANTOOBFLAG = 0x8000 -+ S_IEXEC = 0x40 -+ S_IFBLK = 0x6000 -+ S_IFCHR = 0x2000 -+ S_IFDIR = 0x4000 -+ S_IFIFO = 0x1000 -+ S_IFLNK = 0xa000 -+ S_IFMT = 0xf000 -+ S_IFREG = 0x8000 -+ S_IFSOCK = 0xc000 -+ S_IFWHT = 0xe000 -+ S_IREAD = 0x100 -+ S_IRGRP = 0x20 -+ S_IROTH = 0x4 -+ S_IRUSR = 0x100 -+ S_IRWXG = 0x38 -+ S_IRWXO = 0x7 -+ S_IRWXU = 0x1c0 -+ S_ISGID = 0x400 -+ S_ISTXT = 0x200 -+ S_ISUID = 0x800 -+ S_ISVTX = 0x200 -+ S_IWGRP = 0x10 -+ S_IWOTH = 0x2 -+ S_IWRITE = 0x80 -+ S_IWUSR = 0x80 -+ S_IXGRP = 0x8 -+ S_IXOTH = 0x1 -+ S_IXUSR = 0x40 -+ TAB0 = 0x0 -+ TAB1 = 0x400 -+ TAB2 = 0x800 -+ TAB3 = 0x4 -+ TABDLY = 0xc04 -+ TCIFLUSH = 0x1 -+ TCIOFF = 0x3 -+ TCIOFLUSH = 0x3 -+ TCION = 0x4 -+ TCOFLUSH = 0x2 -+ TCOOFF = 0x1 -+ TCOON = 0x2 -+ TCPOPT_CC = 0xb -+ TCPOPT_CCECHO = 0xd -+ TCPOPT_CCNEW = 0xc -+ TCPOPT_EOL = 0x0 -+ TCPOPT_FASTOPEN = 0x22 -+ TCPOPT_MAXSEG = 0x2 -+ TCPOPT_NOP = 0x1 -+ TCPOPT_SACK = 0x5 -+ TCPOPT_SACK_HDR = 0x1010500 -+ TCPOPT_SACK_PERMITTED = 0x4 -+ TCPOPT_SACK_PERMIT_HDR = 0x1010402 -+ TCPOPT_SIGNATURE = 0x13 -+ TCPOPT_TIMESTAMP = 0x8 -+ TCPOPT_TSTAMP_HDR = 0x101080a -+ TCPOPT_WINDOW = 0x3 -+ TCP_CONNECTIONTIMEOUT = 0x20 -+ TCP_CONNECTION_INFO = 0x106 -+ TCP_ENABLE_ECN = 0x104 -+ TCP_FASTOPEN = 0x105 -+ TCP_KEEPALIVE = 0x10 -+ TCP_KEEPCNT = 0x102 -+ TCP_KEEPINTVL = 0x101 -+ TCP_MAXHLEN = 0x3c -+ TCP_MAXOLEN = 0x28 -+ TCP_MAXSEG = 0x2 -+ TCP_MAXWIN = 0xffff -+ TCP_MAX_SACK = 0x4 -+ TCP_MAX_WINSHIFT = 0xe -+ TCP_MINMSS = 0xd8 -+ TCP_MSS = 0x200 -+ TCP_NODELAY = 0x1 -+ TCP_NOOPT = 0x8 -+ TCP_NOPUSH = 0x4 -+ TCP_NOTSENT_LOWAT = 0x201 -+ TCP_RXT_CONNDROPTIME = 0x80 -+ TCP_RXT_FINDROP = 0x100 -+ TCP_SENDMOREACKS = 0x103 -+ TCSAFLUSH = 0x2 -+ TIOCCBRK = 0x2000747a -+ TIOCCDTR = 0x20007478 -+ TIOCCONS = 0x80047462 -+ TIOCDCDTIMESTAMP = 0x40107458 -+ TIOCDRAIN = 0x2000745e -+ TIOCDSIMICROCODE = 0x20007455 -+ TIOCEXCL = 0x2000740d -+ TIOCEXT = 0x80047460 -+ TIOCFLUSH = 0x80047410 -+ TIOCGDRAINWAIT = 0x40047456 -+ TIOCGETA = 0x40487413 -+ TIOCGETD = 0x4004741a -+ TIOCGPGRP = 0x40047477 -+ TIOCGWINSZ = 0x40087468 -+ TIOCIXOFF = 0x20007480 -+ TIOCIXON = 0x20007481 -+ TIOCMBIC = 0x8004746b -+ TIOCMBIS = 0x8004746c -+ TIOCMGDTRWAIT = 0x4004745a -+ TIOCMGET = 0x4004746a -+ TIOCMODG = 0x40047403 -+ TIOCMODS = 0x80047404 -+ TIOCMSDTRWAIT = 0x8004745b -+ TIOCMSET = 0x8004746d -+ TIOCM_CAR = 0x40 -+ TIOCM_CD = 0x40 -+ TIOCM_CTS = 0x20 -+ TIOCM_DSR = 0x100 -+ TIOCM_DTR = 0x2 -+ TIOCM_LE = 0x1 -+ TIOCM_RI = 0x80 -+ TIOCM_RNG = 0x80 -+ TIOCM_RTS = 0x4 -+ TIOCM_SR = 0x10 -+ TIOCM_ST = 0x8 -+ TIOCNOTTY = 0x20007471 -+ TIOCNXCL = 0x2000740e -+ TIOCOUTQ = 0x40047473 -+ TIOCPKT = 0x80047470 -+ TIOCPKT_DATA = 0x0 -+ TIOCPKT_DOSTOP = 0x20 -+ TIOCPKT_FLUSHREAD = 0x1 -+ TIOCPKT_FLUSHWRITE = 0x2 -+ TIOCPKT_IOCTL = 0x40 -+ TIOCPKT_NOSTOP = 0x10 -+ TIOCPKT_START = 0x8 -+ TIOCPKT_STOP = 0x4 -+ TIOCPTYGNAME = 0x40807453 -+ TIOCPTYGRANT = 0x20007454 -+ TIOCPTYUNLK = 0x20007452 -+ TIOCREMOTE = 0x80047469 -+ TIOCSBRK = 0x2000747b -+ TIOCSCONS = 0x20007463 -+ TIOCSCTTY = 0x20007461 -+ TIOCSDRAINWAIT = 0x80047457 -+ TIOCSDTR = 0x20007479 -+ TIOCSETA = 0x80487414 -+ TIOCSETAF = 0x80487416 -+ TIOCSETAW = 0x80487415 -+ TIOCSETD = 0x8004741b -+ TIOCSIG = 0x2000745f -+ TIOCSPGRP = 0x80047476 -+ TIOCSTART = 0x2000746e -+ TIOCSTAT = 0x20007465 -+ TIOCSTI = 0x80017472 -+ TIOCSTOP = 0x2000746f -+ TIOCSWINSZ = 0x80087467 -+ TIOCTIMESTAMP = 0x40107459 -+ TIOCUCNTL = 0x80047466 -+ TOSTOP = 0x400000 -+ VDISCARD = 0xf -+ VDSUSP = 0xb -+ VEOF = 0x0 -+ VEOL = 0x1 -+ VEOL2 = 0x2 -+ VERASE = 0x3 -+ VINTR = 0x8 -+ VKILL = 0x5 -+ VLNEXT = 0xe -+ VMADDR_CID_ANY = 0xffffffff -+ VMADDR_CID_HOST = 0x2 -+ VMADDR_CID_HYPERVISOR = 0x0 -+ VMADDR_CID_RESERVED = 0x1 -+ VMADDR_PORT_ANY = 0xffffffff -+ VMIN = 0x10 -+ VM_LOADAVG = 0x2 -+ VM_MACHFACTOR = 0x4 -+ VM_MAXID = 0x6 -+ VM_METER = 0x1 -+ VM_SWAPUSAGE = 0x5 -+ VQUIT = 0x9 -+ VREPRINT = 0x6 -+ VSTART = 0xc -+ VSTATUS = 0x12 -+ VSTOP = 0xd -+ VSUSP = 0xa -+ VT0 = 0x0 -+ VT1 = 0x10000 -+ VTDLY = 0x10000 -+ VTIME = 0x11 -+ VWERASE = 0x4 -+ WCONTINUED = 0x10 -+ WCOREFLAG = 0x80 -+ WEXITED = 0x4 -+ WNOHANG = 0x1 -+ WNOWAIT = 0x20 -+ WORDSIZE = 0x40 -+ WSTOPPED = 0x8 -+ WUNTRACED = 0x2 -+ XATTR_CREATE = 0x2 -+ XATTR_NODEFAULT = 0x10 -+ XATTR_NOFOLLOW = 0x1 -+ XATTR_NOSECURITY = 0x8 -+ XATTR_REPLACE = 0x4 -+ XATTR_SHOWCOMPRESSION = 0x20 - ) - - // Errors -diff --git a/vendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go -index 6130471..17bba0e 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go -@@ -1,6 +1,7 @@ - // mkerrors.sh -m64 - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build amd64 && dragonfly - // +build amd64,dragonfly - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. -@@ -62,6 +63,7 @@ const ( - B28800 = 0x7080 - B300 = 0x12c - B38400 = 0x9600 -+ B460800 = 0x70800 - B4800 = 0x12c0 - B50 = 0x32 - B57600 = 0xe100 -@@ -69,12 +71,15 @@ const ( - B7200 = 0x1c20 - B75 = 0x4b - B76800 = 0x12c00 -+ B921600 = 0xe1000 - B9600 = 0x2580 -+ BIOCFEEDBACK = 0x8004427d - BIOCFLUSH = 0x20004268 - BIOCGBLEN = 0x40044266 - BIOCGDLT = 0x4004426a - BIOCGDLTLIST = 0xc0104279 - BIOCGETIF = 0x4020426b -+ BIOCGFEEDBACK = 0x4004427c - BIOCGHDRCMPLT = 0x40044274 - BIOCGRSIG = 0x40044272 - BIOCGRTIMEOUT = 0x4010426e -@@ -88,6 +93,7 @@ const ( - BIOCSETF = 0x80104267 - BIOCSETIF = 0x8020426c - BIOCSETWF = 0x8010427b -+ BIOCSFEEDBACK = 0x8004427d - BIOCSHDRCMPLT = 0x80044275 - BIOCSRSIG = 0x80044273 - BIOCSRTIMEOUT = 0x8010426d -@@ -125,6 +131,7 @@ const ( - BPF_MINBUFSIZE = 0x20 - BPF_MINOR_VERSION = 0x1 - BPF_MISC = 0x7 -+ BPF_MOD = 0x90 - BPF_MSH = 0xa0 - BPF_MUL = 0x20 - BPF_NEG = 0x80 -@@ -139,6 +146,7 @@ const ( - BPF_TXA = 0x80 - BPF_W = 0x0 - BPF_X = 0x8 -+ BPF_XOR = 0xa0 - BRKINT = 0x2 - CFLUSH = 0xf - CLOCAL = 0x8000 -@@ -156,6 +164,12 @@ const ( - CLOCK_UPTIME_FAST = 0x8 - CLOCK_UPTIME_PRECISE = 0x7 - CLOCK_VIRTUAL = 0x1 -+ CPUSTATES = 0x5 -+ CP_IDLE = 0x4 -+ CP_INTR = 0x3 -+ CP_NICE = 0x1 -+ CP_SYS = 0x2 -+ CP_USER = 0x0 - CREAD = 0x800 - CRTSCTS = 0x30000 - CS5 = 0x0 -@@ -175,6 +189,7 @@ const ( - DLT_A429 = 0xb8 - DLT_A653_ICM = 0xb9 - DLT_AIRONET_HEADER = 0x78 -+ DLT_AOS = 0xde - DLT_APPLE_IP_OVER_IEEE1394 = 0x8a - DLT_ARCNET = 0x7 - DLT_ARCNET_LINUX = 0x81 -@@ -184,22 +199,33 @@ const ( - DLT_AX25 = 0x3 - DLT_AX25_KISS = 0xca - DLT_BACNET_MS_TP = 0xa5 -+ DLT_BLUETOOTH_BREDR_BB = 0xff - DLT_BLUETOOTH_HCI_H4 = 0xbb - DLT_BLUETOOTH_HCI_H4_WITH_PHDR = 0xc9 -+ DLT_BLUETOOTH_LE_LL = 0xfb -+ DLT_BLUETOOTH_LE_LL_WITH_PHDR = 0x100 -+ DLT_BLUETOOTH_LINUX_MONITOR = 0xfe - DLT_CAN20B = 0xbe -+ DLT_CAN_SOCKETCAN = 0xe3 - DLT_CHAOS = 0x5 - DLT_CHDLC = 0x68 - DLT_CISCO_IOS = 0x76 - DLT_C_HDLC = 0x68 - DLT_C_HDLC_WITH_DIR = 0xcd -+ DLT_DBUS = 0xe7 -+ DLT_DECT = 0xdd - DLT_DOCSIS = 0x8f -+ DLT_DVB_CI = 0xeb - DLT_ECONET = 0x73 - DLT_EN10MB = 0x1 - DLT_EN3MB = 0x2 - DLT_ENC = 0x6d -+ DLT_EPON = 0x103 - DLT_ERF = 0xc5 - DLT_ERF_ETH = 0xaf - DLT_ERF_POS = 0xb0 -+ DLT_FC_2 = 0xe0 -+ DLT_FC_2_WITH_FRAME_DELIMS = 0xe1 - DLT_FDDI = 0xa - DLT_FLEXRAY = 0xd2 - DLT_FRELAY = 0x6b -@@ -209,6 +235,8 @@ const ( - DLT_GPF_F = 0xab - DLT_GPF_T = 0xaa - DLT_GPRS_LLC = 0xa9 -+ DLT_GSMTAP_ABIS = 0xda -+ DLT_GSMTAP_UM = 0xd9 - DLT_HHDLC = 0x79 - DLT_IBM_SN = 0x92 - DLT_IBM_SP = 0x91 -@@ -218,18 +246,28 @@ const ( - DLT_IEEE802_11_RADIO_AVS = 0xa3 - DLT_IEEE802_15_4 = 0xc3 - DLT_IEEE802_15_4_LINUX = 0xbf -+ DLT_IEEE802_15_4_NOFCS = 0xe6 - DLT_IEEE802_15_4_NONASK_PHY = 0xd7 - DLT_IEEE802_16_MAC_CPS = 0xbc - DLT_IEEE802_16_MAC_CPS_RADIO = 0xc1 -+ DLT_INFINIBAND = 0xf7 - DLT_IPFILTER = 0x74 - DLT_IPMB = 0xc7 - DLT_IPMB_LINUX = 0xd1 -+ DLT_IPMI_HPM_2 = 0x104 -+ DLT_IPNET = 0xe2 -+ DLT_IPOIB = 0xf2 -+ DLT_IPV4 = 0xe4 -+ DLT_IPV6 = 0xe5 - DLT_IP_OVER_FC = 0x7a -+ DLT_ISO_14443 = 0x108 - DLT_JUNIPER_ATM1 = 0x89 - DLT_JUNIPER_ATM2 = 0x87 -+ DLT_JUNIPER_ATM_CEMIC = 0xee - DLT_JUNIPER_CHDLC = 0xb5 - DLT_JUNIPER_ES = 0x84 - DLT_JUNIPER_ETHER = 0xb2 -+ DLT_JUNIPER_FIBRECHANNEL = 0xea - DLT_JUNIPER_FRELAY = 0xb4 - DLT_JUNIPER_GGSN = 0x85 - DLT_JUNIPER_ISM = 0xc2 -@@ -242,25 +280,40 @@ const ( - DLT_JUNIPER_PPPOE = 0xa7 - DLT_JUNIPER_PPPOE_ATM = 0xa8 - DLT_JUNIPER_SERVICES = 0x88 -+ DLT_JUNIPER_SRX_E2E = 0xe9 - DLT_JUNIPER_ST = 0xc8 - DLT_JUNIPER_VP = 0xb7 -+ DLT_JUNIPER_VS = 0xe8 - DLT_LAPB_WITH_DIR = 0xcf - DLT_LAPD = 0xcb - DLT_LIN = 0xd4 -+ DLT_LINUX_EVDEV = 0xd8 - DLT_LINUX_IRDA = 0x90 - DLT_LINUX_LAPD = 0xb1 - DLT_LINUX_SLL = 0x71 - DLT_LOOP = 0x6c - DLT_LTALK = 0x72 -+ DLT_MATCHING_MAX = 0x109 -+ DLT_MATCHING_MIN = 0x68 - DLT_MFR = 0xb6 - DLT_MOST = 0xd3 -+ DLT_MPEG_2_TS = 0xf3 -+ DLT_MPLS = 0xdb - DLT_MTP2 = 0x8c - DLT_MTP2_WITH_PHDR = 0x8b - DLT_MTP3 = 0x8d -+ DLT_MUX27010 = 0xec -+ DLT_NETANALYZER = 0xf0 -+ DLT_NETANALYZER_TRANSPARENT = 0xf1 -+ DLT_NETLINK = 0xfd -+ DLT_NFC_LLCP = 0xf5 -+ DLT_NFLOG = 0xef -+ DLT_NG40 = 0xf4 - DLT_NULL = 0x0 - DLT_PCI_EXP = 0x7d - DLT_PFLOG = 0x75 - DLT_PFSYNC = 0x12 -+ DLT_PKTAP = 0x102 - DLT_PPI = 0xc0 - DLT_PPP = 0x9 - DLT_PPP_BSDOS = 0x10 -@@ -269,22 +322,51 @@ const ( - DLT_PPP_SERIAL = 0x32 - DLT_PPP_WITH_DIR = 0xcc - DLT_PRISM_HEADER = 0x77 -+ DLT_PROFIBUS_DL = 0x101 - DLT_PRONET = 0x4 - DLT_RAIF1 = 0xc6 - DLT_RAW = 0xc -+ DLT_RDS = 0x109 - DLT_REDBACK_SMARTEDGE = 0x20 - DLT_RIO = 0x7c -+ DLT_RTAC_SERIAL = 0xfa - DLT_SCCP = 0x8e -+ DLT_SCTP = 0xf8 - DLT_SITA = 0xc4 - DLT_SLIP = 0x8 - DLT_SLIP_BSDOS = 0xf -+ DLT_STANAG_5066_D_PDU = 0xed - DLT_SUNATM = 0x7b - DLT_SYMANTEC_FIREWALL = 0x63 - DLT_TZSP = 0x80 - DLT_USB = 0xba -+ DLT_USBPCAP = 0xf9 -+ DLT_USB_FREEBSD = 0xba - DLT_USB_LINUX = 0xbd -+ DLT_USB_LINUX_MMAPPED = 0xdc -+ DLT_USER0 = 0x93 -+ DLT_USER1 = 0x94 -+ DLT_USER10 = 0x9d -+ DLT_USER11 = 0x9e -+ DLT_USER12 = 0x9f -+ DLT_USER13 = 0xa0 -+ DLT_USER14 = 0xa1 -+ DLT_USER15 = 0xa2 -+ DLT_USER2 = 0x95 -+ DLT_USER3 = 0x96 -+ DLT_USER4 = 0x97 -+ DLT_USER5 = 0x98 -+ DLT_USER6 = 0x99 -+ DLT_USER7 = 0x9a -+ DLT_USER8 = 0x9b -+ DLT_USER9 = 0x9c -+ DLT_WATTSTOPPER_DLM = 0x107 -+ DLT_WIHART = 0xdf -+ DLT_WIRESHARK_UPPER_PDU = 0xfc - DLT_X2E_SERIAL = 0xd5 - DLT_X2E_XORAYA = 0xd6 -+ DLT_ZWAVE_R1_R2 = 0x105 -+ DLT_ZWAVE_R3 = 0x106 - DT_BLK = 0x6 - DT_CHR = 0x2 - DT_DBF = 0xf -@@ -323,10 +405,11 @@ const ( - EV_EOF = 0x8000 - EV_ERROR = 0x4000 - EV_FLAG1 = 0x2000 -+ EV_HUP = 0x800 - EV_NODATA = 0x1000 - EV_ONESHOT = 0x10 - EV_RECEIPT = 0x40 -- EV_SYSFLAGS = 0xf000 -+ EV_SYSFLAGS = 0xf800 - EXTA = 0x4b00 - EXTB = 0x9600 - EXTEXIT_LWP = 0x10000 -@@ -365,8 +448,9 @@ const ( - IFF_ALLMULTI = 0x200 - IFF_ALTPHYS = 0x4000 - IFF_BROADCAST = 0x2 -- IFF_CANTCHANGE = 0x118e72 -+ IFF_CANTCHANGE = 0x318e72 - IFF_DEBUG = 0x4 -+ IFF_IDIRECT = 0x200000 - IFF_LINK0 = 0x1000 - IFF_LINK1 = 0x2000 - IFF_LINK2 = 0x4000 -@@ -441,7 +525,6 @@ const ( - IFT_EPLRS = 0x57 - IFT_ESCON = 0x49 - IFT_ETHER = 0x6 -- IFT_FAITH = 0xf2 - IFT_FAST = 0x7d - IFT_FASTETHER = 0x3e - IFT_FASTETHERFX = 0x45 -@@ -614,6 +697,7 @@ const ( - IN_CLASSD_NET = 0xf0000000 - IN_CLASSD_NSHIFT = 0x1c - IN_LOOPBACKNET = 0x7f -+ IN_RFC3021_MASK = 0xfffffffe - IPPROTO_3PC = 0x22 - IPPROTO_ADFS = 0x44 - IPPROTO_AH = 0x33 -@@ -735,7 +819,6 @@ const ( - IPV6_DEFHLIM = 0x40 - IPV6_DONTFRAG = 0x3e - IPV6_DSTOPTS = 0x32 -- IPV6_FAITH = 0x1d - IPV6_FLOWINFO_MASK = 0xffffff0f - IPV6_FLOWLABEL_MASK = 0xffff0f00 - IPV6_FRAGTTL = 0x78 -@@ -747,7 +830,6 @@ const ( - IPV6_HLIMDEC = 0x1 - IPV6_HOPLIMIT = 0x2f - IPV6_HOPOPTS = 0x31 -- IPV6_IPSEC_POLICY = 0x1c - IPV6_JOIN_GROUP = 0xc - IPV6_LEAVE_GROUP = 0xd - IPV6_MAXHLIM = 0xff -@@ -795,16 +877,22 @@ const ( - IP_DUMMYNET_DEL = 0x3d - IP_DUMMYNET_FLUSH = 0x3e - IP_DUMMYNET_GET = 0x40 -- IP_FAITH = 0x16 - IP_FW_ADD = 0x32 - IP_FW_DEL = 0x33 - IP_FW_FLUSH = 0x34 - IP_FW_GET = 0x36 - IP_FW_RESETLOG = 0x37 -+ IP_FW_TBL_ADD = 0x2a -+ IP_FW_TBL_CREATE = 0x28 -+ IP_FW_TBL_DEL = 0x2b -+ IP_FW_TBL_DESTROY = 0x29 -+ IP_FW_TBL_EXPIRE = 0x2f -+ IP_FW_TBL_FLUSH = 0x2c -+ IP_FW_TBL_GET = 0x2d -+ IP_FW_TBL_ZERO = 0x2e - IP_FW_X = 0x31 - IP_FW_ZERO = 0x35 - IP_HDRINCL = 0x2 -- IP_IPSEC_POLICY = 0x15 - IP_MAXPACKET = 0xffff - IP_MAX_MEMBERSHIPS = 0x14 - IP_MF = 0x2000 -@@ -1080,12 +1168,10 @@ const ( - RTM_MISS = 0x7 - RTM_NEWADDR = 0xc - RTM_NEWMADDR = 0xf -- RTM_OLDADD = 0x9 -- RTM_OLDDEL = 0xa - RTM_REDIRECT = 0x6 - RTM_RESOLVE = 0xb - RTM_RTTUNIT = 0xf4240 -- RTM_VERSION = 0x6 -+ RTM_VERSION = 0x7 - RTV_EXPIRE = 0x4 - RTV_HOPCOUNT = 0x2 - RTV_IWCAPSEGS = 0x400 -@@ -1106,13 +1192,13 @@ const ( - SHUT_RDWR = 0x2 - SHUT_WR = 0x1 - SIOCADDMULTI = 0x80206931 -- SIOCADDRT = 0x8040720a - SIOCAIFADDR = 0x8040691a -+ SIOCAIFGROUP = 0x80286987 - SIOCALIFADDR = 0x8118691b - SIOCATMARK = 0x40047307 - SIOCDELMULTI = 0x80206932 -- SIOCDELRT = 0x8040720b - SIOCDIFADDR = 0x80206919 -+ SIOCDIFGROUP = 0x80286989 - SIOCDIFPHYADDR = 0x80206949 - SIOCDLIFADDR = 0x8118691d - SIOCGDRVSPEC = 0xc028697b -@@ -1120,6 +1206,7 @@ const ( - SIOCGETVIFCNT = 0xc028720f - SIOCGHIWAT = 0x40047301 - SIOCGIFADDR = 0xc0206921 -+ SIOCGIFALIAS = 0xc0406929 - SIOCGIFBRDADDR = 0xc0206923 - SIOCGIFCAP = 0xc020691f - SIOCGIFCONF = 0xc0106924 -@@ -1128,6 +1215,7 @@ const ( - SIOCGIFFLAGS = 0xc0206911 - SIOCGIFGENERIC = 0xc020693a - SIOCGIFGMEMB = 0xc028698a -+ SIOCGIFGROUP = 0xc0286988 - SIOCGIFINDEX = 0xc0206920 - SIOCGIFMEDIA = 0xc0306938 - SIOCGIFMETRIC = 0xc0206917 -@@ -1194,6 +1282,7 @@ const ( - SO_RCVBUF = 0x1002 - SO_RCVLOWAT = 0x1004 - SO_RCVTIMEO = 0x1006 -+ SO_RERROR = 0x2000 - SO_REUSEADDR = 0x4 - SO_REUSEPORT = 0x200 - SO_SNDBUF = 0x1001 -@@ -1233,6 +1322,9 @@ const ( - S_IXGRP = 0x8 - S_IXOTH = 0x1 - S_IXUSR = 0x40 -+ TAB0 = 0x0 -+ TAB3 = 0x4 -+ TABDLY = 0x4 - TCIFLUSH = 0x1 - TCIOFF = 0x3 - TCIOFLUSH = 0x3 -@@ -1259,6 +1351,8 @@ const ( - TCP_NOPUSH = 0x4 - TCP_SIGNATURE_ENABLE = 0x10 - TCSAFLUSH = 0x2 -+ TIMER_ABSTIME = 0x1 -+ TIMER_RELTIME = 0x0 - TIOCCBRK = 0x2000747a - TIOCCDTR = 0x20007478 - TIOCCONS = 0x80047462 -@@ -1272,7 +1366,6 @@ const ( - TIOCGETD = 0x4004741a - TIOCGPGRP = 0x40047477 - TIOCGSID = 0x40047463 -- TIOCGSIZE = 0x40087468 - TIOCGWINSZ = 0x40087468 - TIOCISPTMASTER = 0x20007455 - TIOCMBIC = 0x8004746b -@@ -1317,7 +1410,6 @@ const ( - TIOCSETD = 0x8004741b - TIOCSIG = 0x2000745f - TIOCSPGRP = 0x80047476 -- TIOCSSIZE = 0x80087467 - TIOCSTART = 0x2000746e - TIOCSTAT = 0x20007465 - TIOCSTI = 0x80017472 -@@ -1326,6 +1418,8 @@ const ( - TIOCTIMESTAMP = 0x40107459 - TIOCUCNTL = 0x80047466 - TOSTOP = 0x400000 -+ UTIME_NOW = -0x1 -+ UTIME_OMIT = -0x2 - VCHECKPT = 0x13 - VDISCARD = 0xf - VDSUSP = 0xb -@@ -1350,9 +1444,12 @@ const ( - VWERASE = 0x4 - WCONTINUED = 0x4 - WCOREFLAG = 0x80 -+ WEXITED = 0x10 - WLINUXCLONE = 0x80000000 - WNOHANG = 0x1 -- WSTOPPED = 0x7f -+ WNOWAIT = 0x8 -+ WSTOPPED = 0x2 -+ WTRAPPED = 0x20 - WUNTRACED = 0x2 - ) - -@@ -1452,11 +1549,6 @@ const ( - ETIMEDOUT = syscall.Errno(0x3c) - ETOOMANYREFS = syscall.Errno(0x3b) - ETXTBSY = syscall.Errno(0x1a) -- EUNUSED94 = syscall.Errno(0x5e) -- EUNUSED95 = syscall.Errno(0x5f) -- EUNUSED96 = syscall.Errno(0x60) -- EUNUSED97 = syscall.Errno(0x61) -- EUNUSED98 = syscall.Errno(0x62) - EUSERS = syscall.Errno(0x44) - EWOULDBLOCK = syscall.Errno(0x23) - EXDEV = syscall.Errno(0x12) -@@ -1600,12 +1692,7 @@ var errorList = [...]struct { - {91, "ENOLINK", "link has been severed"}, - {92, "EPROTO", "protocol error"}, - {93, "ENOMEDIUM", "no medium found"}, -- {94, "EUNUSED94", "unknown error: 94"}, -- {95, "EUNUSED95", "unknown error: 95"}, -- {96, "EUNUSED96", "unknown error: 96"}, -- {97, "EUNUSED97", "unknown error: 97"}, -- {98, "EUNUSED98", "unknown error: 98"}, -- {99, "ELAST", "unknown error: 99"}, -+ {99, "EASYNC", "unknown error: 99"}, - } - - // Signal table -diff --git a/vendor/golang.org/x/sys/unix/zerrors_freebsd_386.go b/vendor/golang.org/x/sys/unix/zerrors_freebsd_386.go -index 8482458..f8c2c51 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_freebsd_386.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_freebsd_386.go -@@ -1,6 +1,7 @@ - // mkerrors.sh -m32 - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build 386 && freebsd - // +build 386,freebsd - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. -@@ -150,6 +151,7 @@ const ( - BIOCSETF = 0x80084267 - BIOCSETFNR = 0x80084282 - BIOCSETIF = 0x8020426c -+ BIOCSETVLANPCP = 0x80044285 - BIOCSETWF = 0x8008427b - BIOCSETZBUF = 0x800c4281 - BIOCSHDRCMPLT = 0x80044275 -@@ -339,6 +341,12 @@ const ( - CLOCK_UPTIME_FAST = 0x8 - CLOCK_UPTIME_PRECISE = 0x7 - CLOCK_VIRTUAL = 0x1 -+ CPUSTATES = 0x5 -+ CP_IDLE = 0x4 -+ CP_INTR = 0x3 -+ CP_NICE = 0x1 -+ CP_SYS = 0x2 -+ CP_USER = 0x0 - CREAD = 0x800 - CRTSCTS = 0x30000 - CS5 = 0x0 -@@ -440,7 +448,7 @@ const ( - DLT_IEEE802_16_MAC_CPS_RADIO = 0xc1 - DLT_INFINIBAND = 0xf7 - DLT_IPFILTER = 0x74 -- DLT_IPMB = 0xc7 -+ DLT_IPMB_KONTRON = 0xc7 - DLT_IPMB_LINUX = 0xd1 - DLT_IPMI_HPM_2 = 0x104 - DLT_IPNET = 0xe2 -@@ -480,10 +488,11 @@ const ( - DLT_LINUX_LAPD = 0xb1 - DLT_LINUX_PPP_WITHDIRECTION = 0xa6 - DLT_LINUX_SLL = 0x71 -+ DLT_LINUX_SLL2 = 0x114 - DLT_LOOP = 0x6c - DLT_LORATAP = 0x10e - DLT_LTALK = 0x72 -- DLT_MATCHING_MAX = 0x113 -+ DLT_MATCHING_MAX = 0x114 - DLT_MATCHING_MIN = 0x68 - DLT_MFR = 0xb6 - DLT_MOST = 0xd3 -@@ -727,6 +736,7 @@ const ( - IPPROTO_CMTP = 0x26 - IPPROTO_CPHB = 0x49 - IPPROTO_CPNX = 0x48 -+ IPPROTO_DCCP = 0x21 - IPPROTO_DDP = 0x25 - IPPROTO_DGP = 0x56 - IPPROTO_DIVERT = 0x102 -@@ -807,7 +817,6 @@ const ( - IPPROTO_SCTP = 0x84 - IPPROTO_SDRP = 0x2a - IPPROTO_SEND = 0x103 -- IPPROTO_SEP = 0x21 - IPPROTO_SHIM6 = 0x8c - IPPROTO_SKIP = 0x39 - IPPROTO_SPACER = 0x7fff -@@ -904,6 +913,7 @@ const ( - IPV6_V6ONLY = 0x1b - IPV6_VERSION = 0x60 - IPV6_VERSION_MASK = 0xf0 -+ IPV6_VLAN_PCP = 0x4b - IP_ADD_MEMBERSHIP = 0xc - IP_ADD_SOURCE_MEMBERSHIP = 0x46 - IP_BINDANY = 0x18 -@@ -982,8 +992,12 @@ const ( - IP_TOS = 0x3 - IP_TTL = 0x4 - IP_UNBLOCK_SOURCE = 0x49 -+ IP_VLAN_PCP = 0x4b - ISIG = 0x80 - ISTRIP = 0x20 -+ ITIMER_PROF = 0x2 -+ ITIMER_REAL = 0x0 -+ ITIMER_VIRTUAL = 0x1 - IXANY = 0x800 - IXOFF = 0x400 - IXON = 0x200 -@@ -991,6 +1005,10 @@ const ( - KERN_OSRELEASE = 0x2 - KERN_OSTYPE = 0x1 - KERN_VERSION = 0x4 -+ LOCAL_CONNWAIT = 0x4 -+ LOCAL_CREDS = 0x2 -+ LOCAL_PEERCRED = 0x1 -+ LOCAL_VENDOR = 0x80000000 - LOCK_EX = 0x2 - LOCK_NB = 0x4 - LOCK_SH = 0x1 -@@ -1167,6 +1185,8 @@ const ( - O_NONBLOCK = 0x4 - O_RDONLY = 0x0 - O_RDWR = 0x2 -+ O_RESOLVE_BENEATH = 0x800000 -+ O_SEARCH = 0x40000 - O_SHLOCK = 0x10 - O_SYNC = 0x80 - O_TRUNC = 0x400 -@@ -1177,6 +1197,10 @@ const ( - PARMRK = 0x8 - PARODD = 0x2000 - PENDIN = 0x20000000 -+ PIOD_READ_D = 0x1 -+ PIOD_READ_I = 0x3 -+ PIOD_WRITE_D = 0x2 -+ PIOD_WRITE_I = 0x4 - PRIO_PGRP = 0x1 - PRIO_PROCESS = 0x0 - PRIO_USER = 0x2 -@@ -1184,6 +1208,60 @@ const ( - PROT_NONE = 0x0 - PROT_READ = 0x1 - PROT_WRITE = 0x2 -+ PTRACE_DEFAULT = 0x1 -+ PTRACE_EXEC = 0x1 -+ PTRACE_FORK = 0x8 -+ PTRACE_LWP = 0x10 -+ PTRACE_SCE = 0x2 -+ PTRACE_SCX = 0x4 -+ PTRACE_SYSCALL = 0x6 -+ PTRACE_VFORK = 0x20 -+ PT_ATTACH = 0xa -+ PT_CLEARSTEP = 0x10 -+ PT_CONTINUE = 0x7 -+ PT_DETACH = 0xb -+ PT_FIRSTMACH = 0x40 -+ PT_FOLLOW_FORK = 0x17 -+ PT_GETDBREGS = 0x25 -+ PT_GETFPREGS = 0x23 -+ PT_GETFSBASE = 0x47 -+ PT_GETGSBASE = 0x49 -+ PT_GETLWPLIST = 0xf -+ PT_GETNUMLWPS = 0xe -+ PT_GETREGS = 0x21 -+ PT_GETXMMREGS = 0x40 -+ PT_GETXSTATE = 0x45 -+ PT_GETXSTATE_INFO = 0x44 -+ PT_GET_EVENT_MASK = 0x19 -+ PT_GET_SC_ARGS = 0x1b -+ PT_GET_SC_RET = 0x1c -+ PT_IO = 0xc -+ PT_KILL = 0x8 -+ PT_LWPINFO = 0xd -+ PT_LWP_EVENTS = 0x18 -+ PT_READ_D = 0x2 -+ PT_READ_I = 0x1 -+ PT_RESUME = 0x13 -+ PT_SETDBREGS = 0x26 -+ PT_SETFPREGS = 0x24 -+ PT_SETFSBASE = 0x48 -+ PT_SETGSBASE = 0x4a -+ PT_SETREGS = 0x22 -+ PT_SETSTEP = 0x11 -+ PT_SETXMMREGS = 0x41 -+ PT_SETXSTATE = 0x46 -+ PT_SET_EVENT_MASK = 0x1a -+ PT_STEP = 0x9 -+ PT_SUSPEND = 0x12 -+ PT_SYSCALL = 0x16 -+ PT_TO_SCE = 0x14 -+ PT_TO_SCX = 0x15 -+ PT_TRACE_ME = 0x0 -+ PT_VM_ENTRY = 0x29 -+ PT_VM_TIMESTAMP = 0x28 -+ PT_WRITE_D = 0x5 -+ PT_WRITE_I = 0x4 -+ P_ZONEID = 0xc - RLIMIT_AS = 0xa - RLIMIT_CORE = 0x4 - RLIMIT_CPU = 0x0 -@@ -1285,6 +1363,11 @@ const ( - SCM_RIGHTS = 0x1 - SCM_TIMESTAMP = 0x2 - SCM_TIME_INFO = 0x7 -+ SEEK_CUR = 0x1 -+ SEEK_DATA = 0x3 -+ SEEK_END = 0x2 -+ SEEK_HOLE = 0x4 -+ SEEK_SET = 0x0 - SHUT_RD = 0x0 - SHUT_RDWR = 0x2 - SHUT_WR = 0x1 -@@ -1303,10 +1386,12 @@ const ( - SIOCGHWADDR = 0xc020693e - SIOCGI2C = 0xc020693d - SIOCGIFADDR = 0xc0206921 -+ SIOCGIFALIAS = 0xc044692d - SIOCGIFBRDADDR = 0xc0206923 - SIOCGIFCAP = 0xc020691f - SIOCGIFCONF = 0xc0086924 - SIOCGIFDESCR = 0xc020692a -+ SIOCGIFDOWNREASON = 0xc058699a - SIOCGIFDSTADDR = 0xc0206922 - SIOCGIFFIB = 0xc020695c - SIOCGIFFLAGS = 0xc0206911 -@@ -1369,6 +1454,7 @@ const ( - SOCK_RDM = 0x4 - SOCK_SEQPACKET = 0x5 - SOCK_STREAM = 0x1 -+ SOL_LOCAL = 0x0 - SOL_SOCKET = 0xffff - SOMAXCONN = 0x80 - SO_ACCEPTCONN = 0x2 -@@ -1396,6 +1482,7 @@ const ( - SO_RCVBUF = 0x1002 - SO_RCVLOWAT = 0x1004 - SO_RCVTIMEO = 0x1006 -+ SO_RERROR = 0x20000 - SO_REUSEADDR = 0x4 - SO_REUSEPORT = 0x200 - SO_REUSEPORT_LB = 0x10000 -@@ -1454,22 +1541,40 @@ const ( - TCOFLUSH = 0x2 - TCOOFF = 0x1 - TCOON = 0x2 -+ TCPOPT_EOL = 0x0 -+ TCPOPT_FAST_OPEN = 0x22 -+ TCPOPT_MAXSEG = 0x2 -+ TCPOPT_NOP = 0x1 -+ TCPOPT_PAD = 0x0 -+ TCPOPT_SACK = 0x5 -+ TCPOPT_SACK_PERMITTED = 0x4 -+ TCPOPT_SIGNATURE = 0x13 -+ TCPOPT_TIMESTAMP = 0x8 -+ TCPOPT_WINDOW = 0x3 - TCP_BBR_ACK_COMP_ALG = 0x448 -+ TCP_BBR_ALGORITHM = 0x43b - TCP_BBR_DRAIN_INC_EXTRA = 0x43c - TCP_BBR_DRAIN_PG = 0x42e - TCP_BBR_EXTRA_GAIN = 0x449 -+ TCP_BBR_EXTRA_STATE = 0x453 -+ TCP_BBR_FLOOR_MIN_TSO = 0x454 -+ TCP_BBR_HDWR_PACE = 0x451 -+ TCP_BBR_HOLD_TARGET = 0x436 - TCP_BBR_IWINTSO = 0x42b - TCP_BBR_LOWGAIN_FD = 0x436 - TCP_BBR_LOWGAIN_HALF = 0x435 - TCP_BBR_LOWGAIN_THRESH = 0x434 - TCP_BBR_MAX_RTO = 0x439 - TCP_BBR_MIN_RTO = 0x438 -+ TCP_BBR_MIN_TOPACEOUT = 0x455 - TCP_BBR_ONE_RETRAN = 0x431 - TCP_BBR_PACE_CROSS = 0x442 - TCP_BBR_PACE_DEL_TAR = 0x43f -+ TCP_BBR_PACE_OH = 0x435 - TCP_BBR_PACE_PER_SEC = 0x43e - TCP_BBR_PACE_SEG_MAX = 0x440 - TCP_BBR_PACE_SEG_MIN = 0x441 -+ TCP_BBR_POLICER_DETECT = 0x457 - TCP_BBR_PROBE_RTT_GAIN = 0x44d - TCP_BBR_PROBE_RTT_INT = 0x430 - TCP_BBR_PROBE_RTT_LEN = 0x44e -@@ -1478,12 +1583,18 @@ const ( - TCP_BBR_REC_OVER_HPTS = 0x43a - TCP_BBR_RETRAN_WTSO = 0x44b - TCP_BBR_RWND_IS_APP = 0x42f -+ TCP_BBR_SEND_IWND_IN_TSO = 0x44f - TCP_BBR_STARTUP_EXIT_EPOCH = 0x43d - TCP_BBR_STARTUP_LOSS_EXIT = 0x432 - TCP_BBR_STARTUP_PG = 0x42d -+ TCP_BBR_TMR_PACE_OH = 0x448 -+ TCP_BBR_TSLIMITS = 0x434 -+ TCP_BBR_TSTMP_RAISES = 0x456 - TCP_BBR_UNLIMITED = 0x43b - TCP_BBR_USEDEL_RATE = 0x437 - TCP_BBR_USE_LOWGAIN = 0x433 -+ TCP_BBR_USE_RACK_CHEAT = 0x450 -+ TCP_BBR_UTTER_MAX_TSO = 0x452 - TCP_CA_NAME_MAX = 0x10 - TCP_CCALGOOPT = 0x41 - TCP_CONGESTION = 0x40 -@@ -1523,6 +1634,7 @@ const ( - TCP_PCAP_OUT = 0x800 - TCP_RACK_EARLY_RECOV = 0x423 - TCP_RACK_EARLY_SEG = 0x424 -+ TCP_RACK_GP_INCREASE = 0x446 - TCP_RACK_IDLE_REDUCE_HIGH = 0x444 - TCP_RACK_MIN_PACE = 0x445 - TCP_RACK_MIN_PACE_SEG = 0x446 -@@ -1536,7 +1648,6 @@ const ( - TCP_RACK_PRR_SENDALOT = 0x421 - TCP_RACK_REORD_FADE = 0x426 - TCP_RACK_REORD_THRESH = 0x425 -- TCP_RACK_SESS_CWV = 0x42a - TCP_RACK_TLP_INC_VAR = 0x429 - TCP_RACK_TLP_REDUCE = 0x41c - TCP_RACK_TLP_THRESH = 0x427 -@@ -1676,12 +1787,13 @@ const ( - EIDRM = syscall.Errno(0x52) - EILSEQ = syscall.Errno(0x56) - EINPROGRESS = syscall.Errno(0x24) -+ EINTEGRITY = syscall.Errno(0x61) - EINTR = syscall.Errno(0x4) - EINVAL = syscall.Errno(0x16) - EIO = syscall.Errno(0x5) - EISCONN = syscall.Errno(0x38) - EISDIR = syscall.Errno(0x15) -- ELAST = syscall.Errno(0x60) -+ ELAST = syscall.Errno(0x61) - ELOOP = syscall.Errno(0x3e) - EMFILE = syscall.Errno(0x18) - EMLINK = syscall.Errno(0x1f) -@@ -1824,7 +1936,7 @@ var errorList = [...]struct { - {32, "EPIPE", "broken pipe"}, - {33, "EDOM", "numerical argument out of domain"}, - {34, "ERANGE", "result too large"}, -- {35, "EAGAIN", "resource temporarily unavailable"}, -+ {35, "EWOULDBLOCK", "resource temporarily unavailable"}, - {36, "EINPROGRESS", "operation now in progress"}, - {37, "EALREADY", "operation already in progress"}, - {38, "ENOTSOCK", "socket operation on non-socket"}, -@@ -1886,6 +1998,7 @@ var errorList = [...]struct { - {94, "ECAPMODE", "not permitted in capability mode"}, - {95, "ENOTRECOVERABLE", "state not recoverable"}, - {96, "EOWNERDEAD", "previous owner died"}, -+ {97, "EINTEGRITY", "integrity check failed"}, - } - - // Signal table -diff --git a/vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go -index 4acd101..96310c3 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go -@@ -1,6 +1,7 @@ - // mkerrors.sh -m64 - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build amd64 && freebsd - // +build amd64,freebsd - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. -@@ -150,6 +151,7 @@ const ( - BIOCSETF = 0x80104267 - BIOCSETFNR = 0x80104282 - BIOCSETIF = 0x8020426c -+ BIOCSETVLANPCP = 0x80044285 - BIOCSETWF = 0x8010427b - BIOCSETZBUF = 0x80184281 - BIOCSHDRCMPLT = 0x80044275 -@@ -339,6 +341,12 @@ const ( - CLOCK_UPTIME_FAST = 0x8 - CLOCK_UPTIME_PRECISE = 0x7 - CLOCK_VIRTUAL = 0x1 -+ CPUSTATES = 0x5 -+ CP_IDLE = 0x4 -+ CP_INTR = 0x3 -+ CP_NICE = 0x1 -+ CP_SYS = 0x2 -+ CP_USER = 0x0 - CREAD = 0x800 - CRTSCTS = 0x30000 - CS5 = 0x0 -@@ -440,7 +448,7 @@ const ( - DLT_IEEE802_16_MAC_CPS_RADIO = 0xc1 - DLT_INFINIBAND = 0xf7 - DLT_IPFILTER = 0x74 -- DLT_IPMB = 0xc7 -+ DLT_IPMB_KONTRON = 0xc7 - DLT_IPMB_LINUX = 0xd1 - DLT_IPMI_HPM_2 = 0x104 - DLT_IPNET = 0xe2 -@@ -480,10 +488,11 @@ const ( - DLT_LINUX_LAPD = 0xb1 - DLT_LINUX_PPP_WITHDIRECTION = 0xa6 - DLT_LINUX_SLL = 0x71 -+ DLT_LINUX_SLL2 = 0x114 - DLT_LOOP = 0x6c - DLT_LORATAP = 0x10e - DLT_LTALK = 0x72 -- DLT_MATCHING_MAX = 0x113 -+ DLT_MATCHING_MAX = 0x114 - DLT_MATCHING_MIN = 0x68 - DLT_MFR = 0xb6 - DLT_MOST = 0xd3 -@@ -727,6 +736,7 @@ const ( - IPPROTO_CMTP = 0x26 - IPPROTO_CPHB = 0x49 - IPPROTO_CPNX = 0x48 -+ IPPROTO_DCCP = 0x21 - IPPROTO_DDP = 0x25 - IPPROTO_DGP = 0x56 - IPPROTO_DIVERT = 0x102 -@@ -807,7 +817,6 @@ const ( - IPPROTO_SCTP = 0x84 - IPPROTO_SDRP = 0x2a - IPPROTO_SEND = 0x103 -- IPPROTO_SEP = 0x21 - IPPROTO_SHIM6 = 0x8c - IPPROTO_SKIP = 0x39 - IPPROTO_SPACER = 0x7fff -@@ -904,6 +913,7 @@ const ( - IPV6_V6ONLY = 0x1b - IPV6_VERSION = 0x60 - IPV6_VERSION_MASK = 0xf0 -+ IPV6_VLAN_PCP = 0x4b - IP_ADD_MEMBERSHIP = 0xc - IP_ADD_SOURCE_MEMBERSHIP = 0x46 - IP_BINDANY = 0x18 -@@ -982,8 +992,12 @@ const ( - IP_TOS = 0x3 - IP_TTL = 0x4 - IP_UNBLOCK_SOURCE = 0x49 -+ IP_VLAN_PCP = 0x4b - ISIG = 0x80 - ISTRIP = 0x20 -+ ITIMER_PROF = 0x2 -+ ITIMER_REAL = 0x0 -+ ITIMER_VIRTUAL = 0x1 - IXANY = 0x800 - IXOFF = 0x400 - IXON = 0x200 -@@ -991,6 +1005,10 @@ const ( - KERN_OSRELEASE = 0x2 - KERN_OSTYPE = 0x1 - KERN_VERSION = 0x4 -+ LOCAL_CONNWAIT = 0x4 -+ LOCAL_CREDS = 0x2 -+ LOCAL_PEERCRED = 0x1 -+ LOCAL_VENDOR = 0x80000000 - LOCK_EX = 0x2 - LOCK_NB = 0x4 - LOCK_SH = 0x1 -@@ -1168,6 +1186,8 @@ const ( - O_NONBLOCK = 0x4 - O_RDONLY = 0x0 - O_RDWR = 0x2 -+ O_RESOLVE_BENEATH = 0x800000 -+ O_SEARCH = 0x40000 - O_SHLOCK = 0x10 - O_SYNC = 0x80 - O_TRUNC = 0x400 -@@ -1178,6 +1198,10 @@ const ( - PARMRK = 0x8 - PARODD = 0x2000 - PENDIN = 0x20000000 -+ PIOD_READ_D = 0x1 -+ PIOD_READ_I = 0x3 -+ PIOD_WRITE_D = 0x2 -+ PIOD_WRITE_I = 0x4 - PRIO_PGRP = 0x1 - PRIO_PROCESS = 0x0 - PRIO_USER = 0x2 -@@ -1185,6 +1209,58 @@ const ( - PROT_NONE = 0x0 - PROT_READ = 0x1 - PROT_WRITE = 0x2 -+ PTRACE_DEFAULT = 0x1 -+ PTRACE_EXEC = 0x1 -+ PTRACE_FORK = 0x8 -+ PTRACE_LWP = 0x10 -+ PTRACE_SCE = 0x2 -+ PTRACE_SCX = 0x4 -+ PTRACE_SYSCALL = 0x6 -+ PTRACE_VFORK = 0x20 -+ PT_ATTACH = 0xa -+ PT_CLEARSTEP = 0x10 -+ PT_CONTINUE = 0x7 -+ PT_DETACH = 0xb -+ PT_FIRSTMACH = 0x40 -+ PT_FOLLOW_FORK = 0x17 -+ PT_GETDBREGS = 0x25 -+ PT_GETFPREGS = 0x23 -+ PT_GETFSBASE = 0x47 -+ PT_GETGSBASE = 0x49 -+ PT_GETLWPLIST = 0xf -+ PT_GETNUMLWPS = 0xe -+ PT_GETREGS = 0x21 -+ PT_GETXSTATE = 0x45 -+ PT_GETXSTATE_INFO = 0x44 -+ PT_GET_EVENT_MASK = 0x19 -+ PT_GET_SC_ARGS = 0x1b -+ PT_GET_SC_RET = 0x1c -+ PT_IO = 0xc -+ PT_KILL = 0x8 -+ PT_LWPINFO = 0xd -+ PT_LWP_EVENTS = 0x18 -+ PT_READ_D = 0x2 -+ PT_READ_I = 0x1 -+ PT_RESUME = 0x13 -+ PT_SETDBREGS = 0x26 -+ PT_SETFPREGS = 0x24 -+ PT_SETFSBASE = 0x48 -+ PT_SETGSBASE = 0x4a -+ PT_SETREGS = 0x22 -+ PT_SETSTEP = 0x11 -+ PT_SETXSTATE = 0x46 -+ PT_SET_EVENT_MASK = 0x1a -+ PT_STEP = 0x9 -+ PT_SUSPEND = 0x12 -+ PT_SYSCALL = 0x16 -+ PT_TO_SCE = 0x14 -+ PT_TO_SCX = 0x15 -+ PT_TRACE_ME = 0x0 -+ PT_VM_ENTRY = 0x29 -+ PT_VM_TIMESTAMP = 0x28 -+ PT_WRITE_D = 0x5 -+ PT_WRITE_I = 0x4 -+ P_ZONEID = 0xc - RLIMIT_AS = 0xa - RLIMIT_CORE = 0x4 - RLIMIT_CPU = 0x0 -@@ -1286,6 +1362,11 @@ const ( - SCM_RIGHTS = 0x1 - SCM_TIMESTAMP = 0x2 - SCM_TIME_INFO = 0x7 -+ SEEK_CUR = 0x1 -+ SEEK_DATA = 0x3 -+ SEEK_END = 0x2 -+ SEEK_HOLE = 0x4 -+ SEEK_SET = 0x0 - SHUT_RD = 0x0 - SHUT_RDWR = 0x2 - SHUT_WR = 0x1 -@@ -1304,10 +1385,12 @@ const ( - SIOCGHWADDR = 0xc020693e - SIOCGI2C = 0xc020693d - SIOCGIFADDR = 0xc0206921 -+ SIOCGIFALIAS = 0xc044692d - SIOCGIFBRDADDR = 0xc0206923 - SIOCGIFCAP = 0xc020691f - SIOCGIFCONF = 0xc0106924 - SIOCGIFDESCR = 0xc020692a -+ SIOCGIFDOWNREASON = 0xc058699a - SIOCGIFDSTADDR = 0xc0206922 - SIOCGIFFIB = 0xc020695c - SIOCGIFFLAGS = 0xc0206911 -@@ -1370,6 +1453,7 @@ const ( - SOCK_RDM = 0x4 - SOCK_SEQPACKET = 0x5 - SOCK_STREAM = 0x1 -+ SOL_LOCAL = 0x0 - SOL_SOCKET = 0xffff - SOMAXCONN = 0x80 - SO_ACCEPTCONN = 0x2 -@@ -1397,6 +1481,7 @@ const ( - SO_RCVBUF = 0x1002 - SO_RCVLOWAT = 0x1004 - SO_RCVTIMEO = 0x1006 -+ SO_RERROR = 0x20000 - SO_REUSEADDR = 0x4 - SO_REUSEPORT = 0x200 - SO_REUSEPORT_LB = 0x10000 -@@ -1455,22 +1540,40 @@ const ( - TCOFLUSH = 0x2 - TCOOFF = 0x1 - TCOON = 0x2 -+ TCPOPT_EOL = 0x0 -+ TCPOPT_FAST_OPEN = 0x22 -+ TCPOPT_MAXSEG = 0x2 -+ TCPOPT_NOP = 0x1 -+ TCPOPT_PAD = 0x0 -+ TCPOPT_SACK = 0x5 -+ TCPOPT_SACK_PERMITTED = 0x4 -+ TCPOPT_SIGNATURE = 0x13 -+ TCPOPT_TIMESTAMP = 0x8 -+ TCPOPT_WINDOW = 0x3 - TCP_BBR_ACK_COMP_ALG = 0x448 -+ TCP_BBR_ALGORITHM = 0x43b - TCP_BBR_DRAIN_INC_EXTRA = 0x43c - TCP_BBR_DRAIN_PG = 0x42e - TCP_BBR_EXTRA_GAIN = 0x449 -+ TCP_BBR_EXTRA_STATE = 0x453 -+ TCP_BBR_FLOOR_MIN_TSO = 0x454 -+ TCP_BBR_HDWR_PACE = 0x451 -+ TCP_BBR_HOLD_TARGET = 0x436 - TCP_BBR_IWINTSO = 0x42b - TCP_BBR_LOWGAIN_FD = 0x436 - TCP_BBR_LOWGAIN_HALF = 0x435 - TCP_BBR_LOWGAIN_THRESH = 0x434 - TCP_BBR_MAX_RTO = 0x439 - TCP_BBR_MIN_RTO = 0x438 -+ TCP_BBR_MIN_TOPACEOUT = 0x455 - TCP_BBR_ONE_RETRAN = 0x431 - TCP_BBR_PACE_CROSS = 0x442 - TCP_BBR_PACE_DEL_TAR = 0x43f -+ TCP_BBR_PACE_OH = 0x435 - TCP_BBR_PACE_PER_SEC = 0x43e - TCP_BBR_PACE_SEG_MAX = 0x440 - TCP_BBR_PACE_SEG_MIN = 0x441 -+ TCP_BBR_POLICER_DETECT = 0x457 - TCP_BBR_PROBE_RTT_GAIN = 0x44d - TCP_BBR_PROBE_RTT_INT = 0x430 - TCP_BBR_PROBE_RTT_LEN = 0x44e -@@ -1479,12 +1582,18 @@ const ( - TCP_BBR_REC_OVER_HPTS = 0x43a - TCP_BBR_RETRAN_WTSO = 0x44b - TCP_BBR_RWND_IS_APP = 0x42f -+ TCP_BBR_SEND_IWND_IN_TSO = 0x44f - TCP_BBR_STARTUP_EXIT_EPOCH = 0x43d - TCP_BBR_STARTUP_LOSS_EXIT = 0x432 - TCP_BBR_STARTUP_PG = 0x42d -+ TCP_BBR_TMR_PACE_OH = 0x448 -+ TCP_BBR_TSLIMITS = 0x434 -+ TCP_BBR_TSTMP_RAISES = 0x456 - TCP_BBR_UNLIMITED = 0x43b - TCP_BBR_USEDEL_RATE = 0x437 - TCP_BBR_USE_LOWGAIN = 0x433 -+ TCP_BBR_USE_RACK_CHEAT = 0x450 -+ TCP_BBR_UTTER_MAX_TSO = 0x452 - TCP_CA_NAME_MAX = 0x10 - TCP_CCALGOOPT = 0x41 - TCP_CONGESTION = 0x40 -@@ -1524,6 +1633,7 @@ const ( - TCP_PCAP_OUT = 0x800 - TCP_RACK_EARLY_RECOV = 0x423 - TCP_RACK_EARLY_SEG = 0x424 -+ TCP_RACK_GP_INCREASE = 0x446 - TCP_RACK_IDLE_REDUCE_HIGH = 0x444 - TCP_RACK_MIN_PACE = 0x445 - TCP_RACK_MIN_PACE_SEG = 0x446 -@@ -1537,7 +1647,6 @@ const ( - TCP_RACK_PRR_SENDALOT = 0x421 - TCP_RACK_REORD_FADE = 0x426 - TCP_RACK_REORD_THRESH = 0x425 -- TCP_RACK_SESS_CWV = 0x42a - TCP_RACK_TLP_INC_VAR = 0x429 - TCP_RACK_TLP_REDUCE = 0x41c - TCP_RACK_TLP_THRESH = 0x427 -@@ -1675,12 +1784,13 @@ const ( - EIDRM = syscall.Errno(0x52) - EILSEQ = syscall.Errno(0x56) - EINPROGRESS = syscall.Errno(0x24) -+ EINTEGRITY = syscall.Errno(0x61) - EINTR = syscall.Errno(0x4) - EINVAL = syscall.Errno(0x16) - EIO = syscall.Errno(0x5) - EISCONN = syscall.Errno(0x38) - EISDIR = syscall.Errno(0x15) -- ELAST = syscall.Errno(0x60) -+ ELAST = syscall.Errno(0x61) - ELOOP = syscall.Errno(0x3e) - EMFILE = syscall.Errno(0x18) - EMLINK = syscall.Errno(0x1f) -@@ -1823,7 +1933,7 @@ var errorList = [...]struct { - {32, "EPIPE", "broken pipe"}, - {33, "EDOM", "numerical argument out of domain"}, - {34, "ERANGE", "result too large"}, -- {35, "EAGAIN", "resource temporarily unavailable"}, -+ {35, "EWOULDBLOCK", "resource temporarily unavailable"}, - {36, "EINPROGRESS", "operation now in progress"}, - {37, "EALREADY", "operation already in progress"}, - {38, "ENOTSOCK", "socket operation on non-socket"}, -@@ -1885,6 +1995,7 @@ var errorList = [...]struct { - {94, "ECAPMODE", "not permitted in capability mode"}, - {95, "ENOTRECOVERABLE", "state not recoverable"}, - {96, "EOWNERDEAD", "previous owner died"}, -+ {97, "EINTEGRITY", "integrity check failed"}, - } - - // Signal table -diff --git a/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm.go b/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm.go -index e471987..777b69d 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm.go -@@ -1,6 +1,7 @@ - // mkerrors.sh - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build arm && freebsd - // +build arm,freebsd - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. -@@ -150,6 +151,7 @@ const ( - BIOCSETF = 0x80084267 - BIOCSETFNR = 0x80084282 - BIOCSETIF = 0x8020426c -+ BIOCSETVLANPCP = 0x80044285 - BIOCSETWF = 0x8008427b - BIOCSETZBUF = 0x800c4281 - BIOCSHDRCMPLT = 0x80044275 -@@ -339,6 +341,12 @@ const ( - CLOCK_UPTIME_FAST = 0x8 - CLOCK_UPTIME_PRECISE = 0x7 - CLOCK_VIRTUAL = 0x1 -+ CPUSTATES = 0x5 -+ CP_IDLE = 0x4 -+ CP_INTR = 0x3 -+ CP_NICE = 0x1 -+ CP_SYS = 0x2 -+ CP_USER = 0x0 - CREAD = 0x800 - CRTSCTS = 0x30000 - CS5 = 0x0 -@@ -355,7 +363,7 @@ const ( - CTL_KERN = 0x1 - CTL_MAXNAME = 0x18 - CTL_NET = 0x4 -- DIOCGATTR = 0xc144648e -+ DIOCGATTR = 0xc148648e - DIOCGDELETE = 0x80106488 - DIOCGFLUSH = 0x20006487 - DIOCGFRONTSTUFF = 0x40086486 -@@ -370,7 +378,7 @@ const ( - DIOCGSTRIPESIZE = 0x4008648b - DIOCSKERNELDUMP = 0x804c6490 - DIOCSKERNELDUMP_FREEBSD11 = 0x80046485 -- DIOCZONECMD = 0xc06c648f -+ DIOCZONECMD = 0xc078648f - DLT_A429 = 0xb8 - DLT_A653_ICM = 0xb9 - DLT_AIRONET_HEADER = 0x78 -@@ -400,7 +408,9 @@ const ( - DLT_C_HDLC_WITH_DIR = 0xcd - DLT_DBUS = 0xe7 - DLT_DECT = 0xdd -+ DLT_DISPLAYPORT_AUX = 0x113 - DLT_DOCSIS = 0x8f -+ DLT_DOCSIS31_XRA31 = 0x111 - DLT_DVB_CI = 0xeb - DLT_ECONET = 0x73 - DLT_EN10MB = 0x1 -@@ -410,6 +420,7 @@ const ( - DLT_ERF = 0xc5 - DLT_ERF_ETH = 0xaf - DLT_ERF_POS = 0xb0 -+ DLT_ETHERNET_MPACKET = 0x112 - DLT_FC_2 = 0xe0 - DLT_FC_2_WITH_FRAME_DELIMS = 0xe1 - DLT_FDDI = 0xa -@@ -437,7 +448,7 @@ const ( - DLT_IEEE802_16_MAC_CPS_RADIO = 0xc1 - DLT_INFINIBAND = 0xf7 - DLT_IPFILTER = 0x74 -- DLT_IPMB = 0xc7 -+ DLT_IPMB_KONTRON = 0xc7 - DLT_IPMB_LINUX = 0xd1 - DLT_IPMI_HPM_2 = 0x104 - DLT_IPNET = 0xe2 -@@ -477,9 +488,11 @@ const ( - DLT_LINUX_LAPD = 0xb1 - DLT_LINUX_PPP_WITHDIRECTION = 0xa6 - DLT_LINUX_SLL = 0x71 -+ DLT_LINUX_SLL2 = 0x114 - DLT_LOOP = 0x6c -+ DLT_LORATAP = 0x10e - DLT_LTALK = 0x72 -- DLT_MATCHING_MAX = 0x109 -+ DLT_MATCHING_MAX = 0x114 - DLT_MATCHING_MIN = 0x68 - DLT_MFR = 0xb6 - DLT_MOST = 0xd3 -@@ -495,7 +508,9 @@ const ( - DLT_NFC_LLCP = 0xf5 - DLT_NFLOG = 0xef - DLT_NG40 = 0xf4 -+ DLT_NORDIC_BLE = 0x110 - DLT_NULL = 0x0 -+ DLT_OPENFLOW = 0x10b - DLT_PCI_EXP = 0x7d - DLT_PFLOG = 0x75 - DLT_PFSYNC = 0x79 -@@ -519,15 +534,18 @@ const ( - DLT_RTAC_SERIAL = 0xfa - DLT_SCCP = 0x8e - DLT_SCTP = 0xf8 -+ DLT_SDLC = 0x10c - DLT_SITA = 0xc4 - DLT_SLIP = 0x8 - DLT_SLIP_BSDOS = 0xd - DLT_STANAG_5066_D_PDU = 0xed - DLT_SUNATM = 0x7b - DLT_SYMANTEC_FIREWALL = 0x63 -+ DLT_TI_LLN_SNIFFER = 0x10d - DLT_TZSP = 0x80 - DLT_USB = 0xba - DLT_USBPCAP = 0xf9 -+ DLT_USB_DARWIN = 0x10a - DLT_USB_FREEBSD = 0xba - DLT_USB_LINUX = 0xbd - DLT_USB_LINUX_MMAPPED = 0xdc -@@ -547,6 +565,7 @@ const ( - DLT_USER7 = 0x9a - DLT_USER8 = 0x9b - DLT_USER9 = 0x9c -+ DLT_VSOCK = 0x10f - DLT_WATTSTOPPER_DLM = 0x107 - DLT_WIHART = 0xdf - DLT_WIRESHARK_UPPER_PDU = 0xfc -@@ -571,6 +590,7 @@ const ( - ECHONL = 0x10 - ECHOPRT = 0x20 - EVFILT_AIO = -0x3 -+ EVFILT_EMPTY = -0xd - EVFILT_FS = -0x9 - EVFILT_LIO = -0xa - EVFILT_PROC = -0x5 -@@ -578,11 +598,12 @@ const ( - EVFILT_READ = -0x1 - EVFILT_SENDFILE = -0xc - EVFILT_SIGNAL = -0x6 -- EVFILT_SYSCOUNT = 0xc -+ EVFILT_SYSCOUNT = 0xd - EVFILT_TIMER = -0x7 - EVFILT_USER = -0xb - EVFILT_VNODE = -0x4 - EVFILT_WRITE = -0x2 -+ EVNAMEMAP_NAME_SIZE = 0x40 - EV_ADD = 0x1 - EV_CLEAR = 0x20 - EV_DELETE = 0x2 -@@ -599,6 +620,7 @@ const ( - EV_RECEIPT = 0x40 - EV_SYSFLAGS = 0xf000 - EXTA = 0x4b00 -+ EXTATTR_MAXNAMELEN = 0xff - EXTATTR_NAMESPACE_EMPTY = 0x0 - EXTATTR_NAMESPACE_SYSTEM = 0x2 - EXTATTR_NAMESPACE_USER = 0x1 -@@ -640,6 +662,7 @@ const ( - IEXTEN = 0x400 - IFAN_ARRIVAL = 0x0 - IFAN_DEPARTURE = 0x1 -+ IFCAP_WOL_MAGIC = 0x2000 - IFF_ALLMULTI = 0x200 - IFF_ALTPHYS = 0x4000 - IFF_BROADCAST = 0x2 -@@ -656,6 +679,7 @@ const ( - IFF_MONITOR = 0x40000 - IFF_MULTICAST = 0x8000 - IFF_NOARP = 0x80 -+ IFF_NOGROUP = 0x800000 - IFF_OACTIVE = 0x400 - IFF_POINTOPOINT = 0x10 - IFF_PPROMISC = 0x20000 -@@ -712,6 +736,7 @@ const ( - IPPROTO_CMTP = 0x26 - IPPROTO_CPHB = 0x49 - IPPROTO_CPNX = 0x48 -+ IPPROTO_DCCP = 0x21 - IPPROTO_DDP = 0x25 - IPPROTO_DGP = 0x56 - IPPROTO_DIVERT = 0x102 -@@ -792,7 +817,6 @@ const ( - IPPROTO_SCTP = 0x84 - IPPROTO_SDRP = 0x2a - IPPROTO_SEND = 0x103 -- IPPROTO_SEP = 0x21 - IPPROTO_SHIM6 = 0x8c - IPPROTO_SKIP = 0x39 - IPPROTO_SPACER = 0x7fff -@@ -830,6 +854,7 @@ const ( - IPV6_DSTOPTS = 0x32 - IPV6_FLOWID = 0x43 - IPV6_FLOWINFO_MASK = 0xffffff0f -+ IPV6_FLOWLABEL_LEN = 0x14 - IPV6_FLOWLABEL_MASK = 0xffff0f00 - IPV6_FLOWTYPE = 0x44 - IPV6_FRAGTTL = 0x78 -@@ -850,13 +875,13 @@ const ( - IPV6_MAX_GROUP_SRC_FILTER = 0x200 - IPV6_MAX_MEMBERSHIPS = 0xfff - IPV6_MAX_SOCK_SRC_FILTER = 0x80 -- IPV6_MIN_MEMBERSHIPS = 0x1f - IPV6_MMTU = 0x500 - IPV6_MSFILTER = 0x4a - IPV6_MULTICAST_HOPS = 0xa - IPV6_MULTICAST_IF = 0x9 - IPV6_MULTICAST_LOOP = 0xb - IPV6_NEXTHOP = 0x30 -+ IPV6_ORIGDSTADDR = 0x48 - IPV6_PATHMTU = 0x2c - IPV6_PKTINFO = 0x2e - IPV6_PORTRANGE = 0xe -@@ -868,6 +893,7 @@ const ( - IPV6_RECVFLOWID = 0x46 - IPV6_RECVHOPLIMIT = 0x25 - IPV6_RECVHOPOPTS = 0x27 -+ IPV6_RECVORIGDSTADDR = 0x48 - IPV6_RECVPATHMTU = 0x2b - IPV6_RECVPKTINFO = 0x24 - IPV6_RECVRSSBUCKETID = 0x47 -@@ -887,6 +913,7 @@ const ( - IPV6_V6ONLY = 0x1b - IPV6_VERSION = 0x60 - IPV6_VERSION_MASK = 0xf0 -+ IPV6_VLAN_PCP = 0x4b - IP_ADD_MEMBERSHIP = 0xc - IP_ADD_SOURCE_MEMBERSHIP = 0x46 - IP_BINDANY = 0x18 -@@ -928,10 +955,8 @@ const ( - IP_MAX_MEMBERSHIPS = 0xfff - IP_MAX_SOCK_MUTE_FILTER = 0x80 - IP_MAX_SOCK_SRC_FILTER = 0x80 -- IP_MAX_SOURCE_FILTER = 0x400 - IP_MF = 0x2000 - IP_MINTTL = 0x42 -- IP_MIN_MEMBERSHIPS = 0x1f - IP_MSFILTER = 0x4a - IP_MSS = 0x240 - IP_MULTICAST_IF = 0x9 -@@ -941,6 +966,7 @@ const ( - IP_OFFMASK = 0x1fff - IP_ONESBCAST = 0x17 - IP_OPTIONS = 0x1 -+ IP_ORIGDSTADDR = 0x1b - IP_PORTRANGE = 0x13 - IP_PORTRANGE_DEFAULT = 0x0 - IP_PORTRANGE_HIGH = 0x1 -@@ -949,6 +975,7 @@ const ( - IP_RECVFLOWID = 0x5d - IP_RECVIF = 0x14 - IP_RECVOPTS = 0x5 -+ IP_RECVORIGDSTADDR = 0x1b - IP_RECVRETOPTS = 0x6 - IP_RECVRSSBUCKETID = 0x5e - IP_RECVTOS = 0x44 -@@ -965,8 +992,12 @@ const ( - IP_TOS = 0x3 - IP_TTL = 0x4 - IP_UNBLOCK_SOURCE = 0x49 -+ IP_VLAN_PCP = 0x4b - ISIG = 0x80 - ISTRIP = 0x20 -+ ITIMER_PROF = 0x2 -+ ITIMER_REAL = 0x0 -+ ITIMER_VIRTUAL = 0x1 - IXANY = 0x800 - IXOFF = 0x400 - IXON = 0x200 -@@ -974,6 +1005,10 @@ const ( - KERN_OSRELEASE = 0x2 - KERN_OSTYPE = 0x1 - KERN_VERSION = 0x4 -+ LOCAL_CONNWAIT = 0x4 -+ LOCAL_CREDS = 0x2 -+ LOCAL_PEERCRED = 0x1 -+ LOCAL_VENDOR = 0x80000000 - LOCK_EX = 0x2 - LOCK_NB = 0x4 - LOCK_SH = 0x1 -@@ -1010,6 +1045,15 @@ const ( - MAP_RESERVED0100 = 0x100 - MAP_SHARED = 0x1 - MAP_STACK = 0x400 -+ MCAST_BLOCK_SOURCE = 0x54 -+ MCAST_EXCLUDE = 0x2 -+ MCAST_INCLUDE = 0x1 -+ MCAST_JOIN_GROUP = 0x50 -+ MCAST_JOIN_SOURCE_GROUP = 0x52 -+ MCAST_LEAVE_GROUP = 0x51 -+ MCAST_LEAVE_SOURCE_GROUP = 0x53 -+ MCAST_UNBLOCK_SOURCE = 0x55 -+ MCAST_UNDEFINED = 0x0 - MCL_CURRENT = 0x1 - MCL_FUTURE = 0x2 - MNT_ACLS = 0x8000000 -@@ -1050,10 +1094,12 @@ const ( - MNT_SUSPEND = 0x4 - MNT_SYNCHRONOUS = 0x2 - MNT_UNION = 0x20 -+ MNT_UNTRUSTED = 0x800000000 - MNT_UPDATE = 0x10000 -- MNT_UPDATEMASK = 0x2d8d0807e -+ MNT_UPDATEMASK = 0xad8d0807e - MNT_USER = 0x8000 -- MNT_VISFLAGMASK = 0x3fef0ffff -+ MNT_VERIFIED = 0x400000000 -+ MNT_VISFLAGMASK = 0xffef0ffff - MNT_WAIT = 0x1 - MSG_CMSG_CLOEXEC = 0x40000 - MSG_COMPAT = 0x8000 -@@ -1082,6 +1128,7 @@ const ( - NFDBITS = 0x20 - NOFLSH = 0x80000000 - NOKERNINFO = 0x2000000 -+ NOTE_ABSTIME = 0x10 - NOTE_ATTRIB = 0x8 - NOTE_CHILD = 0x4 - NOTE_CLOSE = 0x100 -@@ -1138,6 +1185,8 @@ const ( - O_NONBLOCK = 0x4 - O_RDONLY = 0x0 - O_RDWR = 0x2 -+ O_RESOLVE_BENEATH = 0x800000 -+ O_SEARCH = 0x40000 - O_SHLOCK = 0x10 - O_SYNC = 0x80 - O_TRUNC = 0x400 -@@ -1148,6 +1197,10 @@ const ( - PARMRK = 0x8 - PARODD = 0x2000 - PENDIN = 0x20000000 -+ PIOD_READ_D = 0x1 -+ PIOD_READ_I = 0x3 -+ PIOD_WRITE_D = 0x2 -+ PIOD_WRITE_I = 0x4 - PRIO_PGRP = 0x1 - PRIO_PROCESS = 0x0 - PRIO_USER = 0x2 -@@ -1155,6 +1208,53 @@ const ( - PROT_NONE = 0x0 - PROT_READ = 0x1 - PROT_WRITE = 0x2 -+ PTRACE_DEFAULT = 0x1 -+ PTRACE_EXEC = 0x1 -+ PTRACE_FORK = 0x8 -+ PTRACE_LWP = 0x10 -+ PTRACE_SCE = 0x2 -+ PTRACE_SCX = 0x4 -+ PTRACE_SYSCALL = 0x6 -+ PTRACE_VFORK = 0x20 -+ PT_ATTACH = 0xa -+ PT_CLEARSTEP = 0x10 -+ PT_CONTINUE = 0x7 -+ PT_DETACH = 0xb -+ PT_FIRSTMACH = 0x40 -+ PT_FOLLOW_FORK = 0x17 -+ PT_GETDBREGS = 0x25 -+ PT_GETFPREGS = 0x23 -+ PT_GETLWPLIST = 0xf -+ PT_GETNUMLWPS = 0xe -+ PT_GETREGS = 0x21 -+ PT_GETVFPREGS = 0x40 -+ PT_GET_EVENT_MASK = 0x19 -+ PT_GET_SC_ARGS = 0x1b -+ PT_GET_SC_RET = 0x1c -+ PT_IO = 0xc -+ PT_KILL = 0x8 -+ PT_LWPINFO = 0xd -+ PT_LWP_EVENTS = 0x18 -+ PT_READ_D = 0x2 -+ PT_READ_I = 0x1 -+ PT_RESUME = 0x13 -+ PT_SETDBREGS = 0x26 -+ PT_SETFPREGS = 0x24 -+ PT_SETREGS = 0x22 -+ PT_SETSTEP = 0x11 -+ PT_SETVFPREGS = 0x41 -+ PT_SET_EVENT_MASK = 0x1a -+ PT_STEP = 0x9 -+ PT_SUSPEND = 0x12 -+ PT_SYSCALL = 0x16 -+ PT_TO_SCE = 0x14 -+ PT_TO_SCX = 0x15 -+ PT_TRACE_ME = 0x0 -+ PT_VM_ENTRY = 0x29 -+ PT_VM_TIMESTAMP = 0x28 -+ PT_WRITE_D = 0x5 -+ PT_WRITE_I = 0x4 -+ P_ZONEID = 0xc - RLIMIT_AS = 0xa - RLIMIT_CORE = 0x4 - RLIMIT_CPU = 0x0 -@@ -1236,7 +1336,6 @@ const ( - RTV_WEIGHT = 0x100 - RT_ALL_FIBS = -0x1 - RT_BLACKHOLE = 0x40 -- RT_CACHING_CONTEXT = 0x1 - RT_DEFAULT_FIB = 0x0 - RT_HAS_GW = 0x80 - RT_HAS_HEADER = 0x10 -@@ -1246,15 +1345,22 @@ const ( - RT_LLE_CACHE = 0x100 - RT_MAY_LOOP = 0x8 - RT_MAY_LOOP_BIT = 0x3 -- RT_NORTREF = 0x2 - RT_REJECT = 0x20 - RUSAGE_CHILDREN = -0x1 - RUSAGE_SELF = 0x0 - RUSAGE_THREAD = 0x1 - SCM_BINTIME = 0x4 - SCM_CREDS = 0x3 -+ SCM_MONOTONIC = 0x6 -+ SCM_REALTIME = 0x5 - SCM_RIGHTS = 0x1 - SCM_TIMESTAMP = 0x2 -+ SCM_TIME_INFO = 0x7 -+ SEEK_CUR = 0x1 -+ SEEK_DATA = 0x3 -+ SEEK_END = 0x2 -+ SEEK_HOLE = 0x4 -+ SEEK_SET = 0x0 - SHUT_RD = 0x0 - SHUT_RDWR = 0x2 - SHUT_WR = 0x1 -@@ -1273,10 +1379,12 @@ const ( - SIOCGHWADDR = 0xc020693e - SIOCGI2C = 0xc020693d - SIOCGIFADDR = 0xc0206921 -+ SIOCGIFALIAS = 0xc044692d - SIOCGIFBRDADDR = 0xc0206923 - SIOCGIFCAP = 0xc020691f - SIOCGIFCONF = 0xc0086924 - SIOCGIFDESCR = 0xc020692a -+ SIOCGIFDOWNREASON = 0xc058699a - SIOCGIFDSTADDR = 0xc0206922 - SIOCGIFFIB = 0xc020695c - SIOCGIFFLAGS = 0xc0206911 -@@ -1292,8 +1400,11 @@ const ( - SIOCGIFPDSTADDR = 0xc0206948 - SIOCGIFPHYS = 0xc0206935 - SIOCGIFPSRCADDR = 0xc0206947 -+ SIOCGIFRSSHASH = 0xc0186997 -+ SIOCGIFRSSKEY = 0xc0946996 - SIOCGIFSTATUS = 0xc331693b - SIOCGIFXMEDIA = 0xc028698b -+ SIOCGLANPCP = 0xc0206998 - SIOCGLOWAT = 0x40047303 - SIOCGPGRP = 0x40047309 - SIOCGPRIVATE_0 = 0xc0206950 -@@ -1324,6 +1435,7 @@ const ( - SIOCSIFPHYS = 0x80206936 - SIOCSIFRVNET = 0xc020695b - SIOCSIFVNET = 0xc020695a -+ SIOCSLANPCP = 0x80206999 - SIOCSLOWAT = 0x80047302 - SIOCSPGRP = 0x80047308 - SIOCSTUNFIB = 0x8020695f -@@ -1335,6 +1447,7 @@ const ( - SOCK_RDM = 0x4 - SOCK_SEQPACKET = 0x5 - SOCK_STREAM = 0x1 -+ SOL_LOCAL = 0x0 - SOL_SOCKET = 0xffff - SOMAXCONN = 0x80 - SO_ACCEPTCONN = 0x2 -@@ -1342,6 +1455,7 @@ const ( - SO_BINTIME = 0x2000 - SO_BROADCAST = 0x20 - SO_DEBUG = 0x1 -+ SO_DOMAIN = 0x1019 - SO_DONTROUTE = 0x10 - SO_ERROR = 0x1007 - SO_KEEPALIVE = 0x8 -@@ -1350,6 +1464,7 @@ const ( - SO_LISTENINCQLEN = 0x1013 - SO_LISTENQLEN = 0x1012 - SO_LISTENQLIMIT = 0x1011 -+ SO_MAX_PACING_RATE = 0x1018 - SO_NOSIGPIPE = 0x800 - SO_NO_DDP = 0x8000 - SO_NO_OFFLOAD = 0x4000 -@@ -1360,13 +1475,22 @@ const ( - SO_RCVBUF = 0x1002 - SO_RCVLOWAT = 0x1004 - SO_RCVTIMEO = 0x1006 -+ SO_RERROR = 0x20000 - SO_REUSEADDR = 0x4 - SO_REUSEPORT = 0x200 -+ SO_REUSEPORT_LB = 0x10000 - SO_SETFIB = 0x1014 - SO_SNDBUF = 0x1001 - SO_SNDLOWAT = 0x1003 - SO_SNDTIMEO = 0x1005 - SO_TIMESTAMP = 0x400 -+ SO_TS_BINTIME = 0x1 -+ SO_TS_CLOCK = 0x1017 -+ SO_TS_CLOCK_MAX = 0x3 -+ SO_TS_DEFAULT = 0x0 -+ SO_TS_MONOTONIC = 0x3 -+ SO_TS_REALTIME = 0x2 -+ SO_TS_REALTIME_MICRO = 0x0 - SO_TYPE = 0x1008 - SO_USELOOPBACK = 0x40 - SO_USER_COOKIE = 0x1015 -@@ -1410,10 +1534,69 @@ const ( - TCOFLUSH = 0x2 - TCOOFF = 0x1 - TCOON = 0x2 -+ TCPOPT_EOL = 0x0 -+ TCPOPT_FAST_OPEN = 0x22 -+ TCPOPT_MAXSEG = 0x2 -+ TCPOPT_NOP = 0x1 -+ TCPOPT_PAD = 0x0 -+ TCPOPT_SACK = 0x5 -+ TCPOPT_SACK_PERMITTED = 0x4 -+ TCPOPT_SIGNATURE = 0x13 -+ TCPOPT_TIMESTAMP = 0x8 -+ TCPOPT_WINDOW = 0x3 -+ TCP_BBR_ACK_COMP_ALG = 0x448 -+ TCP_BBR_ALGORITHM = 0x43b -+ TCP_BBR_DRAIN_INC_EXTRA = 0x43c -+ TCP_BBR_DRAIN_PG = 0x42e -+ TCP_BBR_EXTRA_GAIN = 0x449 -+ TCP_BBR_EXTRA_STATE = 0x453 -+ TCP_BBR_FLOOR_MIN_TSO = 0x454 -+ TCP_BBR_HDWR_PACE = 0x451 -+ TCP_BBR_HOLD_TARGET = 0x436 -+ TCP_BBR_IWINTSO = 0x42b -+ TCP_BBR_LOWGAIN_FD = 0x436 -+ TCP_BBR_LOWGAIN_HALF = 0x435 -+ TCP_BBR_LOWGAIN_THRESH = 0x434 -+ TCP_BBR_MAX_RTO = 0x439 -+ TCP_BBR_MIN_RTO = 0x438 -+ TCP_BBR_MIN_TOPACEOUT = 0x455 -+ TCP_BBR_ONE_RETRAN = 0x431 -+ TCP_BBR_PACE_CROSS = 0x442 -+ TCP_BBR_PACE_DEL_TAR = 0x43f -+ TCP_BBR_PACE_OH = 0x435 -+ TCP_BBR_PACE_PER_SEC = 0x43e -+ TCP_BBR_PACE_SEG_MAX = 0x440 -+ TCP_BBR_PACE_SEG_MIN = 0x441 -+ TCP_BBR_POLICER_DETECT = 0x457 -+ TCP_BBR_PROBE_RTT_GAIN = 0x44d -+ TCP_BBR_PROBE_RTT_INT = 0x430 -+ TCP_BBR_PROBE_RTT_LEN = 0x44e -+ TCP_BBR_RACK_RTT_USE = 0x44a -+ TCP_BBR_RECFORCE = 0x42c -+ TCP_BBR_REC_OVER_HPTS = 0x43a -+ TCP_BBR_RETRAN_WTSO = 0x44b -+ TCP_BBR_RWND_IS_APP = 0x42f -+ TCP_BBR_SEND_IWND_IN_TSO = 0x44f -+ TCP_BBR_STARTUP_EXIT_EPOCH = 0x43d -+ TCP_BBR_STARTUP_LOSS_EXIT = 0x432 -+ TCP_BBR_STARTUP_PG = 0x42d -+ TCP_BBR_TMR_PACE_OH = 0x448 -+ TCP_BBR_TSLIMITS = 0x434 -+ TCP_BBR_TSTMP_RAISES = 0x456 -+ TCP_BBR_UNLIMITED = 0x43b -+ TCP_BBR_USEDEL_RATE = 0x437 -+ TCP_BBR_USE_LOWGAIN = 0x433 -+ TCP_BBR_USE_RACK_CHEAT = 0x450 -+ TCP_BBR_UTTER_MAX_TSO = 0x452 - TCP_CA_NAME_MAX = 0x10 - TCP_CCALGOOPT = 0x41 - TCP_CONGESTION = 0x40 -+ TCP_DATA_AFTER_CLOSE = 0x44c -+ TCP_DELACK = 0x48 - TCP_FASTOPEN = 0x401 -+ TCP_FASTOPEN_MAX_COOKIE_LEN = 0x10 -+ TCP_FASTOPEN_MIN_COOKIE_LEN = 0x4 -+ TCP_FASTOPEN_PSK_LEN = 0x10 - TCP_FUNCTION_BLK = 0x2000 - TCP_FUNCTION_NAME_LEN_MAX = 0x20 - TCP_INFO = 0x20 -@@ -1421,6 +1604,12 @@ const ( - TCP_KEEPIDLE = 0x100 - TCP_KEEPINIT = 0x80 - TCP_KEEPINTVL = 0x200 -+ TCP_LOG = 0x22 -+ TCP_LOGBUF = 0x23 -+ TCP_LOGDUMP = 0x25 -+ TCP_LOGDUMPID = 0x26 -+ TCP_LOGID = 0x24 -+ TCP_LOG_ID_LEN = 0x40 - TCP_MAXBURST = 0x4 - TCP_MAXHLEN = 0x3c - TCP_MAXOLEN = 0x28 -@@ -1436,8 +1625,30 @@ const ( - TCP_NOPUSH = 0x4 - TCP_PCAP_IN = 0x1000 - TCP_PCAP_OUT = 0x800 -+ TCP_RACK_EARLY_RECOV = 0x423 -+ TCP_RACK_EARLY_SEG = 0x424 -+ TCP_RACK_GP_INCREASE = 0x446 -+ TCP_RACK_IDLE_REDUCE_HIGH = 0x444 -+ TCP_RACK_MIN_PACE = 0x445 -+ TCP_RACK_MIN_PACE_SEG = 0x446 -+ TCP_RACK_MIN_TO = 0x422 -+ TCP_RACK_PACE_ALWAYS = 0x41f -+ TCP_RACK_PACE_MAX_SEG = 0x41e -+ TCP_RACK_PACE_REDUCE = 0x41d -+ TCP_RACK_PKT_DELAY = 0x428 -+ TCP_RACK_PROP = 0x41b -+ TCP_RACK_PROP_RATE = 0x420 -+ TCP_RACK_PRR_SENDALOT = 0x421 -+ TCP_RACK_REORD_FADE = 0x426 -+ TCP_RACK_REORD_THRESH = 0x425 -+ TCP_RACK_TLP_INC_VAR = 0x429 -+ TCP_RACK_TLP_REDUCE = 0x41c -+ TCP_RACK_TLP_THRESH = 0x427 -+ TCP_RACK_TLP_USE = 0x447 - TCP_VENDOR = 0x80000000 - TCSAFLUSH = 0x2 -+ TIMER_ABSTIME = 0x1 -+ TIMER_RELTIME = 0x0 - TIOCCBRK = 0x2000747a - TIOCCDTR = 0x20007478 - TIOCCONS = 0x80047462 -@@ -1501,6 +1712,8 @@ const ( - TIOCTIMESTAMP = 0x40107459 - TIOCUCNTL = 0x80047466 - TOSTOP = 0x400000 -+ UTIME_NOW = -0x1 -+ UTIME_OMIT = -0x2 - VDISCARD = 0xf - VDSUSP = 0xb - VEOF = 0x0 -@@ -1565,12 +1778,13 @@ const ( - EIDRM = syscall.Errno(0x52) - EILSEQ = syscall.Errno(0x56) - EINPROGRESS = syscall.Errno(0x24) -+ EINTEGRITY = syscall.Errno(0x61) - EINTR = syscall.Errno(0x4) - EINVAL = syscall.Errno(0x16) - EIO = syscall.Errno(0x5) - EISCONN = syscall.Errno(0x38) - EISDIR = syscall.Errno(0x15) -- ELAST = syscall.Errno(0x60) -+ ELAST = syscall.Errno(0x61) - ELOOP = syscall.Errno(0x3e) - EMFILE = syscall.Errno(0x18) - EMLINK = syscall.Errno(0x1f) -@@ -1713,7 +1927,7 @@ var errorList = [...]struct { - {32, "EPIPE", "broken pipe"}, - {33, "EDOM", "numerical argument out of domain"}, - {34, "ERANGE", "result too large"}, -- {35, "EAGAIN", "resource temporarily unavailable"}, -+ {35, "EWOULDBLOCK", "resource temporarily unavailable"}, - {36, "EINPROGRESS", "operation now in progress"}, - {37, "EALREADY", "operation already in progress"}, - {38, "ENOTSOCK", "socket operation on non-socket"}, -@@ -1775,6 +1989,7 @@ var errorList = [...]struct { - {94, "ECAPMODE", "not permitted in capability mode"}, - {95, "ENOTRECOVERABLE", "state not recoverable"}, - {96, "EOWNERDEAD", "previous owner died"}, -+ {97, "EINTEGRITY", "integrity check failed"}, - } - - // Signal table -diff --git a/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm64.go b/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm64.go -index 5e49769..c557ac2 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm64.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_freebsd_arm64.go -@@ -1,6 +1,7 @@ - // mkerrors.sh -m64 - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build arm64 && freebsd - // +build arm64,freebsd - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. -@@ -150,6 +151,7 @@ const ( - BIOCSETF = 0x80104267 - BIOCSETFNR = 0x80104282 - BIOCSETIF = 0x8020426c -+ BIOCSETVLANPCP = 0x80044285 - BIOCSETWF = 0x8010427b - BIOCSETZBUF = 0x80184281 - BIOCSHDRCMPLT = 0x80044275 -@@ -339,6 +341,12 @@ const ( - CLOCK_UPTIME_FAST = 0x8 - CLOCK_UPTIME_PRECISE = 0x7 - CLOCK_VIRTUAL = 0x1 -+ CPUSTATES = 0x5 -+ CP_IDLE = 0x4 -+ CP_INTR = 0x3 -+ CP_NICE = 0x1 -+ CP_SYS = 0x2 -+ CP_USER = 0x0 - CREAD = 0x800 - CRTSCTS = 0x30000 - CS5 = 0x0 -@@ -440,7 +448,7 @@ const ( - DLT_IEEE802_16_MAC_CPS_RADIO = 0xc1 - DLT_INFINIBAND = 0xf7 - DLT_IPFILTER = 0x74 -- DLT_IPMB = 0xc7 -+ DLT_IPMB_KONTRON = 0xc7 - DLT_IPMB_LINUX = 0xd1 - DLT_IPMI_HPM_2 = 0x104 - DLT_IPNET = 0xe2 -@@ -480,10 +488,11 @@ const ( - DLT_LINUX_LAPD = 0xb1 - DLT_LINUX_PPP_WITHDIRECTION = 0xa6 - DLT_LINUX_SLL = 0x71 -+ DLT_LINUX_SLL2 = 0x114 - DLT_LOOP = 0x6c - DLT_LORATAP = 0x10e - DLT_LTALK = 0x72 -- DLT_MATCHING_MAX = 0x113 -+ DLT_MATCHING_MAX = 0x114 - DLT_MATCHING_MIN = 0x68 - DLT_MFR = 0xb6 - DLT_MOST = 0xd3 -@@ -727,6 +736,7 @@ const ( - IPPROTO_CMTP = 0x26 - IPPROTO_CPHB = 0x49 - IPPROTO_CPNX = 0x48 -+ IPPROTO_DCCP = 0x21 - IPPROTO_DDP = 0x25 - IPPROTO_DGP = 0x56 - IPPROTO_DIVERT = 0x102 -@@ -807,7 +817,6 @@ const ( - IPPROTO_SCTP = 0x84 - IPPROTO_SDRP = 0x2a - IPPROTO_SEND = 0x103 -- IPPROTO_SEP = 0x21 - IPPROTO_SHIM6 = 0x8c - IPPROTO_SKIP = 0x39 - IPPROTO_SPACER = 0x7fff -@@ -904,6 +913,7 @@ const ( - IPV6_V6ONLY = 0x1b - IPV6_VERSION = 0x60 - IPV6_VERSION_MASK = 0xf0 -+ IPV6_VLAN_PCP = 0x4b - IP_ADD_MEMBERSHIP = 0xc - IP_ADD_SOURCE_MEMBERSHIP = 0x46 - IP_BINDANY = 0x18 -@@ -982,8 +992,12 @@ const ( - IP_TOS = 0x3 - IP_TTL = 0x4 - IP_UNBLOCK_SOURCE = 0x49 -+ IP_VLAN_PCP = 0x4b - ISIG = 0x80 - ISTRIP = 0x20 -+ ITIMER_PROF = 0x2 -+ ITIMER_REAL = 0x0 -+ ITIMER_VIRTUAL = 0x1 - IXANY = 0x800 - IXOFF = 0x400 - IXON = 0x200 -@@ -991,6 +1005,10 @@ const ( - KERN_OSRELEASE = 0x2 - KERN_OSTYPE = 0x1 - KERN_VERSION = 0x4 -+ LOCAL_CONNWAIT = 0x4 -+ LOCAL_CREDS = 0x2 -+ LOCAL_PEERCRED = 0x1 -+ LOCAL_VENDOR = 0x80000000 - LOCK_EX = 0x2 - LOCK_NB = 0x4 - LOCK_SH = 0x1 -@@ -1168,6 +1186,8 @@ const ( - O_NONBLOCK = 0x4 - O_RDONLY = 0x0 - O_RDWR = 0x2 -+ O_RESOLVE_BENEATH = 0x800000 -+ O_SEARCH = 0x40000 - O_SHLOCK = 0x10 - O_SYNC = 0x80 - O_TRUNC = 0x400 -@@ -1178,6 +1198,10 @@ const ( - PARMRK = 0x8 - PARODD = 0x2000 - PENDIN = 0x20000000 -+ PIOD_READ_D = 0x1 -+ PIOD_READ_I = 0x3 -+ PIOD_WRITE_D = 0x2 -+ PIOD_WRITE_I = 0x4 - PRIO_PGRP = 0x1 - PRIO_PROCESS = 0x0 - PRIO_USER = 0x2 -@@ -1185,6 +1209,51 @@ const ( - PROT_NONE = 0x0 - PROT_READ = 0x1 - PROT_WRITE = 0x2 -+ PTRACE_DEFAULT = 0x1 -+ PTRACE_EXEC = 0x1 -+ PTRACE_FORK = 0x8 -+ PTRACE_LWP = 0x10 -+ PTRACE_SCE = 0x2 -+ PTRACE_SCX = 0x4 -+ PTRACE_SYSCALL = 0x6 -+ PTRACE_VFORK = 0x20 -+ PT_ATTACH = 0xa -+ PT_CLEARSTEP = 0x10 -+ PT_CONTINUE = 0x7 -+ PT_DETACH = 0xb -+ PT_FIRSTMACH = 0x40 -+ PT_FOLLOW_FORK = 0x17 -+ PT_GETDBREGS = 0x25 -+ PT_GETFPREGS = 0x23 -+ PT_GETLWPLIST = 0xf -+ PT_GETNUMLWPS = 0xe -+ PT_GETREGS = 0x21 -+ PT_GET_EVENT_MASK = 0x19 -+ PT_GET_SC_ARGS = 0x1b -+ PT_GET_SC_RET = 0x1c -+ PT_IO = 0xc -+ PT_KILL = 0x8 -+ PT_LWPINFO = 0xd -+ PT_LWP_EVENTS = 0x18 -+ PT_READ_D = 0x2 -+ PT_READ_I = 0x1 -+ PT_RESUME = 0x13 -+ PT_SETDBREGS = 0x26 -+ PT_SETFPREGS = 0x24 -+ PT_SETREGS = 0x22 -+ PT_SETSTEP = 0x11 -+ PT_SET_EVENT_MASK = 0x1a -+ PT_STEP = 0x9 -+ PT_SUSPEND = 0x12 -+ PT_SYSCALL = 0x16 -+ PT_TO_SCE = 0x14 -+ PT_TO_SCX = 0x15 -+ PT_TRACE_ME = 0x0 -+ PT_VM_ENTRY = 0x29 -+ PT_VM_TIMESTAMP = 0x28 -+ PT_WRITE_D = 0x5 -+ PT_WRITE_I = 0x4 -+ P_ZONEID = 0xc - RLIMIT_AS = 0xa - RLIMIT_CORE = 0x4 - RLIMIT_CPU = 0x0 -@@ -1286,6 +1355,11 @@ const ( - SCM_RIGHTS = 0x1 - SCM_TIMESTAMP = 0x2 - SCM_TIME_INFO = 0x7 -+ SEEK_CUR = 0x1 -+ SEEK_DATA = 0x3 -+ SEEK_END = 0x2 -+ SEEK_HOLE = 0x4 -+ SEEK_SET = 0x0 - SHUT_RD = 0x0 - SHUT_RDWR = 0x2 - SHUT_WR = 0x1 -@@ -1304,10 +1378,12 @@ const ( - SIOCGHWADDR = 0xc020693e - SIOCGI2C = 0xc020693d - SIOCGIFADDR = 0xc0206921 -+ SIOCGIFALIAS = 0xc044692d - SIOCGIFBRDADDR = 0xc0206923 - SIOCGIFCAP = 0xc020691f - SIOCGIFCONF = 0xc0106924 - SIOCGIFDESCR = 0xc020692a -+ SIOCGIFDOWNREASON = 0xc058699a - SIOCGIFDSTADDR = 0xc0206922 - SIOCGIFFIB = 0xc020695c - SIOCGIFFLAGS = 0xc0206911 -@@ -1370,6 +1446,7 @@ const ( - SOCK_RDM = 0x4 - SOCK_SEQPACKET = 0x5 - SOCK_STREAM = 0x1 -+ SOL_LOCAL = 0x0 - SOL_SOCKET = 0xffff - SOMAXCONN = 0x80 - SO_ACCEPTCONN = 0x2 -@@ -1397,6 +1474,7 @@ const ( - SO_RCVBUF = 0x1002 - SO_RCVLOWAT = 0x1004 - SO_RCVTIMEO = 0x1006 -+ SO_RERROR = 0x20000 - SO_REUSEADDR = 0x4 - SO_REUSEPORT = 0x200 - SO_REUSEPORT_LB = 0x10000 -@@ -1455,22 +1533,40 @@ const ( - TCOFLUSH = 0x2 - TCOOFF = 0x1 - TCOON = 0x2 -+ TCPOPT_EOL = 0x0 -+ TCPOPT_FAST_OPEN = 0x22 -+ TCPOPT_MAXSEG = 0x2 -+ TCPOPT_NOP = 0x1 -+ TCPOPT_PAD = 0x0 -+ TCPOPT_SACK = 0x5 -+ TCPOPT_SACK_PERMITTED = 0x4 -+ TCPOPT_SIGNATURE = 0x13 -+ TCPOPT_TIMESTAMP = 0x8 -+ TCPOPT_WINDOW = 0x3 - TCP_BBR_ACK_COMP_ALG = 0x448 -+ TCP_BBR_ALGORITHM = 0x43b - TCP_BBR_DRAIN_INC_EXTRA = 0x43c - TCP_BBR_DRAIN_PG = 0x42e - TCP_BBR_EXTRA_GAIN = 0x449 -+ TCP_BBR_EXTRA_STATE = 0x453 -+ TCP_BBR_FLOOR_MIN_TSO = 0x454 -+ TCP_BBR_HDWR_PACE = 0x451 -+ TCP_BBR_HOLD_TARGET = 0x436 - TCP_BBR_IWINTSO = 0x42b - TCP_BBR_LOWGAIN_FD = 0x436 - TCP_BBR_LOWGAIN_HALF = 0x435 - TCP_BBR_LOWGAIN_THRESH = 0x434 - TCP_BBR_MAX_RTO = 0x439 - TCP_BBR_MIN_RTO = 0x438 -+ TCP_BBR_MIN_TOPACEOUT = 0x455 - TCP_BBR_ONE_RETRAN = 0x431 - TCP_BBR_PACE_CROSS = 0x442 - TCP_BBR_PACE_DEL_TAR = 0x43f -+ TCP_BBR_PACE_OH = 0x435 - TCP_BBR_PACE_PER_SEC = 0x43e - TCP_BBR_PACE_SEG_MAX = 0x440 - TCP_BBR_PACE_SEG_MIN = 0x441 -+ TCP_BBR_POLICER_DETECT = 0x457 - TCP_BBR_PROBE_RTT_GAIN = 0x44d - TCP_BBR_PROBE_RTT_INT = 0x430 - TCP_BBR_PROBE_RTT_LEN = 0x44e -@@ -1479,12 +1575,18 @@ const ( - TCP_BBR_REC_OVER_HPTS = 0x43a - TCP_BBR_RETRAN_WTSO = 0x44b - TCP_BBR_RWND_IS_APP = 0x42f -+ TCP_BBR_SEND_IWND_IN_TSO = 0x44f - TCP_BBR_STARTUP_EXIT_EPOCH = 0x43d - TCP_BBR_STARTUP_LOSS_EXIT = 0x432 - TCP_BBR_STARTUP_PG = 0x42d -+ TCP_BBR_TMR_PACE_OH = 0x448 -+ TCP_BBR_TSLIMITS = 0x434 -+ TCP_BBR_TSTMP_RAISES = 0x456 - TCP_BBR_UNLIMITED = 0x43b - TCP_BBR_USEDEL_RATE = 0x437 - TCP_BBR_USE_LOWGAIN = 0x433 -+ TCP_BBR_USE_RACK_CHEAT = 0x450 -+ TCP_BBR_UTTER_MAX_TSO = 0x452 - TCP_CA_NAME_MAX = 0x10 - TCP_CCALGOOPT = 0x41 - TCP_CONGESTION = 0x40 -@@ -1524,6 +1626,7 @@ const ( - TCP_PCAP_OUT = 0x800 - TCP_RACK_EARLY_RECOV = 0x423 - TCP_RACK_EARLY_SEG = 0x424 -+ TCP_RACK_GP_INCREASE = 0x446 - TCP_RACK_IDLE_REDUCE_HIGH = 0x444 - TCP_RACK_MIN_PACE = 0x445 - TCP_RACK_MIN_PACE_SEG = 0x446 -@@ -1537,7 +1640,6 @@ const ( - TCP_RACK_PRR_SENDALOT = 0x421 - TCP_RACK_REORD_FADE = 0x426 - TCP_RACK_REORD_THRESH = 0x425 -- TCP_RACK_SESS_CWV = 0x42a - TCP_RACK_TLP_INC_VAR = 0x429 - TCP_RACK_TLP_REDUCE = 0x41c - TCP_RACK_TLP_THRESH = 0x427 -@@ -1676,12 +1778,13 @@ const ( - EIDRM = syscall.Errno(0x52) - EILSEQ = syscall.Errno(0x56) - EINPROGRESS = syscall.Errno(0x24) -+ EINTEGRITY = syscall.Errno(0x61) - EINTR = syscall.Errno(0x4) - EINVAL = syscall.Errno(0x16) - EIO = syscall.Errno(0x5) - EISCONN = syscall.Errno(0x38) - EISDIR = syscall.Errno(0x15) -- ELAST = syscall.Errno(0x60) -+ ELAST = syscall.Errno(0x61) - ELOOP = syscall.Errno(0x3e) - EMFILE = syscall.Errno(0x18) - EMLINK = syscall.Errno(0x1f) -@@ -1824,7 +1927,7 @@ var errorList = [...]struct { - {32, "EPIPE", "broken pipe"}, - {33, "EDOM", "numerical argument out of domain"}, - {34, "ERANGE", "result too large"}, -- {35, "EAGAIN", "resource temporarily unavailable"}, -+ {35, "EWOULDBLOCK", "resource temporarily unavailable"}, - {36, "EINPROGRESS", "operation now in progress"}, - {37, "EALREADY", "operation already in progress"}, - {38, "ENOTSOCK", "socket operation on non-socket"}, -@@ -1886,6 +1989,7 @@ var errorList = [...]struct { - {94, "ECAPMODE", "not permitted in capability mode"}, - {95, "ENOTRECOVERABLE", "state not recoverable"}, - {96, "EOWNERDEAD", "previous owner died"}, -+ {97, "EINTEGRITY", "integrity check failed"}, - } - - // Signal table -diff --git a/vendor/golang.org/x/sys/unix/zerrors_freebsd_riscv64.go b/vendor/golang.org/x/sys/unix/zerrors_freebsd_riscv64.go -new file mode 100644 -index 0000000..341b4d9 ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/zerrors_freebsd_riscv64.go -@@ -0,0 +1,2148 @@ -+// mkerrors.sh -m64 -+// Code generated by the command above; see README.md. DO NOT EDIT. -+ -+//go:build riscv64 && freebsd -+// +build riscv64,freebsd -+ -+// Code generated by cmd/cgo -godefs; DO NOT EDIT. -+// cgo -godefs -- -m64 _const.go -+ -+package unix -+ -+import "syscall" -+ -+const ( -+ AF_APPLETALK = 0x10 -+ AF_ARP = 0x23 -+ AF_ATM = 0x1e -+ AF_BLUETOOTH = 0x24 -+ AF_CCITT = 0xa -+ AF_CHAOS = 0x5 -+ AF_CNT = 0x15 -+ AF_COIP = 0x14 -+ AF_DATAKIT = 0x9 -+ AF_DECnet = 0xc -+ AF_DLI = 0xd -+ AF_E164 = 0x1a -+ AF_ECMA = 0x8 -+ AF_HYLINK = 0xf -+ AF_HYPERV = 0x2b -+ AF_IEEE80211 = 0x25 -+ AF_IMPLINK = 0x3 -+ AF_INET = 0x2 -+ AF_INET6 = 0x1c -+ AF_INET6_SDP = 0x2a -+ AF_INET_SDP = 0x28 -+ AF_IPX = 0x17 -+ AF_ISDN = 0x1a -+ AF_ISO = 0x7 -+ AF_LAT = 0xe -+ AF_LINK = 0x12 -+ AF_LOCAL = 0x1 -+ AF_MAX = 0x2b -+ AF_NATM = 0x1d -+ AF_NETBIOS = 0x6 -+ AF_NETGRAPH = 0x20 -+ AF_OSI = 0x7 -+ AF_PUP = 0x4 -+ AF_ROUTE = 0x11 -+ AF_SCLUSTER = 0x22 -+ AF_SIP = 0x18 -+ AF_SLOW = 0x21 -+ AF_SNA = 0xb -+ AF_UNIX = 0x1 -+ AF_UNSPEC = 0x0 -+ AF_VENDOR00 = 0x27 -+ AF_VENDOR01 = 0x29 -+ AF_VENDOR03 = 0x2d -+ AF_VENDOR04 = 0x2f -+ AF_VENDOR05 = 0x31 -+ AF_VENDOR06 = 0x33 -+ AF_VENDOR07 = 0x35 -+ AF_VENDOR08 = 0x37 -+ AF_VENDOR09 = 0x39 -+ AF_VENDOR10 = 0x3b -+ AF_VENDOR11 = 0x3d -+ AF_VENDOR12 = 0x3f -+ AF_VENDOR13 = 0x41 -+ AF_VENDOR14 = 0x43 -+ AF_VENDOR15 = 0x45 -+ AF_VENDOR16 = 0x47 -+ AF_VENDOR17 = 0x49 -+ AF_VENDOR18 = 0x4b -+ AF_VENDOR19 = 0x4d -+ AF_VENDOR20 = 0x4f -+ AF_VENDOR21 = 0x51 -+ AF_VENDOR22 = 0x53 -+ AF_VENDOR23 = 0x55 -+ AF_VENDOR24 = 0x57 -+ AF_VENDOR25 = 0x59 -+ AF_VENDOR26 = 0x5b -+ AF_VENDOR27 = 0x5d -+ AF_VENDOR28 = 0x5f -+ AF_VENDOR29 = 0x61 -+ AF_VENDOR30 = 0x63 -+ AF_VENDOR31 = 0x65 -+ AF_VENDOR32 = 0x67 -+ AF_VENDOR33 = 0x69 -+ AF_VENDOR34 = 0x6b -+ AF_VENDOR35 = 0x6d -+ AF_VENDOR36 = 0x6f -+ AF_VENDOR37 = 0x71 -+ AF_VENDOR38 = 0x73 -+ AF_VENDOR39 = 0x75 -+ AF_VENDOR40 = 0x77 -+ AF_VENDOR41 = 0x79 -+ AF_VENDOR42 = 0x7b -+ AF_VENDOR43 = 0x7d -+ AF_VENDOR44 = 0x7f -+ AF_VENDOR45 = 0x81 -+ AF_VENDOR46 = 0x83 -+ AF_VENDOR47 = 0x85 -+ ALTWERASE = 0x200 -+ B0 = 0x0 -+ B1000000 = 0xf4240 -+ B110 = 0x6e -+ B115200 = 0x1c200 -+ B1200 = 0x4b0 -+ B134 = 0x86 -+ B14400 = 0x3840 -+ B150 = 0x96 -+ B1500000 = 0x16e360 -+ B1800 = 0x708 -+ B19200 = 0x4b00 -+ B200 = 0xc8 -+ B2000000 = 0x1e8480 -+ B230400 = 0x38400 -+ B2400 = 0x960 -+ B2500000 = 0x2625a0 -+ B28800 = 0x7080 -+ B300 = 0x12c -+ B3000000 = 0x2dc6c0 -+ B3500000 = 0x3567e0 -+ B38400 = 0x9600 -+ B4000000 = 0x3d0900 -+ B460800 = 0x70800 -+ B4800 = 0x12c0 -+ B50 = 0x32 -+ B500000 = 0x7a120 -+ B57600 = 0xe100 -+ B600 = 0x258 -+ B7200 = 0x1c20 -+ B75 = 0x4b -+ B76800 = 0x12c00 -+ B921600 = 0xe1000 -+ B9600 = 0x2580 -+ BIOCFEEDBACK = 0x8004427c -+ BIOCFLUSH = 0x20004268 -+ BIOCGBLEN = 0x40044266 -+ BIOCGDIRECTION = 0x40044276 -+ BIOCGDLT = 0x4004426a -+ BIOCGDLTLIST = 0xc0104279 -+ BIOCGETBUFMODE = 0x4004427d -+ BIOCGETIF = 0x4020426b -+ BIOCGETZMAX = 0x4008427f -+ BIOCGHDRCMPLT = 0x40044274 -+ BIOCGRSIG = 0x40044272 -+ BIOCGRTIMEOUT = 0x4010426e -+ BIOCGSEESENT = 0x40044276 -+ BIOCGSTATS = 0x4008426f -+ BIOCGTSTAMP = 0x40044283 -+ BIOCIMMEDIATE = 0x80044270 -+ BIOCLOCK = 0x2000427a -+ BIOCPROMISC = 0x20004269 -+ BIOCROTZBUF = 0x40184280 -+ BIOCSBLEN = 0xc0044266 -+ BIOCSDIRECTION = 0x80044277 -+ BIOCSDLT = 0x80044278 -+ BIOCSETBUFMODE = 0x8004427e -+ BIOCSETF = 0x80104267 -+ BIOCSETFNR = 0x80104282 -+ BIOCSETIF = 0x8020426c -+ BIOCSETVLANPCP = 0x80044285 -+ BIOCSETWF = 0x8010427b -+ BIOCSETZBUF = 0x80184281 -+ BIOCSHDRCMPLT = 0x80044275 -+ BIOCSRSIG = 0x80044273 -+ BIOCSRTIMEOUT = 0x8010426d -+ BIOCSSEESENT = 0x80044277 -+ BIOCSTSTAMP = 0x80044284 -+ BIOCVERSION = 0x40044271 -+ BPF_A = 0x10 -+ BPF_ABS = 0x20 -+ BPF_ADD = 0x0 -+ BPF_ALIGNMENT = 0x8 -+ BPF_ALU = 0x4 -+ BPF_AND = 0x50 -+ BPF_B = 0x10 -+ BPF_BUFMODE_BUFFER = 0x1 -+ BPF_BUFMODE_ZBUF = 0x2 -+ BPF_DIV = 0x30 -+ BPF_H = 0x8 -+ BPF_IMM = 0x0 -+ BPF_IND = 0x40 -+ BPF_JA = 0x0 -+ BPF_JEQ = 0x10 -+ BPF_JGE = 0x30 -+ BPF_JGT = 0x20 -+ BPF_JMP = 0x5 -+ BPF_JSET = 0x40 -+ BPF_K = 0x0 -+ BPF_LD = 0x0 -+ BPF_LDX = 0x1 -+ BPF_LEN = 0x80 -+ BPF_LSH = 0x60 -+ BPF_MAJOR_VERSION = 0x1 -+ BPF_MAXBUFSIZE = 0x80000 -+ BPF_MAXINSNS = 0x200 -+ BPF_MEM = 0x60 -+ BPF_MEMWORDS = 0x10 -+ BPF_MINBUFSIZE = 0x20 -+ BPF_MINOR_VERSION = 0x1 -+ BPF_MISC = 0x7 -+ BPF_MOD = 0x90 -+ BPF_MSH = 0xa0 -+ BPF_MUL = 0x20 -+ BPF_NEG = 0x80 -+ BPF_OR = 0x40 -+ BPF_RELEASE = 0x30bb6 -+ BPF_RET = 0x6 -+ BPF_RSH = 0x70 -+ BPF_ST = 0x2 -+ BPF_STX = 0x3 -+ BPF_SUB = 0x10 -+ BPF_TAX = 0x0 -+ BPF_TXA = 0x80 -+ BPF_T_BINTIME = 0x2 -+ BPF_T_BINTIME_FAST = 0x102 -+ BPF_T_BINTIME_MONOTONIC = 0x202 -+ BPF_T_BINTIME_MONOTONIC_FAST = 0x302 -+ BPF_T_FAST = 0x100 -+ BPF_T_FLAG_MASK = 0x300 -+ BPF_T_FORMAT_MASK = 0x3 -+ BPF_T_MICROTIME = 0x0 -+ BPF_T_MICROTIME_FAST = 0x100 -+ BPF_T_MICROTIME_MONOTONIC = 0x200 -+ BPF_T_MICROTIME_MONOTONIC_FAST = 0x300 -+ BPF_T_MONOTONIC = 0x200 -+ BPF_T_MONOTONIC_FAST = 0x300 -+ BPF_T_NANOTIME = 0x1 -+ BPF_T_NANOTIME_FAST = 0x101 -+ BPF_T_NANOTIME_MONOTONIC = 0x201 -+ BPF_T_NANOTIME_MONOTONIC_FAST = 0x301 -+ BPF_T_NONE = 0x3 -+ BPF_T_NORMAL = 0x0 -+ BPF_W = 0x0 -+ BPF_X = 0x8 -+ BPF_XOR = 0xa0 -+ BRKINT = 0x2 -+ CAP_ACCEPT = 0x200000020000000 -+ CAP_ACL_CHECK = 0x400000000010000 -+ CAP_ACL_DELETE = 0x400000000020000 -+ CAP_ACL_GET = 0x400000000040000 -+ CAP_ACL_SET = 0x400000000080000 -+ CAP_ALL0 = 0x20007ffffffffff -+ CAP_ALL1 = 0x4000000001fffff -+ CAP_BIND = 0x200000040000000 -+ CAP_BINDAT = 0x200008000000400 -+ CAP_CHFLAGSAT = 0x200000000001400 -+ CAP_CONNECT = 0x200000080000000 -+ CAP_CONNECTAT = 0x200010000000400 -+ CAP_CREATE = 0x200000000000040 -+ CAP_EVENT = 0x400000000000020 -+ CAP_EXTATTR_DELETE = 0x400000000001000 -+ CAP_EXTATTR_GET = 0x400000000002000 -+ CAP_EXTATTR_LIST = 0x400000000004000 -+ CAP_EXTATTR_SET = 0x400000000008000 -+ CAP_FCHDIR = 0x200000000000800 -+ CAP_FCHFLAGS = 0x200000000001000 -+ CAP_FCHMOD = 0x200000000002000 -+ CAP_FCHMODAT = 0x200000000002400 -+ CAP_FCHOWN = 0x200000000004000 -+ CAP_FCHOWNAT = 0x200000000004400 -+ CAP_FCNTL = 0x200000000008000 -+ CAP_FCNTL_ALL = 0x78 -+ CAP_FCNTL_GETFL = 0x8 -+ CAP_FCNTL_GETOWN = 0x20 -+ CAP_FCNTL_SETFL = 0x10 -+ CAP_FCNTL_SETOWN = 0x40 -+ CAP_FEXECVE = 0x200000000000080 -+ CAP_FLOCK = 0x200000000010000 -+ CAP_FPATHCONF = 0x200000000020000 -+ CAP_FSCK = 0x200000000040000 -+ CAP_FSTAT = 0x200000000080000 -+ CAP_FSTATAT = 0x200000000080400 -+ CAP_FSTATFS = 0x200000000100000 -+ CAP_FSYNC = 0x200000000000100 -+ CAP_FTRUNCATE = 0x200000000000200 -+ CAP_FUTIMES = 0x200000000200000 -+ CAP_FUTIMESAT = 0x200000000200400 -+ CAP_GETPEERNAME = 0x200000100000000 -+ CAP_GETSOCKNAME = 0x200000200000000 -+ CAP_GETSOCKOPT = 0x200000400000000 -+ CAP_IOCTL = 0x400000000000080 -+ CAP_IOCTLS_ALL = 0x7fffffffffffffff -+ CAP_KQUEUE = 0x400000000100040 -+ CAP_KQUEUE_CHANGE = 0x400000000100000 -+ CAP_KQUEUE_EVENT = 0x400000000000040 -+ CAP_LINKAT_SOURCE = 0x200020000000400 -+ CAP_LINKAT_TARGET = 0x200000000400400 -+ CAP_LISTEN = 0x200000800000000 -+ CAP_LOOKUP = 0x200000000000400 -+ CAP_MAC_GET = 0x400000000000001 -+ CAP_MAC_SET = 0x400000000000002 -+ CAP_MKDIRAT = 0x200000000800400 -+ CAP_MKFIFOAT = 0x200000001000400 -+ CAP_MKNODAT = 0x200000002000400 -+ CAP_MMAP = 0x200000000000010 -+ CAP_MMAP_R = 0x20000000000001d -+ CAP_MMAP_RW = 0x20000000000001f -+ CAP_MMAP_RWX = 0x20000000000003f -+ CAP_MMAP_RX = 0x20000000000003d -+ CAP_MMAP_W = 0x20000000000001e -+ CAP_MMAP_WX = 0x20000000000003e -+ CAP_MMAP_X = 0x20000000000003c -+ CAP_PDGETPID = 0x400000000000200 -+ CAP_PDKILL = 0x400000000000800 -+ CAP_PDWAIT = 0x400000000000400 -+ CAP_PEELOFF = 0x200001000000000 -+ CAP_POLL_EVENT = 0x400000000000020 -+ CAP_PREAD = 0x20000000000000d -+ CAP_PWRITE = 0x20000000000000e -+ CAP_READ = 0x200000000000001 -+ CAP_RECV = 0x200000000000001 -+ CAP_RENAMEAT_SOURCE = 0x200000004000400 -+ CAP_RENAMEAT_TARGET = 0x200040000000400 -+ CAP_RIGHTS_VERSION = 0x0 -+ CAP_RIGHTS_VERSION_00 = 0x0 -+ CAP_SEEK = 0x20000000000000c -+ CAP_SEEK_TELL = 0x200000000000004 -+ CAP_SEM_GETVALUE = 0x400000000000004 -+ CAP_SEM_POST = 0x400000000000008 -+ CAP_SEM_WAIT = 0x400000000000010 -+ CAP_SEND = 0x200000000000002 -+ CAP_SETSOCKOPT = 0x200002000000000 -+ CAP_SHUTDOWN = 0x200004000000000 -+ CAP_SOCK_CLIENT = 0x200007780000003 -+ CAP_SOCK_SERVER = 0x200007f60000003 -+ CAP_SYMLINKAT = 0x200000008000400 -+ CAP_TTYHOOK = 0x400000000000100 -+ CAP_UNLINKAT = 0x200000010000400 -+ CAP_UNUSED0_44 = 0x200080000000000 -+ CAP_UNUSED0_57 = 0x300000000000000 -+ CAP_UNUSED1_22 = 0x400000000200000 -+ CAP_UNUSED1_57 = 0x500000000000000 -+ CAP_WRITE = 0x200000000000002 -+ CFLUSH = 0xf -+ CLOCAL = 0x8000 -+ CLOCK_BOOTTIME = 0x5 -+ CLOCK_MONOTONIC = 0x4 -+ CLOCK_MONOTONIC_COARSE = 0xc -+ CLOCK_MONOTONIC_FAST = 0xc -+ CLOCK_MONOTONIC_PRECISE = 0xb -+ CLOCK_PROCESS_CPUTIME_ID = 0xf -+ CLOCK_PROF = 0x2 -+ CLOCK_REALTIME = 0x0 -+ CLOCK_REALTIME_COARSE = 0xa -+ CLOCK_REALTIME_FAST = 0xa -+ CLOCK_REALTIME_PRECISE = 0x9 -+ CLOCK_SECOND = 0xd -+ CLOCK_THREAD_CPUTIME_ID = 0xe -+ CLOCK_UPTIME = 0x5 -+ CLOCK_UPTIME_FAST = 0x8 -+ CLOCK_UPTIME_PRECISE = 0x7 -+ CLOCK_VIRTUAL = 0x1 -+ CPUSTATES = 0x5 -+ CP_IDLE = 0x4 -+ CP_INTR = 0x3 -+ CP_NICE = 0x1 -+ CP_SYS = 0x2 -+ CP_USER = 0x0 -+ CREAD = 0x800 -+ CRTSCTS = 0x30000 -+ CS5 = 0x0 -+ CS6 = 0x100 -+ CS7 = 0x200 -+ CS8 = 0x300 -+ CSIZE = 0x300 -+ CSTART = 0x11 -+ CSTATUS = 0x14 -+ CSTOP = 0x13 -+ CSTOPB = 0x400 -+ CSUSP = 0x1a -+ CTL_HW = 0x6 -+ CTL_KERN = 0x1 -+ CTL_MAXNAME = 0x18 -+ CTL_NET = 0x4 -+ DIOCGATTR = 0xc148648e -+ DIOCGDELETE = 0x80106488 -+ DIOCGFLUSH = 0x20006487 -+ DIOCGFWHEADS = 0x40046483 -+ DIOCGFWSECTORS = 0x40046482 -+ DIOCGIDENT = 0x41006489 -+ DIOCGKERNELDUMP = 0xc0986492 -+ DIOCGMEDIASIZE = 0x40086481 -+ DIOCGPHYSPATH = 0x4400648d -+ DIOCGPROVIDERNAME = 0x4400648a -+ DIOCGSECTORSIZE = 0x40046480 -+ DIOCGSTRIPEOFFSET = 0x4008648c -+ DIOCGSTRIPESIZE = 0x4008648b -+ DIOCSKERNELDUMP = 0x80986491 -+ DIOCSKERNELDUMP_FREEBSD11 = 0x80046485 -+ DIOCSKERNELDUMP_FREEBSD12 = 0x80506490 -+ DIOCZONECMD = 0xc080648f -+ DLT_A429 = 0xb8 -+ DLT_A653_ICM = 0xb9 -+ DLT_AIRONET_HEADER = 0x78 -+ DLT_AOS = 0xde -+ DLT_APPLE_IP_OVER_IEEE1394 = 0x8a -+ DLT_ARCNET = 0x7 -+ DLT_ARCNET_LINUX = 0x81 -+ DLT_ATM_CLIP = 0x13 -+ DLT_ATM_RFC1483 = 0xb -+ DLT_AURORA = 0x7e -+ DLT_AX25 = 0x3 -+ DLT_AX25_KISS = 0xca -+ DLT_BACNET_MS_TP = 0xa5 -+ DLT_BLUETOOTH_BREDR_BB = 0xff -+ DLT_BLUETOOTH_HCI_H4 = 0xbb -+ DLT_BLUETOOTH_HCI_H4_WITH_PHDR = 0xc9 -+ DLT_BLUETOOTH_LE_LL = 0xfb -+ DLT_BLUETOOTH_LE_LL_WITH_PHDR = 0x100 -+ DLT_BLUETOOTH_LINUX_MONITOR = 0xfe -+ DLT_CAN20B = 0xbe -+ DLT_CAN_SOCKETCAN = 0xe3 -+ DLT_CHAOS = 0x5 -+ DLT_CHDLC = 0x68 -+ DLT_CISCO_IOS = 0x76 -+ DLT_CLASS_NETBSD_RAWAF = 0x2240000 -+ DLT_C_HDLC = 0x68 -+ DLT_C_HDLC_WITH_DIR = 0xcd -+ DLT_DBUS = 0xe7 -+ DLT_DECT = 0xdd -+ DLT_DISPLAYPORT_AUX = 0x113 -+ DLT_DOCSIS = 0x8f -+ DLT_DOCSIS31_XRA31 = 0x111 -+ DLT_DVB_CI = 0xeb -+ DLT_ECONET = 0x73 -+ DLT_EN10MB = 0x1 -+ DLT_EN3MB = 0x2 -+ DLT_ENC = 0x6d -+ DLT_EPON = 0x103 -+ DLT_ERF = 0xc5 -+ DLT_ERF_ETH = 0xaf -+ DLT_ERF_POS = 0xb0 -+ DLT_ETHERNET_MPACKET = 0x112 -+ DLT_FC_2 = 0xe0 -+ DLT_FC_2_WITH_FRAME_DELIMS = 0xe1 -+ DLT_FDDI = 0xa -+ DLT_FLEXRAY = 0xd2 -+ DLT_FRELAY = 0x6b -+ DLT_FRELAY_WITH_DIR = 0xce -+ DLT_GCOM_SERIAL = 0xad -+ DLT_GCOM_T1E1 = 0xac -+ DLT_GPF_F = 0xab -+ DLT_GPF_T = 0xaa -+ DLT_GPRS_LLC = 0xa9 -+ DLT_GSMTAP_ABIS = 0xda -+ DLT_GSMTAP_UM = 0xd9 -+ DLT_IBM_SN = 0x92 -+ DLT_IBM_SP = 0x91 -+ DLT_IEEE802 = 0x6 -+ DLT_IEEE802_11 = 0x69 -+ DLT_IEEE802_11_RADIO = 0x7f -+ DLT_IEEE802_11_RADIO_AVS = 0xa3 -+ DLT_IEEE802_15_4 = 0xc3 -+ DLT_IEEE802_15_4_LINUX = 0xbf -+ DLT_IEEE802_15_4_NOFCS = 0xe6 -+ DLT_IEEE802_15_4_NONASK_PHY = 0xd7 -+ DLT_IEEE802_16_MAC_CPS = 0xbc -+ DLT_IEEE802_16_MAC_CPS_RADIO = 0xc1 -+ DLT_INFINIBAND = 0xf7 -+ DLT_IPFILTER = 0x74 -+ DLT_IPMB_KONTRON = 0xc7 -+ DLT_IPMB_LINUX = 0xd1 -+ DLT_IPMI_HPM_2 = 0x104 -+ DLT_IPNET = 0xe2 -+ DLT_IPOIB = 0xf2 -+ DLT_IPV4 = 0xe4 -+ DLT_IPV6 = 0xe5 -+ DLT_IP_OVER_FC = 0x7a -+ DLT_ISO_14443 = 0x108 -+ DLT_JUNIPER_ATM1 = 0x89 -+ DLT_JUNIPER_ATM2 = 0x87 -+ DLT_JUNIPER_ATM_CEMIC = 0xee -+ DLT_JUNIPER_CHDLC = 0xb5 -+ DLT_JUNIPER_ES = 0x84 -+ DLT_JUNIPER_ETHER = 0xb2 -+ DLT_JUNIPER_FIBRECHANNEL = 0xea -+ DLT_JUNIPER_FRELAY = 0xb4 -+ DLT_JUNIPER_GGSN = 0x85 -+ DLT_JUNIPER_ISM = 0xc2 -+ DLT_JUNIPER_MFR = 0x86 -+ DLT_JUNIPER_MLFR = 0x83 -+ DLT_JUNIPER_MLPPP = 0x82 -+ DLT_JUNIPER_MONITOR = 0xa4 -+ DLT_JUNIPER_PIC_PEER = 0xae -+ DLT_JUNIPER_PPP = 0xb3 -+ DLT_JUNIPER_PPPOE = 0xa7 -+ DLT_JUNIPER_PPPOE_ATM = 0xa8 -+ DLT_JUNIPER_SERVICES = 0x88 -+ DLT_JUNIPER_SRX_E2E = 0xe9 -+ DLT_JUNIPER_ST = 0xc8 -+ DLT_JUNIPER_VP = 0xb7 -+ DLT_JUNIPER_VS = 0xe8 -+ DLT_LAPB_WITH_DIR = 0xcf -+ DLT_LAPD = 0xcb -+ DLT_LIN = 0xd4 -+ DLT_LINUX_EVDEV = 0xd8 -+ DLT_LINUX_IRDA = 0x90 -+ DLT_LINUX_LAPD = 0xb1 -+ DLT_LINUX_PPP_WITHDIRECTION = 0xa6 -+ DLT_LINUX_SLL = 0x71 -+ DLT_LINUX_SLL2 = 0x114 -+ DLT_LOOP = 0x6c -+ DLT_LORATAP = 0x10e -+ DLT_LTALK = 0x72 -+ DLT_MATCHING_MAX = 0x114 -+ DLT_MATCHING_MIN = 0x68 -+ DLT_MFR = 0xb6 -+ DLT_MOST = 0xd3 -+ DLT_MPEG_2_TS = 0xf3 -+ DLT_MPLS = 0xdb -+ DLT_MTP2 = 0x8c -+ DLT_MTP2_WITH_PHDR = 0x8b -+ DLT_MTP3 = 0x8d -+ DLT_MUX27010 = 0xec -+ DLT_NETANALYZER = 0xf0 -+ DLT_NETANALYZER_TRANSPARENT = 0xf1 -+ DLT_NETLINK = 0xfd -+ DLT_NFC_LLCP = 0xf5 -+ DLT_NFLOG = 0xef -+ DLT_NG40 = 0xf4 -+ DLT_NORDIC_BLE = 0x110 -+ DLT_NULL = 0x0 -+ DLT_OPENFLOW = 0x10b -+ DLT_PCI_EXP = 0x7d -+ DLT_PFLOG = 0x75 -+ DLT_PFSYNC = 0x79 -+ DLT_PKTAP = 0x102 -+ DLT_PPI = 0xc0 -+ DLT_PPP = 0x9 -+ DLT_PPP_BSDOS = 0xe -+ DLT_PPP_ETHER = 0x33 -+ DLT_PPP_PPPD = 0xa6 -+ DLT_PPP_SERIAL = 0x32 -+ DLT_PPP_WITH_DIR = 0xcc -+ DLT_PPP_WITH_DIRECTION = 0xa6 -+ DLT_PRISM_HEADER = 0x77 -+ DLT_PROFIBUS_DL = 0x101 -+ DLT_PRONET = 0x4 -+ DLT_RAIF1 = 0xc6 -+ DLT_RAW = 0xc -+ DLT_RDS = 0x109 -+ DLT_REDBACK_SMARTEDGE = 0x20 -+ DLT_RIO = 0x7c -+ DLT_RTAC_SERIAL = 0xfa -+ DLT_SCCP = 0x8e -+ DLT_SCTP = 0xf8 -+ DLT_SDLC = 0x10c -+ DLT_SITA = 0xc4 -+ DLT_SLIP = 0x8 -+ DLT_SLIP_BSDOS = 0xd -+ DLT_STANAG_5066_D_PDU = 0xed -+ DLT_SUNATM = 0x7b -+ DLT_SYMANTEC_FIREWALL = 0x63 -+ DLT_TI_LLN_SNIFFER = 0x10d -+ DLT_TZSP = 0x80 -+ DLT_USB = 0xba -+ DLT_USBPCAP = 0xf9 -+ DLT_USB_DARWIN = 0x10a -+ DLT_USB_FREEBSD = 0xba -+ DLT_USB_LINUX = 0xbd -+ DLT_USB_LINUX_MMAPPED = 0xdc -+ DLT_USER0 = 0x93 -+ DLT_USER1 = 0x94 -+ DLT_USER10 = 0x9d -+ DLT_USER11 = 0x9e -+ DLT_USER12 = 0x9f -+ DLT_USER13 = 0xa0 -+ DLT_USER14 = 0xa1 -+ DLT_USER15 = 0xa2 -+ DLT_USER2 = 0x95 -+ DLT_USER3 = 0x96 -+ DLT_USER4 = 0x97 -+ DLT_USER5 = 0x98 -+ DLT_USER6 = 0x99 -+ DLT_USER7 = 0x9a -+ DLT_USER8 = 0x9b -+ DLT_USER9 = 0x9c -+ DLT_VSOCK = 0x10f -+ DLT_WATTSTOPPER_DLM = 0x107 -+ DLT_WIHART = 0xdf -+ DLT_WIRESHARK_UPPER_PDU = 0xfc -+ DLT_X2E_SERIAL = 0xd5 -+ DLT_X2E_XORAYA = 0xd6 -+ DLT_ZWAVE_R1_R2 = 0x105 -+ DLT_ZWAVE_R3 = 0x106 -+ DT_BLK = 0x6 -+ DT_CHR = 0x2 -+ DT_DIR = 0x4 -+ DT_FIFO = 0x1 -+ DT_LNK = 0xa -+ DT_REG = 0x8 -+ DT_SOCK = 0xc -+ DT_UNKNOWN = 0x0 -+ DT_WHT = 0xe -+ ECHO = 0x8 -+ ECHOCTL = 0x40 -+ ECHOE = 0x2 -+ ECHOK = 0x4 -+ ECHOKE = 0x1 -+ ECHONL = 0x10 -+ ECHOPRT = 0x20 -+ EHE_DEAD_PRIORITY = -0x1 -+ EVFILT_AIO = -0x3 -+ EVFILT_EMPTY = -0xd -+ EVFILT_FS = -0x9 -+ EVFILT_LIO = -0xa -+ EVFILT_PROC = -0x5 -+ EVFILT_PROCDESC = -0x8 -+ EVFILT_READ = -0x1 -+ EVFILT_SENDFILE = -0xc -+ EVFILT_SIGNAL = -0x6 -+ EVFILT_SYSCOUNT = 0xd -+ EVFILT_TIMER = -0x7 -+ EVFILT_USER = -0xb -+ EVFILT_VNODE = -0x4 -+ EVFILT_WRITE = -0x2 -+ EVNAMEMAP_NAME_SIZE = 0x40 -+ EV_ADD = 0x1 -+ EV_CLEAR = 0x20 -+ EV_DELETE = 0x2 -+ EV_DISABLE = 0x8 -+ EV_DISPATCH = 0x80 -+ EV_DROP = 0x1000 -+ EV_ENABLE = 0x4 -+ EV_EOF = 0x8000 -+ EV_ERROR = 0x4000 -+ EV_FLAG1 = 0x2000 -+ EV_FLAG2 = 0x4000 -+ EV_FORCEONESHOT = 0x100 -+ EV_ONESHOT = 0x10 -+ EV_RECEIPT = 0x40 -+ EV_SYSFLAGS = 0xf000 -+ EXTA = 0x4b00 -+ EXTATTR_MAXNAMELEN = 0xff -+ EXTATTR_NAMESPACE_EMPTY = 0x0 -+ EXTATTR_NAMESPACE_SYSTEM = 0x2 -+ EXTATTR_NAMESPACE_USER = 0x1 -+ EXTB = 0x9600 -+ EXTPROC = 0x800 -+ FD_CLOEXEC = 0x1 -+ FD_NONE = -0xc8 -+ FD_SETSIZE = 0x400 -+ FLUSHO = 0x800000 -+ F_ADD_SEALS = 0x13 -+ F_CANCEL = 0x5 -+ F_DUP2FD = 0xa -+ F_DUP2FD_CLOEXEC = 0x12 -+ F_DUPFD = 0x0 -+ F_DUPFD_CLOEXEC = 0x11 -+ F_GETFD = 0x1 -+ F_GETFL = 0x3 -+ F_GETLK = 0xb -+ F_GETOWN = 0x5 -+ F_GET_SEALS = 0x14 -+ F_ISUNIONSTACK = 0x15 -+ F_KINFO = 0x16 -+ F_OGETLK = 0x7 -+ F_OK = 0x0 -+ F_OSETLK = 0x8 -+ F_OSETLKW = 0x9 -+ F_RDAHEAD = 0x10 -+ F_RDLCK = 0x1 -+ F_READAHEAD = 0xf -+ F_SEAL_GROW = 0x4 -+ F_SEAL_SEAL = 0x1 -+ F_SEAL_SHRINK = 0x2 -+ F_SEAL_WRITE = 0x8 -+ F_SETFD = 0x2 -+ F_SETFL = 0x4 -+ F_SETLK = 0xc -+ F_SETLKW = 0xd -+ F_SETLK_REMOTE = 0xe -+ F_SETOWN = 0x6 -+ F_UNLCK = 0x2 -+ F_UNLCKSYS = 0x4 -+ F_WRLCK = 0x3 -+ HUPCL = 0x4000 -+ HW_MACHINE = 0x1 -+ ICANON = 0x100 -+ ICMP6_FILTER = 0x12 -+ ICRNL = 0x100 -+ IEXTEN = 0x400 -+ IFAN_ARRIVAL = 0x0 -+ IFAN_DEPARTURE = 0x1 -+ IFCAP_WOL_MAGIC = 0x2000 -+ IFF_ALLMULTI = 0x200 -+ IFF_ALTPHYS = 0x4000 -+ IFF_BROADCAST = 0x2 -+ IFF_CANTCHANGE = 0x218f72 -+ IFF_CANTCONFIG = 0x10000 -+ IFF_DEBUG = 0x4 -+ IFF_DRV_OACTIVE = 0x400 -+ IFF_DRV_RUNNING = 0x40 -+ IFF_DYING = 0x200000 -+ IFF_KNOWSEPOCH = 0x20 -+ IFF_LINK0 = 0x1000 -+ IFF_LINK1 = 0x2000 -+ IFF_LINK2 = 0x4000 -+ IFF_LOOPBACK = 0x8 -+ IFF_MONITOR = 0x40000 -+ IFF_MULTICAST = 0x8000 -+ IFF_NOARP = 0x80 -+ IFF_NOGROUP = 0x800000 -+ IFF_OACTIVE = 0x400 -+ IFF_POINTOPOINT = 0x10 -+ IFF_PPROMISC = 0x20000 -+ IFF_PROMISC = 0x100 -+ IFF_RENAMING = 0x400000 -+ IFF_RUNNING = 0x40 -+ IFF_SIMPLEX = 0x800 -+ IFF_STATICARP = 0x80000 -+ IFF_UP = 0x1 -+ IFNAMSIZ = 0x10 -+ IFT_BRIDGE = 0xd1 -+ IFT_CARP = 0xf8 -+ IFT_IEEE1394 = 0x90 -+ IFT_INFINIBAND = 0xc7 -+ IFT_L2VLAN = 0x87 -+ IFT_L3IPVLAN = 0x88 -+ IFT_PPP = 0x17 -+ IFT_PROPVIRTUAL = 0x35 -+ IGNBRK = 0x1 -+ IGNCR = 0x80 -+ IGNPAR = 0x4 -+ IMAXBEL = 0x2000 -+ INLCR = 0x40 -+ INPCK = 0x10 -+ IN_CLASSA_HOST = 0xffffff -+ IN_CLASSA_MAX = 0x80 -+ IN_CLASSA_NET = 0xff000000 -+ IN_CLASSA_NSHIFT = 0x18 -+ IN_CLASSB_HOST = 0xffff -+ IN_CLASSB_MAX = 0x10000 -+ IN_CLASSB_NET = 0xffff0000 -+ IN_CLASSB_NSHIFT = 0x10 -+ IN_CLASSC_HOST = 0xff -+ IN_CLASSC_NET = 0xffffff00 -+ IN_CLASSC_NSHIFT = 0x8 -+ IN_CLASSD_HOST = 0xfffffff -+ IN_CLASSD_NET = 0xf0000000 -+ IN_CLASSD_NSHIFT = 0x1c -+ IN_LOOPBACKNET = 0x7f -+ IN_NETMASK_DEFAULT = 0xffffff00 -+ IN_RFC3021_MASK = 0xfffffffe -+ IPPROTO_3PC = 0x22 -+ IPPROTO_ADFS = 0x44 -+ IPPROTO_AH = 0x33 -+ IPPROTO_AHIP = 0x3d -+ IPPROTO_APES = 0x63 -+ IPPROTO_ARGUS = 0xd -+ IPPROTO_AX25 = 0x5d -+ IPPROTO_BHA = 0x31 -+ IPPROTO_BLT = 0x1e -+ IPPROTO_BRSATMON = 0x4c -+ IPPROTO_CARP = 0x70 -+ IPPROTO_CFTP = 0x3e -+ IPPROTO_CHAOS = 0x10 -+ IPPROTO_CMTP = 0x26 -+ IPPROTO_CPHB = 0x49 -+ IPPROTO_CPNX = 0x48 -+ IPPROTO_DCCP = 0x21 -+ IPPROTO_DDP = 0x25 -+ IPPROTO_DGP = 0x56 -+ IPPROTO_DIVERT = 0x102 -+ IPPROTO_DONE = 0x101 -+ IPPROTO_DSTOPTS = 0x3c -+ IPPROTO_EGP = 0x8 -+ IPPROTO_EMCON = 0xe -+ IPPROTO_ENCAP = 0x62 -+ IPPROTO_EON = 0x50 -+ IPPROTO_ESP = 0x32 -+ IPPROTO_ETHERIP = 0x61 -+ IPPROTO_FRAGMENT = 0x2c -+ IPPROTO_GGP = 0x3 -+ IPPROTO_GMTP = 0x64 -+ IPPROTO_GRE = 0x2f -+ IPPROTO_HELLO = 0x3f -+ IPPROTO_HIP = 0x8b -+ IPPROTO_HMP = 0x14 -+ IPPROTO_HOPOPTS = 0x0 -+ IPPROTO_ICMP = 0x1 -+ IPPROTO_ICMPV6 = 0x3a -+ IPPROTO_IDP = 0x16 -+ IPPROTO_IDPR = 0x23 -+ IPPROTO_IDRP = 0x2d -+ IPPROTO_IGMP = 0x2 -+ IPPROTO_IGP = 0x55 -+ IPPROTO_IGRP = 0x58 -+ IPPROTO_IL = 0x28 -+ IPPROTO_INLSP = 0x34 -+ IPPROTO_INP = 0x20 -+ IPPROTO_IP = 0x0 -+ IPPROTO_IPCOMP = 0x6c -+ IPPROTO_IPCV = 0x47 -+ IPPROTO_IPEIP = 0x5e -+ IPPROTO_IPIP = 0x4 -+ IPPROTO_IPPC = 0x43 -+ IPPROTO_IPV4 = 0x4 -+ IPPROTO_IPV6 = 0x29 -+ IPPROTO_IRTP = 0x1c -+ IPPROTO_KRYPTOLAN = 0x41 -+ IPPROTO_LARP = 0x5b -+ IPPROTO_LEAF1 = 0x19 -+ IPPROTO_LEAF2 = 0x1a -+ IPPROTO_MAX = 0x100 -+ IPPROTO_MEAS = 0x13 -+ IPPROTO_MH = 0x87 -+ IPPROTO_MHRP = 0x30 -+ IPPROTO_MICP = 0x5f -+ IPPROTO_MOBILE = 0x37 -+ IPPROTO_MPLS = 0x89 -+ IPPROTO_MTP = 0x5c -+ IPPROTO_MUX = 0x12 -+ IPPROTO_ND = 0x4d -+ IPPROTO_NHRP = 0x36 -+ IPPROTO_NONE = 0x3b -+ IPPROTO_NSP = 0x1f -+ IPPROTO_NVPII = 0xb -+ IPPROTO_OLD_DIVERT = 0xfe -+ IPPROTO_OSPFIGP = 0x59 -+ IPPROTO_PFSYNC = 0xf0 -+ IPPROTO_PGM = 0x71 -+ IPPROTO_PIGP = 0x9 -+ IPPROTO_PIM = 0x67 -+ IPPROTO_PRM = 0x15 -+ IPPROTO_PUP = 0xc -+ IPPROTO_PVP = 0x4b -+ IPPROTO_RAW = 0xff -+ IPPROTO_RCCMON = 0xa -+ IPPROTO_RDP = 0x1b -+ IPPROTO_RESERVED_253 = 0xfd -+ IPPROTO_RESERVED_254 = 0xfe -+ IPPROTO_ROUTING = 0x2b -+ IPPROTO_RSVP = 0x2e -+ IPPROTO_RVD = 0x42 -+ IPPROTO_SATEXPAK = 0x40 -+ IPPROTO_SATMON = 0x45 -+ IPPROTO_SCCSP = 0x60 -+ IPPROTO_SCTP = 0x84 -+ IPPROTO_SDRP = 0x2a -+ IPPROTO_SEND = 0x103 -+ IPPROTO_SHIM6 = 0x8c -+ IPPROTO_SKIP = 0x39 -+ IPPROTO_SPACER = 0x7fff -+ IPPROTO_SRPC = 0x5a -+ IPPROTO_ST = 0x7 -+ IPPROTO_SVMTP = 0x52 -+ IPPROTO_SWIPE = 0x35 -+ IPPROTO_TCF = 0x57 -+ IPPROTO_TCP = 0x6 -+ IPPROTO_TLSP = 0x38 -+ IPPROTO_TP = 0x1d -+ IPPROTO_TPXX = 0x27 -+ IPPROTO_TRUNK1 = 0x17 -+ IPPROTO_TRUNK2 = 0x18 -+ IPPROTO_TTP = 0x54 -+ IPPROTO_UDP = 0x11 -+ IPPROTO_UDPLITE = 0x88 -+ IPPROTO_VINES = 0x53 -+ IPPROTO_VISA = 0x46 -+ IPPROTO_VMTP = 0x51 -+ IPPROTO_WBEXPAK = 0x4f -+ IPPROTO_WBMON = 0x4e -+ IPPROTO_WSN = 0x4a -+ IPPROTO_XNET = 0xf -+ IPPROTO_XTP = 0x24 -+ IPV6_AUTOFLOWLABEL = 0x3b -+ IPV6_BINDANY = 0x40 -+ IPV6_BINDMULTI = 0x41 -+ IPV6_BINDV6ONLY = 0x1b -+ IPV6_CHECKSUM = 0x1a -+ IPV6_DEFAULT_MULTICAST_HOPS = 0x1 -+ IPV6_DEFAULT_MULTICAST_LOOP = 0x1 -+ IPV6_DEFHLIM = 0x40 -+ IPV6_DONTFRAG = 0x3e -+ IPV6_DSTOPTS = 0x32 -+ IPV6_FLOWID = 0x43 -+ IPV6_FLOWINFO_MASK = 0xffffff0f -+ IPV6_FLOWLABEL_LEN = 0x14 -+ IPV6_FLOWLABEL_MASK = 0xffff0f00 -+ IPV6_FLOWTYPE = 0x44 -+ IPV6_FRAGTTL = 0x78 -+ IPV6_FW_ADD = 0x1e -+ IPV6_FW_DEL = 0x1f -+ IPV6_FW_FLUSH = 0x20 -+ IPV6_FW_GET = 0x22 -+ IPV6_FW_ZERO = 0x21 -+ IPV6_HLIMDEC = 0x1 -+ IPV6_HOPLIMIT = 0x2f -+ IPV6_HOPOPTS = 0x31 -+ IPV6_IPSEC_POLICY = 0x1c -+ IPV6_JOIN_GROUP = 0xc -+ IPV6_LEAVE_GROUP = 0xd -+ IPV6_MAXHLIM = 0xff -+ IPV6_MAXOPTHDR = 0x800 -+ IPV6_MAXPACKET = 0xffff -+ IPV6_MAX_GROUP_SRC_FILTER = 0x200 -+ IPV6_MAX_MEMBERSHIPS = 0xfff -+ IPV6_MAX_SOCK_SRC_FILTER = 0x80 -+ IPV6_MMTU = 0x500 -+ IPV6_MSFILTER = 0x4a -+ IPV6_MULTICAST_HOPS = 0xa -+ IPV6_MULTICAST_IF = 0x9 -+ IPV6_MULTICAST_LOOP = 0xb -+ IPV6_NEXTHOP = 0x30 -+ IPV6_ORIGDSTADDR = 0x48 -+ IPV6_PATHMTU = 0x2c -+ IPV6_PKTINFO = 0x2e -+ IPV6_PORTRANGE = 0xe -+ IPV6_PORTRANGE_DEFAULT = 0x0 -+ IPV6_PORTRANGE_HIGH = 0x1 -+ IPV6_PORTRANGE_LOW = 0x2 -+ IPV6_PREFER_TEMPADDR = 0x3f -+ IPV6_RECVDSTOPTS = 0x28 -+ IPV6_RECVFLOWID = 0x46 -+ IPV6_RECVHOPLIMIT = 0x25 -+ IPV6_RECVHOPOPTS = 0x27 -+ IPV6_RECVORIGDSTADDR = 0x48 -+ IPV6_RECVPATHMTU = 0x2b -+ IPV6_RECVPKTINFO = 0x24 -+ IPV6_RECVRSSBUCKETID = 0x47 -+ IPV6_RECVRTHDR = 0x26 -+ IPV6_RECVTCLASS = 0x39 -+ IPV6_RSSBUCKETID = 0x45 -+ IPV6_RSS_LISTEN_BUCKET = 0x42 -+ IPV6_RTHDR = 0x33 -+ IPV6_RTHDRDSTOPTS = 0x23 -+ IPV6_RTHDR_LOOSE = 0x0 -+ IPV6_RTHDR_STRICT = 0x1 -+ IPV6_RTHDR_TYPE_0 = 0x0 -+ IPV6_SOCKOPT_RESERVED1 = 0x3 -+ IPV6_TCLASS = 0x3d -+ IPV6_UNICAST_HOPS = 0x4 -+ IPV6_USE_MIN_MTU = 0x2a -+ IPV6_V6ONLY = 0x1b -+ IPV6_VERSION = 0x60 -+ IPV6_VERSION_MASK = 0xf0 -+ IPV6_VLAN_PCP = 0x4b -+ IP_ADD_MEMBERSHIP = 0xc -+ IP_ADD_SOURCE_MEMBERSHIP = 0x46 -+ IP_BINDANY = 0x18 -+ IP_BINDMULTI = 0x19 -+ IP_BLOCK_SOURCE = 0x48 -+ IP_DEFAULT_MULTICAST_LOOP = 0x1 -+ IP_DEFAULT_MULTICAST_TTL = 0x1 -+ IP_DF = 0x4000 -+ IP_DONTFRAG = 0x43 -+ IP_DROP_MEMBERSHIP = 0xd -+ IP_DROP_SOURCE_MEMBERSHIP = 0x47 -+ IP_DUMMYNET3 = 0x31 -+ IP_DUMMYNET_CONFIGURE = 0x3c -+ IP_DUMMYNET_DEL = 0x3d -+ IP_DUMMYNET_FLUSH = 0x3e -+ IP_DUMMYNET_GET = 0x40 -+ IP_FLOWID = 0x5a -+ IP_FLOWTYPE = 0x5b -+ IP_FW3 = 0x30 -+ IP_FW_ADD = 0x32 -+ IP_FW_DEL = 0x33 -+ IP_FW_FLUSH = 0x34 -+ IP_FW_GET = 0x36 -+ IP_FW_NAT_CFG = 0x38 -+ IP_FW_NAT_DEL = 0x39 -+ IP_FW_NAT_GET_CONFIG = 0x3a -+ IP_FW_NAT_GET_LOG = 0x3b -+ IP_FW_RESETLOG = 0x37 -+ IP_FW_TABLE_ADD = 0x28 -+ IP_FW_TABLE_DEL = 0x29 -+ IP_FW_TABLE_FLUSH = 0x2a -+ IP_FW_TABLE_GETSIZE = 0x2b -+ IP_FW_TABLE_LIST = 0x2c -+ IP_FW_ZERO = 0x35 -+ IP_HDRINCL = 0x2 -+ IP_IPSEC_POLICY = 0x15 -+ IP_MAXPACKET = 0xffff -+ IP_MAX_GROUP_SRC_FILTER = 0x200 -+ IP_MAX_MEMBERSHIPS = 0xfff -+ IP_MAX_SOCK_MUTE_FILTER = 0x80 -+ IP_MAX_SOCK_SRC_FILTER = 0x80 -+ IP_MF = 0x2000 -+ IP_MINTTL = 0x42 -+ IP_MSFILTER = 0x4a -+ IP_MSS = 0x240 -+ IP_MULTICAST_IF = 0x9 -+ IP_MULTICAST_LOOP = 0xb -+ IP_MULTICAST_TTL = 0xa -+ IP_MULTICAST_VIF = 0xe -+ IP_OFFMASK = 0x1fff -+ IP_ONESBCAST = 0x17 -+ IP_OPTIONS = 0x1 -+ IP_ORIGDSTADDR = 0x1b -+ IP_PORTRANGE = 0x13 -+ IP_PORTRANGE_DEFAULT = 0x0 -+ IP_PORTRANGE_HIGH = 0x1 -+ IP_PORTRANGE_LOW = 0x2 -+ IP_RECVDSTADDR = 0x7 -+ IP_RECVFLOWID = 0x5d -+ IP_RECVIF = 0x14 -+ IP_RECVOPTS = 0x5 -+ IP_RECVORIGDSTADDR = 0x1b -+ IP_RECVRETOPTS = 0x6 -+ IP_RECVRSSBUCKETID = 0x5e -+ IP_RECVTOS = 0x44 -+ IP_RECVTTL = 0x41 -+ IP_RETOPTS = 0x8 -+ IP_RF = 0x8000 -+ IP_RSSBUCKETID = 0x5c -+ IP_RSS_LISTEN_BUCKET = 0x1a -+ IP_RSVP_OFF = 0x10 -+ IP_RSVP_ON = 0xf -+ IP_RSVP_VIF_OFF = 0x12 -+ IP_RSVP_VIF_ON = 0x11 -+ IP_SENDSRCADDR = 0x7 -+ IP_TOS = 0x3 -+ IP_TTL = 0x4 -+ IP_UNBLOCK_SOURCE = 0x49 -+ IP_VLAN_PCP = 0x4b -+ ISIG = 0x80 -+ ISTRIP = 0x20 -+ ITIMER_PROF = 0x2 -+ ITIMER_REAL = 0x0 -+ ITIMER_VIRTUAL = 0x1 -+ IXANY = 0x800 -+ IXOFF = 0x400 -+ IXON = 0x200 -+ KERN_HOSTNAME = 0xa -+ KERN_OSRELEASE = 0x2 -+ KERN_OSTYPE = 0x1 -+ KERN_VERSION = 0x4 -+ LOCAL_CONNWAIT = 0x4 -+ LOCAL_CREDS = 0x2 -+ LOCAL_CREDS_PERSISTENT = 0x3 -+ LOCAL_PEERCRED = 0x1 -+ LOCAL_VENDOR = 0x80000000 -+ LOCK_EX = 0x2 -+ LOCK_NB = 0x4 -+ LOCK_SH = 0x1 -+ LOCK_UN = 0x8 -+ MADV_AUTOSYNC = 0x7 -+ MADV_CORE = 0x9 -+ MADV_DONTNEED = 0x4 -+ MADV_FREE = 0x5 -+ MADV_NOCORE = 0x8 -+ MADV_NORMAL = 0x0 -+ MADV_NOSYNC = 0x6 -+ MADV_PROTECT = 0xa -+ MADV_RANDOM = 0x1 -+ MADV_SEQUENTIAL = 0x2 -+ MADV_WILLNEED = 0x3 -+ MAP_32BIT = 0x80000 -+ MAP_ALIGNED_SUPER = 0x1000000 -+ MAP_ALIGNMENT_MASK = -0x1000000 -+ MAP_ALIGNMENT_SHIFT = 0x18 -+ MAP_ANON = 0x1000 -+ MAP_ANONYMOUS = 0x1000 -+ MAP_COPY = 0x2 -+ MAP_EXCL = 0x4000 -+ MAP_FILE = 0x0 -+ MAP_FIXED = 0x10 -+ MAP_GUARD = 0x2000 -+ MAP_HASSEMAPHORE = 0x200 -+ MAP_NOCORE = 0x20000 -+ MAP_NOSYNC = 0x800 -+ MAP_PREFAULT_READ = 0x40000 -+ MAP_PRIVATE = 0x2 -+ MAP_RESERVED0020 = 0x20 -+ MAP_RESERVED0040 = 0x40 -+ MAP_RESERVED0080 = 0x80 -+ MAP_RESERVED0100 = 0x100 -+ MAP_SHARED = 0x1 -+ MAP_STACK = 0x400 -+ MCAST_BLOCK_SOURCE = 0x54 -+ MCAST_EXCLUDE = 0x2 -+ MCAST_INCLUDE = 0x1 -+ MCAST_JOIN_GROUP = 0x50 -+ MCAST_JOIN_SOURCE_GROUP = 0x52 -+ MCAST_LEAVE_GROUP = 0x51 -+ MCAST_LEAVE_SOURCE_GROUP = 0x53 -+ MCAST_UNBLOCK_SOURCE = 0x55 -+ MCAST_UNDEFINED = 0x0 -+ MCL_CURRENT = 0x1 -+ MCL_FUTURE = 0x2 -+ MFD_ALLOW_SEALING = 0x2 -+ MFD_CLOEXEC = 0x1 -+ MFD_HUGETLB = 0x4 -+ MFD_HUGE_16GB = -0x78000000 -+ MFD_HUGE_16MB = 0x60000000 -+ MFD_HUGE_1GB = 0x78000000 -+ MFD_HUGE_1MB = 0x50000000 -+ MFD_HUGE_256MB = 0x70000000 -+ MFD_HUGE_2GB = 0x7c000000 -+ MFD_HUGE_2MB = 0x54000000 -+ MFD_HUGE_32MB = 0x64000000 -+ MFD_HUGE_512KB = 0x4c000000 -+ MFD_HUGE_512MB = 0x74000000 -+ MFD_HUGE_64KB = 0x40000000 -+ MFD_HUGE_8MB = 0x5c000000 -+ MFD_HUGE_MASK = 0xfc000000 -+ MFD_HUGE_SHIFT = 0x1a -+ MNT_ACLS = 0x8000000 -+ MNT_ASYNC = 0x40 -+ MNT_AUTOMOUNTED = 0x200000000 -+ MNT_BYFSID = 0x8000000 -+ MNT_CMDFLAGS = 0x300d0f0000 -+ MNT_DEFEXPORTED = 0x200 -+ MNT_DELEXPORT = 0x20000 -+ MNT_EMPTYDIR = 0x2000000000 -+ MNT_EXKERB = 0x800 -+ MNT_EXPORTANON = 0x400 -+ MNT_EXPORTED = 0x100 -+ MNT_EXPUBLIC = 0x20000000 -+ MNT_EXRDONLY = 0x80 -+ MNT_EXTLS = 0x4000000000 -+ MNT_EXTLSCERT = 0x8000000000 -+ MNT_EXTLSCERTUSER = 0x10000000000 -+ MNT_FORCE = 0x80000 -+ MNT_GJOURNAL = 0x2000000 -+ MNT_IGNORE = 0x800000 -+ MNT_LAZY = 0x3 -+ MNT_LOCAL = 0x1000 -+ MNT_MULTILABEL = 0x4000000 -+ MNT_NFS4ACLS = 0x10 -+ MNT_NOATIME = 0x10000000 -+ MNT_NOCLUSTERR = 0x40000000 -+ MNT_NOCLUSTERW = 0x80000000 -+ MNT_NOCOVER = 0x1000000000 -+ MNT_NOEXEC = 0x4 -+ MNT_NONBUSY = 0x4000000 -+ MNT_NOSUID = 0x8 -+ MNT_NOSYMFOLLOW = 0x400000 -+ MNT_NOWAIT = 0x2 -+ MNT_QUOTA = 0x2000 -+ MNT_RDONLY = 0x1 -+ MNT_RELOAD = 0x40000 -+ MNT_ROOTFS = 0x4000 -+ MNT_SNAPSHOT = 0x1000000 -+ MNT_SOFTDEP = 0x200000 -+ MNT_SUIDDIR = 0x100000 -+ MNT_SUJ = 0x100000000 -+ MNT_SUSPEND = 0x4 -+ MNT_SYNCHRONOUS = 0x2 -+ MNT_UNION = 0x20 -+ MNT_UNTRUSTED = 0x800000000 -+ MNT_UPDATE = 0x10000 -+ MNT_UPDATEMASK = 0xad8d0807e -+ MNT_USER = 0x8000 -+ MNT_VERIFIED = 0x400000000 -+ MNT_VISFLAGMASK = 0xffef0ffff -+ MNT_WAIT = 0x1 -+ MSG_CMSG_CLOEXEC = 0x40000 -+ MSG_COMPAT = 0x8000 -+ MSG_CTRUNC = 0x20 -+ MSG_DONTROUTE = 0x4 -+ MSG_DONTWAIT = 0x80 -+ MSG_EOF = 0x100 -+ MSG_EOR = 0x8 -+ MSG_NBIO = 0x4000 -+ MSG_NOSIGNAL = 0x20000 -+ MSG_NOTIFICATION = 0x2000 -+ MSG_OOB = 0x1 -+ MSG_PEEK = 0x2 -+ MSG_TRUNC = 0x10 -+ MSG_WAITALL = 0x40 -+ MSG_WAITFORONE = 0x80000 -+ MS_ASYNC = 0x1 -+ MS_INVALIDATE = 0x2 -+ MS_SYNC = 0x0 -+ NAME_MAX = 0xff -+ NET_RT_DUMP = 0x1 -+ NET_RT_FLAGS = 0x2 -+ NET_RT_IFLIST = 0x3 -+ NET_RT_IFLISTL = 0x5 -+ NET_RT_IFMALIST = 0x4 -+ NET_RT_NHGRP = 0x7 -+ NET_RT_NHOP = 0x6 -+ NFDBITS = 0x40 -+ NOFLSH = 0x80000000 -+ NOKERNINFO = 0x2000000 -+ NOTE_ABSTIME = 0x10 -+ NOTE_ATTRIB = 0x8 -+ NOTE_CHILD = 0x4 -+ NOTE_CLOSE = 0x100 -+ NOTE_CLOSE_WRITE = 0x200 -+ NOTE_DELETE = 0x1 -+ NOTE_EXEC = 0x20000000 -+ NOTE_EXIT = 0x80000000 -+ NOTE_EXTEND = 0x4 -+ NOTE_FFAND = 0x40000000 -+ NOTE_FFCOPY = 0xc0000000 -+ NOTE_FFCTRLMASK = 0xc0000000 -+ NOTE_FFLAGSMASK = 0xffffff -+ NOTE_FFNOP = 0x0 -+ NOTE_FFOR = 0x80000000 -+ NOTE_FILE_POLL = 0x2 -+ NOTE_FORK = 0x40000000 -+ NOTE_LINK = 0x10 -+ NOTE_LOWAT = 0x1 -+ NOTE_MSECONDS = 0x2 -+ NOTE_NSECONDS = 0x8 -+ NOTE_OPEN = 0x80 -+ NOTE_PCTRLMASK = 0xf0000000 -+ NOTE_PDATAMASK = 0xfffff -+ NOTE_READ = 0x400 -+ NOTE_RENAME = 0x20 -+ NOTE_REVOKE = 0x40 -+ NOTE_SECONDS = 0x1 -+ NOTE_TRACK = 0x1 -+ NOTE_TRACKERR = 0x2 -+ NOTE_TRIGGER = 0x1000000 -+ NOTE_USECONDS = 0x4 -+ NOTE_WRITE = 0x2 -+ OCRNL = 0x10 -+ ONLCR = 0x2 -+ ONLRET = 0x40 -+ ONOCR = 0x20 -+ ONOEOT = 0x8 -+ OPOST = 0x1 -+ OXTABS = 0x4 -+ O_ACCMODE = 0x3 -+ O_APPEND = 0x8 -+ O_ASYNC = 0x40 -+ O_CLOEXEC = 0x100000 -+ O_CREAT = 0x200 -+ O_DIRECT = 0x10000 -+ O_DIRECTORY = 0x20000 -+ O_DSYNC = 0x1000000 -+ O_EMPTY_PATH = 0x2000000 -+ O_EXCL = 0x800 -+ O_EXEC = 0x40000 -+ O_EXLOCK = 0x20 -+ O_FSYNC = 0x80 -+ O_NDELAY = 0x4 -+ O_NOCTTY = 0x8000 -+ O_NOFOLLOW = 0x100 -+ O_NONBLOCK = 0x4 -+ O_PATH = 0x400000 -+ O_RDONLY = 0x0 -+ O_RDWR = 0x2 -+ O_RESOLVE_BENEATH = 0x800000 -+ O_SEARCH = 0x40000 -+ O_SHLOCK = 0x10 -+ O_SYNC = 0x80 -+ O_TRUNC = 0x400 -+ O_TTY_INIT = 0x80000 -+ O_VERIFY = 0x200000 -+ O_WRONLY = 0x1 -+ PARENB = 0x1000 -+ PARMRK = 0x8 -+ PARODD = 0x2000 -+ PENDIN = 0x20000000 -+ PIOD_READ_D = 0x1 -+ PIOD_READ_I = 0x3 -+ PIOD_WRITE_D = 0x2 -+ PIOD_WRITE_I = 0x4 -+ PRIO_PGRP = 0x1 -+ PRIO_PROCESS = 0x0 -+ PRIO_USER = 0x2 -+ PROT_EXEC = 0x4 -+ PROT_NONE = 0x0 -+ PROT_READ = 0x1 -+ PROT_WRITE = 0x2 -+ PTRACE_DEFAULT = 0x1 -+ PTRACE_EXEC = 0x1 -+ PTRACE_FORK = 0x8 -+ PTRACE_LWP = 0x10 -+ PTRACE_SCE = 0x2 -+ PTRACE_SCX = 0x4 -+ PTRACE_SYSCALL = 0x6 -+ PTRACE_VFORK = 0x20 -+ PT_ATTACH = 0xa -+ PT_CLEARSTEP = 0x10 -+ PT_CONTINUE = 0x7 -+ PT_COREDUMP = 0x1d -+ PT_DETACH = 0xb -+ PT_FIRSTMACH = 0x40 -+ PT_FOLLOW_FORK = 0x17 -+ PT_GETDBREGS = 0x25 -+ PT_GETFPREGS = 0x23 -+ PT_GETLWPLIST = 0xf -+ PT_GETNUMLWPS = 0xe -+ PT_GETREGS = 0x21 -+ PT_GET_EVENT_MASK = 0x19 -+ PT_GET_SC_ARGS = 0x1b -+ PT_GET_SC_RET = 0x1c -+ PT_IO = 0xc -+ PT_KILL = 0x8 -+ PT_LWPINFO = 0xd -+ PT_LWP_EVENTS = 0x18 -+ PT_READ_D = 0x2 -+ PT_READ_I = 0x1 -+ PT_RESUME = 0x13 -+ PT_SETDBREGS = 0x26 -+ PT_SETFPREGS = 0x24 -+ PT_SETREGS = 0x22 -+ PT_SETSTEP = 0x11 -+ PT_SET_EVENT_MASK = 0x1a -+ PT_STEP = 0x9 -+ PT_SUSPEND = 0x12 -+ PT_SYSCALL = 0x16 -+ PT_TO_SCE = 0x14 -+ PT_TO_SCX = 0x15 -+ PT_TRACE_ME = 0x0 -+ PT_VM_ENTRY = 0x29 -+ PT_VM_TIMESTAMP = 0x28 -+ PT_WRITE_D = 0x5 -+ PT_WRITE_I = 0x4 -+ P_ZONEID = 0xc -+ RLIMIT_AS = 0xa -+ RLIMIT_CORE = 0x4 -+ RLIMIT_CPU = 0x0 -+ RLIMIT_DATA = 0x2 -+ RLIMIT_FSIZE = 0x1 -+ RLIMIT_MEMLOCK = 0x6 -+ RLIMIT_NOFILE = 0x8 -+ RLIMIT_NPROC = 0x7 -+ RLIMIT_RSS = 0x5 -+ RLIMIT_STACK = 0x3 -+ RLIM_INFINITY = 0x7fffffffffffffff -+ RTAX_AUTHOR = 0x6 -+ RTAX_BRD = 0x7 -+ RTAX_DST = 0x0 -+ RTAX_GATEWAY = 0x1 -+ RTAX_GENMASK = 0x3 -+ RTAX_IFA = 0x5 -+ RTAX_IFP = 0x4 -+ RTAX_MAX = 0x8 -+ RTAX_NETMASK = 0x2 -+ RTA_AUTHOR = 0x40 -+ RTA_BRD = 0x80 -+ RTA_DST = 0x1 -+ RTA_GATEWAY = 0x2 -+ RTA_GENMASK = 0x8 -+ RTA_IFA = 0x20 -+ RTA_IFP = 0x10 -+ RTA_NETMASK = 0x4 -+ RTF_BLACKHOLE = 0x1000 -+ RTF_BROADCAST = 0x400000 -+ RTF_DONE = 0x40 -+ RTF_DYNAMIC = 0x10 -+ RTF_FIXEDMTU = 0x80000 -+ RTF_FMASK = 0x1004d808 -+ RTF_GATEWAY = 0x2 -+ RTF_GWFLAG_COMPAT = 0x80000000 -+ RTF_HOST = 0x4 -+ RTF_LLDATA = 0x400 -+ RTF_LLINFO = 0x400 -+ RTF_LOCAL = 0x200000 -+ RTF_MODIFIED = 0x20 -+ RTF_MULTICAST = 0x800000 -+ RTF_PINNED = 0x100000 -+ RTF_PROTO1 = 0x8000 -+ RTF_PROTO2 = 0x4000 -+ RTF_PROTO3 = 0x40000 -+ RTF_REJECT = 0x8 -+ RTF_STATIC = 0x800 -+ RTF_STICKY = 0x10000000 -+ RTF_UP = 0x1 -+ RTF_XRESOLVE = 0x200 -+ RTM_ADD = 0x1 -+ RTM_CHANGE = 0x3 -+ RTM_DELADDR = 0xd -+ RTM_DELETE = 0x2 -+ RTM_DELMADDR = 0x10 -+ RTM_GET = 0x4 -+ RTM_IEEE80211 = 0x12 -+ RTM_IFANNOUNCE = 0x11 -+ RTM_IFINFO = 0xe -+ RTM_LOCK = 0x8 -+ RTM_LOSING = 0x5 -+ RTM_MISS = 0x7 -+ RTM_NEWADDR = 0xc -+ RTM_NEWMADDR = 0xf -+ RTM_REDIRECT = 0x6 -+ RTM_RESOLVE = 0xb -+ RTM_RTTUNIT = 0xf4240 -+ RTM_VERSION = 0x5 -+ RTV_EXPIRE = 0x4 -+ RTV_HOPCOUNT = 0x2 -+ RTV_MTU = 0x1 -+ RTV_RPIPE = 0x8 -+ RTV_RTT = 0x40 -+ RTV_RTTVAR = 0x80 -+ RTV_SPIPE = 0x10 -+ RTV_SSTHRESH = 0x20 -+ RTV_WEIGHT = 0x100 -+ RT_ALL_FIBS = -0x1 -+ RT_BLACKHOLE = 0x40 -+ RT_DEFAULT_FIB = 0x0 -+ RT_DEFAULT_WEIGHT = 0x1 -+ RT_HAS_GW = 0x80 -+ RT_HAS_HEADER = 0x10 -+ RT_HAS_HEADER_BIT = 0x4 -+ RT_L2_ME = 0x4 -+ RT_L2_ME_BIT = 0x2 -+ RT_LLE_CACHE = 0x100 -+ RT_MAX_WEIGHT = 0xffffff -+ RT_MAY_LOOP = 0x8 -+ RT_MAY_LOOP_BIT = 0x3 -+ RT_REJECT = 0x20 -+ RUSAGE_CHILDREN = -0x1 -+ RUSAGE_SELF = 0x0 -+ RUSAGE_THREAD = 0x1 -+ SCM_BINTIME = 0x4 -+ SCM_CREDS = 0x3 -+ SCM_CREDS2 = 0x8 -+ SCM_MONOTONIC = 0x6 -+ SCM_REALTIME = 0x5 -+ SCM_RIGHTS = 0x1 -+ SCM_TIMESTAMP = 0x2 -+ SCM_TIME_INFO = 0x7 -+ SEEK_CUR = 0x1 -+ SEEK_DATA = 0x3 -+ SEEK_END = 0x2 -+ SEEK_HOLE = 0x4 -+ SEEK_SET = 0x0 -+ SHUT_RD = 0x0 -+ SHUT_RDWR = 0x2 -+ SHUT_WR = 0x1 -+ SIOCADDMULTI = 0x80206931 -+ SIOCAIFADDR = 0x8040691a -+ SIOCAIFGROUP = 0x80286987 -+ SIOCATMARK = 0x40047307 -+ SIOCDELMULTI = 0x80206932 -+ SIOCDIFADDR = 0x80206919 -+ SIOCDIFGROUP = 0x80286989 -+ SIOCDIFPHYADDR = 0x80206949 -+ SIOCGDRVSPEC = 0xc028697b -+ SIOCGETSGCNT = 0xc0207210 -+ SIOCGETVIFCNT = 0xc028720f -+ SIOCGHIWAT = 0x40047301 -+ SIOCGHWADDR = 0xc020693e -+ SIOCGI2C = 0xc020693d -+ SIOCGIFADDR = 0xc0206921 -+ SIOCGIFALIAS = 0xc044692d -+ SIOCGIFBRDADDR = 0xc0206923 -+ SIOCGIFCAP = 0xc020691f -+ SIOCGIFCONF = 0xc0106924 -+ SIOCGIFDATA = 0x8020692c -+ SIOCGIFDESCR = 0xc020692a -+ SIOCGIFDOWNREASON = 0xc058699a -+ SIOCGIFDSTADDR = 0xc0206922 -+ SIOCGIFFIB = 0xc020695c -+ SIOCGIFFLAGS = 0xc0206911 -+ SIOCGIFGENERIC = 0xc020693a -+ SIOCGIFGMEMB = 0xc028698a -+ SIOCGIFGROUP = 0xc0286988 -+ SIOCGIFINDEX = 0xc0206920 -+ SIOCGIFMAC = 0xc0206926 -+ SIOCGIFMEDIA = 0xc0306938 -+ SIOCGIFMETRIC = 0xc0206917 -+ SIOCGIFMTU = 0xc0206933 -+ SIOCGIFNETMASK = 0xc0206925 -+ SIOCGIFPDSTADDR = 0xc0206948 -+ SIOCGIFPHYS = 0xc0206935 -+ SIOCGIFPSRCADDR = 0xc0206947 -+ SIOCGIFRSSHASH = 0xc0186997 -+ SIOCGIFRSSKEY = 0xc0946996 -+ SIOCGIFSTATUS = 0xc331693b -+ SIOCGIFXMEDIA = 0xc030698b -+ SIOCGLANPCP = 0xc0206998 -+ SIOCGLOWAT = 0x40047303 -+ SIOCGPGRP = 0x40047309 -+ SIOCGPRIVATE_0 = 0xc0206950 -+ SIOCGPRIVATE_1 = 0xc0206951 -+ SIOCGTUNFIB = 0xc020695e -+ SIOCIFCREATE = 0xc020697a -+ SIOCIFCREATE2 = 0xc020697c -+ SIOCIFDESTROY = 0x80206979 -+ SIOCIFGCLONERS = 0xc0106978 -+ SIOCSDRVSPEC = 0x8028697b -+ SIOCSHIWAT = 0x80047300 -+ SIOCSIFADDR = 0x8020690c -+ SIOCSIFBRDADDR = 0x80206913 -+ SIOCSIFCAP = 0x8020691e -+ SIOCSIFDESCR = 0x80206929 -+ SIOCSIFDSTADDR = 0x8020690e -+ SIOCSIFFIB = 0x8020695d -+ SIOCSIFFLAGS = 0x80206910 -+ SIOCSIFGENERIC = 0x80206939 -+ SIOCSIFLLADDR = 0x8020693c -+ SIOCSIFMAC = 0x80206927 -+ SIOCSIFMEDIA = 0xc0206937 -+ SIOCSIFMETRIC = 0x80206918 -+ SIOCSIFMTU = 0x80206934 -+ SIOCSIFNAME = 0x80206928 -+ SIOCSIFNETMASK = 0x80206916 -+ SIOCSIFPHYADDR = 0x80406946 -+ SIOCSIFPHYS = 0x80206936 -+ SIOCSIFRVNET = 0xc020695b -+ SIOCSIFVNET = 0xc020695a -+ SIOCSLANPCP = 0x80206999 -+ SIOCSLOWAT = 0x80047302 -+ SIOCSPGRP = 0x80047308 -+ SIOCSTUNFIB = 0x8020695f -+ SOCK_CLOEXEC = 0x10000000 -+ SOCK_DGRAM = 0x2 -+ SOCK_MAXADDRLEN = 0xff -+ SOCK_NONBLOCK = 0x20000000 -+ SOCK_RAW = 0x3 -+ SOCK_RDM = 0x4 -+ SOCK_SEQPACKET = 0x5 -+ SOCK_STREAM = 0x1 -+ SOL_LOCAL = 0x0 -+ SOL_SOCKET = 0xffff -+ SOMAXCONN = 0x80 -+ SO_ACCEPTCONN = 0x2 -+ SO_ACCEPTFILTER = 0x1000 -+ SO_BINTIME = 0x2000 -+ SO_BROADCAST = 0x20 -+ SO_DEBUG = 0x1 -+ SO_DOMAIN = 0x1019 -+ SO_DONTROUTE = 0x10 -+ SO_ERROR = 0x1007 -+ SO_KEEPALIVE = 0x8 -+ SO_LABEL = 0x1009 -+ SO_LINGER = 0x80 -+ SO_LISTENINCQLEN = 0x1013 -+ SO_LISTENQLEN = 0x1012 -+ SO_LISTENQLIMIT = 0x1011 -+ SO_MAX_PACING_RATE = 0x1018 -+ SO_NOSIGPIPE = 0x800 -+ SO_NO_DDP = 0x8000 -+ SO_NO_OFFLOAD = 0x4000 -+ SO_OOBINLINE = 0x100 -+ SO_PEERLABEL = 0x1010 -+ SO_PROTOCOL = 0x1016 -+ SO_PROTOTYPE = 0x1016 -+ SO_RCVBUF = 0x1002 -+ SO_RCVLOWAT = 0x1004 -+ SO_RCVTIMEO = 0x1006 -+ SO_RERROR = 0x20000 -+ SO_REUSEADDR = 0x4 -+ SO_REUSEPORT = 0x200 -+ SO_REUSEPORT_LB = 0x10000 -+ SO_SETFIB = 0x1014 -+ SO_SNDBUF = 0x1001 -+ SO_SNDLOWAT = 0x1003 -+ SO_SNDTIMEO = 0x1005 -+ SO_TIMESTAMP = 0x400 -+ SO_TS_BINTIME = 0x1 -+ SO_TS_CLOCK = 0x1017 -+ SO_TS_CLOCK_MAX = 0x3 -+ SO_TS_DEFAULT = 0x0 -+ SO_TS_MONOTONIC = 0x3 -+ SO_TS_REALTIME = 0x2 -+ SO_TS_REALTIME_MICRO = 0x0 -+ SO_TYPE = 0x1008 -+ SO_USELOOPBACK = 0x40 -+ SO_USER_COOKIE = 0x1015 -+ SO_VENDOR = 0x80000000 -+ S_BLKSIZE = 0x200 -+ S_IEXEC = 0x40 -+ S_IFBLK = 0x6000 -+ S_IFCHR = 0x2000 -+ S_IFDIR = 0x4000 -+ S_IFIFO = 0x1000 -+ S_IFLNK = 0xa000 -+ S_IFMT = 0xf000 -+ S_IFREG = 0x8000 -+ S_IFSOCK = 0xc000 -+ S_IFWHT = 0xe000 -+ S_IREAD = 0x100 -+ S_IRGRP = 0x20 -+ S_IROTH = 0x4 -+ S_IRUSR = 0x100 -+ S_IRWXG = 0x38 -+ S_IRWXO = 0x7 -+ S_IRWXU = 0x1c0 -+ S_ISGID = 0x400 -+ S_ISTXT = 0x200 -+ S_ISUID = 0x800 -+ S_ISVTX = 0x200 -+ S_IWGRP = 0x10 -+ S_IWOTH = 0x2 -+ S_IWRITE = 0x80 -+ S_IWUSR = 0x80 -+ S_IXGRP = 0x8 -+ S_IXOTH = 0x1 -+ S_IXUSR = 0x40 -+ TAB0 = 0x0 -+ TAB3 = 0x4 -+ TABDLY = 0x4 -+ TCIFLUSH = 0x1 -+ TCIOFF = 0x3 -+ TCIOFLUSH = 0x3 -+ TCION = 0x4 -+ TCOFLUSH = 0x2 -+ TCOOFF = 0x1 -+ TCOON = 0x2 -+ TCPOPT_EOL = 0x0 -+ TCPOPT_FAST_OPEN = 0x22 -+ TCPOPT_MAXSEG = 0x2 -+ TCPOPT_NOP = 0x1 -+ TCPOPT_PAD = 0x0 -+ TCPOPT_SACK = 0x5 -+ TCPOPT_SACK_PERMITTED = 0x4 -+ TCPOPT_SIGNATURE = 0x13 -+ TCPOPT_TIMESTAMP = 0x8 -+ TCPOPT_WINDOW = 0x3 -+ TCP_BBR_ACK_COMP_ALG = 0x448 -+ TCP_BBR_ALGORITHM = 0x43b -+ TCP_BBR_DRAIN_INC_EXTRA = 0x43c -+ TCP_BBR_DRAIN_PG = 0x42e -+ TCP_BBR_EXTRA_GAIN = 0x449 -+ TCP_BBR_EXTRA_STATE = 0x453 -+ TCP_BBR_FLOOR_MIN_TSO = 0x454 -+ TCP_BBR_HDWR_PACE = 0x451 -+ TCP_BBR_HOLD_TARGET = 0x436 -+ TCP_BBR_IWINTSO = 0x42b -+ TCP_BBR_LOWGAIN_FD = 0x436 -+ TCP_BBR_LOWGAIN_HALF = 0x435 -+ TCP_BBR_LOWGAIN_THRESH = 0x434 -+ TCP_BBR_MAX_RTO = 0x439 -+ TCP_BBR_MIN_RTO = 0x438 -+ TCP_BBR_MIN_TOPACEOUT = 0x455 -+ TCP_BBR_ONE_RETRAN = 0x431 -+ TCP_BBR_PACE_CROSS = 0x442 -+ TCP_BBR_PACE_DEL_TAR = 0x43f -+ TCP_BBR_PACE_OH = 0x435 -+ TCP_BBR_PACE_PER_SEC = 0x43e -+ TCP_BBR_PACE_SEG_MAX = 0x440 -+ TCP_BBR_PACE_SEG_MIN = 0x441 -+ TCP_BBR_POLICER_DETECT = 0x457 -+ TCP_BBR_PROBE_RTT_GAIN = 0x44d -+ TCP_BBR_PROBE_RTT_INT = 0x430 -+ TCP_BBR_PROBE_RTT_LEN = 0x44e -+ TCP_BBR_RACK_INIT_RATE = 0x458 -+ TCP_BBR_RACK_RTT_USE = 0x44a -+ TCP_BBR_RECFORCE = 0x42c -+ TCP_BBR_REC_OVER_HPTS = 0x43a -+ TCP_BBR_RETRAN_WTSO = 0x44b -+ TCP_BBR_RWND_IS_APP = 0x42f -+ TCP_BBR_SEND_IWND_IN_TSO = 0x44f -+ TCP_BBR_STARTUP_EXIT_EPOCH = 0x43d -+ TCP_BBR_STARTUP_LOSS_EXIT = 0x432 -+ TCP_BBR_STARTUP_PG = 0x42d -+ TCP_BBR_TMR_PACE_OH = 0x448 -+ TCP_BBR_TSLIMITS = 0x434 -+ TCP_BBR_TSTMP_RAISES = 0x456 -+ TCP_BBR_UNLIMITED = 0x43b -+ TCP_BBR_USEDEL_RATE = 0x437 -+ TCP_BBR_USE_LOWGAIN = 0x433 -+ TCP_BBR_USE_RACK_CHEAT = 0x450 -+ TCP_BBR_USE_RACK_RR = 0x450 -+ TCP_BBR_UTTER_MAX_TSO = 0x452 -+ TCP_CA_NAME_MAX = 0x10 -+ TCP_CCALGOOPT = 0x41 -+ TCP_CONGESTION = 0x40 -+ TCP_DATA_AFTER_CLOSE = 0x44c -+ TCP_DEFER_OPTIONS = 0x470 -+ TCP_DELACK = 0x48 -+ TCP_FASTOPEN = 0x401 -+ TCP_FASTOPEN_MAX_COOKIE_LEN = 0x10 -+ TCP_FASTOPEN_MIN_COOKIE_LEN = 0x4 -+ TCP_FASTOPEN_PSK_LEN = 0x10 -+ TCP_FAST_RSM_HACK = 0x471 -+ TCP_FIN_IS_RST = 0x49 -+ TCP_FUNCTION_BLK = 0x2000 -+ TCP_FUNCTION_NAME_LEN_MAX = 0x20 -+ TCP_HDWR_RATE_CAP = 0x46a -+ TCP_HDWR_UP_ONLY = 0x46c -+ TCP_IDLE_REDUCE = 0x46 -+ TCP_INFO = 0x20 -+ TCP_IWND_NB = 0x2b -+ TCP_IWND_NSEG = 0x2c -+ TCP_KEEPCNT = 0x400 -+ TCP_KEEPIDLE = 0x100 -+ TCP_KEEPINIT = 0x80 -+ TCP_KEEPINTVL = 0x200 -+ TCP_LOG = 0x22 -+ TCP_LOGBUF = 0x23 -+ TCP_LOGDUMP = 0x25 -+ TCP_LOGDUMPID = 0x26 -+ TCP_LOGID = 0x24 -+ TCP_LOGID_CNT = 0x2e -+ TCP_LOG_ID_LEN = 0x40 -+ TCP_LOG_LIMIT = 0x4a -+ TCP_LOG_TAG = 0x2f -+ TCP_MAXBURST = 0x4 -+ TCP_MAXHLEN = 0x3c -+ TCP_MAXOLEN = 0x28 -+ TCP_MAXPEAKRATE = 0x45 -+ TCP_MAXSEG = 0x2 -+ TCP_MAXUNACKTIME = 0x44 -+ TCP_MAXWIN = 0xffff -+ TCP_MAX_SACK = 0x4 -+ TCP_MAX_WINSHIFT = 0xe -+ TCP_MD5SIG = 0x10 -+ TCP_MINMSS = 0xd8 -+ TCP_MSS = 0x218 -+ TCP_NODELAY = 0x1 -+ TCP_NOOPT = 0x8 -+ TCP_NOPUSH = 0x4 -+ TCP_NO_PRR = 0x462 -+ TCP_PACING_RATE_CAP = 0x46b -+ TCP_PCAP_IN = 0x1000 -+ TCP_PCAP_OUT = 0x800 -+ TCP_PERF_INFO = 0x4e -+ TCP_PROC_ACCOUNTING = 0x4c -+ TCP_RACK_ABC_VAL = 0x46d -+ TCP_RACK_CHEAT_NOT_CONF_RATE = 0x459 -+ TCP_RACK_DO_DETECTION = 0x449 -+ TCP_RACK_EARLY_RECOV = 0x423 -+ TCP_RACK_EARLY_SEG = 0x424 -+ TCP_RACK_FORCE_MSEG = 0x45d -+ TCP_RACK_GP_INCREASE = 0x446 -+ TCP_RACK_GP_INCREASE_CA = 0x45a -+ TCP_RACK_GP_INCREASE_REC = 0x45c -+ TCP_RACK_GP_INCREASE_SS = 0x45b -+ TCP_RACK_IDLE_REDUCE_HIGH = 0x444 -+ TCP_RACK_MBUF_QUEUE = 0x41a -+ TCP_RACK_MEASURE_CNT = 0x46f -+ TCP_RACK_MIN_PACE = 0x445 -+ TCP_RACK_MIN_PACE_SEG = 0x446 -+ TCP_RACK_MIN_TO = 0x422 -+ TCP_RACK_NONRXT_CFG_RATE = 0x463 -+ TCP_RACK_NO_PUSH_AT_MAX = 0x466 -+ TCP_RACK_PACE_ALWAYS = 0x41f -+ TCP_RACK_PACE_MAX_SEG = 0x41e -+ TCP_RACK_PACE_RATE_CA = 0x45e -+ TCP_RACK_PACE_RATE_REC = 0x460 -+ TCP_RACK_PACE_RATE_SS = 0x45f -+ TCP_RACK_PACE_REDUCE = 0x41d -+ TCP_RACK_PACE_TO_FILL = 0x467 -+ TCP_RACK_PACING_BETA = 0x472 -+ TCP_RACK_PACING_BETA_ECN = 0x473 -+ TCP_RACK_PKT_DELAY = 0x428 -+ TCP_RACK_PROFILE = 0x469 -+ TCP_RACK_PROP = 0x41b -+ TCP_RACK_PROP_RATE = 0x420 -+ TCP_RACK_PRR_SENDALOT = 0x421 -+ TCP_RACK_REORD_FADE = 0x426 -+ TCP_RACK_REORD_THRESH = 0x425 -+ TCP_RACK_RR_CONF = 0x459 -+ TCP_RACK_TIMER_SLOP = 0x474 -+ TCP_RACK_TLP_INC_VAR = 0x429 -+ TCP_RACK_TLP_REDUCE = 0x41c -+ TCP_RACK_TLP_THRESH = 0x427 -+ TCP_RACK_TLP_USE = 0x447 -+ TCP_REC_ABC_VAL = 0x46e -+ TCP_REMOTE_UDP_ENCAPS_PORT = 0x47 -+ TCP_REUSPORT_LB_NUMA = 0x402 -+ TCP_REUSPORT_LB_NUMA_CURDOM = -0x1 -+ TCP_REUSPORT_LB_NUMA_NODOM = -0x2 -+ TCP_RXTLS_ENABLE = 0x29 -+ TCP_RXTLS_MODE = 0x2a -+ TCP_SHARED_CWND_ALLOWED = 0x4b -+ TCP_SHARED_CWND_ENABLE = 0x464 -+ TCP_SHARED_CWND_TIME_LIMIT = 0x468 -+ TCP_STATS = 0x21 -+ TCP_TIMELY_DYN_ADJ = 0x465 -+ TCP_TLS_MODE_IFNET = 0x2 -+ TCP_TLS_MODE_NONE = 0x0 -+ TCP_TLS_MODE_SW = 0x1 -+ TCP_TLS_MODE_TOE = 0x3 -+ TCP_TXTLS_ENABLE = 0x27 -+ TCP_TXTLS_MODE = 0x28 -+ TCP_USER_LOG = 0x30 -+ TCP_USE_CMP_ACKS = 0x4d -+ TCP_VENDOR = 0x80000000 -+ TCSAFLUSH = 0x2 -+ TIMER_ABSTIME = 0x1 -+ TIMER_RELTIME = 0x0 -+ TIOCCBRK = 0x2000747a -+ TIOCCDTR = 0x20007478 -+ TIOCCONS = 0x80047462 -+ TIOCDRAIN = 0x2000745e -+ TIOCEXCL = 0x2000740d -+ TIOCEXT = 0x80047460 -+ TIOCFLUSH = 0x80047410 -+ TIOCGDRAINWAIT = 0x40047456 -+ TIOCGETA = 0x402c7413 -+ TIOCGETD = 0x4004741a -+ TIOCGPGRP = 0x40047477 -+ TIOCGPTN = 0x4004740f -+ TIOCGSID = 0x40047463 -+ TIOCGWINSZ = 0x40087468 -+ TIOCMBIC = 0x8004746b -+ TIOCMBIS = 0x8004746c -+ TIOCMGDTRWAIT = 0x4004745a -+ TIOCMGET = 0x4004746a -+ TIOCMSDTRWAIT = 0x8004745b -+ TIOCMSET = 0x8004746d -+ TIOCM_CAR = 0x40 -+ TIOCM_CD = 0x40 -+ TIOCM_CTS = 0x20 -+ TIOCM_DCD = 0x40 -+ TIOCM_DSR = 0x100 -+ TIOCM_DTR = 0x2 -+ TIOCM_LE = 0x1 -+ TIOCM_RI = 0x80 -+ TIOCM_RNG = 0x80 -+ TIOCM_RTS = 0x4 -+ TIOCM_SR = 0x10 -+ TIOCM_ST = 0x8 -+ TIOCNOTTY = 0x20007471 -+ TIOCNXCL = 0x2000740e -+ TIOCOUTQ = 0x40047473 -+ TIOCPKT = 0x80047470 -+ TIOCPKT_DATA = 0x0 -+ TIOCPKT_DOSTOP = 0x20 -+ TIOCPKT_FLUSHREAD = 0x1 -+ TIOCPKT_FLUSHWRITE = 0x2 -+ TIOCPKT_IOCTL = 0x40 -+ TIOCPKT_NOSTOP = 0x10 -+ TIOCPKT_START = 0x8 -+ TIOCPKT_STOP = 0x4 -+ TIOCPTMASTER = 0x2000741c -+ TIOCSBRK = 0x2000747b -+ TIOCSCTTY = 0x20007461 -+ TIOCSDRAINWAIT = 0x80047457 -+ TIOCSDTR = 0x20007479 -+ TIOCSETA = 0x802c7414 -+ TIOCSETAF = 0x802c7416 -+ TIOCSETAW = 0x802c7415 -+ TIOCSETD = 0x8004741b -+ TIOCSIG = 0x2004745f -+ TIOCSPGRP = 0x80047476 -+ TIOCSTART = 0x2000746e -+ TIOCSTAT = 0x20007465 -+ TIOCSTI = 0x80017472 -+ TIOCSTOP = 0x2000746f -+ TIOCSWINSZ = 0x80087467 -+ TIOCTIMESTAMP = 0x40107459 -+ TIOCUCNTL = 0x80047466 -+ TOSTOP = 0x400000 -+ UTIME_NOW = -0x1 -+ UTIME_OMIT = -0x2 -+ VDISCARD = 0xf -+ VDSUSP = 0xb -+ VEOF = 0x0 -+ VEOL = 0x1 -+ VEOL2 = 0x2 -+ VERASE = 0x3 -+ VERASE2 = 0x7 -+ VINTR = 0x8 -+ VKILL = 0x5 -+ VLNEXT = 0xe -+ VMIN = 0x10 -+ VQUIT = 0x9 -+ VREPRINT = 0x6 -+ VSTART = 0xc -+ VSTATUS = 0x12 -+ VSTOP = 0xd -+ VSUSP = 0xa -+ VTIME = 0x11 -+ VWERASE = 0x4 -+ WCONTINUED = 0x4 -+ WCOREFLAG = 0x80 -+ WEXITED = 0x10 -+ WLINUXCLONE = 0x80000000 -+ WNOHANG = 0x1 -+ WNOWAIT = 0x8 -+ WSTOPPED = 0x2 -+ WTRAPPED = 0x20 -+ WUNTRACED = 0x2 -+) -+ -+// Errors -+const ( -+ E2BIG = syscall.Errno(0x7) -+ EACCES = syscall.Errno(0xd) -+ EADDRINUSE = syscall.Errno(0x30) -+ EADDRNOTAVAIL = syscall.Errno(0x31) -+ EAFNOSUPPORT = syscall.Errno(0x2f) -+ EAGAIN = syscall.Errno(0x23) -+ EALREADY = syscall.Errno(0x25) -+ EAUTH = syscall.Errno(0x50) -+ EBADF = syscall.Errno(0x9) -+ EBADMSG = syscall.Errno(0x59) -+ EBADRPC = syscall.Errno(0x48) -+ EBUSY = syscall.Errno(0x10) -+ ECANCELED = syscall.Errno(0x55) -+ ECAPMODE = syscall.Errno(0x5e) -+ ECHILD = syscall.Errno(0xa) -+ ECONNABORTED = syscall.Errno(0x35) -+ ECONNREFUSED = syscall.Errno(0x3d) -+ ECONNRESET = syscall.Errno(0x36) -+ EDEADLK = syscall.Errno(0xb) -+ EDESTADDRREQ = syscall.Errno(0x27) -+ EDOM = syscall.Errno(0x21) -+ EDOOFUS = syscall.Errno(0x58) -+ EDQUOT = syscall.Errno(0x45) -+ EEXIST = syscall.Errno(0x11) -+ EFAULT = syscall.Errno(0xe) -+ EFBIG = syscall.Errno(0x1b) -+ EFTYPE = syscall.Errno(0x4f) -+ EHOSTDOWN = syscall.Errno(0x40) -+ EHOSTUNREACH = syscall.Errno(0x41) -+ EIDRM = syscall.Errno(0x52) -+ EILSEQ = syscall.Errno(0x56) -+ EINPROGRESS = syscall.Errno(0x24) -+ EINTEGRITY = syscall.Errno(0x61) -+ EINTR = syscall.Errno(0x4) -+ EINVAL = syscall.Errno(0x16) -+ EIO = syscall.Errno(0x5) -+ EISCONN = syscall.Errno(0x38) -+ EISDIR = syscall.Errno(0x15) -+ ELAST = syscall.Errno(0x61) -+ ELOOP = syscall.Errno(0x3e) -+ EMFILE = syscall.Errno(0x18) -+ EMLINK = syscall.Errno(0x1f) -+ EMSGSIZE = syscall.Errno(0x28) -+ EMULTIHOP = syscall.Errno(0x5a) -+ ENAMETOOLONG = syscall.Errno(0x3f) -+ ENEEDAUTH = syscall.Errno(0x51) -+ ENETDOWN = syscall.Errno(0x32) -+ ENETRESET = syscall.Errno(0x34) -+ ENETUNREACH = syscall.Errno(0x33) -+ ENFILE = syscall.Errno(0x17) -+ ENOATTR = syscall.Errno(0x57) -+ ENOBUFS = syscall.Errno(0x37) -+ ENODEV = syscall.Errno(0x13) -+ ENOENT = syscall.Errno(0x2) -+ ENOEXEC = syscall.Errno(0x8) -+ ENOLCK = syscall.Errno(0x4d) -+ ENOLINK = syscall.Errno(0x5b) -+ ENOMEM = syscall.Errno(0xc) -+ ENOMSG = syscall.Errno(0x53) -+ ENOPROTOOPT = syscall.Errno(0x2a) -+ ENOSPC = syscall.Errno(0x1c) -+ ENOSYS = syscall.Errno(0x4e) -+ ENOTBLK = syscall.Errno(0xf) -+ ENOTCAPABLE = syscall.Errno(0x5d) -+ ENOTCONN = syscall.Errno(0x39) -+ ENOTDIR = syscall.Errno(0x14) -+ ENOTEMPTY = syscall.Errno(0x42) -+ ENOTRECOVERABLE = syscall.Errno(0x5f) -+ ENOTSOCK = syscall.Errno(0x26) -+ ENOTSUP = syscall.Errno(0x2d) -+ ENOTTY = syscall.Errno(0x19) -+ ENXIO = syscall.Errno(0x6) -+ EOPNOTSUPP = syscall.Errno(0x2d) -+ EOVERFLOW = syscall.Errno(0x54) -+ EOWNERDEAD = syscall.Errno(0x60) -+ EPERM = syscall.Errno(0x1) -+ EPFNOSUPPORT = syscall.Errno(0x2e) -+ EPIPE = syscall.Errno(0x20) -+ EPROCLIM = syscall.Errno(0x43) -+ EPROCUNAVAIL = syscall.Errno(0x4c) -+ EPROGMISMATCH = syscall.Errno(0x4b) -+ EPROGUNAVAIL = syscall.Errno(0x4a) -+ EPROTO = syscall.Errno(0x5c) -+ EPROTONOSUPPORT = syscall.Errno(0x2b) -+ EPROTOTYPE = syscall.Errno(0x29) -+ ERANGE = syscall.Errno(0x22) -+ EREMOTE = syscall.Errno(0x47) -+ EROFS = syscall.Errno(0x1e) -+ ERPCMISMATCH = syscall.Errno(0x49) -+ ESHUTDOWN = syscall.Errno(0x3a) -+ ESOCKTNOSUPPORT = syscall.Errno(0x2c) -+ ESPIPE = syscall.Errno(0x1d) -+ ESRCH = syscall.Errno(0x3) -+ ESTALE = syscall.Errno(0x46) -+ ETIMEDOUT = syscall.Errno(0x3c) -+ ETOOMANYREFS = syscall.Errno(0x3b) -+ ETXTBSY = syscall.Errno(0x1a) -+ EUSERS = syscall.Errno(0x44) -+ EWOULDBLOCK = syscall.Errno(0x23) -+ EXDEV = syscall.Errno(0x12) -+) -+ -+// Signals -+const ( -+ SIGABRT = syscall.Signal(0x6) -+ SIGALRM = syscall.Signal(0xe) -+ SIGBUS = syscall.Signal(0xa) -+ SIGCHLD = syscall.Signal(0x14) -+ SIGCONT = syscall.Signal(0x13) -+ SIGEMT = syscall.Signal(0x7) -+ SIGFPE = syscall.Signal(0x8) -+ SIGHUP = syscall.Signal(0x1) -+ SIGILL = syscall.Signal(0x4) -+ SIGINFO = syscall.Signal(0x1d) -+ SIGINT = syscall.Signal(0x2) -+ SIGIO = syscall.Signal(0x17) -+ SIGIOT = syscall.Signal(0x6) -+ SIGKILL = syscall.Signal(0x9) -+ SIGLIBRT = syscall.Signal(0x21) -+ SIGLWP = syscall.Signal(0x20) -+ SIGPIPE = syscall.Signal(0xd) -+ SIGPROF = syscall.Signal(0x1b) -+ SIGQUIT = syscall.Signal(0x3) -+ SIGSEGV = syscall.Signal(0xb) -+ SIGSTOP = syscall.Signal(0x11) -+ SIGSYS = syscall.Signal(0xc) -+ SIGTERM = syscall.Signal(0xf) -+ SIGTHR = syscall.Signal(0x20) -+ SIGTRAP = syscall.Signal(0x5) -+ SIGTSTP = syscall.Signal(0x12) -+ SIGTTIN = syscall.Signal(0x15) -+ SIGTTOU = syscall.Signal(0x16) -+ SIGURG = syscall.Signal(0x10) -+ SIGUSR1 = syscall.Signal(0x1e) -+ SIGUSR2 = syscall.Signal(0x1f) -+ SIGVTALRM = syscall.Signal(0x1a) -+ SIGWINCH = syscall.Signal(0x1c) -+ SIGXCPU = syscall.Signal(0x18) -+ SIGXFSZ = syscall.Signal(0x19) -+) -+ -+// Error table -+var errorList = [...]struct { -+ num syscall.Errno -+ name string -+ desc string -+}{ -+ {1, "EPERM", "operation not permitted"}, -+ {2, "ENOENT", "no such file or directory"}, -+ {3, "ESRCH", "no such process"}, -+ {4, "EINTR", "interrupted system call"}, -+ {5, "EIO", "input/output error"}, -+ {6, "ENXIO", "device not configured"}, -+ {7, "E2BIG", "argument list too long"}, -+ {8, "ENOEXEC", "exec format error"}, -+ {9, "EBADF", "bad file descriptor"}, -+ {10, "ECHILD", "no child processes"}, -+ {11, "EDEADLK", "resource deadlock avoided"}, -+ {12, "ENOMEM", "cannot allocate memory"}, -+ {13, "EACCES", "permission denied"}, -+ {14, "EFAULT", "bad address"}, -+ {15, "ENOTBLK", "block device required"}, -+ {16, "EBUSY", "device busy"}, -+ {17, "EEXIST", "file exists"}, -+ {18, "EXDEV", "cross-device link"}, -+ {19, "ENODEV", "operation not supported by device"}, -+ {20, "ENOTDIR", "not a directory"}, -+ {21, "EISDIR", "is a directory"}, -+ {22, "EINVAL", "invalid argument"}, -+ {23, "ENFILE", "too many open files in system"}, -+ {24, "EMFILE", "too many open files"}, -+ {25, "ENOTTY", "inappropriate ioctl for device"}, -+ {26, "ETXTBSY", "text file busy"}, -+ {27, "EFBIG", "file too large"}, -+ {28, "ENOSPC", "no space left on device"}, -+ {29, "ESPIPE", "illegal seek"}, -+ {30, "EROFS", "read-only file system"}, -+ {31, "EMLINK", "too many links"}, -+ {32, "EPIPE", "broken pipe"}, -+ {33, "EDOM", "numerical argument out of domain"}, -+ {34, "ERANGE", "result too large"}, -+ {35, "EWOULDBLOCK", "resource temporarily unavailable"}, -+ {36, "EINPROGRESS", "operation now in progress"}, -+ {37, "EALREADY", "operation already in progress"}, -+ {38, "ENOTSOCK", "socket operation on non-socket"}, -+ {39, "EDESTADDRREQ", "destination address required"}, -+ {40, "EMSGSIZE", "message too long"}, -+ {41, "EPROTOTYPE", "protocol wrong type for socket"}, -+ {42, "ENOPROTOOPT", "protocol not available"}, -+ {43, "EPROTONOSUPPORT", "protocol not supported"}, -+ {44, "ESOCKTNOSUPPORT", "socket type not supported"}, -+ {45, "EOPNOTSUPP", "operation not supported"}, -+ {46, "EPFNOSUPPORT", "protocol family not supported"}, -+ {47, "EAFNOSUPPORT", "address family not supported by protocol family"}, -+ {48, "EADDRINUSE", "address already in use"}, -+ {49, "EADDRNOTAVAIL", "can't assign requested address"}, -+ {50, "ENETDOWN", "network is down"}, -+ {51, "ENETUNREACH", "network is unreachable"}, -+ {52, "ENETRESET", "network dropped connection on reset"}, -+ {53, "ECONNABORTED", "software caused connection abort"}, -+ {54, "ECONNRESET", "connection reset by peer"}, -+ {55, "ENOBUFS", "no buffer space available"}, -+ {56, "EISCONN", "socket is already connected"}, -+ {57, "ENOTCONN", "socket is not connected"}, -+ {58, "ESHUTDOWN", "can't send after socket shutdown"}, -+ {59, "ETOOMANYREFS", "too many references: can't splice"}, -+ {60, "ETIMEDOUT", "operation timed out"}, -+ {61, "ECONNREFUSED", "connection refused"}, -+ {62, "ELOOP", "too many levels of symbolic links"}, -+ {63, "ENAMETOOLONG", "file name too long"}, -+ {64, "EHOSTDOWN", "host is down"}, -+ {65, "EHOSTUNREACH", "no route to host"}, -+ {66, "ENOTEMPTY", "directory not empty"}, -+ {67, "EPROCLIM", "too many processes"}, -+ {68, "EUSERS", "too many users"}, -+ {69, "EDQUOT", "disc quota exceeded"}, -+ {70, "ESTALE", "stale NFS file handle"}, -+ {71, "EREMOTE", "too many levels of remote in path"}, -+ {72, "EBADRPC", "RPC struct is bad"}, -+ {73, "ERPCMISMATCH", "RPC version wrong"}, -+ {74, "EPROGUNAVAIL", "RPC prog. not avail"}, -+ {75, "EPROGMISMATCH", "program version wrong"}, -+ {76, "EPROCUNAVAIL", "bad procedure for program"}, -+ {77, "ENOLCK", "no locks available"}, -+ {78, "ENOSYS", "function not implemented"}, -+ {79, "EFTYPE", "inappropriate file type or format"}, -+ {80, "EAUTH", "authentication error"}, -+ {81, "ENEEDAUTH", "need authenticator"}, -+ {82, "EIDRM", "identifier removed"}, -+ {83, "ENOMSG", "no message of desired type"}, -+ {84, "EOVERFLOW", "value too large to be stored in data type"}, -+ {85, "ECANCELED", "operation canceled"}, -+ {86, "EILSEQ", "illegal byte sequence"}, -+ {87, "ENOATTR", "attribute not found"}, -+ {88, "EDOOFUS", "programming error"}, -+ {89, "EBADMSG", "bad message"}, -+ {90, "EMULTIHOP", "multihop attempted"}, -+ {91, "ENOLINK", "link has been severed"}, -+ {92, "EPROTO", "protocol error"}, -+ {93, "ENOTCAPABLE", "capabilities insufficient"}, -+ {94, "ECAPMODE", "not permitted in capability mode"}, -+ {95, "ENOTRECOVERABLE", "state not recoverable"}, -+ {96, "EOWNERDEAD", "previous owner died"}, -+ {97, "EINTEGRITY", "integrity check failed"}, -+} -+ -+// Signal table -+var signalList = [...]struct { -+ num syscall.Signal -+ name string -+ desc string -+}{ -+ {1, "SIGHUP", "hangup"}, -+ {2, "SIGINT", "interrupt"}, -+ {3, "SIGQUIT", "quit"}, -+ {4, "SIGILL", "illegal instruction"}, -+ {5, "SIGTRAP", "trace/BPT trap"}, -+ {6, "SIGIOT", "abort trap"}, -+ {7, "SIGEMT", "EMT trap"}, -+ {8, "SIGFPE", "floating point exception"}, -+ {9, "SIGKILL", "killed"}, -+ {10, "SIGBUS", "bus error"}, -+ {11, "SIGSEGV", "segmentation fault"}, -+ {12, "SIGSYS", "bad system call"}, -+ {13, "SIGPIPE", "broken pipe"}, -+ {14, "SIGALRM", "alarm clock"}, -+ {15, "SIGTERM", "terminated"}, -+ {16, "SIGURG", "urgent I/O condition"}, -+ {17, "SIGSTOP", "suspended (signal)"}, -+ {18, "SIGTSTP", "suspended"}, -+ {19, "SIGCONT", "continued"}, -+ {20, "SIGCHLD", "child exited"}, -+ {21, "SIGTTIN", "stopped (tty input)"}, -+ {22, "SIGTTOU", "stopped (tty output)"}, -+ {23, "SIGIO", "I/O possible"}, -+ {24, "SIGXCPU", "cputime limit exceeded"}, -+ {25, "SIGXFSZ", "filesize limit exceeded"}, -+ {26, "SIGVTALRM", "virtual timer expired"}, -+ {27, "SIGPROF", "profiling timer expired"}, -+ {28, "SIGWINCH", "window size changes"}, -+ {29, "SIGINFO", "information request"}, -+ {30, "SIGUSR1", "user defined signal 1"}, -+ {31, "SIGUSR2", "user defined signal 2"}, -+ {32, "SIGTHR", "unknown signal"}, -+ {33, "SIGLIBRT", "unknown signal"}, -+} -diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux.go b/vendor/golang.org/x/sys/unix/zerrors_linux.go -index 2197394..785d693 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_linux.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_linux.go -@@ -1,5 +1,6 @@ --// Code generated by mkmerge.go; DO NOT EDIT. -+// Code generated by mkmerge; DO NOT EDIT. - -+//go:build linux - // +build linux - - package unix -@@ -37,7 +38,8 @@ const ( - AF_KEY = 0xf - AF_LLC = 0x1a - AF_LOCAL = 0x1 -- AF_MAX = 0x2d -+ AF_MAX = 0x2e -+ AF_MCTP = 0x2d - AF_MPLS = 0x1c - AF_NETBEUI = 0xd - AF_NETLINK = 0x10 -@@ -65,6 +67,7 @@ const ( - ALG_OP_ENCRYPT = 0x1 - ALG_SET_AEAD_ASSOCLEN = 0x4 - ALG_SET_AEAD_AUTHSIZE = 0x5 -+ ALG_SET_DRBG_ENTROPY = 0x6 - ALG_SET_IV = 0x2 - ALG_SET_KEY = 0x1 - ALG_SET_OP = 0x3 -@@ -114,6 +117,7 @@ const ( - ARPHRD_LAPB = 0x204 - ARPHRD_LOCALTLK = 0x305 - ARPHRD_LOOPBACK = 0x304 -+ ARPHRD_MCTP = 0x122 - ARPHRD_METRICOM = 0x17 - ARPHRD_NETLINK = 0x338 - ARPHRD_NETROM = 0x0 -@@ -136,6 +140,306 @@ const ( - ARPHRD_VOID = 0xffff - ARPHRD_VSOCKMON = 0x33a - ARPHRD_X25 = 0x10f -+ AUDIT_ADD = 0x3eb -+ AUDIT_ADD_RULE = 0x3f3 -+ AUDIT_ALWAYS = 0x2 -+ AUDIT_ANOM_ABEND = 0x6a5 -+ AUDIT_ANOM_CREAT = 0x6a7 -+ AUDIT_ANOM_LINK = 0x6a6 -+ AUDIT_ANOM_PROMISCUOUS = 0x6a4 -+ AUDIT_ARCH = 0xb -+ AUDIT_ARCH_AARCH64 = 0xc00000b7 -+ AUDIT_ARCH_ALPHA = 0xc0009026 -+ AUDIT_ARCH_ARCOMPACT = 0x4000005d -+ AUDIT_ARCH_ARCOMPACTBE = 0x5d -+ AUDIT_ARCH_ARCV2 = 0x400000c3 -+ AUDIT_ARCH_ARCV2BE = 0xc3 -+ AUDIT_ARCH_ARM = 0x40000028 -+ AUDIT_ARCH_ARMEB = 0x28 -+ AUDIT_ARCH_C6X = 0x4000008c -+ AUDIT_ARCH_C6XBE = 0x8c -+ AUDIT_ARCH_CRIS = 0x4000004c -+ AUDIT_ARCH_CSKY = 0x400000fc -+ AUDIT_ARCH_FRV = 0x5441 -+ AUDIT_ARCH_H8300 = 0x2e -+ AUDIT_ARCH_HEXAGON = 0xa4 -+ AUDIT_ARCH_I386 = 0x40000003 -+ AUDIT_ARCH_IA64 = 0xc0000032 -+ AUDIT_ARCH_LOONGARCH32 = 0x40000102 -+ AUDIT_ARCH_LOONGARCH64 = 0xc0000102 -+ AUDIT_ARCH_M32R = 0x58 -+ AUDIT_ARCH_M68K = 0x4 -+ AUDIT_ARCH_MICROBLAZE = 0xbd -+ AUDIT_ARCH_MIPS = 0x8 -+ AUDIT_ARCH_MIPS64 = 0x80000008 -+ AUDIT_ARCH_MIPS64N32 = 0xa0000008 -+ AUDIT_ARCH_MIPSEL = 0x40000008 -+ AUDIT_ARCH_MIPSEL64 = 0xc0000008 -+ AUDIT_ARCH_MIPSEL64N32 = 0xe0000008 -+ AUDIT_ARCH_NDS32 = 0x400000a7 -+ AUDIT_ARCH_NDS32BE = 0xa7 -+ AUDIT_ARCH_NIOS2 = 0x40000071 -+ AUDIT_ARCH_OPENRISC = 0x5c -+ AUDIT_ARCH_PARISC = 0xf -+ AUDIT_ARCH_PARISC64 = 0x8000000f -+ AUDIT_ARCH_PPC = 0x14 -+ AUDIT_ARCH_PPC64 = 0x80000015 -+ AUDIT_ARCH_PPC64LE = 0xc0000015 -+ AUDIT_ARCH_RISCV32 = 0x400000f3 -+ AUDIT_ARCH_RISCV64 = 0xc00000f3 -+ AUDIT_ARCH_S390 = 0x16 -+ AUDIT_ARCH_S390X = 0x80000016 -+ AUDIT_ARCH_SH = 0x2a -+ AUDIT_ARCH_SH64 = 0x8000002a -+ AUDIT_ARCH_SHEL = 0x4000002a -+ AUDIT_ARCH_SHEL64 = 0xc000002a -+ AUDIT_ARCH_SPARC = 0x2 -+ AUDIT_ARCH_SPARC64 = 0x8000002b -+ AUDIT_ARCH_TILEGX = 0xc00000bf -+ AUDIT_ARCH_TILEGX32 = 0x400000bf -+ AUDIT_ARCH_TILEPRO = 0x400000bc -+ AUDIT_ARCH_UNICORE = 0x4000006e -+ AUDIT_ARCH_X86_64 = 0xc000003e -+ AUDIT_ARCH_XTENSA = 0x5e -+ AUDIT_ARG0 = 0xc8 -+ AUDIT_ARG1 = 0xc9 -+ AUDIT_ARG2 = 0xca -+ AUDIT_ARG3 = 0xcb -+ AUDIT_AVC = 0x578 -+ AUDIT_AVC_PATH = 0x57a -+ AUDIT_BITMASK_SIZE = 0x40 -+ AUDIT_BIT_MASK = 0x8000000 -+ AUDIT_BIT_TEST = 0x48000000 -+ AUDIT_BPF = 0x536 -+ AUDIT_BPRM_FCAPS = 0x529 -+ AUDIT_CAPSET = 0x52a -+ AUDIT_CLASS_CHATTR = 0x2 -+ AUDIT_CLASS_CHATTR_32 = 0x3 -+ AUDIT_CLASS_DIR_WRITE = 0x0 -+ AUDIT_CLASS_DIR_WRITE_32 = 0x1 -+ AUDIT_CLASS_READ = 0x4 -+ AUDIT_CLASS_READ_32 = 0x5 -+ AUDIT_CLASS_SIGNAL = 0x8 -+ AUDIT_CLASS_SIGNAL_32 = 0x9 -+ AUDIT_CLASS_WRITE = 0x6 -+ AUDIT_CLASS_WRITE_32 = 0x7 -+ AUDIT_COMPARE_AUID_TO_EUID = 0x10 -+ AUDIT_COMPARE_AUID_TO_FSUID = 0xe -+ AUDIT_COMPARE_AUID_TO_OBJ_UID = 0x5 -+ AUDIT_COMPARE_AUID_TO_SUID = 0xf -+ AUDIT_COMPARE_EGID_TO_FSGID = 0x17 -+ AUDIT_COMPARE_EGID_TO_OBJ_GID = 0x4 -+ AUDIT_COMPARE_EGID_TO_SGID = 0x18 -+ AUDIT_COMPARE_EUID_TO_FSUID = 0x12 -+ AUDIT_COMPARE_EUID_TO_OBJ_UID = 0x3 -+ AUDIT_COMPARE_EUID_TO_SUID = 0x11 -+ AUDIT_COMPARE_FSGID_TO_OBJ_GID = 0x9 -+ AUDIT_COMPARE_FSUID_TO_OBJ_UID = 0x8 -+ AUDIT_COMPARE_GID_TO_EGID = 0x14 -+ AUDIT_COMPARE_GID_TO_FSGID = 0x15 -+ AUDIT_COMPARE_GID_TO_OBJ_GID = 0x2 -+ AUDIT_COMPARE_GID_TO_SGID = 0x16 -+ AUDIT_COMPARE_SGID_TO_FSGID = 0x19 -+ AUDIT_COMPARE_SGID_TO_OBJ_GID = 0x7 -+ AUDIT_COMPARE_SUID_TO_FSUID = 0x13 -+ AUDIT_COMPARE_SUID_TO_OBJ_UID = 0x6 -+ AUDIT_COMPARE_UID_TO_AUID = 0xa -+ AUDIT_COMPARE_UID_TO_EUID = 0xb -+ AUDIT_COMPARE_UID_TO_FSUID = 0xc -+ AUDIT_COMPARE_UID_TO_OBJ_UID = 0x1 -+ AUDIT_COMPARE_UID_TO_SUID = 0xd -+ AUDIT_CONFIG_CHANGE = 0x519 -+ AUDIT_CWD = 0x51b -+ AUDIT_DAEMON_ABORT = 0x4b2 -+ AUDIT_DAEMON_CONFIG = 0x4b3 -+ AUDIT_DAEMON_END = 0x4b1 -+ AUDIT_DAEMON_START = 0x4b0 -+ AUDIT_DEL = 0x3ec -+ AUDIT_DEL_RULE = 0x3f4 -+ AUDIT_DEVMAJOR = 0x64 -+ AUDIT_DEVMINOR = 0x65 -+ AUDIT_DIR = 0x6b -+ AUDIT_DM_CTRL = 0x53a -+ AUDIT_DM_EVENT = 0x53b -+ AUDIT_EGID = 0x6 -+ AUDIT_EOE = 0x528 -+ AUDIT_EQUAL = 0x40000000 -+ AUDIT_EUID = 0x2 -+ AUDIT_EVENT_LISTENER = 0x537 -+ AUDIT_EXE = 0x70 -+ AUDIT_EXECVE = 0x51d -+ AUDIT_EXIT = 0x67 -+ AUDIT_FAIL_PANIC = 0x2 -+ AUDIT_FAIL_PRINTK = 0x1 -+ AUDIT_FAIL_SILENT = 0x0 -+ AUDIT_FANOTIFY = 0x533 -+ AUDIT_FD_PAIR = 0x525 -+ AUDIT_FEATURE_BITMAP_ALL = 0x7f -+ AUDIT_FEATURE_BITMAP_BACKLOG_LIMIT = 0x1 -+ AUDIT_FEATURE_BITMAP_BACKLOG_WAIT_TIME = 0x2 -+ AUDIT_FEATURE_BITMAP_EXCLUDE_EXTEND = 0x8 -+ AUDIT_FEATURE_BITMAP_EXECUTABLE_PATH = 0x4 -+ AUDIT_FEATURE_BITMAP_FILTER_FS = 0x40 -+ AUDIT_FEATURE_BITMAP_LOST_RESET = 0x20 -+ AUDIT_FEATURE_BITMAP_SESSIONID_FILTER = 0x10 -+ AUDIT_FEATURE_CHANGE = 0x530 -+ AUDIT_FEATURE_LOGINUID_IMMUTABLE = 0x1 -+ AUDIT_FEATURE_ONLY_UNSET_LOGINUID = 0x0 -+ AUDIT_FEATURE_VERSION = 0x1 -+ AUDIT_FIELD_COMPARE = 0x6f -+ AUDIT_FILETYPE = 0x6c -+ AUDIT_FILTERKEY = 0xd2 -+ AUDIT_FILTER_ENTRY = 0x2 -+ AUDIT_FILTER_EXCLUDE = 0x5 -+ AUDIT_FILTER_EXIT = 0x4 -+ AUDIT_FILTER_FS = 0x6 -+ AUDIT_FILTER_PREPEND = 0x10 -+ AUDIT_FILTER_TASK = 0x1 -+ AUDIT_FILTER_TYPE = 0x5 -+ AUDIT_FILTER_URING_EXIT = 0x7 -+ AUDIT_FILTER_USER = 0x0 -+ AUDIT_FILTER_WATCH = 0x3 -+ AUDIT_FIRST_KERN_ANOM_MSG = 0x6a4 -+ AUDIT_FIRST_USER_MSG = 0x44c -+ AUDIT_FIRST_USER_MSG2 = 0x834 -+ AUDIT_FSGID = 0x8 -+ AUDIT_FSTYPE = 0x1a -+ AUDIT_FSUID = 0x4 -+ AUDIT_GET = 0x3e8 -+ AUDIT_GET_FEATURE = 0x3fb -+ AUDIT_GID = 0x5 -+ AUDIT_GREATER_THAN = 0x20000000 -+ AUDIT_GREATER_THAN_OR_EQUAL = 0x60000000 -+ AUDIT_INODE = 0x66 -+ AUDIT_INTEGRITY_DATA = 0x708 -+ AUDIT_INTEGRITY_EVM_XATTR = 0x70e -+ AUDIT_INTEGRITY_HASH = 0x70b -+ AUDIT_INTEGRITY_METADATA = 0x709 -+ AUDIT_INTEGRITY_PCR = 0x70c -+ AUDIT_INTEGRITY_POLICY_RULE = 0x70f -+ AUDIT_INTEGRITY_RULE = 0x70d -+ AUDIT_INTEGRITY_STATUS = 0x70a -+ AUDIT_IPC = 0x517 -+ AUDIT_IPC_SET_PERM = 0x51f -+ AUDIT_KERNEL = 0x7d0 -+ AUDIT_KERNEL_OTHER = 0x524 -+ AUDIT_KERN_MODULE = 0x532 -+ AUDIT_LAST_FEATURE = 0x1 -+ AUDIT_LAST_KERN_ANOM_MSG = 0x707 -+ AUDIT_LAST_USER_MSG = 0x4af -+ AUDIT_LAST_USER_MSG2 = 0xbb7 -+ AUDIT_LESS_THAN = 0x10000000 -+ AUDIT_LESS_THAN_OR_EQUAL = 0x50000000 -+ AUDIT_LIST = 0x3ea -+ AUDIT_LIST_RULES = 0x3f5 -+ AUDIT_LOGIN = 0x3ee -+ AUDIT_LOGINUID = 0x9 -+ AUDIT_LOGINUID_SET = 0x18 -+ AUDIT_MAC_CALIPSO_ADD = 0x58a -+ AUDIT_MAC_CALIPSO_DEL = 0x58b -+ AUDIT_MAC_CIPSOV4_ADD = 0x57f -+ AUDIT_MAC_CIPSOV4_DEL = 0x580 -+ AUDIT_MAC_CONFIG_CHANGE = 0x57d -+ AUDIT_MAC_IPSEC_ADDSA = 0x583 -+ AUDIT_MAC_IPSEC_ADDSPD = 0x585 -+ AUDIT_MAC_IPSEC_DELSA = 0x584 -+ AUDIT_MAC_IPSEC_DELSPD = 0x586 -+ AUDIT_MAC_IPSEC_EVENT = 0x587 -+ AUDIT_MAC_MAP_ADD = 0x581 -+ AUDIT_MAC_MAP_DEL = 0x582 -+ AUDIT_MAC_POLICY_LOAD = 0x57b -+ AUDIT_MAC_STATUS = 0x57c -+ AUDIT_MAC_UNLBL_ALLOW = 0x57e -+ AUDIT_MAC_UNLBL_STCADD = 0x588 -+ AUDIT_MAC_UNLBL_STCDEL = 0x589 -+ AUDIT_MAKE_EQUIV = 0x3f7 -+ AUDIT_MAX_FIELDS = 0x40 -+ AUDIT_MAX_FIELD_COMPARE = 0x19 -+ AUDIT_MAX_KEY_LEN = 0x100 -+ AUDIT_MESSAGE_TEXT_MAX = 0x2170 -+ AUDIT_MMAP = 0x52b -+ AUDIT_MQ_GETSETATTR = 0x523 -+ AUDIT_MQ_NOTIFY = 0x522 -+ AUDIT_MQ_OPEN = 0x520 -+ AUDIT_MQ_SENDRECV = 0x521 -+ AUDIT_MSGTYPE = 0xc -+ AUDIT_NEGATE = 0x80000000 -+ AUDIT_NETFILTER_CFG = 0x52d -+ AUDIT_NETFILTER_PKT = 0x52c -+ AUDIT_NEVER = 0x0 -+ AUDIT_NLGRP_MAX = 0x1 -+ AUDIT_NOT_EQUAL = 0x30000000 -+ AUDIT_NR_FILTERS = 0x8 -+ AUDIT_OBJ_GID = 0x6e -+ AUDIT_OBJ_LEV_HIGH = 0x17 -+ AUDIT_OBJ_LEV_LOW = 0x16 -+ AUDIT_OBJ_PID = 0x526 -+ AUDIT_OBJ_ROLE = 0x14 -+ AUDIT_OBJ_TYPE = 0x15 -+ AUDIT_OBJ_UID = 0x6d -+ AUDIT_OBJ_USER = 0x13 -+ AUDIT_OPENAT2 = 0x539 -+ AUDIT_OPERATORS = 0x78000000 -+ AUDIT_PATH = 0x516 -+ AUDIT_PERM = 0x6a -+ AUDIT_PERM_ATTR = 0x8 -+ AUDIT_PERM_EXEC = 0x1 -+ AUDIT_PERM_READ = 0x4 -+ AUDIT_PERM_WRITE = 0x2 -+ AUDIT_PERS = 0xa -+ AUDIT_PID = 0x0 -+ AUDIT_POSSIBLE = 0x1 -+ AUDIT_PPID = 0x12 -+ AUDIT_PROCTITLE = 0x52f -+ AUDIT_REPLACE = 0x531 -+ AUDIT_SADDR_FAM = 0x71 -+ AUDIT_SECCOMP = 0x52e -+ AUDIT_SELINUX_ERR = 0x579 -+ AUDIT_SESSIONID = 0x19 -+ AUDIT_SET = 0x3e9 -+ AUDIT_SET_FEATURE = 0x3fa -+ AUDIT_SGID = 0x7 -+ AUDIT_SID_UNSET = 0xffffffff -+ AUDIT_SIGNAL_INFO = 0x3f2 -+ AUDIT_SOCKADDR = 0x51a -+ AUDIT_SOCKETCALL = 0x518 -+ AUDIT_STATUS_BACKLOG_LIMIT = 0x10 -+ AUDIT_STATUS_BACKLOG_WAIT_TIME = 0x20 -+ AUDIT_STATUS_BACKLOG_WAIT_TIME_ACTUAL = 0x80 -+ AUDIT_STATUS_ENABLED = 0x1 -+ AUDIT_STATUS_FAILURE = 0x2 -+ AUDIT_STATUS_LOST = 0x40 -+ AUDIT_STATUS_PID = 0x4 -+ AUDIT_STATUS_RATE_LIMIT = 0x8 -+ AUDIT_SUBJ_CLR = 0x11 -+ AUDIT_SUBJ_ROLE = 0xe -+ AUDIT_SUBJ_SEN = 0x10 -+ AUDIT_SUBJ_TYPE = 0xf -+ AUDIT_SUBJ_USER = 0xd -+ AUDIT_SUCCESS = 0x68 -+ AUDIT_SUID = 0x3 -+ AUDIT_SYSCALL = 0x514 -+ AUDIT_SYSCALL_CLASSES = 0x10 -+ AUDIT_TIME_ADJNTPVAL = 0x535 -+ AUDIT_TIME_INJOFFSET = 0x534 -+ AUDIT_TRIM = 0x3f6 -+ AUDIT_TTY = 0x527 -+ AUDIT_TTY_GET = 0x3f8 -+ AUDIT_TTY_SET = 0x3f9 -+ AUDIT_UID = 0x1 -+ AUDIT_UID_UNSET = 0xffffffff -+ AUDIT_UNUSED_BITS = 0x7fffc00 -+ AUDIT_URINGOP = 0x538 -+ AUDIT_USER = 0x3ed -+ AUDIT_USER_AVC = 0x453 -+ AUDIT_USER_TTY = 0x464 -+ AUDIT_VERSION_BACKLOG_LIMIT = 0x1 -+ AUDIT_VERSION_BACKLOG_WAIT_TIME = 0x2 -+ AUDIT_VERSION_LATEST = 0x7f -+ AUDIT_WATCH = 0x69 -+ AUDIT_WATCH_INS = 0x3ef -+ AUDIT_WATCH_LIST = 0x3f1 -+ AUDIT_WATCH_REM = 0x3f0 - AUTOFS_SUPER_MAGIC = 0x187 - B0 = 0x0 - B110 = 0x3 -@@ -160,78 +464,36 @@ const ( - BPF_A = 0x10 - BPF_ABS = 0x20 - BPF_ADD = 0x0 -- BPF_ADJ_ROOM_ENCAP_L2_MASK = 0xff -- BPF_ADJ_ROOM_ENCAP_L2_SHIFT = 0x38 - BPF_ALU = 0x4 - BPF_ALU64 = 0x7 - BPF_AND = 0x50 -- BPF_ANY = 0x0 - BPF_ARSH = 0xc0 -+ BPF_ATOMIC = 0xc0 - BPF_B = 0x10 - BPF_BUILD_ID_SIZE = 0x14 - BPF_CALL = 0x80 -- BPF_DEVCG_ACC_MKNOD = 0x1 -- BPF_DEVCG_ACC_READ = 0x2 -- BPF_DEVCG_ACC_WRITE = 0x4 -- BPF_DEVCG_DEV_BLOCK = 0x1 -- BPF_DEVCG_DEV_CHAR = 0x2 -+ BPF_CMPXCHG = 0xf1 - BPF_DIV = 0x30 - BPF_DW = 0x18 - BPF_END = 0xd0 -- BPF_EXIST = 0x2 - BPF_EXIT = 0x90 -- BPF_FLOW_DISSECTOR_F_PARSE_1ST_FRAG = 0x1 -- BPF_FLOW_DISSECTOR_F_STOP_AT_ENCAP = 0x4 -- BPF_FLOW_DISSECTOR_F_STOP_AT_FLOW_LABEL = 0x2 -+ BPF_FETCH = 0x1 - BPF_FROM_BE = 0x8 - BPF_FROM_LE = 0x0 - BPF_FS_MAGIC = 0xcafe4a11 -- BPF_F_ADJ_ROOM_ENCAP_L3_IPV4 = 0x2 -- BPF_F_ADJ_ROOM_ENCAP_L3_IPV6 = 0x4 -- BPF_F_ADJ_ROOM_ENCAP_L4_GRE = 0x8 -- BPF_F_ADJ_ROOM_ENCAP_L4_UDP = 0x10 -- BPF_F_ADJ_ROOM_FIXED_GSO = 0x1 - BPF_F_ALLOW_MULTI = 0x2 - BPF_F_ALLOW_OVERRIDE = 0x1 - BPF_F_ANY_ALIGNMENT = 0x2 -- BPF_F_CLONE = 0x200 -- BPF_F_CTXLEN_MASK = 0xfffff00000000 -- BPF_F_CURRENT_CPU = 0xffffffff -- BPF_F_CURRENT_NETNS = -0x1 -- BPF_F_DONT_FRAGMENT = 0x4 -- BPF_F_FAST_STACK_CMP = 0x200 -- BPF_F_HDR_FIELD_MASK = 0xf -- BPF_F_INDEX_MASK = 0xffffffff -- BPF_F_INGRESS = 0x1 -- BPF_F_INVALIDATE_HASH = 0x2 -- BPF_F_LOCK = 0x4 -- BPF_F_MARK_ENFORCE = 0x40 -- BPF_F_MARK_MANGLED_0 = 0x20 -- BPF_F_MMAPABLE = 0x400 -- BPF_F_NO_COMMON_LRU = 0x2 -- BPF_F_NO_PREALLOC = 0x1 -- BPF_F_NUMA_NODE = 0x4 -- BPF_F_PSEUDO_HDR = 0x10 -+ BPF_F_KPROBE_MULTI_RETURN = 0x1 - BPF_F_QUERY_EFFECTIVE = 0x1 -- BPF_F_RDONLY = 0x8 -- BPF_F_RDONLY_PROG = 0x80 -- BPF_F_RECOMPUTE_CSUM = 0x1 - BPF_F_REPLACE = 0x4 -- BPF_F_REUSE_STACKID = 0x400 -- BPF_F_SEQ_NUMBER = 0x8 -- BPF_F_SKIP_FIELD_MASK = 0xff -- BPF_F_STACK_BUILD_ID = 0x20 -+ BPF_F_SLEEPABLE = 0x10 - BPF_F_STRICT_ALIGNMENT = 0x1 -- BPF_F_SYSCTL_BASE_NAME = 0x1 - BPF_F_TEST_RND_HI32 = 0x4 -+ BPF_F_TEST_RUN_ON_CPU = 0x1 - BPF_F_TEST_STATE_FREQ = 0x8 -- BPF_F_TUNINFO_IPV6 = 0x1 -- BPF_F_USER_BUILD_ID = 0x800 -- BPF_F_USER_STACK = 0x100 -- BPF_F_WRONLY = 0x10 -- BPF_F_WRONLY_PROG = 0x100 -- BPF_F_ZERO_CSUM_TX = 0x2 -- BPF_F_ZERO_SEED = 0x40 -+ BPF_F_TEST_XDP_LIVE_FRAMES = 0x2 -+ BPF_F_XDP_HAS_FRAGS = 0x20 - BPF_H = 0x8 - BPF_IMM = 0x0 - BPF_IND = 0x40 -@@ -267,20 +529,18 @@ const ( - BPF_MUL = 0x20 - BPF_NEG = 0x80 - BPF_NET_OFF = -0x100000 -- BPF_NOEXIST = 0x1 - BPF_OBJ_NAME_LEN = 0x10 - BPF_OR = 0x40 -+ BPF_PSEUDO_BTF_ID = 0x3 - BPF_PSEUDO_CALL = 0x1 -+ BPF_PSEUDO_FUNC = 0x4 -+ BPF_PSEUDO_KFUNC_CALL = 0x2 - BPF_PSEUDO_MAP_FD = 0x1 -+ BPF_PSEUDO_MAP_IDX = 0x5 -+ BPF_PSEUDO_MAP_IDX_VALUE = 0x6 - BPF_PSEUDO_MAP_VALUE = 0x2 - BPF_RET = 0x6 - BPF_RSH = 0x70 -- BPF_SK_STORAGE_GET_F_CREATE = 0x1 -- BPF_SOCK_OPS_ALL_CB_FLAGS = 0xf -- BPF_SOCK_OPS_RETRANS_CB_FLAG = 0x2 -- BPF_SOCK_OPS_RTO_CB_FLAG = 0x1 -- BPF_SOCK_OPS_RTT_CB_FLAG = 0x8 -- BPF_SOCK_OPS_STATE_CB_FLAG = 0x4 - BPF_ST = 0x2 - BPF_STX = 0x3 - BPF_SUB = 0x10 -@@ -292,22 +552,97 @@ const ( - BPF_W = 0x0 - BPF_X = 0x8 - BPF_XADD = 0xc0 -+ BPF_XCHG = 0xe1 - BPF_XOR = 0xa0 - BRKINT = 0x2 - BS0 = 0x0 - BTRFS_SUPER_MAGIC = 0x9123683e - BTRFS_TEST_MAGIC = 0x73727279 -+ BUS_BLUETOOTH = 0x5 -+ BUS_HIL = 0x4 -+ BUS_USB = 0x3 -+ BUS_VIRTUAL = 0x6 - CAN_BCM = 0x2 -+ CAN_CTRLMODE_3_SAMPLES = 0x4 -+ CAN_CTRLMODE_BERR_REPORTING = 0x10 -+ CAN_CTRLMODE_CC_LEN8_DLC = 0x100 -+ CAN_CTRLMODE_FD = 0x20 -+ CAN_CTRLMODE_FD_NON_ISO = 0x80 -+ CAN_CTRLMODE_LISTENONLY = 0x2 -+ CAN_CTRLMODE_LOOPBACK = 0x1 -+ CAN_CTRLMODE_ONE_SHOT = 0x8 -+ CAN_CTRLMODE_PRESUME_ACK = 0x40 -+ CAN_CTRLMODE_TDC_AUTO = 0x200 -+ CAN_CTRLMODE_TDC_MANUAL = 0x400 - CAN_EFF_FLAG = 0x80000000 - CAN_EFF_ID_BITS = 0x1d - CAN_EFF_MASK = 0x1fffffff -+ CAN_ERR_ACK = 0x20 -+ CAN_ERR_BUSERROR = 0x80 -+ CAN_ERR_BUSOFF = 0x40 -+ CAN_ERR_CRTL = 0x4 -+ CAN_ERR_CRTL_ACTIVE = 0x40 -+ CAN_ERR_CRTL_RX_OVERFLOW = 0x1 -+ CAN_ERR_CRTL_RX_PASSIVE = 0x10 -+ CAN_ERR_CRTL_RX_WARNING = 0x4 -+ CAN_ERR_CRTL_TX_OVERFLOW = 0x2 -+ CAN_ERR_CRTL_TX_PASSIVE = 0x20 -+ CAN_ERR_CRTL_TX_WARNING = 0x8 -+ CAN_ERR_CRTL_UNSPEC = 0x0 -+ CAN_ERR_DLC = 0x8 - CAN_ERR_FLAG = 0x20000000 -+ CAN_ERR_LOSTARB = 0x2 -+ CAN_ERR_LOSTARB_UNSPEC = 0x0 - CAN_ERR_MASK = 0x1fffffff -+ CAN_ERR_PROT = 0x8 -+ CAN_ERR_PROT_ACTIVE = 0x40 -+ CAN_ERR_PROT_BIT = 0x1 -+ CAN_ERR_PROT_BIT0 = 0x8 -+ CAN_ERR_PROT_BIT1 = 0x10 -+ CAN_ERR_PROT_FORM = 0x2 -+ CAN_ERR_PROT_LOC_ACK = 0x19 -+ CAN_ERR_PROT_LOC_ACK_DEL = 0x1b -+ CAN_ERR_PROT_LOC_CRC_DEL = 0x18 -+ CAN_ERR_PROT_LOC_CRC_SEQ = 0x8 -+ CAN_ERR_PROT_LOC_DATA = 0xa -+ CAN_ERR_PROT_LOC_DLC = 0xb -+ CAN_ERR_PROT_LOC_EOF = 0x1a -+ CAN_ERR_PROT_LOC_ID04_00 = 0xe -+ CAN_ERR_PROT_LOC_ID12_05 = 0xf -+ CAN_ERR_PROT_LOC_ID17_13 = 0x7 -+ CAN_ERR_PROT_LOC_ID20_18 = 0x6 -+ CAN_ERR_PROT_LOC_ID28_21 = 0x2 -+ CAN_ERR_PROT_LOC_IDE = 0x5 -+ CAN_ERR_PROT_LOC_INTERM = 0x12 -+ CAN_ERR_PROT_LOC_RES0 = 0x9 -+ CAN_ERR_PROT_LOC_RES1 = 0xd -+ CAN_ERR_PROT_LOC_RTR = 0xc -+ CAN_ERR_PROT_LOC_SOF = 0x3 -+ CAN_ERR_PROT_LOC_SRTR = 0x4 -+ CAN_ERR_PROT_LOC_UNSPEC = 0x0 -+ CAN_ERR_PROT_OVERLOAD = 0x20 -+ CAN_ERR_PROT_STUFF = 0x4 -+ CAN_ERR_PROT_TX = 0x80 -+ CAN_ERR_PROT_UNSPEC = 0x0 -+ CAN_ERR_RESTARTED = 0x100 -+ CAN_ERR_TRX = 0x10 -+ CAN_ERR_TRX_CANH_NO_WIRE = 0x4 -+ CAN_ERR_TRX_CANH_SHORT_TO_BAT = 0x5 -+ CAN_ERR_TRX_CANH_SHORT_TO_GND = 0x7 -+ CAN_ERR_TRX_CANH_SHORT_TO_VCC = 0x6 -+ CAN_ERR_TRX_CANL_NO_WIRE = 0x40 -+ CAN_ERR_TRX_CANL_SHORT_TO_BAT = 0x50 -+ CAN_ERR_TRX_CANL_SHORT_TO_CANH = 0x80 -+ CAN_ERR_TRX_CANL_SHORT_TO_GND = 0x70 -+ CAN_ERR_TRX_CANL_SHORT_TO_VCC = 0x60 -+ CAN_ERR_TRX_UNSPEC = 0x0 -+ CAN_ERR_TX_TIMEOUT = 0x1 - CAN_INV_FILTER = 0x20000000 - CAN_ISOTP = 0x6 - CAN_J1939 = 0x7 - CAN_MAX_DLC = 0x8 - CAN_MAX_DLEN = 0x8 -+ CAN_MAX_RAW_DLC = 0xf - CAN_MCNET = 0x5 - CAN_MTU = 0x10 - CAN_NPROTO = 0x8 -@@ -316,12 +651,15 @@ const ( - CAN_RTR_FLAG = 0x40000000 - CAN_SFF_ID_BITS = 0xb - CAN_SFF_MASK = 0x7ff -+ CAN_TERMINATION_DISABLED = 0x0 - CAN_TP16 = 0x3 - CAN_TP20 = 0x4 - CAP_AUDIT_CONTROL = 0x1e - CAP_AUDIT_READ = 0x25 - CAP_AUDIT_WRITE = 0x1d - CAP_BLOCK_SUSPEND = 0x24 -+ CAP_BPF = 0x27 -+ CAP_CHECKPOINT_RESTORE = 0x28 - CAP_CHOWN = 0x0 - CAP_DAC_OVERRIDE = 0x1 - CAP_DAC_READ_SEARCH = 0x2 -@@ -330,7 +668,7 @@ const ( - CAP_IPC_LOCK = 0xe - CAP_IPC_OWNER = 0xf - CAP_KILL = 0x5 -- CAP_LAST_CAP = 0x25 -+ CAP_LAST_CAP = 0x28 - CAP_LEASE = 0x1c - CAP_LINUX_IMMUTABLE = 0x9 - CAP_MAC_ADMIN = 0x21 -@@ -340,6 +678,7 @@ const ( - CAP_NET_BIND_SERVICE = 0xa - CAP_NET_BROADCAST = 0xb - CAP_NET_RAW = 0xd -+ CAP_PERFMON = 0x26 - CAP_SETFCAP = 0x1f - CAP_SETGID = 0x6 - CAP_SETPCAP = 0x8 -@@ -357,9 +696,11 @@ const ( - CAP_SYS_TIME = 0x19 - CAP_SYS_TTY_CONFIG = 0x1a - CAP_WAKE_ALARM = 0x23 -+ CEPH_SUPER_MAGIC = 0xc36400 - CFLUSH = 0xf - CGROUP2_SUPER_MAGIC = 0x63677270 - CGROUP_SUPER_MAGIC = 0x27e0eb -+ CIFS_SUPER_MAGIC = 0xff534d42 - CLOCK_BOOTTIME = 0x7 - CLOCK_BOOTTIME_ALARM = 0x9 - CLOCK_DEFAULT = 0x0 -@@ -378,12 +719,14 @@ const ( - CLOCK_TXINT = 0x3 - CLONE_ARGS_SIZE_VER0 = 0x40 - CLONE_ARGS_SIZE_VER1 = 0x50 -+ CLONE_ARGS_SIZE_VER2 = 0x58 - CLONE_CHILD_CLEARTID = 0x200000 - CLONE_CHILD_SETTID = 0x1000000 - CLONE_CLEAR_SIGHAND = 0x100000000 - CLONE_DETACHED = 0x400000 - CLONE_FILES = 0x400 - CLONE_FS = 0x200 -+ CLONE_INTO_CGROUP = 0x200000000 - CLONE_IO = 0x80000000 - CLONE_NEWCGROUP = 0x2000000 - CLONE_NEWIPC = 0x8000000 -@@ -423,12 +766,64 @@ const ( - DEBUGFS_MAGIC = 0x64626720 - DEVLINK_CMD_ESWITCH_MODE_GET = 0x1d - DEVLINK_CMD_ESWITCH_MODE_SET = 0x1e -+ DEVLINK_FLASH_OVERWRITE_IDENTIFIERS = 0x2 -+ DEVLINK_FLASH_OVERWRITE_SETTINGS = 0x1 - DEVLINK_GENL_MCGRP_CONFIG_NAME = "config" - DEVLINK_GENL_NAME = "devlink" - DEVLINK_GENL_VERSION = 0x1 - DEVLINK_SB_THRESHOLD_TO_ALPHA_MAX = 0x14 -+ DEVLINK_SUPPORTED_FLASH_OVERWRITE_SECTIONS = 0x3 -+ DEVMEM_MAGIC = 0x454d444d - DEVPTS_SUPER_MAGIC = 0x1cd1 - DMA_BUF_MAGIC = 0x444d4142 -+ DM_ACTIVE_PRESENT_FLAG = 0x20 -+ DM_BUFFER_FULL_FLAG = 0x100 -+ DM_CONTROL_NODE = "control" -+ DM_DATA_OUT_FLAG = 0x10000 -+ DM_DEFERRED_REMOVE = 0x20000 -+ DM_DEV_ARM_POLL = 0xc138fd10 -+ DM_DEV_CREATE = 0xc138fd03 -+ DM_DEV_REMOVE = 0xc138fd04 -+ DM_DEV_RENAME = 0xc138fd05 -+ DM_DEV_SET_GEOMETRY = 0xc138fd0f -+ DM_DEV_STATUS = 0xc138fd07 -+ DM_DEV_SUSPEND = 0xc138fd06 -+ DM_DEV_WAIT = 0xc138fd08 -+ DM_DIR = "mapper" -+ DM_GET_TARGET_VERSION = 0xc138fd11 -+ DM_IMA_MEASUREMENT_FLAG = 0x80000 -+ DM_INACTIVE_PRESENT_FLAG = 0x40 -+ DM_INTERNAL_SUSPEND_FLAG = 0x40000 -+ DM_IOCTL = 0xfd -+ DM_LIST_DEVICES = 0xc138fd02 -+ DM_LIST_VERSIONS = 0xc138fd0d -+ DM_MAX_TYPE_NAME = 0x10 -+ DM_NAME_LEN = 0x80 -+ DM_NAME_LIST_FLAG_DOESNT_HAVE_UUID = 0x2 -+ DM_NAME_LIST_FLAG_HAS_UUID = 0x1 -+ DM_NOFLUSH_FLAG = 0x800 -+ DM_PERSISTENT_DEV_FLAG = 0x8 -+ DM_QUERY_INACTIVE_TABLE_FLAG = 0x1000 -+ DM_READONLY_FLAG = 0x1 -+ DM_REMOVE_ALL = 0xc138fd01 -+ DM_SECURE_DATA_FLAG = 0x8000 -+ DM_SKIP_BDGET_FLAG = 0x200 -+ DM_SKIP_LOCKFS_FLAG = 0x400 -+ DM_STATUS_TABLE_FLAG = 0x10 -+ DM_SUSPEND_FLAG = 0x2 -+ DM_TABLE_CLEAR = 0xc138fd0a -+ DM_TABLE_DEPS = 0xc138fd0b -+ DM_TABLE_LOAD = 0xc138fd09 -+ DM_TABLE_STATUS = 0xc138fd0c -+ DM_TARGET_MSG = 0xc138fd0e -+ DM_UEVENT_GENERATED_FLAG = 0x2000 -+ DM_UUID_FLAG = 0x4000 -+ DM_UUID_LEN = 0x81 -+ DM_VERSION = 0xc138fd00 -+ DM_VERSION_EXTRA = "-ioctl (2022-02-22)" -+ DM_VERSION_MAJOR = 0x4 -+ DM_VERSION_MINOR = 0x2e -+ DM_VERSION_PATCHLEVEL = 0x0 - DT_BLK = 0x6 - DT_CHR = 0x2 - DT_DIR = 0x4 -@@ -443,6 +838,55 @@ const ( - EFD_SEMAPHORE = 0x1 - EFIVARFS_MAGIC = 0xde5e81e4 - EFS_SUPER_MAGIC = 0x414a53 -+ EM_386 = 0x3 -+ EM_486 = 0x6 -+ EM_68K = 0x4 -+ EM_860 = 0x7 -+ EM_88K = 0x5 -+ EM_AARCH64 = 0xb7 -+ EM_ALPHA = 0x9026 -+ EM_ALTERA_NIOS2 = 0x71 -+ EM_ARCOMPACT = 0x5d -+ EM_ARCV2 = 0xc3 -+ EM_ARM = 0x28 -+ EM_BLACKFIN = 0x6a -+ EM_BPF = 0xf7 -+ EM_CRIS = 0x4c -+ EM_CSKY = 0xfc -+ EM_CYGNUS_M32R = 0x9041 -+ EM_CYGNUS_MN10300 = 0xbeef -+ EM_FRV = 0x5441 -+ EM_H8_300 = 0x2e -+ EM_HEXAGON = 0xa4 -+ EM_IA_64 = 0x32 -+ EM_LOONGARCH = 0x102 -+ EM_M32 = 0x1 -+ EM_M32R = 0x58 -+ EM_MICROBLAZE = 0xbd -+ EM_MIPS = 0x8 -+ EM_MIPS_RS3_LE = 0xa -+ EM_MIPS_RS4_BE = 0xa -+ EM_MN10300 = 0x59 -+ EM_NDS32 = 0xa7 -+ EM_NONE = 0x0 -+ EM_OPENRISC = 0x5c -+ EM_PARISC = 0xf -+ EM_PPC = 0x14 -+ EM_PPC64 = 0x15 -+ EM_RISCV = 0xf3 -+ EM_S390 = 0x16 -+ EM_S390_OLD = 0xa390 -+ EM_SH = 0x2a -+ EM_SPARC = 0x2 -+ EM_SPARC32PLUS = 0x12 -+ EM_SPARCV9 = 0x2b -+ EM_SPU = 0x17 -+ EM_TILEGX = 0xbf -+ EM_TILEPRO = 0xbc -+ EM_TI_C6000 = 0x8c -+ EM_UNICORE = 0x6e -+ EM_X86_64 = 0x3e -+ EM_XTENSA = 0x5e - ENCODING_DEFAULT = 0x0 - ENCODING_FM_MARK = 0x3 - ENCODING_FM_SPACE = 0x4 -@@ -468,6 +912,119 @@ const ( - EPOLL_CTL_DEL = 0x2 - EPOLL_CTL_MOD = 0x3 - EROFS_SUPER_MAGIC_V1 = 0xe0f5e1e2 -+ ESP_V4_FLOW = 0xa -+ ESP_V6_FLOW = 0xc -+ ETHER_FLOW = 0x12 -+ ETHTOOL_BUSINFO_LEN = 0x20 -+ ETHTOOL_EROMVERS_LEN = 0x20 -+ ETHTOOL_FEC_AUTO = 0x2 -+ ETHTOOL_FEC_BASER = 0x10 -+ ETHTOOL_FEC_LLRS = 0x20 -+ ETHTOOL_FEC_NONE = 0x1 -+ ETHTOOL_FEC_OFF = 0x4 -+ ETHTOOL_FEC_RS = 0x8 -+ ETHTOOL_FLAG_ALL = 0x7 -+ ETHTOOL_FLAG_COMPACT_BITSETS = 0x1 -+ ETHTOOL_FLAG_OMIT_REPLY = 0x2 -+ ETHTOOL_FLAG_STATS = 0x4 -+ ETHTOOL_FLASHDEV = 0x33 -+ ETHTOOL_FLASH_MAX_FILENAME = 0x80 -+ ETHTOOL_FWVERS_LEN = 0x20 -+ ETHTOOL_F_COMPAT = 0x4 -+ ETHTOOL_F_UNSUPPORTED = 0x1 -+ ETHTOOL_F_WISH = 0x2 -+ ETHTOOL_GCHANNELS = 0x3c -+ ETHTOOL_GCOALESCE = 0xe -+ ETHTOOL_GDRVINFO = 0x3 -+ ETHTOOL_GEEE = 0x44 -+ ETHTOOL_GEEPROM = 0xb -+ ETHTOOL_GENL_NAME = "ethtool" -+ ETHTOOL_GENL_VERSION = 0x1 -+ ETHTOOL_GET_DUMP_DATA = 0x40 -+ ETHTOOL_GET_DUMP_FLAG = 0x3f -+ ETHTOOL_GET_TS_INFO = 0x41 -+ ETHTOOL_GFEATURES = 0x3a -+ ETHTOOL_GFECPARAM = 0x50 -+ ETHTOOL_GFLAGS = 0x25 -+ ETHTOOL_GGRO = 0x2b -+ ETHTOOL_GGSO = 0x23 -+ ETHTOOL_GLINK = 0xa -+ ETHTOOL_GLINKSETTINGS = 0x4c -+ ETHTOOL_GMODULEEEPROM = 0x43 -+ ETHTOOL_GMODULEINFO = 0x42 -+ ETHTOOL_GMSGLVL = 0x7 -+ ETHTOOL_GPAUSEPARAM = 0x12 -+ ETHTOOL_GPERMADDR = 0x20 -+ ETHTOOL_GPFLAGS = 0x27 -+ ETHTOOL_GPHYSTATS = 0x4a -+ ETHTOOL_GREGS = 0x4 -+ ETHTOOL_GRINGPARAM = 0x10 -+ ETHTOOL_GRSSH = 0x46 -+ ETHTOOL_GRXCLSRLALL = 0x30 -+ ETHTOOL_GRXCLSRLCNT = 0x2e -+ ETHTOOL_GRXCLSRULE = 0x2f -+ ETHTOOL_GRXCSUM = 0x14 -+ ETHTOOL_GRXFH = 0x29 -+ ETHTOOL_GRXFHINDIR = 0x38 -+ ETHTOOL_GRXNTUPLE = 0x36 -+ ETHTOOL_GRXRINGS = 0x2d -+ ETHTOOL_GSET = 0x1 -+ ETHTOOL_GSG = 0x18 -+ ETHTOOL_GSSET_INFO = 0x37 -+ ETHTOOL_GSTATS = 0x1d -+ ETHTOOL_GSTRINGS = 0x1b -+ ETHTOOL_GTSO = 0x1e -+ ETHTOOL_GTUNABLE = 0x48 -+ ETHTOOL_GTXCSUM = 0x16 -+ ETHTOOL_GUFO = 0x21 -+ ETHTOOL_GWOL = 0x5 -+ ETHTOOL_MCGRP_MONITOR_NAME = "monitor" -+ ETHTOOL_NWAY_RST = 0x9 -+ ETHTOOL_PERQUEUE = 0x4b -+ ETHTOOL_PHYS_ID = 0x1c -+ ETHTOOL_PHY_EDPD_DFLT_TX_MSECS = 0xffff -+ ETHTOOL_PHY_EDPD_DISABLE = 0x0 -+ ETHTOOL_PHY_EDPD_NO_TX = 0xfffe -+ ETHTOOL_PHY_FAST_LINK_DOWN_OFF = 0xff -+ ETHTOOL_PHY_FAST_LINK_DOWN_ON = 0x0 -+ ETHTOOL_PHY_GTUNABLE = 0x4e -+ ETHTOOL_PHY_STUNABLE = 0x4f -+ ETHTOOL_RESET = 0x34 -+ ETHTOOL_RXNTUPLE_ACTION_CLEAR = -0x2 -+ ETHTOOL_RXNTUPLE_ACTION_DROP = -0x1 -+ ETHTOOL_RX_FLOW_SPEC_RING = 0xffffffff -+ ETHTOOL_RX_FLOW_SPEC_RING_VF = 0xff00000000 -+ ETHTOOL_RX_FLOW_SPEC_RING_VF_OFF = 0x20 -+ ETHTOOL_SCHANNELS = 0x3d -+ ETHTOOL_SCOALESCE = 0xf -+ ETHTOOL_SEEE = 0x45 -+ ETHTOOL_SEEPROM = 0xc -+ ETHTOOL_SET_DUMP = 0x3e -+ ETHTOOL_SFEATURES = 0x3b -+ ETHTOOL_SFECPARAM = 0x51 -+ ETHTOOL_SFLAGS = 0x26 -+ ETHTOOL_SGRO = 0x2c -+ ETHTOOL_SGSO = 0x24 -+ ETHTOOL_SLINKSETTINGS = 0x4d -+ ETHTOOL_SMSGLVL = 0x8 -+ ETHTOOL_SPAUSEPARAM = 0x13 -+ ETHTOOL_SPFLAGS = 0x28 -+ ETHTOOL_SRINGPARAM = 0x11 -+ ETHTOOL_SRSSH = 0x47 -+ ETHTOOL_SRXCLSRLDEL = 0x31 -+ ETHTOOL_SRXCLSRLINS = 0x32 -+ ETHTOOL_SRXCSUM = 0x15 -+ ETHTOOL_SRXFH = 0x2a -+ ETHTOOL_SRXFHINDIR = 0x39 -+ ETHTOOL_SRXNTUPLE = 0x35 -+ ETHTOOL_SSET = 0x2 -+ ETHTOOL_SSG = 0x19 -+ ETHTOOL_STSO = 0x1f -+ ETHTOOL_STUNABLE = 0x49 -+ ETHTOOL_STXCSUM = 0x17 -+ ETHTOOL_SUFO = 0x22 -+ ETHTOOL_SWOL = 0x6 -+ ETHTOOL_TEST = 0x1a - ETH_P_1588 = 0x88f7 - ETH_P_8021AD = 0x88a8 - ETH_P_8021AH = 0x88e7 -@@ -492,6 +1049,7 @@ const ( - ETH_P_CAIF = 0xf7 - ETH_P_CAN = 0xc - ETH_P_CANFD = 0xd -+ ETH_P_CFM = 0x8902 - ETH_P_CONTROL = 0x16 - ETH_P_CUST = 0x6006 - ETH_P_DDCMP = 0x6 -@@ -506,6 +1064,7 @@ const ( - ETH_P_EDSA = 0xdada - ETH_P_ERSPAN = 0x88be - ETH_P_ERSPAN2 = 0x22eb -+ ETH_P_ETHERCAT = 0x88a4 - ETH_P_FCOE = 0x8906 - ETH_P_FIP = 0x8914 - ETH_P_HDLC = 0x19 -@@ -527,9 +1086,11 @@ const ( - ETH_P_LOOPBACK = 0x9000 - ETH_P_MACSEC = 0x88e5 - ETH_P_MAP = 0xf9 -+ ETH_P_MCTP = 0xfa - ETH_P_MOBITEX = 0x15 - ETH_P_MPLS_MC = 0x8848 - ETH_P_MPLS_UC = 0x8847 -+ ETH_P_MRP = 0x88e3 - ETH_P_MVRP = 0x88f5 - ETH_P_NCSI = 0x88f8 - ETH_P_NSH = 0x894f -@@ -541,6 +1102,7 @@ const ( - ETH_P_PPP_MP = 0x8 - ETH_P_PPP_SES = 0x8864 - ETH_P_PREAUTH = 0x88c7 -+ ETH_P_PROFINET = 0x8892 - ETH_P_PRP = 0x88fb - ETH_P_PUP = 0x200 - ETH_P_PUPAT = 0x201 -@@ -548,6 +1110,7 @@ const ( - ETH_P_QINQ2 = 0x9200 - ETH_P_QINQ3 = 0x9300 - ETH_P_RARP = 0x8035 -+ ETH_P_REALTEK = 0x8899 - ETH_P_SCA = 0x6007 - ETH_P_SLOW = 0x8809 - ETH_P_SNAP = 0x5 -@@ -561,7 +1124,23 @@ const ( - ETH_P_WCCP = 0x883e - ETH_P_X25 = 0x805 - ETH_P_XDSA = 0xf8 -+ EV_ABS = 0x3 -+ EV_CNT = 0x20 -+ EV_FF = 0x15 -+ EV_FF_STATUS = 0x17 -+ EV_KEY = 0x1 -+ EV_LED = 0x11 -+ EV_MAX = 0x1f -+ EV_MSC = 0x4 -+ EV_PWR = 0x16 -+ EV_REL = 0x2 -+ EV_REP = 0x14 -+ EV_SND = 0x12 -+ EV_SW = 0x5 -+ EV_SYN = 0x0 -+ EV_VERSION = 0x10001 - EXABYTE_ENABLE_NEST = 0xf0 -+ EXFAT_SUPER_MAGIC = 0x2011bab0 - EXT2_SUPER_MAGIC = 0xef53 - EXT3_SUPER_MAGIC = 0xef53 - EXT4_SUPER_MAGIC = 0xef53 -@@ -599,11 +1178,20 @@ const ( - FAN_DELETE_SELF = 0x400 - FAN_DENY = 0x2 - FAN_ENABLE_AUDIT = 0x40 -+ FAN_EPIDFD = -0x2 -+ FAN_EVENT_INFO_TYPE_DFID = 0x3 -+ FAN_EVENT_INFO_TYPE_DFID_NAME = 0x2 -+ FAN_EVENT_INFO_TYPE_ERROR = 0x5 - FAN_EVENT_INFO_TYPE_FID = 0x1 -+ FAN_EVENT_INFO_TYPE_NEW_DFID_NAME = 0xc -+ FAN_EVENT_INFO_TYPE_OLD_DFID_NAME = 0xa -+ FAN_EVENT_INFO_TYPE_PIDFD = 0x4 - FAN_EVENT_METADATA_LEN = 0x18 - FAN_EVENT_ON_CHILD = 0x8000000 -+ FAN_FS_ERROR = 0x8000 - FAN_MARK_ADD = 0x1 - FAN_MARK_DONT_FOLLOW = 0x4 -+ FAN_MARK_EVICTABLE = 0x200 - FAN_MARK_FILESYSTEM = 0x100 - FAN_MARK_FLUSH = 0x80 - FAN_MARK_IGNORED_MASK = 0x20 -@@ -619,19 +1207,35 @@ const ( - FAN_MOVE_SELF = 0x800 - FAN_NOFD = -0x1 - FAN_NONBLOCK = 0x2 -+ FAN_NOPIDFD = -0x1 - FAN_ONDIR = 0x40000000 - FAN_OPEN = 0x20 - FAN_OPEN_EXEC = 0x1000 - FAN_OPEN_EXEC_PERM = 0x40000 - FAN_OPEN_PERM = 0x10000 - FAN_Q_OVERFLOW = 0x4000 -+ FAN_RENAME = 0x10000000 -+ FAN_REPORT_DFID_NAME = 0xc00 -+ FAN_REPORT_DFID_NAME_TARGET = 0x1e00 -+ FAN_REPORT_DIR_FID = 0x400 - FAN_REPORT_FID = 0x200 -+ FAN_REPORT_NAME = 0x800 -+ FAN_REPORT_PIDFD = 0x80 -+ FAN_REPORT_TARGET_FID = 0x1000 - FAN_REPORT_TID = 0x100 - FAN_UNLIMITED_MARKS = 0x20 - FAN_UNLIMITED_QUEUE = 0x10 - FD_CLOEXEC = 0x1 - FD_SETSIZE = 0x400 - FF0 = 0x0 -+ FIB_RULE_DEV_DETACHED = 0x8 -+ FIB_RULE_FIND_SADDR = 0x10000 -+ FIB_RULE_IIF_DETACHED = 0x8 -+ FIB_RULE_INVERT = 0x2 -+ FIB_RULE_OIF_DETACHED = 0x10 -+ FIB_RULE_PERMANENT = 0x1 -+ FIB_RULE_UNRESOLVED = 0x4 -+ FIDEDUPERANGE = 0xc0189436 - FSCRYPT_KEY_DESCRIPTOR_SIZE = 0x8 - FSCRYPT_KEY_DESC_PREFIX = "fscrypt:" - FSCRYPT_KEY_DESC_PREFIX_SIZE = 0x8 -@@ -655,8 +1259,8 @@ const ( - FSCRYPT_POLICY_FLAGS_PAD_4 = 0x0 - FSCRYPT_POLICY_FLAGS_PAD_8 = 0x1 - FSCRYPT_POLICY_FLAGS_PAD_MASK = 0x3 -- FSCRYPT_POLICY_FLAGS_VALID = 0xf - FSCRYPT_POLICY_FLAG_DIRECT_KEY = 0x4 -+ FSCRYPT_POLICY_FLAG_IV_INO_LBLK_32 = 0x10 - FSCRYPT_POLICY_FLAG_IV_INO_LBLK_64 = 0x8 - FSCRYPT_POLICY_V1 = 0x0 - FSCRYPT_POLICY_V2 = 0x2 -@@ -674,6 +1278,7 @@ const ( - FS_IOC_GET_ENCRYPTION_KEY_STATUS = 0xc080661a - FS_IOC_GET_ENCRYPTION_POLICY_EX = 0xc0096616 - FS_IOC_MEASURE_VERITY = 0xc0046686 -+ FS_IOC_READ_VERITY_METADATA = 0xc0286687 - FS_IOC_REMOVE_ENCRYPTION_KEY = 0xc0406618 - FS_IOC_REMOVE_ENCRYPTION_KEY_ALL_USERS = 0xc0406619 - FS_KEY_DESCRIPTOR_SIZE = 0x8 -@@ -685,10 +1290,14 @@ const ( - FS_POLICY_FLAGS_PAD_4 = 0x0 - FS_POLICY_FLAGS_PAD_8 = 0x1 - FS_POLICY_FLAGS_PAD_MASK = 0x3 -- FS_POLICY_FLAGS_VALID = 0xf -+ FS_POLICY_FLAGS_VALID = 0x7 - FS_VERITY_FL = 0x100000 - FS_VERITY_HASH_ALG_SHA256 = 0x1 - FS_VERITY_HASH_ALG_SHA512 = 0x2 -+ FS_VERITY_METADATA_TYPE_DESCRIPTOR = 0x2 -+ FS_VERITY_METADATA_TYPE_MERKLE_TREE = 0x1 -+ FS_VERITY_METADATA_TYPE_SIGNATURE = 0x3 -+ FUSE_SUPER_MAGIC = 0x65735546 - FUTEXFS_SUPER_MAGIC = 0xbad1dea - F_ADD_SEALS = 0x409 - F_DUPFD = 0x0 -@@ -782,11 +1391,11 @@ const ( - HDIO_SET_XFER = 0x306 - HDIO_TRISTATE_HWIF = 0x31b - HDIO_UNREGISTER_HWIF = 0x32a -+ HID_MAX_DESCRIPTOR_SIZE = 0x1000 - HOSTFS_SUPER_MAGIC = 0xc0ffee - HPFS_SUPER_MAGIC = 0xf995e849 - HUGETLBFS_MAGIC = 0x958458f6 - IBSHIFT = 0x10 -- ICMPV6_FILTER = 0x1 - ICRNL = 0x100 - IFA_F_DADFAILED = 0x8 - IFA_F_DEPRECATED = 0x20 -@@ -801,7 +1410,7 @@ const ( - IFA_F_STABLE_PRIVACY = 0x800 - IFA_F_TEMPORARY = 0x1 - IFA_F_TENTATIVE = 0x40 -- IFA_MAX = 0xa -+ IFA_MAX = 0xb - IFF_ALLMULTI = 0x200 - IFF_ATTACH_QUEUE = 0x200 - IFF_AUTOMEDIA = 0x4000 -@@ -887,6 +1496,7 @@ const ( - IPPROTO_EGP = 0x8 - IPPROTO_ENCAP = 0x62 - IPPROTO_ESP = 0x32 -+ IPPROTO_ETHERNET = 0x8f - IPPROTO_FRAGMENT = 0x2c - IPPROTO_GRE = 0x2f - IPPROTO_HOPOPTS = 0x0 -@@ -900,6 +1510,7 @@ const ( - IPPROTO_L2TP = 0x73 - IPPROTO_MH = 0x87 - IPPROTO_MPLS = 0x89 -+ IPPROTO_MPTCP = 0x106 - IPPROTO_MTP = 0x5c - IPPROTO_NONE = 0x3b - IPPROTO_PIM = 0x67 -@@ -927,6 +1538,7 @@ const ( - IPV6_DONTFRAG = 0x3e - IPV6_DROP_MEMBERSHIP = 0x15 - IPV6_DSTOPTS = 0x3b -+ IPV6_FLOW = 0x11 - IPV6_FREEBIND = 0x4e - IPV6_HDRINCL = 0x24 - IPV6_HOPLIMIT = 0x34 -@@ -955,6 +1567,7 @@ const ( - IPV6_PMTUDISC_WANT = 0x1 - IPV6_RECVDSTOPTS = 0x3a - IPV6_RECVERR = 0x19 -+ IPV6_RECVERR_RFC4884 = 0x1f - IPV6_RECVFRAGSIZE = 0x4d - IPV6_RECVHOPLIMIT = 0x33 - IPV6_RECVHOPOPTS = 0x35 -@@ -976,6 +1589,7 @@ const ( - IPV6_TRANSPARENT = 0x4b - IPV6_UNICAST_HOPS = 0x10 - IPV6_UNICAST_IF = 0x4c -+ IPV6_USER_FLOW = 0xe - IPV6_V6ONLY = 0x1a - IPV6_XFRM_POLICY = 0x23 - IP_ADD_MEMBERSHIP = 0x23 -@@ -1018,6 +1632,7 @@ const ( - IP_PMTUDISC_PROBE = 0x3 - IP_PMTUDISC_WANT = 0x1 - IP_RECVERR = 0xb -+ IP_RECVERR_RFC4884 = 0x1a - IP_RECVFRAGSIZE = 0x19 - IP_RECVOPTS = 0x6 - IP_RECVORIGDSTADDR = 0x14 -@@ -1032,24 +1647,32 @@ const ( - IP_TTL = 0x2 - IP_UNBLOCK_SOURCE = 0x25 - IP_UNICAST_IF = 0x32 -+ IP_USER_FLOW = 0xd - IP_XFRM_POLICY = 0x11 - ISOFS_SUPER_MAGIC = 0x9660 - ISTRIP = 0x20 -+ ITIMER_PROF = 0x2 -+ ITIMER_REAL = 0x0 -+ ITIMER_VIRTUAL = 0x1 - IUTF8 = 0x4000 - IXANY = 0x800 - JFFS2_SUPER_MAGIC = 0x72b6 -+ KCMPROTO_CONNECTED = 0x0 -+ KCM_RECV_DISABLE = 0x1 - KEXEC_ARCH_386 = 0x30000 - KEXEC_ARCH_68K = 0x40000 - KEXEC_ARCH_AARCH64 = 0xb70000 - KEXEC_ARCH_ARM = 0x280000 - KEXEC_ARCH_DEFAULT = 0x0 - KEXEC_ARCH_IA_64 = 0x320000 -+ KEXEC_ARCH_LOONGARCH = 0x1020000 - KEXEC_ARCH_MASK = 0xffff0000 - KEXEC_ARCH_MIPS = 0x80000 - KEXEC_ARCH_MIPS_LE = 0xa0000 - KEXEC_ARCH_PARISC = 0xf0000 - KEXEC_ARCH_PPC = 0x140000 - KEXEC_ARCH_PPC64 = 0x150000 -+ KEXEC_ARCH_RISCV = 0xf30000 - KEXEC_ARCH_S390 = 0x160000 - KEXEC_ARCH_SH = 0x2a0000 - KEXEC_ARCH_X86_64 = 0x3e0000 -@@ -1069,6 +1692,7 @@ const ( - KEYCTL_CAPS0_PERSISTENT_KEYRINGS = 0x2 - KEYCTL_CAPS0_PUBLIC_KEY = 0x8 - KEYCTL_CAPS0_RESTRICT_KEYRING = 0x40 -+ KEYCTL_CAPS1_NOTIFICATIONS = 0x4 - KEYCTL_CAPS1_NS_KEYRING_NAME = 0x1 - KEYCTL_CAPS1_NS_KEY_TAG = 0x2 - KEYCTL_CHOWN = 0x4 -@@ -1106,6 +1730,7 @@ const ( - KEYCTL_SUPPORTS_VERIFY = 0x8 - KEYCTL_UNLINK = 0x9 - KEYCTL_UPDATE = 0x2 -+ KEYCTL_WATCH_KEY = 0x20 - KEY_REQKEY_DEFL_DEFAULT = 0x0 - KEY_REQKEY_DEFL_GROUP_KEYRING = 0x6 - KEY_REQKEY_DEFL_NO_CHANGE = -0x1 -@@ -1123,6 +1748,21 @@ const ( - KEY_SPEC_THREAD_KEYRING = -0x1 - KEY_SPEC_USER_KEYRING = -0x4 - KEY_SPEC_USER_SESSION_KEYRING = -0x5 -+ LANDLOCK_ACCESS_FS_EXECUTE = 0x1 -+ LANDLOCK_ACCESS_FS_MAKE_BLOCK = 0x800 -+ LANDLOCK_ACCESS_FS_MAKE_CHAR = 0x40 -+ LANDLOCK_ACCESS_FS_MAKE_DIR = 0x80 -+ LANDLOCK_ACCESS_FS_MAKE_FIFO = 0x400 -+ LANDLOCK_ACCESS_FS_MAKE_REG = 0x100 -+ LANDLOCK_ACCESS_FS_MAKE_SOCK = 0x200 -+ LANDLOCK_ACCESS_FS_MAKE_SYM = 0x1000 -+ LANDLOCK_ACCESS_FS_READ_DIR = 0x8 -+ LANDLOCK_ACCESS_FS_READ_FILE = 0x4 -+ LANDLOCK_ACCESS_FS_REFER = 0x2000 -+ LANDLOCK_ACCESS_FS_REMOVE_DIR = 0x10 -+ LANDLOCK_ACCESS_FS_REMOVE_FILE = 0x20 -+ LANDLOCK_ACCESS_FS_WRITE_FILE = 0x2 -+ LANDLOCK_CREATE_RULESET_VERSION = 0x1 - LINUX_REBOOT_CMD_CAD_OFF = 0x0 - LINUX_REBOOT_CMD_CAD_ON = 0x89abcdef - LINUX_REBOOT_CMD_HALT = 0xcdef0123 -@@ -1149,8 +1789,16 @@ const ( - LOOP_SET_FD = 0x4c00 - LOOP_SET_STATUS = 0x4c02 - LOOP_SET_STATUS64 = 0x4c04 -+ LOOP_SET_STATUS_CLEARABLE_FLAGS = 0x4 -+ LOOP_SET_STATUS_SETTABLE_FLAGS = 0xc - LO_KEY_SIZE = 0x20 - LO_NAME_SIZE = 0x40 -+ LWTUNNEL_IP6_MAX = 0x8 -+ LWTUNNEL_IP_MAX = 0x8 -+ LWTUNNEL_IP_OPTS_MAX = 0x3 -+ LWTUNNEL_IP_OPT_ERSPAN_MAX = 0x4 -+ LWTUNNEL_IP_OPT_GENEVE_MAX = 0x3 -+ LWTUNNEL_IP_OPT_VXLAN_MAX = 0x1 - MADV_COLD = 0x14 - MADV_DODUMP = 0x11 - MADV_DOFORK = 0xb -@@ -1165,6 +1813,8 @@ const ( - MADV_NOHUGEPAGE = 0xf - MADV_NORMAL = 0x0 - MADV_PAGEOUT = 0x15 -+ MADV_POPULATE_READ = 0x16 -+ MADV_POPULATE_WRITE = 0x17 - MADV_RANDOM = 0x1 - MADV_REMOVE = 0x9 - MADV_SEQUENTIAL = 0x2 -@@ -1189,6 +1839,10 @@ const ( - MCAST_LEAVE_SOURCE_GROUP = 0x2f - MCAST_MSFILTER = 0x30 - MCAST_UNBLOCK_SOURCE = 0x2c -+ MEMGETREGIONINFO = 0xc0104d08 -+ MEMREADOOB64 = 0xc0184d16 -+ MEMWRITE = 0xc0304d18 -+ MEMWRITEOOB64 = 0xc0184d15 - MFD_ALLOW_SEALING = 0x2 - MFD_CLOEXEC = 0x1 - MFD_HUGETLB = 0x4 -@@ -1214,8 +1868,21 @@ const ( - MNT_DETACH = 0x2 - MNT_EXPIRE = 0x4 - MNT_FORCE = 0x1 -+ MODULE_INIT_COMPRESSED_FILE = 0x4 - MODULE_INIT_IGNORE_MODVERSIONS = 0x1 - MODULE_INIT_IGNORE_VERMAGIC = 0x2 -+ MOUNT_ATTR_IDMAP = 0x100000 -+ MOUNT_ATTR_NOATIME = 0x10 -+ MOUNT_ATTR_NODEV = 0x4 -+ MOUNT_ATTR_NODIRATIME = 0x80 -+ MOUNT_ATTR_NOEXEC = 0x8 -+ MOUNT_ATTR_NOSUID = 0x2 -+ MOUNT_ATTR_NOSYMFOLLOW = 0x200000 -+ MOUNT_ATTR_RDONLY = 0x1 -+ MOUNT_ATTR_RELATIME = 0x0 -+ MOUNT_ATTR_SIZE_VER0 = 0x20 -+ MOUNT_ATTR_STRICTATIME = 0x20 -+ MOUNT_ATTR__ATIME = 0x70 - MSDOS_SUPER_MAGIC = 0x4d44 - MSG_BATCH = 0x40000 - MSG_CMSG_CLOEXEC = 0x40000000 -@@ -1259,6 +1926,7 @@ const ( - MS_NOREMOTELOCK = 0x8000000 - MS_NOSEC = 0x10000000 - MS_NOSUID = 0x2 -+ MS_NOSYMFOLLOW = 0x100 - MS_NOUSER = -0x80000000 - MS_POSIXACL = 0x10000 - MS_PRIVATE = 0x40000 -@@ -1276,7 +1944,35 @@ const ( - MS_SYNCHRONOUS = 0x10 - MS_UNBINDABLE = 0x20000 - MS_VERBOSE = 0x8000 -+ MTD_ABSENT = 0x0 -+ MTD_BIT_WRITEABLE = 0x800 -+ MTD_CAP_NANDFLASH = 0x400 -+ MTD_CAP_NORFLASH = 0xc00 -+ MTD_CAP_NVRAM = 0x1c00 -+ MTD_CAP_RAM = 0x1c00 -+ MTD_CAP_ROM = 0x0 -+ MTD_DATAFLASH = 0x6 - MTD_INODE_FS_MAGIC = 0x11307854 -+ MTD_MAX_ECCPOS_ENTRIES = 0x40 -+ MTD_MAX_OOBFREE_ENTRIES = 0x8 -+ MTD_MLCNANDFLASH = 0x8 -+ MTD_NANDECC_AUTOPLACE = 0x2 -+ MTD_NANDECC_AUTOPL_USR = 0x4 -+ MTD_NANDECC_OFF = 0x0 -+ MTD_NANDECC_PLACE = 0x1 -+ MTD_NANDECC_PLACEONLY = 0x3 -+ MTD_NANDFLASH = 0x4 -+ MTD_NORFLASH = 0x3 -+ MTD_NO_ERASE = 0x1000 -+ MTD_OTP_FACTORY = 0x1 -+ MTD_OTP_OFF = 0x0 -+ MTD_OTP_USER = 0x2 -+ MTD_POWERUP_LOCK = 0x2000 -+ MTD_RAM = 0x1 -+ MTD_ROM = 0x2 -+ MTD_SLC_ON_MLC_EMULATION = 0x4000 -+ MTD_UBIVOLUME = 0x7 -+ MTD_WRITEABLE = 0x400 - NAME_MAX = 0xff - NCP_SUPER_MAGIC = 0x564c - NETLINK_ADD_MEMBERSHIP = 0x1 -@@ -1316,6 +2012,59 @@ const ( - NETLINK_XFRM = 0x6 - NETNSA_MAX = 0x5 - NETNSA_NSID_NOT_ASSIGNED = -0x1 -+ NFC_ATR_REQ_GB_MAXSIZE = 0x30 -+ NFC_ATR_REQ_MAXSIZE = 0x40 -+ NFC_ATR_RES_GB_MAXSIZE = 0x2f -+ NFC_ATR_RES_MAXSIZE = 0x40 -+ NFC_COMM_ACTIVE = 0x0 -+ NFC_COMM_PASSIVE = 0x1 -+ NFC_DEVICE_NAME_MAXSIZE = 0x8 -+ NFC_DIRECTION_RX = 0x0 -+ NFC_DIRECTION_TX = 0x1 -+ NFC_FIRMWARE_NAME_MAXSIZE = 0x20 -+ NFC_GB_MAXSIZE = 0x30 -+ NFC_GENL_MCAST_EVENT_NAME = "events" -+ NFC_GENL_NAME = "nfc" -+ NFC_GENL_VERSION = 0x1 -+ NFC_HEADER_SIZE = 0x1 -+ NFC_ISO15693_UID_MAXSIZE = 0x8 -+ NFC_LLCP_MAX_SERVICE_NAME = 0x3f -+ NFC_LLCP_MIUX = 0x1 -+ NFC_LLCP_REMOTE_LTO = 0x3 -+ NFC_LLCP_REMOTE_MIU = 0x2 -+ NFC_LLCP_REMOTE_RW = 0x4 -+ NFC_LLCP_RW = 0x0 -+ NFC_NFCID1_MAXSIZE = 0xa -+ NFC_NFCID2_MAXSIZE = 0x8 -+ NFC_NFCID3_MAXSIZE = 0xa -+ NFC_PROTO_FELICA = 0x3 -+ NFC_PROTO_FELICA_MASK = 0x8 -+ NFC_PROTO_ISO14443 = 0x4 -+ NFC_PROTO_ISO14443_B = 0x6 -+ NFC_PROTO_ISO14443_B_MASK = 0x40 -+ NFC_PROTO_ISO14443_MASK = 0x10 -+ NFC_PROTO_ISO15693 = 0x7 -+ NFC_PROTO_ISO15693_MASK = 0x80 -+ NFC_PROTO_JEWEL = 0x1 -+ NFC_PROTO_JEWEL_MASK = 0x2 -+ NFC_PROTO_MAX = 0x8 -+ NFC_PROTO_MIFARE = 0x2 -+ NFC_PROTO_MIFARE_MASK = 0x4 -+ NFC_PROTO_NFC_DEP = 0x5 -+ NFC_PROTO_NFC_DEP_MASK = 0x20 -+ NFC_RAW_HEADER_SIZE = 0x2 -+ NFC_RF_INITIATOR = 0x0 -+ NFC_RF_NONE = 0x2 -+ NFC_RF_TARGET = 0x1 -+ NFC_SENSB_RES_MAXSIZE = 0xc -+ NFC_SENSF_RES_MAXSIZE = 0x12 -+ NFC_SE_DISABLED = 0x0 -+ NFC_SE_EMBEDDED = 0x2 -+ NFC_SE_ENABLED = 0x1 -+ NFC_SE_UICC = 0x1 -+ NFC_SOCKPROTO_LLCP = 0x1 -+ NFC_SOCKPROTO_MAX = 0x2 -+ NFC_SOCKPROTO_RAW = 0x0 - NFNETLINK_V0 = 0x0 - NFNLGRP_ACCT_QUOTA = 0x8 - NFNLGRP_CONNTRACK_DESTROY = 0x3 -@@ -1333,11 +2082,12 @@ const ( - NFNL_MSG_BATCH_END = 0x11 - NFNL_NFA_NEST = 0x8000 - NFNL_SUBSYS_ACCT = 0x7 -- NFNL_SUBSYS_COUNT = 0xc -+ NFNL_SUBSYS_COUNT = 0xd - NFNL_SUBSYS_CTHELPER = 0x9 - NFNL_SUBSYS_CTNETLINK = 0x1 - NFNL_SUBSYS_CTNETLINK_EXP = 0x2 - NFNL_SUBSYS_CTNETLINK_TIMEOUT = 0x8 -+ NFNL_SUBSYS_HOOK = 0xc - NFNL_SUBSYS_IPSET = 0x6 - NFNL_SUBSYS_NFTABLES = 0xa - NFNL_SUBSYS_NFT_COMPAT = 0xb -@@ -1364,6 +2114,7 @@ const ( - NLM_F_ACK_TLVS = 0x200 - NLM_F_APPEND = 0x800 - NLM_F_ATOMIC = 0x400 -+ NLM_F_BULK = 0x200 - NLM_F_CAPPED = 0x100 - NLM_F_CREATE = 0x400 - NLM_F_DUMP = 0x300 -@@ -1446,6 +2197,109 @@ const ( - PARITY_DEFAULT = 0x0 - PARITY_NONE = 0x1 - PARMRK = 0x8 -+ PERF_ATTR_SIZE_VER0 = 0x40 -+ PERF_ATTR_SIZE_VER1 = 0x48 -+ PERF_ATTR_SIZE_VER2 = 0x50 -+ PERF_ATTR_SIZE_VER3 = 0x60 -+ PERF_ATTR_SIZE_VER4 = 0x68 -+ PERF_ATTR_SIZE_VER5 = 0x70 -+ PERF_ATTR_SIZE_VER6 = 0x78 -+ PERF_ATTR_SIZE_VER7 = 0x80 -+ PERF_AUX_FLAG_COLLISION = 0x8 -+ PERF_AUX_FLAG_CORESIGHT_FORMAT_CORESIGHT = 0x0 -+ PERF_AUX_FLAG_CORESIGHT_FORMAT_RAW = 0x100 -+ PERF_AUX_FLAG_OVERWRITE = 0x2 -+ PERF_AUX_FLAG_PARTIAL = 0x4 -+ PERF_AUX_FLAG_PMU_FORMAT_TYPE_MASK = 0xff00 -+ PERF_AUX_FLAG_TRUNCATED = 0x1 -+ PERF_FLAG_FD_CLOEXEC = 0x8 -+ PERF_FLAG_FD_NO_GROUP = 0x1 -+ PERF_FLAG_FD_OUTPUT = 0x2 -+ PERF_FLAG_PID_CGROUP = 0x4 -+ PERF_HW_EVENT_MASK = 0xffffffff -+ PERF_MAX_CONTEXTS_PER_STACK = 0x8 -+ PERF_MAX_STACK_DEPTH = 0x7f -+ PERF_MEM_BLK_ADDR = 0x4 -+ PERF_MEM_BLK_DATA = 0x2 -+ PERF_MEM_BLK_NA = 0x1 -+ PERF_MEM_BLK_SHIFT = 0x28 -+ PERF_MEM_HOPS_0 = 0x1 -+ PERF_MEM_HOPS_1 = 0x2 -+ PERF_MEM_HOPS_2 = 0x3 -+ PERF_MEM_HOPS_3 = 0x4 -+ PERF_MEM_HOPS_SHIFT = 0x2b -+ PERF_MEM_LOCK_LOCKED = 0x2 -+ PERF_MEM_LOCK_NA = 0x1 -+ PERF_MEM_LOCK_SHIFT = 0x18 -+ PERF_MEM_LVLNUM_ANY_CACHE = 0xb -+ PERF_MEM_LVLNUM_L1 = 0x1 -+ PERF_MEM_LVLNUM_L2 = 0x2 -+ PERF_MEM_LVLNUM_L3 = 0x3 -+ PERF_MEM_LVLNUM_L4 = 0x4 -+ PERF_MEM_LVLNUM_LFB = 0xc -+ PERF_MEM_LVLNUM_NA = 0xf -+ PERF_MEM_LVLNUM_PMEM = 0xe -+ PERF_MEM_LVLNUM_RAM = 0xd -+ PERF_MEM_LVLNUM_SHIFT = 0x21 -+ PERF_MEM_LVL_HIT = 0x2 -+ PERF_MEM_LVL_IO = 0x1000 -+ PERF_MEM_LVL_L1 = 0x8 -+ PERF_MEM_LVL_L2 = 0x20 -+ PERF_MEM_LVL_L3 = 0x40 -+ PERF_MEM_LVL_LFB = 0x10 -+ PERF_MEM_LVL_LOC_RAM = 0x80 -+ PERF_MEM_LVL_MISS = 0x4 -+ PERF_MEM_LVL_NA = 0x1 -+ PERF_MEM_LVL_REM_CCE1 = 0x400 -+ PERF_MEM_LVL_REM_CCE2 = 0x800 -+ PERF_MEM_LVL_REM_RAM1 = 0x100 -+ PERF_MEM_LVL_REM_RAM2 = 0x200 -+ PERF_MEM_LVL_SHIFT = 0x5 -+ PERF_MEM_LVL_UNC = 0x2000 -+ PERF_MEM_OP_EXEC = 0x10 -+ PERF_MEM_OP_LOAD = 0x2 -+ PERF_MEM_OP_NA = 0x1 -+ PERF_MEM_OP_PFETCH = 0x8 -+ PERF_MEM_OP_SHIFT = 0x0 -+ PERF_MEM_OP_STORE = 0x4 -+ PERF_MEM_REMOTE_REMOTE = 0x1 -+ PERF_MEM_REMOTE_SHIFT = 0x25 -+ PERF_MEM_SNOOPX_FWD = 0x1 -+ PERF_MEM_SNOOPX_SHIFT = 0x26 -+ PERF_MEM_SNOOP_HIT = 0x4 -+ PERF_MEM_SNOOP_HITM = 0x10 -+ PERF_MEM_SNOOP_MISS = 0x8 -+ PERF_MEM_SNOOP_NA = 0x1 -+ PERF_MEM_SNOOP_NONE = 0x2 -+ PERF_MEM_SNOOP_SHIFT = 0x13 -+ PERF_MEM_TLB_HIT = 0x2 -+ PERF_MEM_TLB_L1 = 0x8 -+ PERF_MEM_TLB_L2 = 0x10 -+ PERF_MEM_TLB_MISS = 0x4 -+ PERF_MEM_TLB_NA = 0x1 -+ PERF_MEM_TLB_OS = 0x40 -+ PERF_MEM_TLB_SHIFT = 0x1a -+ PERF_MEM_TLB_WK = 0x20 -+ PERF_PMU_TYPE_SHIFT = 0x20 -+ PERF_RECORD_KSYMBOL_FLAGS_UNREGISTER = 0x1 -+ PERF_RECORD_MISC_COMM_EXEC = 0x2000 -+ PERF_RECORD_MISC_CPUMODE_MASK = 0x7 -+ PERF_RECORD_MISC_CPUMODE_UNKNOWN = 0x0 -+ PERF_RECORD_MISC_EXACT_IP = 0x4000 -+ PERF_RECORD_MISC_EXT_RESERVED = 0x8000 -+ PERF_RECORD_MISC_FORK_EXEC = 0x2000 -+ PERF_RECORD_MISC_GUEST_KERNEL = 0x4 -+ PERF_RECORD_MISC_GUEST_USER = 0x5 -+ PERF_RECORD_MISC_HYPERVISOR = 0x3 -+ PERF_RECORD_MISC_KERNEL = 0x1 -+ PERF_RECORD_MISC_MMAP_BUILD_ID = 0x4000 -+ PERF_RECORD_MISC_MMAP_DATA = 0x2000 -+ PERF_RECORD_MISC_PROC_MAP_PARSE_TIMEOUT = 0x1000 -+ PERF_RECORD_MISC_SWITCH_OUT = 0x2000 -+ PERF_RECORD_MISC_SWITCH_OUT_PREEMPT = 0x4000 -+ PERF_RECORD_MISC_USER = 0x2 -+ PERF_SAMPLE_BRANCH_PLM_ALL = 0x7 -+ PERF_SAMPLE_WEIGHT_TYPE = 0x1004000 - PIPEFS_MAGIC = 0x50495045 - PPC_CMM_MAGIC = 0xc7571590 - PPPIOCGNPMODE = 0xc008744c -@@ -1514,12 +2368,30 @@ const ( - PR_MCE_KILL_SET = 0x1 - PR_MPX_DISABLE_MANAGEMENT = 0x2c - PR_MPX_ENABLE_MANAGEMENT = 0x2b -+ PR_MTE_TAG_MASK = 0x7fff8 -+ PR_MTE_TAG_SHIFT = 0x3 -+ PR_MTE_TCF_ASYNC = 0x4 -+ PR_MTE_TCF_MASK = 0x6 -+ PR_MTE_TCF_NONE = 0x0 -+ PR_MTE_TCF_SHIFT = 0x1 -+ PR_MTE_TCF_SYNC = 0x2 - PR_PAC_APDAKEY = 0x4 - PR_PAC_APDBKEY = 0x8 - PR_PAC_APGAKEY = 0x10 - PR_PAC_APIAKEY = 0x1 - PR_PAC_APIBKEY = 0x2 -+ PR_PAC_GET_ENABLED_KEYS = 0x3d - PR_PAC_RESET_KEYS = 0x36 -+ PR_PAC_SET_ENABLED_KEYS = 0x3c -+ PR_SCHED_CORE = 0x3e -+ PR_SCHED_CORE_CREATE = 0x1 -+ PR_SCHED_CORE_GET = 0x0 -+ PR_SCHED_CORE_MAX = 0x4 -+ PR_SCHED_CORE_SCOPE_PROCESS_GROUP = 0x2 -+ PR_SCHED_CORE_SCOPE_THREAD = 0x0 -+ PR_SCHED_CORE_SCOPE_THREAD_GROUP = 0x1 -+ PR_SCHED_CORE_SHARE_FROM = 0x3 -+ PR_SCHED_CORE_SHARE_TO = 0x2 - PR_SET_CHILD_SUBREAPER = 0x24 - PR_SET_DUMPABLE = 0x4 - PR_SET_ENDIAN = 0x14 -@@ -1551,17 +2423,26 @@ const ( - PR_SET_SECCOMP = 0x16 - PR_SET_SECUREBITS = 0x1c - PR_SET_SPECULATION_CTRL = 0x35 -+ PR_SET_SYSCALL_USER_DISPATCH = 0x3b - PR_SET_TAGGED_ADDR_CTRL = 0x37 - PR_SET_THP_DISABLE = 0x29 - PR_SET_TIMERSLACK = 0x1d - PR_SET_TIMING = 0xe - PR_SET_TSC = 0x1a - PR_SET_UNALIGN = 0x6 -+ PR_SET_VMA = 0x53564d41 -+ PR_SET_VMA_ANON_NAME = 0x0 -+ PR_SME_GET_VL = 0x40 -+ PR_SME_SET_VL = 0x3f -+ PR_SME_SET_VL_ONEXEC = 0x40000 -+ PR_SME_VL_INHERIT = 0x20000 -+ PR_SME_VL_LEN_MASK = 0xffff - PR_SPEC_DISABLE = 0x4 - PR_SPEC_DISABLE_NOEXEC = 0x10 - PR_SPEC_ENABLE = 0x2 - PR_SPEC_FORCE_DISABLE = 0x8 - PR_SPEC_INDIRECT_BRANCH = 0x1 -+ PR_SPEC_L1D_FLUSH = 0x2 - PR_SPEC_NOT_AFFECTED = 0x0 - PR_SPEC_PRCTL = 0x1 - PR_SPEC_STORE_BYPASS = 0x0 -@@ -1570,6 +2451,8 @@ const ( - PR_SVE_SET_VL_ONEXEC = 0x40000 - PR_SVE_VL_INHERIT = 0x20000 - PR_SVE_VL_LEN_MASK = 0xffff -+ PR_SYS_DISPATCH_OFF = 0x0 -+ PR_SYS_DISPATCH_ON = 0x1 - PR_TAGGED_ADDR_ENABLE = 0x1 - PR_TASK_PERF_EVENTS_DISABLE = 0x1f - PR_TASK_PERF_EVENTS_ENABLE = 0x20 -@@ -1598,6 +2481,7 @@ const ( - PTRACE_GETREGSET = 0x4204 - PTRACE_GETSIGINFO = 0x4202 - PTRACE_GETSIGMASK = 0x420a -+ PTRACE_GET_RSEQ_CONFIGURATION = 0x420f - PTRACE_GET_SYSCALL_INFO = 0x420e - PTRACE_INTERRUPT = 0x4207 - PTRACE_KILL = 0x8 -@@ -1636,9 +2520,18 @@ const ( - PTRACE_SYSCALL_INFO_NONE = 0x0 - PTRACE_SYSCALL_INFO_SECCOMP = 0x3 - PTRACE_TRACEME = 0x0 -+ P_ALL = 0x0 -+ P_PGID = 0x2 -+ P_PID = 0x1 -+ P_PIDFD = 0x3 - QNX4_SUPER_MAGIC = 0x2f - QNX6_SUPER_MAGIC = 0x68191122 - RAMFS_MAGIC = 0x858458f6 -+ RAW_PAYLOAD_DIGITAL = 0x3 -+ RAW_PAYLOAD_HCI = 0x2 -+ RAW_PAYLOAD_LLCP = 0x0 -+ RAW_PAYLOAD_NCI = 0x1 -+ RAW_PAYLOAD_PROPRIETARY = 0x4 - RDTGROUP_SUPER_MAGIC = 0x7655821 - REISERFS_SUPER_MAGIC = 0x52654973 - RENAME_EXCHANGE = 0x2 -@@ -1689,8 +2582,24 @@ const ( - RTCF_NAT = 0x800000 - RTCF_VALVE = 0x200000 - RTC_AF = 0x20 -+ RTC_BSM_DIRECT = 0x1 -+ RTC_BSM_DISABLED = 0x0 -+ RTC_BSM_LEVEL = 0x2 -+ RTC_BSM_STANDBY = 0x3 -+ RTC_FEATURE_ALARM = 0x0 -+ RTC_FEATURE_ALARM_RES_2S = 0x3 -+ RTC_FEATURE_ALARM_RES_MINUTE = 0x1 -+ RTC_FEATURE_ALARM_WAKEUP_ONLY = 0x7 -+ RTC_FEATURE_BACKUP_SWITCH_MODE = 0x6 -+ RTC_FEATURE_CNT = 0x8 -+ RTC_FEATURE_CORRECTION = 0x5 -+ RTC_FEATURE_NEED_WEEK_DAY = 0x2 -+ RTC_FEATURE_UPDATE_INTERRUPT = 0x4 - RTC_IRQF = 0x80 - RTC_MAX_FREQ = 0x2000 -+ RTC_PARAM_BACKUP_SWITCH_MODE = 0x2 -+ RTC_PARAM_CORRECTION = 0x1 -+ RTC_PARAM_FEATURES = 0x0 - RTC_PF = 0x40 - RTC_UF = 0x10 - RTF_ADDRCLASSMASK = 0xf8000000 -@@ -1749,12 +2658,14 @@ const ( - RTM_DELNEIGH = 0x1d - RTM_DELNETCONF = 0x51 - RTM_DELNEXTHOP = 0x69 -+ RTM_DELNEXTHOPBUCKET = 0x75 - RTM_DELNSID = 0x59 - RTM_DELQDISC = 0x25 - RTM_DELROUTE = 0x19 - RTM_DELRULE = 0x21 - RTM_DELTCLASS = 0x29 - RTM_DELTFILTER = 0x2d -+ RTM_DELTUNNEL = 0x79 - RTM_DELVLAN = 0x71 - RTM_F_CLONED = 0x200 - RTM_F_EQUALIZE = 0x400 -@@ -1762,6 +2673,7 @@ const ( - RTM_F_LOOKUP_TABLE = 0x1000 - RTM_F_NOTIFY = 0x100 - RTM_F_OFFLOAD = 0x4000 -+ RTM_F_OFFLOAD_FAILED = 0x20000000 - RTM_F_PREFIX = 0x800 - RTM_F_TRAP = 0x8000 - RTM_GETACTION = 0x32 -@@ -1778,6 +2690,7 @@ const ( - RTM_GETNEIGHTBL = 0x42 - RTM_GETNETCONF = 0x52 - RTM_GETNEXTHOP = 0x6a -+ RTM_GETNEXTHOPBUCKET = 0x76 - RTM_GETNSID = 0x5a - RTM_GETQDISC = 0x26 - RTM_GETROUTE = 0x1a -@@ -1785,8 +2698,9 @@ const ( - RTM_GETSTATS = 0x5e - RTM_GETTCLASS = 0x2a - RTM_GETTFILTER = 0x2e -+ RTM_GETTUNNEL = 0x7a - RTM_GETVLAN = 0x72 -- RTM_MAX = 0x73 -+ RTM_MAX = 0x7b - RTM_NEWACTION = 0x30 - RTM_NEWADDR = 0x14 - RTM_NEWADDRLABEL = 0x48 -@@ -1800,6 +2714,7 @@ const ( - RTM_NEWNEIGHTBL = 0x40 - RTM_NEWNETCONF = 0x50 - RTM_NEWNEXTHOP = 0x68 -+ RTM_NEWNEXTHOPBUCKET = 0x74 - RTM_NEWNSID = 0x58 - RTM_NEWNVLAN = 0x70 - RTM_NEWPREFIX = 0x34 -@@ -1809,18 +2724,21 @@ const ( - RTM_NEWSTATS = 0x5c - RTM_NEWTCLASS = 0x28 - RTM_NEWTFILTER = 0x2c -- RTM_NR_FAMILIES = 0x19 -- RTM_NR_MSGTYPES = 0x64 -+ RTM_NEWTUNNEL = 0x78 -+ RTM_NR_FAMILIES = 0x1b -+ RTM_NR_MSGTYPES = 0x6c - RTM_SETDCB = 0x4f - RTM_SETLINK = 0x13 - RTM_SETNEIGHTBL = 0x43 -+ RTM_SETSTATS = 0x5f - RTNH_ALIGNTO = 0x4 -- RTNH_COMPARE_MASK = 0x19 -+ RTNH_COMPARE_MASK = 0x59 - RTNH_F_DEAD = 0x1 - RTNH_F_LINKDOWN = 0x10 - RTNH_F_OFFLOAD = 0x8 - RTNH_F_ONLINK = 0x4 - RTNH_F_PERVASIVE = 0x2 -+ RTNH_F_TRAP = 0x40 - RTNH_F_UNRESOLVED = 0x20 - RTN_MAX = 0xb - RTPROT_BABEL = 0x2a -@@ -1832,10 +2750,12 @@ const ( - RTPROT_EIGRP = 0xc0 - RTPROT_GATED = 0x8 - RTPROT_ISIS = 0xbb -+ RTPROT_KEEPALIVED = 0x12 - RTPROT_KERNEL = 0x2 - RTPROT_MROUTED = 0x11 - RTPROT_MRT = 0xa - RTPROT_NTK = 0xf -+ RTPROT_OPENR = 0x63 - RTPROT_OSPF = 0xbc - RTPROT_RA = 0x9 - RTPROT_REDIRECT = 0x1 -@@ -1866,7 +2786,14 @@ const ( - SECCOMP_MODE_DISABLED = 0x0 - SECCOMP_MODE_FILTER = 0x2 - SECCOMP_MODE_STRICT = 0x1 -+ SECRETMEM_MAGIC = 0x5345434d - SECURITYFS_MAGIC = 0x73636673 -+ SEEK_CUR = 0x1 -+ SEEK_DATA = 0x3 -+ SEEK_END = 0x2 -+ SEEK_HOLE = 0x4 -+ SEEK_MAX = 0x4 -+ SEEK_SET = 0x0 - SELINUX_MAGIC = 0xf97cff8c - SHUT_RD = 0x0 - SHUT_RDWR = 0x2 -@@ -1927,6 +2854,9 @@ const ( - SIOCGSTAMPNS = 0x8907 - SIOCGSTAMPNS_OLD = 0x8907 - SIOCGSTAMP_OLD = 0x8906 -+ SIOCKCMATTACH = 0x89e0 -+ SIOCKCMCLONE = 0x89e2 -+ SIOCKCMUNATTACH = 0x89e1 - SIOCOUTQNSD = 0x894b - SIOCPROTOPRIVATE = 0x89e0 - SIOCRTMSG = 0x890d -@@ -1969,19 +2899,27 @@ const ( - SMART_STATUS = 0xda - SMART_WRITE_LOG_SECTOR = 0xd6 - SMART_WRITE_THRESHOLDS = 0xd7 -+ SMB2_SUPER_MAGIC = 0xfe534d42 - SMB_SUPER_MAGIC = 0x517b - SOCKFS_MAGIC = 0x534f434b -+ SOCK_BUF_LOCK_MASK = 0x3 - SOCK_DCCP = 0x6 - SOCK_IOC_TYPE = 0x89 - SOCK_PACKET = 0xa - SOCK_RAW = 0x3 -+ SOCK_RCVBUF_LOCK = 0x2 - SOCK_RDM = 0x4 - SOCK_SEQPACKET = 0x5 -+ SOCK_SNDBUF_LOCK = 0x1 -+ SOCK_TXREHASH_DEFAULT = 0xff -+ SOCK_TXREHASH_DISABLED = 0x0 -+ SOCK_TXREHASH_ENABLED = 0x1 - SOL_AAL = 0x109 - SOL_ALG = 0x117 - SOL_ATM = 0x108 - SOL_CAIF = 0x116 - SOL_CAN_BASE = 0x64 -+ SOL_CAN_RAW = 0x65 - SOL_DCCP = 0x10d - SOL_DECNET = 0x105 - SOL_ICMPV6 = 0x3a -@@ -1991,6 +2929,8 @@ const ( - SOL_IUCV = 0x115 - SOL_KCM = 0x119 - SOL_LLC = 0x10c -+ SOL_MCTP = 0x11d -+ SOL_MPTCP = 0x11c - SOL_NETBEUI = 0x10b - SOL_NETLINK = 0x10e - SOL_NFC = 0x118 -@@ -2000,6 +2940,7 @@ const ( - SOL_RAW = 0xff - SOL_RDS = 0x114 - SOL_RXRPC = 0x110 -+ SOL_SMC = 0x11e - SOL_TCP = 0x6 - SOL_TIPC = 0x10f - SOL_TLS = 0x11a -@@ -2021,6 +2962,7 @@ const ( - SO_EE_ORIGIN_TXSTATUS = 0x4 - SO_EE_ORIGIN_TXTIME = 0x6 - SO_EE_ORIGIN_ZEROCOPY = 0x5 -+ SO_EE_RFC4884_FLAG_INVALID = 0x1 - SO_GET_FILTER = 0x1a - SO_NO_CHECK = 0xb - SO_PEERNAME = 0x1c -@@ -2031,6 +2973,8 @@ const ( - SO_VM_SOCKETS_BUFFER_MIN_SIZE = 0x1 - SO_VM_SOCKETS_BUFFER_SIZE = 0x0 - SO_VM_SOCKETS_CONNECT_TIMEOUT = 0x6 -+ SO_VM_SOCKETS_CONNECT_TIMEOUT_NEW = 0x8 -+ SO_VM_SOCKETS_CONNECT_TIMEOUT_OLD = 0x6 - SO_VM_SOCKETS_NONBLOCK_TXRX = 0x7 - SO_VM_SOCKETS_PEER_HOST_VM_ID = 0x3 - SO_VM_SOCKETS_TRUSTED = 0x5 -@@ -2045,8 +2989,10 @@ const ( - STATX_ATTR_APPEND = 0x20 - STATX_ATTR_AUTOMOUNT = 0x1000 - STATX_ATTR_COMPRESSED = 0x4 -+ STATX_ATTR_DAX = 0x200000 - STATX_ATTR_ENCRYPTED = 0x800 - STATX_ATTR_IMMUTABLE = 0x10 -+ STATX_ATTR_MOUNT_ROOT = 0x2000 - STATX_ATTR_NODUMP = 0x40 - STATX_ATTR_VERITY = 0x100000 - STATX_BASIC_STATS = 0x7ff -@@ -2055,6 +3001,7 @@ const ( - STATX_CTIME = 0x80 - STATX_GID = 0x10 - STATX_INO = 0x100 -+ STATX_MNT_ID = 0x1000 - STATX_MODE = 0x2 - STATX_MTIME = 0x40 - STATX_NLINK = 0x4 -@@ -2100,7 +3047,7 @@ const ( - TASKSTATS_GENL_NAME = "TASKSTATS" - TASKSTATS_GENL_VERSION = 0x1 - TASKSTATS_TYPE_MAX = 0x6 -- TASKSTATS_VERSION = 0xa -+ TASKSTATS_VERSION = 0xd - TCIFLUSH = 0x0 - TCIOFF = 0x2 - TCIOFLUSH = 0x2 -@@ -2108,8 +3055,14 @@ const ( - TCOFLUSH = 0x1 - TCOOFF = 0x0 - TCOON = 0x1 -- TCP_BPF_IW = 0x3e9 -- TCP_BPF_SNDCWND_CLAMP = 0x3ea -+ TCPOPT_EOL = 0x0 -+ TCPOPT_MAXSEG = 0x2 -+ TCPOPT_NOP = 0x1 -+ TCPOPT_SACK = 0x5 -+ TCPOPT_SACK_PERMITTED = 0x4 -+ TCPOPT_TIMESTAMP = 0x8 -+ TCPOPT_TSTAMP_HDR = 0x101080a -+ TCPOPT_WINDOW = 0x3 - TCP_CC_INFO = 0x1a - TCP_CM_INQ = 0x24 - TCP_CONGESTION = 0xd -@@ -2163,8 +3116,12 @@ const ( - TCP_TX_DELAY = 0x25 - TCP_ULP = 0x1f - TCP_USER_TIMEOUT = 0x12 -+ TCP_V4_FLOW = 0x1 -+ TCP_V6_FLOW = 0x5 - TCP_WINDOW_CLAMP = 0xa - TCP_ZEROCOPY_RECEIVE = 0x23 -+ TFD_TIMER_ABSTIME = 0x1 -+ TFD_TIMER_CANCEL_ON_SET = 0x2 - TIMER_ABSTIME = 0x1 - TIOCM_DTR = 0x2 - TIOCM_LE = 0x1 -@@ -2226,6 +3183,7 @@ const ( - TIPC_NODE_STATE = 0x0 - TIPC_OK = 0x0 - TIPC_PUBLISHED = 0x1 -+ TIPC_REKEYING_NOW = 0xffffffff - TIPC_RESERVED_TYPES = 0x40 - TIPC_RETDATA = 0x2 - TIPC_SERVICE_ADDR = 0x2 -@@ -2282,16 +3240,42 @@ const ( - VMADDR_CID_HOST = 0x2 - VMADDR_CID_HYPERVISOR = 0x0 - VMADDR_CID_LOCAL = 0x1 -+ VMADDR_FLAG_TO_HOST = 0x1 - VMADDR_PORT_ANY = 0xffffffff - VM_SOCKETS_INVALID_VERSION = 0xffffffff - VQUIT = 0x1 - VT0 = 0x0 -+ WAKE_MAGIC = 0x20 - WALL = 0x40000000 - WCLONE = 0x80000000 - WCONTINUED = 0x8 - WDIOC_SETPRETIMEOUT = 0xc0045708 - WDIOC_SETTIMEOUT = 0xc0045706 -+ WDIOF_ALARMONLY = 0x400 -+ WDIOF_CARDRESET = 0x20 -+ WDIOF_EXTERN1 = 0x4 -+ WDIOF_EXTERN2 = 0x8 -+ WDIOF_FANFAULT = 0x2 -+ WDIOF_KEEPALIVEPING = 0x8000 -+ WDIOF_MAGICCLOSE = 0x100 -+ WDIOF_OVERHEAT = 0x1 -+ WDIOF_POWEROVER = 0x40 -+ WDIOF_POWERUNDER = 0x10 -+ WDIOF_PRETIMEOUT = 0x200 -+ WDIOF_SETTIMEOUT = 0x80 -+ WDIOF_UNKNOWN = -0x1 -+ WDIOS_DISABLECARD = 0x1 -+ WDIOS_ENABLECARD = 0x2 -+ WDIOS_TEMPPANIC = 0x4 -+ WDIOS_UNKNOWN = -0x1 - WEXITED = 0x4 -+ WGALLOWEDIP_A_MAX = 0x3 -+ WGDEVICE_A_MAX = 0x8 -+ WGPEER_A_MAX = 0xa -+ WG_CMD_MAX = 0x1 -+ WG_GENL_NAME = "wireguard" -+ WG_GENL_VERSION = 0x1 -+ WG_KEY_LEN = 0x20 - WIN_ACKMEDIACHANGE = 0xdb - WIN_CHECKPOWERMODE1 = 0xe5 - WIN_CHECKPOWERMODE2 = 0x98 -@@ -2382,8 +3366,9 @@ const ( - XDP_COPY = 0x2 - XDP_FLAGS_DRV_MODE = 0x4 - XDP_FLAGS_HW_MODE = 0x8 -- XDP_FLAGS_MASK = 0xf -+ XDP_FLAGS_MASK = 0x1f - XDP_FLAGS_MODES = 0xe -+ XDP_FLAGS_REPLACE = 0x10 - XDP_FLAGS_SKB_MODE = 0x2 - XDP_FLAGS_UPDATE_IF_NOEXIST = 0x1 - XDP_MMAP_OFFSETS = 0x1 -@@ -2410,6 +3395,9 @@ const ( - Z3FOLD_MAGIC = 0x33 - ZONEFS_MAGIC = 0x5a4f4653 - ZSMALLOC_MAGIC = 0x58295829 -+ _HIDIOCGRAWNAME_LEN = 0x80 -+ _HIDIOCGRAWPHYS_LEN = 0x40 -+ _HIDIOCGRAWUNIQ_LEN = 0x40 - ) - - // Errors -diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_386.go b/vendor/golang.org/x/sys/unix/zerrors_linux_386.go -index 028c9d8..36c0dfc 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_linux_386.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_386.go -@@ -1,10 +1,11 @@ --// mkerrors.sh -Wall -Werror -static -I/tmp/include -m32 -+// mkerrors.sh -Wall -Werror -static -I/tmp/386/include -m32 - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build 386 && linux - // +build 386,linux - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. --// cgo -godefs -- -Wall -Werror -static -I/tmp/include -m32 _const.go -+// cgo -godefs -- -Wall -Werror -static -I/tmp/386/include -m32 _const.go - - package unix - -@@ -59,6 +60,8 @@ const ( - CS8 = 0x30 - CSIZE = 0x30 - CSTOPB = 0x40 -+ ECCGETLAYOUT = 0x81484d11 -+ ECCGETSTATS = 0x80104d12 - ECHOCTL = 0x200 - ECHOE = 0x10 - ECHOK = 0x20 -@@ -71,12 +74,16 @@ const ( - EXTPROC = 0x10000 - FF1 = 0x8000 - FFDLY = 0x8000 -+ FICLONE = 0x40049409 -+ FICLONERANGE = 0x4020940d - FLUSHO = 0x1000 - FP_XSTATE_MAGIC2 = 0x46505845 - FS_IOC_ENABLE_VERITY = 0x40806685 - FS_IOC_GETFLAGS = 0x80046601 -+ FS_IOC_GET_ENCRYPTION_NONCE = 0x8010661b - FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615 - FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614 -+ FS_IOC_SETFLAGS = 0x40046602 - FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613 - F_GETLK = 0xc - F_GETLK64 = 0xc -@@ -89,6 +96,9 @@ const ( - F_SETOWN = 0x8 - F_UNLCK = 0x2 - F_WRLCK = 0x1 -+ HIDIOCGRAWINFO = 0x80084803 -+ HIDIOCGRDESC = 0x90044802 -+ HIDIOCGRDESCSIZE = 0x80044801 - HUPCL = 0x400 - ICANON = 0x2 - IEXTEN = 0x8000 -@@ -115,6 +125,19 @@ const ( - MCL_CURRENT = 0x1 - MCL_FUTURE = 0x2 - MCL_ONFAULT = 0x4 -+ MEMERASE = 0x40084d02 -+ MEMERASE64 = 0x40104d14 -+ MEMGETBADBLOCK = 0x40084d0b -+ MEMGETINFO = 0x80204d01 -+ MEMGETOOBSEL = 0x80c84d0a -+ MEMGETREGIONCOUNT = 0x80044d07 -+ MEMISLOCKED = 0x80084d17 -+ MEMLOCK = 0x40084d05 -+ MEMREADOOB = 0xc00c4d04 -+ MEMSETBADBLOCK = 0x40084d0c -+ MEMUNLOCK = 0x40084d06 -+ MEMWRITEOOB = 0xc00c4d03 -+ MTDFILEMODE = 0x4d13 - NFDBITS = 0x20 - NLDLY = 0x100 - NOFLSH = 0x80 -@@ -124,6 +147,11 @@ const ( - NS_GET_USERNS = 0xb701 - OLCUC = 0x2 - ONLCR = 0x4 -+ OTPERASE = 0x400c4d19 -+ OTPGETREGIONCOUNT = 0x40044d0e -+ OTPGETREGIONINFO = 0x400c4d0f -+ OTPLOCK = 0x800c4d10 -+ OTPSELECT = 0x80044d0d - O_APPEND = 0x400 - O_ASYNC = 0x2000 - O_CLOEXEC = 0x80000 -@@ -161,6 +189,7 @@ const ( - PERF_EVENT_IOC_SET_OUTPUT = 0x2405 - PPPIOCATTACH = 0x4004743d - PPPIOCATTCHAN = 0x40047438 -+ PPPIOCBRIDGECHAN = 0x40047435 - PPPIOCCONNECT = 0x4004743a - PPPIOCDETACH = 0x4004743c - PPPIOCDISCONN = 0x7439 -@@ -188,6 +217,7 @@ const ( - PPPIOCSPASS = 0x40087447 - PPPIOCSRASYNCMAP = 0x40047454 - PPPIOCSXASYNCMAP = 0x4020744f -+ PPPIOCUNBRIDGECHAN = 0x7434 - PPPIOCXFERUNIT = 0x744e - PR_SET_PTRACER_ANY = 0xffffffff - PTRACE_GETFPREGS = 0xe -@@ -220,6 +250,8 @@ const ( - RTC_EPOCH_SET = 0x4004700e - RTC_IRQP_READ = 0x8004700b - RTC_IRQP_SET = 0x4004700c -+ RTC_PARAM_GET = 0x40187013 -+ RTC_PARAM_SET = 0x40187014 - RTC_PIE_OFF = 0x7006 - RTC_PIE_ON = 0x7005 - RTC_PLL_GET = 0x801c7011 -@@ -263,7 +295,9 @@ const ( - SO_BPF_EXTENSIONS = 0x30 - SO_BROADCAST = 0x6 - SO_BSDCOMPAT = 0xe -+ SO_BUF_LOCK = 0x48 - SO_BUSY_POLL = 0x2e -+ SO_BUSY_POLL_BUDGET = 0x46 - SO_CNX_ADVICE = 0x35 - SO_COOKIE = 0x39 - SO_DETACH_REUSEPORT_BPF = 0x44 -@@ -278,6 +312,7 @@ const ( - SO_MARK = 0x24 - SO_MAX_PACING_RATE = 0x2f - SO_MEMINFO = 0x37 -+ SO_NETNS_COOKIE = 0x47 - SO_NOFCS = 0x2b - SO_OOBINLINE = 0xa - SO_PASSCRED = 0x10 -@@ -286,13 +321,16 @@ const ( - SO_PEERCRED = 0x11 - SO_PEERGROUPS = 0x3b - SO_PEERSEC = 0x1f -+ SO_PREFER_BUSY_POLL = 0x45 - SO_PROTOCOL = 0x26 - SO_RCVBUF = 0x8 - SO_RCVBUFFORCE = 0x21 - SO_RCVLOWAT = 0x12 -+ SO_RCVMARK = 0x4b - SO_RCVTIMEO = 0x14 - SO_RCVTIMEO_NEW = 0x42 - SO_RCVTIMEO_OLD = 0x14 -+ SO_RESERVE_MEM = 0x49 - SO_REUSEADDR = 0x2 - SO_REUSEPORT = 0xf - SO_RXQ_OVFL = 0x28 -@@ -313,6 +351,7 @@ const ( - SO_TIMESTAMPNS_NEW = 0x40 - SO_TIMESTAMPNS_OLD = 0x23 - SO_TIMESTAMP_NEW = 0x3f -+ SO_TXREHASH = 0x4a - SO_TXTIME = 0x3d - SO_TYPE = 0x3 - SO_WIFI_STATUS = 0x29 -@@ -342,6 +381,8 @@ const ( - TCSETXF = 0x5434 - TCSETXW = 0x5435 - TCXONC = 0x540a -+ TFD_CLOEXEC = 0x80000 -+ TFD_NONBLOCK = 0x800 - TIOCCBRK = 0x5428 - TIOCCONS = 0x541d - TIOCEXCL = 0x540c -@@ -475,6 +516,9 @@ const ( - X86_FXSR_MAGIC = 0x0 - XCASE = 0x4 - XTABS = 0x1800 -+ _HIDIOCGRAWNAME = 0x80804804 -+ _HIDIOCGRAWPHYS = 0x80404805 -+ _HIDIOCGRAWUNIQ = 0x80404808 - ) - - // Errors -diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go -index 005970f..4ff9427 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_amd64.go -@@ -1,10 +1,11 @@ --// mkerrors.sh -Wall -Werror -static -I/tmp/include -m64 -+// mkerrors.sh -Wall -Werror -static -I/tmp/amd64/include -m64 - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build amd64 && linux - // +build amd64,linux - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. --// cgo -godefs -- -Wall -Werror -static -I/tmp/include -m64 _const.go -+// cgo -godefs -- -Wall -Werror -static -I/tmp/amd64/include -m64 _const.go - - package unix - -@@ -59,6 +60,8 @@ const ( - CS8 = 0x30 - CSIZE = 0x30 - CSTOPB = 0x40 -+ ECCGETLAYOUT = 0x81484d11 -+ ECCGETSTATS = 0x80104d12 - ECHOCTL = 0x200 - ECHOE = 0x10 - ECHOK = 0x20 -@@ -71,12 +74,16 @@ const ( - EXTPROC = 0x10000 - FF1 = 0x8000 - FFDLY = 0x8000 -+ FICLONE = 0x40049409 -+ FICLONERANGE = 0x4020940d - FLUSHO = 0x1000 - FP_XSTATE_MAGIC2 = 0x46505845 - FS_IOC_ENABLE_VERITY = 0x40806685 - FS_IOC_GETFLAGS = 0x80086601 -+ FS_IOC_GET_ENCRYPTION_NONCE = 0x8010661b - FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615 - FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614 -+ FS_IOC_SETFLAGS = 0x40086602 - FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613 - F_GETLK = 0x5 - F_GETLK64 = 0x5 -@@ -89,6 +96,9 @@ const ( - F_SETOWN = 0x8 - F_UNLCK = 0x2 - F_WRLCK = 0x1 -+ HIDIOCGRAWINFO = 0x80084803 -+ HIDIOCGRDESC = 0x90044802 -+ HIDIOCGRDESCSIZE = 0x80044801 - HUPCL = 0x400 - ICANON = 0x2 - IEXTEN = 0x8000 -@@ -115,6 +125,19 @@ const ( - MCL_CURRENT = 0x1 - MCL_FUTURE = 0x2 - MCL_ONFAULT = 0x4 -+ MEMERASE = 0x40084d02 -+ MEMERASE64 = 0x40104d14 -+ MEMGETBADBLOCK = 0x40084d0b -+ MEMGETINFO = 0x80204d01 -+ MEMGETOOBSEL = 0x80c84d0a -+ MEMGETREGIONCOUNT = 0x80044d07 -+ MEMISLOCKED = 0x80084d17 -+ MEMLOCK = 0x40084d05 -+ MEMREADOOB = 0xc0104d04 -+ MEMSETBADBLOCK = 0x40084d0c -+ MEMUNLOCK = 0x40084d06 -+ MEMWRITEOOB = 0xc0104d03 -+ MTDFILEMODE = 0x4d13 - NFDBITS = 0x40 - NLDLY = 0x100 - NOFLSH = 0x80 -@@ -124,6 +147,11 @@ const ( - NS_GET_USERNS = 0xb701 - OLCUC = 0x2 - ONLCR = 0x4 -+ OTPERASE = 0x400c4d19 -+ OTPGETREGIONCOUNT = 0x40044d0e -+ OTPGETREGIONINFO = 0x400c4d0f -+ OTPLOCK = 0x800c4d10 -+ OTPSELECT = 0x80044d0d - O_APPEND = 0x400 - O_ASYNC = 0x2000 - O_CLOEXEC = 0x80000 -@@ -161,6 +189,7 @@ const ( - PERF_EVENT_IOC_SET_OUTPUT = 0x2405 - PPPIOCATTACH = 0x4004743d - PPPIOCATTCHAN = 0x40047438 -+ PPPIOCBRIDGECHAN = 0x40047435 - PPPIOCCONNECT = 0x4004743a - PPPIOCDETACH = 0x4004743c - PPPIOCDISCONN = 0x7439 -@@ -188,6 +217,7 @@ const ( - PPPIOCSPASS = 0x40107447 - PPPIOCSRASYNCMAP = 0x40047454 - PPPIOCSXASYNCMAP = 0x4020744f -+ PPPIOCUNBRIDGECHAN = 0x7434 - PPPIOCXFERUNIT = 0x744e - PR_SET_PTRACER_ANY = 0xffffffffffffffff - PTRACE_ARCH_PRCTL = 0x1e -@@ -221,6 +251,8 @@ const ( - RTC_EPOCH_SET = 0x4008700e - RTC_IRQP_READ = 0x8008700b - RTC_IRQP_SET = 0x4008700c -+ RTC_PARAM_GET = 0x40187013 -+ RTC_PARAM_SET = 0x40187014 - RTC_PIE_OFF = 0x7006 - RTC_PIE_ON = 0x7005 - RTC_PLL_GET = 0x80207011 -@@ -264,7 +296,9 @@ const ( - SO_BPF_EXTENSIONS = 0x30 - SO_BROADCAST = 0x6 - SO_BSDCOMPAT = 0xe -+ SO_BUF_LOCK = 0x48 - SO_BUSY_POLL = 0x2e -+ SO_BUSY_POLL_BUDGET = 0x46 - SO_CNX_ADVICE = 0x35 - SO_COOKIE = 0x39 - SO_DETACH_REUSEPORT_BPF = 0x44 -@@ -279,6 +313,7 @@ const ( - SO_MARK = 0x24 - SO_MAX_PACING_RATE = 0x2f - SO_MEMINFO = 0x37 -+ SO_NETNS_COOKIE = 0x47 - SO_NOFCS = 0x2b - SO_OOBINLINE = 0xa - SO_PASSCRED = 0x10 -@@ -287,13 +322,16 @@ const ( - SO_PEERCRED = 0x11 - SO_PEERGROUPS = 0x3b - SO_PEERSEC = 0x1f -+ SO_PREFER_BUSY_POLL = 0x45 - SO_PROTOCOL = 0x26 - SO_RCVBUF = 0x8 - SO_RCVBUFFORCE = 0x21 - SO_RCVLOWAT = 0x12 -+ SO_RCVMARK = 0x4b - SO_RCVTIMEO = 0x14 - SO_RCVTIMEO_NEW = 0x42 - SO_RCVTIMEO_OLD = 0x14 -+ SO_RESERVE_MEM = 0x49 - SO_REUSEADDR = 0x2 - SO_REUSEPORT = 0xf - SO_RXQ_OVFL = 0x28 -@@ -314,6 +352,7 @@ const ( - SO_TIMESTAMPNS_NEW = 0x40 - SO_TIMESTAMPNS_OLD = 0x23 - SO_TIMESTAMP_NEW = 0x3f -+ SO_TXREHASH = 0x4a - SO_TXTIME = 0x3d - SO_TYPE = 0x3 - SO_WIFI_STATUS = 0x29 -@@ -343,6 +382,8 @@ const ( - TCSETXF = 0x5434 - TCSETXW = 0x5435 - TCXONC = 0x540a -+ TFD_CLOEXEC = 0x80000 -+ TFD_NONBLOCK = 0x800 - TIOCCBRK = 0x5428 - TIOCCONS = 0x541d - TIOCEXCL = 0x540c -@@ -475,6 +516,9 @@ const ( - WORDSIZE = 0x40 - XCASE = 0x4 - XTABS = 0x1800 -+ _HIDIOCGRAWNAME = 0x80804804 -+ _HIDIOCGRAWPHYS = 0x80404805 -+ _HIDIOCGRAWUNIQ = 0x80404808 - ) - - // Errors -diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go b/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go -index 0541f36..3eaa0fb 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_arm.go -@@ -1,10 +1,11 @@ --// mkerrors.sh -Wall -Werror -static -I/tmp/include -+// mkerrors.sh -Wall -Werror -static -I/tmp/arm/include - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build arm && linux - // +build arm,linux - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. --// cgo -godefs -- -Wall -Werror -static -I/tmp/include _const.go -+// cgo -godefs -- -Wall -Werror -static -I/tmp/arm/include _const.go - - package unix - -@@ -59,6 +60,8 @@ const ( - CS8 = 0x30 - CSIZE = 0x30 - CSTOPB = 0x40 -+ ECCGETLAYOUT = 0x81484d11 -+ ECCGETSTATS = 0x80104d12 - ECHOCTL = 0x200 - ECHOE = 0x10 - ECHOK = 0x20 -@@ -71,11 +74,15 @@ const ( - EXTPROC = 0x10000 - FF1 = 0x8000 - FFDLY = 0x8000 -+ FICLONE = 0x40049409 -+ FICLONERANGE = 0x4020940d - FLUSHO = 0x1000 - FS_IOC_ENABLE_VERITY = 0x40806685 - FS_IOC_GETFLAGS = 0x80046601 -+ FS_IOC_GET_ENCRYPTION_NONCE = 0x8010661b - FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615 - FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614 -+ FS_IOC_SETFLAGS = 0x40046602 - FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613 - F_GETLK = 0xc - F_GETLK64 = 0xc -@@ -88,6 +95,9 @@ const ( - F_SETOWN = 0x8 - F_UNLCK = 0x2 - F_WRLCK = 0x1 -+ HIDIOCGRAWINFO = 0x80084803 -+ HIDIOCGRDESC = 0x90044802 -+ HIDIOCGRDESCSIZE = 0x80044801 - HUPCL = 0x400 - ICANON = 0x2 - IEXTEN = 0x8000 -@@ -113,6 +123,19 @@ const ( - MCL_CURRENT = 0x1 - MCL_FUTURE = 0x2 - MCL_ONFAULT = 0x4 -+ MEMERASE = 0x40084d02 -+ MEMERASE64 = 0x40104d14 -+ MEMGETBADBLOCK = 0x40084d0b -+ MEMGETINFO = 0x80204d01 -+ MEMGETOOBSEL = 0x80c84d0a -+ MEMGETREGIONCOUNT = 0x80044d07 -+ MEMISLOCKED = 0x80084d17 -+ MEMLOCK = 0x40084d05 -+ MEMREADOOB = 0xc00c4d04 -+ MEMSETBADBLOCK = 0x40084d0c -+ MEMUNLOCK = 0x40084d06 -+ MEMWRITEOOB = 0xc00c4d03 -+ MTDFILEMODE = 0x4d13 - NFDBITS = 0x20 - NLDLY = 0x100 - NOFLSH = 0x80 -@@ -122,6 +145,11 @@ const ( - NS_GET_USERNS = 0xb701 - OLCUC = 0x2 - ONLCR = 0x4 -+ OTPERASE = 0x400c4d19 -+ OTPGETREGIONCOUNT = 0x40044d0e -+ OTPGETREGIONINFO = 0x400c4d0f -+ OTPLOCK = 0x800c4d10 -+ OTPSELECT = 0x80044d0d - O_APPEND = 0x400 - O_ASYNC = 0x2000 - O_CLOEXEC = 0x80000 -@@ -159,6 +187,7 @@ const ( - PERF_EVENT_IOC_SET_OUTPUT = 0x2405 - PPPIOCATTACH = 0x4004743d - PPPIOCATTCHAN = 0x40047438 -+ PPPIOCBRIDGECHAN = 0x40047435 - PPPIOCCONNECT = 0x4004743a - PPPIOCDETACH = 0x4004743c - PPPIOCDISCONN = 0x7439 -@@ -186,6 +215,7 @@ const ( - PPPIOCSPASS = 0x40087447 - PPPIOCSRASYNCMAP = 0x40047454 - PPPIOCSXASYNCMAP = 0x4020744f -+ PPPIOCUNBRIDGECHAN = 0x7434 - PPPIOCXFERUNIT = 0x744e - PR_SET_PTRACER_ANY = 0xffffffff - PTRACE_GETCRUNCHREGS = 0x19 -@@ -227,6 +257,8 @@ const ( - RTC_EPOCH_SET = 0x4004700e - RTC_IRQP_READ = 0x8004700b - RTC_IRQP_SET = 0x4004700c -+ RTC_PARAM_GET = 0x40187013 -+ RTC_PARAM_SET = 0x40187014 - RTC_PIE_OFF = 0x7006 - RTC_PIE_ON = 0x7005 - RTC_PLL_GET = 0x801c7011 -@@ -270,7 +302,9 @@ const ( - SO_BPF_EXTENSIONS = 0x30 - SO_BROADCAST = 0x6 - SO_BSDCOMPAT = 0xe -+ SO_BUF_LOCK = 0x48 - SO_BUSY_POLL = 0x2e -+ SO_BUSY_POLL_BUDGET = 0x46 - SO_CNX_ADVICE = 0x35 - SO_COOKIE = 0x39 - SO_DETACH_REUSEPORT_BPF = 0x44 -@@ -285,6 +319,7 @@ const ( - SO_MARK = 0x24 - SO_MAX_PACING_RATE = 0x2f - SO_MEMINFO = 0x37 -+ SO_NETNS_COOKIE = 0x47 - SO_NOFCS = 0x2b - SO_OOBINLINE = 0xa - SO_PASSCRED = 0x10 -@@ -293,13 +328,16 @@ const ( - SO_PEERCRED = 0x11 - SO_PEERGROUPS = 0x3b - SO_PEERSEC = 0x1f -+ SO_PREFER_BUSY_POLL = 0x45 - SO_PROTOCOL = 0x26 - SO_RCVBUF = 0x8 - SO_RCVBUFFORCE = 0x21 - SO_RCVLOWAT = 0x12 -+ SO_RCVMARK = 0x4b - SO_RCVTIMEO = 0x14 - SO_RCVTIMEO_NEW = 0x42 - SO_RCVTIMEO_OLD = 0x14 -+ SO_RESERVE_MEM = 0x49 - SO_REUSEADDR = 0x2 - SO_REUSEPORT = 0xf - SO_RXQ_OVFL = 0x28 -@@ -320,6 +358,7 @@ const ( - SO_TIMESTAMPNS_NEW = 0x40 - SO_TIMESTAMPNS_OLD = 0x23 - SO_TIMESTAMP_NEW = 0x3f -+ SO_TXREHASH = 0x4a - SO_TXTIME = 0x3d - SO_TYPE = 0x3 - SO_WIFI_STATUS = 0x29 -@@ -349,6 +388,8 @@ const ( - TCSETXF = 0x5434 - TCSETXW = 0x5435 - TCXONC = 0x540a -+ TFD_CLOEXEC = 0x80000 -+ TFD_NONBLOCK = 0x800 - TIOCCBRK = 0x5428 - TIOCCONS = 0x541d - TIOCEXCL = 0x540c -@@ -481,6 +522,9 @@ const ( - WORDSIZE = 0x20 - XCASE = 0x4 - XTABS = 0x1800 -+ _HIDIOCGRAWNAME = 0x80804804 -+ _HIDIOCGRAWPHYS = 0x80404805 -+ _HIDIOCGRAWUNIQ = 0x80404808 - ) - - // Errors -diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go -index 9ee8d1b..d7995bd 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_arm64.go -@@ -1,10 +1,11 @@ --// mkerrors.sh -Wall -Werror -static -I/tmp/include -fsigned-char -+// mkerrors.sh -Wall -Werror -static -I/tmp/arm64/include -fsigned-char - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build arm64 && linux - // +build arm64,linux - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. --// cgo -godefs -- -Wall -Werror -static -I/tmp/include -fsigned-char _const.go -+// cgo -godefs -- -Wall -Werror -static -I/tmp/arm64/include -fsigned-char _const.go - - package unix - -@@ -59,6 +60,8 @@ const ( - CS8 = 0x30 - CSIZE = 0x30 - CSTOPB = 0x40 -+ ECCGETLAYOUT = 0x81484d11 -+ ECCGETSTATS = 0x80104d12 - ECHOCTL = 0x200 - ECHOE = 0x10 - ECHOK = 0x20 -@@ -73,12 +76,16 @@ const ( - EXTRA_MAGIC = 0x45585401 - FF1 = 0x8000 - FFDLY = 0x8000 -+ FICLONE = 0x40049409 -+ FICLONERANGE = 0x4020940d - FLUSHO = 0x1000 - FPSIMD_MAGIC = 0x46508001 - FS_IOC_ENABLE_VERITY = 0x40806685 - FS_IOC_GETFLAGS = 0x80086601 -+ FS_IOC_GET_ENCRYPTION_NONCE = 0x8010661b - FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615 - FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614 -+ FS_IOC_SETFLAGS = 0x40086602 - FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613 - F_GETLK = 0x5 - F_GETLK64 = 0x5 -@@ -91,6 +98,9 @@ const ( - F_SETOWN = 0x8 - F_UNLCK = 0x2 - F_WRLCK = 0x1 -+ HIDIOCGRAWINFO = 0x80084803 -+ HIDIOCGRDESC = 0x90044802 -+ HIDIOCGRDESCSIZE = 0x80044801 - HUPCL = 0x400 - ICANON = 0x2 - IEXTEN = 0x8000 -@@ -116,6 +126,19 @@ const ( - MCL_CURRENT = 0x1 - MCL_FUTURE = 0x2 - MCL_ONFAULT = 0x4 -+ MEMERASE = 0x40084d02 -+ MEMERASE64 = 0x40104d14 -+ MEMGETBADBLOCK = 0x40084d0b -+ MEMGETINFO = 0x80204d01 -+ MEMGETOOBSEL = 0x80c84d0a -+ MEMGETREGIONCOUNT = 0x80044d07 -+ MEMISLOCKED = 0x80084d17 -+ MEMLOCK = 0x40084d05 -+ MEMREADOOB = 0xc0104d04 -+ MEMSETBADBLOCK = 0x40084d0c -+ MEMUNLOCK = 0x40084d06 -+ MEMWRITEOOB = 0xc0104d03 -+ MTDFILEMODE = 0x4d13 - NFDBITS = 0x40 - NLDLY = 0x100 - NOFLSH = 0x80 -@@ -125,6 +148,11 @@ const ( - NS_GET_USERNS = 0xb701 - OLCUC = 0x2 - ONLCR = 0x4 -+ OTPERASE = 0x400c4d19 -+ OTPGETREGIONCOUNT = 0x40044d0e -+ OTPGETREGIONINFO = 0x400c4d0f -+ OTPLOCK = 0x800c4d10 -+ OTPSELECT = 0x80044d0d - O_APPEND = 0x400 - O_ASYNC = 0x2000 - O_CLOEXEC = 0x80000 -@@ -162,6 +190,7 @@ const ( - PERF_EVENT_IOC_SET_OUTPUT = 0x2405 - PPPIOCATTACH = 0x4004743d - PPPIOCATTCHAN = 0x40047438 -+ PPPIOCBRIDGECHAN = 0x40047435 - PPPIOCCONNECT = 0x4004743a - PPPIOCDETACH = 0x4004743c - PPPIOCDISCONN = 0x7439 -@@ -189,8 +218,13 @@ const ( - PPPIOCSPASS = 0x40107447 - PPPIOCSRASYNCMAP = 0x40047454 - PPPIOCSXASYNCMAP = 0x4020744f -+ PPPIOCUNBRIDGECHAN = 0x7434 - PPPIOCXFERUNIT = 0x744e -+ PROT_BTI = 0x10 -+ PROT_MTE = 0x20 - PR_SET_PTRACER_ANY = 0xffffffffffffffff -+ PTRACE_PEEKMTETAGS = 0x21 -+ PTRACE_POKEMTETAGS = 0x22 - PTRACE_SYSEMU = 0x1f - PTRACE_SYSEMU_SINGLESTEP = 0x20 - RLIMIT_AS = 0x9 -@@ -213,6 +247,8 @@ const ( - RTC_EPOCH_SET = 0x4008700e - RTC_IRQP_READ = 0x8008700b - RTC_IRQP_SET = 0x4008700c -+ RTC_PARAM_GET = 0x40187013 -+ RTC_PARAM_SET = 0x40187014 - RTC_PIE_OFF = 0x7006 - RTC_PIE_ON = 0x7005 - RTC_PLL_GET = 0x80207011 -@@ -256,7 +292,9 @@ const ( - SO_BPF_EXTENSIONS = 0x30 - SO_BROADCAST = 0x6 - SO_BSDCOMPAT = 0xe -+ SO_BUF_LOCK = 0x48 - SO_BUSY_POLL = 0x2e -+ SO_BUSY_POLL_BUDGET = 0x46 - SO_CNX_ADVICE = 0x35 - SO_COOKIE = 0x39 - SO_DETACH_REUSEPORT_BPF = 0x44 -@@ -271,6 +309,7 @@ const ( - SO_MARK = 0x24 - SO_MAX_PACING_RATE = 0x2f - SO_MEMINFO = 0x37 -+ SO_NETNS_COOKIE = 0x47 - SO_NOFCS = 0x2b - SO_OOBINLINE = 0xa - SO_PASSCRED = 0x10 -@@ -279,13 +318,16 @@ const ( - SO_PEERCRED = 0x11 - SO_PEERGROUPS = 0x3b - SO_PEERSEC = 0x1f -+ SO_PREFER_BUSY_POLL = 0x45 - SO_PROTOCOL = 0x26 - SO_RCVBUF = 0x8 - SO_RCVBUFFORCE = 0x21 - SO_RCVLOWAT = 0x12 -+ SO_RCVMARK = 0x4b - SO_RCVTIMEO = 0x14 - SO_RCVTIMEO_NEW = 0x42 - SO_RCVTIMEO_OLD = 0x14 -+ SO_RESERVE_MEM = 0x49 - SO_REUSEADDR = 0x2 - SO_REUSEPORT = 0xf - SO_RXQ_OVFL = 0x28 -@@ -306,6 +348,7 @@ const ( - SO_TIMESTAMPNS_NEW = 0x40 - SO_TIMESTAMPNS_OLD = 0x23 - SO_TIMESTAMP_NEW = 0x3f -+ SO_TXREHASH = 0x4a - SO_TXTIME = 0x3d - SO_TYPE = 0x3 - SO_WIFI_STATUS = 0x29 -@@ -336,6 +379,8 @@ const ( - TCSETXF = 0x5434 - TCSETXW = 0x5435 - TCXONC = 0x540a -+ TFD_CLOEXEC = 0x80000 -+ TFD_NONBLOCK = 0x800 - TIOCCBRK = 0x5428 - TIOCCONS = 0x541d - TIOCEXCL = 0x540c -@@ -468,6 +513,10 @@ const ( - WORDSIZE = 0x40 - XCASE = 0x4 - XTABS = 0x1800 -+ ZA_MAGIC = 0x54366345 -+ _HIDIOCGRAWNAME = 0x80804804 -+ _HIDIOCGRAWPHYS = 0x80404805 -+ _HIDIOCGRAWUNIQ = 0x80404808 - ) - - // Errors -diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_loong64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_loong64.go -new file mode 100644 -index 0000000..928e24c ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_loong64.go -@@ -0,0 +1,818 @@ -+// mkerrors.sh -Wall -Werror -static -I/tmp/loong64/include -+// Code generated by the command above; see README.md. DO NOT EDIT. -+ -+//go:build loong64 && linux -+// +build loong64,linux -+ -+// Code generated by cmd/cgo -godefs; DO NOT EDIT. -+// cgo -godefs -- -Wall -Werror -static -I/tmp/loong64/include _const.go -+ -+package unix -+ -+import "syscall" -+ -+const ( -+ B1000000 = 0x1008 -+ B115200 = 0x1002 -+ B1152000 = 0x1009 -+ B1500000 = 0x100a -+ B2000000 = 0x100b -+ B230400 = 0x1003 -+ B2500000 = 0x100c -+ B3000000 = 0x100d -+ B3500000 = 0x100e -+ B4000000 = 0x100f -+ B460800 = 0x1004 -+ B500000 = 0x1005 -+ B57600 = 0x1001 -+ B576000 = 0x1006 -+ B921600 = 0x1007 -+ BLKBSZGET = 0x80081270 -+ BLKBSZSET = 0x40081271 -+ BLKFLSBUF = 0x1261 -+ BLKFRAGET = 0x1265 -+ BLKFRASET = 0x1264 -+ BLKGETSIZE = 0x1260 -+ BLKGETSIZE64 = 0x80081272 -+ BLKPBSZGET = 0x127b -+ BLKRAGET = 0x1263 -+ BLKRASET = 0x1262 -+ BLKROGET = 0x125e -+ BLKROSET = 0x125d -+ BLKRRPART = 0x125f -+ BLKSECTGET = 0x1267 -+ BLKSECTSET = 0x1266 -+ BLKSSZGET = 0x1268 -+ BOTHER = 0x1000 -+ BS1 = 0x2000 -+ BSDLY = 0x2000 -+ CBAUD = 0x100f -+ CBAUDEX = 0x1000 -+ CIBAUD = 0x100f0000 -+ CLOCAL = 0x800 -+ CR1 = 0x200 -+ CR2 = 0x400 -+ CR3 = 0x600 -+ CRDLY = 0x600 -+ CREAD = 0x80 -+ CS6 = 0x10 -+ CS7 = 0x20 -+ CS8 = 0x30 -+ CSIZE = 0x30 -+ CSTOPB = 0x40 -+ ECCGETLAYOUT = 0x81484d11 -+ ECCGETSTATS = 0x80104d12 -+ ECHOCTL = 0x200 -+ ECHOE = 0x10 -+ ECHOK = 0x20 -+ ECHOKE = 0x800 -+ ECHONL = 0x40 -+ ECHOPRT = 0x400 -+ EFD_CLOEXEC = 0x80000 -+ EFD_NONBLOCK = 0x800 -+ EPOLL_CLOEXEC = 0x80000 -+ EXTPROC = 0x10000 -+ FF1 = 0x8000 -+ FFDLY = 0x8000 -+ FICLONE = 0x40049409 -+ FICLONERANGE = 0x4020940d -+ FLUSHO = 0x1000 -+ FPU_CTX_MAGIC = 0x46505501 -+ FS_IOC_ENABLE_VERITY = 0x40806685 -+ FS_IOC_GETFLAGS = 0x80086601 -+ FS_IOC_GET_ENCRYPTION_NONCE = 0x8010661b -+ FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615 -+ FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614 -+ FS_IOC_SETFLAGS = 0x40086602 -+ FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613 -+ F_GETLK = 0x5 -+ F_GETLK64 = 0x5 -+ F_GETOWN = 0x9 -+ F_RDLCK = 0x0 -+ F_SETLK = 0x6 -+ F_SETLK64 = 0x6 -+ F_SETLKW = 0x7 -+ F_SETLKW64 = 0x7 -+ F_SETOWN = 0x8 -+ F_UNLCK = 0x2 -+ F_WRLCK = 0x1 -+ HIDIOCGRAWINFO = 0x80084803 -+ HIDIOCGRDESC = 0x90044802 -+ HIDIOCGRDESCSIZE = 0x80044801 -+ HUPCL = 0x400 -+ ICANON = 0x2 -+ IEXTEN = 0x8000 -+ IN_CLOEXEC = 0x80000 -+ IN_NONBLOCK = 0x800 -+ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x7b9 -+ ISIG = 0x1 -+ IUCLC = 0x200 -+ IXOFF = 0x1000 -+ IXON = 0x400 -+ MAP_ANON = 0x20 -+ MAP_ANONYMOUS = 0x20 -+ MAP_DENYWRITE = 0x800 -+ MAP_EXECUTABLE = 0x1000 -+ MAP_GROWSDOWN = 0x100 -+ MAP_HUGETLB = 0x40000 -+ MAP_LOCKED = 0x2000 -+ MAP_NONBLOCK = 0x10000 -+ MAP_NORESERVE = 0x4000 -+ MAP_POPULATE = 0x8000 -+ MAP_STACK = 0x20000 -+ MAP_SYNC = 0x80000 -+ MCL_CURRENT = 0x1 -+ MCL_FUTURE = 0x2 -+ MCL_ONFAULT = 0x4 -+ MEMERASE = 0x40084d02 -+ MEMERASE64 = 0x40104d14 -+ MEMGETBADBLOCK = 0x40084d0b -+ MEMGETINFO = 0x80204d01 -+ MEMGETOOBSEL = 0x80c84d0a -+ MEMGETREGIONCOUNT = 0x80044d07 -+ MEMISLOCKED = 0x80084d17 -+ MEMLOCK = 0x40084d05 -+ MEMREADOOB = 0xc0104d04 -+ MEMSETBADBLOCK = 0x40084d0c -+ MEMUNLOCK = 0x40084d06 -+ MEMWRITEOOB = 0xc0104d03 -+ MTDFILEMODE = 0x4d13 -+ NFDBITS = 0x40 -+ NLDLY = 0x100 -+ NOFLSH = 0x80 -+ NS_GET_NSTYPE = 0xb703 -+ NS_GET_OWNER_UID = 0xb704 -+ NS_GET_PARENT = 0xb702 -+ NS_GET_USERNS = 0xb701 -+ OLCUC = 0x2 -+ ONLCR = 0x4 -+ OTPERASE = 0x400c4d19 -+ OTPGETREGIONCOUNT = 0x40044d0e -+ OTPGETREGIONINFO = 0x400c4d0f -+ OTPLOCK = 0x800c4d10 -+ OTPSELECT = 0x80044d0d -+ O_APPEND = 0x400 -+ O_ASYNC = 0x2000 -+ O_CLOEXEC = 0x80000 -+ O_CREAT = 0x40 -+ O_DIRECT = 0x4000 -+ O_DIRECTORY = 0x10000 -+ O_DSYNC = 0x1000 -+ O_EXCL = 0x80 -+ O_FSYNC = 0x101000 -+ O_LARGEFILE = 0x0 -+ O_NDELAY = 0x800 -+ O_NOATIME = 0x40000 -+ O_NOCTTY = 0x100 -+ O_NOFOLLOW = 0x20000 -+ O_NONBLOCK = 0x800 -+ O_PATH = 0x200000 -+ O_RSYNC = 0x101000 -+ O_SYNC = 0x101000 -+ O_TMPFILE = 0x410000 -+ O_TRUNC = 0x200 -+ PARENB = 0x100 -+ PARODD = 0x200 -+ PENDIN = 0x4000 -+ PERF_EVENT_IOC_DISABLE = 0x2401 -+ PERF_EVENT_IOC_ENABLE = 0x2400 -+ PERF_EVENT_IOC_ID = 0x80082407 -+ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x4008240b -+ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x40042409 -+ PERF_EVENT_IOC_PERIOD = 0x40082404 -+ PERF_EVENT_IOC_QUERY_BPF = 0xc008240a -+ PERF_EVENT_IOC_REFRESH = 0x2402 -+ PERF_EVENT_IOC_RESET = 0x2403 -+ PERF_EVENT_IOC_SET_BPF = 0x40042408 -+ PERF_EVENT_IOC_SET_FILTER = 0x40082406 -+ PERF_EVENT_IOC_SET_OUTPUT = 0x2405 -+ PPPIOCATTACH = 0x4004743d -+ PPPIOCATTCHAN = 0x40047438 -+ PPPIOCBRIDGECHAN = 0x40047435 -+ PPPIOCCONNECT = 0x4004743a -+ PPPIOCDETACH = 0x4004743c -+ PPPIOCDISCONN = 0x7439 -+ PPPIOCGASYNCMAP = 0x80047458 -+ PPPIOCGCHAN = 0x80047437 -+ PPPIOCGDEBUG = 0x80047441 -+ PPPIOCGFLAGS = 0x8004745a -+ PPPIOCGIDLE = 0x8010743f -+ PPPIOCGIDLE32 = 0x8008743f -+ PPPIOCGIDLE64 = 0x8010743f -+ PPPIOCGL2TPSTATS = 0x80487436 -+ PPPIOCGMRU = 0x80047453 -+ PPPIOCGRASYNCMAP = 0x80047455 -+ PPPIOCGUNIT = 0x80047456 -+ PPPIOCGXASYNCMAP = 0x80207450 -+ PPPIOCSACTIVE = 0x40107446 -+ PPPIOCSASYNCMAP = 0x40047457 -+ PPPIOCSCOMPRESS = 0x4010744d -+ PPPIOCSDEBUG = 0x40047440 -+ PPPIOCSFLAGS = 0x40047459 -+ PPPIOCSMAXCID = 0x40047451 -+ PPPIOCSMRRU = 0x4004743b -+ PPPIOCSMRU = 0x40047452 -+ PPPIOCSNPMODE = 0x4008744b -+ PPPIOCSPASS = 0x40107447 -+ PPPIOCSRASYNCMAP = 0x40047454 -+ PPPIOCSXASYNCMAP = 0x4020744f -+ PPPIOCUNBRIDGECHAN = 0x7434 -+ PPPIOCXFERUNIT = 0x744e -+ PR_SET_PTRACER_ANY = 0xffffffffffffffff -+ PTRACE_SYSEMU = 0x1f -+ PTRACE_SYSEMU_SINGLESTEP = 0x20 -+ RLIMIT_AS = 0x9 -+ RLIMIT_MEMLOCK = 0x8 -+ RLIMIT_NOFILE = 0x7 -+ RLIMIT_NPROC = 0x6 -+ RLIMIT_RSS = 0x5 -+ RNDADDENTROPY = 0x40085203 -+ RNDADDTOENTCNT = 0x40045201 -+ RNDCLEARPOOL = 0x5206 -+ RNDGETENTCNT = 0x80045200 -+ RNDGETPOOL = 0x80085202 -+ RNDRESEEDCRNG = 0x5207 -+ RNDZAPENTCNT = 0x5204 -+ RTC_AIE_OFF = 0x7002 -+ RTC_AIE_ON = 0x7001 -+ RTC_ALM_READ = 0x80247008 -+ RTC_ALM_SET = 0x40247007 -+ RTC_EPOCH_READ = 0x8008700d -+ RTC_EPOCH_SET = 0x4008700e -+ RTC_IRQP_READ = 0x8008700b -+ RTC_IRQP_SET = 0x4008700c -+ RTC_PARAM_GET = 0x40187013 -+ RTC_PARAM_SET = 0x40187014 -+ RTC_PIE_OFF = 0x7006 -+ RTC_PIE_ON = 0x7005 -+ RTC_PLL_GET = 0x80207011 -+ RTC_PLL_SET = 0x40207012 -+ RTC_RD_TIME = 0x80247009 -+ RTC_SET_TIME = 0x4024700a -+ RTC_UIE_OFF = 0x7004 -+ RTC_UIE_ON = 0x7003 -+ RTC_VL_CLR = 0x7014 -+ RTC_VL_READ = 0x80047013 -+ RTC_WIE_OFF = 0x7010 -+ RTC_WIE_ON = 0x700f -+ RTC_WKALM_RD = 0x80287010 -+ RTC_WKALM_SET = 0x4028700f -+ SCM_TIMESTAMPING = 0x25 -+ SCM_TIMESTAMPING_OPT_STATS = 0x36 -+ SCM_TIMESTAMPING_PKTINFO = 0x3a -+ SCM_TIMESTAMPNS = 0x23 -+ SCM_TXTIME = 0x3d -+ SCM_WIFI_STATUS = 0x29 -+ SFD_CLOEXEC = 0x80000 -+ SFD_NONBLOCK = 0x800 -+ SIOCATMARK = 0x8905 -+ SIOCGPGRP = 0x8904 -+ SIOCGSTAMPNS_NEW = 0x80108907 -+ SIOCGSTAMP_NEW = 0x80108906 -+ SIOCINQ = 0x541b -+ SIOCOUTQ = 0x5411 -+ SIOCSPGRP = 0x8902 -+ SOCK_CLOEXEC = 0x80000 -+ SOCK_DGRAM = 0x2 -+ SOCK_NONBLOCK = 0x800 -+ SOCK_STREAM = 0x1 -+ SOL_SOCKET = 0x1 -+ SO_ACCEPTCONN = 0x1e -+ SO_ATTACH_BPF = 0x32 -+ SO_ATTACH_REUSEPORT_CBPF = 0x33 -+ SO_ATTACH_REUSEPORT_EBPF = 0x34 -+ SO_BINDTODEVICE = 0x19 -+ SO_BINDTOIFINDEX = 0x3e -+ SO_BPF_EXTENSIONS = 0x30 -+ SO_BROADCAST = 0x6 -+ SO_BSDCOMPAT = 0xe -+ SO_BUF_LOCK = 0x48 -+ SO_BUSY_POLL = 0x2e -+ SO_BUSY_POLL_BUDGET = 0x46 -+ SO_CNX_ADVICE = 0x35 -+ SO_COOKIE = 0x39 -+ SO_DETACH_REUSEPORT_BPF = 0x44 -+ SO_DOMAIN = 0x27 -+ SO_DONTROUTE = 0x5 -+ SO_ERROR = 0x4 -+ SO_INCOMING_CPU = 0x31 -+ SO_INCOMING_NAPI_ID = 0x38 -+ SO_KEEPALIVE = 0x9 -+ SO_LINGER = 0xd -+ SO_LOCK_FILTER = 0x2c -+ SO_MARK = 0x24 -+ SO_MAX_PACING_RATE = 0x2f -+ SO_MEMINFO = 0x37 -+ SO_NETNS_COOKIE = 0x47 -+ SO_NOFCS = 0x2b -+ SO_OOBINLINE = 0xa -+ SO_PASSCRED = 0x10 -+ SO_PASSSEC = 0x22 -+ SO_PEEK_OFF = 0x2a -+ SO_PEERCRED = 0x11 -+ SO_PEERGROUPS = 0x3b -+ SO_PEERSEC = 0x1f -+ SO_PREFER_BUSY_POLL = 0x45 -+ SO_PROTOCOL = 0x26 -+ SO_RCVBUF = 0x8 -+ SO_RCVBUFFORCE = 0x21 -+ SO_RCVLOWAT = 0x12 -+ SO_RCVMARK = 0x4b -+ SO_RCVTIMEO = 0x14 -+ SO_RCVTIMEO_NEW = 0x42 -+ SO_RCVTIMEO_OLD = 0x14 -+ SO_RESERVE_MEM = 0x49 -+ SO_REUSEADDR = 0x2 -+ SO_REUSEPORT = 0xf -+ SO_RXQ_OVFL = 0x28 -+ SO_SECURITY_AUTHENTICATION = 0x16 -+ SO_SECURITY_ENCRYPTION_NETWORK = 0x18 -+ SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17 -+ SO_SELECT_ERR_QUEUE = 0x2d -+ SO_SNDBUF = 0x7 -+ SO_SNDBUFFORCE = 0x20 -+ SO_SNDLOWAT = 0x13 -+ SO_SNDTIMEO = 0x15 -+ SO_SNDTIMEO_NEW = 0x43 -+ SO_SNDTIMEO_OLD = 0x15 -+ SO_TIMESTAMPING = 0x25 -+ SO_TIMESTAMPING_NEW = 0x41 -+ SO_TIMESTAMPING_OLD = 0x25 -+ SO_TIMESTAMPNS = 0x23 -+ SO_TIMESTAMPNS_NEW = 0x40 -+ SO_TIMESTAMPNS_OLD = 0x23 -+ SO_TIMESTAMP_NEW = 0x3f -+ SO_TXREHASH = 0x4a -+ SO_TXTIME = 0x3d -+ SO_TYPE = 0x3 -+ SO_WIFI_STATUS = 0x29 -+ SO_ZEROCOPY = 0x3c -+ TAB1 = 0x800 -+ TAB2 = 0x1000 -+ TAB3 = 0x1800 -+ TABDLY = 0x1800 -+ TCFLSH = 0x540b -+ TCGETA = 0x5405 -+ TCGETS = 0x5401 -+ TCGETS2 = 0x802c542a -+ TCGETX = 0x5432 -+ TCSAFLUSH = 0x2 -+ TCSBRK = 0x5409 -+ TCSBRKP = 0x5425 -+ TCSETA = 0x5406 -+ TCSETAF = 0x5408 -+ TCSETAW = 0x5407 -+ TCSETS = 0x5402 -+ TCSETS2 = 0x402c542b -+ TCSETSF = 0x5404 -+ TCSETSF2 = 0x402c542d -+ TCSETSW = 0x5403 -+ TCSETSW2 = 0x402c542c -+ TCSETX = 0x5433 -+ TCSETXF = 0x5434 -+ TCSETXW = 0x5435 -+ TCXONC = 0x540a -+ TFD_CLOEXEC = 0x80000 -+ TFD_NONBLOCK = 0x800 -+ TIOCCBRK = 0x5428 -+ TIOCCONS = 0x541d -+ TIOCEXCL = 0x540c -+ TIOCGDEV = 0x80045432 -+ TIOCGETD = 0x5424 -+ TIOCGEXCL = 0x80045440 -+ TIOCGICOUNT = 0x545d -+ TIOCGISO7816 = 0x80285442 -+ TIOCGLCKTRMIOS = 0x5456 -+ TIOCGPGRP = 0x540f -+ TIOCGPKT = 0x80045438 -+ TIOCGPTLCK = 0x80045439 -+ TIOCGPTN = 0x80045430 -+ TIOCGPTPEER = 0x5441 -+ TIOCGRS485 = 0x542e -+ TIOCGSERIAL = 0x541e -+ TIOCGSID = 0x5429 -+ TIOCGSOFTCAR = 0x5419 -+ TIOCGWINSZ = 0x5413 -+ TIOCINQ = 0x541b -+ TIOCLINUX = 0x541c -+ TIOCMBIC = 0x5417 -+ TIOCMBIS = 0x5416 -+ TIOCMGET = 0x5415 -+ TIOCMIWAIT = 0x545c -+ TIOCMSET = 0x5418 -+ TIOCM_CAR = 0x40 -+ TIOCM_CD = 0x40 -+ TIOCM_CTS = 0x20 -+ TIOCM_DSR = 0x100 -+ TIOCM_RI = 0x80 -+ TIOCM_RNG = 0x80 -+ TIOCM_SR = 0x10 -+ TIOCM_ST = 0x8 -+ TIOCNOTTY = 0x5422 -+ TIOCNXCL = 0x540d -+ TIOCOUTQ = 0x5411 -+ TIOCPKT = 0x5420 -+ TIOCSBRK = 0x5427 -+ TIOCSCTTY = 0x540e -+ TIOCSERCONFIG = 0x5453 -+ TIOCSERGETLSR = 0x5459 -+ TIOCSERGETMULTI = 0x545a -+ TIOCSERGSTRUCT = 0x5458 -+ TIOCSERGWILD = 0x5454 -+ TIOCSERSETMULTI = 0x545b -+ TIOCSERSWILD = 0x5455 -+ TIOCSER_TEMT = 0x1 -+ TIOCSETD = 0x5423 -+ TIOCSIG = 0x40045436 -+ TIOCSISO7816 = 0xc0285443 -+ TIOCSLCKTRMIOS = 0x5457 -+ TIOCSPGRP = 0x5410 -+ TIOCSPTLCK = 0x40045431 -+ TIOCSRS485 = 0x542f -+ TIOCSSERIAL = 0x541f -+ TIOCSSOFTCAR = 0x541a -+ TIOCSTI = 0x5412 -+ TIOCSWINSZ = 0x5414 -+ TIOCVHANGUP = 0x5437 -+ TOSTOP = 0x100 -+ TUNATTACHFILTER = 0x401054d5 -+ TUNDETACHFILTER = 0x401054d6 -+ TUNGETDEVNETNS = 0x54e3 -+ TUNGETFEATURES = 0x800454cf -+ TUNGETFILTER = 0x801054db -+ TUNGETIFF = 0x800454d2 -+ TUNGETSNDBUF = 0x800454d3 -+ TUNGETVNETBE = 0x800454df -+ TUNGETVNETHDRSZ = 0x800454d7 -+ TUNGETVNETLE = 0x800454dd -+ TUNSETCARRIER = 0x400454e2 -+ TUNSETDEBUG = 0x400454c9 -+ TUNSETFILTEREBPF = 0x800454e1 -+ TUNSETGROUP = 0x400454ce -+ TUNSETIFF = 0x400454ca -+ TUNSETIFINDEX = 0x400454da -+ TUNSETLINK = 0x400454cd -+ TUNSETNOCSUM = 0x400454c8 -+ TUNSETOFFLOAD = 0x400454d0 -+ TUNSETOWNER = 0x400454cc -+ TUNSETPERSIST = 0x400454cb -+ TUNSETQUEUE = 0x400454d9 -+ TUNSETSNDBUF = 0x400454d4 -+ TUNSETSTEERINGEBPF = 0x800454e0 -+ TUNSETTXFILTER = 0x400454d1 -+ TUNSETVNETBE = 0x400454de -+ TUNSETVNETHDRSZ = 0x400454d8 -+ TUNSETVNETLE = 0x400454dc -+ UBI_IOCATT = 0x40186f40 -+ UBI_IOCDET = 0x40046f41 -+ UBI_IOCEBCH = 0x40044f02 -+ UBI_IOCEBER = 0x40044f01 -+ UBI_IOCEBISMAP = 0x80044f05 -+ UBI_IOCEBMAP = 0x40084f03 -+ UBI_IOCEBUNMAP = 0x40044f04 -+ UBI_IOCMKVOL = 0x40986f00 -+ UBI_IOCRMVOL = 0x40046f01 -+ UBI_IOCRNVOL = 0x51106f03 -+ UBI_IOCRPEB = 0x40046f04 -+ UBI_IOCRSVOL = 0x400c6f02 -+ UBI_IOCSETVOLPROP = 0x40104f06 -+ UBI_IOCSPEB = 0x40046f05 -+ UBI_IOCVOLCRBLK = 0x40804f07 -+ UBI_IOCVOLRMBLK = 0x4f08 -+ UBI_IOCVOLUP = 0x40084f00 -+ VDISCARD = 0xd -+ VEOF = 0x4 -+ VEOL = 0xb -+ VEOL2 = 0x10 -+ VMIN = 0x6 -+ VREPRINT = 0xc -+ VSTART = 0x8 -+ VSTOP = 0x9 -+ VSUSP = 0xa -+ VSWTC = 0x7 -+ VT1 = 0x4000 -+ VTDLY = 0x4000 -+ VTIME = 0x5 -+ VWERASE = 0xe -+ WDIOC_GETBOOTSTATUS = 0x80045702 -+ WDIOC_GETPRETIMEOUT = 0x80045709 -+ WDIOC_GETSTATUS = 0x80045701 -+ WDIOC_GETSUPPORT = 0x80285700 -+ WDIOC_GETTEMP = 0x80045703 -+ WDIOC_GETTIMELEFT = 0x8004570a -+ WDIOC_GETTIMEOUT = 0x80045707 -+ WDIOC_KEEPALIVE = 0x80045705 -+ WDIOC_SETOPTIONS = 0x80045704 -+ WORDSIZE = 0x40 -+ XCASE = 0x4 -+ XTABS = 0x1800 -+ _HIDIOCGRAWNAME = 0x80804804 -+ _HIDIOCGRAWPHYS = 0x80404805 -+ _HIDIOCGRAWUNIQ = 0x80404808 -+) -+ -+// Errors -+const ( -+ EADDRINUSE = syscall.Errno(0x62) -+ EADDRNOTAVAIL = syscall.Errno(0x63) -+ EADV = syscall.Errno(0x44) -+ EAFNOSUPPORT = syscall.Errno(0x61) -+ EALREADY = syscall.Errno(0x72) -+ EBADE = syscall.Errno(0x34) -+ EBADFD = syscall.Errno(0x4d) -+ EBADMSG = syscall.Errno(0x4a) -+ EBADR = syscall.Errno(0x35) -+ EBADRQC = syscall.Errno(0x38) -+ EBADSLT = syscall.Errno(0x39) -+ EBFONT = syscall.Errno(0x3b) -+ ECANCELED = syscall.Errno(0x7d) -+ ECHRNG = syscall.Errno(0x2c) -+ ECOMM = syscall.Errno(0x46) -+ ECONNABORTED = syscall.Errno(0x67) -+ ECONNREFUSED = syscall.Errno(0x6f) -+ ECONNRESET = syscall.Errno(0x68) -+ EDEADLK = syscall.Errno(0x23) -+ EDEADLOCK = syscall.Errno(0x23) -+ EDESTADDRREQ = syscall.Errno(0x59) -+ EDOTDOT = syscall.Errno(0x49) -+ EDQUOT = syscall.Errno(0x7a) -+ EHOSTDOWN = syscall.Errno(0x70) -+ EHOSTUNREACH = syscall.Errno(0x71) -+ EHWPOISON = syscall.Errno(0x85) -+ EIDRM = syscall.Errno(0x2b) -+ EILSEQ = syscall.Errno(0x54) -+ EINPROGRESS = syscall.Errno(0x73) -+ EISCONN = syscall.Errno(0x6a) -+ EISNAM = syscall.Errno(0x78) -+ EKEYEXPIRED = syscall.Errno(0x7f) -+ EKEYREJECTED = syscall.Errno(0x81) -+ EKEYREVOKED = syscall.Errno(0x80) -+ EL2HLT = syscall.Errno(0x33) -+ EL2NSYNC = syscall.Errno(0x2d) -+ EL3HLT = syscall.Errno(0x2e) -+ EL3RST = syscall.Errno(0x2f) -+ ELIBACC = syscall.Errno(0x4f) -+ ELIBBAD = syscall.Errno(0x50) -+ ELIBEXEC = syscall.Errno(0x53) -+ ELIBMAX = syscall.Errno(0x52) -+ ELIBSCN = syscall.Errno(0x51) -+ ELNRNG = syscall.Errno(0x30) -+ ELOOP = syscall.Errno(0x28) -+ EMEDIUMTYPE = syscall.Errno(0x7c) -+ EMSGSIZE = syscall.Errno(0x5a) -+ EMULTIHOP = syscall.Errno(0x48) -+ ENAMETOOLONG = syscall.Errno(0x24) -+ ENAVAIL = syscall.Errno(0x77) -+ ENETDOWN = syscall.Errno(0x64) -+ ENETRESET = syscall.Errno(0x66) -+ ENETUNREACH = syscall.Errno(0x65) -+ ENOANO = syscall.Errno(0x37) -+ ENOBUFS = syscall.Errno(0x69) -+ ENOCSI = syscall.Errno(0x32) -+ ENODATA = syscall.Errno(0x3d) -+ ENOKEY = syscall.Errno(0x7e) -+ ENOLCK = syscall.Errno(0x25) -+ ENOLINK = syscall.Errno(0x43) -+ ENOMEDIUM = syscall.Errno(0x7b) -+ ENOMSG = syscall.Errno(0x2a) -+ ENONET = syscall.Errno(0x40) -+ ENOPKG = syscall.Errno(0x41) -+ ENOPROTOOPT = syscall.Errno(0x5c) -+ ENOSR = syscall.Errno(0x3f) -+ ENOSTR = syscall.Errno(0x3c) -+ ENOSYS = syscall.Errno(0x26) -+ ENOTCONN = syscall.Errno(0x6b) -+ ENOTEMPTY = syscall.Errno(0x27) -+ ENOTNAM = syscall.Errno(0x76) -+ ENOTRECOVERABLE = syscall.Errno(0x83) -+ ENOTSOCK = syscall.Errno(0x58) -+ ENOTSUP = syscall.Errno(0x5f) -+ ENOTUNIQ = syscall.Errno(0x4c) -+ EOPNOTSUPP = syscall.Errno(0x5f) -+ EOVERFLOW = syscall.Errno(0x4b) -+ EOWNERDEAD = syscall.Errno(0x82) -+ EPFNOSUPPORT = syscall.Errno(0x60) -+ EPROTO = syscall.Errno(0x47) -+ EPROTONOSUPPORT = syscall.Errno(0x5d) -+ EPROTOTYPE = syscall.Errno(0x5b) -+ EREMCHG = syscall.Errno(0x4e) -+ EREMOTE = syscall.Errno(0x42) -+ EREMOTEIO = syscall.Errno(0x79) -+ ERESTART = syscall.Errno(0x55) -+ ERFKILL = syscall.Errno(0x84) -+ ESHUTDOWN = syscall.Errno(0x6c) -+ ESOCKTNOSUPPORT = syscall.Errno(0x5e) -+ ESRMNT = syscall.Errno(0x45) -+ ESTALE = syscall.Errno(0x74) -+ ESTRPIPE = syscall.Errno(0x56) -+ ETIME = syscall.Errno(0x3e) -+ ETIMEDOUT = syscall.Errno(0x6e) -+ ETOOMANYREFS = syscall.Errno(0x6d) -+ EUCLEAN = syscall.Errno(0x75) -+ EUNATCH = syscall.Errno(0x31) -+ EUSERS = syscall.Errno(0x57) -+ EXFULL = syscall.Errno(0x36) -+) -+ -+// Signals -+const ( -+ SIGBUS = syscall.Signal(0x7) -+ SIGCHLD = syscall.Signal(0x11) -+ SIGCLD = syscall.Signal(0x11) -+ SIGCONT = syscall.Signal(0x12) -+ SIGIO = syscall.Signal(0x1d) -+ SIGPOLL = syscall.Signal(0x1d) -+ SIGPROF = syscall.Signal(0x1b) -+ SIGPWR = syscall.Signal(0x1e) -+ SIGSTKFLT = syscall.Signal(0x10) -+ SIGSTOP = syscall.Signal(0x13) -+ SIGSYS = syscall.Signal(0x1f) -+ SIGTSTP = syscall.Signal(0x14) -+ SIGTTIN = syscall.Signal(0x15) -+ SIGTTOU = syscall.Signal(0x16) -+ SIGURG = syscall.Signal(0x17) -+ SIGUSR1 = syscall.Signal(0xa) -+ SIGUSR2 = syscall.Signal(0xc) -+ SIGVTALRM = syscall.Signal(0x1a) -+ SIGWINCH = syscall.Signal(0x1c) -+ SIGXCPU = syscall.Signal(0x18) -+ SIGXFSZ = syscall.Signal(0x19) -+) -+ -+// Error table -+var errorList = [...]struct { -+ num syscall.Errno -+ name string -+ desc string -+}{ -+ {1, "EPERM", "operation not permitted"}, -+ {2, "ENOENT", "no such file or directory"}, -+ {3, "ESRCH", "no such process"}, -+ {4, "EINTR", "interrupted system call"}, -+ {5, "EIO", "input/output error"}, -+ {6, "ENXIO", "no such device or address"}, -+ {7, "E2BIG", "argument list too long"}, -+ {8, "ENOEXEC", "exec format error"}, -+ {9, "EBADF", "bad file descriptor"}, -+ {10, "ECHILD", "no child processes"}, -+ {11, "EAGAIN", "resource temporarily unavailable"}, -+ {12, "ENOMEM", "cannot allocate memory"}, -+ {13, "EACCES", "permission denied"}, -+ {14, "EFAULT", "bad address"}, -+ {15, "ENOTBLK", "block device required"}, -+ {16, "EBUSY", "device or resource busy"}, -+ {17, "EEXIST", "file exists"}, -+ {18, "EXDEV", "invalid cross-device link"}, -+ {19, "ENODEV", "no such device"}, -+ {20, "ENOTDIR", "not a directory"}, -+ {21, "EISDIR", "is a directory"}, -+ {22, "EINVAL", "invalid argument"}, -+ {23, "ENFILE", "too many open files in system"}, -+ {24, "EMFILE", "too many open files"}, -+ {25, "ENOTTY", "inappropriate ioctl for device"}, -+ {26, "ETXTBSY", "text file busy"}, -+ {27, "EFBIG", "file too large"}, -+ {28, "ENOSPC", "no space left on device"}, -+ {29, "ESPIPE", "illegal seek"}, -+ {30, "EROFS", "read-only file system"}, -+ {31, "EMLINK", "too many links"}, -+ {32, "EPIPE", "broken pipe"}, -+ {33, "EDOM", "numerical argument out of domain"}, -+ {34, "ERANGE", "numerical result out of range"}, -+ {35, "EDEADLK", "resource deadlock avoided"}, -+ {36, "ENAMETOOLONG", "file name too long"}, -+ {37, "ENOLCK", "no locks available"}, -+ {38, "ENOSYS", "function not implemented"}, -+ {39, "ENOTEMPTY", "directory not empty"}, -+ {40, "ELOOP", "too many levels of symbolic links"}, -+ {42, "ENOMSG", "no message of desired type"}, -+ {43, "EIDRM", "identifier removed"}, -+ {44, "ECHRNG", "channel number out of range"}, -+ {45, "EL2NSYNC", "level 2 not synchronized"}, -+ {46, "EL3HLT", "level 3 halted"}, -+ {47, "EL3RST", "level 3 reset"}, -+ {48, "ELNRNG", "link number out of range"}, -+ {49, "EUNATCH", "protocol driver not attached"}, -+ {50, "ENOCSI", "no CSI structure available"}, -+ {51, "EL2HLT", "level 2 halted"}, -+ {52, "EBADE", "invalid exchange"}, -+ {53, "EBADR", "invalid request descriptor"}, -+ {54, "EXFULL", "exchange full"}, -+ {55, "ENOANO", "no anode"}, -+ {56, "EBADRQC", "invalid request code"}, -+ {57, "EBADSLT", "invalid slot"}, -+ {59, "EBFONT", "bad font file format"}, -+ {60, "ENOSTR", "device not a stream"}, -+ {61, "ENODATA", "no data available"}, -+ {62, "ETIME", "timer expired"}, -+ {63, "ENOSR", "out of streams resources"}, -+ {64, "ENONET", "machine is not on the network"}, -+ {65, "ENOPKG", "package not installed"}, -+ {66, "EREMOTE", "object is remote"}, -+ {67, "ENOLINK", "link has been severed"}, -+ {68, "EADV", "advertise error"}, -+ {69, "ESRMNT", "srmount error"}, -+ {70, "ECOMM", "communication error on send"}, -+ {71, "EPROTO", "protocol error"}, -+ {72, "EMULTIHOP", "multihop attempted"}, -+ {73, "EDOTDOT", "RFS specific error"}, -+ {74, "EBADMSG", "bad message"}, -+ {75, "EOVERFLOW", "value too large for defined data type"}, -+ {76, "ENOTUNIQ", "name not unique on network"}, -+ {77, "EBADFD", "file descriptor in bad state"}, -+ {78, "EREMCHG", "remote address changed"}, -+ {79, "ELIBACC", "can not access a needed shared library"}, -+ {80, "ELIBBAD", "accessing a corrupted shared library"}, -+ {81, "ELIBSCN", ".lib section in a.out corrupted"}, -+ {82, "ELIBMAX", "attempting to link in too many shared libraries"}, -+ {83, "ELIBEXEC", "cannot exec a shared library directly"}, -+ {84, "EILSEQ", "invalid or incomplete multibyte or wide character"}, -+ {85, "ERESTART", "interrupted system call should be restarted"}, -+ {86, "ESTRPIPE", "streams pipe error"}, -+ {87, "EUSERS", "too many users"}, -+ {88, "ENOTSOCK", "socket operation on non-socket"}, -+ {89, "EDESTADDRREQ", "destination address required"}, -+ {90, "EMSGSIZE", "message too long"}, -+ {91, "EPROTOTYPE", "protocol wrong type for socket"}, -+ {92, "ENOPROTOOPT", "protocol not available"}, -+ {93, "EPROTONOSUPPORT", "protocol not supported"}, -+ {94, "ESOCKTNOSUPPORT", "socket type not supported"}, -+ {95, "ENOTSUP", "operation not supported"}, -+ {96, "EPFNOSUPPORT", "protocol family not supported"}, -+ {97, "EAFNOSUPPORT", "address family not supported by protocol"}, -+ {98, "EADDRINUSE", "address already in use"}, -+ {99, "EADDRNOTAVAIL", "cannot assign requested address"}, -+ {100, "ENETDOWN", "network is down"}, -+ {101, "ENETUNREACH", "network is unreachable"}, -+ {102, "ENETRESET", "network dropped connection on reset"}, -+ {103, "ECONNABORTED", "software caused connection abort"}, -+ {104, "ECONNRESET", "connection reset by peer"}, -+ {105, "ENOBUFS", "no buffer space available"}, -+ {106, "EISCONN", "transport endpoint is already connected"}, -+ {107, "ENOTCONN", "transport endpoint is not connected"}, -+ {108, "ESHUTDOWN", "cannot send after transport endpoint shutdown"}, -+ {109, "ETOOMANYREFS", "too many references: cannot splice"}, -+ {110, "ETIMEDOUT", "connection timed out"}, -+ {111, "ECONNREFUSED", "connection refused"}, -+ {112, "EHOSTDOWN", "host is down"}, -+ {113, "EHOSTUNREACH", "no route to host"}, -+ {114, "EALREADY", "operation already in progress"}, -+ {115, "EINPROGRESS", "operation now in progress"}, -+ {116, "ESTALE", "stale file handle"}, -+ {117, "EUCLEAN", "structure needs cleaning"}, -+ {118, "ENOTNAM", "not a XENIX named type file"}, -+ {119, "ENAVAIL", "no XENIX semaphores available"}, -+ {120, "EISNAM", "is a named type file"}, -+ {121, "EREMOTEIO", "remote I/O error"}, -+ {122, "EDQUOT", "disk quota exceeded"}, -+ {123, "ENOMEDIUM", "no medium found"}, -+ {124, "EMEDIUMTYPE", "wrong medium type"}, -+ {125, "ECANCELED", "operation canceled"}, -+ {126, "ENOKEY", "required key not available"}, -+ {127, "EKEYEXPIRED", "key has expired"}, -+ {128, "EKEYREVOKED", "key has been revoked"}, -+ {129, "EKEYREJECTED", "key was rejected by service"}, -+ {130, "EOWNERDEAD", "owner died"}, -+ {131, "ENOTRECOVERABLE", "state not recoverable"}, -+ {132, "ERFKILL", "operation not possible due to RF-kill"}, -+ {133, "EHWPOISON", "memory page has hardware error"}, -+} -+ -+// Signal table -+var signalList = [...]struct { -+ num syscall.Signal -+ name string -+ desc string -+}{ -+ {1, "SIGHUP", "hangup"}, -+ {2, "SIGINT", "interrupt"}, -+ {3, "SIGQUIT", "quit"}, -+ {4, "SIGILL", "illegal instruction"}, -+ {5, "SIGTRAP", "trace/breakpoint trap"}, -+ {6, "SIGABRT", "aborted"}, -+ {7, "SIGBUS", "bus error"}, -+ {8, "SIGFPE", "floating point exception"}, -+ {9, "SIGKILL", "killed"}, -+ {10, "SIGUSR1", "user defined signal 1"}, -+ {11, "SIGSEGV", "segmentation fault"}, -+ {12, "SIGUSR2", "user defined signal 2"}, -+ {13, "SIGPIPE", "broken pipe"}, -+ {14, "SIGALRM", "alarm clock"}, -+ {15, "SIGTERM", "terminated"}, -+ {16, "SIGSTKFLT", "stack fault"}, -+ {17, "SIGCHLD", "child exited"}, -+ {18, "SIGCONT", "continued"}, -+ {19, "SIGSTOP", "stopped (signal)"}, -+ {20, "SIGTSTP", "stopped"}, -+ {21, "SIGTTIN", "stopped (tty input)"}, -+ {22, "SIGTTOU", "stopped (tty output)"}, -+ {23, "SIGURG", "urgent I/O condition"}, -+ {24, "SIGXCPU", "CPU time limit exceeded"}, -+ {25, "SIGXFSZ", "file size limit exceeded"}, -+ {26, "SIGVTALRM", "virtual timer expired"}, -+ {27, "SIGPROF", "profiling timer expired"}, -+ {28, "SIGWINCH", "window changed"}, -+ {29, "SIGIO", "I/O possible"}, -+ {30, "SIGPWR", "power failure"}, -+ {31, "SIGSYS", "bad system call"}, -+} -diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go b/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go -index 4826bd7..179bffb 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_mips.go -@@ -1,10 +1,11 @@ --// mkerrors.sh -Wall -Werror -static -I/tmp/include -+// mkerrors.sh -Wall -Werror -static -I/tmp/mips/include - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build mips && linux - // +build mips,linux - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. --// cgo -godefs -- -Wall -Werror -static -I/tmp/include _const.go -+// cgo -godefs -- -Wall -Werror -static -I/tmp/mips/include _const.go - - package unix - -@@ -59,6 +60,8 @@ const ( - CS8 = 0x30 - CSIZE = 0x30 - CSTOPB = 0x40 -+ ECCGETLAYOUT = 0x41484d11 -+ ECCGETSTATS = 0x40104d12 - ECHOCTL = 0x200 - ECHOE = 0x10 - ECHOK = 0x20 -@@ -71,11 +74,15 @@ const ( - EXTPROC = 0x10000 - FF1 = 0x8000 - FFDLY = 0x8000 -+ FICLONE = 0x80049409 -+ FICLONERANGE = 0x8020940d - FLUSHO = 0x2000 - FS_IOC_ENABLE_VERITY = 0x80806685 - FS_IOC_GETFLAGS = 0x40046601 -+ FS_IOC_GET_ENCRYPTION_NONCE = 0x4010661b - FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615 - FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614 -+ FS_IOC_SETFLAGS = 0x80046602 - FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613 - F_GETLK = 0x21 - F_GETLK64 = 0x21 -@@ -88,6 +95,9 @@ const ( - F_SETOWN = 0x18 - F_UNLCK = 0x2 - F_WRLCK = 0x1 -+ HIDIOCGRAWINFO = 0x40084803 -+ HIDIOCGRDESC = 0x50044802 -+ HIDIOCGRDESCSIZE = 0x40044801 - HUPCL = 0x400 - ICANON = 0x2 - IEXTEN = 0x100 -@@ -113,6 +123,19 @@ const ( - MCL_CURRENT = 0x1 - MCL_FUTURE = 0x2 - MCL_ONFAULT = 0x4 -+ MEMERASE = 0x80084d02 -+ MEMERASE64 = 0x80104d14 -+ MEMGETBADBLOCK = 0x80084d0b -+ MEMGETINFO = 0x40204d01 -+ MEMGETOOBSEL = 0x40c84d0a -+ MEMGETREGIONCOUNT = 0x40044d07 -+ MEMISLOCKED = 0x40084d17 -+ MEMLOCK = 0x80084d05 -+ MEMREADOOB = 0xc00c4d04 -+ MEMSETBADBLOCK = 0x80084d0c -+ MEMUNLOCK = 0x80084d06 -+ MEMWRITEOOB = 0xc00c4d03 -+ MTDFILEMODE = 0x20004d13 - NFDBITS = 0x20 - NLDLY = 0x100 - NOFLSH = 0x80 -@@ -122,6 +145,11 @@ const ( - NS_GET_USERNS = 0x2000b701 - OLCUC = 0x2 - ONLCR = 0x4 -+ OTPERASE = 0x800c4d19 -+ OTPGETREGIONCOUNT = 0x80044d0e -+ OTPGETREGIONINFO = 0x800c4d0f -+ OTPLOCK = 0x400c4d10 -+ OTPSELECT = 0x40044d0d - O_APPEND = 0x8 - O_ASYNC = 0x1000 - O_CLOEXEC = 0x80000 -@@ -159,6 +187,7 @@ const ( - PERF_EVENT_IOC_SET_OUTPUT = 0x20002405 - PPPIOCATTACH = 0x8004743d - PPPIOCATTCHAN = 0x80047438 -+ PPPIOCBRIDGECHAN = 0x80047435 - PPPIOCCONNECT = 0x8004743a - PPPIOCDETACH = 0x8004743c - PPPIOCDISCONN = 0x20007439 -@@ -186,6 +215,7 @@ const ( - PPPIOCSPASS = 0x80087447 - PPPIOCSRASYNCMAP = 0x80047454 - PPPIOCSXASYNCMAP = 0x8020744f -+ PPPIOCUNBRIDGECHAN = 0x20007434 - PPPIOCXFERUNIT = 0x2000744e - PR_SET_PTRACER_ANY = 0xffffffff - PTRACE_GETFPREGS = 0xe -@@ -220,6 +250,8 @@ const ( - RTC_EPOCH_SET = 0x8004700e - RTC_IRQP_READ = 0x4004700b - RTC_IRQP_SET = 0x8004700c -+ RTC_PARAM_GET = 0x80187013 -+ RTC_PARAM_SET = 0x80187014 - RTC_PIE_OFF = 0x20007006 - RTC_PIE_ON = 0x20007005 - RTC_PLL_GET = 0x401c7011 -@@ -263,7 +295,9 @@ const ( - SO_BPF_EXTENSIONS = 0x30 - SO_BROADCAST = 0x20 - SO_BSDCOMPAT = 0xe -+ SO_BUF_LOCK = 0x48 - SO_BUSY_POLL = 0x2e -+ SO_BUSY_POLL_BUDGET = 0x46 - SO_CNX_ADVICE = 0x35 - SO_COOKIE = 0x39 - SO_DETACH_REUSEPORT_BPF = 0x44 -@@ -278,6 +312,7 @@ const ( - SO_MARK = 0x24 - SO_MAX_PACING_RATE = 0x2f - SO_MEMINFO = 0x37 -+ SO_NETNS_COOKIE = 0x47 - SO_NOFCS = 0x2b - SO_OOBINLINE = 0x100 - SO_PASSCRED = 0x11 -@@ -286,13 +321,16 @@ const ( - SO_PEERCRED = 0x12 - SO_PEERGROUPS = 0x3b - SO_PEERSEC = 0x1e -+ SO_PREFER_BUSY_POLL = 0x45 - SO_PROTOCOL = 0x1028 - SO_RCVBUF = 0x1002 - SO_RCVBUFFORCE = 0x21 - SO_RCVLOWAT = 0x1004 -+ SO_RCVMARK = 0x4b - SO_RCVTIMEO = 0x1006 - SO_RCVTIMEO_NEW = 0x42 - SO_RCVTIMEO_OLD = 0x1006 -+ SO_RESERVE_MEM = 0x49 - SO_REUSEADDR = 0x4 - SO_REUSEPORT = 0x200 - SO_RXQ_OVFL = 0x28 -@@ -314,6 +352,7 @@ const ( - SO_TIMESTAMPNS_NEW = 0x40 - SO_TIMESTAMPNS_OLD = 0x23 - SO_TIMESTAMP_NEW = 0x3f -+ SO_TXREHASH = 0x4a - SO_TXTIME = 0x3d - SO_TYPE = 0x1008 - SO_WIFI_STATUS = 0x29 -@@ -339,6 +378,8 @@ const ( - TCSETSW = 0x540f - TCSETSW2 = 0x8030542c - TCXONC = 0x5406 -+ TFD_CLOEXEC = 0x80000 -+ TFD_NONBLOCK = 0x80 - TIOCCBRK = 0x5428 - TIOCCONS = 0x80047478 - TIOCEXCL = 0x740d -@@ -477,6 +518,9 @@ const ( - WORDSIZE = 0x20 - XCASE = 0x4 - XTABS = 0x1800 -+ _HIDIOCGRAWNAME = 0x40804804 -+ _HIDIOCGRAWPHYS = 0x40404805 -+ _HIDIOCGRAWUNIQ = 0x40404808 - ) - - // Errors -diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go -index 2346dc5..1fba17b 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_mips64.go -@@ -1,10 +1,11 @@ --// mkerrors.sh -Wall -Werror -static -I/tmp/include -+// mkerrors.sh -Wall -Werror -static -I/tmp/mips64/include - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build mips64 && linux - // +build mips64,linux - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. --// cgo -godefs -- -Wall -Werror -static -I/tmp/include _const.go -+// cgo -godefs -- -Wall -Werror -static -I/tmp/mips64/include _const.go - - package unix - -@@ -59,6 +60,8 @@ const ( - CS8 = 0x30 - CSIZE = 0x30 - CSTOPB = 0x40 -+ ECCGETLAYOUT = 0x41484d11 -+ ECCGETSTATS = 0x40104d12 - ECHOCTL = 0x200 - ECHOE = 0x10 - ECHOK = 0x20 -@@ -71,11 +74,15 @@ const ( - EXTPROC = 0x10000 - FF1 = 0x8000 - FFDLY = 0x8000 -+ FICLONE = 0x80049409 -+ FICLONERANGE = 0x8020940d - FLUSHO = 0x2000 - FS_IOC_ENABLE_VERITY = 0x80806685 - FS_IOC_GETFLAGS = 0x40086601 -+ FS_IOC_GET_ENCRYPTION_NONCE = 0x4010661b - FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615 - FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614 -+ FS_IOC_SETFLAGS = 0x80086602 - FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613 - F_GETLK = 0xe - F_GETLK64 = 0xe -@@ -88,6 +95,9 @@ const ( - F_SETOWN = 0x18 - F_UNLCK = 0x2 - F_WRLCK = 0x1 -+ HIDIOCGRAWINFO = 0x40084803 -+ HIDIOCGRDESC = 0x50044802 -+ HIDIOCGRDESCSIZE = 0x40044801 - HUPCL = 0x400 - ICANON = 0x2 - IEXTEN = 0x100 -@@ -113,6 +123,19 @@ const ( - MCL_CURRENT = 0x1 - MCL_FUTURE = 0x2 - MCL_ONFAULT = 0x4 -+ MEMERASE = 0x80084d02 -+ MEMERASE64 = 0x80104d14 -+ MEMGETBADBLOCK = 0x80084d0b -+ MEMGETINFO = 0x40204d01 -+ MEMGETOOBSEL = 0x40c84d0a -+ MEMGETREGIONCOUNT = 0x40044d07 -+ MEMISLOCKED = 0x40084d17 -+ MEMLOCK = 0x80084d05 -+ MEMREADOOB = 0xc0104d04 -+ MEMSETBADBLOCK = 0x80084d0c -+ MEMUNLOCK = 0x80084d06 -+ MEMWRITEOOB = 0xc0104d03 -+ MTDFILEMODE = 0x20004d13 - NFDBITS = 0x40 - NLDLY = 0x100 - NOFLSH = 0x80 -@@ -122,6 +145,11 @@ const ( - NS_GET_USERNS = 0x2000b701 - OLCUC = 0x2 - ONLCR = 0x4 -+ OTPERASE = 0x800c4d19 -+ OTPGETREGIONCOUNT = 0x80044d0e -+ OTPGETREGIONINFO = 0x800c4d0f -+ OTPLOCK = 0x400c4d10 -+ OTPSELECT = 0x40044d0d - O_APPEND = 0x8 - O_ASYNC = 0x1000 - O_CLOEXEC = 0x80000 -@@ -159,6 +187,7 @@ const ( - PERF_EVENT_IOC_SET_OUTPUT = 0x20002405 - PPPIOCATTACH = 0x8004743d - PPPIOCATTCHAN = 0x80047438 -+ PPPIOCBRIDGECHAN = 0x80047435 - PPPIOCCONNECT = 0x8004743a - PPPIOCDETACH = 0x8004743c - PPPIOCDISCONN = 0x20007439 -@@ -186,6 +215,7 @@ const ( - PPPIOCSPASS = 0x80107447 - PPPIOCSRASYNCMAP = 0x80047454 - PPPIOCSXASYNCMAP = 0x8020744f -+ PPPIOCUNBRIDGECHAN = 0x20007434 - PPPIOCXFERUNIT = 0x2000744e - PR_SET_PTRACER_ANY = 0xffffffffffffffff - PTRACE_GETFPREGS = 0xe -@@ -220,6 +250,8 @@ const ( - RTC_EPOCH_SET = 0x8008700e - RTC_IRQP_READ = 0x4008700b - RTC_IRQP_SET = 0x8008700c -+ RTC_PARAM_GET = 0x80187013 -+ RTC_PARAM_SET = 0x80187014 - RTC_PIE_OFF = 0x20007006 - RTC_PIE_ON = 0x20007005 - RTC_PLL_GET = 0x40207011 -@@ -263,7 +295,9 @@ const ( - SO_BPF_EXTENSIONS = 0x30 - SO_BROADCAST = 0x20 - SO_BSDCOMPAT = 0xe -+ SO_BUF_LOCK = 0x48 - SO_BUSY_POLL = 0x2e -+ SO_BUSY_POLL_BUDGET = 0x46 - SO_CNX_ADVICE = 0x35 - SO_COOKIE = 0x39 - SO_DETACH_REUSEPORT_BPF = 0x44 -@@ -278,6 +312,7 @@ const ( - SO_MARK = 0x24 - SO_MAX_PACING_RATE = 0x2f - SO_MEMINFO = 0x37 -+ SO_NETNS_COOKIE = 0x47 - SO_NOFCS = 0x2b - SO_OOBINLINE = 0x100 - SO_PASSCRED = 0x11 -@@ -286,13 +321,16 @@ const ( - SO_PEERCRED = 0x12 - SO_PEERGROUPS = 0x3b - SO_PEERSEC = 0x1e -+ SO_PREFER_BUSY_POLL = 0x45 - SO_PROTOCOL = 0x1028 - SO_RCVBUF = 0x1002 - SO_RCVBUFFORCE = 0x21 - SO_RCVLOWAT = 0x1004 -+ SO_RCVMARK = 0x4b - SO_RCVTIMEO = 0x1006 - SO_RCVTIMEO_NEW = 0x42 - SO_RCVTIMEO_OLD = 0x1006 -+ SO_RESERVE_MEM = 0x49 - SO_REUSEADDR = 0x4 - SO_REUSEPORT = 0x200 - SO_RXQ_OVFL = 0x28 -@@ -314,6 +352,7 @@ const ( - SO_TIMESTAMPNS_NEW = 0x40 - SO_TIMESTAMPNS_OLD = 0x23 - SO_TIMESTAMP_NEW = 0x3f -+ SO_TXREHASH = 0x4a - SO_TXTIME = 0x3d - SO_TYPE = 0x1008 - SO_WIFI_STATUS = 0x29 -@@ -339,6 +378,8 @@ const ( - TCSETSW = 0x540f - TCSETSW2 = 0x8030542c - TCXONC = 0x5406 -+ TFD_CLOEXEC = 0x80000 -+ TFD_NONBLOCK = 0x80 - TIOCCBRK = 0x5428 - TIOCCONS = 0x80047478 - TIOCEXCL = 0x740d -@@ -477,6 +518,9 @@ const ( - WORDSIZE = 0x40 - XCASE = 0x4 - XTABS = 0x1800 -+ _HIDIOCGRAWNAME = 0x40804804 -+ _HIDIOCGRAWPHYS = 0x40404805 -+ _HIDIOCGRAWUNIQ = 0x40404808 - ) - - // Errors -diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go b/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go -index e758b61..b77dde3 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go -@@ -1,10 +1,11 @@ --// mkerrors.sh -Wall -Werror -static -I/tmp/include -+// mkerrors.sh -Wall -Werror -static -I/tmp/mips64le/include - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build mips64le && linux - // +build mips64le,linux - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. --// cgo -godefs -- -Wall -Werror -static -I/tmp/include _const.go -+// cgo -godefs -- -Wall -Werror -static -I/tmp/mips64le/include _const.go - - package unix - -@@ -59,6 +60,8 @@ const ( - CS8 = 0x30 - CSIZE = 0x30 - CSTOPB = 0x40 -+ ECCGETLAYOUT = 0x41484d11 -+ ECCGETSTATS = 0x40104d12 - ECHOCTL = 0x200 - ECHOE = 0x10 - ECHOK = 0x20 -@@ -71,11 +74,15 @@ const ( - EXTPROC = 0x10000 - FF1 = 0x8000 - FFDLY = 0x8000 -+ FICLONE = 0x80049409 -+ FICLONERANGE = 0x8020940d - FLUSHO = 0x2000 - FS_IOC_ENABLE_VERITY = 0x80806685 - FS_IOC_GETFLAGS = 0x40086601 -+ FS_IOC_GET_ENCRYPTION_NONCE = 0x4010661b - FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615 - FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614 -+ FS_IOC_SETFLAGS = 0x80086602 - FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613 - F_GETLK = 0xe - F_GETLK64 = 0xe -@@ -88,6 +95,9 @@ const ( - F_SETOWN = 0x18 - F_UNLCK = 0x2 - F_WRLCK = 0x1 -+ HIDIOCGRAWINFO = 0x40084803 -+ HIDIOCGRDESC = 0x50044802 -+ HIDIOCGRDESCSIZE = 0x40044801 - HUPCL = 0x400 - ICANON = 0x2 - IEXTEN = 0x100 -@@ -113,6 +123,19 @@ const ( - MCL_CURRENT = 0x1 - MCL_FUTURE = 0x2 - MCL_ONFAULT = 0x4 -+ MEMERASE = 0x80084d02 -+ MEMERASE64 = 0x80104d14 -+ MEMGETBADBLOCK = 0x80084d0b -+ MEMGETINFO = 0x40204d01 -+ MEMGETOOBSEL = 0x40c84d0a -+ MEMGETREGIONCOUNT = 0x40044d07 -+ MEMISLOCKED = 0x40084d17 -+ MEMLOCK = 0x80084d05 -+ MEMREADOOB = 0xc0104d04 -+ MEMSETBADBLOCK = 0x80084d0c -+ MEMUNLOCK = 0x80084d06 -+ MEMWRITEOOB = 0xc0104d03 -+ MTDFILEMODE = 0x20004d13 - NFDBITS = 0x40 - NLDLY = 0x100 - NOFLSH = 0x80 -@@ -122,6 +145,11 @@ const ( - NS_GET_USERNS = 0x2000b701 - OLCUC = 0x2 - ONLCR = 0x4 -+ OTPERASE = 0x800c4d19 -+ OTPGETREGIONCOUNT = 0x80044d0e -+ OTPGETREGIONINFO = 0x800c4d0f -+ OTPLOCK = 0x400c4d10 -+ OTPSELECT = 0x40044d0d - O_APPEND = 0x8 - O_ASYNC = 0x1000 - O_CLOEXEC = 0x80000 -@@ -159,6 +187,7 @@ const ( - PERF_EVENT_IOC_SET_OUTPUT = 0x20002405 - PPPIOCATTACH = 0x8004743d - PPPIOCATTCHAN = 0x80047438 -+ PPPIOCBRIDGECHAN = 0x80047435 - PPPIOCCONNECT = 0x8004743a - PPPIOCDETACH = 0x8004743c - PPPIOCDISCONN = 0x20007439 -@@ -186,6 +215,7 @@ const ( - PPPIOCSPASS = 0x80107447 - PPPIOCSRASYNCMAP = 0x80047454 - PPPIOCSXASYNCMAP = 0x8020744f -+ PPPIOCUNBRIDGECHAN = 0x20007434 - PPPIOCXFERUNIT = 0x2000744e - PR_SET_PTRACER_ANY = 0xffffffffffffffff - PTRACE_GETFPREGS = 0xe -@@ -220,6 +250,8 @@ const ( - RTC_EPOCH_SET = 0x8008700e - RTC_IRQP_READ = 0x4008700b - RTC_IRQP_SET = 0x8008700c -+ RTC_PARAM_GET = 0x80187013 -+ RTC_PARAM_SET = 0x80187014 - RTC_PIE_OFF = 0x20007006 - RTC_PIE_ON = 0x20007005 - RTC_PLL_GET = 0x40207011 -@@ -263,7 +295,9 @@ const ( - SO_BPF_EXTENSIONS = 0x30 - SO_BROADCAST = 0x20 - SO_BSDCOMPAT = 0xe -+ SO_BUF_LOCK = 0x48 - SO_BUSY_POLL = 0x2e -+ SO_BUSY_POLL_BUDGET = 0x46 - SO_CNX_ADVICE = 0x35 - SO_COOKIE = 0x39 - SO_DETACH_REUSEPORT_BPF = 0x44 -@@ -278,6 +312,7 @@ const ( - SO_MARK = 0x24 - SO_MAX_PACING_RATE = 0x2f - SO_MEMINFO = 0x37 -+ SO_NETNS_COOKIE = 0x47 - SO_NOFCS = 0x2b - SO_OOBINLINE = 0x100 - SO_PASSCRED = 0x11 -@@ -286,13 +321,16 @@ const ( - SO_PEERCRED = 0x12 - SO_PEERGROUPS = 0x3b - SO_PEERSEC = 0x1e -+ SO_PREFER_BUSY_POLL = 0x45 - SO_PROTOCOL = 0x1028 - SO_RCVBUF = 0x1002 - SO_RCVBUFFORCE = 0x21 - SO_RCVLOWAT = 0x1004 -+ SO_RCVMARK = 0x4b - SO_RCVTIMEO = 0x1006 - SO_RCVTIMEO_NEW = 0x42 - SO_RCVTIMEO_OLD = 0x1006 -+ SO_RESERVE_MEM = 0x49 - SO_REUSEADDR = 0x4 - SO_REUSEPORT = 0x200 - SO_RXQ_OVFL = 0x28 -@@ -314,6 +352,7 @@ const ( - SO_TIMESTAMPNS_NEW = 0x40 - SO_TIMESTAMPNS_OLD = 0x23 - SO_TIMESTAMP_NEW = 0x3f -+ SO_TXREHASH = 0x4a - SO_TXTIME = 0x3d - SO_TYPE = 0x1008 - SO_WIFI_STATUS = 0x29 -@@ -339,6 +378,8 @@ const ( - TCSETSW = 0x540f - TCSETSW2 = 0x8030542c - TCXONC = 0x5406 -+ TFD_CLOEXEC = 0x80000 -+ TFD_NONBLOCK = 0x80 - TIOCCBRK = 0x5428 - TIOCCONS = 0x80047478 - TIOCEXCL = 0x740d -@@ -477,6 +518,9 @@ const ( - WORDSIZE = 0x40 - XCASE = 0x4 - XTABS = 0x1800 -+ _HIDIOCGRAWNAME = 0x40804804 -+ _HIDIOCGRAWPHYS = 0x40404805 -+ _HIDIOCGRAWUNIQ = 0x40404808 - ) - - // Errors -diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go b/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go -index 2dfe6bb..78c6c75 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go -@@ -1,10 +1,11 @@ --// mkerrors.sh -Wall -Werror -static -I/tmp/include -+// mkerrors.sh -Wall -Werror -static -I/tmp/mipsle/include - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build mipsle && linux - // +build mipsle,linux - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. --// cgo -godefs -- -Wall -Werror -static -I/tmp/include _const.go -+// cgo -godefs -- -Wall -Werror -static -I/tmp/mipsle/include _const.go - - package unix - -@@ -59,6 +60,8 @@ const ( - CS8 = 0x30 - CSIZE = 0x30 - CSTOPB = 0x40 -+ ECCGETLAYOUT = 0x41484d11 -+ ECCGETSTATS = 0x40104d12 - ECHOCTL = 0x200 - ECHOE = 0x10 - ECHOK = 0x20 -@@ -71,11 +74,15 @@ const ( - EXTPROC = 0x10000 - FF1 = 0x8000 - FFDLY = 0x8000 -+ FICLONE = 0x80049409 -+ FICLONERANGE = 0x8020940d - FLUSHO = 0x2000 - FS_IOC_ENABLE_VERITY = 0x80806685 - FS_IOC_GETFLAGS = 0x40046601 -+ FS_IOC_GET_ENCRYPTION_NONCE = 0x4010661b - FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615 - FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614 -+ FS_IOC_SETFLAGS = 0x80046602 - FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613 - F_GETLK = 0x21 - F_GETLK64 = 0x21 -@@ -88,6 +95,9 @@ const ( - F_SETOWN = 0x18 - F_UNLCK = 0x2 - F_WRLCK = 0x1 -+ HIDIOCGRAWINFO = 0x40084803 -+ HIDIOCGRDESC = 0x50044802 -+ HIDIOCGRDESCSIZE = 0x40044801 - HUPCL = 0x400 - ICANON = 0x2 - IEXTEN = 0x100 -@@ -113,6 +123,19 @@ const ( - MCL_CURRENT = 0x1 - MCL_FUTURE = 0x2 - MCL_ONFAULT = 0x4 -+ MEMERASE = 0x80084d02 -+ MEMERASE64 = 0x80104d14 -+ MEMGETBADBLOCK = 0x80084d0b -+ MEMGETINFO = 0x40204d01 -+ MEMGETOOBSEL = 0x40c84d0a -+ MEMGETREGIONCOUNT = 0x40044d07 -+ MEMISLOCKED = 0x40084d17 -+ MEMLOCK = 0x80084d05 -+ MEMREADOOB = 0xc00c4d04 -+ MEMSETBADBLOCK = 0x80084d0c -+ MEMUNLOCK = 0x80084d06 -+ MEMWRITEOOB = 0xc00c4d03 -+ MTDFILEMODE = 0x20004d13 - NFDBITS = 0x20 - NLDLY = 0x100 - NOFLSH = 0x80 -@@ -122,6 +145,11 @@ const ( - NS_GET_USERNS = 0x2000b701 - OLCUC = 0x2 - ONLCR = 0x4 -+ OTPERASE = 0x800c4d19 -+ OTPGETREGIONCOUNT = 0x80044d0e -+ OTPGETREGIONINFO = 0x800c4d0f -+ OTPLOCK = 0x400c4d10 -+ OTPSELECT = 0x40044d0d - O_APPEND = 0x8 - O_ASYNC = 0x1000 - O_CLOEXEC = 0x80000 -@@ -159,6 +187,7 @@ const ( - PERF_EVENT_IOC_SET_OUTPUT = 0x20002405 - PPPIOCATTACH = 0x8004743d - PPPIOCATTCHAN = 0x80047438 -+ PPPIOCBRIDGECHAN = 0x80047435 - PPPIOCCONNECT = 0x8004743a - PPPIOCDETACH = 0x8004743c - PPPIOCDISCONN = 0x20007439 -@@ -186,6 +215,7 @@ const ( - PPPIOCSPASS = 0x80087447 - PPPIOCSRASYNCMAP = 0x80047454 - PPPIOCSXASYNCMAP = 0x8020744f -+ PPPIOCUNBRIDGECHAN = 0x20007434 - PPPIOCXFERUNIT = 0x2000744e - PR_SET_PTRACER_ANY = 0xffffffff - PTRACE_GETFPREGS = 0xe -@@ -220,6 +250,8 @@ const ( - RTC_EPOCH_SET = 0x8004700e - RTC_IRQP_READ = 0x4004700b - RTC_IRQP_SET = 0x8004700c -+ RTC_PARAM_GET = 0x80187013 -+ RTC_PARAM_SET = 0x80187014 - RTC_PIE_OFF = 0x20007006 - RTC_PIE_ON = 0x20007005 - RTC_PLL_GET = 0x401c7011 -@@ -263,7 +295,9 @@ const ( - SO_BPF_EXTENSIONS = 0x30 - SO_BROADCAST = 0x20 - SO_BSDCOMPAT = 0xe -+ SO_BUF_LOCK = 0x48 - SO_BUSY_POLL = 0x2e -+ SO_BUSY_POLL_BUDGET = 0x46 - SO_CNX_ADVICE = 0x35 - SO_COOKIE = 0x39 - SO_DETACH_REUSEPORT_BPF = 0x44 -@@ -278,6 +312,7 @@ const ( - SO_MARK = 0x24 - SO_MAX_PACING_RATE = 0x2f - SO_MEMINFO = 0x37 -+ SO_NETNS_COOKIE = 0x47 - SO_NOFCS = 0x2b - SO_OOBINLINE = 0x100 - SO_PASSCRED = 0x11 -@@ -286,13 +321,16 @@ const ( - SO_PEERCRED = 0x12 - SO_PEERGROUPS = 0x3b - SO_PEERSEC = 0x1e -+ SO_PREFER_BUSY_POLL = 0x45 - SO_PROTOCOL = 0x1028 - SO_RCVBUF = 0x1002 - SO_RCVBUFFORCE = 0x21 - SO_RCVLOWAT = 0x1004 -+ SO_RCVMARK = 0x4b - SO_RCVTIMEO = 0x1006 - SO_RCVTIMEO_NEW = 0x42 - SO_RCVTIMEO_OLD = 0x1006 -+ SO_RESERVE_MEM = 0x49 - SO_REUSEADDR = 0x4 - SO_REUSEPORT = 0x200 - SO_RXQ_OVFL = 0x28 -@@ -314,6 +352,7 @@ const ( - SO_TIMESTAMPNS_NEW = 0x40 - SO_TIMESTAMPNS_OLD = 0x23 - SO_TIMESTAMP_NEW = 0x3f -+ SO_TXREHASH = 0x4a - SO_TXTIME = 0x3d - SO_TYPE = 0x1008 - SO_WIFI_STATUS = 0x29 -@@ -339,6 +378,8 @@ const ( - TCSETSW = 0x540f - TCSETSW2 = 0x8030542c - TCXONC = 0x5406 -+ TFD_CLOEXEC = 0x80000 -+ TFD_NONBLOCK = 0x80 - TIOCCBRK = 0x5428 - TIOCCONS = 0x80047478 - TIOCEXCL = 0x740d -@@ -477,6 +518,9 @@ const ( - WORDSIZE = 0x20 - XCASE = 0x4 - XTABS = 0x1800 -+ _HIDIOCGRAWNAME = 0x40804804 -+ _HIDIOCGRAWPHYS = 0x40404805 -+ _HIDIOCGRAWUNIQ = 0x40404808 - ) - - // Errors -diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_ppc.go b/vendor/golang.org/x/sys/unix/zerrors_linux_ppc.go -new file mode 100644 -index 0000000..1c0d31f ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_ppc.go -@@ -0,0 +1,887 @@ -+// mkerrors.sh -Wall -Werror -static -I/tmp/ppc/include -+// Code generated by the command above; see README.md. DO NOT EDIT. -+ -+//go:build ppc && linux -+// +build ppc,linux -+ -+// Code generated by cmd/cgo -godefs; DO NOT EDIT. -+// cgo -godefs -- -Wall -Werror -static -I/tmp/ppc/include _const.go -+ -+package unix -+ -+import "syscall" -+ -+const ( -+ B1000000 = 0x17 -+ B115200 = 0x11 -+ B1152000 = 0x18 -+ B1500000 = 0x19 -+ B2000000 = 0x1a -+ B230400 = 0x12 -+ B2500000 = 0x1b -+ B3000000 = 0x1c -+ B3500000 = 0x1d -+ B4000000 = 0x1e -+ B460800 = 0x13 -+ B500000 = 0x14 -+ B57600 = 0x10 -+ B576000 = 0x15 -+ B921600 = 0x16 -+ BLKBSZGET = 0x40041270 -+ BLKBSZSET = 0x80041271 -+ BLKFLSBUF = 0x20001261 -+ BLKFRAGET = 0x20001265 -+ BLKFRASET = 0x20001264 -+ BLKGETSIZE = 0x20001260 -+ BLKGETSIZE64 = 0x40041272 -+ BLKPBSZGET = 0x2000127b -+ BLKRAGET = 0x20001263 -+ BLKRASET = 0x20001262 -+ BLKROGET = 0x2000125e -+ BLKROSET = 0x2000125d -+ BLKRRPART = 0x2000125f -+ BLKSECTGET = 0x20001267 -+ BLKSECTSET = 0x20001266 -+ BLKSSZGET = 0x20001268 -+ BOTHER = 0x1f -+ BS1 = 0x8000 -+ BSDLY = 0x8000 -+ CBAUD = 0xff -+ CBAUDEX = 0x0 -+ CIBAUD = 0xff0000 -+ CLOCAL = 0x8000 -+ CR1 = 0x1000 -+ CR2 = 0x2000 -+ CR3 = 0x3000 -+ CRDLY = 0x3000 -+ CREAD = 0x800 -+ CS6 = 0x100 -+ CS7 = 0x200 -+ CS8 = 0x300 -+ CSIZE = 0x300 -+ CSTOPB = 0x400 -+ ECCGETLAYOUT = 0x41484d11 -+ ECCGETSTATS = 0x40104d12 -+ ECHOCTL = 0x40 -+ ECHOE = 0x2 -+ ECHOK = 0x4 -+ ECHOKE = 0x1 -+ ECHONL = 0x10 -+ ECHOPRT = 0x20 -+ EFD_CLOEXEC = 0x80000 -+ EFD_NONBLOCK = 0x800 -+ EPOLL_CLOEXEC = 0x80000 -+ EXTPROC = 0x10000000 -+ FF1 = 0x4000 -+ FFDLY = 0x4000 -+ FICLONE = 0x80049409 -+ FICLONERANGE = 0x8020940d -+ FLUSHO = 0x800000 -+ FS_IOC_ENABLE_VERITY = 0x80806685 -+ FS_IOC_GETFLAGS = 0x40046601 -+ FS_IOC_GET_ENCRYPTION_NONCE = 0x4010661b -+ FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615 -+ FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614 -+ FS_IOC_SETFLAGS = 0x80046602 -+ FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613 -+ F_GETLK = 0xc -+ F_GETLK64 = 0xc -+ F_GETOWN = 0x9 -+ F_RDLCK = 0x0 -+ F_SETLK = 0xd -+ F_SETLK64 = 0xd -+ F_SETLKW = 0xe -+ F_SETLKW64 = 0xe -+ F_SETOWN = 0x8 -+ F_UNLCK = 0x2 -+ F_WRLCK = 0x1 -+ HIDIOCGRAWINFO = 0x40084803 -+ HIDIOCGRDESC = 0x50044802 -+ HIDIOCGRDESCSIZE = 0x40044801 -+ HUPCL = 0x4000 -+ ICANON = 0x100 -+ IEXTEN = 0x400 -+ IN_CLOEXEC = 0x80000 -+ IN_NONBLOCK = 0x800 -+ IOCTL_VM_SOCKETS_GET_LOCAL_CID = 0x200007b9 -+ ISIG = 0x80 -+ IUCLC = 0x1000 -+ IXOFF = 0x400 -+ IXON = 0x200 -+ MAP_ANON = 0x20 -+ MAP_ANONYMOUS = 0x20 -+ MAP_DENYWRITE = 0x800 -+ MAP_EXECUTABLE = 0x1000 -+ MAP_GROWSDOWN = 0x100 -+ MAP_HUGETLB = 0x40000 -+ MAP_LOCKED = 0x80 -+ MAP_NONBLOCK = 0x10000 -+ MAP_NORESERVE = 0x40 -+ MAP_POPULATE = 0x8000 -+ MAP_STACK = 0x20000 -+ MAP_SYNC = 0x80000 -+ MCL_CURRENT = 0x2000 -+ MCL_FUTURE = 0x4000 -+ MCL_ONFAULT = 0x8000 -+ MEMERASE = 0x80084d02 -+ MEMERASE64 = 0x80104d14 -+ MEMGETBADBLOCK = 0x80084d0b -+ MEMGETINFO = 0x40204d01 -+ MEMGETOOBSEL = 0x40c84d0a -+ MEMGETREGIONCOUNT = 0x40044d07 -+ MEMISLOCKED = 0x40084d17 -+ MEMLOCK = 0x80084d05 -+ MEMREADOOB = 0xc00c4d04 -+ MEMSETBADBLOCK = 0x80084d0c -+ MEMUNLOCK = 0x80084d06 -+ MEMWRITEOOB = 0xc00c4d03 -+ MTDFILEMODE = 0x20004d13 -+ NFDBITS = 0x20 -+ NL2 = 0x200 -+ NL3 = 0x300 -+ NLDLY = 0x300 -+ NOFLSH = 0x80000000 -+ NS_GET_NSTYPE = 0x2000b703 -+ NS_GET_OWNER_UID = 0x2000b704 -+ NS_GET_PARENT = 0x2000b702 -+ NS_GET_USERNS = 0x2000b701 -+ OLCUC = 0x4 -+ ONLCR = 0x2 -+ OTPERASE = 0x800c4d19 -+ OTPGETREGIONCOUNT = 0x80044d0e -+ OTPGETREGIONINFO = 0x800c4d0f -+ OTPLOCK = 0x400c4d10 -+ OTPSELECT = 0x40044d0d -+ O_APPEND = 0x400 -+ O_ASYNC = 0x2000 -+ O_CLOEXEC = 0x80000 -+ O_CREAT = 0x40 -+ O_DIRECT = 0x20000 -+ O_DIRECTORY = 0x4000 -+ O_DSYNC = 0x1000 -+ O_EXCL = 0x80 -+ O_FSYNC = 0x101000 -+ O_LARGEFILE = 0x10000 -+ O_NDELAY = 0x800 -+ O_NOATIME = 0x40000 -+ O_NOCTTY = 0x100 -+ O_NOFOLLOW = 0x8000 -+ O_NONBLOCK = 0x800 -+ O_PATH = 0x200000 -+ O_RSYNC = 0x101000 -+ O_SYNC = 0x101000 -+ O_TMPFILE = 0x404000 -+ O_TRUNC = 0x200 -+ PARENB = 0x1000 -+ PARODD = 0x2000 -+ PENDIN = 0x20000000 -+ PERF_EVENT_IOC_DISABLE = 0x20002401 -+ PERF_EVENT_IOC_ENABLE = 0x20002400 -+ PERF_EVENT_IOC_ID = 0x40042407 -+ PERF_EVENT_IOC_MODIFY_ATTRIBUTES = 0x8004240b -+ PERF_EVENT_IOC_PAUSE_OUTPUT = 0x80042409 -+ PERF_EVENT_IOC_PERIOD = 0x80082404 -+ PERF_EVENT_IOC_QUERY_BPF = 0xc004240a -+ PERF_EVENT_IOC_REFRESH = 0x20002402 -+ PERF_EVENT_IOC_RESET = 0x20002403 -+ PERF_EVENT_IOC_SET_BPF = 0x80042408 -+ PERF_EVENT_IOC_SET_FILTER = 0x80042406 -+ PERF_EVENT_IOC_SET_OUTPUT = 0x20002405 -+ PPPIOCATTACH = 0x8004743d -+ PPPIOCATTCHAN = 0x80047438 -+ PPPIOCBRIDGECHAN = 0x80047435 -+ PPPIOCCONNECT = 0x8004743a -+ PPPIOCDETACH = 0x8004743c -+ PPPIOCDISCONN = 0x20007439 -+ PPPIOCGASYNCMAP = 0x40047458 -+ PPPIOCGCHAN = 0x40047437 -+ PPPIOCGDEBUG = 0x40047441 -+ PPPIOCGFLAGS = 0x4004745a -+ PPPIOCGIDLE = 0x4008743f -+ PPPIOCGIDLE32 = 0x4008743f -+ PPPIOCGIDLE64 = 0x4010743f -+ PPPIOCGL2TPSTATS = 0x40487436 -+ PPPIOCGMRU = 0x40047453 -+ PPPIOCGRASYNCMAP = 0x40047455 -+ PPPIOCGUNIT = 0x40047456 -+ PPPIOCGXASYNCMAP = 0x40207450 -+ PPPIOCSACTIVE = 0x80087446 -+ PPPIOCSASYNCMAP = 0x80047457 -+ PPPIOCSCOMPRESS = 0x800c744d -+ PPPIOCSDEBUG = 0x80047440 -+ PPPIOCSFLAGS = 0x80047459 -+ PPPIOCSMAXCID = 0x80047451 -+ PPPIOCSMRRU = 0x8004743b -+ PPPIOCSMRU = 0x80047452 -+ PPPIOCSNPMODE = 0x8008744b -+ PPPIOCSPASS = 0x80087447 -+ PPPIOCSRASYNCMAP = 0x80047454 -+ PPPIOCSXASYNCMAP = 0x8020744f -+ PPPIOCUNBRIDGECHAN = 0x20007434 -+ PPPIOCXFERUNIT = 0x2000744e -+ PROT_SAO = 0x10 -+ PR_SET_PTRACER_ANY = 0xffffffff -+ PTRACE_GETEVRREGS = 0x14 -+ PTRACE_GETFPREGS = 0xe -+ PTRACE_GETREGS64 = 0x16 -+ PTRACE_GETVRREGS = 0x12 -+ PTRACE_GETVSRREGS = 0x1b -+ PTRACE_GET_DEBUGREG = 0x19 -+ PTRACE_SETEVRREGS = 0x15 -+ PTRACE_SETFPREGS = 0xf -+ PTRACE_SETREGS64 = 0x17 -+ PTRACE_SETVRREGS = 0x13 -+ PTRACE_SETVSRREGS = 0x1c -+ PTRACE_SET_DEBUGREG = 0x1a -+ PTRACE_SINGLEBLOCK = 0x100 -+ PTRACE_SYSEMU = 0x1d -+ PTRACE_SYSEMU_SINGLESTEP = 0x1e -+ PT_CCR = 0x26 -+ PT_CTR = 0x23 -+ PT_DAR = 0x29 -+ PT_DSCR = 0x2c -+ PT_DSISR = 0x2a -+ PT_FPR0 = 0x30 -+ PT_FPR31 = 0x6e -+ PT_FPSCR = 0x71 -+ PT_LNK = 0x24 -+ PT_MQ = 0x27 -+ PT_MSR = 0x21 -+ PT_NIP = 0x20 -+ PT_ORIG_R3 = 0x22 -+ PT_R0 = 0x0 -+ PT_R1 = 0x1 -+ PT_R10 = 0xa -+ PT_R11 = 0xb -+ PT_R12 = 0xc -+ PT_R13 = 0xd -+ PT_R14 = 0xe -+ PT_R15 = 0xf -+ PT_R16 = 0x10 -+ PT_R17 = 0x11 -+ PT_R18 = 0x12 -+ PT_R19 = 0x13 -+ PT_R2 = 0x2 -+ PT_R20 = 0x14 -+ PT_R21 = 0x15 -+ PT_R22 = 0x16 -+ PT_R23 = 0x17 -+ PT_R24 = 0x18 -+ PT_R25 = 0x19 -+ PT_R26 = 0x1a -+ PT_R27 = 0x1b -+ PT_R28 = 0x1c -+ PT_R29 = 0x1d -+ PT_R3 = 0x3 -+ PT_R30 = 0x1e -+ PT_R31 = 0x1f -+ PT_R4 = 0x4 -+ PT_R5 = 0x5 -+ PT_R6 = 0x6 -+ PT_R7 = 0x7 -+ PT_R8 = 0x8 -+ PT_R9 = 0x9 -+ PT_REGS_COUNT = 0x2c -+ PT_RESULT = 0x2b -+ PT_TRAP = 0x28 -+ PT_XER = 0x25 -+ RLIMIT_AS = 0x9 -+ RLIMIT_MEMLOCK = 0x8 -+ RLIMIT_NOFILE = 0x7 -+ RLIMIT_NPROC = 0x6 -+ RLIMIT_RSS = 0x5 -+ RNDADDENTROPY = 0x80085203 -+ RNDADDTOENTCNT = 0x80045201 -+ RNDCLEARPOOL = 0x20005206 -+ RNDGETENTCNT = 0x40045200 -+ RNDGETPOOL = 0x40085202 -+ RNDRESEEDCRNG = 0x20005207 -+ RNDZAPENTCNT = 0x20005204 -+ RTC_AIE_OFF = 0x20007002 -+ RTC_AIE_ON = 0x20007001 -+ RTC_ALM_READ = 0x40247008 -+ RTC_ALM_SET = 0x80247007 -+ RTC_EPOCH_READ = 0x4004700d -+ RTC_EPOCH_SET = 0x8004700e -+ RTC_IRQP_READ = 0x4004700b -+ RTC_IRQP_SET = 0x8004700c -+ RTC_PARAM_GET = 0x80187013 -+ RTC_PARAM_SET = 0x80187014 -+ RTC_PIE_OFF = 0x20007006 -+ RTC_PIE_ON = 0x20007005 -+ RTC_PLL_GET = 0x401c7011 -+ RTC_PLL_SET = 0x801c7012 -+ RTC_RD_TIME = 0x40247009 -+ RTC_SET_TIME = 0x8024700a -+ RTC_UIE_OFF = 0x20007004 -+ RTC_UIE_ON = 0x20007003 -+ RTC_VL_CLR = 0x20007014 -+ RTC_VL_READ = 0x40047013 -+ RTC_WIE_OFF = 0x20007010 -+ RTC_WIE_ON = 0x2000700f -+ RTC_WKALM_RD = 0x40287010 -+ RTC_WKALM_SET = 0x8028700f -+ SCM_TIMESTAMPING = 0x25 -+ SCM_TIMESTAMPING_OPT_STATS = 0x36 -+ SCM_TIMESTAMPING_PKTINFO = 0x3a -+ SCM_TIMESTAMPNS = 0x23 -+ SCM_TXTIME = 0x3d -+ SCM_WIFI_STATUS = 0x29 -+ SFD_CLOEXEC = 0x80000 -+ SFD_NONBLOCK = 0x800 -+ SIOCATMARK = 0x8905 -+ SIOCGPGRP = 0x8904 -+ SIOCGSTAMPNS_NEW = 0x40108907 -+ SIOCGSTAMP_NEW = 0x40108906 -+ SIOCINQ = 0x4004667f -+ SIOCOUTQ = 0x40047473 -+ SIOCSPGRP = 0x8902 -+ SOCK_CLOEXEC = 0x80000 -+ SOCK_DGRAM = 0x2 -+ SOCK_NONBLOCK = 0x800 -+ SOCK_STREAM = 0x1 -+ SOL_SOCKET = 0x1 -+ SO_ACCEPTCONN = 0x1e -+ SO_ATTACH_BPF = 0x32 -+ SO_ATTACH_REUSEPORT_CBPF = 0x33 -+ SO_ATTACH_REUSEPORT_EBPF = 0x34 -+ SO_BINDTODEVICE = 0x19 -+ SO_BINDTOIFINDEX = 0x3e -+ SO_BPF_EXTENSIONS = 0x30 -+ SO_BROADCAST = 0x6 -+ SO_BSDCOMPAT = 0xe -+ SO_BUF_LOCK = 0x48 -+ SO_BUSY_POLL = 0x2e -+ SO_BUSY_POLL_BUDGET = 0x46 -+ SO_CNX_ADVICE = 0x35 -+ SO_COOKIE = 0x39 -+ SO_DETACH_REUSEPORT_BPF = 0x44 -+ SO_DOMAIN = 0x27 -+ SO_DONTROUTE = 0x5 -+ SO_ERROR = 0x4 -+ SO_INCOMING_CPU = 0x31 -+ SO_INCOMING_NAPI_ID = 0x38 -+ SO_KEEPALIVE = 0x9 -+ SO_LINGER = 0xd -+ SO_LOCK_FILTER = 0x2c -+ SO_MARK = 0x24 -+ SO_MAX_PACING_RATE = 0x2f -+ SO_MEMINFO = 0x37 -+ SO_NETNS_COOKIE = 0x47 -+ SO_NOFCS = 0x2b -+ SO_OOBINLINE = 0xa -+ SO_PASSCRED = 0x14 -+ SO_PASSSEC = 0x22 -+ SO_PEEK_OFF = 0x2a -+ SO_PEERCRED = 0x15 -+ SO_PEERGROUPS = 0x3b -+ SO_PEERSEC = 0x1f -+ SO_PREFER_BUSY_POLL = 0x45 -+ SO_PROTOCOL = 0x26 -+ SO_RCVBUF = 0x8 -+ SO_RCVBUFFORCE = 0x21 -+ SO_RCVLOWAT = 0x10 -+ SO_RCVMARK = 0x4b -+ SO_RCVTIMEO = 0x12 -+ SO_RCVTIMEO_NEW = 0x42 -+ SO_RCVTIMEO_OLD = 0x12 -+ SO_RESERVE_MEM = 0x49 -+ SO_REUSEADDR = 0x2 -+ SO_REUSEPORT = 0xf -+ SO_RXQ_OVFL = 0x28 -+ SO_SECURITY_AUTHENTICATION = 0x16 -+ SO_SECURITY_ENCRYPTION_NETWORK = 0x18 -+ SO_SECURITY_ENCRYPTION_TRANSPORT = 0x17 -+ SO_SELECT_ERR_QUEUE = 0x2d -+ SO_SNDBUF = 0x7 -+ SO_SNDBUFFORCE = 0x20 -+ SO_SNDLOWAT = 0x11 -+ SO_SNDTIMEO = 0x13 -+ SO_SNDTIMEO_NEW = 0x43 -+ SO_SNDTIMEO_OLD = 0x13 -+ SO_TIMESTAMPING = 0x25 -+ SO_TIMESTAMPING_NEW = 0x41 -+ SO_TIMESTAMPING_OLD = 0x25 -+ SO_TIMESTAMPNS = 0x23 -+ SO_TIMESTAMPNS_NEW = 0x40 -+ SO_TIMESTAMPNS_OLD = 0x23 -+ SO_TIMESTAMP_NEW = 0x3f -+ SO_TXREHASH = 0x4a -+ SO_TXTIME = 0x3d -+ SO_TYPE = 0x3 -+ SO_WIFI_STATUS = 0x29 -+ SO_ZEROCOPY = 0x3c -+ TAB1 = 0x400 -+ TAB2 = 0x800 -+ TAB3 = 0xc00 -+ TABDLY = 0xc00 -+ TCFLSH = 0x2000741f -+ TCGETA = 0x40147417 -+ TCGETS = 0x402c7413 -+ TCSAFLUSH = 0x2 -+ TCSBRK = 0x2000741d -+ TCSBRKP = 0x5425 -+ TCSETA = 0x80147418 -+ TCSETAF = 0x8014741c -+ TCSETAW = 0x80147419 -+ TCSETS = 0x802c7414 -+ TCSETSF = 0x802c7416 -+ TCSETSW = 0x802c7415 -+ TCXONC = 0x2000741e -+ TFD_CLOEXEC = 0x80000 -+ TFD_NONBLOCK = 0x800 -+ TIOCCBRK = 0x5428 -+ TIOCCONS = 0x541d -+ TIOCEXCL = 0x540c -+ TIOCGDEV = 0x40045432 -+ TIOCGETC = 0x40067412 -+ TIOCGETD = 0x5424 -+ TIOCGETP = 0x40067408 -+ TIOCGEXCL = 0x40045440 -+ TIOCGICOUNT = 0x545d -+ TIOCGISO7816 = 0x40285442 -+ TIOCGLCKTRMIOS = 0x5456 -+ TIOCGLTC = 0x40067474 -+ TIOCGPGRP = 0x40047477 -+ TIOCGPKT = 0x40045438 -+ TIOCGPTLCK = 0x40045439 -+ TIOCGPTN = 0x40045430 -+ TIOCGPTPEER = 0x20005441 -+ TIOCGRS485 = 0x542e -+ TIOCGSERIAL = 0x541e -+ TIOCGSID = 0x5429 -+ TIOCGSOFTCAR = 0x5419 -+ TIOCGWINSZ = 0x40087468 -+ TIOCINQ = 0x4004667f -+ TIOCLINUX = 0x541c -+ TIOCMBIC = 0x5417 -+ TIOCMBIS = 0x5416 -+ TIOCMGET = 0x5415 -+ TIOCMIWAIT = 0x545c -+ TIOCMSET = 0x5418 -+ TIOCM_CAR = 0x40 -+ TIOCM_CD = 0x40 -+ TIOCM_CTS = 0x20 -+ TIOCM_DSR = 0x100 -+ TIOCM_LOOP = 0x8000 -+ TIOCM_OUT1 = 0x2000 -+ TIOCM_OUT2 = 0x4000 -+ TIOCM_RI = 0x80 -+ TIOCM_RNG = 0x80 -+ TIOCM_SR = 0x10 -+ TIOCM_ST = 0x8 -+ TIOCNOTTY = 0x5422 -+ TIOCNXCL = 0x540d -+ TIOCOUTQ = 0x40047473 -+ TIOCPKT = 0x5420 -+ TIOCSBRK = 0x5427 -+ TIOCSCTTY = 0x540e -+ TIOCSERCONFIG = 0x5453 -+ TIOCSERGETLSR = 0x5459 -+ TIOCSERGETMULTI = 0x545a -+ TIOCSERGSTRUCT = 0x5458 -+ TIOCSERGWILD = 0x5454 -+ TIOCSERSETMULTI = 0x545b -+ TIOCSERSWILD = 0x5455 -+ TIOCSER_TEMT = 0x1 -+ TIOCSETC = 0x80067411 -+ TIOCSETD = 0x5423 -+ TIOCSETN = 0x8006740a -+ TIOCSETP = 0x80067409 -+ TIOCSIG = 0x80045436 -+ TIOCSISO7816 = 0xc0285443 -+ TIOCSLCKTRMIOS = 0x5457 -+ TIOCSLTC = 0x80067475 -+ TIOCSPGRP = 0x80047476 -+ TIOCSPTLCK = 0x80045431 -+ TIOCSRS485 = 0x542f -+ TIOCSSERIAL = 0x541f -+ TIOCSSOFTCAR = 0x541a -+ TIOCSTART = 0x2000746e -+ TIOCSTI = 0x5412 -+ TIOCSTOP = 0x2000746f -+ TIOCSWINSZ = 0x80087467 -+ TIOCVHANGUP = 0x5437 -+ TOSTOP = 0x400000 -+ TUNATTACHFILTER = 0x800854d5 -+ TUNDETACHFILTER = 0x800854d6 -+ TUNGETDEVNETNS = 0x200054e3 -+ TUNGETFEATURES = 0x400454cf -+ TUNGETFILTER = 0x400854db -+ TUNGETIFF = 0x400454d2 -+ TUNGETSNDBUF = 0x400454d3 -+ TUNGETVNETBE = 0x400454df -+ TUNGETVNETHDRSZ = 0x400454d7 -+ TUNGETVNETLE = 0x400454dd -+ TUNSETCARRIER = 0x800454e2 -+ TUNSETDEBUG = 0x800454c9 -+ TUNSETFILTEREBPF = 0x400454e1 -+ TUNSETGROUP = 0x800454ce -+ TUNSETIFF = 0x800454ca -+ TUNSETIFINDEX = 0x800454da -+ TUNSETLINK = 0x800454cd -+ TUNSETNOCSUM = 0x800454c8 -+ TUNSETOFFLOAD = 0x800454d0 -+ TUNSETOWNER = 0x800454cc -+ TUNSETPERSIST = 0x800454cb -+ TUNSETQUEUE = 0x800454d9 -+ TUNSETSNDBUF = 0x800454d4 -+ TUNSETSTEERINGEBPF = 0x400454e0 -+ TUNSETTXFILTER = 0x800454d1 -+ TUNSETVNETBE = 0x800454de -+ TUNSETVNETHDRSZ = 0x800454d8 -+ TUNSETVNETLE = 0x800454dc -+ UBI_IOCATT = 0x80186f40 -+ UBI_IOCDET = 0x80046f41 -+ UBI_IOCEBCH = 0x80044f02 -+ UBI_IOCEBER = 0x80044f01 -+ UBI_IOCEBISMAP = 0x40044f05 -+ UBI_IOCEBMAP = 0x80084f03 -+ UBI_IOCEBUNMAP = 0x80044f04 -+ UBI_IOCMKVOL = 0x80986f00 -+ UBI_IOCRMVOL = 0x80046f01 -+ UBI_IOCRNVOL = 0x91106f03 -+ UBI_IOCRPEB = 0x80046f04 -+ UBI_IOCRSVOL = 0x800c6f02 -+ UBI_IOCSETVOLPROP = 0x80104f06 -+ UBI_IOCSPEB = 0x80046f05 -+ UBI_IOCVOLCRBLK = 0x80804f07 -+ UBI_IOCVOLRMBLK = 0x20004f08 -+ UBI_IOCVOLUP = 0x80084f00 -+ VDISCARD = 0x10 -+ VEOF = 0x4 -+ VEOL = 0x6 -+ VEOL2 = 0x8 -+ VMIN = 0x5 -+ VREPRINT = 0xb -+ VSTART = 0xd -+ VSTOP = 0xe -+ VSUSP = 0xc -+ VSWTC = 0x9 -+ VT1 = 0x10000 -+ VTDLY = 0x10000 -+ VTIME = 0x7 -+ VWERASE = 0xa -+ WDIOC_GETBOOTSTATUS = 0x40045702 -+ WDIOC_GETPRETIMEOUT = 0x40045709 -+ WDIOC_GETSTATUS = 0x40045701 -+ WDIOC_GETSUPPORT = 0x40285700 -+ WDIOC_GETTEMP = 0x40045703 -+ WDIOC_GETTIMELEFT = 0x4004570a -+ WDIOC_GETTIMEOUT = 0x40045707 -+ WDIOC_KEEPALIVE = 0x40045705 -+ WDIOC_SETOPTIONS = 0x40045704 -+ WORDSIZE = 0x20 -+ XCASE = 0x4000 -+ XTABS = 0xc00 -+ _HIDIOCGRAWNAME = 0x40804804 -+ _HIDIOCGRAWPHYS = 0x40404805 -+ _HIDIOCGRAWUNIQ = 0x40404808 -+) -+ -+// Errors -+const ( -+ EADDRINUSE = syscall.Errno(0x62) -+ EADDRNOTAVAIL = syscall.Errno(0x63) -+ EADV = syscall.Errno(0x44) -+ EAFNOSUPPORT = syscall.Errno(0x61) -+ EALREADY = syscall.Errno(0x72) -+ EBADE = syscall.Errno(0x34) -+ EBADFD = syscall.Errno(0x4d) -+ EBADMSG = syscall.Errno(0x4a) -+ EBADR = syscall.Errno(0x35) -+ EBADRQC = syscall.Errno(0x38) -+ EBADSLT = syscall.Errno(0x39) -+ EBFONT = syscall.Errno(0x3b) -+ ECANCELED = syscall.Errno(0x7d) -+ ECHRNG = syscall.Errno(0x2c) -+ ECOMM = syscall.Errno(0x46) -+ ECONNABORTED = syscall.Errno(0x67) -+ ECONNREFUSED = syscall.Errno(0x6f) -+ ECONNRESET = syscall.Errno(0x68) -+ EDEADLK = syscall.Errno(0x23) -+ EDEADLOCK = syscall.Errno(0x3a) -+ EDESTADDRREQ = syscall.Errno(0x59) -+ EDOTDOT = syscall.Errno(0x49) -+ EDQUOT = syscall.Errno(0x7a) -+ EHOSTDOWN = syscall.Errno(0x70) -+ EHOSTUNREACH = syscall.Errno(0x71) -+ EHWPOISON = syscall.Errno(0x85) -+ EIDRM = syscall.Errno(0x2b) -+ EILSEQ = syscall.Errno(0x54) -+ EINPROGRESS = syscall.Errno(0x73) -+ EISCONN = syscall.Errno(0x6a) -+ EISNAM = syscall.Errno(0x78) -+ EKEYEXPIRED = syscall.Errno(0x7f) -+ EKEYREJECTED = syscall.Errno(0x81) -+ EKEYREVOKED = syscall.Errno(0x80) -+ EL2HLT = syscall.Errno(0x33) -+ EL2NSYNC = syscall.Errno(0x2d) -+ EL3HLT = syscall.Errno(0x2e) -+ EL3RST = syscall.Errno(0x2f) -+ ELIBACC = syscall.Errno(0x4f) -+ ELIBBAD = syscall.Errno(0x50) -+ ELIBEXEC = syscall.Errno(0x53) -+ ELIBMAX = syscall.Errno(0x52) -+ ELIBSCN = syscall.Errno(0x51) -+ ELNRNG = syscall.Errno(0x30) -+ ELOOP = syscall.Errno(0x28) -+ EMEDIUMTYPE = syscall.Errno(0x7c) -+ EMSGSIZE = syscall.Errno(0x5a) -+ EMULTIHOP = syscall.Errno(0x48) -+ ENAMETOOLONG = syscall.Errno(0x24) -+ ENAVAIL = syscall.Errno(0x77) -+ ENETDOWN = syscall.Errno(0x64) -+ ENETRESET = syscall.Errno(0x66) -+ ENETUNREACH = syscall.Errno(0x65) -+ ENOANO = syscall.Errno(0x37) -+ ENOBUFS = syscall.Errno(0x69) -+ ENOCSI = syscall.Errno(0x32) -+ ENODATA = syscall.Errno(0x3d) -+ ENOKEY = syscall.Errno(0x7e) -+ ENOLCK = syscall.Errno(0x25) -+ ENOLINK = syscall.Errno(0x43) -+ ENOMEDIUM = syscall.Errno(0x7b) -+ ENOMSG = syscall.Errno(0x2a) -+ ENONET = syscall.Errno(0x40) -+ ENOPKG = syscall.Errno(0x41) -+ ENOPROTOOPT = syscall.Errno(0x5c) -+ ENOSR = syscall.Errno(0x3f) -+ ENOSTR = syscall.Errno(0x3c) -+ ENOSYS = syscall.Errno(0x26) -+ ENOTCONN = syscall.Errno(0x6b) -+ ENOTEMPTY = syscall.Errno(0x27) -+ ENOTNAM = syscall.Errno(0x76) -+ ENOTRECOVERABLE = syscall.Errno(0x83) -+ ENOTSOCK = syscall.Errno(0x58) -+ ENOTSUP = syscall.Errno(0x5f) -+ ENOTUNIQ = syscall.Errno(0x4c) -+ EOPNOTSUPP = syscall.Errno(0x5f) -+ EOVERFLOW = syscall.Errno(0x4b) -+ EOWNERDEAD = syscall.Errno(0x82) -+ EPFNOSUPPORT = syscall.Errno(0x60) -+ EPROTO = syscall.Errno(0x47) -+ EPROTONOSUPPORT = syscall.Errno(0x5d) -+ EPROTOTYPE = syscall.Errno(0x5b) -+ EREMCHG = syscall.Errno(0x4e) -+ EREMOTE = syscall.Errno(0x42) -+ EREMOTEIO = syscall.Errno(0x79) -+ ERESTART = syscall.Errno(0x55) -+ ERFKILL = syscall.Errno(0x84) -+ ESHUTDOWN = syscall.Errno(0x6c) -+ ESOCKTNOSUPPORT = syscall.Errno(0x5e) -+ ESRMNT = syscall.Errno(0x45) -+ ESTALE = syscall.Errno(0x74) -+ ESTRPIPE = syscall.Errno(0x56) -+ ETIME = syscall.Errno(0x3e) -+ ETIMEDOUT = syscall.Errno(0x6e) -+ ETOOMANYREFS = syscall.Errno(0x6d) -+ EUCLEAN = syscall.Errno(0x75) -+ EUNATCH = syscall.Errno(0x31) -+ EUSERS = syscall.Errno(0x57) -+ EXFULL = syscall.Errno(0x36) -+) -+ -+// Signals -+const ( -+ SIGBUS = syscall.Signal(0x7) -+ SIGCHLD = syscall.Signal(0x11) -+ SIGCLD = syscall.Signal(0x11) -+ SIGCONT = syscall.Signal(0x12) -+ SIGIO = syscall.Signal(0x1d) -+ SIGPOLL = syscall.Signal(0x1d) -+ SIGPROF = syscall.Signal(0x1b) -+ SIGPWR = syscall.Signal(0x1e) -+ SIGSTKFLT = syscall.Signal(0x10) -+ SIGSTOP = syscall.Signal(0x13) -+ SIGSYS = syscall.Signal(0x1f) -+ SIGTSTP = syscall.Signal(0x14) -+ SIGTTIN = syscall.Signal(0x15) -+ SIGTTOU = syscall.Signal(0x16) -+ SIGURG = syscall.Signal(0x17) -+ SIGUSR1 = syscall.Signal(0xa) -+ SIGUSR2 = syscall.Signal(0xc) -+ SIGVTALRM = syscall.Signal(0x1a) -+ SIGWINCH = syscall.Signal(0x1c) -+ SIGXCPU = syscall.Signal(0x18) -+ SIGXFSZ = syscall.Signal(0x19) -+) -+ -+// Error table -+var errorList = [...]struct { -+ num syscall.Errno -+ name string -+ desc string -+}{ -+ {1, "EPERM", "operation not permitted"}, -+ {2, "ENOENT", "no such file or directory"}, -+ {3, "ESRCH", "no such process"}, -+ {4, "EINTR", "interrupted system call"}, -+ {5, "EIO", "input/output error"}, -+ {6, "ENXIO", "no such device or address"}, -+ {7, "E2BIG", "argument list too long"}, -+ {8, "ENOEXEC", "exec format error"}, -+ {9, "EBADF", "bad file descriptor"}, -+ {10, "ECHILD", "no child processes"}, -+ {11, "EAGAIN", "resource temporarily unavailable"}, -+ {12, "ENOMEM", "cannot allocate memory"}, -+ {13, "EACCES", "permission denied"}, -+ {14, "EFAULT", "bad address"}, -+ {15, "ENOTBLK", "block device required"}, -+ {16, "EBUSY", "device or resource busy"}, -+ {17, "EEXIST", "file exists"}, -+ {18, "EXDEV", "invalid cross-device link"}, -+ {19, "ENODEV", "no such device"}, -+ {20, "ENOTDIR", "not a directory"}, -+ {21, "EISDIR", "is a directory"}, -+ {22, "EINVAL", "invalid argument"}, -+ {23, "ENFILE", "too many open files in system"}, -+ {24, "EMFILE", "too many open files"}, -+ {25, "ENOTTY", "inappropriate ioctl for device"}, -+ {26, "ETXTBSY", "text file busy"}, -+ {27, "EFBIG", "file too large"}, -+ {28, "ENOSPC", "no space left on device"}, -+ {29, "ESPIPE", "illegal seek"}, -+ {30, "EROFS", "read-only file system"}, -+ {31, "EMLINK", "too many links"}, -+ {32, "EPIPE", "broken pipe"}, -+ {33, "EDOM", "numerical argument out of domain"}, -+ {34, "ERANGE", "numerical result out of range"}, -+ {35, "EDEADLK", "resource deadlock avoided"}, -+ {36, "ENAMETOOLONG", "file name too long"}, -+ {37, "ENOLCK", "no locks available"}, -+ {38, "ENOSYS", "function not implemented"}, -+ {39, "ENOTEMPTY", "directory not empty"}, -+ {40, "ELOOP", "too many levels of symbolic links"}, -+ {42, "ENOMSG", "no message of desired type"}, -+ {43, "EIDRM", "identifier removed"}, -+ {44, "ECHRNG", "channel number out of range"}, -+ {45, "EL2NSYNC", "level 2 not synchronized"}, -+ {46, "EL3HLT", "level 3 halted"}, -+ {47, "EL3RST", "level 3 reset"}, -+ {48, "ELNRNG", "link number out of range"}, -+ {49, "EUNATCH", "protocol driver not attached"}, -+ {50, "ENOCSI", "no CSI structure available"}, -+ {51, "EL2HLT", "level 2 halted"}, -+ {52, "EBADE", "invalid exchange"}, -+ {53, "EBADR", "invalid request descriptor"}, -+ {54, "EXFULL", "exchange full"}, -+ {55, "ENOANO", "no anode"}, -+ {56, "EBADRQC", "invalid request code"}, -+ {57, "EBADSLT", "invalid slot"}, -+ {58, "EDEADLOCK", "file locking deadlock error"}, -+ {59, "EBFONT", "bad font file format"}, -+ {60, "ENOSTR", "device not a stream"}, -+ {61, "ENODATA", "no data available"}, -+ {62, "ETIME", "timer expired"}, -+ {63, "ENOSR", "out of streams resources"}, -+ {64, "ENONET", "machine is not on the network"}, -+ {65, "ENOPKG", "package not installed"}, -+ {66, "EREMOTE", "object is remote"}, -+ {67, "ENOLINK", "link has been severed"}, -+ {68, "EADV", "advertise error"}, -+ {69, "ESRMNT", "srmount error"}, -+ {70, "ECOMM", "communication error on send"}, -+ {71, "EPROTO", "protocol error"}, -+ {72, "EMULTIHOP", "multihop attempted"}, -+ {73, "EDOTDOT", "RFS specific error"}, -+ {74, "EBADMSG", "bad message"}, -+ {75, "EOVERFLOW", "value too large for defined data type"}, -+ {76, "ENOTUNIQ", "name not unique on network"}, -+ {77, "EBADFD", "file descriptor in bad state"}, -+ {78, "EREMCHG", "remote address changed"}, -+ {79, "ELIBACC", "can not access a needed shared library"}, -+ {80, "ELIBBAD", "accessing a corrupted shared library"}, -+ {81, "ELIBSCN", ".lib section in a.out corrupted"}, -+ {82, "ELIBMAX", "attempting to link in too many shared libraries"}, -+ {83, "ELIBEXEC", "cannot exec a shared library directly"}, -+ {84, "EILSEQ", "invalid or incomplete multibyte or wide character"}, -+ {85, "ERESTART", "interrupted system call should be restarted"}, -+ {86, "ESTRPIPE", "streams pipe error"}, -+ {87, "EUSERS", "too many users"}, -+ {88, "ENOTSOCK", "socket operation on non-socket"}, -+ {89, "EDESTADDRREQ", "destination address required"}, -+ {90, "EMSGSIZE", "message too long"}, -+ {91, "EPROTOTYPE", "protocol wrong type for socket"}, -+ {92, "ENOPROTOOPT", "protocol not available"}, -+ {93, "EPROTONOSUPPORT", "protocol not supported"}, -+ {94, "ESOCKTNOSUPPORT", "socket type not supported"}, -+ {95, "ENOTSUP", "operation not supported"}, -+ {96, "EPFNOSUPPORT", "protocol family not supported"}, -+ {97, "EAFNOSUPPORT", "address family not supported by protocol"}, -+ {98, "EADDRINUSE", "address already in use"}, -+ {99, "EADDRNOTAVAIL", "cannot assign requested address"}, -+ {100, "ENETDOWN", "network is down"}, -+ {101, "ENETUNREACH", "network is unreachable"}, -+ {102, "ENETRESET", "network dropped connection on reset"}, -+ {103, "ECONNABORTED", "software caused connection abort"}, -+ {104, "ECONNRESET", "connection reset by peer"}, -+ {105, "ENOBUFS", "no buffer space available"}, -+ {106, "EISCONN", "transport endpoint is already connected"}, -+ {107, "ENOTCONN", "transport endpoint is not connected"}, -+ {108, "ESHUTDOWN", "cannot send after transport endpoint shutdown"}, -+ {109, "ETOOMANYREFS", "too many references: cannot splice"}, -+ {110, "ETIMEDOUT", "connection timed out"}, -+ {111, "ECONNREFUSED", "connection refused"}, -+ {112, "EHOSTDOWN", "host is down"}, -+ {113, "EHOSTUNREACH", "no route to host"}, -+ {114, "EALREADY", "operation already in progress"}, -+ {115, "EINPROGRESS", "operation now in progress"}, -+ {116, "ESTALE", "stale file handle"}, -+ {117, "EUCLEAN", "structure needs cleaning"}, -+ {118, "ENOTNAM", "not a XENIX named type file"}, -+ {119, "ENAVAIL", "no XENIX semaphores available"}, -+ {120, "EISNAM", "is a named type file"}, -+ {121, "EREMOTEIO", "remote I/O error"}, -+ {122, "EDQUOT", "disk quota exceeded"}, -+ {123, "ENOMEDIUM", "no medium found"}, -+ {124, "EMEDIUMTYPE", "wrong medium type"}, -+ {125, "ECANCELED", "operation canceled"}, -+ {126, "ENOKEY", "required key not available"}, -+ {127, "EKEYEXPIRED", "key has expired"}, -+ {128, "EKEYREVOKED", "key has been revoked"}, -+ {129, "EKEYREJECTED", "key was rejected by service"}, -+ {130, "EOWNERDEAD", "owner died"}, -+ {131, "ENOTRECOVERABLE", "state not recoverable"}, -+ {132, "ERFKILL", "operation not possible due to RF-kill"}, -+ {133, "EHWPOISON", "memory page has hardware error"}, -+} -+ -+// Signal table -+var signalList = [...]struct { -+ num syscall.Signal -+ name string -+ desc string -+}{ -+ {1, "SIGHUP", "hangup"}, -+ {2, "SIGINT", "interrupt"}, -+ {3, "SIGQUIT", "quit"}, -+ {4, "SIGILL", "illegal instruction"}, -+ {5, "SIGTRAP", "trace/breakpoint trap"}, -+ {6, "SIGABRT", "aborted"}, -+ {7, "SIGBUS", "bus error"}, -+ {8, "SIGFPE", "floating point exception"}, -+ {9, "SIGKILL", "killed"}, -+ {10, "SIGUSR1", "user defined signal 1"}, -+ {11, "SIGSEGV", "segmentation fault"}, -+ {12, "SIGUSR2", "user defined signal 2"}, -+ {13, "SIGPIPE", "broken pipe"}, -+ {14, "SIGALRM", "alarm clock"}, -+ {15, "SIGTERM", "terminated"}, -+ {16, "SIGSTKFLT", "stack fault"}, -+ {17, "SIGCHLD", "child exited"}, -+ {18, "SIGCONT", "continued"}, -+ {19, "SIGSTOP", "stopped (signal)"}, -+ {20, "SIGTSTP", "stopped"}, -+ {21, "SIGTTIN", "stopped (tty input)"}, -+ {22, "SIGTTOU", "stopped (tty output)"}, -+ {23, "SIGURG", "urgent I/O condition"}, -+ {24, "SIGXCPU", "CPU time limit exceeded"}, -+ {25, "SIGXFSZ", "file size limit exceeded"}, -+ {26, "SIGVTALRM", "virtual timer expired"}, -+ {27, "SIGPROF", "profiling timer expired"}, -+ {28, "SIGWINCH", "window changed"}, -+ {29, "SIGIO", "I/O possible"}, -+ {30, "SIGPWR", "power failure"}, -+ {31, "SIGSYS", "bad system call"}, -+} -diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go -index 5185866..959dd9b 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go -@@ -1,10 +1,11 @@ --// mkerrors.sh -Wall -Werror -static -I/tmp/include -+// mkerrors.sh -Wall -Werror -static -I/tmp/ppc64/include - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build ppc64 && linux - // +build ppc64,linux - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. --// cgo -godefs -- -Wall -Werror -static -I/tmp/include _const.go -+// cgo -godefs -- -Wall -Werror -static -I/tmp/ppc64/include _const.go - - package unix - -@@ -59,6 +60,8 @@ const ( - CS8 = 0x300 - CSIZE = 0x300 - CSTOPB = 0x400 -+ ECCGETLAYOUT = 0x41484d11 -+ ECCGETSTATS = 0x40104d12 - ECHOCTL = 0x40 - ECHOE = 0x2 - ECHOK = 0x4 -@@ -71,11 +74,15 @@ const ( - EXTPROC = 0x10000000 - FF1 = 0x4000 - FFDLY = 0x4000 -+ FICLONE = 0x80049409 -+ FICLONERANGE = 0x8020940d - FLUSHO = 0x800000 - FS_IOC_ENABLE_VERITY = 0x80806685 - FS_IOC_GETFLAGS = 0x40086601 -+ FS_IOC_GET_ENCRYPTION_NONCE = 0x4010661b - FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615 - FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614 -+ FS_IOC_SETFLAGS = 0x80086602 - FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613 - F_GETLK = 0x5 - F_GETLK64 = 0xc -@@ -88,6 +95,9 @@ const ( - F_SETOWN = 0x8 - F_UNLCK = 0x2 - F_WRLCK = 0x1 -+ HIDIOCGRAWINFO = 0x40084803 -+ HIDIOCGRDESC = 0x50044802 -+ HIDIOCGRDESCSIZE = 0x40044801 - HUPCL = 0x4000 - ICANON = 0x100 - IEXTEN = 0x400 -@@ -113,6 +123,19 @@ const ( - MCL_CURRENT = 0x2000 - MCL_FUTURE = 0x4000 - MCL_ONFAULT = 0x8000 -+ MEMERASE = 0x80084d02 -+ MEMERASE64 = 0x80104d14 -+ MEMGETBADBLOCK = 0x80084d0b -+ MEMGETINFO = 0x40204d01 -+ MEMGETOOBSEL = 0x40c84d0a -+ MEMGETREGIONCOUNT = 0x40044d07 -+ MEMISLOCKED = 0x40084d17 -+ MEMLOCK = 0x80084d05 -+ MEMREADOOB = 0xc0104d04 -+ MEMSETBADBLOCK = 0x80084d0c -+ MEMUNLOCK = 0x80084d06 -+ MEMWRITEOOB = 0xc0104d03 -+ MTDFILEMODE = 0x20004d13 - NFDBITS = 0x40 - NL2 = 0x200 - NL3 = 0x300 -@@ -124,6 +147,11 @@ const ( - NS_GET_USERNS = 0x2000b701 - OLCUC = 0x4 - ONLCR = 0x2 -+ OTPERASE = 0x800c4d19 -+ OTPGETREGIONCOUNT = 0x80044d0e -+ OTPGETREGIONINFO = 0x800c4d0f -+ OTPLOCK = 0x400c4d10 -+ OTPSELECT = 0x40044d0d - O_APPEND = 0x400 - O_ASYNC = 0x2000 - O_CLOEXEC = 0x80000 -@@ -161,6 +189,7 @@ const ( - PERF_EVENT_IOC_SET_OUTPUT = 0x20002405 - PPPIOCATTACH = 0x8004743d - PPPIOCATTCHAN = 0x80047438 -+ PPPIOCBRIDGECHAN = 0x80047435 - PPPIOCCONNECT = 0x8004743a - PPPIOCDETACH = 0x8004743c - PPPIOCDISCONN = 0x20007439 -@@ -188,6 +217,7 @@ const ( - PPPIOCSPASS = 0x80107447 - PPPIOCSRASYNCMAP = 0x80047454 - PPPIOCSXASYNCMAP = 0x8020744f -+ PPPIOCUNBRIDGECHAN = 0x20007434 - PPPIOCXFERUNIT = 0x2000744e - PROT_SAO = 0x10 - PR_SET_PTRACER_ANY = 0xffffffffffffffff -@@ -279,6 +309,8 @@ const ( - RTC_EPOCH_SET = 0x8008700e - RTC_IRQP_READ = 0x4008700b - RTC_IRQP_SET = 0x8008700c -+ RTC_PARAM_GET = 0x80187013 -+ RTC_PARAM_SET = 0x80187014 - RTC_PIE_OFF = 0x20007006 - RTC_PIE_ON = 0x20007005 - RTC_PLL_GET = 0x40207011 -@@ -322,7 +354,9 @@ const ( - SO_BPF_EXTENSIONS = 0x30 - SO_BROADCAST = 0x6 - SO_BSDCOMPAT = 0xe -+ SO_BUF_LOCK = 0x48 - SO_BUSY_POLL = 0x2e -+ SO_BUSY_POLL_BUDGET = 0x46 - SO_CNX_ADVICE = 0x35 - SO_COOKIE = 0x39 - SO_DETACH_REUSEPORT_BPF = 0x44 -@@ -337,6 +371,7 @@ const ( - SO_MARK = 0x24 - SO_MAX_PACING_RATE = 0x2f - SO_MEMINFO = 0x37 -+ SO_NETNS_COOKIE = 0x47 - SO_NOFCS = 0x2b - SO_OOBINLINE = 0xa - SO_PASSCRED = 0x14 -@@ -345,13 +380,16 @@ const ( - SO_PEERCRED = 0x15 - SO_PEERGROUPS = 0x3b - SO_PEERSEC = 0x1f -+ SO_PREFER_BUSY_POLL = 0x45 - SO_PROTOCOL = 0x26 - SO_RCVBUF = 0x8 - SO_RCVBUFFORCE = 0x21 - SO_RCVLOWAT = 0x10 -+ SO_RCVMARK = 0x4b - SO_RCVTIMEO = 0x12 - SO_RCVTIMEO_NEW = 0x42 - SO_RCVTIMEO_OLD = 0x12 -+ SO_RESERVE_MEM = 0x49 - SO_REUSEADDR = 0x2 - SO_REUSEPORT = 0xf - SO_RXQ_OVFL = 0x28 -@@ -372,6 +410,7 @@ const ( - SO_TIMESTAMPNS_NEW = 0x40 - SO_TIMESTAMPNS_OLD = 0x23 - SO_TIMESTAMP_NEW = 0x3f -+ SO_TXREHASH = 0x4a - SO_TXTIME = 0x3d - SO_TYPE = 0x3 - SO_WIFI_STATUS = 0x29 -@@ -393,6 +432,8 @@ const ( - TCSETSF = 0x802c7416 - TCSETSW = 0x802c7415 - TCXONC = 0x2000741e -+ TFD_CLOEXEC = 0x80000 -+ TFD_NONBLOCK = 0x800 - TIOCCBRK = 0x5428 - TIOCCONS = 0x541d - TIOCEXCL = 0x540c -@@ -537,6 +578,9 @@ const ( - WORDSIZE = 0x40 - XCASE = 0x4000 - XTABS = 0xc00 -+ _HIDIOCGRAWNAME = 0x40804804 -+ _HIDIOCGRAWPHYS = 0x40404805 -+ _HIDIOCGRAWUNIQ = 0x40404808 - ) - - // Errors -diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go b/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go -index 4231b20..5a873cd 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go -@@ -1,10 +1,11 @@ --// mkerrors.sh -Wall -Werror -static -I/tmp/include -+// mkerrors.sh -Wall -Werror -static -I/tmp/ppc64le/include - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build ppc64le && linux - // +build ppc64le,linux - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. --// cgo -godefs -- -Wall -Werror -static -I/tmp/include _const.go -+// cgo -godefs -- -Wall -Werror -static -I/tmp/ppc64le/include _const.go - - package unix - -@@ -59,6 +60,8 @@ const ( - CS8 = 0x300 - CSIZE = 0x300 - CSTOPB = 0x400 -+ ECCGETLAYOUT = 0x41484d11 -+ ECCGETSTATS = 0x40104d12 - ECHOCTL = 0x40 - ECHOE = 0x2 - ECHOK = 0x4 -@@ -71,11 +74,15 @@ const ( - EXTPROC = 0x10000000 - FF1 = 0x4000 - FFDLY = 0x4000 -+ FICLONE = 0x80049409 -+ FICLONERANGE = 0x8020940d - FLUSHO = 0x800000 - FS_IOC_ENABLE_VERITY = 0x80806685 - FS_IOC_GETFLAGS = 0x40086601 -+ FS_IOC_GET_ENCRYPTION_NONCE = 0x4010661b - FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615 - FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614 -+ FS_IOC_SETFLAGS = 0x80086602 - FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613 - F_GETLK = 0x5 - F_GETLK64 = 0xc -@@ -88,6 +95,9 @@ const ( - F_SETOWN = 0x8 - F_UNLCK = 0x2 - F_WRLCK = 0x1 -+ HIDIOCGRAWINFO = 0x40084803 -+ HIDIOCGRDESC = 0x50044802 -+ HIDIOCGRDESCSIZE = 0x40044801 - HUPCL = 0x4000 - ICANON = 0x100 - IEXTEN = 0x400 -@@ -113,6 +123,19 @@ const ( - MCL_CURRENT = 0x2000 - MCL_FUTURE = 0x4000 - MCL_ONFAULT = 0x8000 -+ MEMERASE = 0x80084d02 -+ MEMERASE64 = 0x80104d14 -+ MEMGETBADBLOCK = 0x80084d0b -+ MEMGETINFO = 0x40204d01 -+ MEMGETOOBSEL = 0x40c84d0a -+ MEMGETREGIONCOUNT = 0x40044d07 -+ MEMISLOCKED = 0x40084d17 -+ MEMLOCK = 0x80084d05 -+ MEMREADOOB = 0xc0104d04 -+ MEMSETBADBLOCK = 0x80084d0c -+ MEMUNLOCK = 0x80084d06 -+ MEMWRITEOOB = 0xc0104d03 -+ MTDFILEMODE = 0x20004d13 - NFDBITS = 0x40 - NL2 = 0x200 - NL3 = 0x300 -@@ -124,6 +147,11 @@ const ( - NS_GET_USERNS = 0x2000b701 - OLCUC = 0x4 - ONLCR = 0x2 -+ OTPERASE = 0x800c4d19 -+ OTPGETREGIONCOUNT = 0x80044d0e -+ OTPGETREGIONINFO = 0x800c4d0f -+ OTPLOCK = 0x400c4d10 -+ OTPSELECT = 0x40044d0d - O_APPEND = 0x400 - O_ASYNC = 0x2000 - O_CLOEXEC = 0x80000 -@@ -161,6 +189,7 @@ const ( - PERF_EVENT_IOC_SET_OUTPUT = 0x20002405 - PPPIOCATTACH = 0x8004743d - PPPIOCATTCHAN = 0x80047438 -+ PPPIOCBRIDGECHAN = 0x80047435 - PPPIOCCONNECT = 0x8004743a - PPPIOCDETACH = 0x8004743c - PPPIOCDISCONN = 0x20007439 -@@ -188,6 +217,7 @@ const ( - PPPIOCSPASS = 0x80107447 - PPPIOCSRASYNCMAP = 0x80047454 - PPPIOCSXASYNCMAP = 0x8020744f -+ PPPIOCUNBRIDGECHAN = 0x20007434 - PPPIOCXFERUNIT = 0x2000744e - PROT_SAO = 0x10 - PR_SET_PTRACER_ANY = 0xffffffffffffffff -@@ -279,6 +309,8 @@ const ( - RTC_EPOCH_SET = 0x8008700e - RTC_IRQP_READ = 0x4008700b - RTC_IRQP_SET = 0x8008700c -+ RTC_PARAM_GET = 0x80187013 -+ RTC_PARAM_SET = 0x80187014 - RTC_PIE_OFF = 0x20007006 - RTC_PIE_ON = 0x20007005 - RTC_PLL_GET = 0x40207011 -@@ -322,7 +354,9 @@ const ( - SO_BPF_EXTENSIONS = 0x30 - SO_BROADCAST = 0x6 - SO_BSDCOMPAT = 0xe -+ SO_BUF_LOCK = 0x48 - SO_BUSY_POLL = 0x2e -+ SO_BUSY_POLL_BUDGET = 0x46 - SO_CNX_ADVICE = 0x35 - SO_COOKIE = 0x39 - SO_DETACH_REUSEPORT_BPF = 0x44 -@@ -337,6 +371,7 @@ const ( - SO_MARK = 0x24 - SO_MAX_PACING_RATE = 0x2f - SO_MEMINFO = 0x37 -+ SO_NETNS_COOKIE = 0x47 - SO_NOFCS = 0x2b - SO_OOBINLINE = 0xa - SO_PASSCRED = 0x14 -@@ -345,13 +380,16 @@ const ( - SO_PEERCRED = 0x15 - SO_PEERGROUPS = 0x3b - SO_PEERSEC = 0x1f -+ SO_PREFER_BUSY_POLL = 0x45 - SO_PROTOCOL = 0x26 - SO_RCVBUF = 0x8 - SO_RCVBUFFORCE = 0x21 - SO_RCVLOWAT = 0x10 -+ SO_RCVMARK = 0x4b - SO_RCVTIMEO = 0x12 - SO_RCVTIMEO_NEW = 0x42 - SO_RCVTIMEO_OLD = 0x12 -+ SO_RESERVE_MEM = 0x49 - SO_REUSEADDR = 0x2 - SO_REUSEPORT = 0xf - SO_RXQ_OVFL = 0x28 -@@ -372,6 +410,7 @@ const ( - SO_TIMESTAMPNS_NEW = 0x40 - SO_TIMESTAMPNS_OLD = 0x23 - SO_TIMESTAMP_NEW = 0x3f -+ SO_TXREHASH = 0x4a - SO_TXTIME = 0x3d - SO_TYPE = 0x3 - SO_WIFI_STATUS = 0x29 -@@ -393,6 +432,8 @@ const ( - TCSETSF = 0x802c7416 - TCSETSW = 0x802c7415 - TCXONC = 0x2000741e -+ TFD_CLOEXEC = 0x80000 -+ TFD_NONBLOCK = 0x800 - TIOCCBRK = 0x5428 - TIOCCONS = 0x541d - TIOCEXCL = 0x540c -@@ -537,6 +578,9 @@ const ( - WORDSIZE = 0x40 - XCASE = 0x4000 - XTABS = 0xc00 -+ _HIDIOCGRAWNAME = 0x40804804 -+ _HIDIOCGRAWPHYS = 0x40404805 -+ _HIDIOCGRAWUNIQ = 0x40404808 - ) - - // Errors -diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go -index 6a0b2d2..e336d14 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go -@@ -1,10 +1,11 @@ --// mkerrors.sh -Wall -Werror -static -I/tmp/include -+// mkerrors.sh -Wall -Werror -static -I/tmp/riscv64/include - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build riscv64 && linux - // +build riscv64,linux - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. --// cgo -godefs -- -Wall -Werror -static -I/tmp/include _const.go -+// cgo -godefs -- -Wall -Werror -static -I/tmp/riscv64/include _const.go - - package unix - -@@ -59,6 +60,8 @@ const ( - CS8 = 0x30 - CSIZE = 0x30 - CSTOPB = 0x40 -+ ECCGETLAYOUT = 0x81484d11 -+ ECCGETSTATS = 0x80104d12 - ECHOCTL = 0x200 - ECHOE = 0x10 - ECHOK = 0x20 -@@ -71,11 +74,15 @@ const ( - EXTPROC = 0x10000 - FF1 = 0x8000 - FFDLY = 0x8000 -+ FICLONE = 0x40049409 -+ FICLONERANGE = 0x4020940d - FLUSHO = 0x1000 - FS_IOC_ENABLE_VERITY = 0x40806685 - FS_IOC_GETFLAGS = 0x80086601 -+ FS_IOC_GET_ENCRYPTION_NONCE = 0x8010661b - FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615 - FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614 -+ FS_IOC_SETFLAGS = 0x40086602 - FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613 - F_GETLK = 0x5 - F_GETLK64 = 0x5 -@@ -88,6 +95,9 @@ const ( - F_SETOWN = 0x8 - F_UNLCK = 0x2 - F_WRLCK = 0x1 -+ HIDIOCGRAWINFO = 0x80084803 -+ HIDIOCGRDESC = 0x90044802 -+ HIDIOCGRDESCSIZE = 0x80044801 - HUPCL = 0x400 - ICANON = 0x2 - IEXTEN = 0x8000 -@@ -113,6 +123,19 @@ const ( - MCL_CURRENT = 0x1 - MCL_FUTURE = 0x2 - MCL_ONFAULT = 0x4 -+ MEMERASE = 0x40084d02 -+ MEMERASE64 = 0x40104d14 -+ MEMGETBADBLOCK = 0x40084d0b -+ MEMGETINFO = 0x80204d01 -+ MEMGETOOBSEL = 0x80c84d0a -+ MEMGETREGIONCOUNT = 0x80044d07 -+ MEMISLOCKED = 0x80084d17 -+ MEMLOCK = 0x40084d05 -+ MEMREADOOB = 0xc0104d04 -+ MEMSETBADBLOCK = 0x40084d0c -+ MEMUNLOCK = 0x40084d06 -+ MEMWRITEOOB = 0xc0104d03 -+ MTDFILEMODE = 0x4d13 - NFDBITS = 0x40 - NLDLY = 0x100 - NOFLSH = 0x80 -@@ -122,6 +145,11 @@ const ( - NS_GET_USERNS = 0xb701 - OLCUC = 0x2 - ONLCR = 0x4 -+ OTPERASE = 0x400c4d19 -+ OTPGETREGIONCOUNT = 0x40044d0e -+ OTPGETREGIONINFO = 0x400c4d0f -+ OTPLOCK = 0x800c4d10 -+ OTPSELECT = 0x80044d0d - O_APPEND = 0x400 - O_ASYNC = 0x2000 - O_CLOEXEC = 0x80000 -@@ -159,6 +187,7 @@ const ( - PERF_EVENT_IOC_SET_OUTPUT = 0x2405 - PPPIOCATTACH = 0x4004743d - PPPIOCATTCHAN = 0x40047438 -+ PPPIOCBRIDGECHAN = 0x40047435 - PPPIOCCONNECT = 0x4004743a - PPPIOCDETACH = 0x4004743c - PPPIOCDISCONN = 0x7439 -@@ -186,6 +215,7 @@ const ( - PPPIOCSPASS = 0x40107447 - PPPIOCSRASYNCMAP = 0x40047454 - PPPIOCSXASYNCMAP = 0x4020744f -+ PPPIOCUNBRIDGECHAN = 0x7434 - PPPIOCXFERUNIT = 0x744e - PR_SET_PTRACER_ANY = 0xffffffffffffffff - RLIMIT_AS = 0x9 -@@ -208,6 +238,8 @@ const ( - RTC_EPOCH_SET = 0x4008700e - RTC_IRQP_READ = 0x8008700b - RTC_IRQP_SET = 0x4008700c -+ RTC_PARAM_GET = 0x40187013 -+ RTC_PARAM_SET = 0x40187014 - RTC_PIE_OFF = 0x7006 - RTC_PIE_ON = 0x7005 - RTC_PLL_GET = 0x80207011 -@@ -251,7 +283,9 @@ const ( - SO_BPF_EXTENSIONS = 0x30 - SO_BROADCAST = 0x6 - SO_BSDCOMPAT = 0xe -+ SO_BUF_LOCK = 0x48 - SO_BUSY_POLL = 0x2e -+ SO_BUSY_POLL_BUDGET = 0x46 - SO_CNX_ADVICE = 0x35 - SO_COOKIE = 0x39 - SO_DETACH_REUSEPORT_BPF = 0x44 -@@ -266,6 +300,7 @@ const ( - SO_MARK = 0x24 - SO_MAX_PACING_RATE = 0x2f - SO_MEMINFO = 0x37 -+ SO_NETNS_COOKIE = 0x47 - SO_NOFCS = 0x2b - SO_OOBINLINE = 0xa - SO_PASSCRED = 0x10 -@@ -274,13 +309,16 @@ const ( - SO_PEERCRED = 0x11 - SO_PEERGROUPS = 0x3b - SO_PEERSEC = 0x1f -+ SO_PREFER_BUSY_POLL = 0x45 - SO_PROTOCOL = 0x26 - SO_RCVBUF = 0x8 - SO_RCVBUFFORCE = 0x21 - SO_RCVLOWAT = 0x12 -+ SO_RCVMARK = 0x4b - SO_RCVTIMEO = 0x14 - SO_RCVTIMEO_NEW = 0x42 - SO_RCVTIMEO_OLD = 0x14 -+ SO_RESERVE_MEM = 0x49 - SO_REUSEADDR = 0x2 - SO_REUSEPORT = 0xf - SO_RXQ_OVFL = 0x28 -@@ -301,6 +339,7 @@ const ( - SO_TIMESTAMPNS_NEW = 0x40 - SO_TIMESTAMPNS_OLD = 0x23 - SO_TIMESTAMP_NEW = 0x3f -+ SO_TXREHASH = 0x4a - SO_TXTIME = 0x3d - SO_TYPE = 0x3 - SO_WIFI_STATUS = 0x29 -@@ -330,6 +369,8 @@ const ( - TCSETXF = 0x5434 - TCSETXW = 0x5435 - TCXONC = 0x540a -+ TFD_CLOEXEC = 0x80000 -+ TFD_NONBLOCK = 0x800 - TIOCCBRK = 0x5428 - TIOCCONS = 0x541d - TIOCEXCL = 0x540c -@@ -462,6 +503,9 @@ const ( - WORDSIZE = 0x40 - XCASE = 0x4 - XTABS = 0x1800 -+ _HIDIOCGRAWNAME = 0x80804804 -+ _HIDIOCGRAWPHYS = 0x80404805 -+ _HIDIOCGRAWUNIQ = 0x80404808 - ) - - // Errors -diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go b/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go -index 95e950f..390c01d 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_s390x.go -@@ -1,10 +1,11 @@ --// mkerrors.sh -Wall -Werror -static -I/tmp/include -fsigned-char -+// mkerrors.sh -Wall -Werror -static -I/tmp/s390x/include -fsigned-char - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build s390x && linux - // +build s390x,linux - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. --// cgo -godefs -- -Wall -Werror -static -I/tmp/include -fsigned-char _const.go -+// cgo -godefs -- -Wall -Werror -static -I/tmp/s390x/include -fsigned-char _const.go - - package unix - -@@ -59,6 +60,8 @@ const ( - CS8 = 0x30 - CSIZE = 0x30 - CSTOPB = 0x40 -+ ECCGETLAYOUT = 0x81484d11 -+ ECCGETSTATS = 0x80104d12 - ECHOCTL = 0x200 - ECHOE = 0x10 - ECHOK = 0x20 -@@ -71,11 +74,15 @@ const ( - EXTPROC = 0x10000 - FF1 = 0x8000 - FFDLY = 0x8000 -+ FICLONE = 0x40049409 -+ FICLONERANGE = 0x4020940d - FLUSHO = 0x1000 - FS_IOC_ENABLE_VERITY = 0x40806685 - FS_IOC_GETFLAGS = 0x80086601 -+ FS_IOC_GET_ENCRYPTION_NONCE = 0x8010661b - FS_IOC_GET_ENCRYPTION_POLICY = 0x400c6615 - FS_IOC_GET_ENCRYPTION_PWSALT = 0x40106614 -+ FS_IOC_SETFLAGS = 0x40086602 - FS_IOC_SET_ENCRYPTION_POLICY = 0x800c6613 - F_GETLK = 0x5 - F_GETLK64 = 0x5 -@@ -88,6 +95,9 @@ const ( - F_SETOWN = 0x8 - F_UNLCK = 0x2 - F_WRLCK = 0x1 -+ HIDIOCGRAWINFO = 0x80084803 -+ HIDIOCGRDESC = 0x90044802 -+ HIDIOCGRDESCSIZE = 0x80044801 - HUPCL = 0x400 - ICANON = 0x2 - IEXTEN = 0x8000 -@@ -113,6 +123,19 @@ const ( - MCL_CURRENT = 0x1 - MCL_FUTURE = 0x2 - MCL_ONFAULT = 0x4 -+ MEMERASE = 0x40084d02 -+ MEMERASE64 = 0x40104d14 -+ MEMGETBADBLOCK = 0x40084d0b -+ MEMGETINFO = 0x80204d01 -+ MEMGETOOBSEL = 0x80c84d0a -+ MEMGETREGIONCOUNT = 0x80044d07 -+ MEMISLOCKED = 0x80084d17 -+ MEMLOCK = 0x40084d05 -+ MEMREADOOB = 0xc0104d04 -+ MEMSETBADBLOCK = 0x40084d0c -+ MEMUNLOCK = 0x40084d06 -+ MEMWRITEOOB = 0xc0104d03 -+ MTDFILEMODE = 0x4d13 - NFDBITS = 0x40 - NLDLY = 0x100 - NOFLSH = 0x80 -@@ -122,6 +145,11 @@ const ( - NS_GET_USERNS = 0xb701 - OLCUC = 0x2 - ONLCR = 0x4 -+ OTPERASE = 0x400c4d19 -+ OTPGETREGIONCOUNT = 0x40044d0e -+ OTPGETREGIONINFO = 0x400c4d0f -+ OTPLOCK = 0x800c4d10 -+ OTPSELECT = 0x80044d0d - O_APPEND = 0x400 - O_ASYNC = 0x2000 - O_CLOEXEC = 0x80000 -@@ -159,6 +187,7 @@ const ( - PERF_EVENT_IOC_SET_OUTPUT = 0x2405 - PPPIOCATTACH = 0x4004743d - PPPIOCATTCHAN = 0x40047438 -+ PPPIOCBRIDGECHAN = 0x40047435 - PPPIOCCONNECT = 0x4004743a - PPPIOCDETACH = 0x4004743c - PPPIOCDISCONN = 0x7439 -@@ -186,6 +215,7 @@ const ( - PPPIOCSPASS = 0x40107447 - PPPIOCSRASYNCMAP = 0x40047454 - PPPIOCSXASYNCMAP = 0x4020744f -+ PPPIOCUNBRIDGECHAN = 0x7434 - PPPIOCXFERUNIT = 0x744e - PR_SET_PTRACER_ANY = 0xffffffffffffffff - PTRACE_DISABLE_TE = 0x5010 -@@ -202,6 +232,8 @@ const ( - PTRACE_POKE_SYSTEM_CALL = 0x5008 - PTRACE_PROT = 0x15 - PTRACE_SINGLEBLOCK = 0xc -+ PTRACE_SYSEMU = 0x1f -+ PTRACE_SYSEMU_SINGLESTEP = 0x20 - PTRACE_TE_ABORT_RAND = 0x5011 - PT_ACR0 = 0x90 - PT_ACR1 = 0x94 -@@ -281,6 +313,8 @@ const ( - RTC_EPOCH_SET = 0x4008700e - RTC_IRQP_READ = 0x8008700b - RTC_IRQP_SET = 0x4008700c -+ RTC_PARAM_GET = 0x40187013 -+ RTC_PARAM_SET = 0x40187014 - RTC_PIE_OFF = 0x7006 - RTC_PIE_ON = 0x7005 - RTC_PLL_GET = 0x80207011 -@@ -324,7 +358,9 @@ const ( - SO_BPF_EXTENSIONS = 0x30 - SO_BROADCAST = 0x6 - SO_BSDCOMPAT = 0xe -+ SO_BUF_LOCK = 0x48 - SO_BUSY_POLL = 0x2e -+ SO_BUSY_POLL_BUDGET = 0x46 - SO_CNX_ADVICE = 0x35 - SO_COOKIE = 0x39 - SO_DETACH_REUSEPORT_BPF = 0x44 -@@ -339,6 +375,7 @@ const ( - SO_MARK = 0x24 - SO_MAX_PACING_RATE = 0x2f - SO_MEMINFO = 0x37 -+ SO_NETNS_COOKIE = 0x47 - SO_NOFCS = 0x2b - SO_OOBINLINE = 0xa - SO_PASSCRED = 0x10 -@@ -347,13 +384,16 @@ const ( - SO_PEERCRED = 0x11 - SO_PEERGROUPS = 0x3b - SO_PEERSEC = 0x1f -+ SO_PREFER_BUSY_POLL = 0x45 - SO_PROTOCOL = 0x26 - SO_RCVBUF = 0x8 - SO_RCVBUFFORCE = 0x21 - SO_RCVLOWAT = 0x12 -+ SO_RCVMARK = 0x4b - SO_RCVTIMEO = 0x14 - SO_RCVTIMEO_NEW = 0x42 - SO_RCVTIMEO_OLD = 0x14 -+ SO_RESERVE_MEM = 0x49 - SO_REUSEADDR = 0x2 - SO_REUSEPORT = 0xf - SO_RXQ_OVFL = 0x28 -@@ -374,6 +414,7 @@ const ( - SO_TIMESTAMPNS_NEW = 0x40 - SO_TIMESTAMPNS_OLD = 0x23 - SO_TIMESTAMP_NEW = 0x3f -+ SO_TXREHASH = 0x4a - SO_TXTIME = 0x3d - SO_TYPE = 0x3 - SO_WIFI_STATUS = 0x29 -@@ -403,6 +444,8 @@ const ( - TCSETXF = 0x5434 - TCSETXW = 0x5435 - TCXONC = 0x540a -+ TFD_CLOEXEC = 0x80000 -+ TFD_NONBLOCK = 0x800 - TIOCCBRK = 0x5428 - TIOCCONS = 0x541d - TIOCEXCL = 0x540c -@@ -535,6 +578,9 @@ const ( - WORDSIZE = 0x40 - XCASE = 0x4 - XTABS = 0x1800 -+ _HIDIOCGRAWNAME = 0x80804804 -+ _HIDIOCGRAWPHYS = 0x80404805 -+ _HIDIOCGRAWUNIQ = 0x80404808 - ) - - // Errors -diff --git a/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go b/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go -index 079762f..98a6e5f 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go -@@ -1,10 +1,11 @@ --// mkerrors.sh -Wall -Werror -static -I/tmp/include -+// mkerrors.sh -Wall -Werror -static -I/tmp/sparc64/include - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build sparc64 && linux - // +build sparc64,linux - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. --// cgo -godefs -- -Wall -Werror -static -I/tmp/include _const.go -+// cgo -godefs -- -Wall -Werror -static -I/tmp/sparc64/include _const.go - - package unix - -@@ -62,6 +63,8 @@ const ( - CS8 = 0x30 - CSIZE = 0x30 - CSTOPB = 0x40 -+ ECCGETLAYOUT = 0x41484d11 -+ ECCGETSTATS = 0x40104d12 - ECHOCTL = 0x200 - ECHOE = 0x10 - ECHOK = 0x20 -@@ -75,11 +78,15 @@ const ( - EXTPROC = 0x10000 - FF1 = 0x8000 - FFDLY = 0x8000 -+ FICLONE = 0x80049409 -+ FICLONERANGE = 0x8020940d - FLUSHO = 0x1000 - FS_IOC_ENABLE_VERITY = 0x80806685 - FS_IOC_GETFLAGS = 0x40086601 -+ FS_IOC_GET_ENCRYPTION_NONCE = 0x4010661b - FS_IOC_GET_ENCRYPTION_POLICY = 0x800c6615 - FS_IOC_GET_ENCRYPTION_PWSALT = 0x80106614 -+ FS_IOC_SETFLAGS = 0x80086602 - FS_IOC_SET_ENCRYPTION_POLICY = 0x400c6613 - F_GETLK = 0x7 - F_GETLK64 = 0x7 -@@ -92,6 +99,9 @@ const ( - F_SETOWN = 0x6 - F_UNLCK = 0x3 - F_WRLCK = 0x2 -+ HIDIOCGRAWINFO = 0x40084803 -+ HIDIOCGRDESC = 0x50044802 -+ HIDIOCGRDESCSIZE = 0x40044801 - HUPCL = 0x400 - ICANON = 0x2 - IEXTEN = 0x8000 -@@ -118,6 +128,19 @@ const ( - MCL_CURRENT = 0x2000 - MCL_FUTURE = 0x4000 - MCL_ONFAULT = 0x8000 -+ MEMERASE = 0x80084d02 -+ MEMERASE64 = 0x80104d14 -+ MEMGETBADBLOCK = 0x80084d0b -+ MEMGETINFO = 0x40204d01 -+ MEMGETOOBSEL = 0x40c84d0a -+ MEMGETREGIONCOUNT = 0x40044d07 -+ MEMISLOCKED = 0x40084d17 -+ MEMLOCK = 0x80084d05 -+ MEMREADOOB = 0xc0104d04 -+ MEMSETBADBLOCK = 0x80084d0c -+ MEMUNLOCK = 0x80084d06 -+ MEMWRITEOOB = 0xc0104d03 -+ MTDFILEMODE = 0x20004d13 - NFDBITS = 0x40 - NLDLY = 0x100 - NOFLSH = 0x80 -@@ -127,6 +150,11 @@ const ( - NS_GET_USERNS = 0x2000b701 - OLCUC = 0x2 - ONLCR = 0x4 -+ OTPERASE = 0x800c4d19 -+ OTPGETREGIONCOUNT = 0x80044d0e -+ OTPGETREGIONINFO = 0x800c4d0f -+ OTPLOCK = 0x400c4d10 -+ OTPSELECT = 0x40044d0d - O_APPEND = 0x8 - O_ASYNC = 0x40 - O_CLOEXEC = 0x400000 -@@ -164,6 +192,7 @@ const ( - PERF_EVENT_IOC_SET_OUTPUT = 0x20002405 - PPPIOCATTACH = 0x8004743d - PPPIOCATTCHAN = 0x80047438 -+ PPPIOCBRIDGECHAN = 0x80047435 - PPPIOCCONNECT = 0x8004743a - PPPIOCDETACH = 0x8004743c - PPPIOCDISCONN = 0x20007439 -@@ -191,6 +220,7 @@ const ( - PPPIOCSPASS = 0x80107447 - PPPIOCSRASYNCMAP = 0x80047454 - PPPIOCSXASYNCMAP = 0x8020744f -+ PPPIOCUNBRIDGECHAN = 0x20007434 - PPPIOCXFERUNIT = 0x2000744e - PR_SET_PTRACER_ANY = 0xffffffffffffffff - PTRACE_GETFPAREGS = 0x14 -@@ -274,6 +304,8 @@ const ( - RTC_EPOCH_SET = 0x8008700e - RTC_IRQP_READ = 0x4008700b - RTC_IRQP_SET = 0x8008700c -+ RTC_PARAM_GET = 0x80187013 -+ RTC_PARAM_SET = 0x80187014 - RTC_PIE_OFF = 0x20007006 - RTC_PIE_ON = 0x20007005 - RTC_PLL_GET = 0x40207011 -@@ -317,7 +349,9 @@ const ( - SO_BPF_EXTENSIONS = 0x32 - SO_BROADCAST = 0x20 - SO_BSDCOMPAT = 0x400 -+ SO_BUF_LOCK = 0x51 - SO_BUSY_POLL = 0x30 -+ SO_BUSY_POLL_BUDGET = 0x49 - SO_CNX_ADVICE = 0x37 - SO_COOKIE = 0x3b - SO_DETACH_REUSEPORT_BPF = 0x47 -@@ -332,6 +366,7 @@ const ( - SO_MARK = 0x22 - SO_MAX_PACING_RATE = 0x31 - SO_MEMINFO = 0x39 -+ SO_NETNS_COOKIE = 0x50 - SO_NOFCS = 0x27 - SO_OOBINLINE = 0x100 - SO_PASSCRED = 0x2 -@@ -340,13 +375,16 @@ const ( - SO_PEERCRED = 0x40 - SO_PEERGROUPS = 0x3d - SO_PEERSEC = 0x1e -+ SO_PREFER_BUSY_POLL = 0x48 - SO_PROTOCOL = 0x1028 - SO_RCVBUF = 0x1002 - SO_RCVBUFFORCE = 0x100b - SO_RCVLOWAT = 0x800 -+ SO_RCVMARK = 0x54 - SO_RCVTIMEO = 0x2000 - SO_RCVTIMEO_NEW = 0x44 - SO_RCVTIMEO_OLD = 0x2000 -+ SO_RESERVE_MEM = 0x52 - SO_REUSEADDR = 0x4 - SO_REUSEPORT = 0x200 - SO_RXQ_OVFL = 0x24 -@@ -367,6 +405,7 @@ const ( - SO_TIMESTAMPNS_NEW = 0x42 - SO_TIMESTAMPNS_OLD = 0x21 - SO_TIMESTAMP_NEW = 0x46 -+ SO_TXREHASH = 0x53 - SO_TXTIME = 0x3f - SO_TYPE = 0x1008 - SO_WIFI_STATUS = 0x25 -@@ -392,6 +431,8 @@ const ( - TCSETSW = 0x8024540a - TCSETSW2 = 0x802c540e - TCXONC = 0x20005406 -+ TFD_CLOEXEC = 0x400000 -+ TFD_NONBLOCK = 0x4000 - TIOCCBRK = 0x2000747a - TIOCCONS = 0x20007424 - TIOCEXCL = 0x2000740d -@@ -525,6 +566,9 @@ const ( - WORDSIZE = 0x40 - XCASE = 0x4 - XTABS = 0x1800 -+ _HIDIOCGRAWNAME = 0x40804804 -+ _HIDIOCGRAWPHYS = 0x40404805 -+ _HIDIOCGRAWUNIQ = 0x40404808 - __TIOCFLUSH = 0x80047410 - ) - -diff --git a/vendor/golang.org/x/sys/unix/zerrors_netbsd_386.go b/vendor/golang.org/x/sys/unix/zerrors_netbsd_386.go -index 96b9b8a..72f7420 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_netbsd_386.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_netbsd_386.go -@@ -1,6 +1,7 @@ - // mkerrors.sh -m32 - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build 386 && netbsd - // +build 386,netbsd - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. -@@ -158,6 +159,12 @@ const ( - CLONE_SIGHAND = 0x800 - CLONE_VFORK = 0x4000 - CLONE_VM = 0x100 -+ CPUSTATES = 0x5 -+ CP_IDLE = 0x4 -+ CP_INTR = 0x3 -+ CP_NICE = 0x1 -+ CP_SYS = 0x2 -+ CP_USER = 0x0 - CREAD = 0x800 - CRTSCTS = 0x10000 - CS5 = 0x0 -diff --git a/vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go -index ed522a8..8d4eb0c 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go -@@ -1,6 +1,7 @@ - // mkerrors.sh -m64 - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build amd64 && netbsd - // +build amd64,netbsd - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. -@@ -158,6 +159,12 @@ const ( - CLONE_SIGHAND = 0x800 - CLONE_VFORK = 0x4000 - CLONE_VM = 0x100 -+ CPUSTATES = 0x5 -+ CP_IDLE = 0x4 -+ CP_INTR = 0x3 -+ CP_NICE = 0x1 -+ CP_SYS = 0x2 -+ CP_USER = 0x0 - CREAD = 0x800 - CRTSCTS = 0x10000 - CS5 = 0x0 -diff --git a/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm.go b/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm.go -index c8d36fe..9eef974 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm.go -@@ -1,6 +1,7 @@ - // mkerrors.sh -marm - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build arm && netbsd - // +build arm,netbsd - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. -@@ -150,6 +151,12 @@ const ( - BRKINT = 0x2 - CFLUSH = 0xf - CLOCAL = 0x8000 -+ CPUSTATES = 0x5 -+ CP_IDLE = 0x4 -+ CP_INTR = 0x3 -+ CP_NICE = 0x1 -+ CP_SYS = 0x2 -+ CP_USER = 0x0 - CREAD = 0x800 - CRTSCTS = 0x10000 - CS5 = 0x0 -diff --git a/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm64.go b/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm64.go -index f1c146a..3b62ba1 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm64.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_netbsd_arm64.go -@@ -1,6 +1,7 @@ - // mkerrors.sh -m64 - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build arm64 && netbsd - // +build arm64,netbsd - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. -@@ -158,6 +159,12 @@ const ( - CLONE_SIGHAND = 0x800 - CLONE_VFORK = 0x4000 - CLONE_VM = 0x100 -+ CPUSTATES = 0x5 -+ CP_IDLE = 0x4 -+ CP_INTR = 0x3 -+ CP_NICE = 0x1 -+ CP_SYS = 0x2 -+ CP_USER = 0x0 - CREAD = 0x800 - CRTSCTS = 0x10000 - CS5 = 0x0 -diff --git a/vendor/golang.org/x/sys/unix/zerrors_openbsd_386.go b/vendor/golang.org/x/sys/unix/zerrors_openbsd_386.go -index 5402bd5..6d56edc 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_openbsd_386.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_openbsd_386.go -@@ -1,6 +1,7 @@ - // mkerrors.sh -m32 - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build 386 && openbsd - // +build 386,openbsd - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. -@@ -146,6 +147,13 @@ const ( - BRKINT = 0x2 - CFLUSH = 0xf - CLOCAL = 0x8000 -+ CPUSTATES = 0x6 -+ CP_IDLE = 0x5 -+ CP_INTR = 0x4 -+ CP_NICE = 0x1 -+ CP_SPIN = 0x3 -+ CP_SYS = 0x2 -+ CP_USER = 0x0 - CREAD = 0x800 - CRTSCTS = 0x10000 - CS5 = 0x0 -@@ -1012,7 +1020,10 @@ const ( - RLIMIT_CPU = 0x0 - RLIMIT_DATA = 0x2 - RLIMIT_FSIZE = 0x1 -+ RLIMIT_MEMLOCK = 0x6 - RLIMIT_NOFILE = 0x8 -+ RLIMIT_NPROC = 0x7 -+ RLIMIT_RSS = 0x5 - RLIMIT_STACK = 0x3 - RLIM_INFINITY = 0x7fffffffffffffff - RTAX_AUTHOR = 0x6 -diff --git a/vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go -index ffaf2d2..25cb609 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go -@@ -1,6 +1,7 @@ - // mkerrors.sh -m64 - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build amd64 && openbsd - // +build amd64,openbsd - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. -@@ -153,6 +154,13 @@ const ( - CLOCK_REALTIME = 0x0 - CLOCK_THREAD_CPUTIME_ID = 0x4 - CLOCK_UPTIME = 0x5 -+ CPUSTATES = 0x6 -+ CP_IDLE = 0x5 -+ CP_INTR = 0x4 -+ CP_NICE = 0x1 -+ CP_SPIN = 0x3 -+ CP_SYS = 0x2 -+ CP_USER = 0x0 - CREAD = 0x800 - CRTSCTS = 0x10000 - CS5 = 0x0 -diff --git a/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm.go b/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm.go -index 7aa796a..aef6c08 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm.go -@@ -1,6 +1,7 @@ - // mkerrors.sh - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build arm && openbsd - // +build arm,openbsd - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. -@@ -146,6 +147,13 @@ const ( - BRKINT = 0x2 - CFLUSH = 0xf - CLOCAL = 0x8000 -+ CPUSTATES = 0x6 -+ CP_IDLE = 0x5 -+ CP_INTR = 0x4 -+ CP_NICE = 0x1 -+ CP_SPIN = 0x3 -+ CP_SYS = 0x2 -+ CP_USER = 0x0 - CREAD = 0x800 - CRTSCTS = 0x10000 - CS5 = 0x0 -@@ -1012,7 +1020,10 @@ const ( - RLIMIT_CPU = 0x0 - RLIMIT_DATA = 0x2 - RLIMIT_FSIZE = 0x1 -+ RLIMIT_MEMLOCK = 0x6 - RLIMIT_NOFILE = 0x8 -+ RLIMIT_NPROC = 0x7 -+ RLIMIT_RSS = 0x5 - RLIMIT_STACK = 0x3 - RLIM_INFINITY = 0x7fffffffffffffff - RTAX_AUTHOR = 0x6 -diff --git a/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm64.go b/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm64.go -index 1792d3f..90de7df 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm64.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_openbsd_arm64.go -@@ -1,6 +1,7 @@ - // mkerrors.sh -m64 - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build arm64 && openbsd - // +build arm64,openbsd - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. -@@ -156,6 +157,13 @@ const ( - CLOCK_REALTIME = 0x0 - CLOCK_THREAD_CPUTIME_ID = 0x4 - CLOCK_UPTIME = 0x5 -+ CPUSTATES = 0x6 -+ CP_IDLE = 0x5 -+ CP_INTR = 0x4 -+ CP_NICE = 0x1 -+ CP_SPIN = 0x3 -+ CP_SYS = 0x2 -+ CP_USER = 0x0 - CREAD = 0x800 - CRTSCTS = 0x10000 - CS5 = 0x0 -diff --git a/vendor/golang.org/x/sys/unix/zerrors_darwin_386.go b/vendor/golang.org/x/sys/unix/zerrors_openbsd_mips64.go -similarity index 52% -rename from vendor/golang.org/x/sys/unix/zerrors_darwin_386.go -rename to vendor/golang.org/x/sys/unix/zerrors_openbsd_mips64.go -index 6217cdb..f1154ff 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_darwin_386.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_openbsd_mips64.go -@@ -1,10 +1,11 @@ --// mkerrors.sh -m32 -+// mkerrors.sh -m64 - // Code generated by the command above; see README.md. DO NOT EDIT. - --// +build 386,darwin -+//go:build mips64 && openbsd -+// +build mips64,openbsd - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. --// cgo -godefs -- -m32 _const.go -+// cgo -godefs -- -m64 _const.go - - package unix - -@@ -12,6 +13,7 @@ import "syscall" - - const ( - AF_APPLETALK = 0x10 -+ AF_BLUETOOTH = 0x20 - AF_CCITT = 0xa - AF_CHAOS = 0x5 - AF_CNT = 0x15 -@@ -19,116 +21,36 @@ const ( - AF_DATAKIT = 0x9 - AF_DECnet = 0xc - AF_DLI = 0xd -- AF_E164 = 0x1c -+ AF_E164 = 0x1a - AF_ECMA = 0x8 -+ AF_ENCAP = 0x1c - AF_HYLINK = 0xf -- AF_IEEE80211 = 0x25 - AF_IMPLINK = 0x3 - AF_INET = 0x2 -- AF_INET6 = 0x1e -+ AF_INET6 = 0x18 - AF_IPX = 0x17 -- AF_ISDN = 0x1c -+ AF_ISDN = 0x1a - AF_ISO = 0x7 -+ AF_KEY = 0x1e - AF_LAT = 0xe - AF_LINK = 0x12 - AF_LOCAL = 0x1 -- AF_MAX = 0x28 -- AF_NATM = 0x1f -- AF_NDRV = 0x1b -- AF_NETBIOS = 0x21 -+ AF_MAX = 0x24 -+ AF_MPLS = 0x21 -+ AF_NATM = 0x1b - AF_NS = 0x6 - AF_OSI = 0x7 -- AF_PPP = 0x22 - AF_PUP = 0x4 -- AF_RESERVED_36 = 0x24 - AF_ROUTE = 0x11 -- AF_SIP = 0x18 -+ AF_SIP = 0x1d - AF_SNA = 0xb -- AF_SYSTEM = 0x20 - AF_UNIX = 0x1 - AF_UNSPEC = 0x0 -- AF_UTUN = 0x26 - ALTWERASE = 0x200 -- ATTR_BIT_MAP_COUNT = 0x5 -- ATTR_CMN_ACCESSMASK = 0x20000 -- ATTR_CMN_ACCTIME = 0x1000 -- ATTR_CMN_ADDEDTIME = 0x10000000 -- ATTR_CMN_BKUPTIME = 0x2000 -- ATTR_CMN_CHGTIME = 0x800 -- ATTR_CMN_CRTIME = 0x200 -- ATTR_CMN_DATA_PROTECT_FLAGS = 0x40000000 -- ATTR_CMN_DEVID = 0x2 -- ATTR_CMN_DOCUMENT_ID = 0x100000 -- ATTR_CMN_ERROR = 0x20000000 -- ATTR_CMN_EXTENDED_SECURITY = 0x400000 -- ATTR_CMN_FILEID = 0x2000000 -- ATTR_CMN_FLAGS = 0x40000 -- ATTR_CMN_FNDRINFO = 0x4000 -- ATTR_CMN_FSID = 0x4 -- ATTR_CMN_FULLPATH = 0x8000000 -- ATTR_CMN_GEN_COUNT = 0x80000 -- ATTR_CMN_GRPID = 0x10000 -- ATTR_CMN_GRPUUID = 0x1000000 -- ATTR_CMN_MODTIME = 0x400 -- ATTR_CMN_NAME = 0x1 -- ATTR_CMN_NAMEDATTRCOUNT = 0x80000 -- ATTR_CMN_NAMEDATTRLIST = 0x100000 -- ATTR_CMN_OBJID = 0x20 -- ATTR_CMN_OBJPERMANENTID = 0x40 -- ATTR_CMN_OBJTAG = 0x10 -- ATTR_CMN_OBJTYPE = 0x8 -- ATTR_CMN_OWNERID = 0x8000 -- ATTR_CMN_PARENTID = 0x4000000 -- ATTR_CMN_PAROBJID = 0x80 -- ATTR_CMN_RETURNED_ATTRS = 0x80000000 -- ATTR_CMN_SCRIPT = 0x100 -- ATTR_CMN_SETMASK = 0x41c7ff00 -- ATTR_CMN_USERACCESS = 0x200000 -- ATTR_CMN_UUID = 0x800000 -- ATTR_CMN_VALIDMASK = 0xffffffff -- ATTR_CMN_VOLSETMASK = 0x6700 -- ATTR_FILE_ALLOCSIZE = 0x4 -- ATTR_FILE_CLUMPSIZE = 0x10 -- ATTR_FILE_DATAALLOCSIZE = 0x400 -- ATTR_FILE_DATAEXTENTS = 0x800 -- ATTR_FILE_DATALENGTH = 0x200 -- ATTR_FILE_DEVTYPE = 0x20 -- ATTR_FILE_FILETYPE = 0x40 -- ATTR_FILE_FORKCOUNT = 0x80 -- ATTR_FILE_FORKLIST = 0x100 -- ATTR_FILE_IOBLOCKSIZE = 0x8 -- ATTR_FILE_LINKCOUNT = 0x1 -- ATTR_FILE_RSRCALLOCSIZE = 0x2000 -- ATTR_FILE_RSRCEXTENTS = 0x4000 -- ATTR_FILE_RSRCLENGTH = 0x1000 -- ATTR_FILE_SETMASK = 0x20 -- ATTR_FILE_TOTALSIZE = 0x2 -- ATTR_FILE_VALIDMASK = 0x37ff -- ATTR_VOL_ALLOCATIONCLUMP = 0x40 -- ATTR_VOL_ATTRIBUTES = 0x40000000 -- ATTR_VOL_CAPABILITIES = 0x20000 -- ATTR_VOL_DIRCOUNT = 0x400 -- ATTR_VOL_ENCODINGSUSED = 0x10000 -- ATTR_VOL_FILECOUNT = 0x200 -- ATTR_VOL_FSTYPE = 0x1 -- ATTR_VOL_INFO = 0x80000000 -- ATTR_VOL_IOBLOCKSIZE = 0x80 -- ATTR_VOL_MAXOBJCOUNT = 0x800 -- ATTR_VOL_MINALLOCATION = 0x20 -- ATTR_VOL_MOUNTEDDEVICE = 0x8000 -- ATTR_VOL_MOUNTFLAGS = 0x4000 -- ATTR_VOL_MOUNTPOINT = 0x1000 -- ATTR_VOL_NAME = 0x2000 -- ATTR_VOL_OBJCOUNT = 0x100 -- ATTR_VOL_QUOTA_SIZE = 0x10000000 -- ATTR_VOL_RESERVED_SIZE = 0x20000000 -- ATTR_VOL_SETMASK = 0x80002000 -- ATTR_VOL_SIGNATURE = 0x2 -- ATTR_VOL_SIZE = 0x4 -- ATTR_VOL_SPACEAVAIL = 0x10 -- ATTR_VOL_SPACEFREE = 0x8 -- ATTR_VOL_UUID = 0x40000 -- ATTR_VOL_VALIDMASK = 0xf007ffff -+ ARPHRD_ETHER = 0x1 -+ ARPHRD_FRELAY = 0xf -+ ARPHRD_IEEE1394 = 0x18 -+ ARPHRD_IEEE802 = 0x6 - B0 = 0x0 - B110 = 0x6e - B115200 = 0x1c200 -@@ -154,25 +76,28 @@ const ( - B9600 = 0x2580 - BIOCFLUSH = 0x20004268 - BIOCGBLEN = 0x40044266 -+ BIOCGDIRFILT = 0x4004427c - BIOCGDLT = 0x4004426a -- BIOCGDLTLIST = 0xc00c4279 -+ BIOCGDLTLIST = 0xc010427b - BIOCGETIF = 0x4020426b -+ BIOCGFILDROP = 0x40044278 - BIOCGHDRCMPLT = 0x40044274 -- BIOCGRSIG = 0x40044272 -- BIOCGRTIMEOUT = 0x4008426e -- BIOCGSEESENT = 0x40044276 -+ BIOCGRSIG = 0x40044273 -+ BIOCGRTIMEOUT = 0x4010426e - BIOCGSTATS = 0x4008426f - BIOCIMMEDIATE = 0x80044270 -+ BIOCLOCK = 0x20004276 - BIOCPROMISC = 0x20004269 - BIOCSBLEN = 0xc0044266 -- BIOCSDLT = 0x80044278 -- BIOCSETF = 0x80084267 -- BIOCSETFNR = 0x8008427e -+ BIOCSDIRFILT = 0x8004427d -+ BIOCSDLT = 0x8004427a -+ BIOCSETF = 0x80104267 - BIOCSETIF = 0x8020426c -+ BIOCSETWF = 0x80104277 -+ BIOCSFILDROP = 0x80044279 - BIOCSHDRCMPLT = 0x80044275 -- BIOCSRSIG = 0x80044273 -- BIOCSRTIMEOUT = 0x8008426d -- BIOCSSEESENT = 0x80044277 -+ BIOCSRSIG = 0x80044272 -+ BIOCSRTIMEOUT = 0x8010426d - BIOCVERSION = 0x40044271 - BPF_A = 0x10 - BPF_ABS = 0x20 -@@ -181,7 +106,12 @@ const ( - BPF_ALU = 0x4 - BPF_AND = 0x50 - BPF_B = 0x10 -+ BPF_DIRECTION_IN = 0x1 -+ BPF_DIRECTION_OUT = 0x2 - BPF_DIV = 0x30 -+ BPF_FILDROP_CAPTURE = 0x1 -+ BPF_FILDROP_DROP = 0x2 -+ BPF_FILDROP_PASS = 0x0 - BPF_H = 0x8 - BPF_IMM = 0x0 - BPF_IND = 0x40 -@@ -197,7 +127,7 @@ const ( - BPF_LEN = 0x80 - BPF_LSH = 0x60 - BPF_MAJOR_VERSION = 0x1 -- BPF_MAXBUFSIZE = 0x80000 -+ BPF_MAXBUFSIZE = 0x200000 - BPF_MAXINSNS = 0x200 - BPF_MEM = 0x60 - BPF_MEMWORDS = 0x10 -@@ -219,33 +149,30 @@ const ( - BPF_W = 0x0 - BPF_X = 0x8 - BRKINT = 0x2 -- BS0 = 0x0 -- BS1 = 0x8000 -- BSDLY = 0x8000 - CFLUSH = 0xf - CLOCAL = 0x8000 -- CLOCK_MONOTONIC = 0x6 -- CLOCK_MONOTONIC_RAW = 0x4 -- CLOCK_MONOTONIC_RAW_APPROX = 0x5 -- CLOCK_PROCESS_CPUTIME_ID = 0xc -+ CLOCK_BOOTTIME = 0x6 -+ CLOCK_MONOTONIC = 0x3 -+ CLOCK_PROCESS_CPUTIME_ID = 0x2 - CLOCK_REALTIME = 0x0 -- CLOCK_THREAD_CPUTIME_ID = 0x10 -- CLOCK_UPTIME_RAW = 0x8 -- CLOCK_UPTIME_RAW_APPROX = 0x9 -- CR0 = 0x0 -- CR1 = 0x1000 -- CR2 = 0x2000 -- CR3 = 0x3000 -- CRDLY = 0x3000 -+ CLOCK_THREAD_CPUTIME_ID = 0x4 -+ CLOCK_UPTIME = 0x5 -+ CPUSTATES = 0x6 -+ CP_IDLE = 0x5 -+ CP_INTR = 0x4 -+ CP_NICE = 0x1 -+ CP_SPIN = 0x3 -+ CP_SYS = 0x2 -+ CP_USER = 0x0 - CREAD = 0x800 -- CRTSCTS = 0x30000 -+ CRTSCTS = 0x10000 - CS5 = 0x0 - CS6 = 0x100 - CS7 = 0x200 - CS8 = 0x300 - CSIZE = 0x300 - CSTART = 0x11 -- CSTATUS = 0x14 -+ CSTATUS = 0xff - CSTOP = 0x13 - CSTOPB = 0x400 - CSUSP = 0x1a -@@ -253,149 +180,92 @@ const ( - CTL_KERN = 0x1 - CTL_MAXNAME = 0xc - CTL_NET = 0x4 -- DLT_A429 = 0xb8 -- DLT_A653_ICM = 0xb9 -- DLT_AIRONET_HEADER = 0x78 -- DLT_AOS = 0xde -- DLT_APPLE_IP_OVER_IEEE1394 = 0x8a -+ DIOCADDQUEUE = 0xc110445d -+ DIOCADDRULE = 0xcd604404 -+ DIOCADDSTATE = 0xc1084425 -+ DIOCCHANGERULE = 0xcd60441a -+ DIOCCLRIFFLAG = 0xc028445a -+ DIOCCLRSRCNODES = 0x20004455 -+ DIOCCLRSTATES = 0xc0e04412 -+ DIOCCLRSTATUS = 0xc0284416 -+ DIOCGETLIMIT = 0xc0084427 -+ DIOCGETQSTATS = 0xc1204460 -+ DIOCGETQUEUE = 0xc110445f -+ DIOCGETQUEUES = 0xc110445e -+ DIOCGETRULE = 0xcd604407 -+ DIOCGETRULES = 0xcd604406 -+ DIOCGETRULESET = 0xc444443b -+ DIOCGETRULESETS = 0xc444443a -+ DIOCGETSRCNODES = 0xc0104454 -+ DIOCGETSTATE = 0xc1084413 -+ DIOCGETSTATES = 0xc0104419 -+ DIOCGETSTATUS = 0xc1e84415 -+ DIOCGETSYNFLWATS = 0xc0084463 -+ DIOCGETTIMEOUT = 0xc008441e -+ DIOCIGETIFACES = 0xc0284457 -+ DIOCKILLSRCNODES = 0xc080445b -+ DIOCKILLSTATES = 0xc0e04429 -+ DIOCNATLOOK = 0xc0504417 -+ DIOCOSFPADD = 0xc088444f -+ DIOCOSFPFLUSH = 0x2000444e -+ DIOCOSFPGET = 0xc0884450 -+ DIOCRADDADDRS = 0xc4504443 -+ DIOCRADDTABLES = 0xc450443d -+ DIOCRCLRADDRS = 0xc4504442 -+ DIOCRCLRASTATS = 0xc4504448 -+ DIOCRCLRTABLES = 0xc450443c -+ DIOCRCLRTSTATS = 0xc4504441 -+ DIOCRDELADDRS = 0xc4504444 -+ DIOCRDELTABLES = 0xc450443e -+ DIOCRGETADDRS = 0xc4504446 -+ DIOCRGETASTATS = 0xc4504447 -+ DIOCRGETTABLES = 0xc450443f -+ DIOCRGETTSTATS = 0xc4504440 -+ DIOCRINADEFINE = 0xc450444d -+ DIOCRSETADDRS = 0xc4504445 -+ DIOCRSETTFLAGS = 0xc450444a -+ DIOCRTSTADDRS = 0xc4504449 -+ DIOCSETDEBUG = 0xc0044418 -+ DIOCSETHOSTID = 0xc0044456 -+ DIOCSETIFFLAG = 0xc0284459 -+ DIOCSETLIMIT = 0xc0084428 -+ DIOCSETREASS = 0xc004445c -+ DIOCSETSTATUSIF = 0xc0284414 -+ DIOCSETSYNCOOKIES = 0xc0014462 -+ DIOCSETSYNFLWATS = 0xc0084461 -+ DIOCSETTIMEOUT = 0xc008441d -+ DIOCSTART = 0x20004401 -+ DIOCSTOP = 0x20004402 -+ DIOCXBEGIN = 0xc0104451 -+ DIOCXCOMMIT = 0xc0104452 -+ DIOCXROLLBACK = 0xc0104453 - DLT_ARCNET = 0x7 -- DLT_ARCNET_LINUX = 0x81 -- DLT_ATM_CLIP = 0x13 - DLT_ATM_RFC1483 = 0xb -- DLT_AURORA = 0x7e - DLT_AX25 = 0x3 -- DLT_AX25_KISS = 0xca -- DLT_BACNET_MS_TP = 0xa5 -- DLT_BLUETOOTH_HCI_H4 = 0xbb -- DLT_BLUETOOTH_HCI_H4_WITH_PHDR = 0xc9 -- DLT_CAN20B = 0xbe -- DLT_CAN_SOCKETCAN = 0xe3 - DLT_CHAOS = 0x5 -- DLT_CHDLC = 0x68 -- DLT_CISCO_IOS = 0x76 - DLT_C_HDLC = 0x68 -- DLT_C_HDLC_WITH_DIR = 0xcd -- DLT_DBUS = 0xe7 -- DLT_DECT = 0xdd -- DLT_DOCSIS = 0x8f -- DLT_DVB_CI = 0xeb -- DLT_ECONET = 0x73 - DLT_EN10MB = 0x1 - DLT_EN3MB = 0x2 -- DLT_ENC = 0x6d -- DLT_ERF = 0xc5 -- DLT_ERF_ETH = 0xaf -- DLT_ERF_POS = 0xb0 -- DLT_FC_2 = 0xe0 -- DLT_FC_2_WITH_FRAME_DELIMS = 0xe1 -+ DLT_ENC = 0xd - DLT_FDDI = 0xa -- DLT_FLEXRAY = 0xd2 -- DLT_FRELAY = 0x6b -- DLT_FRELAY_WITH_DIR = 0xce -- DLT_GCOM_SERIAL = 0xad -- DLT_GCOM_T1E1 = 0xac -- DLT_GPF_F = 0xab -- DLT_GPF_T = 0xaa -- DLT_GPRS_LLC = 0xa9 -- DLT_GSMTAP_ABIS = 0xda -- DLT_GSMTAP_UM = 0xd9 -- DLT_HHDLC = 0x79 -- DLT_IBM_SN = 0x92 -- DLT_IBM_SP = 0x91 - DLT_IEEE802 = 0x6 - DLT_IEEE802_11 = 0x69 - DLT_IEEE802_11_RADIO = 0x7f -- DLT_IEEE802_11_RADIO_AVS = 0xa3 -- DLT_IEEE802_15_4 = 0xc3 -- DLT_IEEE802_15_4_LINUX = 0xbf -- DLT_IEEE802_15_4_NOFCS = 0xe6 -- DLT_IEEE802_15_4_NONASK_PHY = 0xd7 -- DLT_IEEE802_16_MAC_CPS = 0xbc -- DLT_IEEE802_16_MAC_CPS_RADIO = 0xc1 -- DLT_IPFILTER = 0x74 -- DLT_IPMB = 0xc7 -- DLT_IPMB_LINUX = 0xd1 -- DLT_IPNET = 0xe2 -- DLT_IPOIB = 0xf2 -- DLT_IPV4 = 0xe4 -- DLT_IPV6 = 0xe5 -- DLT_IP_OVER_FC = 0x7a -- DLT_JUNIPER_ATM1 = 0x89 -- DLT_JUNIPER_ATM2 = 0x87 -- DLT_JUNIPER_ATM_CEMIC = 0xee -- DLT_JUNIPER_CHDLC = 0xb5 -- DLT_JUNIPER_ES = 0x84 -- DLT_JUNIPER_ETHER = 0xb2 -- DLT_JUNIPER_FIBRECHANNEL = 0xea -- DLT_JUNIPER_FRELAY = 0xb4 -- DLT_JUNIPER_GGSN = 0x85 -- DLT_JUNIPER_ISM = 0xc2 -- DLT_JUNIPER_MFR = 0x86 -- DLT_JUNIPER_MLFR = 0x83 -- DLT_JUNIPER_MLPPP = 0x82 -- DLT_JUNIPER_MONITOR = 0xa4 -- DLT_JUNIPER_PIC_PEER = 0xae -- DLT_JUNIPER_PPP = 0xb3 -- DLT_JUNIPER_PPPOE = 0xa7 -- DLT_JUNIPER_PPPOE_ATM = 0xa8 -- DLT_JUNIPER_SERVICES = 0x88 -- DLT_JUNIPER_SRX_E2E = 0xe9 -- DLT_JUNIPER_ST = 0xc8 -- DLT_JUNIPER_VP = 0xb7 -- DLT_JUNIPER_VS = 0xe8 -- DLT_LAPB_WITH_DIR = 0xcf -- DLT_LAPD = 0xcb -- DLT_LIN = 0xd4 -- DLT_LINUX_EVDEV = 0xd8 -- DLT_LINUX_IRDA = 0x90 -- DLT_LINUX_LAPD = 0xb1 -- DLT_LINUX_PPP_WITHDIRECTION = 0xa6 -- DLT_LINUX_SLL = 0x71 -- DLT_LOOP = 0x6c -- DLT_LTALK = 0x72 -- DLT_MATCHING_MAX = 0xf5 -- DLT_MATCHING_MIN = 0x68 -- DLT_MFR = 0xb6 -- DLT_MOST = 0xd3 -- DLT_MPEG_2_TS = 0xf3 -+ DLT_LOOP = 0xc - DLT_MPLS = 0xdb -- DLT_MTP2 = 0x8c -- DLT_MTP2_WITH_PHDR = 0x8b -- DLT_MTP3 = 0x8d -- DLT_MUX27010 = 0xec -- DLT_NETANALYZER = 0xf0 -- DLT_NETANALYZER_TRANSPARENT = 0xf1 -- DLT_NFC_LLCP = 0xf5 -- DLT_NFLOG = 0xef -- DLT_NG40 = 0xf4 - DLT_NULL = 0x0 -- DLT_PCI_EXP = 0x7d -+ DLT_OPENFLOW = 0x10b - DLT_PFLOG = 0x75 - DLT_PFSYNC = 0x12 -- DLT_PPI = 0xc0 - DLT_PPP = 0x9 - DLT_PPP_BSDOS = 0x10 - DLT_PPP_ETHER = 0x33 -- DLT_PPP_PPPD = 0xa6 - DLT_PPP_SERIAL = 0x32 -- DLT_PPP_WITH_DIR = 0xcc -- DLT_PPP_WITH_DIRECTION = 0xa6 -- DLT_PRISM_HEADER = 0x77 - DLT_PRONET = 0x4 -- DLT_RAIF1 = 0xc6 -- DLT_RAW = 0xc -- DLT_RIO = 0x7c -- DLT_SCCP = 0x8e -- DLT_SITA = 0xc4 -+ DLT_RAW = 0xe - DLT_SLIP = 0x8 - DLT_SLIP_BSDOS = 0xf -- DLT_STANAG_5066_D_PDU = 0xed -- DLT_SUNATM = 0x7b -- DLT_SYMANTEC_FIREWALL = 0x63 -- DLT_TZSP = 0x80 -- DLT_USB = 0xba -- DLT_USB_LINUX = 0xbd -- DLT_USB_LINUX_MMAPPED = 0xdc -+ DLT_USBPCAP = 0xf9 - DLT_USER0 = 0x93 - DLT_USER1 = 0x94 - DLT_USER10 = 0x9d -@@ -412,9 +282,6 @@ const ( - DLT_USER7 = 0x9a - DLT_USER8 = 0x9b - DLT_USER9 = 0x9c -- DLT_WIHART = 0xdf -- DLT_X2E_SERIAL = 0xd5 -- DLT_X2E_XORAYA = 0xd6 - DT_BLK = 0x6 - DT_CHR = 0x2 - DT_DIR = 0x4 -@@ -423,7 +290,6 @@ const ( - DT_REG = 0x8 - DT_SOCK = 0xc - DT_UNKNOWN = 0x0 -- DT_WHT = 0xe - ECHO = 0x8 - ECHOCTL = 0x40 - ECHOE = 0x2 -@@ -431,107 +297,260 @@ const ( - ECHOKE = 0x1 - ECHONL = 0x10 - ECHOPRT = 0x20 -+ EMT_TAGOVF = 0x1 -+ EMUL_ENABLED = 0x1 -+ EMUL_NATIVE = 0x2 -+ ENDRUNDISC = 0x9 -+ ETHERMIN = 0x2e -+ ETHERMTU = 0x5dc -+ ETHERTYPE_8023 = 0x4 -+ ETHERTYPE_AARP = 0x80f3 -+ ETHERTYPE_ACCTON = 0x8390 -+ ETHERTYPE_AEONIC = 0x8036 -+ ETHERTYPE_ALPHA = 0x814a -+ ETHERTYPE_AMBER = 0x6008 -+ ETHERTYPE_AMOEBA = 0x8145 -+ ETHERTYPE_AOE = 0x88a2 -+ ETHERTYPE_APOLLO = 0x80f7 -+ ETHERTYPE_APOLLODOMAIN = 0x8019 -+ ETHERTYPE_APPLETALK = 0x809b -+ ETHERTYPE_APPLITEK = 0x80c7 -+ ETHERTYPE_ARGONAUT = 0x803a -+ ETHERTYPE_ARP = 0x806 -+ ETHERTYPE_AT = 0x809b -+ ETHERTYPE_ATALK = 0x809b -+ ETHERTYPE_ATOMIC = 0x86df -+ ETHERTYPE_ATT = 0x8069 -+ ETHERTYPE_ATTSTANFORD = 0x8008 -+ ETHERTYPE_AUTOPHON = 0x806a -+ ETHERTYPE_AXIS = 0x8856 -+ ETHERTYPE_BCLOOP = 0x9003 -+ ETHERTYPE_BOFL = 0x8102 -+ ETHERTYPE_CABLETRON = 0x7034 -+ ETHERTYPE_CHAOS = 0x804 -+ ETHERTYPE_COMDESIGN = 0x806c -+ ETHERTYPE_COMPUGRAPHIC = 0x806d -+ ETHERTYPE_COUNTERPOINT = 0x8062 -+ ETHERTYPE_CRONUS = 0x8004 -+ ETHERTYPE_CRONUSVLN = 0x8003 -+ ETHERTYPE_DCA = 0x1234 -+ ETHERTYPE_DDE = 0x807b -+ ETHERTYPE_DEBNI = 0xaaaa -+ ETHERTYPE_DECAM = 0x8048 -+ ETHERTYPE_DECCUST = 0x6006 -+ ETHERTYPE_DECDIAG = 0x6005 -+ ETHERTYPE_DECDNS = 0x803c -+ ETHERTYPE_DECDTS = 0x803e -+ ETHERTYPE_DECEXPER = 0x6000 -+ ETHERTYPE_DECLAST = 0x8041 -+ ETHERTYPE_DECLTM = 0x803f -+ ETHERTYPE_DECMUMPS = 0x6009 -+ ETHERTYPE_DECNETBIOS = 0x8040 -+ ETHERTYPE_DELTACON = 0x86de -+ ETHERTYPE_DIDDLE = 0x4321 -+ ETHERTYPE_DLOG1 = 0x660 -+ ETHERTYPE_DLOG2 = 0x661 -+ ETHERTYPE_DN = 0x6003 -+ ETHERTYPE_DOGFIGHT = 0x1989 -+ ETHERTYPE_DSMD = 0x8039 -+ ETHERTYPE_ECMA = 0x803 -+ ETHERTYPE_ENCRYPT = 0x803d -+ ETHERTYPE_ES = 0x805d -+ ETHERTYPE_EXCELAN = 0x8010 -+ ETHERTYPE_EXPERDATA = 0x8049 -+ ETHERTYPE_FLIP = 0x8146 -+ ETHERTYPE_FLOWCONTROL = 0x8808 -+ ETHERTYPE_FRARP = 0x808 -+ ETHERTYPE_GENDYN = 0x8068 -+ ETHERTYPE_HAYES = 0x8130 -+ ETHERTYPE_HIPPI_FP = 0x8180 -+ ETHERTYPE_HITACHI = 0x8820 -+ ETHERTYPE_HP = 0x8005 -+ ETHERTYPE_IEEEPUP = 0xa00 -+ ETHERTYPE_IEEEPUPAT = 0xa01 -+ ETHERTYPE_IMLBL = 0x4c42 -+ ETHERTYPE_IMLBLDIAG = 0x424c -+ ETHERTYPE_IP = 0x800 -+ ETHERTYPE_IPAS = 0x876c -+ ETHERTYPE_IPV6 = 0x86dd -+ ETHERTYPE_IPX = 0x8137 -+ ETHERTYPE_IPXNEW = 0x8037 -+ ETHERTYPE_KALPANA = 0x8582 -+ ETHERTYPE_LANBRIDGE = 0x8038 -+ ETHERTYPE_LANPROBE = 0x8888 -+ ETHERTYPE_LAT = 0x6004 -+ ETHERTYPE_LBACK = 0x9000 -+ ETHERTYPE_LITTLE = 0x8060 -+ ETHERTYPE_LLDP = 0x88cc -+ ETHERTYPE_LOGICRAFT = 0x8148 -+ ETHERTYPE_LOOPBACK = 0x9000 -+ ETHERTYPE_MACSEC = 0x88e5 -+ ETHERTYPE_MATRA = 0x807a -+ ETHERTYPE_MAX = 0xffff -+ ETHERTYPE_MERIT = 0x807c -+ ETHERTYPE_MICP = 0x873a -+ ETHERTYPE_MOPDL = 0x6001 -+ ETHERTYPE_MOPRC = 0x6002 -+ ETHERTYPE_MOTOROLA = 0x818d -+ ETHERTYPE_MPLS = 0x8847 -+ ETHERTYPE_MPLS_MCAST = 0x8848 -+ ETHERTYPE_MUMPS = 0x813f -+ ETHERTYPE_NBPCC = 0x3c04 -+ ETHERTYPE_NBPCLAIM = 0x3c09 -+ ETHERTYPE_NBPCLREQ = 0x3c05 -+ ETHERTYPE_NBPCLRSP = 0x3c06 -+ ETHERTYPE_NBPCREQ = 0x3c02 -+ ETHERTYPE_NBPCRSP = 0x3c03 -+ ETHERTYPE_NBPDG = 0x3c07 -+ ETHERTYPE_NBPDGB = 0x3c08 -+ ETHERTYPE_NBPDLTE = 0x3c0a -+ ETHERTYPE_NBPRAR = 0x3c0c -+ ETHERTYPE_NBPRAS = 0x3c0b -+ ETHERTYPE_NBPRST = 0x3c0d -+ ETHERTYPE_NBPSCD = 0x3c01 -+ ETHERTYPE_NBPVCD = 0x3c00 -+ ETHERTYPE_NBS = 0x802 -+ ETHERTYPE_NCD = 0x8149 -+ ETHERTYPE_NESTAR = 0x8006 -+ ETHERTYPE_NETBEUI = 0x8191 -+ ETHERTYPE_NOVELL = 0x8138 -+ ETHERTYPE_NS = 0x600 -+ ETHERTYPE_NSAT = 0x601 -+ ETHERTYPE_NSCOMPAT = 0x807 -+ ETHERTYPE_NTRAILER = 0x10 -+ ETHERTYPE_OS9 = 0x7007 -+ ETHERTYPE_OS9NET = 0x7009 -+ ETHERTYPE_PACER = 0x80c6 -+ ETHERTYPE_PAE = 0x888e -+ ETHERTYPE_PBB = 0x88e7 -+ ETHERTYPE_PCS = 0x4242 -+ ETHERTYPE_PLANNING = 0x8044 -+ ETHERTYPE_PPP = 0x880b -+ ETHERTYPE_PPPOE = 0x8864 -+ ETHERTYPE_PPPOEDISC = 0x8863 -+ ETHERTYPE_PRIMENTS = 0x7031 -+ ETHERTYPE_PUP = 0x200 -+ ETHERTYPE_PUPAT = 0x200 -+ ETHERTYPE_QINQ = 0x88a8 -+ ETHERTYPE_RACAL = 0x7030 -+ ETHERTYPE_RATIONAL = 0x8150 -+ ETHERTYPE_RAWFR = 0x6559 -+ ETHERTYPE_RCL = 0x1995 -+ ETHERTYPE_RDP = 0x8739 -+ ETHERTYPE_RETIX = 0x80f2 -+ ETHERTYPE_REVARP = 0x8035 -+ ETHERTYPE_SCA = 0x6007 -+ ETHERTYPE_SECTRA = 0x86db -+ ETHERTYPE_SECUREDATA = 0x876d -+ ETHERTYPE_SGITW = 0x817e -+ ETHERTYPE_SG_BOUNCE = 0x8016 -+ ETHERTYPE_SG_DIAG = 0x8013 -+ ETHERTYPE_SG_NETGAMES = 0x8014 -+ ETHERTYPE_SG_RESV = 0x8015 -+ ETHERTYPE_SIMNET = 0x5208 -+ ETHERTYPE_SLOW = 0x8809 -+ ETHERTYPE_SNA = 0x80d5 -+ ETHERTYPE_SNMP = 0x814c -+ ETHERTYPE_SONIX = 0xfaf5 -+ ETHERTYPE_SPIDER = 0x809f -+ ETHERTYPE_SPRITE = 0x500 -+ ETHERTYPE_STP = 0x8181 -+ ETHERTYPE_TALARIS = 0x812b -+ ETHERTYPE_TALARISMC = 0x852b -+ ETHERTYPE_TCPCOMP = 0x876b -+ ETHERTYPE_TCPSM = 0x9002 -+ ETHERTYPE_TEC = 0x814f -+ ETHERTYPE_TIGAN = 0x802f -+ ETHERTYPE_TRAIL = 0x1000 -+ ETHERTYPE_TRANSETHER = 0x6558 -+ ETHERTYPE_TYMSHARE = 0x802e -+ ETHERTYPE_UBBST = 0x7005 -+ ETHERTYPE_UBDEBUG = 0x900 -+ ETHERTYPE_UBDIAGLOOP = 0x7002 -+ ETHERTYPE_UBDL = 0x7000 -+ ETHERTYPE_UBNIU = 0x7001 -+ ETHERTYPE_UBNMC = 0x7003 -+ ETHERTYPE_VALID = 0x1600 -+ ETHERTYPE_VARIAN = 0x80dd -+ ETHERTYPE_VAXELN = 0x803b -+ ETHERTYPE_VEECO = 0x8067 -+ ETHERTYPE_VEXP = 0x805b -+ ETHERTYPE_VGLAB = 0x8131 -+ ETHERTYPE_VINES = 0xbad -+ ETHERTYPE_VINESECHO = 0xbaf -+ ETHERTYPE_VINESLOOP = 0xbae -+ ETHERTYPE_VITAL = 0xff00 -+ ETHERTYPE_VLAN = 0x8100 -+ ETHERTYPE_VLTLMAN = 0x8080 -+ ETHERTYPE_VPROD = 0x805c -+ ETHERTYPE_VURESERVED = 0x8147 -+ ETHERTYPE_WATERLOO = 0x8130 -+ ETHERTYPE_WELLFLEET = 0x8103 -+ ETHERTYPE_X25 = 0x805 -+ ETHERTYPE_X75 = 0x801 -+ ETHERTYPE_XNSSM = 0x9001 -+ ETHERTYPE_XTP = 0x817d -+ ETHER_ADDR_LEN = 0x6 -+ ETHER_ALIGN = 0x2 -+ ETHER_CRC_LEN = 0x4 -+ ETHER_CRC_POLY_BE = 0x4c11db6 -+ ETHER_CRC_POLY_LE = 0xedb88320 -+ ETHER_HDR_LEN = 0xe -+ ETHER_MAX_DIX_LEN = 0x600 -+ ETHER_MAX_HARDMTU_LEN = 0xff9b -+ ETHER_MAX_LEN = 0x5ee -+ ETHER_MIN_LEN = 0x40 -+ ETHER_TYPE_LEN = 0x2 -+ ETHER_VLAN_ENCAP_LEN = 0x4 - EVFILT_AIO = -0x3 -- EVFILT_EXCEPT = -0xf -- EVFILT_FS = -0x9 -- EVFILT_MACHPORT = -0x8 -+ EVFILT_DEVICE = -0x8 - EVFILT_PROC = -0x5 - EVFILT_READ = -0x1 - EVFILT_SIGNAL = -0x6 -- EVFILT_SYSCOUNT = 0xf -- EVFILT_THREADMARKER = 0xf -+ EVFILT_SYSCOUNT = 0x8 - EVFILT_TIMER = -0x7 -- EVFILT_USER = -0xa -- EVFILT_VM = -0xc - EVFILT_VNODE = -0x4 - EVFILT_WRITE = -0x2 -+ EVL_ENCAPLEN = 0x4 -+ EVL_PRIO_BITS = 0xd -+ EVL_PRIO_MAX = 0x7 -+ EVL_VLID_MASK = 0xfff -+ EVL_VLID_MAX = 0xffe -+ EVL_VLID_MIN = 0x1 -+ EVL_VLID_NULL = 0x0 - EV_ADD = 0x1 - EV_CLEAR = 0x20 - EV_DELETE = 0x2 - EV_DISABLE = 0x8 - EV_DISPATCH = 0x80 -- EV_DISPATCH2 = 0x180 - EV_ENABLE = 0x4 - EV_EOF = 0x8000 - EV_ERROR = 0x4000 -- EV_FLAG0 = 0x1000 - EV_FLAG1 = 0x2000 - EV_ONESHOT = 0x10 -- EV_OOBAND = 0x2000 -- EV_POLL = 0x1000 - EV_RECEIPT = 0x40 - EV_SYSFLAGS = 0xf000 -- EV_UDATA_SPECIFIC = 0x100 -- EV_VANISHED = 0x200 - EXTA = 0x4b00 - EXTB = 0x9600 - EXTPROC = 0x800 - FD_CLOEXEC = 0x1 - FD_SETSIZE = 0x400 -- FF0 = 0x0 -- FF1 = 0x4000 -- FFDLY = 0x4000 - FLUSHO = 0x800000 -- FSOPT_ATTR_CMN_EXTENDED = 0x20 -- FSOPT_NOFOLLOW = 0x1 -- FSOPT_NOINMEMUPDATE = 0x2 -- FSOPT_PACK_INVAL_ATTRS = 0x8 -- FSOPT_REPORT_FULLSIZE = 0x4 -- F_ADDFILESIGS = 0x3d -- F_ADDFILESIGS_FOR_DYLD_SIM = 0x53 -- F_ADDFILESIGS_RETURN = 0x61 -- F_ADDSIGS = 0x3b -- F_ALLOCATEALL = 0x4 -- F_ALLOCATECONTIG = 0x2 -- F_BARRIERFSYNC = 0x55 -- F_CHECK_LV = 0x62 -- F_CHKCLEAN = 0x29 - F_DUPFD = 0x0 -- F_DUPFD_CLOEXEC = 0x43 -- F_FINDSIGS = 0x4e -- F_FLUSH_DATA = 0x28 -- F_FREEZE_FS = 0x35 -- F_FULLFSYNC = 0x33 -- F_GETCODEDIR = 0x48 -+ F_DUPFD_CLOEXEC = 0xa - F_GETFD = 0x1 - F_GETFL = 0x3 - F_GETLK = 0x7 -- F_GETLKPID = 0x42 -- F_GETNOSIGPIPE = 0x4a - F_GETOWN = 0x5 -- F_GETPATH = 0x32 -- F_GETPATH_MTMINFO = 0x47 -- F_GETPROTECTIONCLASS = 0x3f -- F_GETPROTECTIONLEVEL = 0x4d -- F_GLOBAL_NOCACHE = 0x37 -- F_LOG2PHYS = 0x31 -- F_LOG2PHYS_EXT = 0x41 -- F_NOCACHE = 0x30 -- F_NODIRECT = 0x3e -+ F_ISATTY = 0xb - F_OK = 0x0 -- F_PATHPKG_CHECK = 0x34 -- F_PEOFPOSMODE = 0x3 -- F_PREALLOCATE = 0x2a -- F_PUNCHHOLE = 0x63 -- F_RDADVISE = 0x2c -- F_RDAHEAD = 0x2d - F_RDLCK = 0x1 -- F_SETBACKINGSTORE = 0x46 - F_SETFD = 0x2 - F_SETFL = 0x4 - F_SETLK = 0x8 - F_SETLKW = 0x9 -- F_SETLKWTIMEOUT = 0xa -- F_SETNOSIGPIPE = 0x49 - F_SETOWN = 0x6 -- F_SETPROTECTIONCLASS = 0x40 -- F_SETSIZE = 0x2b -- F_SINGLE_WRITER = 0x4c -- F_THAW_FS = 0x36 -- F_TRANSCODEKEY = 0x4b -- F_TRIM_ACTIVE_FILE = 0x64 - F_UNLCK = 0x2 -- F_VOLPOSMODE = 0x4 - F_WRLCK = 0x3 - HUPCL = 0x4000 - HW_MACHINE = 0x1 -@@ -539,9 +558,11 @@ const ( - ICMP6_FILTER = 0x12 - ICRNL = 0x100 - IEXTEN = 0x400 -+ IFAN_ARRIVAL = 0x0 -+ IFAN_DEPARTURE = 0x1 - IFF_ALLMULTI = 0x200 -- IFF_ALTPHYS = 0x4000 - IFF_BROADCAST = 0x2 -+ IFF_CANTCHANGE = 0x8e52 - IFF_DEBUG = 0x4 - IFF_LINK0 = 0x1000 - IFF_LINK1 = 0x2000 -@@ -549,80 +570,236 @@ const ( - IFF_LOOPBACK = 0x8 - IFF_MULTICAST = 0x8000 - IFF_NOARP = 0x80 -- IFF_NOTRAILERS = 0x20 - IFF_OACTIVE = 0x400 - IFF_POINTOPOINT = 0x10 - IFF_PROMISC = 0x100 - IFF_RUNNING = 0x40 - IFF_SIMPLEX = 0x800 -+ IFF_STATICARP = 0x20 - IFF_UP = 0x1 - IFNAMSIZ = 0x10 - IFT_1822 = 0x2 -+ IFT_A12MPPSWITCH = 0x82 -+ IFT_AAL2 = 0xbb - IFT_AAL5 = 0x31 -+ IFT_ADSL = 0x5e -+ IFT_AFLANE8023 = 0x3b -+ IFT_AFLANE8025 = 0x3c -+ IFT_ARAP = 0x58 - IFT_ARCNET = 0x23 - IFT_ARCNETPLUS = 0x24 -+ IFT_ASYNC = 0x54 - IFT_ATM = 0x25 -+ IFT_ATMDXI = 0x69 -+ IFT_ATMFUNI = 0x6a -+ IFT_ATMIMA = 0x6b -+ IFT_ATMLOGICAL = 0x50 -+ IFT_ATMRADIO = 0xbd -+ IFT_ATMSUBINTERFACE = 0x86 -+ IFT_ATMVCIENDPT = 0xc2 -+ IFT_ATMVIRTUAL = 0x95 -+ IFT_BGPPOLICYACCOUNTING = 0xa2 -+ IFT_BLUETOOTH = 0xf8 - IFT_BRIDGE = 0xd1 -- IFT_CARP = 0xf8 -- IFT_CELLULAR = 0xff -+ IFT_BSC = 0x53 -+ IFT_CARP = 0xf7 -+ IFT_CCTEMUL = 0x3d - IFT_CEPT = 0x13 -+ IFT_CES = 0x85 -+ IFT_CHANNEL = 0x46 -+ IFT_CNR = 0x55 -+ IFT_COFFEE = 0x84 -+ IFT_COMPOSITELINK = 0x9b -+ IFT_DCN = 0x8d -+ IFT_DIGITALPOWERLINE = 0x8a -+ IFT_DIGITALWRAPPEROVERHEADCHANNEL = 0xba -+ IFT_DLSW = 0x4a -+ IFT_DOCSCABLEDOWNSTREAM = 0x80 -+ IFT_DOCSCABLEMACLAYER = 0x7f -+ IFT_DOCSCABLEUPSTREAM = 0x81 -+ IFT_DOCSCABLEUPSTREAMCHANNEL = 0xcd -+ IFT_DS0 = 0x51 -+ IFT_DS0BUNDLE = 0x52 -+ IFT_DS1FDL = 0xaa - IFT_DS3 = 0x1e -+ IFT_DTM = 0x8c -+ IFT_DUMMY = 0xf1 -+ IFT_DVBASILN = 0xac -+ IFT_DVBASIOUT = 0xad -+ IFT_DVBRCCDOWNSTREAM = 0x93 -+ IFT_DVBRCCMACLAYER = 0x92 -+ IFT_DVBRCCUPSTREAM = 0x94 -+ IFT_ECONET = 0xce - IFT_ENC = 0xf4 - IFT_EON = 0x19 -+ IFT_EPLRS = 0x57 -+ IFT_ESCON = 0x49 - IFT_ETHER = 0x6 -- IFT_FAITH = 0x38 -+ IFT_FAITH = 0xf3 -+ IFT_FAST = 0x7d -+ IFT_FASTETHER = 0x3e -+ IFT_FASTETHERFX = 0x45 - IFT_FDDI = 0xf -+ IFT_FIBRECHANNEL = 0x38 -+ IFT_FRAMERELAYINTERCONNECT = 0x3a -+ IFT_FRAMERELAYMPI = 0x5c -+ IFT_FRDLCIENDPT = 0xc1 - IFT_FRELAY = 0x20 - IFT_FRELAYDCE = 0x2c -- IFT_GIF = 0x37 -+ IFT_FRF16MFRBUNDLE = 0xa3 -+ IFT_FRFORWARD = 0x9e -+ IFT_G703AT2MB = 0x43 -+ IFT_G703AT64K = 0x42 -+ IFT_GIF = 0xf0 -+ IFT_GIGABITETHERNET = 0x75 -+ IFT_GR303IDT = 0xb2 -+ IFT_GR303RDT = 0xb1 -+ IFT_H323GATEKEEPER = 0xa4 -+ IFT_H323PROXY = 0xa5 - IFT_HDH1822 = 0x3 -+ IFT_HDLC = 0x76 -+ IFT_HDSL2 = 0xa8 -+ IFT_HIPERLAN2 = 0xb7 - IFT_HIPPI = 0x2f -+ IFT_HIPPIINTERFACE = 0x39 -+ IFT_HOSTPAD = 0x5a - IFT_HSSI = 0x2e - IFT_HY = 0xe -+ IFT_IBM370PARCHAN = 0x48 -+ IFT_IDSL = 0x9a - IFT_IEEE1394 = 0x90 -- IFT_IEEE8023ADLAG = 0x88 -+ IFT_IEEE80211 = 0x47 -+ IFT_IEEE80212 = 0x37 -+ IFT_IEEE8023ADLAG = 0xa1 -+ IFT_IFGSN = 0x91 -+ IFT_IMT = 0xbe -+ IFT_INFINIBAND = 0xc7 -+ IFT_INTERLEAVE = 0x7c -+ IFT_IP = 0x7e -+ IFT_IPFORWARD = 0x8e -+ IFT_IPOVERATM = 0x72 -+ IFT_IPOVERCDLC = 0x6d -+ IFT_IPOVERCLAW = 0x6e -+ IFT_IPSWITCH = 0x4e -+ IFT_ISDN = 0x3f - IFT_ISDNBASIC = 0x14 - IFT_ISDNPRIMARY = 0x15 -+ IFT_ISDNS = 0x4b -+ IFT_ISDNU = 0x4c - IFT_ISO88022LLC = 0x29 - IFT_ISO88023 = 0x7 - IFT_ISO88024 = 0x8 - IFT_ISO88025 = 0x9 -+ IFT_ISO88025CRFPINT = 0x62 -+ IFT_ISO88025DTR = 0x56 -+ IFT_ISO88025FIBER = 0x73 - IFT_ISO88026 = 0xa -+ IFT_ISUP = 0xb3 - IFT_L2VLAN = 0x87 -+ IFT_L3IPVLAN = 0x88 -+ IFT_L3IPXVLAN = 0x89 - IFT_LAPB = 0x10 -+ IFT_LAPD = 0x4d -+ IFT_LAPF = 0x77 -+ IFT_LINEGROUP = 0xd2 - IFT_LOCALTALK = 0x2a - IFT_LOOP = 0x18 -+ IFT_MBIM = 0xfa -+ IFT_MEDIAMAILOVERIP = 0x8b -+ IFT_MFSIGLINK = 0xa7 - IFT_MIOX25 = 0x26 - IFT_MODEM = 0x30 -+ IFT_MPC = 0x71 -+ IFT_MPLS = 0xa6 -+ IFT_MPLSTUNNEL = 0x96 -+ IFT_MSDSL = 0x8f -+ IFT_MVL = 0xbf -+ IFT_MYRINET = 0x63 -+ IFT_NFAS = 0xaf - IFT_NSIP = 0x1b -+ IFT_OPTICALCHANNEL = 0xc3 -+ IFT_OPTICALTRANSPORT = 0xc4 - IFT_OTHER = 0x1 - IFT_P10 = 0xc - IFT_P80 = 0xd - IFT_PARA = 0x22 -- IFT_PDP = 0xff - IFT_PFLOG = 0xf5 -+ IFT_PFLOW = 0xf9 - IFT_PFSYNC = 0xf6 -- IFT_PKTAP = 0xfe -+ IFT_PLC = 0xae -+ IFT_PON155 = 0xcf -+ IFT_PON622 = 0xd0 -+ IFT_POS = 0xab - IFT_PPP = 0x17 -+ IFT_PPPMULTILINKBUNDLE = 0x6c -+ IFT_PROPATM = 0xc5 -+ IFT_PROPBWAP2MP = 0xb8 -+ IFT_PROPCNLS = 0x59 -+ IFT_PROPDOCSWIRELESSDOWNSTREAM = 0xb5 -+ IFT_PROPDOCSWIRELESSMACLAYER = 0xb4 -+ IFT_PROPDOCSWIRELESSUPSTREAM = 0xb6 - IFT_PROPMUX = 0x36 - IFT_PROPVIRTUAL = 0x35 -+ IFT_PROPWIRELESSP2P = 0x9d - IFT_PTPSERIAL = 0x16 -+ IFT_PVC = 0xf2 -+ IFT_Q2931 = 0xc9 -+ IFT_QLLC = 0x44 -+ IFT_RADIOMAC = 0xbc -+ IFT_RADSL = 0x5f -+ IFT_REACHDSL = 0xc0 -+ IFT_RFC1483 = 0x9f - IFT_RS232 = 0x21 -+ IFT_RSRB = 0x4f - IFT_SDLC = 0x11 -+ IFT_SDSL = 0x60 -+ IFT_SHDSL = 0xa9 - IFT_SIP = 0x1f -+ IFT_SIPSIG = 0xcc -+ IFT_SIPTG = 0xcb - IFT_SLIP = 0x1c - IFT_SMDSDXI = 0x2b - IFT_SMDSICIP = 0x34 - IFT_SONET = 0x27 -+ IFT_SONETOVERHEADCHANNEL = 0xb9 - IFT_SONETPATH = 0x32 - IFT_SONETVT = 0x33 -+ IFT_SRP = 0x97 -+ IFT_SS7SIGLINK = 0x9c -+ IFT_STACKTOSTACK = 0x6f - IFT_STARLAN = 0xb -- IFT_STF = 0x39 - IFT_T1 = 0x12 -+ IFT_TDLC = 0x74 -+ IFT_TELINK = 0xc8 -+ IFT_TERMPAD = 0x5b -+ IFT_TR008 = 0xb0 -+ IFT_TRANSPHDLC = 0x7b -+ IFT_TUNNEL = 0x83 - IFT_ULTRA = 0x1d -+ IFT_USB = 0xa0 -+ IFT_V11 = 0x40 - IFT_V35 = 0x2d -+ IFT_V36 = 0x41 -+ IFT_V37 = 0x78 -+ IFT_VDSL = 0x61 -+ IFT_VIRTUALIPADDRESS = 0x70 -+ IFT_VIRTUALTG = 0xca -+ IFT_VOICEDID = 0xd5 -+ IFT_VOICEEM = 0x64 -+ IFT_VOICEEMFGD = 0xd3 -+ IFT_VOICEENCAP = 0x67 -+ IFT_VOICEFGDEANA = 0xd4 -+ IFT_VOICEFXO = 0x65 -+ IFT_VOICEFXS = 0x66 -+ IFT_VOICEOVERATM = 0x98 -+ IFT_VOICEOVERCABLE = 0xc6 -+ IFT_VOICEOVERFRAMERELAY = 0x99 -+ IFT_VOICEOVERIP = 0x68 -+ IFT_X213 = 0x5d - IFT_X25 = 0x5 - IFT_X25DDN = 0x4 -+ IFT_X25HUNTGROUP = 0x7a -+ IFT_X25MLP = 0x79 - IFT_X25PLE = 0x28 - IFT_XETHER = 0x1a - IGNBRK = 0x1 -@@ -645,239 +822,155 @@ const ( - IN_CLASSD_HOST = 0xfffffff - IN_CLASSD_NET = 0xf0000000 - IN_CLASSD_NSHIFT = 0x1c -- IN_LINKLOCALNETNUM = 0xa9fe0000 - IN_LOOPBACKNET = 0x7f -- IPPROTO_3PC = 0x22 -- IPPROTO_ADFS = 0x44 -+ IN_RFC3021_HOST = 0x1 -+ IN_RFC3021_NET = 0xfffffffe -+ IN_RFC3021_NSHIFT = 0x1f - IPPROTO_AH = 0x33 -- IPPROTO_AHIP = 0x3d -- IPPROTO_APES = 0x63 -- IPPROTO_ARGUS = 0xd -- IPPROTO_AX25 = 0x5d -- IPPROTO_BHA = 0x31 -- IPPROTO_BLT = 0x1e -- IPPROTO_BRSATMON = 0x4c -- IPPROTO_CFTP = 0x3e -- IPPROTO_CHAOS = 0x10 -- IPPROTO_CMTP = 0x26 -- IPPROTO_CPHB = 0x49 -- IPPROTO_CPNX = 0x48 -- IPPROTO_DDP = 0x25 -- IPPROTO_DGP = 0x56 -- IPPROTO_DIVERT = 0xfe -+ IPPROTO_CARP = 0x70 -+ IPPROTO_DIVERT = 0x102 - IPPROTO_DONE = 0x101 - IPPROTO_DSTOPTS = 0x3c - IPPROTO_EGP = 0x8 -- IPPROTO_EMCON = 0xe - IPPROTO_ENCAP = 0x62 - IPPROTO_EON = 0x50 - IPPROTO_ESP = 0x32 - IPPROTO_ETHERIP = 0x61 - IPPROTO_FRAGMENT = 0x2c - IPPROTO_GGP = 0x3 -- IPPROTO_GMTP = 0x64 - IPPROTO_GRE = 0x2f -- IPPROTO_HELLO = 0x3f -- IPPROTO_HMP = 0x14 - IPPROTO_HOPOPTS = 0x0 - IPPROTO_ICMP = 0x1 - IPPROTO_ICMPV6 = 0x3a - IPPROTO_IDP = 0x16 -- IPPROTO_IDPR = 0x23 -- IPPROTO_IDRP = 0x2d - IPPROTO_IGMP = 0x2 -- IPPROTO_IGP = 0x55 -- IPPROTO_IGRP = 0x58 -- IPPROTO_IL = 0x28 -- IPPROTO_INLSP = 0x34 -- IPPROTO_INP = 0x20 - IPPROTO_IP = 0x0 - IPPROTO_IPCOMP = 0x6c -- IPPROTO_IPCV = 0x47 -- IPPROTO_IPEIP = 0x5e - IPPROTO_IPIP = 0x4 -- IPPROTO_IPPC = 0x43 - IPPROTO_IPV4 = 0x4 - IPPROTO_IPV6 = 0x29 -- IPPROTO_IRTP = 0x1c -- IPPROTO_KRYPTOLAN = 0x41 -- IPPROTO_LARP = 0x5b -- IPPROTO_LEAF1 = 0x19 -- IPPROTO_LEAF2 = 0x1a - IPPROTO_MAX = 0x100 -- IPPROTO_MAXID = 0x34 -- IPPROTO_MEAS = 0x13 -- IPPROTO_MHRP = 0x30 -- IPPROTO_MICP = 0x5f -- IPPROTO_MTP = 0x5c -- IPPROTO_MUX = 0x12 -- IPPROTO_ND = 0x4d -- IPPROTO_NHRP = 0x36 -+ IPPROTO_MAXID = 0x103 -+ IPPROTO_MOBILE = 0x37 -+ IPPROTO_MPLS = 0x89 - IPPROTO_NONE = 0x3b -- IPPROTO_NSP = 0x1f -- IPPROTO_NVPII = 0xb -- IPPROTO_OSPFIGP = 0x59 -- IPPROTO_PGM = 0x71 -- IPPROTO_PIGP = 0x9 -+ IPPROTO_PFSYNC = 0xf0 - IPPROTO_PIM = 0x67 -- IPPROTO_PRM = 0x15 - IPPROTO_PUP = 0xc -- IPPROTO_PVP = 0x4b - IPPROTO_RAW = 0xff -- IPPROTO_RCCMON = 0xa -- IPPROTO_RDP = 0x1b - IPPROTO_ROUTING = 0x2b - IPPROTO_RSVP = 0x2e -- IPPROTO_RVD = 0x42 -- IPPROTO_SATEXPAK = 0x40 -- IPPROTO_SATMON = 0x45 -- IPPROTO_SCCSP = 0x60 -- IPPROTO_SCTP = 0x84 -- IPPROTO_SDRP = 0x2a -- IPPROTO_SEP = 0x21 -- IPPROTO_SRPC = 0x5a -- IPPROTO_ST = 0x7 -- IPPROTO_SVMTP = 0x52 -- IPPROTO_SWIPE = 0x35 -- IPPROTO_TCF = 0x57 - IPPROTO_TCP = 0x6 - IPPROTO_TP = 0x1d -- IPPROTO_TPXX = 0x27 -- IPPROTO_TRUNK1 = 0x17 -- IPPROTO_TRUNK2 = 0x18 -- IPPROTO_TTP = 0x54 - IPPROTO_UDP = 0x11 -- IPPROTO_VINES = 0x53 -- IPPROTO_VISA = 0x46 -- IPPROTO_VMTP = 0x51 -- IPPROTO_WBEXPAK = 0x4f -- IPPROTO_WBMON = 0x4e -- IPPROTO_WSN = 0x4a -- IPPROTO_XNET = 0xf -- IPPROTO_XTP = 0x24 -- IPV6_2292DSTOPTS = 0x17 -- IPV6_2292HOPLIMIT = 0x14 -- IPV6_2292HOPOPTS = 0x16 -- IPV6_2292NEXTHOP = 0x15 -- IPV6_2292PKTINFO = 0x13 -- IPV6_2292PKTOPTIONS = 0x19 -- IPV6_2292RTHDR = 0x18 -- IPV6_BINDV6ONLY = 0x1b -- IPV6_BOUND_IF = 0x7d -+ IPPROTO_UDPLITE = 0x88 -+ IPV6_AUTH_LEVEL = 0x35 -+ IPV6_AUTOFLOWLABEL = 0x3b - IPV6_CHECKSUM = 0x1a - IPV6_DEFAULT_MULTICAST_HOPS = 0x1 - IPV6_DEFAULT_MULTICAST_LOOP = 0x1 - IPV6_DEFHLIM = 0x40 -+ IPV6_DONTFRAG = 0x3e -+ IPV6_DSTOPTS = 0x32 -+ IPV6_ESP_NETWORK_LEVEL = 0x37 -+ IPV6_ESP_TRANS_LEVEL = 0x36 - IPV6_FAITH = 0x1d -- IPV6_FLOWINFO_MASK = 0xffffff0f -- IPV6_FLOWLABEL_MASK = 0xffff0f00 -- IPV6_FLOW_ECN_MASK = 0x300 -- IPV6_FRAGTTL = 0x3c -- IPV6_FW_ADD = 0x1e -- IPV6_FW_DEL = 0x1f -- IPV6_FW_FLUSH = 0x20 -- IPV6_FW_GET = 0x22 -- IPV6_FW_ZERO = 0x21 -+ IPV6_FLOWINFO_MASK = 0xfffffff -+ IPV6_FLOWLABEL_MASK = 0xfffff -+ IPV6_FRAGTTL = 0x78 - IPV6_HLIMDEC = 0x1 -- IPV6_IPSEC_POLICY = 0x1c -+ IPV6_HOPLIMIT = 0x2f -+ IPV6_HOPOPTS = 0x31 -+ IPV6_IPCOMP_LEVEL = 0x3c - IPV6_JOIN_GROUP = 0xc - IPV6_LEAVE_GROUP = 0xd - IPV6_MAXHLIM = 0xff -- IPV6_MAXOPTHDR = 0x800 - IPV6_MAXPACKET = 0xffff -- IPV6_MAX_GROUP_SRC_FILTER = 0x200 -- IPV6_MAX_MEMBERSHIPS = 0xfff -- IPV6_MAX_SOCK_SRC_FILTER = 0x80 -- IPV6_MIN_MEMBERSHIPS = 0x1f -+ IPV6_MINHOPCOUNT = 0x41 - IPV6_MMTU = 0x500 - IPV6_MULTICAST_HOPS = 0xa - IPV6_MULTICAST_IF = 0x9 - IPV6_MULTICAST_LOOP = 0xb -+ IPV6_NEXTHOP = 0x30 -+ IPV6_OPTIONS = 0x1 -+ IPV6_PATHMTU = 0x2c -+ IPV6_PIPEX = 0x3f -+ IPV6_PKTINFO = 0x2e - IPV6_PORTRANGE = 0xe - IPV6_PORTRANGE_DEFAULT = 0x0 - IPV6_PORTRANGE_HIGH = 0x1 - IPV6_PORTRANGE_LOW = 0x2 -- IPV6_RECVTCLASS = 0x23 -+ IPV6_RECVDSTOPTS = 0x28 -+ IPV6_RECVDSTPORT = 0x40 -+ IPV6_RECVHOPLIMIT = 0x25 -+ IPV6_RECVHOPOPTS = 0x27 -+ IPV6_RECVPATHMTU = 0x2b -+ IPV6_RECVPKTINFO = 0x24 -+ IPV6_RECVRTHDR = 0x26 -+ IPV6_RECVTCLASS = 0x39 -+ IPV6_RTABLE = 0x1021 -+ IPV6_RTHDR = 0x33 -+ IPV6_RTHDRDSTOPTS = 0x23 - IPV6_RTHDR_LOOSE = 0x0 - IPV6_RTHDR_STRICT = 0x1 - IPV6_RTHDR_TYPE_0 = 0x0 - IPV6_SOCKOPT_RESERVED1 = 0x3 -- IPV6_TCLASS = 0x24 -+ IPV6_TCLASS = 0x3d - IPV6_UNICAST_HOPS = 0x4 -+ IPV6_USE_MIN_MTU = 0x2a - IPV6_V6ONLY = 0x1b - IPV6_VERSION = 0x60 - IPV6_VERSION_MASK = 0xf0 - IP_ADD_MEMBERSHIP = 0xc -- IP_ADD_SOURCE_MEMBERSHIP = 0x46 -- IP_BLOCK_SOURCE = 0x48 -- IP_BOUND_IF = 0x19 -+ IP_AUTH_LEVEL = 0x14 - IP_DEFAULT_MULTICAST_LOOP = 0x1 - IP_DEFAULT_MULTICAST_TTL = 0x1 - IP_DF = 0x4000 - IP_DROP_MEMBERSHIP = 0xd -- IP_DROP_SOURCE_MEMBERSHIP = 0x47 -- IP_DUMMYNET_CONFIGURE = 0x3c -- IP_DUMMYNET_DEL = 0x3d -- IP_DUMMYNET_FLUSH = 0x3e -- IP_DUMMYNET_GET = 0x40 -- IP_FAITH = 0x16 -- IP_FW_ADD = 0x28 -- IP_FW_DEL = 0x29 -- IP_FW_FLUSH = 0x2a -- IP_FW_GET = 0x2c -- IP_FW_RESETLOG = 0x2d -- IP_FW_ZERO = 0x2b -+ IP_ESP_NETWORK_LEVEL = 0x16 -+ IP_ESP_TRANS_LEVEL = 0x15 - IP_HDRINCL = 0x2 -- IP_IPSEC_POLICY = 0x15 -+ IP_IPCOMP_LEVEL = 0x1d -+ IP_IPDEFTTL = 0x25 -+ IP_IPSECFLOWINFO = 0x24 -+ IP_IPSEC_LOCAL_AUTH = 0x1b -+ IP_IPSEC_LOCAL_CRED = 0x19 -+ IP_IPSEC_LOCAL_ID = 0x17 -+ IP_IPSEC_REMOTE_AUTH = 0x1c -+ IP_IPSEC_REMOTE_CRED = 0x1a -+ IP_IPSEC_REMOTE_ID = 0x18 - IP_MAXPACKET = 0xffff -- IP_MAX_GROUP_SRC_FILTER = 0x200 - IP_MAX_MEMBERSHIPS = 0xfff -- IP_MAX_SOCK_MUTE_FILTER = 0x80 -- IP_MAX_SOCK_SRC_FILTER = 0x80 - IP_MF = 0x2000 -- IP_MIN_MEMBERSHIPS = 0x1f -- IP_MSFILTER = 0x4a -+ IP_MINTTL = 0x20 -+ IP_MIN_MEMBERSHIPS = 0xf - IP_MSS = 0x240 - IP_MULTICAST_IF = 0x9 -- IP_MULTICAST_IFINDEX = 0x42 - IP_MULTICAST_LOOP = 0xb - IP_MULTICAST_TTL = 0xa -- IP_MULTICAST_VIF = 0xe -- IP_NAT__XXX = 0x37 - IP_OFFMASK = 0x1fff -- IP_OLD_FW_ADD = 0x32 -- IP_OLD_FW_DEL = 0x33 -- IP_OLD_FW_FLUSH = 0x34 -- IP_OLD_FW_GET = 0x36 -- IP_OLD_FW_RESETLOG = 0x38 -- IP_OLD_FW_ZERO = 0x35 - IP_OPTIONS = 0x1 -- IP_PKTINFO = 0x1a -+ IP_PIPEX = 0x22 - IP_PORTRANGE = 0x13 - IP_PORTRANGE_DEFAULT = 0x0 - IP_PORTRANGE_HIGH = 0x1 - IP_PORTRANGE_LOW = 0x2 - IP_RECVDSTADDR = 0x7 -- IP_RECVIF = 0x14 -+ IP_RECVDSTPORT = 0x21 -+ IP_RECVIF = 0x1e - IP_RECVOPTS = 0x5 -- IP_RECVPKTINFO = 0x1a - IP_RECVRETOPTS = 0x6 -- IP_RECVTOS = 0x1b -- IP_RECVTTL = 0x18 -+ IP_RECVRTABLE = 0x23 -+ IP_RECVTTL = 0x1f - IP_RETOPTS = 0x8 - IP_RF = 0x8000 -- IP_RSVP_OFF = 0x10 -- IP_RSVP_ON = 0xf -- IP_RSVP_VIF_OFF = 0x12 -- IP_RSVP_VIF_ON = 0x11 -- IP_STRIPHDR = 0x17 -+ IP_RTABLE = 0x1021 -+ IP_SENDSRCADDR = 0x7 - IP_TOS = 0x3 -- IP_TRAFFIC_MGT_BACKGROUND = 0x41 - IP_TTL = 0x4 -- IP_UNBLOCK_SOURCE = 0x49 - ISIG = 0x80 - ISTRIP = 0x20 -- IUTF8 = 0x4000 -+ IUCLC = 0x1000 - IXANY = 0x800 - IXOFF = 0x400 - IXON = 0x200 -@@ -885,188 +978,140 @@ const ( - KERN_OSRELEASE = 0x2 - KERN_OSTYPE = 0x1 - KERN_VERSION = 0x4 -+ LCNT_OVERLOAD_FLUSH = 0x6 - LOCK_EX = 0x2 - LOCK_NB = 0x4 - LOCK_SH = 0x1 - LOCK_UN = 0x8 -- MADV_CAN_REUSE = 0x9 - MADV_DONTNEED = 0x4 -- MADV_FREE = 0x5 -- MADV_FREE_REUSABLE = 0x7 -- MADV_FREE_REUSE = 0x8 -+ MADV_FREE = 0x6 - MADV_NORMAL = 0x0 -- MADV_PAGEOUT = 0xa - MADV_RANDOM = 0x1 - MADV_SEQUENTIAL = 0x2 -+ MADV_SPACEAVAIL = 0x5 - MADV_WILLNEED = 0x3 -- MADV_ZERO_WIRED_PAGES = 0x6 - MAP_ANON = 0x1000 - MAP_ANONYMOUS = 0x1000 -+ MAP_CONCEAL = 0x8000 - MAP_COPY = 0x2 - MAP_FILE = 0x0 - MAP_FIXED = 0x10 -- MAP_HASSEMAPHORE = 0x200 -- MAP_JIT = 0x800 -- MAP_NOCACHE = 0x400 -- MAP_NOEXTEND = 0x100 -- MAP_NORESERVE = 0x40 -+ MAP_FLAGMASK = 0xfff7 -+ MAP_HASSEMAPHORE = 0x0 -+ MAP_INHERIT = 0x0 -+ MAP_INHERIT_COPY = 0x1 -+ MAP_INHERIT_NONE = 0x2 -+ MAP_INHERIT_SHARE = 0x0 -+ MAP_INHERIT_ZERO = 0x3 -+ MAP_NOEXTEND = 0x0 -+ MAP_NORESERVE = 0x0 - MAP_PRIVATE = 0x2 -- MAP_RENAME = 0x20 -- MAP_RESERVED0080 = 0x80 -- MAP_RESILIENT_CODESIGN = 0x2000 -- MAP_RESILIENT_MEDIA = 0x4000 -+ MAP_RENAME = 0x0 - MAP_SHARED = 0x1 -+ MAP_STACK = 0x4000 -+ MAP_TRYFIXED = 0x0 - MCL_CURRENT = 0x1 - MCL_FUTURE = 0x2 - MNT_ASYNC = 0x40 -- MNT_AUTOMOUNTED = 0x400000 -- MNT_CMDFLAGS = 0xf0000 -- MNT_CPROTECT = 0x80 -- MNT_DEFWRITE = 0x2000000 -- MNT_DONTBROWSE = 0x100000 -- MNT_DOVOLFS = 0x8000 -- MNT_DWAIT = 0x4 -+ MNT_DEFEXPORTED = 0x200 -+ MNT_DELEXPORT = 0x20000 -+ MNT_DOOMED = 0x8000000 -+ MNT_EXPORTANON = 0x400 - MNT_EXPORTED = 0x100 -+ MNT_EXRDONLY = 0x80 - MNT_FORCE = 0x80000 -- MNT_IGNORE_OWNERSHIP = 0x200000 -- MNT_JOURNALED = 0x800000 -+ MNT_LAZY = 0x3 - MNT_LOCAL = 0x1000 -- MNT_MULTILABEL = 0x4000000 -- MNT_NOATIME = 0x10000000 -- MNT_NOBLOCK = 0x20000 -+ MNT_NOATIME = 0x8000 - MNT_NODEV = 0x10 - MNT_NOEXEC = 0x4 -+ MNT_NOPERM = 0x20 - MNT_NOSUID = 0x8 -- MNT_NOUSERXATTR = 0x1000000 - MNT_NOWAIT = 0x2 -- MNT_QUARANTINE = 0x400 - MNT_QUOTA = 0x2000 - MNT_RDONLY = 0x1 - MNT_RELOAD = 0x40000 - MNT_ROOTFS = 0x4000 -+ MNT_SOFTDEP = 0x4000000 -+ MNT_STALLED = 0x100000 -+ MNT_SWAPPABLE = 0x200000 - MNT_SYNCHRONOUS = 0x2 -- MNT_UNION = 0x20 -- MNT_UNKNOWNPERMISSIONS = 0x200000 - MNT_UPDATE = 0x10000 -- MNT_VISFLAGMASK = 0x17f0f5ff -+ MNT_VISFLAGMASK = 0x400ffff - MNT_WAIT = 0x1 -+ MNT_WANTRDWR = 0x2000000 -+ MNT_WXALLOWED = 0x800 -+ MSG_BCAST = 0x100 -+ MSG_CMSG_CLOEXEC = 0x800 - MSG_CTRUNC = 0x20 - MSG_DONTROUTE = 0x4 - MSG_DONTWAIT = 0x80 -- MSG_EOF = 0x100 - MSG_EOR = 0x8 -- MSG_FLUSH = 0x400 -- MSG_HAVEMORE = 0x2000 -- MSG_HOLD = 0x800 -- MSG_NEEDSA = 0x10000 -+ MSG_MCAST = 0x200 -+ MSG_NOSIGNAL = 0x400 - MSG_OOB = 0x1 - MSG_PEEK = 0x2 -- MSG_RCVMORE = 0x4000 -- MSG_SEND = 0x1000 - MSG_TRUNC = 0x10 - MSG_WAITALL = 0x40 -- MSG_WAITSTREAM = 0x200 - MS_ASYNC = 0x1 -- MS_DEACTIVATE = 0x8 -- MS_INVALIDATE = 0x2 -- MS_KILLPAGES = 0x4 -- MS_SYNC = 0x10 -+ MS_INVALIDATE = 0x4 -+ MS_SYNC = 0x2 - NAME_MAX = 0xff - NET_RT_DUMP = 0x1 -- NET_RT_DUMP2 = 0x7 - NET_RT_FLAGS = 0x2 - NET_RT_IFLIST = 0x3 -- NET_RT_IFLIST2 = 0x6 -- NET_RT_MAXID = 0xa -- NET_RT_STAT = 0x4 -- NET_RT_TRASH = 0x5 -+ NET_RT_IFNAMES = 0x6 -+ NET_RT_MAXID = 0x7 -+ NET_RT_STATS = 0x4 -+ NET_RT_TABLE = 0x5 - NFDBITS = 0x20 -- NL0 = 0x0 -- NL1 = 0x100 -- NL2 = 0x200 -- NL3 = 0x300 -- NLDLY = 0x300 - NOFLSH = 0x80000000 - NOKERNINFO = 0x2000000 -- NOTE_ABSOLUTE = 0x8 - NOTE_ATTRIB = 0x8 -- NOTE_BACKGROUND = 0x40 -+ NOTE_CHANGE = 0x1 - NOTE_CHILD = 0x4 -- NOTE_CRITICAL = 0x20 - NOTE_DELETE = 0x1 -+ NOTE_EOF = 0x2 - NOTE_EXEC = 0x20000000 - NOTE_EXIT = 0x80000000 -- NOTE_EXITSTATUS = 0x4000000 -- NOTE_EXIT_CSERROR = 0x40000 -- NOTE_EXIT_DECRYPTFAIL = 0x10000 -- NOTE_EXIT_DETAIL = 0x2000000 -- NOTE_EXIT_DETAIL_MASK = 0x70000 -- NOTE_EXIT_MEMORY = 0x20000 -- NOTE_EXIT_REPARENTED = 0x80000 - NOTE_EXTEND = 0x4 -- NOTE_FFAND = 0x40000000 -- NOTE_FFCOPY = 0xc0000000 -- NOTE_FFCTRLMASK = 0xc0000000 -- NOTE_FFLAGSMASK = 0xffffff -- NOTE_FFNOP = 0x0 -- NOTE_FFOR = 0x80000000 - NOTE_FORK = 0x40000000 -- NOTE_FUNLOCK = 0x100 -- NOTE_LEEWAY = 0x10 - NOTE_LINK = 0x10 - NOTE_LOWAT = 0x1 -- NOTE_MACH_CONTINUOUS_TIME = 0x80 -- NOTE_NONE = 0x80 -- NOTE_NSECONDS = 0x4 -- NOTE_OOB = 0x2 -- NOTE_PCTRLMASK = -0x100000 -+ NOTE_PCTRLMASK = 0xf0000000 - NOTE_PDATAMASK = 0xfffff -- NOTE_REAP = 0x10000000 - NOTE_RENAME = 0x20 - NOTE_REVOKE = 0x40 -- NOTE_SECONDS = 0x1 -- NOTE_SIGNAL = 0x8000000 - NOTE_TRACK = 0x1 - NOTE_TRACKERR = 0x2 -- NOTE_TRIGGER = 0x1000000 -- NOTE_USECONDS = 0x2 -- NOTE_VM_ERROR = 0x10000000 -- NOTE_VM_PRESSURE = 0x80000000 -- NOTE_VM_PRESSURE_SUDDEN_TERMINATE = 0x20000000 -- NOTE_VM_PRESSURE_TERMINATE = 0x40000000 -+ NOTE_TRUNCATE = 0x80 - NOTE_WRITE = 0x2 - OCRNL = 0x10 -- OFDEL = 0x20000 -- OFILL = 0x80 -+ OLCUC = 0x20 - ONLCR = 0x2 -- ONLRET = 0x40 -- ONOCR = 0x20 -+ ONLRET = 0x80 -+ ONOCR = 0x40 - ONOEOT = 0x8 - OPOST = 0x1 - OXTABS = 0x4 - O_ACCMODE = 0x3 -- O_ALERT = 0x20000000 - O_APPEND = 0x8 - O_ASYNC = 0x40 -- O_CLOEXEC = 0x1000000 -+ O_CLOEXEC = 0x10000 - O_CREAT = 0x200 -- O_DIRECTORY = 0x100000 -- O_DP_GETRAWENCRYPTED = 0x1 -- O_DP_GETRAWUNENCRYPTED = 0x2 -- O_DSYNC = 0x400000 -- O_EVTONLY = 0x8000 -+ O_DIRECTORY = 0x20000 -+ O_DSYNC = 0x80 - O_EXCL = 0x800 - O_EXLOCK = 0x20 - O_FSYNC = 0x80 - O_NDELAY = 0x4 -- O_NOCTTY = 0x20000 -+ O_NOCTTY = 0x8000 - O_NOFOLLOW = 0x100 - O_NONBLOCK = 0x4 -- O_POPUP = 0x80000000 - O_RDONLY = 0x0 - O_RDWR = 0x2 -+ O_RSYNC = 0x80 - O_SHLOCK = 0x10 -- O_SYMLINK = 0x200000 - O_SYNC = 0x80 - O_TRUNC = 0x400 - O_WRONLY = 0x1 -@@ -1074,6 +1119,7 @@ const ( - PARMRK = 0x8 - PARODD = 0x2000 - PENDIN = 0x20000000 -+ PF_FLUSH = 0x1 - PRIO_PGRP = 0x1 - PRIO_PROCESS = 0x0 - PRIO_USER = 0x2 -@@ -1081,28 +1127,8 @@ const ( - PROT_NONE = 0x0 - PROT_READ = 0x1 - PROT_WRITE = 0x2 -- PT_ATTACH = 0xa -- PT_ATTACHEXC = 0xe -- PT_CONTINUE = 0x7 -- PT_DENY_ATTACH = 0x1f -- PT_DETACH = 0xb -- PT_FIRSTMACH = 0x20 -- PT_FORCEQUOTA = 0x1e -- PT_KILL = 0x8 -- PT_READ_D = 0x2 -- PT_READ_I = 0x1 -- PT_READ_U = 0x3 -- PT_SIGEXC = 0xc -- PT_STEP = 0x9 -- PT_THUPDATE = 0xd -- PT_TRACE_ME = 0x0 -- PT_WRITE_D = 0x5 -- PT_WRITE_I = 0x4 -- PT_WRITE_U = 0x6 -- RLIMIT_AS = 0x5 - RLIMIT_CORE = 0x4 - RLIMIT_CPU = 0x0 -- RLIMIT_CPU_USAGE_MONITOR = 0x2 - RLIMIT_DATA = 0x2 - RLIMIT_FSIZE = 0x1 - RLIMIT_MEMLOCK = 0x6 -@@ -1112,67 +1138,80 @@ const ( - RLIMIT_STACK = 0x3 - RLIM_INFINITY = 0x7fffffffffffffff - RTAX_AUTHOR = 0x6 -+ RTAX_BFD = 0xb - RTAX_BRD = 0x7 -+ RTAX_DNS = 0xc - RTAX_DST = 0x0 - RTAX_GATEWAY = 0x1 - RTAX_GENMASK = 0x3 - RTAX_IFA = 0x5 - RTAX_IFP = 0x4 -- RTAX_MAX = 0x8 -+ RTAX_LABEL = 0xa -+ RTAX_MAX = 0xf - RTAX_NETMASK = 0x2 -+ RTAX_SEARCH = 0xe -+ RTAX_SRC = 0x8 -+ RTAX_SRCMASK = 0x9 -+ RTAX_STATIC = 0xd - RTA_AUTHOR = 0x40 -+ RTA_BFD = 0x800 - RTA_BRD = 0x80 -+ RTA_DNS = 0x1000 - RTA_DST = 0x1 - RTA_GATEWAY = 0x2 - RTA_GENMASK = 0x8 - RTA_IFA = 0x20 - RTA_IFP = 0x10 -+ RTA_LABEL = 0x400 - RTA_NETMASK = 0x4 -+ RTA_SEARCH = 0x4000 -+ RTA_SRC = 0x100 -+ RTA_SRCMASK = 0x200 -+ RTA_STATIC = 0x2000 -+ RTF_ANNOUNCE = 0x4000 -+ RTF_BFD = 0x1000000 - RTF_BLACKHOLE = 0x1000 - RTF_BROADCAST = 0x400000 -+ RTF_CACHED = 0x20000 -+ RTF_CLONED = 0x10000 - RTF_CLONING = 0x100 -- RTF_CONDEMNED = 0x2000000 -- RTF_DELCLONE = 0x80 -+ RTF_CONNECTED = 0x800000 - RTF_DONE = 0x40 - RTF_DYNAMIC = 0x10 -+ RTF_FMASK = 0x110fc08 - RTF_GATEWAY = 0x2 - RTF_HOST = 0x4 -- RTF_IFREF = 0x4000000 -- RTF_IFSCOPE = 0x1000000 - RTF_LLINFO = 0x400 - RTF_LOCAL = 0x200000 - RTF_MODIFIED = 0x20 -- RTF_MULTICAST = 0x800000 -- RTF_NOIFREF = 0x2000 -- RTF_PINNED = 0x100000 -- RTF_PRCLONING = 0x10000 -+ RTF_MPATH = 0x40000 -+ RTF_MPLS = 0x100000 -+ RTF_MULTICAST = 0x200 -+ RTF_PERMANENT_ARP = 0x2000 - RTF_PROTO1 = 0x8000 - RTF_PROTO2 = 0x4000 -- RTF_PROTO3 = 0x40000 -- RTF_PROXY = 0x8000000 -+ RTF_PROTO3 = 0x2000 - RTF_REJECT = 0x8 -- RTF_ROUTER = 0x10000000 - RTF_STATIC = 0x800 - RTF_UP = 0x1 -- RTF_WASCLONED = 0x20000 -- RTF_XRESOLVE = 0x200 -+ RTF_USETRAILERS = 0x8000 -+ RTM_80211INFO = 0x15 - RTM_ADD = 0x1 -+ RTM_BFD = 0x12 - RTM_CHANGE = 0x3 -+ RTM_CHGADDRATTR = 0x14 - RTM_DELADDR = 0xd - RTM_DELETE = 0x2 -- RTM_DELMADDR = 0x10 -+ RTM_DESYNC = 0x10 - RTM_GET = 0x4 -- RTM_GET2 = 0x14 -+ RTM_IFANNOUNCE = 0xf - RTM_IFINFO = 0xe -- RTM_IFINFO2 = 0x12 -- RTM_LOCK = 0x8 -+ RTM_INVALIDATE = 0x11 - RTM_LOSING = 0x5 -+ RTM_MAXSIZE = 0x800 - RTM_MISS = 0x7 - RTM_NEWADDR = 0xc -- RTM_NEWMADDR = 0xf -- RTM_NEWMADDR2 = 0x13 -- RTM_OLDADD = 0x9 -- RTM_OLDDEL = 0xa -+ RTM_PROPOSAL = 0x13 - RTM_REDIRECT = 0x6 - RTM_RESOLVE = 0xb - RTM_RTTUNIT = 0xf4240 -@@ -1185,83 +1224,169 @@ const ( - RTV_RTTVAR = 0x80 - RTV_SPIPE = 0x10 - RTV_SSTHRESH = 0x20 -+ RT_TABLEID_BITS = 0x8 -+ RT_TABLEID_MASK = 0xff -+ RT_TABLEID_MAX = 0xff - RUSAGE_CHILDREN = -0x1 - RUSAGE_SELF = 0x0 -- SCM_CREDS = 0x3 -+ RUSAGE_THREAD = 0x1 - SCM_RIGHTS = 0x1 -- SCM_TIMESTAMP = 0x2 -- SCM_TIMESTAMP_MONOTONIC = 0x4 -+ SCM_TIMESTAMP = 0x4 - SHUT_RD = 0x0 - SHUT_RDWR = 0x2 - SHUT_WR = 0x1 - SIOCADDMULTI = 0x80206931 - SIOCAIFADDR = 0x8040691a -- SIOCARPIPLL = 0xc0206928 -+ SIOCAIFGROUP = 0x80286987 - SIOCATMARK = 0x40047307 -- SIOCAUTOADDR = 0xc0206926 -- SIOCAUTONETMASK = 0x80206927 -+ SIOCBRDGADD = 0x8060693c -+ SIOCBRDGADDL = 0x80606949 -+ SIOCBRDGADDS = 0x80606941 -+ SIOCBRDGARL = 0x808c694d -+ SIOCBRDGDADDR = 0x81286947 -+ SIOCBRDGDEL = 0x8060693d -+ SIOCBRDGDELS = 0x80606942 -+ SIOCBRDGFLUSH = 0x80606948 -+ SIOCBRDGFRL = 0x808c694e -+ SIOCBRDGGCACHE = 0xc0186941 -+ SIOCBRDGGFD = 0xc0186952 -+ SIOCBRDGGHT = 0xc0186951 -+ SIOCBRDGGIFFLGS = 0xc060693e -+ SIOCBRDGGMA = 0xc0186953 -+ SIOCBRDGGPARAM = 0xc0406958 -+ SIOCBRDGGPRI = 0xc0186950 -+ SIOCBRDGGRL = 0xc030694f -+ SIOCBRDGGTO = 0xc0186946 -+ SIOCBRDGIFS = 0xc0606942 -+ SIOCBRDGRTS = 0xc0206943 -+ SIOCBRDGSADDR = 0xc1286944 -+ SIOCBRDGSCACHE = 0x80186940 -+ SIOCBRDGSFD = 0x80186952 -+ SIOCBRDGSHT = 0x80186951 -+ SIOCBRDGSIFCOST = 0x80606955 -+ SIOCBRDGSIFFLGS = 0x8060693f -+ SIOCBRDGSIFPRIO = 0x80606954 -+ SIOCBRDGSIFPROT = 0x8060694a -+ SIOCBRDGSMA = 0x80186953 -+ SIOCBRDGSPRI = 0x80186950 -+ SIOCBRDGSPROTO = 0x8018695a -+ SIOCBRDGSTO = 0x80186945 -+ SIOCBRDGSTXHC = 0x80186959 -+ SIOCDELLABEL = 0x80206997 - SIOCDELMULTI = 0x80206932 - SIOCDIFADDR = 0x80206919 -- SIOCDIFPHYADDR = 0x80206941 -- SIOCGDRVSPEC = 0xc01c697b -- SIOCGETVLAN = 0xc020697f -- SIOCGHIWAT = 0x40047301 -+ SIOCDIFGROUP = 0x80286989 -+ SIOCDIFPARENT = 0x802069b4 -+ SIOCDIFPHYADDR = 0x80206949 -+ SIOCDPWE3NEIGHBOR = 0x802069de -+ SIOCDVNETID = 0x802069af -+ SIOCGETKALIVE = 0xc01869a4 -+ SIOCGETLABEL = 0x8020699a -+ SIOCGETMPWCFG = 0xc02069ae -+ SIOCGETPFLOW = 0xc02069fe -+ SIOCGETPFSYNC = 0xc02069f8 -+ SIOCGETSGCNT = 0xc0207534 -+ SIOCGETVIFCNT = 0xc0287533 -+ SIOCGETVLAN = 0xc0206990 - SIOCGIFADDR = 0xc0206921 -- SIOCGIFALTMTU = 0xc0206948 -- SIOCGIFASYNCMAP = 0xc020697c -- SIOCGIFBOND = 0xc0206947 - SIOCGIFBRDADDR = 0xc0206923 -- SIOCGIFCAP = 0xc020695b -- SIOCGIFCONF = 0xc0086924 -- SIOCGIFDEVMTU = 0xc0206944 -+ SIOCGIFCONF = 0xc0106924 -+ SIOCGIFDATA = 0xc020691b -+ SIOCGIFDESCR = 0xc0206981 - SIOCGIFDSTADDR = 0xc0206922 - SIOCGIFFLAGS = 0xc0206911 -+ SIOCGIFGATTR = 0xc028698b - SIOCGIFGENERIC = 0xc020693a -- SIOCGIFKPI = 0xc0206987 -- SIOCGIFMAC = 0xc0206982 -- SIOCGIFMEDIA = 0xc0286938 -+ SIOCGIFGLIST = 0xc028698d -+ SIOCGIFGMEMB = 0xc028698a -+ SIOCGIFGROUP = 0xc0286988 -+ SIOCGIFHARDMTU = 0xc02069a5 -+ SIOCGIFLLPRIO = 0xc02069b6 -+ SIOCGIFMEDIA = 0xc0406938 - SIOCGIFMETRIC = 0xc0206917 -- SIOCGIFMTU = 0xc0206933 -+ SIOCGIFMTU = 0xc020697e - SIOCGIFNETMASK = 0xc0206925 -- SIOCGIFPDSTADDR = 0xc0206940 -- SIOCGIFPHYS = 0xc0206935 -- SIOCGIFPSRCADDR = 0xc020693f -- SIOCGIFSTATUS = 0xc331693d -- SIOCGIFVLAN = 0xc020697f -- SIOCGIFWAKEFLAGS = 0xc0206988 -- SIOCGLOWAT = 0x40047303 -+ SIOCGIFPAIR = 0xc02069b1 -+ SIOCGIFPARENT = 0xc02069b3 -+ SIOCGIFPRIORITY = 0xc020699c -+ SIOCGIFRDOMAIN = 0xc02069a0 -+ SIOCGIFRTLABEL = 0xc0206983 -+ SIOCGIFRXR = 0x802069aa -+ SIOCGIFSFFPAGE = 0xc1126939 -+ SIOCGIFXFLAGS = 0xc020699e -+ SIOCGLIFPHYADDR = 0xc218694b -+ SIOCGLIFPHYDF = 0xc02069c2 -+ SIOCGLIFPHYECN = 0xc02069c8 -+ SIOCGLIFPHYRTABLE = 0xc02069a2 -+ SIOCGLIFPHYTTL = 0xc02069a9 - SIOCGPGRP = 0x40047309 -- SIOCIFCREATE = 0xc0206978 -- SIOCIFCREATE2 = 0xc020697a -+ SIOCGPWE3 = 0xc0206998 -+ SIOCGPWE3CTRLWORD = 0xc02069dc -+ SIOCGPWE3FAT = 0xc02069dd -+ SIOCGPWE3NEIGHBOR = 0xc21869de -+ SIOCGRXHPRIO = 0xc02069db -+ SIOCGSPPPPARAMS = 0xc0206994 -+ SIOCGTXHPRIO = 0xc02069c6 -+ SIOCGUMBINFO = 0xc02069be -+ SIOCGUMBPARAM = 0xc02069c0 -+ SIOCGVH = 0xc02069f6 -+ SIOCGVNETFLOWID = 0xc02069c4 -+ SIOCGVNETID = 0xc02069a7 -+ SIOCIFAFATTACH = 0x801169ab -+ SIOCIFAFDETACH = 0x801169ac -+ SIOCIFCREATE = 0x8020697a - SIOCIFDESTROY = 0x80206979 -- SIOCIFGCLONERS = 0xc00c6981 -- SIOCRSLVMULTI = 0xc008693b -- SIOCSDRVSPEC = 0x801c697b -- SIOCSETVLAN = 0x8020697e -- SIOCSHIWAT = 0x80047300 -+ SIOCIFGCLONERS = 0xc0106978 -+ SIOCSETKALIVE = 0x801869a3 -+ SIOCSETLABEL = 0x80206999 -+ SIOCSETMPWCFG = 0x802069ad -+ SIOCSETPFLOW = 0x802069fd -+ SIOCSETPFSYNC = 0x802069f7 -+ SIOCSETVLAN = 0x8020698f - SIOCSIFADDR = 0x8020690c -- SIOCSIFALTMTU = 0x80206945 -- SIOCSIFASYNCMAP = 0x8020697d -- SIOCSIFBOND = 0x80206946 - SIOCSIFBRDADDR = 0x80206913 -- SIOCSIFCAP = 0x8020695a -+ SIOCSIFDESCR = 0x80206980 - SIOCSIFDSTADDR = 0x8020690e - SIOCSIFFLAGS = 0x80206910 -+ SIOCSIFGATTR = 0x8028698c - SIOCSIFGENERIC = 0x80206939 -- SIOCSIFKPI = 0x80206986 -- SIOCSIFLLADDR = 0x8020693c -- SIOCSIFMAC = 0x80206983 -+ SIOCSIFLLADDR = 0x8020691f -+ SIOCSIFLLPRIO = 0x802069b5 - SIOCSIFMEDIA = 0xc0206937 - SIOCSIFMETRIC = 0x80206918 -- SIOCSIFMTU = 0x80206934 -+ SIOCSIFMTU = 0x8020697f - SIOCSIFNETMASK = 0x80206916 -- SIOCSIFPHYADDR = 0x8040693e -- SIOCSIFPHYS = 0x80206936 -- SIOCSIFVLAN = 0x8020697e -- SIOCSLOWAT = 0x80047302 -+ SIOCSIFPAIR = 0x802069b0 -+ SIOCSIFPARENT = 0x802069b2 -+ SIOCSIFPRIORITY = 0x8020699b -+ SIOCSIFRDOMAIN = 0x8020699f -+ SIOCSIFRTLABEL = 0x80206982 -+ SIOCSIFXFLAGS = 0x8020699d -+ SIOCSLIFPHYADDR = 0x8218694a -+ SIOCSLIFPHYDF = 0x802069c1 -+ SIOCSLIFPHYECN = 0x802069c7 -+ SIOCSLIFPHYRTABLE = 0x802069a1 -+ SIOCSLIFPHYTTL = 0x802069a8 - SIOCSPGRP = 0x80047308 -+ SIOCSPWE3CTRLWORD = 0x802069dc -+ SIOCSPWE3FAT = 0x802069dd -+ SIOCSPWE3NEIGHBOR = 0x821869de -+ SIOCSRXHPRIO = 0x802069db -+ SIOCSSPPPPARAMS = 0x80206993 -+ SIOCSTXHPRIO = 0x802069c5 -+ SIOCSUMBPARAM = 0x802069bf -+ SIOCSVH = 0xc02069f5 -+ SIOCSVNETFLOWID = 0x802069c3 -+ SIOCSVNETID = 0x802069a6 -+ SIOCSWGDPID = 0xc018695b -+ SIOCSWGMAXFLOW = 0xc0186960 -+ SIOCSWGMAXGROUP = 0xc018695d -+ SIOCSWSDPID = 0x8018695c -+ SIOCSWSPORTNO = 0xc060695f -+ SOCK_CLOEXEC = 0x8000 - SOCK_DGRAM = 0x2 -- SOCK_MAXADDRLEN = 0xff -+ SOCK_DNS = 0x1000 -+ SOCK_NONBLOCK = 0x4000 - SOCK_RAW = 0x3 - SOCK_RDM = 0x4 - SOCK_SEQPACKET = 0x5 -@@ -1269,44 +1394,33 @@ const ( - SOL_SOCKET = 0xffff - SOMAXCONN = 0x80 - SO_ACCEPTCONN = 0x2 -+ SO_BINDANY = 0x1000 - SO_BROADCAST = 0x20 - SO_DEBUG = 0x1 -+ SO_DOMAIN = 0x1024 - SO_DONTROUTE = 0x10 -- SO_DONTTRUNC = 0x2000 - SO_ERROR = 0x1007 - SO_KEEPALIVE = 0x8 -- SO_LABEL = 0x1010 - SO_LINGER = 0x80 -- SO_LINGER_SEC = 0x1080 -- SO_NETSVC_MARKING_LEVEL = 0x1119 -- SO_NET_SERVICE_TYPE = 0x1116 -- SO_NKE = 0x1021 -- SO_NOADDRERR = 0x1023 -- SO_NOSIGPIPE = 0x1022 -- SO_NOTIFYCONFLICT = 0x1026 -- SO_NP_EXTENSIONS = 0x1083 -- SO_NREAD = 0x1020 -- SO_NUMRCVPKT = 0x1112 -- SO_NWRITE = 0x1024 -+ SO_NETPROC = 0x1020 - SO_OOBINLINE = 0x100 -- SO_PEERLABEL = 0x1011 -- SO_RANDOMPORT = 0x1082 -+ SO_PEERCRED = 0x1022 -+ SO_PROTOCOL = 0x1025 - SO_RCVBUF = 0x1002 - SO_RCVLOWAT = 0x1004 - SO_RCVTIMEO = 0x1006 - SO_REUSEADDR = 0x4 - SO_REUSEPORT = 0x200 -- SO_REUSESHAREUID = 0x1025 -+ SO_RTABLE = 0x1021 - SO_SNDBUF = 0x1001 - SO_SNDLOWAT = 0x1003 - SO_SNDTIMEO = 0x1005 -- SO_TIMESTAMP = 0x400 -- SO_TIMESTAMP_MONOTONIC = 0x800 -+ SO_SPLICE = 0x1023 -+ SO_TIMESTAMP = 0x800 - SO_TYPE = 0x1008 -- SO_UPCALLCLOSEWAIT = 0x1027 - SO_USELOOPBACK = 0x40 -- SO_WANTMORE = 0x4000 -- SO_WANTOOBFLAG = 0x8000 -+ SO_ZEROIZE = 0x2000 -+ S_BLKSIZE = 0x200 - S_IEXEC = 0x40 - S_IFBLK = 0x6000 - S_IFCHR = 0x2000 -@@ -1316,7 +1430,6 @@ const ( - S_IFMT = 0xf000 - S_IFREG = 0x8000 - S_IFSOCK = 0xc000 -- S_IFWHT = 0xe000 - S_IREAD = 0x100 - S_IRGRP = 0x20 - S_IROTH = 0x4 -@@ -1335,11 +1448,6 @@ const ( - S_IXGRP = 0x8 - S_IXOTH = 0x1 - S_IXUSR = 0x40 -- TAB0 = 0x0 -- TAB1 = 0x400 -- TAB2 = 0x800 -- TAB3 = 0x4 -- TABDLY = 0xc04 - TCIFLUSH = 0x1 - TCIOFF = 0x3 - TCIOFLUSH = 0x3 -@@ -1347,52 +1455,46 @@ const ( - TCOFLUSH = 0x2 - TCOOFF = 0x1 - TCOON = 0x2 -- TCP_CONNECTIONTIMEOUT = 0x20 -- TCP_CONNECTION_INFO = 0x106 -- TCP_ENABLE_ECN = 0x104 -- TCP_FASTOPEN = 0x105 -- TCP_KEEPALIVE = 0x10 -- TCP_KEEPCNT = 0x102 -- TCP_KEEPINTVL = 0x101 -- TCP_MAXHLEN = 0x3c -- TCP_MAXOLEN = 0x28 -+ TCP_MAXBURST = 0x4 - TCP_MAXSEG = 0x2 - TCP_MAXWIN = 0xffff -- TCP_MAX_SACK = 0x4 -+ TCP_MAX_SACK = 0x3 - TCP_MAX_WINSHIFT = 0xe -- TCP_MINMSS = 0xd8 -+ TCP_MD5SIG = 0x4 - TCP_MSS = 0x200 - TCP_NODELAY = 0x1 -- TCP_NOOPT = 0x8 -- TCP_NOPUSH = 0x4 -- TCP_NOTSENT_LOWAT = 0x201 -- TCP_RXT_CONNDROPTIME = 0x80 -- TCP_RXT_FINDROP = 0x100 -- TCP_SENDMOREACKS = 0x103 -+ TCP_NOPUSH = 0x10 -+ TCP_SACKHOLE_LIMIT = 0x80 -+ TCP_SACK_ENABLE = 0x8 - TCSAFLUSH = 0x2 -+ TIMER_ABSTIME = 0x1 -+ TIMER_RELTIME = 0x0 - TIOCCBRK = 0x2000747a - TIOCCDTR = 0x20007478 -+ TIOCCHKVERAUTH = 0x2000741e -+ TIOCCLRVERAUTH = 0x2000741d - TIOCCONS = 0x80047462 -- TIOCDCDTIMESTAMP = 0x40087458 - TIOCDRAIN = 0x2000745e -- TIOCDSIMICROCODE = 0x20007455 - TIOCEXCL = 0x2000740d - TIOCEXT = 0x80047460 -+ TIOCFLAG_CLOCAL = 0x2 -+ TIOCFLAG_CRTSCTS = 0x4 -+ TIOCFLAG_MDMBUF = 0x8 -+ TIOCFLAG_PPS = 0x10 -+ TIOCFLAG_SOFTCAR = 0x1 - TIOCFLUSH = 0x80047410 -- TIOCGDRAINWAIT = 0x40047456 - TIOCGETA = 0x402c7413 - TIOCGETD = 0x4004741a -+ TIOCGFLAGS = 0x4004745d - TIOCGPGRP = 0x40047477 -+ TIOCGSID = 0x40047463 -+ TIOCGTSTAMP = 0x4010745b - TIOCGWINSZ = 0x40087468 -- TIOCIXOFF = 0x20007480 -- TIOCIXON = 0x20007481 - TIOCMBIC = 0x8004746b - TIOCMBIS = 0x8004746c -- TIOCMGDTRWAIT = 0x4004745a - TIOCMGET = 0x4004746a -- TIOCMODG = 0x40047403 -- TIOCMODS = 0x80047404 -- TIOCMSDTRWAIT = 0x8004745b -+ TIOCMODG = 0x4004746a -+ TIOCMODS = 0x8004746d - TIOCMSET = 0x8004746d - TIOCM_CAR = 0x40 - TIOCM_CD = 0x40 -@@ -1417,29 +1519,29 @@ const ( - TIOCPKT_NOSTOP = 0x10 - TIOCPKT_START = 0x8 - TIOCPKT_STOP = 0x4 -- TIOCPTYGNAME = 0x40807453 -- TIOCPTYGRANT = 0x20007454 -- TIOCPTYUNLK = 0x20007452 - TIOCREMOTE = 0x80047469 - TIOCSBRK = 0x2000747b -- TIOCSCONS = 0x20007463 - TIOCSCTTY = 0x20007461 -- TIOCSDRAINWAIT = 0x80047457 - TIOCSDTR = 0x20007479 - TIOCSETA = 0x802c7414 - TIOCSETAF = 0x802c7416 - TIOCSETAW = 0x802c7415 - TIOCSETD = 0x8004741b -- TIOCSIG = 0x2000745f -+ TIOCSETVERAUTH = 0x8004741c -+ TIOCSFLAGS = 0x8004745c -+ TIOCSIG = 0x8004745f - TIOCSPGRP = 0x80047476 - TIOCSTART = 0x2000746e - TIOCSTAT = 0x20007465 -- TIOCSTI = 0x80017472 - TIOCSTOP = 0x2000746f -+ TIOCSTSTAMP = 0x8008745a - TIOCSWINSZ = 0x80087467 -- TIOCTIMESTAMP = 0x40087459 - TIOCUCNTL = 0x80047466 -+ TIOCUCNTL_CBRK = 0x7a -+ TIOCUCNTL_SBRK = 0x7b - TOSTOP = 0x400000 -+ UTIME_NOW = -0x2 -+ UTIME_OMIT = -0x1 - VDISCARD = 0xf - VDSUSP = 0xb - VEOF = 0x0 -@@ -1450,36 +1552,33 @@ const ( - VKILL = 0x5 - VLNEXT = 0xe - VMIN = 0x10 -+ VM_ANONMIN = 0x7 - VM_LOADAVG = 0x2 -- VM_MACHFACTOR = 0x4 -- VM_MAXID = 0x6 -+ VM_MALLOC_CONF = 0xc -+ VM_MAXID = 0xd -+ VM_MAXSLP = 0xa - VM_METER = 0x1 -- VM_SWAPUSAGE = 0x5 -+ VM_NKMEMPAGES = 0x6 -+ VM_PSSTRINGS = 0x3 -+ VM_SWAPENCRYPT = 0x5 -+ VM_USPACE = 0xb -+ VM_UVMEXP = 0x4 -+ VM_VNODEMIN = 0x9 -+ VM_VTEXTMIN = 0x8 - VQUIT = 0x9 - VREPRINT = 0x6 - VSTART = 0xc - VSTATUS = 0x12 - VSTOP = 0xd - VSUSP = 0xa -- VT0 = 0x0 -- VT1 = 0x10000 -- VTDLY = 0x10000 - VTIME = 0x11 - VWERASE = 0x4 -- WCONTINUED = 0x10 -+ WALTSIG = 0x4 -+ WCONTINUED = 0x8 - WCOREFLAG = 0x80 -- WEXITED = 0x4 - WNOHANG = 0x1 -- WNOWAIT = 0x20 -- WORDSIZE = 0x20 -- WSTOPPED = 0x8 - WUNTRACED = 0x2 -- XATTR_CREATE = 0x2 -- XATTR_NODEFAULT = 0x10 -- XATTR_NOFOLLOW = 0x1 -- XATTR_NOSECURITY = 0x8 -- XATTR_REPLACE = 0x4 -- XATTR_SHOWCOMPRESSION = 0x20 -+ XCASE = 0x1000000 - ) - - // Errors -@@ -1492,21 +1591,17 @@ const ( - EAGAIN = syscall.Errno(0x23) - EALREADY = syscall.Errno(0x25) - EAUTH = syscall.Errno(0x50) -- EBADARCH = syscall.Errno(0x56) -- EBADEXEC = syscall.Errno(0x55) - EBADF = syscall.Errno(0x9) -- EBADMACHO = syscall.Errno(0x58) -- EBADMSG = syscall.Errno(0x5e) -+ EBADMSG = syscall.Errno(0x5c) - EBADRPC = syscall.Errno(0x48) - EBUSY = syscall.Errno(0x10) -- ECANCELED = syscall.Errno(0x59) -+ ECANCELED = syscall.Errno(0x58) - ECHILD = syscall.Errno(0xa) - ECONNABORTED = syscall.Errno(0x35) - ECONNREFUSED = syscall.Errno(0x3d) - ECONNRESET = syscall.Errno(0x36) - EDEADLK = syscall.Errno(0xb) - EDESTADDRREQ = syscall.Errno(0x27) -- EDEVERR = syscall.Errno(0x53) - EDOM = syscall.Errno(0x21) - EDQUOT = syscall.Errno(0x45) - EEXIST = syscall.Errno(0x11) -@@ -1515,54 +1610,51 @@ const ( - EFTYPE = syscall.Errno(0x4f) - EHOSTDOWN = syscall.Errno(0x40) - EHOSTUNREACH = syscall.Errno(0x41) -- EIDRM = syscall.Errno(0x5a) -- EILSEQ = syscall.Errno(0x5c) -+ EIDRM = syscall.Errno(0x59) -+ EILSEQ = syscall.Errno(0x54) - EINPROGRESS = syscall.Errno(0x24) - EINTR = syscall.Errno(0x4) - EINVAL = syscall.Errno(0x16) - EIO = syscall.Errno(0x5) -+ EIPSEC = syscall.Errno(0x52) - EISCONN = syscall.Errno(0x38) - EISDIR = syscall.Errno(0x15) -- ELAST = syscall.Errno(0x6a) -+ ELAST = syscall.Errno(0x5f) - ELOOP = syscall.Errno(0x3e) -+ EMEDIUMTYPE = syscall.Errno(0x56) - EMFILE = syscall.Errno(0x18) - EMLINK = syscall.Errno(0x1f) - EMSGSIZE = syscall.Errno(0x28) -- EMULTIHOP = syscall.Errno(0x5f) - ENAMETOOLONG = syscall.Errno(0x3f) - ENEEDAUTH = syscall.Errno(0x51) - ENETDOWN = syscall.Errno(0x32) - ENETRESET = syscall.Errno(0x34) - ENETUNREACH = syscall.Errno(0x33) - ENFILE = syscall.Errno(0x17) -- ENOATTR = syscall.Errno(0x5d) -+ ENOATTR = syscall.Errno(0x53) - ENOBUFS = syscall.Errno(0x37) -- ENODATA = syscall.Errno(0x60) - ENODEV = syscall.Errno(0x13) - ENOENT = syscall.Errno(0x2) - ENOEXEC = syscall.Errno(0x8) - ENOLCK = syscall.Errno(0x4d) -- ENOLINK = syscall.Errno(0x61) -+ ENOMEDIUM = syscall.Errno(0x55) - ENOMEM = syscall.Errno(0xc) -- ENOMSG = syscall.Errno(0x5b) -- ENOPOLICY = syscall.Errno(0x67) -+ ENOMSG = syscall.Errno(0x5a) - ENOPROTOOPT = syscall.Errno(0x2a) - ENOSPC = syscall.Errno(0x1c) -- ENOSR = syscall.Errno(0x62) -- ENOSTR = syscall.Errno(0x63) - ENOSYS = syscall.Errno(0x4e) - ENOTBLK = syscall.Errno(0xf) - ENOTCONN = syscall.Errno(0x39) - ENOTDIR = syscall.Errno(0x14) - ENOTEMPTY = syscall.Errno(0x42) -- ENOTRECOVERABLE = syscall.Errno(0x68) -+ ENOTRECOVERABLE = syscall.Errno(0x5d) - ENOTSOCK = syscall.Errno(0x26) -- ENOTSUP = syscall.Errno(0x2d) -+ ENOTSUP = syscall.Errno(0x5b) - ENOTTY = syscall.Errno(0x19) - ENXIO = syscall.Errno(0x6) -- EOPNOTSUPP = syscall.Errno(0x66) -- EOVERFLOW = syscall.Errno(0x54) -- EOWNERDEAD = syscall.Errno(0x69) -+ EOPNOTSUPP = syscall.Errno(0x2d) -+ EOVERFLOW = syscall.Errno(0x57) -+ EOWNERDEAD = syscall.Errno(0x5e) - EPERM = syscall.Errno(0x1) - EPFNOSUPPORT = syscall.Errno(0x2e) - EPIPE = syscall.Errno(0x20) -@@ -1570,22 +1662,18 @@ const ( - EPROCUNAVAIL = syscall.Errno(0x4c) - EPROGMISMATCH = syscall.Errno(0x4b) - EPROGUNAVAIL = syscall.Errno(0x4a) -- EPROTO = syscall.Errno(0x64) -+ EPROTO = syscall.Errno(0x5f) - EPROTONOSUPPORT = syscall.Errno(0x2b) - EPROTOTYPE = syscall.Errno(0x29) -- EPWROFF = syscall.Errno(0x52) -- EQFULL = syscall.Errno(0x6a) - ERANGE = syscall.Errno(0x22) - EREMOTE = syscall.Errno(0x47) - EROFS = syscall.Errno(0x1e) - ERPCMISMATCH = syscall.Errno(0x49) -- ESHLIBVERS = syscall.Errno(0x57) - ESHUTDOWN = syscall.Errno(0x3a) - ESOCKTNOSUPPORT = syscall.Errno(0x2c) - ESPIPE = syscall.Errno(0x1d) - ESRCH = syscall.Errno(0x3) - ESTALE = syscall.Errno(0x46) -- ETIME = syscall.Errno(0x65) - ETIMEDOUT = syscall.Errno(0x3c) - ETOOMANYREFS = syscall.Errno(0x3b) - ETXTBSY = syscall.Errno(0x1a) -@@ -1617,6 +1705,7 @@ const ( - SIGSTOP = syscall.Signal(0x11) - SIGSYS = syscall.Signal(0xc) - SIGTERM = syscall.Signal(0xf) -+ SIGTHR = syscall.Signal(0x20) - SIGTRAP = syscall.Signal(0x5) - SIGTSTP = syscall.Signal(0x12) - SIGTTIN = syscall.Signal(0x15) -@@ -1651,7 +1740,7 @@ var errorList = [...]struct { - {13, "EACCES", "permission denied"}, - {14, "EFAULT", "bad address"}, - {15, "ENOTBLK", "block device required"}, -- {16, "EBUSY", "resource busy"}, -+ {16, "EBUSY", "device busy"}, - {17, "EEXIST", "file exists"}, - {18, "EXDEV", "cross-device link"}, - {19, "ENODEV", "operation not supported by device"}, -@@ -1680,7 +1769,7 @@ var errorList = [...]struct { - {42, "ENOPROTOOPT", "protocol not available"}, - {43, "EPROTONOSUPPORT", "protocol not supported"}, - {44, "ESOCKTNOSUPPORT", "socket type not supported"}, -- {45, "ENOTSUP", "operation not supported"}, -+ {45, "EOPNOTSUPP", "operation not supported"}, - {46, "EPFNOSUPPORT", "protocol family not supported"}, - {47, "EAFNOSUPPORT", "address family not supported by protocol family"}, - {48, "EADDRINUSE", "address already in use"}, -@@ -1704,12 +1793,12 @@ var errorList = [...]struct { - {66, "ENOTEMPTY", "directory not empty"}, - {67, "EPROCLIM", "too many processes"}, - {68, "EUSERS", "too many users"}, -- {69, "EDQUOT", "disc quota exceeded"}, -+ {69, "EDQUOT", "disk quota exceeded"}, - {70, "ESTALE", "stale NFS file handle"}, - {71, "EREMOTE", "too many levels of remote in path"}, - {72, "EBADRPC", "RPC struct is bad"}, - {73, "ERPCMISMATCH", "RPC version wrong"}, -- {74, "EPROGUNAVAIL", "RPC prog. not avail"}, -+ {74, "EPROGUNAVAIL", "RPC program not available"}, - {75, "EPROGMISMATCH", "program version wrong"}, - {76, "EPROCUNAVAIL", "bad procedure for program"}, - {77, "ENOLCK", "no locks available"}, -@@ -1717,31 +1806,20 @@ var errorList = [...]struct { - {79, "EFTYPE", "inappropriate file type or format"}, - {80, "EAUTH", "authentication error"}, - {81, "ENEEDAUTH", "need authenticator"}, -- {82, "EPWROFF", "device power is off"}, -- {83, "EDEVERR", "device error"}, -- {84, "EOVERFLOW", "value too large to be stored in data type"}, -- {85, "EBADEXEC", "bad executable (or shared library)"}, -- {86, "EBADARCH", "bad CPU type in executable"}, -- {87, "ESHLIBVERS", "shared library version mismatch"}, -- {88, "EBADMACHO", "malformed Mach-o file"}, -- {89, "ECANCELED", "operation canceled"}, -- {90, "EIDRM", "identifier removed"}, -- {91, "ENOMSG", "no message of desired type"}, -- {92, "EILSEQ", "illegal byte sequence"}, -- {93, "ENOATTR", "attribute not found"}, -- {94, "EBADMSG", "bad message"}, -- {95, "EMULTIHOP", "EMULTIHOP (Reserved)"}, -- {96, "ENODATA", "no message available on STREAM"}, -- {97, "ENOLINK", "ENOLINK (Reserved)"}, -- {98, "ENOSR", "no STREAM resources"}, -- {99, "ENOSTR", "not a STREAM"}, -- {100, "EPROTO", "protocol error"}, -- {101, "ETIME", "STREAM ioctl timeout"}, -- {102, "EOPNOTSUPP", "operation not supported on socket"}, -- {103, "ENOPOLICY", "policy not found"}, -- {104, "ENOTRECOVERABLE", "state not recoverable"}, -- {105, "EOWNERDEAD", "previous owner died"}, -- {106, "EQFULL", "interface output queue is full"}, -+ {82, "EIPSEC", "IPsec processing failure"}, -+ {83, "ENOATTR", "attribute not found"}, -+ {84, "EILSEQ", "illegal byte sequence"}, -+ {85, "ENOMEDIUM", "no medium found"}, -+ {86, "EMEDIUMTYPE", "wrong medium type"}, -+ {87, "EOVERFLOW", "value too large to be stored in data type"}, -+ {88, "ECANCELED", "operation canceled"}, -+ {89, "EIDRM", "identifier removed"}, -+ {90, "ENOMSG", "no message of desired type"}, -+ {91, "ENOTSUP", "not supported"}, -+ {92, "EBADMSG", "bad message"}, -+ {93, "ENOTRECOVERABLE", "state not recoverable"}, -+ {94, "EOWNERDEAD", "previous owner died"}, -+ {95, "ELAST", "protocol error"}, - } - - // Signal table -@@ -1781,4 +1859,5 @@ var signalList = [...]struct { - {29, "SIGINFO", "information request"}, - {30, "SIGUSR1", "user defined signal 1"}, - {31, "SIGUSR2", "user defined signal 2"}, -+ {32, "SIGTHR", "thread AST"}, - } -diff --git a/vendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go b/vendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go -index 46e054c..1afee6a 100644 ---- a/vendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go -+++ b/vendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go -@@ -1,6 +1,7 @@ - // mkerrors.sh -m64 - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build amd64 && solaris - // +build amd64,solaris - - // Code generated by cmd/cgo -godefs; DO NOT EDIT. -@@ -192,6 +193,12 @@ const ( - CSTOPB = 0x40 - CSUSP = 0x1a - CSWTCH = 0x1a -+ DIOC = 0x6400 -+ DIOCGETB = 0x6402 -+ DIOCGETC = 0x6401 -+ DIOCGETP = 0x6408 -+ DIOCSETE = 0x6403 -+ DIOCSETP = 0x6409 - DLT_AIRONET_HEADER = 0x78 - DLT_APPLE_IP_OVER_IEEE1394 = 0x8a - DLT_ARCNET = 0x7 -@@ -290,6 +297,7 @@ const ( - FF0 = 0x0 - FF1 = 0x8000 - FFDLY = 0x8000 -+ FIORDCHK = 0x6603 - FLUSHALL = 0x1 - FLUSHDATA = 0x0 - FLUSHO = 0x2000 -@@ -358,6 +366,7 @@ const ( - HUPCL = 0x400 - IBSHIFT = 0x10 - ICANON = 0x2 -+ ICMP6_FILTER = 0x1 - ICRNL = 0x100 - IEXTEN = 0x8000 - IFF_ADDRCONF = 0x80000 -@@ -604,6 +613,7 @@ const ( - IP_RECVPKTINFO = 0x1a - IP_RECVRETOPTS = 0x6 - IP_RECVSLLA = 0xa -+ IP_RECVTOS = 0xc - IP_RECVTTL = 0xb - IP_RETOPTS = 0x8 - IP_REUSEADDR = 0x104 -@@ -645,6 +655,14 @@ const ( - MAP_SHARED = 0x1 - MAP_TEXT = 0x400 - MAP_TYPE = 0xf -+ MCAST_BLOCK_SOURCE = 0x2b -+ MCAST_EXCLUDE = 0x2 -+ MCAST_INCLUDE = 0x1 -+ MCAST_JOIN_GROUP = 0x29 -+ MCAST_JOIN_SOURCE_GROUP = 0x2d -+ MCAST_LEAVE_GROUP = 0x2a -+ MCAST_LEAVE_SOURCE_GROUP = 0x2e -+ MCAST_UNBLOCK_SOURCE = 0x2c - MCL_CURRENT = 0x1 - MCL_FUTURE = 0x2 - MSG_CTRUNC = 0x10 -@@ -653,6 +671,7 @@ const ( - MSG_DUPCTRL = 0x800 - MSG_EOR = 0x8 - MSG_MAXIOVLEN = 0x10 -+ MSG_NOSIGNAL = 0x200 - MSG_NOTIFICATION = 0x100 - MSG_OOB = 0x1 - MSG_PEEK = 0x2 -@@ -687,6 +706,8 @@ const ( - O_APPEND = 0x8 - O_CLOEXEC = 0x800000 - O_CREAT = 0x100 -+ O_DIRECT = 0x2000000 -+ O_DIRECTORY = 0x1000000 - O_DSYNC = 0x40 - O_EXCL = 0x400 - O_EXEC = 0x400000 -@@ -725,7 +746,7 @@ const ( - RLIMIT_FSIZE = 0x1 - RLIMIT_NOFILE = 0x5 - RLIMIT_STACK = 0x3 -- RLIM_INFINITY = -0x3 -+ RLIM_INFINITY = 0xfffffffffffffffd - RTAX_AUTHOR = 0x6 - RTAX_BRD = 0x7 - RTAX_DST = 0x0 -@@ -1047,6 +1068,7 @@ const ( - TCOON = 0x1 - TCP_ABORT_THRESHOLD = 0x11 - TCP_ANONPRIVBIND = 0x20 -+ TCP_CONGESTION = 0x25 - TCP_CONN_ABORT_THRESHOLD = 0x13 - TCP_CONN_NOTIFY_THRESHOLD = 0x12 - TCP_CORK = 0x18 -@@ -1076,6 +1098,8 @@ const ( - TCSETSF = 0x5410 - TCSETSW = 0x540f - TCXONC = 0x5406 -+ TIMER_ABSTIME = 0x1 -+ TIMER_RELTIME = 0x0 - TIOC = 0x5400 - TIOCCBRK = 0x747a - TIOCCDTR = 0x7478 -diff --git a/vendor/golang.org/x/sys/unix/zerrors_zos_s390x.go b/vendor/golang.org/x/sys/unix/zerrors_zos_s390x.go -new file mode 100644 -index 0000000..fc7d050 ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/zerrors_zos_s390x.go -@@ -0,0 +1,860 @@ -+// Copyright 2020 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build zos && s390x -+// +build zos,s390x -+ -+// Hand edited based on zerrors_linux_s390x.go -+// TODO: auto-generate. -+ -+package unix -+ -+const ( -+ BRKINT = 0x0001 -+ CLOCK_MONOTONIC = 0x1 -+ CLOCK_PROCESS_CPUTIME_ID = 0x2 -+ CLOCK_REALTIME = 0x0 -+ CLOCK_THREAD_CPUTIME_ID = 0x3 -+ CS8 = 0x0030 -+ CSIZE = 0x0030 -+ ECHO = 0x00000008 -+ ECHONL = 0x00000001 -+ FD_CLOEXEC = 0x01 -+ FD_CLOFORK = 0x02 -+ FNDELAY = 0x04 -+ F_CLOSFD = 9 -+ F_CONTROL_CVT = 13 -+ F_DUPFD = 0 -+ F_DUPFD2 = 8 -+ F_GETFD = 1 -+ F_GETFL = 259 -+ F_GETLK = 5 -+ F_GETOWN = 10 -+ F_OK = 0x0 -+ F_RDLCK = 1 -+ F_SETFD = 2 -+ F_SETFL = 4 -+ F_SETLK = 6 -+ F_SETLKW = 7 -+ F_SETOWN = 11 -+ F_SETTAG = 12 -+ F_UNLCK = 3 -+ F_WRLCK = 2 -+ FSTYPE_ZFS = 0xe9 //"Z" -+ FSTYPE_HFS = 0xc8 //"H" -+ FSTYPE_NFS = 0xd5 //"N" -+ FSTYPE_TFS = 0xe3 //"T" -+ FSTYPE_AUTOMOUNT = 0xc1 //"A" -+ IP6F_MORE_FRAG = 0x0001 -+ IP6F_OFF_MASK = 0xfff8 -+ IP6F_RESERVED_MASK = 0x0006 -+ IP6OPT_JUMBO = 0xc2 -+ IP6OPT_JUMBO_LEN = 6 -+ IP6OPT_MUTABLE = 0x20 -+ IP6OPT_NSAP_ADDR = 0xc3 -+ IP6OPT_PAD1 = 0x00 -+ IP6OPT_PADN = 0x01 -+ IP6OPT_ROUTER_ALERT = 0x05 -+ IP6OPT_TUNNEL_LIMIT = 0x04 -+ IP6OPT_TYPE_DISCARD = 0x40 -+ IP6OPT_TYPE_FORCEICMP = 0x80 -+ IP6OPT_TYPE_ICMP = 0xc0 -+ IP6OPT_TYPE_SKIP = 0x00 -+ IP6_ALERT_AN = 0x0002 -+ IP6_ALERT_MLD = 0x0000 -+ IP6_ALERT_RSVP = 0x0001 -+ IPPORT_RESERVED = 1024 -+ IPPORT_USERRESERVED = 5000 -+ IPPROTO_AH = 51 -+ SOL_AH = 51 -+ IPPROTO_DSTOPTS = 60 -+ SOL_DSTOPTS = 60 -+ IPPROTO_EGP = 8 -+ SOL_EGP = 8 -+ IPPROTO_ESP = 50 -+ SOL_ESP = 50 -+ IPPROTO_FRAGMENT = 44 -+ SOL_FRAGMENT = 44 -+ IPPROTO_GGP = 2 -+ SOL_GGP = 2 -+ IPPROTO_HOPOPTS = 0 -+ SOL_HOPOPTS = 0 -+ IPPROTO_ICMP = 1 -+ SOL_ICMP = 1 -+ IPPROTO_ICMPV6 = 58 -+ SOL_ICMPV6 = 58 -+ IPPROTO_IDP = 22 -+ SOL_IDP = 22 -+ IPPROTO_IP = 0 -+ SOL_IP = 0 -+ IPPROTO_IPV6 = 41 -+ SOL_IPV6 = 41 -+ IPPROTO_MAX = 256 -+ SOL_MAX = 256 -+ IPPROTO_NONE = 59 -+ SOL_NONE = 59 -+ IPPROTO_PUP = 12 -+ SOL_PUP = 12 -+ IPPROTO_RAW = 255 -+ SOL_RAW = 255 -+ IPPROTO_ROUTING = 43 -+ SOL_ROUTING = 43 -+ IPPROTO_TCP = 6 -+ SOL_TCP = 6 -+ IPPROTO_UDP = 17 -+ SOL_UDP = 17 -+ IPV6_ADDR_PREFERENCES = 32 -+ IPV6_CHECKSUM = 19 -+ IPV6_DONTFRAG = 29 -+ IPV6_DSTOPTS = 23 -+ IPV6_HOPLIMIT = 11 -+ IPV6_HOPOPTS = 22 -+ IPV6_JOIN_GROUP = 5 -+ IPV6_LEAVE_GROUP = 6 -+ IPV6_MULTICAST_HOPS = 9 -+ IPV6_MULTICAST_IF = 7 -+ IPV6_MULTICAST_LOOP = 4 -+ IPV6_NEXTHOP = 20 -+ IPV6_PATHMTU = 12 -+ IPV6_PKTINFO = 13 -+ IPV6_PREFER_SRC_CGA = 0x10 -+ IPV6_PREFER_SRC_COA = 0x02 -+ IPV6_PREFER_SRC_HOME = 0x01 -+ IPV6_PREFER_SRC_NONCGA = 0x20 -+ IPV6_PREFER_SRC_PUBLIC = 0x08 -+ IPV6_PREFER_SRC_TMP = 0x04 -+ IPV6_RECVDSTOPTS = 28 -+ IPV6_RECVHOPLIMIT = 14 -+ IPV6_RECVHOPOPTS = 26 -+ IPV6_RECVPATHMTU = 16 -+ IPV6_RECVPKTINFO = 15 -+ IPV6_RECVRTHDR = 25 -+ IPV6_RECVTCLASS = 31 -+ IPV6_RTHDR = 21 -+ IPV6_RTHDRDSTOPTS = 24 -+ IPV6_RTHDR_TYPE_0 = 0 -+ IPV6_TCLASS = 30 -+ IPV6_UNICAST_HOPS = 3 -+ IPV6_USE_MIN_MTU = 18 -+ IPV6_V6ONLY = 10 -+ IP_ADD_MEMBERSHIP = 5 -+ IP_ADD_SOURCE_MEMBERSHIP = 12 -+ IP_BLOCK_SOURCE = 10 -+ IP_DEFAULT_MULTICAST_LOOP = 1 -+ IP_DEFAULT_MULTICAST_TTL = 1 -+ IP_DROP_MEMBERSHIP = 6 -+ IP_DROP_SOURCE_MEMBERSHIP = 13 -+ IP_MAX_MEMBERSHIPS = 20 -+ IP_MULTICAST_IF = 7 -+ IP_MULTICAST_LOOP = 4 -+ IP_MULTICAST_TTL = 3 -+ IP_OPTIONS = 1 -+ IP_PKTINFO = 101 -+ IP_RECVPKTINFO = 102 -+ IP_TOS = 2 -+ IP_TTL = 3 -+ IP_UNBLOCK_SOURCE = 11 -+ ICANON = 0x0010 -+ ICMP6_FILTER = 0x26 -+ ICRNL = 0x0002 -+ IEXTEN = 0x0020 -+ IGNBRK = 0x0004 -+ IGNCR = 0x0008 -+ INLCR = 0x0020 -+ ISIG = 0x0040 -+ ISTRIP = 0x0080 -+ IXON = 0x0200 -+ IXOFF = 0x0100 -+ LOCK_SH = 0x1 // Not exist on zOS -+ LOCK_EX = 0x2 // Not exist on zOS -+ LOCK_NB = 0x4 // Not exist on zOS -+ LOCK_UN = 0x8 // Not exist on zOS -+ POLLIN = 0x0003 -+ POLLOUT = 0x0004 -+ POLLPRI = 0x0010 -+ POLLERR = 0x0020 -+ POLLHUP = 0x0040 -+ POLLNVAL = 0x0080 -+ PROT_READ = 0x1 // mmap - page can be read -+ PROT_WRITE = 0x2 // page can be written -+ PROT_NONE = 0x4 // can't be accessed -+ PROT_EXEC = 0x8 // can be executed -+ MAP_PRIVATE = 0x1 // changes are private -+ MAP_SHARED = 0x2 // changes are shared -+ MAP_FIXED = 0x4 // place exactly -+ MCAST_JOIN_GROUP = 40 -+ MCAST_LEAVE_GROUP = 41 -+ MCAST_JOIN_SOURCE_GROUP = 42 -+ MCAST_LEAVE_SOURCE_GROUP = 43 -+ MCAST_BLOCK_SOURCE = 44 -+ MCAST_UNBLOCK_SOURCE = 45 -+ MS_SYNC = 0x1 // msync - synchronous writes -+ MS_ASYNC = 0x2 // asynchronous writes -+ MS_INVALIDATE = 0x4 // invalidate mappings -+ MTM_RDONLY = 0x80000000 -+ MTM_RDWR = 0x40000000 -+ MTM_UMOUNT = 0x10000000 -+ MTM_IMMED = 0x08000000 -+ MTM_FORCE = 0x04000000 -+ MTM_DRAIN = 0x02000000 -+ MTM_RESET = 0x01000000 -+ MTM_SAMEMODE = 0x00100000 -+ MTM_UNQSEFORCE = 0x00040000 -+ MTM_NOSUID = 0x00000400 -+ MTM_SYNCHONLY = 0x00000200 -+ MTM_REMOUNT = 0x00000100 -+ MTM_NOSECURITY = 0x00000080 -+ NFDBITS = 0x20 -+ O_ACCMODE = 0x03 -+ O_APPEND = 0x08 -+ O_ASYNCSIG = 0x0200 -+ O_CREAT = 0x80 -+ O_EXCL = 0x40 -+ O_GETFL = 0x0F -+ O_LARGEFILE = 0x0400 -+ O_NONBLOCK = 0x04 -+ O_RDONLY = 0x02 -+ O_RDWR = 0x03 -+ O_SYNC = 0x0100 -+ O_TRUNC = 0x10 -+ O_WRONLY = 0x01 -+ O_NOCTTY = 0x20 -+ OPOST = 0x0001 -+ ONLCR = 0x0004 -+ PARENB = 0x0200 -+ PARMRK = 0x0400 -+ QUERYCVT = 3 -+ RUSAGE_CHILDREN = -0x1 -+ RUSAGE_SELF = 0x0 // RUSAGE_THREAD unsupported on z/OS -+ SEEK_CUR = 1 -+ SEEK_END = 2 -+ SEEK_SET = 0 -+ SETAUTOCVTALL = 5 -+ SETAUTOCVTON = 2 -+ SETCVTALL = 4 -+ SETCVTOFF = 0 -+ SETCVTON = 1 -+ AF_APPLETALK = 16 -+ AF_CCITT = 10 -+ AF_CHAOS = 5 -+ AF_DATAKIT = 9 -+ AF_DLI = 13 -+ AF_ECMA = 8 -+ AF_HYLINK = 15 -+ AF_IMPLINK = 3 -+ AF_INET = 2 -+ AF_INET6 = 19 -+ AF_INTF = 20 -+ AF_IUCV = 17 -+ AF_LAT = 14 -+ AF_LINK = 18 -+ AF_MAX = 30 -+ AF_NBS = 7 -+ AF_NDD = 23 -+ AF_NETWARE = 22 -+ AF_NS = 6 -+ AF_PUP = 4 -+ AF_RIF = 21 -+ AF_ROUTE = 20 -+ AF_SNA = 11 -+ AF_UNIX = 1 -+ AF_UNSPEC = 0 -+ IBMTCP_IMAGE = 1 -+ MSG_ACK_EXPECTED = 0x10 -+ MSG_ACK_GEN = 0x40 -+ MSG_ACK_TIMEOUT = 0x20 -+ MSG_CONNTERM = 0x80 -+ MSG_CTRUNC = 0x20 -+ MSG_DONTROUTE = 0x4 -+ MSG_EOF = 0x8000 -+ MSG_EOR = 0x8 -+ MSG_MAXIOVLEN = 16 -+ MSG_NONBLOCK = 0x4000 -+ MSG_OOB = 0x1 -+ MSG_PEEK = 0x2 -+ MSG_TRUNC = 0x10 -+ MSG_WAITALL = 0x40 -+ PRIO_PROCESS = 1 -+ PRIO_PGRP = 2 -+ PRIO_USER = 3 -+ RLIMIT_CPU = 0 -+ RLIMIT_FSIZE = 1 -+ RLIMIT_DATA = 2 -+ RLIMIT_STACK = 3 -+ RLIMIT_CORE = 4 -+ RLIMIT_AS = 5 -+ RLIMIT_NOFILE = 6 -+ RLIMIT_MEMLIMIT = 7 -+ RLIM_INFINITY = 2147483647 -+ SCM_RIGHTS = 0x01 -+ SF_CLOSE = 0x00000002 -+ SF_REUSE = 0x00000001 -+ SHUT_RD = 0 -+ SHUT_RDWR = 2 -+ SHUT_WR = 1 -+ SOCK_CONN_DGRAM = 6 -+ SOCK_DGRAM = 2 -+ SOCK_RAW = 3 -+ SOCK_RDM = 4 -+ SOCK_SEQPACKET = 5 -+ SOCK_STREAM = 1 -+ SOL_SOCKET = 0xffff -+ SOMAXCONN = 10 -+ SO_ACCEPTCONN = 0x0002 -+ SO_ACCEPTECONNABORTED = 0x0006 -+ SO_ACKNOW = 0x7700 -+ SO_BROADCAST = 0x0020 -+ SO_BULKMODE = 0x8000 -+ SO_CKSUMRECV = 0x0800 -+ SO_CLOSE = 0x01 -+ SO_CLUSTERCONNTYPE = 0x00004001 -+ SO_CLUSTERCONNTYPE_INTERNAL = 8 -+ SO_CLUSTERCONNTYPE_NOCONN = 0 -+ SO_CLUSTERCONNTYPE_NONE = 1 -+ SO_CLUSTERCONNTYPE_SAME_CLUSTER = 2 -+ SO_CLUSTERCONNTYPE_SAME_IMAGE = 4 -+ SO_DEBUG = 0x0001 -+ SO_DONTROUTE = 0x0010 -+ SO_ERROR = 0x1007 -+ SO_IGNOREINCOMINGPUSH = 0x1 -+ SO_IGNORESOURCEVIPA = 0x0002 -+ SO_KEEPALIVE = 0x0008 -+ SO_LINGER = 0x0080 -+ SO_NONBLOCKLOCAL = 0x8001 -+ SO_NOREUSEADDR = 0x1000 -+ SO_OOBINLINE = 0x0100 -+ SO_OPTACK = 0x8004 -+ SO_OPTMSS = 0x8003 -+ SO_RCVBUF = 0x1002 -+ SO_RCVLOWAT = 0x1004 -+ SO_RCVTIMEO = 0x1006 -+ SO_REUSEADDR = 0x0004 -+ SO_REUSEPORT = 0x0200 -+ SO_SECINFO = 0x00004002 -+ SO_SET = 0x0200 -+ SO_SNDBUF = 0x1001 -+ SO_SNDLOWAT = 0x1003 -+ SO_SNDTIMEO = 0x1005 -+ SO_TYPE = 0x1008 -+ SO_UNSET = 0x0400 -+ SO_USELOOPBACK = 0x0040 -+ SO_USE_IFBUFS = 0x0400 -+ S_ISUID = 0x0800 -+ S_ISGID = 0x0400 -+ S_ISVTX = 0x0200 -+ S_IRUSR = 0x0100 -+ S_IWUSR = 0x0080 -+ S_IXUSR = 0x0040 -+ S_IRWXU = 0x01C0 -+ S_IRGRP = 0x0020 -+ S_IWGRP = 0x0010 -+ S_IXGRP = 0x0008 -+ S_IRWXG = 0x0038 -+ S_IROTH = 0x0004 -+ S_IWOTH = 0x0002 -+ S_IXOTH = 0x0001 -+ S_IRWXO = 0x0007 -+ S_IREAD = S_IRUSR -+ S_IWRITE = S_IWUSR -+ S_IEXEC = S_IXUSR -+ S_IFDIR = 0x01000000 -+ S_IFCHR = 0x02000000 -+ S_IFREG = 0x03000000 -+ S_IFFIFO = 0x04000000 -+ S_IFIFO = 0x04000000 -+ S_IFLNK = 0x05000000 -+ S_IFBLK = 0x06000000 -+ S_IFSOCK = 0x07000000 -+ S_IFVMEXTL = 0xFE000000 -+ S_IFVMEXTL_EXEC = 0x00010000 -+ S_IFVMEXTL_DATA = 0x00020000 -+ S_IFVMEXTL_MEL = 0x00030000 -+ S_IFEXTL = 0x00000001 -+ S_IFPROGCTL = 0x00000002 -+ S_IFAPFCTL = 0x00000004 -+ S_IFNOSHARE = 0x00000008 -+ S_IFSHARELIB = 0x00000010 -+ S_IFMT = 0xFF000000 -+ S_IFMST = 0x00FF0000 -+ TCP_KEEPALIVE = 0x8 -+ TCP_NODELAY = 0x1 -+ TCP_INFO = 0xb -+ TCP_USER_TIMEOUT = 0x1 -+ TIOCGWINSZ = 0x4008a368 -+ TIOCSWINSZ = 0x8008a367 -+ TIOCSBRK = 0x2000a77b -+ TIOCCBRK = 0x2000a77a -+ TIOCSTI = 0x8001a772 -+ TIOCGPGRP = 0x4004a777 // _IOR(167, 119, int) -+ TCSANOW = 0 -+ TCSETS = 0 // equivalent to TCSANOW for tcsetattr -+ TCSADRAIN = 1 -+ TCSETSW = 1 // equivalent to TCSADRAIN for tcsetattr -+ TCSAFLUSH = 2 -+ TCSETSF = 2 // equivalent to TCSAFLUSH for tcsetattr -+ TCGETS = 3 // not defined in ioctl.h -- zos golang only -+ TCIFLUSH = 0 -+ TCOFLUSH = 1 -+ TCIOFLUSH = 2 -+ TCOOFF = 0 -+ TCOON = 1 -+ TCIOFF = 2 -+ TCION = 3 -+ TIOCSPGRP = 0x8004a776 -+ TIOCNOTTY = 0x2000a771 -+ TIOCEXCL = 0x2000a70d -+ TIOCNXCL = 0x2000a70e -+ TIOCGETD = 0x4004a700 -+ TIOCSETD = 0x8004a701 -+ TIOCPKT = 0x8004a770 -+ TIOCSTOP = 0x2000a76f -+ TIOCSTART = 0x2000a76e -+ TIOCUCNTL = 0x8004a766 -+ TIOCREMOTE = 0x8004a769 -+ TIOCMGET = 0x4004a76a -+ TIOCMSET = 0x8004a76d -+ TIOCMBIC = 0x8004a76b -+ TIOCMBIS = 0x8004a76c -+ VINTR = 0 -+ VQUIT = 1 -+ VERASE = 2 -+ VKILL = 3 -+ VEOF = 4 -+ VEOL = 5 -+ VMIN = 6 -+ VSTART = 7 -+ VSTOP = 8 -+ VSUSP = 9 -+ VTIME = 10 -+ WCONTINUED = 0x4 -+ WNOHANG = 0x1 -+ WUNTRACED = 0x2 -+ _BPX_SWAP = 1 -+ _BPX_NONSWAP = 2 -+ MCL_CURRENT = 1 // for Linux compatibility -- no zos semantics -+ MCL_FUTURE = 2 // for Linux compatibility -- no zos semantics -+ MCL_ONFAULT = 3 // for Linux compatibility -- no zos semantics -+ MADV_NORMAL = 0 // for Linux compatibility -- no zos semantics -+ MADV_RANDOM = 1 // for Linux compatibility -- no zos semantics -+ MADV_SEQUENTIAL = 2 // for Linux compatibility -- no zos semantics -+ MADV_WILLNEED = 3 // for Linux compatibility -- no zos semantics -+ MADV_REMOVE = 4 // for Linux compatibility -- no zos semantics -+ MADV_DONTFORK = 5 // for Linux compatibility -- no zos semantics -+ MADV_DOFORK = 6 // for Linux compatibility -- no zos semantics -+ MADV_HWPOISON = 7 // for Linux compatibility -- no zos semantics -+ MADV_MERGEABLE = 8 // for Linux compatibility -- no zos semantics -+ MADV_UNMERGEABLE = 9 // for Linux compatibility -- no zos semantics -+ MADV_SOFT_OFFLINE = 10 // for Linux compatibility -- no zos semantics -+ MADV_HUGEPAGE = 11 // for Linux compatibility -- no zos semantics -+ MADV_NOHUGEPAGE = 12 // for Linux compatibility -- no zos semantics -+ MADV_DONTDUMP = 13 // for Linux compatibility -- no zos semantics -+ MADV_DODUMP = 14 // for Linux compatibility -- no zos semantics -+ MADV_FREE = 15 // for Linux compatibility -- no zos semantics -+ MADV_WIPEONFORK = 16 // for Linux compatibility -- no zos semantics -+ MADV_KEEPONFORK = 17 // for Linux compatibility -- no zos semantics -+ AT_SYMLINK_NOFOLLOW = 1 // for Unix compatibility -- no zos semantics -+ AT_FDCWD = 2 // for Unix compatibility -- no zos semantics -+) -+ -+const ( -+ EDOM = Errno(1) -+ ERANGE = Errno(2) -+ EACCES = Errno(111) -+ EAGAIN = Errno(112) -+ EBADF = Errno(113) -+ EBUSY = Errno(114) -+ ECHILD = Errno(115) -+ EDEADLK = Errno(116) -+ EEXIST = Errno(117) -+ EFAULT = Errno(118) -+ EFBIG = Errno(119) -+ EINTR = Errno(120) -+ EINVAL = Errno(121) -+ EIO = Errno(122) -+ EISDIR = Errno(123) -+ EMFILE = Errno(124) -+ EMLINK = Errno(125) -+ ENAMETOOLONG = Errno(126) -+ ENFILE = Errno(127) -+ ENODEV = Errno(128) -+ ENOENT = Errno(129) -+ ENOEXEC = Errno(130) -+ ENOLCK = Errno(131) -+ ENOMEM = Errno(132) -+ ENOSPC = Errno(133) -+ ENOSYS = Errno(134) -+ ENOTDIR = Errno(135) -+ ENOTEMPTY = Errno(136) -+ ENOTTY = Errno(137) -+ ENXIO = Errno(138) -+ EPERM = Errno(139) -+ EPIPE = Errno(140) -+ EROFS = Errno(141) -+ ESPIPE = Errno(142) -+ ESRCH = Errno(143) -+ EXDEV = Errno(144) -+ E2BIG = Errno(145) -+ ELOOP = Errno(146) -+ EILSEQ = Errno(147) -+ ENODATA = Errno(148) -+ EOVERFLOW = Errno(149) -+ EMVSNOTUP = Errno(150) -+ ECMSSTORAGE = Errno(151) -+ EMVSDYNALC = Errno(151) -+ EMVSCVAF = Errno(152) -+ EMVSCATLG = Errno(153) -+ ECMSINITIAL = Errno(156) -+ EMVSINITIAL = Errno(156) -+ ECMSERR = Errno(157) -+ EMVSERR = Errno(157) -+ EMVSPARM = Errno(158) -+ ECMSPFSFILE = Errno(159) -+ EMVSPFSFILE = Errno(159) -+ EMVSBADCHAR = Errno(160) -+ ECMSPFSPERM = Errno(162) -+ EMVSPFSPERM = Errno(162) -+ EMVSSAFEXTRERR = Errno(163) -+ EMVSSAF2ERR = Errno(164) -+ EMVSTODNOTSET = Errno(165) -+ EMVSPATHOPTS = Errno(166) -+ EMVSNORTL = Errno(167) -+ EMVSEXPIRE = Errno(168) -+ EMVSPASSWORD = Errno(169) -+ EMVSWLMERROR = Errno(170) -+ EMVSCPLERROR = Errno(171) -+ EMVSARMERROR = Errno(172) -+ ELENOFORK = Errno(200) -+ ELEMSGERR = Errno(201) -+ EFPMASKINV = Errno(202) -+ EFPMODEINV = Errno(203) -+ EBUFLEN = Errno(227) -+ EEXTLINK = Errno(228) -+ ENODD = Errno(229) -+ ECMSESMERR = Errno(230) -+ ECPERR = Errno(231) -+ ELEMULTITHREAD = Errno(232) -+ ELEFENCE = Errno(244) -+ EBADDATA = Errno(245) -+ EUNKNOWN = Errno(246) -+ ENOTSUP = Errno(247) -+ EBADNAME = Errno(248) -+ ENOTSAFE = Errno(249) -+ ELEMULTITHREADFORK = Errno(257) -+ ECUNNOENV = Errno(258) -+ ECUNNOCONV = Errno(259) -+ ECUNNOTALIGNED = Errno(260) -+ ECUNERR = Errno(262) -+ EIBMBADCALL = Errno(1000) -+ EIBMBADPARM = Errno(1001) -+ EIBMSOCKOUTOFRANGE = Errno(1002) -+ EIBMSOCKINUSE = Errno(1003) -+ EIBMIUCVERR = Errno(1004) -+ EOFFLOADboxERROR = Errno(1005) -+ EOFFLOADboxRESTART = Errno(1006) -+ EOFFLOADboxDOWN = Errno(1007) -+ EIBMCONFLICT = Errno(1008) -+ EIBMCANCELLED = Errno(1009) -+ EIBMBADTCPNAME = Errno(1011) -+ ENOTBLK = Errno(1100) -+ ETXTBSY = Errno(1101) -+ EWOULDBLOCK = Errno(1102) -+ EINPROGRESS = Errno(1103) -+ EALREADY = Errno(1104) -+ ENOTSOCK = Errno(1105) -+ EDESTADDRREQ = Errno(1106) -+ EMSGSIZE = Errno(1107) -+ EPROTOTYPE = Errno(1108) -+ ENOPROTOOPT = Errno(1109) -+ EPROTONOSUPPORT = Errno(1110) -+ ESOCKTNOSUPPORT = Errno(1111) -+ EOPNOTSUPP = Errno(1112) -+ EPFNOSUPPORT = Errno(1113) -+ EAFNOSUPPORT = Errno(1114) -+ EADDRINUSE = Errno(1115) -+ EADDRNOTAVAIL = Errno(1116) -+ ENETDOWN = Errno(1117) -+ ENETUNREACH = Errno(1118) -+ ENETRESET = Errno(1119) -+ ECONNABORTED = Errno(1120) -+ ECONNRESET = Errno(1121) -+ ENOBUFS = Errno(1122) -+ EISCONN = Errno(1123) -+ ENOTCONN = Errno(1124) -+ ESHUTDOWN = Errno(1125) -+ ETOOMANYREFS = Errno(1126) -+ ETIMEDOUT = Errno(1127) -+ ECONNREFUSED = Errno(1128) -+ EHOSTDOWN = Errno(1129) -+ EHOSTUNREACH = Errno(1130) -+ EPROCLIM = Errno(1131) -+ EUSERS = Errno(1132) -+ EDQUOT = Errno(1133) -+ ESTALE = Errno(1134) -+ EREMOTE = Errno(1135) -+ ENOSTR = Errno(1136) -+ ETIME = Errno(1137) -+ ENOSR = Errno(1138) -+ ENOMSG = Errno(1139) -+ EBADMSG = Errno(1140) -+ EIDRM = Errno(1141) -+ ENONET = Errno(1142) -+ ERREMOTE = Errno(1143) -+ ENOLINK = Errno(1144) -+ EADV = Errno(1145) -+ ESRMNT = Errno(1146) -+ ECOMM = Errno(1147) -+ EPROTO = Errno(1148) -+ EMULTIHOP = Errno(1149) -+ EDOTDOT = Errno(1150) -+ EREMCHG = Errno(1151) -+ ECANCELED = Errno(1152) -+ EINTRNODATA = Errno(1159) -+ ENOREUSE = Errno(1160) -+ ENOMOVE = Errno(1161) -+) -+ -+// Signals -+const ( -+ SIGHUP = Signal(1) -+ SIGINT = Signal(2) -+ SIGABRT = Signal(3) -+ SIGILL = Signal(4) -+ SIGPOLL = Signal(5) -+ SIGURG = Signal(6) -+ SIGSTOP = Signal(7) -+ SIGFPE = Signal(8) -+ SIGKILL = Signal(9) -+ SIGBUS = Signal(10) -+ SIGSEGV = Signal(11) -+ SIGSYS = Signal(12) -+ SIGPIPE = Signal(13) -+ SIGALRM = Signal(14) -+ SIGTERM = Signal(15) -+ SIGUSR1 = Signal(16) -+ SIGUSR2 = Signal(17) -+ SIGABND = Signal(18) -+ SIGCONT = Signal(19) -+ SIGCHLD = Signal(20) -+ SIGTTIN = Signal(21) -+ SIGTTOU = Signal(22) -+ SIGIO = Signal(23) -+ SIGQUIT = Signal(24) -+ SIGTSTP = Signal(25) -+ SIGTRAP = Signal(26) -+ SIGIOERR = Signal(27) -+ SIGWINCH = Signal(28) -+ SIGXCPU = Signal(29) -+ SIGXFSZ = Signal(30) -+ SIGVTALRM = Signal(31) -+ SIGPROF = Signal(32) -+ SIGDANGER = Signal(33) -+ SIGTHSTOP = Signal(34) -+ SIGTHCONT = Signal(35) -+ SIGTRACE = Signal(37) -+ SIGDCE = Signal(38) -+ SIGDUMP = Signal(39) -+) -+ -+// Error table -+var errorList = [...]struct { -+ num Errno -+ name string -+ desc string -+}{ -+ {1, "EDC5001I", "A domain error occurred."}, -+ {2, "EDC5002I", "A range error occurred."}, -+ {111, "EDC5111I", "Permission denied."}, -+ {112, "EDC5112I", "Resource temporarily unavailable."}, -+ {113, "EDC5113I", "Bad file descriptor."}, -+ {114, "EDC5114I", "Resource busy."}, -+ {115, "EDC5115I", "No child processes."}, -+ {116, "EDC5116I", "Resource deadlock avoided."}, -+ {117, "EDC5117I", "File exists."}, -+ {118, "EDC5118I", "Incorrect address."}, -+ {119, "EDC5119I", "File too large."}, -+ {120, "EDC5120I", "Interrupted function call."}, -+ {121, "EDC5121I", "Invalid argument."}, -+ {122, "EDC5122I", "Input/output error."}, -+ {123, "EDC5123I", "Is a directory."}, -+ {124, "EDC5124I", "Too many open files."}, -+ {125, "EDC5125I", "Too many links."}, -+ {126, "EDC5126I", "Filename too long."}, -+ {127, "EDC5127I", "Too many open files in system."}, -+ {128, "EDC5128I", "No such device."}, -+ {129, "EDC5129I", "No such file or directory."}, -+ {130, "EDC5130I", "Exec format error."}, -+ {131, "EDC5131I", "No locks available."}, -+ {132, "EDC5132I", "Not enough memory."}, -+ {133, "EDC5133I", "No space left on device."}, -+ {134, "EDC5134I", "Function not implemented."}, -+ {135, "EDC5135I", "Not a directory."}, -+ {136, "EDC5136I", "Directory not empty."}, -+ {137, "EDC5137I", "Inappropriate I/O control operation."}, -+ {138, "EDC5138I", "No such device or address."}, -+ {139, "EDC5139I", "Operation not permitted."}, -+ {140, "EDC5140I", "Broken pipe."}, -+ {141, "EDC5141I", "Read-only file system."}, -+ {142, "EDC5142I", "Invalid seek."}, -+ {143, "EDC5143I", "No such process."}, -+ {144, "EDC5144I", "Improper link."}, -+ {145, "EDC5145I", "The parameter list is too long, or the message to receive was too large for the buffer."}, -+ {146, "EDC5146I", "Too many levels of symbolic links."}, -+ {147, "EDC5147I", "Illegal byte sequence."}, -+ {148, "", ""}, -+ {149, "EDC5149I", "Value Overflow Error."}, -+ {150, "EDC5150I", "UNIX System Services is not active."}, -+ {151, "EDC5151I", "Dynamic allocation error."}, -+ {152, "EDC5152I", "Common VTOC access facility (CVAF) error."}, -+ {153, "EDC5153I", "Catalog obtain error."}, -+ {156, "EDC5156I", "Process initialization error."}, -+ {157, "EDC5157I", "An internal error has occurred."}, -+ {158, "EDC5158I", "Bad parameters were passed to the service."}, -+ {159, "EDC5159I", "The Physical File System encountered a permanent file error."}, -+ {160, "EDC5160I", "Bad character in environment variable name."}, -+ {162, "EDC5162I", "The Physical File System encountered a system error."}, -+ {163, "EDC5163I", "SAF/RACF extract error."}, -+ {164, "EDC5164I", "SAF/RACF error."}, -+ {165, "EDC5165I", "System TOD clock not set."}, -+ {166, "EDC5166I", "Access mode argument on function call conflicts with PATHOPTS parameter on JCL DD statement."}, -+ {167, "EDC5167I", "Access to the UNIX System Services version of the C RTL is denied."}, -+ {168, "EDC5168I", "Password has expired."}, -+ {169, "EDC5169I", "Password is invalid."}, -+ {170, "EDC5170I", "An error was encountered with WLM."}, -+ {171, "EDC5171I", "An error was encountered with CPL."}, -+ {172, "EDC5172I", "An error was encountered with Application Response Measurement (ARM) component."}, -+ {200, "EDC5200I", "The application contains a Language Environment member language that cannot tolerate a fork()."}, -+ {201, "EDC5201I", "The Language Environment message file was not found in the hierarchical file system."}, -+ {202, "EDC5202E", "DLL facilities are not supported under SPC environment."}, -+ {203, "EDC5203E", "DLL facilities are not supported under POSIX environment."}, -+ {227, "EDC5227I", "Buffer is not long enough to contain a path definition"}, -+ {228, "EDC5228I", "The file referred to is an external link"}, -+ {229, "EDC5229I", "No path definition for ddname in effect"}, -+ {230, "EDC5230I", "ESM error."}, -+ {231, "EDC5231I", "CP or the external security manager had an error"}, -+ {232, "EDC5232I", "The function failed because it was invoked from a multithread environment."}, -+ {244, "EDC5244I", "The program, module or DLL is not supported in this environment."}, -+ {245, "EDC5245I", "Data is not valid."}, -+ {246, "EDC5246I", "Unknown system state."}, -+ {247, "EDC5247I", "Operation not supported."}, -+ {248, "EDC5248I", "The object name specified is not correct."}, -+ {249, "EDC5249I", "The function is not allowed."}, -+ {257, "EDC5257I", "Function cannot be called in the child process of a fork() from a multithreaded process until exec() is called."}, -+ {258, "EDC5258I", "A CUN_RS_NO_UNI_ENV error was issued by Unicode Services."}, -+ {259, "EDC5259I", "A CUN_RS_NO_CONVERSION error was issued by Unicode Services."}, -+ {260, "EDC5260I", "A CUN_RS_TABLE_NOT_ALIGNED error was issued by Unicode Services."}, -+ {262, "EDC5262I", "An iconv() function encountered an unexpected error while using Unicode Services."}, -+ {1000, "EDC8000I", "A bad socket-call constant was found in the IUCV header."}, -+ {1001, "EDC8001I", "An error was found in the IUCV header."}, -+ {1002, "EDC8002I", "A socket descriptor is out of range."}, -+ {1003, "EDC8003I", "A socket descriptor is in use."}, -+ {1004, "EDC8004I", "Request failed because of an IUCV error."}, -+ {1005, "EDC8005I", "Offload box error."}, -+ {1006, "EDC8006I", "Offload box restarted."}, -+ {1007, "EDC8007I", "Offload box down."}, -+ {1008, "EDC8008I", "Already a conflicting call outstanding on socket."}, -+ {1009, "EDC8009I", "Request cancelled using a SOCKcallCANCEL request."}, -+ {1011, "EDC8011I", "A name of a PFS was specified that either is not configured or is not a Sockets PFS."}, -+ {1100, "EDC8100I", "Block device required."}, -+ {1101, "EDC8101I", "Text file busy."}, -+ {1102, "EDC8102I", "Operation would block."}, -+ {1103, "EDC8103I", "Operation now in progress."}, -+ {1104, "EDC8104I", "Connection already in progress."}, -+ {1105, "EDC8105I", "Socket operation on non-socket."}, -+ {1106, "EDC8106I", "Destination address required."}, -+ {1107, "EDC8107I", "Message too long."}, -+ {1108, "EDC8108I", "Protocol wrong type for socket."}, -+ {1109, "EDC8109I", "Protocol not available."}, -+ {1110, "EDC8110I", "Protocol not supported."}, -+ {1111, "EDC8111I", "Socket type not supported."}, -+ {1112, "EDC8112I", "Operation not supported on socket."}, -+ {1113, "EDC8113I", "Protocol family not supported."}, -+ {1114, "EDC8114I", "Address family not supported."}, -+ {1115, "EDC8115I", "Address already in use."}, -+ {1116, "EDC8116I", "Address not available."}, -+ {1117, "EDC8117I", "Network is down."}, -+ {1118, "EDC8118I", "Network is unreachable."}, -+ {1119, "EDC8119I", "Network dropped connection on reset."}, -+ {1120, "EDC8120I", "Connection ended abnormally."}, -+ {1121, "EDC8121I", "Connection reset."}, -+ {1122, "EDC8122I", "No buffer space available."}, -+ {1123, "EDC8123I", "Socket already connected."}, -+ {1124, "EDC8124I", "Socket not connected."}, -+ {1125, "EDC8125I", "Can't send after socket shutdown."}, -+ {1126, "EDC8126I", "Too many references; can't splice."}, -+ {1127, "EDC8127I", "Connection timed out."}, -+ {1128, "EDC8128I", "Connection refused."}, -+ {1129, "EDC8129I", "Host is not available."}, -+ {1130, "EDC8130I", "Host cannot be reached."}, -+ {1131, "EDC8131I", "Too many processes."}, -+ {1132, "EDC8132I", "Too many users."}, -+ {1133, "EDC8133I", "Disk quota exceeded."}, -+ {1134, "EDC8134I", "Stale file handle."}, -+ {1135, "", ""}, -+ {1136, "EDC8136I", "File is not a STREAM."}, -+ {1137, "EDC8137I", "STREAMS ioctl() timeout."}, -+ {1138, "EDC8138I", "No STREAMS resources."}, -+ {1139, "EDC8139I", "The message identified by set_id and msg_id is not in the message catalog."}, -+ {1140, "EDC8140I", "Bad message."}, -+ {1141, "EDC8141I", "Identifier removed."}, -+ {1142, "", ""}, -+ {1143, "", ""}, -+ {1144, "EDC8144I", "The link has been severed."}, -+ {1145, "", ""}, -+ {1146, "", ""}, -+ {1147, "", ""}, -+ {1148, "EDC8148I", "Protocol error."}, -+ {1149, "EDC8149I", "Multihop not allowed."}, -+ {1150, "", ""}, -+ {1151, "", ""}, -+ {1152, "EDC8152I", "The asynchronous I/O request has been canceled."}, -+ {1159, "EDC8159I", "Function call was interrupted before any data was received."}, -+ {1160, "EDC8160I", "Socket reuse is not supported."}, -+ {1161, "EDC8161I", "The file system cannot currently be moved."}, -+} -+ -+// Signal table -+var signalList = [...]struct { -+ num Signal -+ name string -+ desc string -+}{ -+ {1, "SIGHUP", "hangup"}, -+ {2, "SIGINT", "interrupt"}, -+ {3, "SIGABT", "aborted"}, -+ {4, "SIGILL", "illegal instruction"}, -+ {5, "SIGPOLL", "pollable event"}, -+ {6, "SIGURG", "urgent I/O condition"}, -+ {7, "SIGSTOP", "stop process"}, -+ {8, "SIGFPE", "floating point exception"}, -+ {9, "SIGKILL", "killed"}, -+ {10, "SIGBUS", "bus error"}, -+ {11, "SIGSEGV", "segmentation fault"}, -+ {12, "SIGSYS", "bad argument to routine"}, -+ {13, "SIGPIPE", "broken pipe"}, -+ {14, "SIGALRM", "alarm clock"}, -+ {15, "SIGTERM", "terminated"}, -+ {16, "SIGUSR1", "user defined signal 1"}, -+ {17, "SIGUSR2", "user defined signal 2"}, -+ {18, "SIGABND", "abend"}, -+ {19, "SIGCONT", "continued"}, -+ {20, "SIGCHLD", "child exited"}, -+ {21, "SIGTTIN", "stopped (tty input)"}, -+ {22, "SIGTTOU", "stopped (tty output)"}, -+ {23, "SIGIO", "I/O possible"}, -+ {24, "SIGQUIT", "quit"}, -+ {25, "SIGTSTP", "stopped"}, -+ {26, "SIGTRAP", "trace/breakpoint trap"}, -+ {27, "SIGIOER", "I/O error"}, -+ {28, "SIGWINCH", "window changed"}, -+ {29, "SIGXCPU", "CPU time limit exceeded"}, -+ {30, "SIGXFSZ", "file size limit exceeded"}, -+ {31, "SIGVTALRM", "virtual timer expired"}, -+ {32, "SIGPROF", "profiling timer expired"}, -+ {33, "SIGDANGER", "danger"}, -+ {34, "SIGTHSTOP", "stop thread"}, -+ {35, "SIGTHCONT", "continue thread"}, -+ {37, "SIGTRACE", "trace"}, -+ {38, "", "DCE"}, -+ {39, "SIGDUMP", "dump"}, -+} -diff --git a/vendor/golang.org/x/sys/unix/zptrace_armnn_linux.go b/vendor/golang.org/x/sys/unix/zptrace_armnn_linux.go -index 89c5920..bd001a6 100644 ---- a/vendor/golang.org/x/sys/unix/zptrace_armnn_linux.go -+++ b/vendor/golang.org/x/sys/unix/zptrace_armnn_linux.go -@@ -1,5 +1,6 @@ - // Code generated by linux/mkall.go generatePtracePair("arm", "arm64"). DO NOT EDIT. - -+//go:build linux && (arm || arm64) - // +build linux - // +build arm arm64 - -diff --git a/vendor/golang.org/x/sys/unix/zptrace_mipsnn_linux.go b/vendor/golang.org/x/sys/unix/zptrace_mipsnn_linux.go -index 24b841e..c34d063 100644 ---- a/vendor/golang.org/x/sys/unix/zptrace_mipsnn_linux.go -+++ b/vendor/golang.org/x/sys/unix/zptrace_mipsnn_linux.go -@@ -1,5 +1,6 @@ - // Code generated by linux/mkall.go generatePtracePair("mips", "mips64"). DO NOT EDIT. - -+//go:build linux && (mips || mips64) - // +build linux - // +build mips mips64 - -diff --git a/vendor/golang.org/x/sys/unix/zptrace_mipsnnle_linux.go b/vendor/golang.org/x/sys/unix/zptrace_mipsnnle_linux.go -index 47b0489..3ccf0c0 100644 ---- a/vendor/golang.org/x/sys/unix/zptrace_mipsnnle_linux.go -+++ b/vendor/golang.org/x/sys/unix/zptrace_mipsnnle_linux.go -@@ -1,5 +1,6 @@ - // Code generated by linux/mkall.go generatePtracePair("mipsle", "mips64le"). DO NOT EDIT. - -+//go:build linux && (mipsle || mips64le) - // +build linux - // +build mipsle mips64le - -diff --git a/vendor/golang.org/x/sys/unix/zptrace_x86_linux.go b/vendor/golang.org/x/sys/unix/zptrace_x86_linux.go -index ea5d9cb..7d65857 100644 ---- a/vendor/golang.org/x/sys/unix/zptrace_x86_linux.go -+++ b/vendor/golang.org/x/sys/unix/zptrace_x86_linux.go -@@ -1,5 +1,6 @@ - // Code generated by linux/mkall.go generatePtracePair("386", "amd64"). DO NOT EDIT. - -+//go:build linux && (386 || amd64) - // +build linux - // +build 386 amd64 - -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc.go b/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc.go -index ed657ff..870215d 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc.go -@@ -1,6 +1,7 @@ - // go run mksyscall_aix_ppc.go -aix -tags aix,ppc syscall_aix.go syscall_aix_ppc.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build aix && ppc - // +build aix,ppc - - package unix -@@ -16,6 +17,7 @@ int getdirent(int, uintptr_t, size_t); - int wait4(int, uintptr_t, int, uintptr_t); - int ioctl(int, int, uintptr_t); - int fcntl(uintptr_t, int, uintptr_t); -+int fsync_range(int, int, long long, long long); - int acct(uintptr_t); - int chdir(uintptr_t); - int chroot(uintptr_t); -@@ -28,7 +30,6 @@ int fchmod(int, unsigned int); - int fchmodat(int, uintptr_t, unsigned int, int); - int fchownat(int, uintptr_t, int, int, int); - int fdatasync(int); --int fsync(int); - int getpgid(int); - int getpgrp(); - int getpid(); -@@ -254,6 +255,16 @@ func fcntl(fd int, cmd int, arg int) (val int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func fsyncRange(fd int, how int, start int64, length int64) (err error) { -+ r0, er := C.fsync_range(C.int(fd), C.int(how), C.longlong(start), C.longlong(length)) -+ if r0 == -1 && er != nil { -+ err = er -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Acct(path string) (err error) { - _p0 := uintptr(unsafe.Pointer(C.CString(path))) - r0, er := C.acct(C.uintptr_t(_p0)) -@@ -378,16 +389,6 @@ func Fdatasync(fd int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Fsync(fd int) (err error) { -- r0, er := C.fsync(C.int(fd)) -- if r0 == -1 && er != nil { -- err = er -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Getpgid(pid int) (pgid int, err error) { - r0, er := C.getpgid(C.int(pid)) - pgid = int(r0) -@@ -974,7 +975,7 @@ func Pause() (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 *byte - if len(p) > 0 { - _p0 = &p[0] -@@ -991,7 +992,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 *byte - if len(p) > 0 { - _p0 = &p[0] -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64.go b/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64.go -index 664b293..a89b0bf 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64.go -@@ -1,6 +1,7 @@ - // go run mksyscall_aix_ppc64.go -aix -tags aix,ppc64 syscall_aix.go syscall_aix_ppc64.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build aix && ppc64 - // +build aix,ppc64 - - package unix -@@ -134,6 +135,16 @@ func fcntl(fd int, cmd int, arg int) (val int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func fsyncRange(fd int, how int, start int64, length int64) (err error) { -+ _, e1 := callfsync_range(fd, how, start, length) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Acct(path string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) -@@ -282,16 +293,6 @@ func Fdatasync(fd int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Fsync(fd int) (err error) { -- _, e1 := callfsync(fd) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Getpgid(pid int) (pgid int, err error) { - r0, e1 := callgetpgid(pid) - pgid = int(r0) -@@ -930,7 +931,7 @@ func Pause() (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 *byte - if len(p) > 0 { - _p0 = &p[0] -@@ -945,7 +946,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 *byte - if len(p) > 0 { - _p0 = &p[0] -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gc.go b/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gc.go -index 4b3a8ad..2caa5ad 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gc.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gc.go -@@ -1,8 +1,8 @@ - // go run mksyscall_aix_ppc64.go -aix -tags aix,ppc64 syscall_aix.go syscall_aix_ppc64.go - // Code generated by the command above; see README.md. DO NOT EDIT. - --// +build aix,ppc64 --// +build !gccgo -+//go:build aix && ppc64 && gc -+// +build aix,ppc64,gc - - package unix - -@@ -18,6 +18,7 @@ import ( - //go:cgo_import_dynamic libc_wait4 wait4 "libc.a/shr_64.o" - //go:cgo_import_dynamic libc_ioctl ioctl "libc.a/shr_64.o" - //go:cgo_import_dynamic libc_fcntl fcntl "libc.a/shr_64.o" -+//go:cgo_import_dynamic libc_fsync_range fsync_range "libc.a/shr_64.o" - //go:cgo_import_dynamic libc_acct acct "libc.a/shr_64.o" - //go:cgo_import_dynamic libc_chdir chdir "libc.a/shr_64.o" - //go:cgo_import_dynamic libc_chroot chroot "libc.a/shr_64.o" -@@ -30,7 +31,6 @@ import ( - //go:cgo_import_dynamic libc_fchmodat fchmodat "libc.a/shr_64.o" - //go:cgo_import_dynamic libc_fchownat fchownat "libc.a/shr_64.o" - //go:cgo_import_dynamic libc_fdatasync fdatasync "libc.a/shr_64.o" --//go:cgo_import_dynamic libc_fsync fsync "libc.a/shr_64.o" - //go:cgo_import_dynamic libc_getpgid getpgid "libc.a/shr_64.o" - //go:cgo_import_dynamic libc_getpgrp getpgrp "libc.a/shr_64.o" - //go:cgo_import_dynamic libc_getpid getpid "libc.a/shr_64.o" -@@ -136,6 +136,7 @@ import ( - //go:linkname libc_wait4 libc_wait4 - //go:linkname libc_ioctl libc_ioctl - //go:linkname libc_fcntl libc_fcntl -+//go:linkname libc_fsync_range libc_fsync_range - //go:linkname libc_acct libc_acct - //go:linkname libc_chdir libc_chdir - //go:linkname libc_chroot libc_chroot -@@ -148,7 +149,6 @@ import ( - //go:linkname libc_fchmodat libc_fchmodat - //go:linkname libc_fchownat libc_fchownat - //go:linkname libc_fdatasync libc_fdatasync --//go:linkname libc_fsync libc_fsync - //go:linkname libc_getpgid libc_getpgid - //go:linkname libc_getpgrp libc_getpgrp - //go:linkname libc_getpid libc_getpid -@@ -257,6 +257,7 @@ var ( - libc_wait4, - libc_ioctl, - libc_fcntl, -+ libc_fsync_range, - libc_acct, - libc_chdir, - libc_chroot, -@@ -269,7 +270,6 @@ var ( - libc_fchmodat, - libc_fchownat, - libc_fdatasync, -- libc_fsync, - libc_getpgid, - libc_getpgrp, - libc_getpid, -@@ -430,6 +430,13 @@ func callfcntl(fd uintptr, cmd int, arg uintptr) (r1 uintptr, e1 Errno) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func callfsync_range(fd int, how int, start int64, length int64) (r1 uintptr, e1 Errno) { -+ r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_fsync_range)), 4, uintptr(fd), uintptr(how), uintptr(start), uintptr(length), 0, 0) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func callacct(_p0 uintptr) (r1 uintptr, e1 Errno) { - r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_acct)), 1, _p0, 0, 0, 0, 0, 0) - return -@@ -514,13 +521,6 @@ func callfdatasync(fd int) (r1 uintptr, e1 Errno) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func callfsync(fd int) (r1 uintptr, e1 Errno) { -- r1, _, e1 = syscall6(uintptr(unsafe.Pointer(&libc_fsync)), 1, uintptr(fd), 0, 0, 0, 0, 0) -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func callgetpgid(pid int) (r1 uintptr, e1 Errno) { - r1, _, e1 = rawSyscall6(uintptr(unsafe.Pointer(&libc_getpgid)), 1, uintptr(pid), 0, 0, 0, 0, 0) - return -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gccgo.go b/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gccgo.go -index cde4dbc..944a714 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gccgo.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gccgo.go -@@ -1,8 +1,8 @@ - // go run mksyscall_aix_ppc64.go -aix -tags aix,ppc64 syscall_aix.go syscall_aix_ppc64.go - // Code generated by the command above; see README.md. DO NOT EDIT. - --// +build aix,ppc64 --// +build gccgo -+//go:build aix && ppc64 && gccgo -+// +build aix,ppc64,gccgo - - package unix - -@@ -16,6 +16,7 @@ int getdirent(int, uintptr_t, size_t); - int wait4(int, uintptr_t, int, uintptr_t); - int ioctl(int, int, uintptr_t); - int fcntl(uintptr_t, int, uintptr_t); -+int fsync_range(int, int, long long, long long); - int acct(uintptr_t); - int chdir(uintptr_t); - int chroot(uintptr_t); -@@ -28,7 +29,6 @@ int fchmod(int, unsigned int); - int fchmodat(int, uintptr_t, unsigned int, int); - int fchownat(int, uintptr_t, int, int, int); - int fdatasync(int); --int fsync(int); - int getpgid(int); - int getpgrp(); - int getpid(); -@@ -199,6 +199,14 @@ func callfcntl(fd uintptr, cmd int, arg uintptr) (r1 uintptr, e1 Errno) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func callfsync_range(fd int, how int, start int64, length int64) (r1 uintptr, e1 Errno) { -+ r1 = uintptr(C.fsync_range(C.int(fd), C.int(how), C.longlong(start), C.longlong(length))) -+ e1 = syscall.GetErrno() -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func callacct(_p0 uintptr) (r1 uintptr, e1 Errno) { - r1 = uintptr(C.acct(C.uintptr_t(_p0))) - e1 = syscall.GetErrno() -@@ -295,14 +303,6 @@ func callfdatasync(fd int) (r1 uintptr, e1 Errno) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func callfsync(fd int) (r1 uintptr, e1 Errno) { -- r1 = uintptr(C.fsync(C.int(fd))) -- e1 = syscall.GetErrno() -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func callgetpgid(pid int) (r1 uintptr, e1 Errno) { - r1 = uintptr(C.getpgid(C.int(pid))) - e1 = syscall.GetErrno() -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_11.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_11.go -deleted file mode 100644 -index c1cc0a4..0000000 ---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_11.go -+++ /dev/null -@@ -1,1811 +0,0 @@ --// go run mksyscall.go -l32 -tags darwin,386,!go1.12 syscall_bsd.go syscall_darwin.go syscall_darwin_386.1_11.go syscall_darwin_386.go --// Code generated by the command above; see README.md. DO NOT EDIT. -- --// +build darwin,386,!go1.12 -- --package unix -- --import ( -- "syscall" -- "unsafe" --) -- --var _ syscall.Errno -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getgroups(ngid int, gid *_Gid_t) (n int, err error) { -- r0, _, e1 := RawSyscall(SYS_GETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func setgroups(ngid int, gid *_Gid_t) (err error) { -- _, _, e1 := RawSyscall(SYS_SETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) { -- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0) -- wpid = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { -- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -- _, _, e1 := Syscall(SYS_BIND, uintptr(s), uintptr(addr), uintptr(addrlen)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -- _, _, e1 := Syscall(SYS_CONNECT, uintptr(s), uintptr(addr), uintptr(addrlen)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func socket(domain int, typ int, proto int) (fd int, err error) { -- r0, _, e1 := RawSyscall(SYS_SOCKET, uintptr(domain), uintptr(typ), uintptr(proto)) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) { -- _, _, e1 := Syscall6(SYS_GETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) { -- _, _, e1 := Syscall6(SYS_SETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -- _, _, e1 := RawSyscall(SYS_GETPEERNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -- _, _, e1 := RawSyscall(SYS_GETSOCKNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Shutdown(s int, how int) (err error) { -- _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(s), uintptr(how), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) { -- _, _, e1 := RawSyscall6(SYS_SOCKETPAIR, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) { -- var _p0 unsafe.Pointer -- if len(p) > 0 { -- _p0 = unsafe.Pointer(&p[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := Syscall6(SYS_RECVFROM, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) { -- var _p0 unsafe.Pointer -- if len(buf) > 0 { -- _p0 = unsafe.Pointer(&buf[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := Syscall6(SYS_SENDTO, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_RECVMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_SENDMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, nevent int, timeout *Timespec) (n int, err error) { -- r0, _, e1 := Syscall6(SYS_KEVENT, uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout))) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func utimes(path string, timeval *[2]Timeval) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func futimes(fd int, timeval *[2]Timeval) (err error) { -- _, _, e1 := Syscall(SYS_FUTIMES, uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Madvise(b []byte, behav int) (err error) { -- var _p0 unsafe.Pointer -- if len(b) > 0 { -- _p0 = unsafe.Pointer(&b[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(behav)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mlock(b []byte) (err error) { -- var _p0 unsafe.Pointer -- if len(b) > 0 { -- _p0 = unsafe.Pointer(&b[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mlockall(flags int) (err error) { -- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mprotect(b []byte, prot int) (err error) { -- var _p0 unsafe.Pointer -- if len(b) > 0 { -- _p0 = unsafe.Pointer(&b[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Msync(b []byte, flags int) (err error) { -- var _p0 unsafe.Pointer -- if len(b) > 0 { -- _p0 = unsafe.Pointer(&b[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Munlock(b []byte) (err error) { -- var _p0 unsafe.Pointer -- if len(b) > 0 { -- _p0 = unsafe.Pointer(&b[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Munlockall() (err error) { -- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) { -- _, _, e1 := Syscall6(SYS_GETATTRLIST, uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func pipe() (r int, w int, err error) { -- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0) -- r = int(r0) -- w = int(r1) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getxattr(path string, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) -- sz = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) -- sz = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func setxattr(path string, attr string, data *byte, size int, position uint32, options int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func fsetxattr(fd int, attr string, data *byte, size int, position uint32, options int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func removexattr(path string, attr string, options int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func fremovexattr(fd int, attr string, options int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func listxattr(path string, dest *byte, size int, options int) (sz int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- r0, _, e1 := Syscall6(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) -- sz = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) { -- r0, _, e1 := Syscall6(SYS_FLISTXATTR, uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) -- sz = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) { -- _, _, e1 := Syscall6(SYS_SETATTRLIST, uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func fcntl(fd int, cmd int, arg int) (val int, err error) { -- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg)) -- val = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func kill(pid int, signum int, posix int) (err error) { -- _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), uintptr(posix)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func ioctl(fd int, req uint, arg uintptr) (err error) { -- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) { -- var _p0 unsafe.Pointer -- if len(mib) > 0 { -- _p0 = unsafe.Pointer(&mib[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := Syscall6(SYS_SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) { -- _, _, e1 := Syscall9(SYS_SENDFILE, uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(offset>>32), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Access(path string, mode uint32) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_ACCESS, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Adjtime(delta *Timeval, olddelta *Timeval) (err error) { -- _, _, e1 := Syscall(SYS_ADJTIME, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Chdir(path string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Chflags(path string, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_CHFLAGS, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Chmod(path string, mode uint32) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_CHMOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Chown(path string, uid int, gid int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_CHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Chroot(path string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Close(fd int) (err error) { -- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Dup(fd int) (nfd int, err error) { -- r0, _, e1 := Syscall(SYS_DUP, uintptr(fd), 0, 0) -- nfd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Dup2(from int, to int) (err error) { -- _, _, e1 := Syscall(SYS_DUP2, uintptr(from), uintptr(to), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Exchangedata(path1 string, path2 string, options int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path1) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(path2) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_EXCHANGEDATA, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Exit(code int) { -- Syscall(SYS_EXIT, uintptr(code), 0, 0) -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fchdir(fd int) (err error) { -- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fchflags(fd int, flags int) (err error) { -- _, _, e1 := Syscall(SYS_FCHFLAGS, uintptr(fd), uintptr(flags), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fchmod(fd int, mode uint32) (err error) { -- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fchown(fd int, uid int, gid int) (err error) { -- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Flock(fd int, how int) (err error) { -- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fpathconf(fd int, name int) (val int, err error) { -- r0, _, e1 := Syscall(SYS_FPATHCONF, uintptr(fd), uintptr(name), 0) -- val = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fsync(fd int) (err error) { -- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Ftruncate(fd int, length int64) (err error) { -- _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), uintptr(length), uintptr(length>>32)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getdtablesize() (size int) { -- r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0) -- size = int(r0) -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getegid() (egid int) { -- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0) -- egid = int(r0) -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Geteuid() (uid int) { -- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0) -- uid = int(r0) -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getgid() (gid int) { -- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0) -- gid = int(r0) -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getpgid(pid int) (pgid int, err error) { -- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0) -- pgid = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getpgrp() (pgrp int) { -- r0, _, _ := RawSyscall(SYS_GETPGRP, 0, 0, 0) -- pgrp = int(r0) -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getpid() (pid int) { -- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0) -- pid = int(r0) -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getppid() (ppid int) { -- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0) -- ppid = int(r0) -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getpriority(which int, who int) (prio int, err error) { -- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0) -- prio = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getrlimit(which int, lim *Rlimit) (err error) { -- _, _, e1 := RawSyscall(SYS_GETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getrusage(who int, rusage *Rusage) (err error) { -- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getsid(pid int) (sid int, err error) { -- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0) -- sid = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getuid() (uid int) { -- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0) -- uid = int(r0) -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Issetugid() (tainted bool) { -- r0, _, _ := RawSyscall(SYS_ISSETUGID, 0, 0, 0) -- tainted = bool(r0 != 0) -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Kqueue() (fd int, err error) { -- r0, _, e1 := Syscall(SYS_KQUEUE, 0, 0, 0) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Lchown(path string, uid int, gid int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_LCHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Link(path string, link string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(link) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(link) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Listen(s int, backlog int) (err error) { -- _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mkdir(path string, mode uint32) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_MKDIR, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mkdirat(dirfd int, path string, mode uint32) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mkfifo(path string, mode uint32) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_MKFIFO, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mknod(path string, mode uint32, dev int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_MKNOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Open(path string, mode int, perm uint32) (fd int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- r0, _, e1 := Syscall(SYS_OPEN, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm)) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Pathconf(path string, name int) (val int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- r0, _, e1 := Syscall(SYS_PATHCONF, uintptr(unsafe.Pointer(_p0)), uintptr(name), 0) -- val = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Pread(fd int, p []byte, offset int64) (n int, err error) { -- var _p0 unsafe.Pointer -- if len(p) > 0 { -- _p0 = unsafe.Pointer(&p[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := Syscall6(SYS_PREAD, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -- var _p0 unsafe.Pointer -- if len(p) > 0 { -- _p0 = unsafe.Pointer(&p[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := Syscall6(SYS_PWRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func read(fd int, p []byte) (n int, err error) { -- var _p0 unsafe.Pointer -- if len(p) > 0 { -- _p0 = unsafe.Pointer(&p[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p))) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Readlink(path string, buf []byte) (n int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 unsafe.Pointer -- if len(buf) > 0 { -- _p1 = unsafe.Pointer(&buf[0]) -- } else { -- _p1 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := Syscall(SYS_READLINK, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf))) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 unsafe.Pointer -- if len(buf) > 0 { -- _p1 = unsafe.Pointer(&buf[0]) -- } else { -- _p1 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Rename(from string, to string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(from) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(to) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_RENAME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Renameat(fromfd int, from string, tofd int, to string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(from) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(to) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Revoke(path string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_REVOKE, uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Rmdir(path string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_RMDIR, uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { -- r0, r1, e1 := Syscall6(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(offset>>32), uintptr(whence), 0, 0) -- newoffset = int64(int64(r1)<<32 | int64(r0)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) { -- r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setegid(egid int) (err error) { -- _, _, e1 := Syscall(SYS_SETEGID, uintptr(egid), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Seteuid(euid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETEUID, uintptr(euid), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setgid(gid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETGID, uintptr(gid), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setlogin(name string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(name) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_SETLOGIN, uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setpgid(pid int, pgid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setpriority(which int, who int, prio int) (err error) { -- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setprivexec(flag int) (err error) { -- _, _, e1 := Syscall(SYS_SETPRIVEXEC, uintptr(flag), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setregid(rgid int, egid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setreuid(ruid int, euid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setrlimit(which int, lim *Rlimit) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setsid() (pid int, err error) { -- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0) -- pid = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Settimeofday(tp *Timeval) (err error) { -- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setuid(uid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETUID, uintptr(uid), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Symlink(path string, link string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(link) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_SYMLINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(oldpath) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(newpath) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1))) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Sync() (err error) { -- _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Truncate(path string, length int64) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), uintptr(length>>32)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Umask(newmask int) (oldmask int) { -- r0, _, _ := Syscall(SYS_UMASK, uintptr(newmask), 0, 0) -- oldmask = int(r0) -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Undelete(path string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_UNDELETE, uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Unlink(path string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_UNLINK, uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Unlinkat(dirfd int, path string, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Unmount(path string, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_UNMOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func write(fd int, p []byte) (n int, err error) { -- var _p0 unsafe.Pointer -- if len(p) > 0 { -- _p0 = unsafe.Pointer(&p[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p))) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) { -- r0, _, e1 := Syscall9(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos), uintptr(pos>>32), 0, 0) -- ret = uintptr(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func munmap(addr uintptr, length uintptr) (err error) { -- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func readlen(fd int, buf *byte, nbuf int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func writelen(fd int, buf *byte, nbuf int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) { -- var _p0 unsafe.Pointer -- if len(buf) > 0 { -- _p0 = unsafe.Pointer(&buf[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := Syscall6(SYS_GETDIRENTRIES64, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) { -- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func gettimeofday(tp *Timeval) (sec int32, usec int32, err error) { -- r0, r1, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0) -- sec = int32(r0) -- usec = int32(r1) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fstat(fd int, stat *Stat_t) (err error) { -- _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_FSTATAT64, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fstatfs(fd int, stat *Statfs_t) (err error) { -- _, _, e1 := Syscall(SYS_FSTATFS64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_GETFSSTAT64, uintptr(buf), uintptr(size), uintptr(flags)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Lstat(path string, stat *Stat_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Stat(path string, stat *Stat_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Statfs(path string, stat *Statfs_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_STATFS64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.go -deleted file mode 100644 -index e263fbd..0000000 ---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.go -+++ /dev/null -@@ -1,41 +0,0 @@ --// go run mksyscall.go -l32 -tags darwin,386,go1.13 syscall_darwin.1_13.go --// Code generated by the command above; see README.md. DO NOT EDIT. -- --// +build darwin,386,go1.13 -- --package unix -- --import ( -- "syscall" -- "unsafe" --) -- --var _ syscall.Errno -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func closedir(dir uintptr) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_closedir_trampoline), uintptr(dir), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_closedir_trampoline() -- --//go:linkname libc_closedir libc_closedir --//go:cgo_import_dynamic libc_closedir closedir "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func readdir_r(dir uintptr, entry *Dirent, result **Dirent) (res Errno) { -- r0, _, _ := syscall_syscall(funcPC(libc_readdir_r_trampoline), uintptr(dir), uintptr(unsafe.Pointer(entry)), uintptr(unsafe.Pointer(result))) -- res = Errno(r0) -- return --} -- --func libc_readdir_r_trampoline() -- --//go:linkname libc_readdir_r libc_readdir_r --//go:cgo_import_dynamic libc_readdir_r readdir_r "/usr/lib/libSystem.B.dylib" -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.s -deleted file mode 100644 -index 00da1eb..0000000 ---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.1_13.s -+++ /dev/null -@@ -1,12 +0,0 @@ --// go run mkasm_darwin.go 386 --// Code generated by the command above; DO NOT EDIT. -- --// +build go1.13 -- --#include "textflag.h" --TEXT ·libc_fdopendir_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fdopendir(SB) --TEXT ·libc_closedir_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_closedir(SB) --TEXT ·libc_readdir_r_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_readdir_r(SB) -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go -deleted file mode 100644 -index a3fc490..0000000 ---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.go -+++ /dev/null -@@ -1,2499 +0,0 @@ --// go run mksyscall.go -l32 -tags darwin,386,go1.12 syscall_bsd.go syscall_darwin.go syscall_darwin_386.go --// Code generated by the command above; see README.md. DO NOT EDIT. -- --// +build darwin,386,go1.12 -- --package unix -- --import ( -- "syscall" -- "unsafe" --) -- --var _ syscall.Errno -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getgroups(ngid int, gid *_Gid_t) (n int, err error) { -- r0, _, e1 := syscall_rawSyscall(funcPC(libc_getgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_getgroups_trampoline() -- --//go:linkname libc_getgroups libc_getgroups --//go:cgo_import_dynamic libc_getgroups getgroups "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func setgroups(ngid int, gid *_Gid_t) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setgroups_trampoline() -- --//go:linkname libc_setgroups libc_setgroups --//go:cgo_import_dynamic libc_setgroups setgroups "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) { -- r0, _, e1 := syscall_syscall6(funcPC(libc_wait4_trampoline), uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0) -- wpid = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_wait4_trampoline() -- --//go:linkname libc_wait4 libc_wait4 --//go:cgo_import_dynamic libc_wait4 wait4 "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_accept_trampoline), uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_accept_trampoline() -- --//go:linkname libc_accept libc_accept --//go:cgo_import_dynamic libc_accept accept "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_bind_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_bind_trampoline() -- --//go:linkname libc_bind libc_bind --//go:cgo_import_dynamic libc_bind bind "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_connect_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_connect_trampoline() -- --//go:linkname libc_connect libc_connect --//go:cgo_import_dynamic libc_connect connect "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func socket(domain int, typ int, proto int) (fd int, err error) { -- r0, _, e1 := syscall_rawSyscall(funcPC(libc_socket_trampoline), uintptr(domain), uintptr(typ), uintptr(proto)) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_socket_trampoline() -- --//go:linkname libc_socket libc_socket --//go:cgo_import_dynamic libc_socket socket "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) { -- _, _, e1 := syscall_syscall6(funcPC(libc_getsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_getsockopt_trampoline() -- --//go:linkname libc_getsockopt libc_getsockopt --//go:cgo_import_dynamic libc_getsockopt getsockopt "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) { -- _, _, e1 := syscall_syscall6(funcPC(libc_setsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setsockopt_trampoline() -- --//go:linkname libc_setsockopt libc_setsockopt --//go:cgo_import_dynamic libc_setsockopt setsockopt "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_getpeername_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_getpeername_trampoline() -- --//go:linkname libc_getpeername libc_getpeername --//go:cgo_import_dynamic libc_getpeername getpeername "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_getsockname_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_getsockname_trampoline() -- --//go:linkname libc_getsockname libc_getsockname --//go:cgo_import_dynamic libc_getsockname getsockname "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Shutdown(s int, how int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_shutdown_trampoline), uintptr(s), uintptr(how), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_shutdown_trampoline() -- --//go:linkname libc_shutdown libc_shutdown --//go:cgo_import_dynamic libc_shutdown shutdown "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) { -- _, _, e1 := syscall_rawSyscall6(funcPC(libc_socketpair_trampoline), uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_socketpair_trampoline() -- --//go:linkname libc_socketpair libc_socketpair --//go:cgo_import_dynamic libc_socketpair socketpair "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) { -- var _p0 unsafe.Pointer -- if len(p) > 0 { -- _p0 = unsafe.Pointer(&p[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := syscall_syscall6(funcPC(libc_recvfrom_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_recvfrom_trampoline() -- --//go:linkname libc_recvfrom libc_recvfrom --//go:cgo_import_dynamic libc_recvfrom recvfrom "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) { -- var _p0 unsafe.Pointer -- if len(buf) > 0 { -- _p0 = unsafe.Pointer(&buf[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := syscall_syscall6(funcPC(libc_sendto_trampoline), uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_sendto_trampoline() -- --//go:linkname libc_sendto libc_sendto --//go:cgo_import_dynamic libc_sendto sendto "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_recvmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_recvmsg_trampoline() -- --//go:linkname libc_recvmsg libc_recvmsg --//go:cgo_import_dynamic libc_recvmsg recvmsg "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_sendmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_sendmsg_trampoline() -- --//go:linkname libc_sendmsg libc_sendmsg --//go:cgo_import_dynamic libc_sendmsg sendmsg "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, nevent int, timeout *Timespec) (n int, err error) { -- r0, _, e1 := syscall_syscall6(funcPC(libc_kevent_trampoline), uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout))) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_kevent_trampoline() -- --//go:linkname libc_kevent libc_kevent --//go:cgo_import_dynamic libc_kevent kevent "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func utimes(path string, timeval *[2]Timeval) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_utimes_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_utimes_trampoline() -- --//go:linkname libc_utimes libc_utimes --//go:cgo_import_dynamic libc_utimes utimes "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func futimes(fd int, timeval *[2]Timeval) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_futimes_trampoline), uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_futimes_trampoline() -- --//go:linkname libc_futimes libc_futimes --//go:cgo_import_dynamic libc_futimes futimes "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_poll_trampoline), uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_poll_trampoline() -- --//go:linkname libc_poll libc_poll --//go:cgo_import_dynamic libc_poll poll "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Madvise(b []byte, behav int) (err error) { -- var _p0 unsafe.Pointer -- if len(b) > 0 { -- _p0 = unsafe.Pointer(&b[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := syscall_syscall(funcPC(libc_madvise_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(behav)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_madvise_trampoline() -- --//go:linkname libc_madvise libc_madvise --//go:cgo_import_dynamic libc_madvise madvise "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mlock(b []byte) (err error) { -- var _p0 unsafe.Pointer -- if len(b) > 0 { -- _p0 = unsafe.Pointer(&b[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := syscall_syscall(funcPC(libc_mlock_trampoline), uintptr(_p0), uintptr(len(b)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_mlock_trampoline() -- --//go:linkname libc_mlock libc_mlock --//go:cgo_import_dynamic libc_mlock mlock "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mlockall(flags int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_mlockall_trampoline), uintptr(flags), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_mlockall_trampoline() -- --//go:linkname libc_mlockall libc_mlockall --//go:cgo_import_dynamic libc_mlockall mlockall "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mprotect(b []byte, prot int) (err error) { -- var _p0 unsafe.Pointer -- if len(b) > 0 { -- _p0 = unsafe.Pointer(&b[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := syscall_syscall(funcPC(libc_mprotect_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(prot)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_mprotect_trampoline() -- --//go:linkname libc_mprotect libc_mprotect --//go:cgo_import_dynamic libc_mprotect mprotect "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Msync(b []byte, flags int) (err error) { -- var _p0 unsafe.Pointer -- if len(b) > 0 { -- _p0 = unsafe.Pointer(&b[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := syscall_syscall(funcPC(libc_msync_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(flags)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_msync_trampoline() -- --//go:linkname libc_msync libc_msync --//go:cgo_import_dynamic libc_msync msync "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Munlock(b []byte) (err error) { -- var _p0 unsafe.Pointer -- if len(b) > 0 { -- _p0 = unsafe.Pointer(&b[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := syscall_syscall(funcPC(libc_munlock_trampoline), uintptr(_p0), uintptr(len(b)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_munlock_trampoline() -- --//go:linkname libc_munlock libc_munlock --//go:cgo_import_dynamic libc_munlock munlock "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Munlockall() (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_munlockall_trampoline), 0, 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_munlockall_trampoline() -- --//go:linkname libc_munlockall libc_munlockall --//go:cgo_import_dynamic libc_munlockall munlockall "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) { -- _, _, e1 := syscall_syscall6(funcPC(libc_getattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_getattrlist_trampoline() -- --//go:linkname libc_getattrlist libc_getattrlist --//go:cgo_import_dynamic libc_getattrlist getattrlist "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func pipe() (r int, w int, err error) { -- r0, r1, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), 0, 0, 0) -- r = int(r0) -- w = int(r1) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_pipe_trampoline() -- --//go:linkname libc_pipe libc_pipe --//go:cgo_import_dynamic libc_pipe pipe "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getxattr(path string, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- r0, _, e1 := syscall_syscall6(funcPC(libc_getxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) -- sz = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_getxattr_trampoline() -- --//go:linkname libc_getxattr libc_getxattr --//go:cgo_import_dynamic libc_getxattr getxattr "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- r0, _, e1 := syscall_syscall6(funcPC(libc_fgetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) -- sz = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fgetxattr_trampoline() -- --//go:linkname libc_fgetxattr libc_fgetxattr --//go:cgo_import_dynamic libc_fgetxattr fgetxattr "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func setxattr(path string, attr string, data *byte, size int, position uint32, options int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall6(funcPC(libc_setxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setxattr_trampoline() -- --//go:linkname libc_setxattr libc_setxattr --//go:cgo_import_dynamic libc_setxattr setxattr "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func fsetxattr(fd int, attr string, data *byte, size int, position uint32, options int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall6(funcPC(libc_fsetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fsetxattr_trampoline() -- --//go:linkname libc_fsetxattr libc_fsetxattr --//go:cgo_import_dynamic libc_fsetxattr fsetxattr "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func removexattr(path string, attr string, options int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_removexattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_removexattr_trampoline() -- --//go:linkname libc_removexattr libc_removexattr --//go:cgo_import_dynamic libc_removexattr removexattr "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func fremovexattr(fd int, attr string, options int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_fremovexattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fremovexattr_trampoline() -- --//go:linkname libc_fremovexattr libc_fremovexattr --//go:cgo_import_dynamic libc_fremovexattr fremovexattr "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func listxattr(path string, dest *byte, size int, options int) (sz int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- r0, _, e1 := syscall_syscall6(funcPC(libc_listxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) -- sz = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_listxattr_trampoline() -- --//go:linkname libc_listxattr libc_listxattr --//go:cgo_import_dynamic libc_listxattr listxattr "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) { -- r0, _, e1 := syscall_syscall6(funcPC(libc_flistxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) -- sz = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_flistxattr_trampoline() -- --//go:linkname libc_flistxattr libc_flistxattr --//go:cgo_import_dynamic libc_flistxattr flistxattr "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) { -- _, _, e1 := syscall_syscall6(funcPC(libc_setattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setattrlist_trampoline() -- --//go:linkname libc_setattrlist libc_setattrlist --//go:cgo_import_dynamic libc_setattrlist setattrlist "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func fcntl(fd int, cmd int, arg int) (val int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_fcntl_trampoline), uintptr(fd), uintptr(cmd), uintptr(arg)) -- val = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fcntl_trampoline() -- --//go:linkname libc_fcntl libc_fcntl --//go:cgo_import_dynamic libc_fcntl fcntl "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func kill(pid int, signum int, posix int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_kill_trampoline), uintptr(pid), uintptr(signum), uintptr(posix)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_kill_trampoline() -- --//go:linkname libc_kill libc_kill --//go:cgo_import_dynamic libc_kill kill "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func ioctl(fd int, req uint, arg uintptr) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_ioctl_trampoline), uintptr(fd), uintptr(req), uintptr(arg)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_ioctl_trampoline() -- --//go:linkname libc_ioctl libc_ioctl --//go:cgo_import_dynamic libc_ioctl ioctl "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) { -- var _p0 unsafe.Pointer -- if len(mib) > 0 { -- _p0 = unsafe.Pointer(&mib[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := syscall_syscall6(funcPC(libc_sysctl_trampoline), uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_sysctl_trampoline() -- --//go:linkname libc_sysctl libc_sysctl --//go:cgo_import_dynamic libc_sysctl sysctl "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) { -- _, _, e1 := syscall_syscall9(funcPC(libc_sendfile_trampoline), uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(offset>>32), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_sendfile_trampoline() -- --//go:linkname libc_sendfile libc_sendfile --//go:cgo_import_dynamic libc_sendfile sendfile "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Access(path string, mode uint32) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_access_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_access_trampoline() -- --//go:linkname libc_access libc_access --//go:cgo_import_dynamic libc_access access "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Adjtime(delta *Timeval, olddelta *Timeval) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_adjtime_trampoline), uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_adjtime_trampoline() -- --//go:linkname libc_adjtime libc_adjtime --//go:cgo_import_dynamic libc_adjtime adjtime "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Chdir(path string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_chdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_chdir_trampoline() -- --//go:linkname libc_chdir libc_chdir --//go:cgo_import_dynamic libc_chdir chdir "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Chflags(path string, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_chflags_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_chflags_trampoline() -- --//go:linkname libc_chflags libc_chflags --//go:cgo_import_dynamic libc_chflags chflags "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Chmod(path string, mode uint32) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_chmod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_chmod_trampoline() -- --//go:linkname libc_chmod libc_chmod --//go:cgo_import_dynamic libc_chmod chmod "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Chown(path string, uid int, gid int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_chown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_chown_trampoline() -- --//go:linkname libc_chown libc_chown --//go:cgo_import_dynamic libc_chown chown "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Chroot(path string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_chroot_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_chroot_trampoline() -- --//go:linkname libc_chroot libc_chroot --//go:cgo_import_dynamic libc_chroot chroot "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func ClockGettime(clockid int32, time *Timespec) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_clock_gettime_trampoline), uintptr(clockid), uintptr(unsafe.Pointer(time)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_clock_gettime_trampoline() -- --//go:linkname libc_clock_gettime libc_clock_gettime --//go:cgo_import_dynamic libc_clock_gettime clock_gettime "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Close(fd int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_close_trampoline), uintptr(fd), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_close_trampoline() -- --//go:linkname libc_close libc_close --//go:cgo_import_dynamic libc_close close "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Dup(fd int) (nfd int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_dup_trampoline), uintptr(fd), 0, 0) -- nfd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_dup_trampoline() -- --//go:linkname libc_dup libc_dup --//go:cgo_import_dynamic libc_dup dup "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Dup2(from int, to int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_dup2_trampoline), uintptr(from), uintptr(to), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_dup2_trampoline() -- --//go:linkname libc_dup2 libc_dup2 --//go:cgo_import_dynamic libc_dup2 dup2 "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Exchangedata(path1 string, path2 string, options int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path1) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(path2) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_exchangedata_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_exchangedata_trampoline() -- --//go:linkname libc_exchangedata libc_exchangedata --//go:cgo_import_dynamic libc_exchangedata exchangedata "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Exit(code int) { -- syscall_syscall(funcPC(libc_exit_trampoline), uintptr(code), 0, 0) -- return --} -- --func libc_exit_trampoline() -- --//go:linkname libc_exit libc_exit --//go:cgo_import_dynamic libc_exit exit "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall6(funcPC(libc_faccessat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_faccessat_trampoline() -- --//go:linkname libc_faccessat libc_faccessat --//go:cgo_import_dynamic libc_faccessat faccessat "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fchdir(fd int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fchdir_trampoline), uintptr(fd), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fchdir_trampoline() -- --//go:linkname libc_fchdir libc_fchdir --//go:cgo_import_dynamic libc_fchdir fchdir "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fchflags(fd int, flags int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fchflags_trampoline), uintptr(fd), uintptr(flags), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fchflags_trampoline() -- --//go:linkname libc_fchflags libc_fchflags --//go:cgo_import_dynamic libc_fchflags fchflags "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fchmod(fd int, mode uint32) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fchmod_trampoline), uintptr(fd), uintptr(mode), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fchmod_trampoline() -- --//go:linkname libc_fchmod libc_fchmod --//go:cgo_import_dynamic libc_fchmod fchmod "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall6(funcPC(libc_fchmodat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fchmodat_trampoline() -- --//go:linkname libc_fchmodat libc_fchmodat --//go:cgo_import_dynamic libc_fchmodat fchmodat "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fchown(fd int, uid int, gid int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fchown_trampoline), uintptr(fd), uintptr(uid), uintptr(gid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fchown_trampoline() -- --//go:linkname libc_fchown libc_fchown --//go:cgo_import_dynamic libc_fchown fchown "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall6(funcPC(libc_fchownat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fchownat_trampoline() -- --//go:linkname libc_fchownat libc_fchownat --//go:cgo_import_dynamic libc_fchownat fchownat "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Flock(fd int, how int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_flock_trampoline), uintptr(fd), uintptr(how), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_flock_trampoline() -- --//go:linkname libc_flock libc_flock --//go:cgo_import_dynamic libc_flock flock "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fpathconf(fd int, name int) (val int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_fpathconf_trampoline), uintptr(fd), uintptr(name), 0) -- val = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fpathconf_trampoline() -- --//go:linkname libc_fpathconf libc_fpathconf --//go:cgo_import_dynamic libc_fpathconf fpathconf "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fsync(fd int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fsync_trampoline), uintptr(fd), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fsync_trampoline() -- --//go:linkname libc_fsync libc_fsync --//go:cgo_import_dynamic libc_fsync fsync "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Ftruncate(fd int, length int64) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_ftruncate_trampoline), uintptr(fd), uintptr(length), uintptr(length>>32)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_ftruncate_trampoline() -- --//go:linkname libc_ftruncate libc_ftruncate --//go:cgo_import_dynamic libc_ftruncate ftruncate "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getdtablesize() (size int) { -- r0, _, _ := syscall_syscall(funcPC(libc_getdtablesize_trampoline), 0, 0, 0) -- size = int(r0) -- return --} -- --func libc_getdtablesize_trampoline() -- --//go:linkname libc_getdtablesize libc_getdtablesize --//go:cgo_import_dynamic libc_getdtablesize getdtablesize "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getegid() (egid int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_getegid_trampoline), 0, 0, 0) -- egid = int(r0) -- return --} -- --func libc_getegid_trampoline() -- --//go:linkname libc_getegid libc_getegid --//go:cgo_import_dynamic libc_getegid getegid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Geteuid() (uid int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_geteuid_trampoline), 0, 0, 0) -- uid = int(r0) -- return --} -- --func libc_geteuid_trampoline() -- --//go:linkname libc_geteuid libc_geteuid --//go:cgo_import_dynamic libc_geteuid geteuid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getgid() (gid int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_getgid_trampoline), 0, 0, 0) -- gid = int(r0) -- return --} -- --func libc_getgid_trampoline() -- --//go:linkname libc_getgid libc_getgid --//go:cgo_import_dynamic libc_getgid getgid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getpgid(pid int) (pgid int, err error) { -- r0, _, e1 := syscall_rawSyscall(funcPC(libc_getpgid_trampoline), uintptr(pid), 0, 0) -- pgid = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_getpgid_trampoline() -- --//go:linkname libc_getpgid libc_getpgid --//go:cgo_import_dynamic libc_getpgid getpgid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getpgrp() (pgrp int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_getpgrp_trampoline), 0, 0, 0) -- pgrp = int(r0) -- return --} -- --func libc_getpgrp_trampoline() -- --//go:linkname libc_getpgrp libc_getpgrp --//go:cgo_import_dynamic libc_getpgrp getpgrp "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getpid() (pid int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_getpid_trampoline), 0, 0, 0) -- pid = int(r0) -- return --} -- --func libc_getpid_trampoline() -- --//go:linkname libc_getpid libc_getpid --//go:cgo_import_dynamic libc_getpid getpid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getppid() (ppid int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_getppid_trampoline), 0, 0, 0) -- ppid = int(r0) -- return --} -- --func libc_getppid_trampoline() -- --//go:linkname libc_getppid libc_getppid --//go:cgo_import_dynamic libc_getppid getppid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getpriority(which int, who int) (prio int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_getpriority_trampoline), uintptr(which), uintptr(who), 0) -- prio = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_getpriority_trampoline() -- --//go:linkname libc_getpriority libc_getpriority --//go:cgo_import_dynamic libc_getpriority getpriority "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getrlimit(which int, lim *Rlimit) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_getrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_getrlimit_trampoline() -- --//go:linkname libc_getrlimit libc_getrlimit --//go:cgo_import_dynamic libc_getrlimit getrlimit "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getrusage(who int, rusage *Rusage) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_getrusage_trampoline), uintptr(who), uintptr(unsafe.Pointer(rusage)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_getrusage_trampoline() -- --//go:linkname libc_getrusage libc_getrusage --//go:cgo_import_dynamic libc_getrusage getrusage "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getsid(pid int) (sid int, err error) { -- r0, _, e1 := syscall_rawSyscall(funcPC(libc_getsid_trampoline), uintptr(pid), 0, 0) -- sid = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_getsid_trampoline() -- --//go:linkname libc_getsid libc_getsid --//go:cgo_import_dynamic libc_getsid getsid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getuid() (uid int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_getuid_trampoline), 0, 0, 0) -- uid = int(r0) -- return --} -- --func libc_getuid_trampoline() -- --//go:linkname libc_getuid libc_getuid --//go:cgo_import_dynamic libc_getuid getuid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Issetugid() (tainted bool) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_issetugid_trampoline), 0, 0, 0) -- tainted = bool(r0 != 0) -- return --} -- --func libc_issetugid_trampoline() -- --//go:linkname libc_issetugid libc_issetugid --//go:cgo_import_dynamic libc_issetugid issetugid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Kqueue() (fd int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_kqueue_trampoline), 0, 0, 0) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_kqueue_trampoline() -- --//go:linkname libc_kqueue libc_kqueue --//go:cgo_import_dynamic libc_kqueue kqueue "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Lchown(path string, uid int, gid int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_lchown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_lchown_trampoline() -- --//go:linkname libc_lchown libc_lchown --//go:cgo_import_dynamic libc_lchown lchown "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Link(path string, link string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(link) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_link_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_link_trampoline() -- --//go:linkname libc_link libc_link --//go:cgo_import_dynamic libc_link link "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(link) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall6(funcPC(libc_linkat_trampoline), uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_linkat_trampoline() -- --//go:linkname libc_linkat libc_linkat --//go:cgo_import_dynamic libc_linkat linkat "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Listen(s int, backlog int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_listen_trampoline), uintptr(s), uintptr(backlog), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_listen_trampoline() -- --//go:linkname libc_listen libc_listen --//go:cgo_import_dynamic libc_listen listen "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mkdir(path string, mode uint32) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_mkdir_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_mkdir_trampoline() -- --//go:linkname libc_mkdir libc_mkdir --//go:cgo_import_dynamic libc_mkdir mkdir "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mkdirat(dirfd int, path string, mode uint32) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_mkdirat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_mkdirat_trampoline() -- --//go:linkname libc_mkdirat libc_mkdirat --//go:cgo_import_dynamic libc_mkdirat mkdirat "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mkfifo(path string, mode uint32) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_mkfifo_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_mkfifo_trampoline() -- --//go:linkname libc_mkfifo libc_mkfifo --//go:cgo_import_dynamic libc_mkfifo mkfifo "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mknod(path string, mode uint32, dev int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_mknod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_mknod_trampoline() -- --//go:linkname libc_mknod libc_mknod --//go:cgo_import_dynamic libc_mknod mknod "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Open(path string, mode int, perm uint32) (fd int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- r0, _, e1 := syscall_syscall(funcPC(libc_open_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm)) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_open_trampoline() -- --//go:linkname libc_open libc_open --//go:cgo_import_dynamic libc_open open "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- r0, _, e1 := syscall_syscall6(funcPC(libc_openat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_openat_trampoline() -- --//go:linkname libc_openat libc_openat --//go:cgo_import_dynamic libc_openat openat "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Pathconf(path string, name int) (val int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- r0, _, e1 := syscall_syscall(funcPC(libc_pathconf_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(name), 0) -- val = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_pathconf_trampoline() -- --//go:linkname libc_pathconf libc_pathconf --//go:cgo_import_dynamic libc_pathconf pathconf "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Pread(fd int, p []byte, offset int64) (n int, err error) { -- var _p0 unsafe.Pointer -- if len(p) > 0 { -- _p0 = unsafe.Pointer(&p[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := syscall_syscall6(funcPC(libc_pread_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_pread_trampoline() -- --//go:linkname libc_pread libc_pread --//go:cgo_import_dynamic libc_pread pread "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -- var _p0 unsafe.Pointer -- if len(p) > 0 { -- _p0 = unsafe.Pointer(&p[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := syscall_syscall6(funcPC(libc_pwrite_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_pwrite_trampoline() -- --//go:linkname libc_pwrite libc_pwrite --//go:cgo_import_dynamic libc_pwrite pwrite "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func read(fd int, p []byte) (n int, err error) { -- var _p0 unsafe.Pointer -- if len(p) > 0 { -- _p0 = unsafe.Pointer(&p[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p))) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_read_trampoline() -- --//go:linkname libc_read libc_read --//go:cgo_import_dynamic libc_read read "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Readlink(path string, buf []byte) (n int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 unsafe.Pointer -- if len(buf) > 0 { -- _p1 = unsafe.Pointer(&buf[0]) -- } else { -- _p1 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := syscall_syscall(funcPC(libc_readlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf))) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_readlink_trampoline() -- --//go:linkname libc_readlink libc_readlink --//go:cgo_import_dynamic libc_readlink readlink "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 unsafe.Pointer -- if len(buf) > 0 { -- _p1 = unsafe.Pointer(&buf[0]) -- } else { -- _p1 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := syscall_syscall6(funcPC(libc_readlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_readlinkat_trampoline() -- --//go:linkname libc_readlinkat libc_readlinkat --//go:cgo_import_dynamic libc_readlinkat readlinkat "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Rename(from string, to string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(from) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(to) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_rename_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_rename_trampoline() -- --//go:linkname libc_rename libc_rename --//go:cgo_import_dynamic libc_rename rename "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Renameat(fromfd int, from string, tofd int, to string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(from) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(to) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall6(funcPC(libc_renameat_trampoline), uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_renameat_trampoline() -- --//go:linkname libc_renameat libc_renameat --//go:cgo_import_dynamic libc_renameat renameat "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Revoke(path string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_revoke_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_revoke_trampoline() -- --//go:linkname libc_revoke libc_revoke --//go:cgo_import_dynamic libc_revoke revoke "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Rmdir(path string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_rmdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_rmdir_trampoline() -- --//go:linkname libc_rmdir libc_rmdir --//go:cgo_import_dynamic libc_rmdir rmdir "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { -- r0, r1, e1 := syscall_syscall6(funcPC(libc_lseek_trampoline), uintptr(fd), uintptr(offset), uintptr(offset>>32), uintptr(whence), 0, 0) -- newoffset = int64(int64(r1)<<32 | int64(r0)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_lseek_trampoline() -- --//go:linkname libc_lseek libc_lseek --//go:cgo_import_dynamic libc_lseek lseek "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) { -- r0, _, e1 := syscall_syscall6(funcPC(libc_select_trampoline), uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_select_trampoline() -- --//go:linkname libc_select libc_select --//go:cgo_import_dynamic libc_select select "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setegid(egid int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_setegid_trampoline), uintptr(egid), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setegid_trampoline() -- --//go:linkname libc_setegid libc_setegid --//go:cgo_import_dynamic libc_setegid setegid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Seteuid(euid int) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_seteuid_trampoline), uintptr(euid), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_seteuid_trampoline() -- --//go:linkname libc_seteuid libc_seteuid --//go:cgo_import_dynamic libc_seteuid seteuid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setgid(gid int) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setgid_trampoline), uintptr(gid), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setgid_trampoline() -- --//go:linkname libc_setgid libc_setgid --//go:cgo_import_dynamic libc_setgid setgid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setlogin(name string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(name) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_setlogin_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setlogin_trampoline() -- --//go:linkname libc_setlogin libc_setlogin --//go:cgo_import_dynamic libc_setlogin setlogin "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setpgid(pid int, pgid int) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setpgid_trampoline), uintptr(pid), uintptr(pgid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setpgid_trampoline() -- --//go:linkname libc_setpgid libc_setpgid --//go:cgo_import_dynamic libc_setpgid setpgid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setpriority(which int, who int, prio int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_setpriority_trampoline), uintptr(which), uintptr(who), uintptr(prio)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setpriority_trampoline() -- --//go:linkname libc_setpriority libc_setpriority --//go:cgo_import_dynamic libc_setpriority setpriority "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setprivexec(flag int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_setprivexec_trampoline), uintptr(flag), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setprivexec_trampoline() -- --//go:linkname libc_setprivexec libc_setprivexec --//go:cgo_import_dynamic libc_setprivexec setprivexec "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setregid(rgid int, egid int) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setregid_trampoline), uintptr(rgid), uintptr(egid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setregid_trampoline() -- --//go:linkname libc_setregid libc_setregid --//go:cgo_import_dynamic libc_setregid setregid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setreuid(ruid int, euid int) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setreuid_trampoline), uintptr(ruid), uintptr(euid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setreuid_trampoline() -- --//go:linkname libc_setreuid libc_setreuid --//go:cgo_import_dynamic libc_setreuid setreuid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setrlimit(which int, lim *Rlimit) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setrlimit_trampoline() -- --//go:linkname libc_setrlimit libc_setrlimit --//go:cgo_import_dynamic libc_setrlimit setrlimit "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setsid() (pid int, err error) { -- r0, _, e1 := syscall_rawSyscall(funcPC(libc_setsid_trampoline), 0, 0, 0) -- pid = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setsid_trampoline() -- --//go:linkname libc_setsid libc_setsid --//go:cgo_import_dynamic libc_setsid setsid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Settimeofday(tp *Timeval) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_settimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_settimeofday_trampoline() -- --//go:linkname libc_settimeofday libc_settimeofday --//go:cgo_import_dynamic libc_settimeofday settimeofday "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setuid(uid int) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setuid_trampoline), uintptr(uid), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setuid_trampoline() -- --//go:linkname libc_setuid libc_setuid --//go:cgo_import_dynamic libc_setuid setuid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Symlink(path string, link string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(link) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_symlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_symlink_trampoline() -- --//go:linkname libc_symlink libc_symlink --//go:cgo_import_dynamic libc_symlink symlink "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(oldpath) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(newpath) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_symlinkat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1))) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_symlinkat_trampoline() -- --//go:linkname libc_symlinkat libc_symlinkat --//go:cgo_import_dynamic libc_symlinkat symlinkat "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Sync() (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_sync_trampoline), 0, 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_sync_trampoline() -- --//go:linkname libc_sync libc_sync --//go:cgo_import_dynamic libc_sync sync "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Truncate(path string, length int64) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_truncate_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(length), uintptr(length>>32)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_truncate_trampoline() -- --//go:linkname libc_truncate libc_truncate --//go:cgo_import_dynamic libc_truncate truncate "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Umask(newmask int) (oldmask int) { -- r0, _, _ := syscall_syscall(funcPC(libc_umask_trampoline), uintptr(newmask), 0, 0) -- oldmask = int(r0) -- return --} -- --func libc_umask_trampoline() -- --//go:linkname libc_umask libc_umask --//go:cgo_import_dynamic libc_umask umask "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Undelete(path string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_undelete_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_undelete_trampoline() -- --//go:linkname libc_undelete libc_undelete --//go:cgo_import_dynamic libc_undelete undelete "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Unlink(path string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_unlink_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_unlink_trampoline() -- --//go:linkname libc_unlink libc_unlink --//go:cgo_import_dynamic libc_unlink unlink "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Unlinkat(dirfd int, path string, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_unlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_unlinkat_trampoline() -- --//go:linkname libc_unlinkat libc_unlinkat --//go:cgo_import_dynamic libc_unlinkat unlinkat "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Unmount(path string, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_unmount_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_unmount_trampoline() -- --//go:linkname libc_unmount libc_unmount --//go:cgo_import_dynamic libc_unmount unmount "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func write(fd int, p []byte) (n int, err error) { -- var _p0 unsafe.Pointer -- if len(p) > 0 { -- _p0 = unsafe.Pointer(&p[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p))) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_write_trampoline() -- --//go:linkname libc_write libc_write --//go:cgo_import_dynamic libc_write write "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) { -- r0, _, e1 := syscall_syscall9(funcPC(libc_mmap_trampoline), uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos), uintptr(pos>>32), 0, 0) -- ret = uintptr(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_mmap_trampoline() -- --//go:linkname libc_mmap libc_mmap --//go:cgo_import_dynamic libc_mmap mmap "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func munmap(addr uintptr, length uintptr) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_munmap_trampoline), uintptr(addr), uintptr(length), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_munmap_trampoline() -- --//go:linkname libc_munmap libc_munmap --//go:cgo_import_dynamic libc_munmap munmap "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func readlen(fd int, buf *byte, nbuf int) (n int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func writelen(fd int, buf *byte, nbuf int) (n int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) { -- _, _, e1 := syscall_syscall6(funcPC(libc_ptrace_trampoline), uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_ptrace_trampoline() -- --//go:linkname libc_ptrace libc_ptrace --//go:cgo_import_dynamic libc_ptrace ptrace "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func gettimeofday(tp *Timeval) (sec int32, usec int32, err error) { -- r0, r1, e1 := syscall_rawSyscall(funcPC(libc_gettimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0) -- sec = int32(r0) -- usec = int32(r1) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_gettimeofday_trampoline() -- --//go:linkname libc_gettimeofday libc_gettimeofday --//go:cgo_import_dynamic libc_gettimeofday gettimeofday "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fstat(fd int, stat *Stat_t) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fstat64_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fstat64_trampoline() -- --//go:linkname libc_fstat64 libc_fstat64 --//go:cgo_import_dynamic libc_fstat64 fstat64 "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall6(funcPC(libc_fstatat64_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fstatat64_trampoline() -- --//go:linkname libc_fstatat64 libc_fstatat64 --//go:cgo_import_dynamic libc_fstatat64 fstatat64 "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fstatfs(fd int, stat *Statfs_t) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fstatfs64_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fstatfs64_trampoline() -- --//go:linkname libc_fstatfs64 libc_fstatfs64 --//go:cgo_import_dynamic libc_fstatfs64 fstatfs64 "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_getfsstat64_trampoline), uintptr(buf), uintptr(size), uintptr(flags)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_getfsstat64_trampoline() -- --//go:linkname libc_getfsstat64 libc_getfsstat64 --//go:cgo_import_dynamic libc_getfsstat64 getfsstat64 "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Lstat(path string, stat *Stat_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_lstat64_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_lstat64_trampoline() -- --//go:linkname libc_lstat64 libc_lstat64 --//go:cgo_import_dynamic libc_lstat64 lstat64 "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Stat(path string, stat *Stat_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_stat64_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_stat64_trampoline() -- --//go:linkname libc_stat64 libc_stat64 --//go:cgo_import_dynamic libc_stat64 stat64 "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Statfs(path string, stat *Statfs_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_statfs64_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_statfs64_trampoline() -- --//go:linkname libc_statfs64 libc_statfs64 --//go:cgo_import_dynamic libc_statfs64 statfs64 "/usr/lib/libSystem.B.dylib" -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.s -deleted file mode 100644 -index 6836a41..0000000 ---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_386.s -+++ /dev/null -@@ -1,284 +0,0 @@ --// go run mkasm_darwin.go 386 --// Code generated by the command above; DO NOT EDIT. -- --// +build go1.12 -- --#include "textflag.h" --TEXT ·libc_getgroups_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getgroups(SB) --TEXT ·libc_setgroups_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setgroups(SB) --TEXT ·libc_wait4_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_wait4(SB) --TEXT ·libc_accept_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_accept(SB) --TEXT ·libc_bind_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_bind(SB) --TEXT ·libc_connect_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_connect(SB) --TEXT ·libc_socket_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_socket(SB) --TEXT ·libc_getsockopt_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getsockopt(SB) --TEXT ·libc_setsockopt_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setsockopt(SB) --TEXT ·libc_getpeername_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getpeername(SB) --TEXT ·libc_getsockname_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getsockname(SB) --TEXT ·libc_shutdown_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_shutdown(SB) --TEXT ·libc_socketpair_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_socketpair(SB) --TEXT ·libc_recvfrom_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_recvfrom(SB) --TEXT ·libc_sendto_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_sendto(SB) --TEXT ·libc_recvmsg_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_recvmsg(SB) --TEXT ·libc_sendmsg_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_sendmsg(SB) --TEXT ·libc_kevent_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_kevent(SB) --TEXT ·libc_utimes_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_utimes(SB) --TEXT ·libc_futimes_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_futimes(SB) --TEXT ·libc_poll_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_poll(SB) --TEXT ·libc_madvise_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_madvise(SB) --TEXT ·libc_mlock_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_mlock(SB) --TEXT ·libc_mlockall_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_mlockall(SB) --TEXT ·libc_mprotect_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_mprotect(SB) --TEXT ·libc_msync_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_msync(SB) --TEXT ·libc_munlock_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_munlock(SB) --TEXT ·libc_munlockall_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_munlockall(SB) --TEXT ·libc_getattrlist_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getattrlist(SB) --TEXT ·libc_pipe_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_pipe(SB) --TEXT ·libc_getxattr_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getxattr(SB) --TEXT ·libc_fgetxattr_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fgetxattr(SB) --TEXT ·libc_setxattr_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setxattr(SB) --TEXT ·libc_fsetxattr_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fsetxattr(SB) --TEXT ·libc_removexattr_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_removexattr(SB) --TEXT ·libc_fremovexattr_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fremovexattr(SB) --TEXT ·libc_listxattr_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_listxattr(SB) --TEXT ·libc_flistxattr_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_flistxattr(SB) --TEXT ·libc_setattrlist_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setattrlist(SB) --TEXT ·libc_fcntl_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fcntl(SB) --TEXT ·libc_kill_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_kill(SB) --TEXT ·libc_ioctl_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_ioctl(SB) --TEXT ·libc_sysctl_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_sysctl(SB) --TEXT ·libc_sendfile_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_sendfile(SB) --TEXT ·libc_access_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_access(SB) --TEXT ·libc_adjtime_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_adjtime(SB) --TEXT ·libc_chdir_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_chdir(SB) --TEXT ·libc_chflags_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_chflags(SB) --TEXT ·libc_chmod_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_chmod(SB) --TEXT ·libc_chown_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_chown(SB) --TEXT ·libc_chroot_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_chroot(SB) --TEXT ·libc_clock_gettime_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_clock_gettime(SB) --TEXT ·libc_close_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_close(SB) --TEXT ·libc_dup_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_dup(SB) --TEXT ·libc_dup2_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_dup2(SB) --TEXT ·libc_exchangedata_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_exchangedata(SB) --TEXT ·libc_exit_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_exit(SB) --TEXT ·libc_faccessat_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_faccessat(SB) --TEXT ·libc_fchdir_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fchdir(SB) --TEXT ·libc_fchflags_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fchflags(SB) --TEXT ·libc_fchmod_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fchmod(SB) --TEXT ·libc_fchmodat_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fchmodat(SB) --TEXT ·libc_fchown_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fchown(SB) --TEXT ·libc_fchownat_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fchownat(SB) --TEXT ·libc_flock_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_flock(SB) --TEXT ·libc_fpathconf_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fpathconf(SB) --TEXT ·libc_fsync_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fsync(SB) --TEXT ·libc_ftruncate_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_ftruncate(SB) --TEXT ·libc_getdtablesize_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getdtablesize(SB) --TEXT ·libc_getegid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getegid(SB) --TEXT ·libc_geteuid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_geteuid(SB) --TEXT ·libc_getgid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getgid(SB) --TEXT ·libc_getpgid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getpgid(SB) --TEXT ·libc_getpgrp_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getpgrp(SB) --TEXT ·libc_getpid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getpid(SB) --TEXT ·libc_getppid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getppid(SB) --TEXT ·libc_getpriority_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getpriority(SB) --TEXT ·libc_getrlimit_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getrlimit(SB) --TEXT ·libc_getrusage_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getrusage(SB) --TEXT ·libc_getsid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getsid(SB) --TEXT ·libc_getuid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getuid(SB) --TEXT ·libc_issetugid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_issetugid(SB) --TEXT ·libc_kqueue_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_kqueue(SB) --TEXT ·libc_lchown_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_lchown(SB) --TEXT ·libc_link_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_link(SB) --TEXT ·libc_linkat_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_linkat(SB) --TEXT ·libc_listen_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_listen(SB) --TEXT ·libc_mkdir_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_mkdir(SB) --TEXT ·libc_mkdirat_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_mkdirat(SB) --TEXT ·libc_mkfifo_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_mkfifo(SB) --TEXT ·libc_mknod_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_mknod(SB) --TEXT ·libc_open_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_open(SB) --TEXT ·libc_openat_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_openat(SB) --TEXT ·libc_pathconf_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_pathconf(SB) --TEXT ·libc_pread_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_pread(SB) --TEXT ·libc_pwrite_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_pwrite(SB) --TEXT ·libc_read_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_read(SB) --TEXT ·libc_readlink_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_readlink(SB) --TEXT ·libc_readlinkat_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_readlinkat(SB) --TEXT ·libc_rename_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_rename(SB) --TEXT ·libc_renameat_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_renameat(SB) --TEXT ·libc_revoke_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_revoke(SB) --TEXT ·libc_rmdir_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_rmdir(SB) --TEXT ·libc_lseek_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_lseek(SB) --TEXT ·libc_select_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_select(SB) --TEXT ·libc_setegid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setegid(SB) --TEXT ·libc_seteuid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_seteuid(SB) --TEXT ·libc_setgid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setgid(SB) --TEXT ·libc_setlogin_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setlogin(SB) --TEXT ·libc_setpgid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setpgid(SB) --TEXT ·libc_setpriority_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setpriority(SB) --TEXT ·libc_setprivexec_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setprivexec(SB) --TEXT ·libc_setregid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setregid(SB) --TEXT ·libc_setreuid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setreuid(SB) --TEXT ·libc_setrlimit_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setrlimit(SB) --TEXT ·libc_setsid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setsid(SB) --TEXT ·libc_settimeofday_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_settimeofday(SB) --TEXT ·libc_setuid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setuid(SB) --TEXT ·libc_symlink_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_symlink(SB) --TEXT ·libc_symlinkat_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_symlinkat(SB) --TEXT ·libc_sync_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_sync(SB) --TEXT ·libc_truncate_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_truncate(SB) --TEXT ·libc_umask_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_umask(SB) --TEXT ·libc_undelete_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_undelete(SB) --TEXT ·libc_unlink_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_unlink(SB) --TEXT ·libc_unlinkat_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_unlinkat(SB) --TEXT ·libc_unmount_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_unmount(SB) --TEXT ·libc_write_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_write(SB) --TEXT ·libc_mmap_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_mmap(SB) --TEXT ·libc_munmap_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_munmap(SB) --TEXT ·libc_ptrace_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_ptrace(SB) --TEXT ·libc_gettimeofday_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_gettimeofday(SB) --TEXT ·libc_fstat64_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fstat64(SB) --TEXT ·libc_fstatat64_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fstatat64(SB) --TEXT ·libc_fstatfs64_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fstatfs64(SB) --TEXT ·libc_getfsstat64_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getfsstat64(SB) --TEXT ·libc_lstat64_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_lstat64(SB) --TEXT ·libc_stat64_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_stat64(SB) --TEXT ·libc_statfs64_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_statfs64(SB) -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.go -index 314042a..a06eb09 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.go -@@ -1,6 +1,7 @@ - // go run mksyscall.go -tags darwin,amd64,go1.13 syscall_darwin.1_13.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build darwin && amd64 && go1.13 - // +build darwin,amd64,go1.13 - - package unix -@@ -15,27 +16,25 @@ var _ syscall.Errno - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func closedir(dir uintptr) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_closedir_trampoline), uintptr(dir), 0, 0) -+ _, _, e1 := syscall_syscall(libc_closedir_trampoline_addr, uintptr(dir), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_closedir_trampoline() -+var libc_closedir_trampoline_addr uintptr - --//go:linkname libc_closedir libc_closedir - //go:cgo_import_dynamic libc_closedir closedir "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func readdir_r(dir uintptr, entry *Dirent, result **Dirent) (res Errno) { -- r0, _, _ := syscall_syscall(funcPC(libc_readdir_r_trampoline), uintptr(dir), uintptr(unsafe.Pointer(entry)), uintptr(unsafe.Pointer(result))) -+ r0, _, _ := syscall_syscall(libc_readdir_r_trampoline_addr, uintptr(dir), uintptr(unsafe.Pointer(entry)), uintptr(unsafe.Pointer(result))) - res = Errno(r0) - return - } - --func libc_readdir_r_trampoline() -+var libc_readdir_r_trampoline_addr uintptr - --//go:linkname libc_readdir_r libc_readdir_r - //go:cgo_import_dynamic libc_readdir_r readdir_r "/usr/lib/libSystem.B.dylib" -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.s -index d671e83..f5bb40e 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.s -+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_13.s -@@ -1,12 +1,25 @@ --// go run mkasm_darwin.go amd64 -+// go run mkasm.go darwin amd64 - // Code generated by the command above; DO NOT EDIT. - -+//go:build go1.13 - // +build go1.13 - - #include "textflag.h" --TEXT ·libc_fdopendir_trampoline(SB),NOSPLIT,$0-0 -+ -+TEXT libc_fdopendir_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fdopendir(SB) --TEXT ·libc_closedir_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fdopendir_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fdopendir_trampoline_addr(SB)/8, $libc_fdopendir_trampoline<>(SB) -+ -+TEXT libc_closedir_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_closedir(SB) --TEXT ·libc_readdir_r_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_closedir_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_closedir_trampoline_addr(SB)/8, $libc_closedir_trampoline<>(SB) -+ -+TEXT libc_readdir_r_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_readdir_r(SB) -+ -+GLOBL ·libc_readdir_r_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_readdir_r_trampoline_addr(SB)/8, $libc_readdir_r_trampoline<>(SB) -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go -index 50d6437..467deed 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go -@@ -1,6 +1,7 @@ - // go run mksyscall.go -tags darwin,amd64,go1.12 syscall_bsd.go syscall_darwin.go syscall_darwin_amd64.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build darwin && amd64 && go1.12 - // +build darwin,amd64,go1.12 - - package unix -@@ -15,7 +16,7 @@ var _ syscall.Errno - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func getgroups(ngid int, gid *_Gid_t) (n int, err error) { -- r0, _, e1 := syscall_rawSyscall(funcPC(libc_getgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) -+ r0, _, e1 := syscall_rawSyscall(libc_getgroups_trampoline_addr, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -23,30 +24,28 @@ func getgroups(ngid int, gid *_Gid_t) (n int, err error) { - return - } - --func libc_getgroups_trampoline() -+var libc_getgroups_trampoline_addr uintptr - --//go:linkname libc_getgroups libc_getgroups - //go:cgo_import_dynamic libc_getgroups getgroups "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func setgroups(ngid int, gid *_Gid_t) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setgroups_trampoline_addr, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setgroups_trampoline() -+var libc_setgroups_trampoline_addr uintptr - --//go:linkname libc_setgroups libc_setgroups - //go:cgo_import_dynamic libc_setgroups setgroups "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) { -- r0, _, e1 := syscall_syscall6(funcPC(libc_wait4_trampoline), uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_wait4_trampoline_addr, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0) - wpid = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -54,15 +53,14 @@ func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err - return - } - --func libc_wait4_trampoline() -+var libc_wait4_trampoline_addr uintptr - --//go:linkname libc_wait4 libc_wait4 - //go:cgo_import_dynamic libc_wait4 wait4 "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_accept_trampoline), uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ r0, _, e1 := syscall_syscall(libc_accept_trampoline_addr, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -70,45 +68,42 @@ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { - return - } - --func libc_accept_trampoline() -+var libc_accept_trampoline_addr uintptr - --//go:linkname libc_accept libc_accept - //go:cgo_import_dynamic libc_accept accept "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_bind_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen)) -+ _, _, e1 := syscall_syscall(libc_bind_trampoline_addr, uintptr(s), uintptr(addr), uintptr(addrlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_bind_trampoline() -+var libc_bind_trampoline_addr uintptr - --//go:linkname libc_bind libc_bind - //go:cgo_import_dynamic libc_bind bind "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_connect_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen)) -+ _, _, e1 := syscall_syscall(libc_connect_trampoline_addr, uintptr(s), uintptr(addr), uintptr(addrlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_connect_trampoline() -+var libc_connect_trampoline_addr uintptr - --//go:linkname libc_connect libc_connect - //go:cgo_import_dynamic libc_connect connect "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func socket(domain int, typ int, proto int) (fd int, err error) { -- r0, _, e1 := syscall_rawSyscall(funcPC(libc_socket_trampoline), uintptr(domain), uintptr(typ), uintptr(proto)) -+ r0, _, e1 := syscall_rawSyscall(libc_socket_trampoline_addr, uintptr(domain), uintptr(typ), uintptr(proto)) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -116,99 +111,92 @@ func socket(domain int, typ int, proto int) (fd int, err error) { - return - } - --func libc_socket_trampoline() -+var libc_socket_trampoline_addr uintptr - --//go:linkname libc_socket libc_socket - //go:cgo_import_dynamic libc_socket socket "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) { -- _, _, e1 := syscall_syscall6(funcPC(libc_getsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0) -+ _, _, e1 := syscall_syscall6(libc_getsockopt_trampoline_addr, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_getsockopt_trampoline() -+var libc_getsockopt_trampoline_addr uintptr - --//go:linkname libc_getsockopt libc_getsockopt - //go:cgo_import_dynamic libc_getsockopt getsockopt "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) { -- _, _, e1 := syscall_syscall6(funcPC(libc_setsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0) -+ _, _, e1 := syscall_syscall6(libc_setsockopt_trampoline_addr, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setsockopt_trampoline() -+var libc_setsockopt_trampoline_addr uintptr - --//go:linkname libc_setsockopt libc_setsockopt - //go:cgo_import_dynamic libc_setsockopt setsockopt "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_getpeername_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ _, _, e1 := syscall_rawSyscall(libc_getpeername_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_getpeername_trampoline() -+var libc_getpeername_trampoline_addr uintptr - --//go:linkname libc_getpeername libc_getpeername - //go:cgo_import_dynamic libc_getpeername getpeername "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_getsockname_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ _, _, e1 := syscall_rawSyscall(libc_getsockname_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_getsockname_trampoline() -+var libc_getsockname_trampoline_addr uintptr - --//go:linkname libc_getsockname libc_getsockname - //go:cgo_import_dynamic libc_getsockname getsockname "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Shutdown(s int, how int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_shutdown_trampoline), uintptr(s), uintptr(how), 0) -+ _, _, e1 := syscall_syscall(libc_shutdown_trampoline_addr, uintptr(s), uintptr(how), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_shutdown_trampoline() -+var libc_shutdown_trampoline_addr uintptr - --//go:linkname libc_shutdown libc_shutdown - //go:cgo_import_dynamic libc_shutdown shutdown "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) { -- _, _, e1 := syscall_rawSyscall6(funcPC(libc_socketpair_trampoline), uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0) -+ _, _, e1 := syscall_rawSyscall6(libc_socketpair_trampoline_addr, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_socketpair_trampoline() -+var libc_socketpair_trampoline_addr uintptr - --//go:linkname libc_socketpair libc_socketpair - //go:cgo_import_dynamic libc_socketpair socketpair "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -220,7 +208,7 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := syscall_syscall6(funcPC(libc_recvfrom_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) -+ r0, _, e1 := syscall_syscall6(libc_recvfrom_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -228,9 +216,8 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl - return - } - --func libc_recvfrom_trampoline() -+var libc_recvfrom_trampoline_addr uintptr - --//go:linkname libc_recvfrom libc_recvfrom - //go:cgo_import_dynamic libc_recvfrom recvfrom "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -242,22 +229,21 @@ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) ( - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := syscall_syscall6(funcPC(libc_sendto_trampoline), uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen)) -+ _, _, e1 := syscall_syscall6(libc_sendto_trampoline_addr, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_sendto_trampoline() -+var libc_sendto_trampoline_addr uintptr - --//go:linkname libc_sendto libc_sendto - //go:cgo_import_dynamic libc_sendto sendto "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_recvmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -+ r0, _, e1 := syscall_syscall(libc_recvmsg_trampoline_addr, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -265,15 +251,14 @@ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) { - return - } - --func libc_recvmsg_trampoline() -+var libc_recvmsg_trampoline_addr uintptr - --//go:linkname libc_recvmsg libc_recvmsg - //go:cgo_import_dynamic libc_recvmsg recvmsg "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_sendmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -+ r0, _, e1 := syscall_syscall(libc_sendmsg_trampoline_addr, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -281,15 +266,14 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { - return - } - --func libc_sendmsg_trampoline() -+var libc_sendmsg_trampoline_addr uintptr - --//go:linkname libc_sendmsg libc_sendmsg - //go:cgo_import_dynamic libc_sendmsg sendmsg "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, nevent int, timeout *Timespec) (n int, err error) { -- r0, _, e1 := syscall_syscall6(funcPC(libc_kevent_trampoline), uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout))) -+ r0, _, e1 := syscall_syscall6(libc_kevent_trampoline_addr, uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -297,9 +281,8 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne - return - } - --func libc_kevent_trampoline() -+var libc_kevent_trampoline_addr uintptr - --//go:linkname libc_kevent libc_kevent - //go:cgo_import_dynamic libc_kevent kevent "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -310,37 +293,35 @@ func utimes(path string, timeval *[2]Timeval) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_utimes_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0) -+ _, _, e1 := syscall_syscall(libc_utimes_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_utimes_trampoline() -+var libc_utimes_trampoline_addr uintptr - --//go:linkname libc_utimes libc_utimes - //go:cgo_import_dynamic libc_utimes utimes "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func futimes(fd int, timeval *[2]Timeval) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_futimes_trampoline), uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0) -+ _, _, e1 := syscall_syscall(libc_futimes_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_futimes_trampoline() -+var libc_futimes_trampoline_addr uintptr - --//go:linkname libc_futimes libc_futimes - //go:cgo_import_dynamic libc_futimes futimes "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_poll_trampoline), uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) -+ r0, _, e1 := syscall_syscall(libc_poll_trampoline_addr, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -348,9 +329,8 @@ func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { - return - } - --func libc_poll_trampoline() -+var libc_poll_trampoline_addr uintptr - --//go:linkname libc_poll libc_poll - //go:cgo_import_dynamic libc_poll poll "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -362,16 +342,15 @@ func Madvise(b []byte, behav int) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := syscall_syscall(funcPC(libc_madvise_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(behav)) -+ _, _, e1 := syscall_syscall(libc_madvise_trampoline_addr, uintptr(_p0), uintptr(len(b)), uintptr(behav)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_madvise_trampoline() -+var libc_madvise_trampoline_addr uintptr - --//go:linkname libc_madvise libc_madvise - //go:cgo_import_dynamic libc_madvise madvise "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -383,31 +362,29 @@ func Mlock(b []byte) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := syscall_syscall(funcPC(libc_mlock_trampoline), uintptr(_p0), uintptr(len(b)), 0) -+ _, _, e1 := syscall_syscall(libc_mlock_trampoline_addr, uintptr(_p0), uintptr(len(b)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_mlock_trampoline() -+var libc_mlock_trampoline_addr uintptr - --//go:linkname libc_mlock libc_mlock - //go:cgo_import_dynamic libc_mlock mlock "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mlockall(flags int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_mlockall_trampoline), uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall(libc_mlockall_trampoline_addr, uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_mlockall_trampoline() -+var libc_mlockall_trampoline_addr uintptr - --//go:linkname libc_mlockall libc_mlockall - //go:cgo_import_dynamic libc_mlockall mlockall "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -419,16 +396,15 @@ func Mprotect(b []byte, prot int) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := syscall_syscall(funcPC(libc_mprotect_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(prot)) -+ _, _, e1 := syscall_syscall(libc_mprotect_trampoline_addr, uintptr(_p0), uintptr(len(b)), uintptr(prot)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_mprotect_trampoline() -+var libc_mprotect_trampoline_addr uintptr - --//go:linkname libc_mprotect libc_mprotect - //go:cgo_import_dynamic libc_mprotect mprotect "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -440,16 +416,15 @@ func Msync(b []byte, flags int) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := syscall_syscall(funcPC(libc_msync_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(flags)) -+ _, _, e1 := syscall_syscall(libc_msync_trampoline_addr, uintptr(_p0), uintptr(len(b)), uintptr(flags)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_msync_trampoline() -+var libc_msync_trampoline_addr uintptr - --//go:linkname libc_msync libc_msync - //go:cgo_import_dynamic libc_msync msync "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -461,63 +436,43 @@ func Munlock(b []byte) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := syscall_syscall(funcPC(libc_munlock_trampoline), uintptr(_p0), uintptr(len(b)), 0) -+ _, _, e1 := syscall_syscall(libc_munlock_trampoline_addr, uintptr(_p0), uintptr(len(b)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_munlock_trampoline() -+var libc_munlock_trampoline_addr uintptr - --//go:linkname libc_munlock libc_munlock - //go:cgo_import_dynamic libc_munlock munlock "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Munlockall() (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_munlockall_trampoline), 0, 0, 0) -+ _, _, e1 := syscall_syscall(libc_munlockall_trampoline_addr, 0, 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_munlockall_trampoline() -+var libc_munlockall_trampoline_addr uintptr - --//go:linkname libc_munlockall libc_munlockall - //go:cgo_import_dynamic libc_munlockall munlockall "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) { -- _, _, e1 := syscall_syscall6(funcPC(libc_getattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0) -+func pipe(p *[2]int32) (err error) { -+ _, _, e1 := syscall_rawSyscall(libc_pipe_trampoline_addr, uintptr(unsafe.Pointer(p)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_getattrlist_trampoline() -+var libc_pipe_trampoline_addr uintptr - --//go:linkname libc_getattrlist libc_getattrlist --//go:cgo_import_dynamic libc_getattrlist getattrlist "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func pipe() (r int, w int, err error) { -- r0, r1, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), 0, 0, 0) -- r = int(r0) -- w = int(r1) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_pipe_trampoline() -- --//go:linkname libc_pipe libc_pipe - //go:cgo_import_dynamic libc_pipe pipe "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -533,7 +488,7 @@ func getxattr(path string, attr string, dest *byte, size int, position uint32, o - if err != nil { - return - } -- r0, _, e1 := syscall_syscall6(funcPC(libc_getxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) -+ r0, _, e1 := syscall_syscall6(libc_getxattr_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) - sz = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -541,9 +496,8 @@ func getxattr(path string, attr string, dest *byte, size int, position uint32, o - return - } - --func libc_getxattr_trampoline() -+var libc_getxattr_trampoline_addr uintptr - --//go:linkname libc_getxattr libc_getxattr - //go:cgo_import_dynamic libc_getxattr getxattr "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -554,7 +508,7 @@ func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, optio - if err != nil { - return - } -- r0, _, e1 := syscall_syscall6(funcPC(libc_fgetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) -+ r0, _, e1 := syscall_syscall6(libc_fgetxattr_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) - sz = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -562,9 +516,8 @@ func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, optio - return - } - --func libc_fgetxattr_trampoline() -+var libc_fgetxattr_trampoline_addr uintptr - --//go:linkname libc_fgetxattr libc_fgetxattr - //go:cgo_import_dynamic libc_fgetxattr fgetxattr "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -580,16 +533,15 @@ func setxattr(path string, attr string, data *byte, size int, position uint32, o - if err != nil { - return - } -- _, _, e1 := syscall_syscall6(funcPC(libc_setxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) -+ _, _, e1 := syscall_syscall6(libc_setxattr_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setxattr_trampoline() -+var libc_setxattr_trampoline_addr uintptr - --//go:linkname libc_setxattr libc_setxattr - //go:cgo_import_dynamic libc_setxattr setxattr "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -600,16 +552,15 @@ func fsetxattr(fd int, attr string, data *byte, size int, position uint32, optio - if err != nil { - return - } -- _, _, e1 := syscall_syscall6(funcPC(libc_fsetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) -+ _, _, e1 := syscall_syscall6(libc_fsetxattr_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_fsetxattr_trampoline() -+var libc_fsetxattr_trampoline_addr uintptr - --//go:linkname libc_fsetxattr libc_fsetxattr - //go:cgo_import_dynamic libc_fsetxattr fsetxattr "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -625,16 +576,15 @@ func removexattr(path string, attr string, options int) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_removexattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) -+ _, _, e1 := syscall_syscall(libc_removexattr_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_removexattr_trampoline() -+var libc_removexattr_trampoline_addr uintptr - --//go:linkname libc_removexattr libc_removexattr - //go:cgo_import_dynamic libc_removexattr removexattr "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -645,16 +595,15 @@ func fremovexattr(fd int, attr string, options int) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_fremovexattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options)) -+ _, _, e1 := syscall_syscall(libc_fremovexattr_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_fremovexattr_trampoline() -+var libc_fremovexattr_trampoline_addr uintptr - --//go:linkname libc_fremovexattr libc_fremovexattr - //go:cgo_import_dynamic libc_fremovexattr fremovexattr "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -665,7 +614,7 @@ func listxattr(path string, dest *byte, size int, options int) (sz int, err erro - if err != nil { - return - } -- r0, _, e1 := syscall_syscall6(funcPC(libc_listxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_listxattr_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) - sz = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -673,15 +622,14 @@ func listxattr(path string, dest *byte, size int, options int) (sz int, err erro - return - } - --func libc_listxattr_trampoline() -+var libc_listxattr_trampoline_addr uintptr - --//go:linkname libc_listxattr libc_listxattr - //go:cgo_import_dynamic libc_listxattr listxattr "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) { -- r0, _, e1 := syscall_syscall6(funcPC(libc_flistxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_flistxattr_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) - sz = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -689,30 +637,33 @@ func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) { - return - } - --func libc_flistxattr_trampoline() -+var libc_flistxattr_trampoline_addr uintptr - --//go:linkname libc_flistxattr libc_flistxattr - //go:cgo_import_dynamic libc_flistxattr flistxattr "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) { -- _, _, e1 := syscall_syscall6(funcPC(libc_setattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0) -+func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall6(libc_utimensat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setattrlist_trampoline() -+var libc_utimensat_trampoline_addr uintptr - --//go:linkname libc_setattrlist libc_setattrlist --//go:cgo_import_dynamic libc_setattrlist setattrlist "/usr/lib/libSystem.B.dylib" -+//go:cgo_import_dynamic libc_utimensat utimensat "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func fcntl(fd int, cmd int, arg int) (val int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_fcntl_trampoline), uintptr(fd), uintptr(cmd), uintptr(arg)) -+ r0, _, e1 := syscall_syscall(libc_fcntl_trampoline_addr, uintptr(fd), uintptr(cmd), uintptr(arg)) - val = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -720,39 +671,36 @@ func fcntl(fd int, cmd int, arg int) (val int, err error) { - return - } - --func libc_fcntl_trampoline() -+var libc_fcntl_trampoline_addr uintptr - --//go:linkname libc_fcntl libc_fcntl - //go:cgo_import_dynamic libc_fcntl fcntl "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func kill(pid int, signum int, posix int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_kill_trampoline), uintptr(pid), uintptr(signum), uintptr(posix)) -+ _, _, e1 := syscall_syscall(libc_kill_trampoline_addr, uintptr(pid), uintptr(signum), uintptr(posix)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_kill_trampoline() -+var libc_kill_trampoline_addr uintptr - --//go:linkname libc_kill libc_kill - //go:cgo_import_dynamic libc_kill kill "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func ioctl(fd int, req uint, arg uintptr) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_ioctl_trampoline), uintptr(fd), uintptr(req), uintptr(arg)) -+ _, _, e1 := syscall_syscall(libc_ioctl_trampoline_addr, uintptr(fd), uintptr(req), uintptr(arg)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_ioctl_trampoline() -+var libc_ioctl_trampoline_addr uintptr - --//go:linkname libc_ioctl libc_ioctl - //go:cgo_import_dynamic libc_ioctl ioctl "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -764,66 +712,121 @@ func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := syscall_syscall6(funcPC(libc_sysctl_trampoline), uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) -+ _, _, e1 := syscall_syscall6(libc_sysctl_trampoline_addr, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_sysctl_trampoline() -+var libc_sysctl_trampoline_addr uintptr - --//go:linkname libc_sysctl libc_sysctl - //go:cgo_import_dynamic libc_sysctl sysctl "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) { -- _, _, e1 := syscall_syscall6(funcPC(libc_sendfile_trampoline), uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags)) -+ _, _, e1 := syscall_syscall6(libc_sendfile_trampoline_addr, uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_sendfile_trampoline() -+var libc_sendfile_trampoline_addr uintptr - --//go:linkname libc_sendfile libc_sendfile - //go:cgo_import_dynamic libc_sendfile sendfile "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func shmat(id int, addr uintptr, flag int) (ret uintptr, err error) { -+ r0, _, e1 := syscall_syscall(libc_shmat_trampoline_addr, uintptr(id), uintptr(addr), uintptr(flag)) -+ ret = uintptr(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+var libc_shmat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_shmat shmat "/usr/lib/libSystem.B.dylib" -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func shmctl(id int, cmd int, buf *SysvShmDesc) (result int, err error) { -+ r0, _, e1 := syscall_syscall(libc_shmctl_trampoline_addr, uintptr(id), uintptr(cmd), uintptr(unsafe.Pointer(buf))) -+ result = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+var libc_shmctl_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_shmctl shmctl "/usr/lib/libSystem.B.dylib" -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func shmdt(addr uintptr) (err error) { -+ _, _, e1 := syscall_syscall(libc_shmdt_trampoline_addr, uintptr(addr), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+var libc_shmdt_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_shmdt shmdt "/usr/lib/libSystem.B.dylib" -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func shmget(key int, size int, flag int) (id int, err error) { -+ r0, _, e1 := syscall_syscall(libc_shmget_trampoline_addr, uintptr(key), uintptr(size), uintptr(flag)) -+ id = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+var libc_shmget_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_shmget shmget "/usr/lib/libSystem.B.dylib" -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Access(path string, mode uint32) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_access_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_access_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_access_trampoline() -+var libc_access_trampoline_addr uintptr - --//go:linkname libc_access libc_access - //go:cgo_import_dynamic libc_access access "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Adjtime(delta *Timeval, olddelta *Timeval) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_adjtime_trampoline), uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0) -+ _, _, e1 := syscall_syscall(libc_adjtime_trampoline_addr, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_adjtime_trampoline() -+var libc_adjtime_trampoline_addr uintptr - --//go:linkname libc_adjtime libc_adjtime - //go:cgo_import_dynamic libc_adjtime adjtime "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -834,16 +837,15 @@ func Chdir(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_chdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_chdir_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_chdir_trampoline() -+var libc_chdir_trampoline_addr uintptr - --//go:linkname libc_chdir libc_chdir - //go:cgo_import_dynamic libc_chdir chdir "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -854,16 +856,15 @@ func Chflags(path string, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_chflags_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall(libc_chflags_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_chflags_trampoline() -+var libc_chflags_trampoline_addr uintptr - --//go:linkname libc_chflags libc_chflags - //go:cgo_import_dynamic libc_chflags chflags "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -874,16 +875,15 @@ func Chmod(path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_chmod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_chmod_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_chmod_trampoline() -+var libc_chmod_trampoline_addr uintptr - --//go:linkname libc_chmod libc_chmod - //go:cgo_import_dynamic libc_chmod chmod "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -894,16 +894,15 @@ func Chown(path string, uid int, gid int) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_chown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) -+ _, _, e1 := syscall_syscall(libc_chown_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_chown_trampoline() -+var libc_chown_trampoline_addr uintptr - --//go:linkname libc_chown libc_chown - //go:cgo_import_dynamic libc_chown chown "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -914,52 +913,97 @@ func Chroot(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_chroot_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_chroot_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_chroot_trampoline() -+var libc_chroot_trampoline_addr uintptr - --//go:linkname libc_chroot libc_chroot - //go:cgo_import_dynamic libc_chroot chroot "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func ClockGettime(clockid int32, time *Timespec) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_clock_gettime_trampoline), uintptr(clockid), uintptr(unsafe.Pointer(time)), 0) -+ _, _, e1 := syscall_syscall(libc_clock_gettime_trampoline_addr, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_clock_gettime_trampoline() -+var libc_clock_gettime_trampoline_addr uintptr - --//go:linkname libc_clock_gettime libc_clock_gettime - //go:cgo_import_dynamic libc_clock_gettime clock_gettime "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Close(fd int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_close_trampoline), uintptr(fd), 0, 0) -+ _, _, e1 := syscall_syscall(libc_close_trampoline_addr, uintptr(fd), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_close_trampoline() -+var libc_close_trampoline_addr uintptr - --//go:linkname libc_close libc_close - //go:cgo_import_dynamic libc_close close "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func Clonefile(src string, dst string, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(src) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(dst) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall(libc_clonefile_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(flags)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+var libc_clonefile_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_clonefile clonefile "/usr/lib/libSystem.B.dylib" -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Clonefileat(srcDirfd int, src string, dstDirfd int, dst string, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(src) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(dst) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall6(libc_clonefileat_trampoline_addr, uintptr(srcDirfd), uintptr(unsafe.Pointer(_p0)), uintptr(dstDirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+var libc_clonefileat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_clonefileat clonefileat "/usr/lib/libSystem.B.dylib" -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Dup(fd int) (nfd int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_dup_trampoline), uintptr(fd), 0, 0) -+ r0, _, e1 := syscall_syscall(libc_dup_trampoline_addr, uintptr(fd), 0, 0) - nfd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -967,24 +1011,22 @@ func Dup(fd int) (nfd int, err error) { - return - } - --func libc_dup_trampoline() -+var libc_dup_trampoline_addr uintptr - --//go:linkname libc_dup libc_dup - //go:cgo_import_dynamic libc_dup dup "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Dup2(from int, to int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_dup2_trampoline), uintptr(from), uintptr(to), 0) -+ _, _, e1 := syscall_syscall(libc_dup2_trampoline_addr, uintptr(from), uintptr(to), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_dup2_trampoline() -+var libc_dup2_trampoline_addr uintptr - --//go:linkname libc_dup2 libc_dup2 - //go:cgo_import_dynamic libc_dup2 dup2 "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1000,28 +1042,26 @@ func Exchangedata(path1 string, path2 string, options int) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_exchangedata_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) -+ _, _, e1 := syscall_syscall(libc_exchangedata_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_exchangedata_trampoline() -+var libc_exchangedata_trampoline_addr uintptr - --//go:linkname libc_exchangedata libc_exchangedata - //go:cgo_import_dynamic libc_exchangedata exchangedata "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Exit(code int) { -- syscall_syscall(funcPC(libc_exit_trampoline), uintptr(code), 0, 0) -+ syscall_syscall(libc_exit_trampoline_addr, uintptr(code), 0, 0) - return - } - --func libc_exit_trampoline() -+var libc_exit_trampoline_addr uintptr - --//go:linkname libc_exit libc_exit - //go:cgo_import_dynamic libc_exit exit "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1032,61 +1072,57 @@ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall6(funcPC(libc_faccessat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_faccessat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_faccessat_trampoline() -+var libc_faccessat_trampoline_addr uintptr - --//go:linkname libc_faccessat libc_faccessat - //go:cgo_import_dynamic libc_faccessat faccessat "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchdir(fd int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fchdir_trampoline), uintptr(fd), 0, 0) -+ _, _, e1 := syscall_syscall(libc_fchdir_trampoline_addr, uintptr(fd), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_fchdir_trampoline() -+var libc_fchdir_trampoline_addr uintptr - --//go:linkname libc_fchdir libc_fchdir - //go:cgo_import_dynamic libc_fchdir fchdir "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchflags(fd int, flags int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fchflags_trampoline), uintptr(fd), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall(libc_fchflags_trampoline_addr, uintptr(fd), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_fchflags_trampoline() -+var libc_fchflags_trampoline_addr uintptr - --//go:linkname libc_fchflags libc_fchflags - //go:cgo_import_dynamic libc_fchflags fchflags "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchmod(fd int, mode uint32) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fchmod_trampoline), uintptr(fd), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_fchmod_trampoline_addr, uintptr(fd), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_fchmod_trampoline() -+var libc_fchmod_trampoline_addr uintptr - --//go:linkname libc_fchmod libc_fchmod - //go:cgo_import_dynamic libc_fchmod fchmod "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1097,31 +1133,29 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall6(funcPC(libc_fchmodat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_fchmodat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_fchmodat_trampoline() -+var libc_fchmodat_trampoline_addr uintptr - --//go:linkname libc_fchmodat libc_fchmodat - //go:cgo_import_dynamic libc_fchmodat fchmodat "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchown(fd int, uid int, gid int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fchown_trampoline), uintptr(fd), uintptr(uid), uintptr(gid)) -+ _, _, e1 := syscall_syscall(libc_fchown_trampoline_addr, uintptr(fd), uintptr(uid), uintptr(gid)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_fchown_trampoline() -+var libc_fchown_trampoline_addr uintptr - --//go:linkname libc_fchown libc_fchown - //go:cgo_import_dynamic libc_fchown fchown "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1132,37 +1166,54 @@ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall6(funcPC(libc_fchownat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall6(libc_fchownat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_fchownat_trampoline() -+var libc_fchownat_trampoline_addr uintptr - --//go:linkname libc_fchownat libc_fchownat - //go:cgo_import_dynamic libc_fchownat fchownat "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func Fclonefileat(srcDirfd int, dstDirfd int, dst string, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(dst) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall6(libc_fclonefileat_trampoline_addr, uintptr(srcDirfd), uintptr(dstDirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+var libc_fclonefileat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fclonefileat fclonefileat "/usr/lib/libSystem.B.dylib" -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Flock(fd int, how int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_flock_trampoline), uintptr(fd), uintptr(how), 0) -+ _, _, e1 := syscall_syscall(libc_flock_trampoline_addr, uintptr(fd), uintptr(how), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_flock_trampoline() -+var libc_flock_trampoline_addr uintptr - --//go:linkname libc_flock libc_flock - //go:cgo_import_dynamic libc_flock flock "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fpathconf(fd int, name int) (val int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_fpathconf_trampoline), uintptr(fd), uintptr(name), 0) -+ r0, _, e1 := syscall_syscall(libc_fpathconf_trampoline_addr, uintptr(fd), uintptr(name), 0) - val = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1170,97 +1221,111 @@ func Fpathconf(fd int, name int) (val int, err error) { - return - } - --func libc_fpathconf_trampoline() -+var libc_fpathconf_trampoline_addr uintptr - --//go:linkname libc_fpathconf libc_fpathconf - //go:cgo_import_dynamic libc_fpathconf fpathconf "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fsync(fd int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fsync_trampoline), uintptr(fd), 0, 0) -+ _, _, e1 := syscall_syscall(libc_fsync_trampoline_addr, uintptr(fd), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_fsync_trampoline() -+var libc_fsync_trampoline_addr uintptr - --//go:linkname libc_fsync libc_fsync - //go:cgo_import_dynamic libc_fsync fsync "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Ftruncate(fd int, length int64) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_ftruncate_trampoline), uintptr(fd), uintptr(length), 0) -+ _, _, e1 := syscall_syscall(libc_ftruncate_trampoline_addr, uintptr(fd), uintptr(length), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_ftruncate_trampoline() -+var libc_ftruncate_trampoline_addr uintptr - --//go:linkname libc_ftruncate libc_ftruncate - //go:cgo_import_dynamic libc_ftruncate ftruncate "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func Getcwd(buf []byte) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(buf) > 0 { -+ _p0 = unsafe.Pointer(&buf[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := syscall_syscall(libc_getcwd_trampoline_addr, uintptr(_p0), uintptr(len(buf)), 0) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+var libc_getcwd_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getcwd getcwd "/usr/lib/libSystem.B.dylib" -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Getdtablesize() (size int) { -- r0, _, _ := syscall_syscall(funcPC(libc_getdtablesize_trampoline), 0, 0, 0) -+ r0, _, _ := syscall_syscall(libc_getdtablesize_trampoline_addr, 0, 0, 0) - size = int(r0) - return - } - --func libc_getdtablesize_trampoline() -+var libc_getdtablesize_trampoline_addr uintptr - --//go:linkname libc_getdtablesize libc_getdtablesize - //go:cgo_import_dynamic libc_getdtablesize getdtablesize "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getegid() (egid int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_getegid_trampoline), 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getegid_trampoline_addr, 0, 0, 0) - egid = int(r0) - return - } - --func libc_getegid_trampoline() -+var libc_getegid_trampoline_addr uintptr - --//go:linkname libc_getegid libc_getegid - //go:cgo_import_dynamic libc_getegid getegid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Geteuid() (uid int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_geteuid_trampoline), 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_geteuid_trampoline_addr, 0, 0, 0) - uid = int(r0) - return - } - --func libc_geteuid_trampoline() -+var libc_geteuid_trampoline_addr uintptr - --//go:linkname libc_geteuid libc_geteuid - //go:cgo_import_dynamic libc_geteuid geteuid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getgid() (gid int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_getgid_trampoline), 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getgid_trampoline_addr, 0, 0, 0) - gid = int(r0) - return - } - --func libc_getgid_trampoline() -+var libc_getgid_trampoline_addr uintptr - --//go:linkname libc_getgid libc_getgid - //go:cgo_import_dynamic libc_getgid getgid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getpgid(pid int) (pgid int, err error) { -- r0, _, e1 := syscall_rawSyscall(funcPC(libc_getpgid_trampoline), uintptr(pid), 0, 0) -+ r0, _, e1 := syscall_rawSyscall(libc_getpgid_trampoline_addr, uintptr(pid), 0, 0) - pgid = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1268,54 +1333,50 @@ func Getpgid(pid int) (pgid int, err error) { - return - } - --func libc_getpgid_trampoline() -+var libc_getpgid_trampoline_addr uintptr - --//go:linkname libc_getpgid libc_getpgid - //go:cgo_import_dynamic libc_getpgid getpgid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getpgrp() (pgrp int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_getpgrp_trampoline), 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getpgrp_trampoline_addr, 0, 0, 0) - pgrp = int(r0) - return - } - --func libc_getpgrp_trampoline() -+var libc_getpgrp_trampoline_addr uintptr - --//go:linkname libc_getpgrp libc_getpgrp - //go:cgo_import_dynamic libc_getpgrp getpgrp "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getpid() (pid int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_getpid_trampoline), 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getpid_trampoline_addr, 0, 0, 0) - pid = int(r0) - return - } - --func libc_getpid_trampoline() -+var libc_getpid_trampoline_addr uintptr - --//go:linkname libc_getpid libc_getpid - //go:cgo_import_dynamic libc_getpid getpid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getppid() (ppid int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_getppid_trampoline), 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getppid_trampoline_addr, 0, 0, 0) - ppid = int(r0) - return - } - --func libc_getppid_trampoline() -+var libc_getppid_trampoline_addr uintptr - --//go:linkname libc_getppid libc_getppid - //go:cgo_import_dynamic libc_getppid getppid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getpriority(which int, who int) (prio int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_getpriority_trampoline), uintptr(which), uintptr(who), 0) -+ r0, _, e1 := syscall_syscall(libc_getpriority_trampoline_addr, uintptr(which), uintptr(who), 0) - prio = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1323,45 +1384,42 @@ func Getpriority(which int, who int) (prio int, err error) { - return - } - --func libc_getpriority_trampoline() -+var libc_getpriority_trampoline_addr uintptr - --//go:linkname libc_getpriority libc_getpriority - //go:cgo_import_dynamic libc_getpriority getpriority "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getrlimit(which int, lim *Rlimit) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_getrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0) -+ _, _, e1 := syscall_rawSyscall(libc_getrlimit_trampoline_addr, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_getrlimit_trampoline() -+var libc_getrlimit_trampoline_addr uintptr - --//go:linkname libc_getrlimit libc_getrlimit - //go:cgo_import_dynamic libc_getrlimit getrlimit "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getrusage(who int, rusage *Rusage) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_getrusage_trampoline), uintptr(who), uintptr(unsafe.Pointer(rusage)), 0) -+ _, _, e1 := syscall_rawSyscall(libc_getrusage_trampoline_addr, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_getrusage_trampoline() -+var libc_getrusage_trampoline_addr uintptr - --//go:linkname libc_getrusage libc_getrusage - //go:cgo_import_dynamic libc_getrusage getrusage "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getsid(pid int) (sid int, err error) { -- r0, _, e1 := syscall_rawSyscall(funcPC(libc_getsid_trampoline), uintptr(pid), 0, 0) -+ r0, _, e1 := syscall_rawSyscall(libc_getsid_trampoline_addr, uintptr(pid), 0, 0) - sid = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1369,41 +1427,52 @@ func Getsid(pid int) (sid int, err error) { - return - } - --func libc_getsid_trampoline() -+var libc_getsid_trampoline_addr uintptr - --//go:linkname libc_getsid libc_getsid - //go:cgo_import_dynamic libc_getsid getsid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func Gettimeofday(tp *Timeval) (err error) { -+ _, _, e1 := syscall_rawSyscall(libc_gettimeofday_trampoline_addr, uintptr(unsafe.Pointer(tp)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+var libc_gettimeofday_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_gettimeofday gettimeofday "/usr/lib/libSystem.B.dylib" -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Getuid() (uid int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_getuid_trampoline), 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getuid_trampoline_addr, 0, 0, 0) - uid = int(r0) - return - } - --func libc_getuid_trampoline() -+var libc_getuid_trampoline_addr uintptr - --//go:linkname libc_getuid libc_getuid - //go:cgo_import_dynamic libc_getuid getuid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Issetugid() (tainted bool) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_issetugid_trampoline), 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_issetugid_trampoline_addr, 0, 0, 0) - tainted = bool(r0 != 0) - return - } - --func libc_issetugid_trampoline() -+var libc_issetugid_trampoline_addr uintptr - --//go:linkname libc_issetugid libc_issetugid - //go:cgo_import_dynamic libc_issetugid issetugid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Kqueue() (fd int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_kqueue_trampoline), 0, 0, 0) -+ r0, _, e1 := syscall_syscall(libc_kqueue_trampoline_addr, 0, 0, 0) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1411,9 +1480,8 @@ func Kqueue() (fd int, err error) { - return - } - --func libc_kqueue_trampoline() -+var libc_kqueue_trampoline_addr uintptr - --//go:linkname libc_kqueue libc_kqueue - //go:cgo_import_dynamic libc_kqueue kqueue "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1424,16 +1492,15 @@ func Lchown(path string, uid int, gid int) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_lchown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) -+ _, _, e1 := syscall_syscall(libc_lchown_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_lchown_trampoline() -+var libc_lchown_trampoline_addr uintptr - --//go:linkname libc_lchown libc_lchown - //go:cgo_import_dynamic libc_lchown lchown "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1449,16 +1516,15 @@ func Link(path string, link string) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_link_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -+ _, _, e1 := syscall_syscall(libc_link_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_link_trampoline() -+var libc_link_trampoline_addr uintptr - --//go:linkname libc_link libc_link - //go:cgo_import_dynamic libc_link link "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1474,31 +1540,29 @@ func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err er - if err != nil { - return - } -- _, _, e1 := syscall_syscall6(funcPC(libc_linkat_trampoline), uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall6(libc_linkat_trampoline_addr, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_linkat_trampoline() -+var libc_linkat_trampoline_addr uintptr - --//go:linkname libc_linkat libc_linkat - //go:cgo_import_dynamic libc_linkat linkat "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Listen(s int, backlog int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_listen_trampoline), uintptr(s), uintptr(backlog), 0) -+ _, _, e1 := syscall_syscall(libc_listen_trampoline_addr, uintptr(s), uintptr(backlog), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_listen_trampoline() -+var libc_listen_trampoline_addr uintptr - --//go:linkname libc_listen libc_listen - //go:cgo_import_dynamic libc_listen listen "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1509,16 +1573,15 @@ func Mkdir(path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_mkdir_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_mkdir_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_mkdir_trampoline() -+var libc_mkdir_trampoline_addr uintptr - --//go:linkname libc_mkdir libc_mkdir - //go:cgo_import_dynamic libc_mkdir mkdir "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1529,16 +1592,15 @@ func Mkdirat(dirfd int, path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_mkdirat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) -+ _, _, e1 := syscall_syscall(libc_mkdirat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_mkdirat_trampoline() -+var libc_mkdirat_trampoline_addr uintptr - --//go:linkname libc_mkdirat libc_mkdirat - //go:cgo_import_dynamic libc_mkdirat mkdirat "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1549,16 +1611,15 @@ func Mkfifo(path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_mkfifo_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_mkfifo_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_mkfifo_trampoline() -+var libc_mkfifo_trampoline_addr uintptr - --//go:linkname libc_mkfifo libc_mkfifo - //go:cgo_import_dynamic libc_mkfifo mkfifo "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1569,27 +1630,50 @@ func Mknod(path string, mode uint32, dev int) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_mknod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) -+ _, _, e1 := syscall_syscall(libc_mknod_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_mknod_trampoline() -+var libc_mknod_trampoline_addr uintptr - --//go:linkname libc_mknod libc_mknod - //go:cgo_import_dynamic libc_mknod mknod "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func Mount(fsType string, dir string, flags int, data unsafe.Pointer) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(fsType) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(dir) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall6(libc_mount_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(flags), uintptr(data), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+var libc_mount_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mount mount "/usr/lib/libSystem.B.dylib" -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Open(path string, mode int, perm uint32) (fd int, err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } -- r0, _, e1 := syscall_syscall(funcPC(libc_open_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm)) -+ r0, _, e1 := syscall_syscall(libc_open_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm)) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1597,9 +1681,8 @@ func Open(path string, mode int, perm uint32) (fd int, err error) { - return - } - --func libc_open_trampoline() -+var libc_open_trampoline_addr uintptr - --//go:linkname libc_open libc_open - //go:cgo_import_dynamic libc_open open "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1610,7 +1693,7 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) { - if err != nil { - return - } -- r0, _, e1 := syscall_syscall6(funcPC(libc_openat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_openat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1618,9 +1701,8 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) { - return - } - --func libc_openat_trampoline() -+var libc_openat_trampoline_addr uintptr - --//go:linkname libc_openat libc_openat - //go:cgo_import_dynamic libc_openat openat "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1631,7 +1713,7 @@ func Pathconf(path string, name int) (val int, err error) { - if err != nil { - return - } -- r0, _, e1 := syscall_syscall(funcPC(libc_pathconf_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(name), 0) -+ r0, _, e1 := syscall_syscall(libc_pathconf_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(name), 0) - val = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1639,21 +1721,20 @@ func Pathconf(path string, name int) (val int, err error) { - return - } - --func libc_pathconf_trampoline() -+var libc_pathconf_trampoline_addr uintptr - --//go:linkname libc_pathconf libc_pathconf - //go:cgo_import_dynamic libc_pathconf pathconf "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := syscall_syscall6(funcPC(libc_pread_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_pread_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1661,21 +1742,20 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - return - } - --func libc_pread_trampoline() -+var libc_pread_trampoline_addr uintptr - --//go:linkname libc_pread libc_pread - //go:cgo_import_dynamic libc_pread pread "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := syscall_syscall6(funcPC(libc_pwrite_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_pwrite_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1683,9 +1763,8 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) { - return - } - --func libc_pwrite_trampoline() -+var libc_pwrite_trampoline_addr uintptr - --//go:linkname libc_pwrite libc_pwrite - //go:cgo_import_dynamic libc_pwrite pwrite "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1697,7 +1776,7 @@ func read(fd int, p []byte) (n int, err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p))) -+ r0, _, e1 := syscall_syscall(libc_read_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1705,9 +1784,8 @@ func read(fd int, p []byte) (n int, err error) { - return - } - --func libc_read_trampoline() -+var libc_read_trampoline_addr uintptr - --//go:linkname libc_read libc_read - //go:cgo_import_dynamic libc_read read "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1724,7 +1802,7 @@ func Readlink(path string, buf []byte) (n int, err error) { - } else { - _p1 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := syscall_syscall(funcPC(libc_readlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf))) -+ r0, _, e1 := syscall_syscall(libc_readlink_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1732,9 +1810,8 @@ func Readlink(path string, buf []byte) (n int, err error) { - return - } - --func libc_readlink_trampoline() -+var libc_readlink_trampoline_addr uintptr - --//go:linkname libc_readlink libc_readlink - //go:cgo_import_dynamic libc_readlink readlink "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1751,7 +1828,7 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) { - } else { - _p1 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := syscall_syscall6(funcPC(libc_readlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_readlinkat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1759,9 +1836,8 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) { - return - } - --func libc_readlinkat_trampoline() -+var libc_readlinkat_trampoline_addr uintptr - --//go:linkname libc_readlinkat libc_readlinkat - //go:cgo_import_dynamic libc_readlinkat readlinkat "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1777,16 +1853,15 @@ func Rename(from string, to string) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_rename_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -+ _, _, e1 := syscall_syscall(libc_rename_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_rename_trampoline() -+var libc_rename_trampoline_addr uintptr - --//go:linkname libc_rename libc_rename - //go:cgo_import_dynamic libc_rename rename "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1802,16 +1877,15 @@ func Renameat(fromfd int, from string, tofd int, to string) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall6(funcPC(libc_renameat_trampoline), uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_renameat_trampoline_addr, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_renameat_trampoline() -+var libc_renameat_trampoline_addr uintptr - --//go:linkname libc_renameat libc_renameat - //go:cgo_import_dynamic libc_renameat renameat "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1822,16 +1896,15 @@ func Revoke(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_revoke_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_revoke_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_revoke_trampoline() -+var libc_revoke_trampoline_addr uintptr - --//go:linkname libc_revoke libc_revoke - //go:cgo_import_dynamic libc_revoke revoke "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1842,22 +1915,21 @@ func Rmdir(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_rmdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_rmdir_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_rmdir_trampoline() -+var libc_rmdir_trampoline_addr uintptr - --//go:linkname libc_rmdir libc_rmdir - //go:cgo_import_dynamic libc_rmdir rmdir "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_lseek_trampoline), uintptr(fd), uintptr(offset), uintptr(whence)) -+ r0, _, e1 := syscall_syscall(libc_lseek_trampoline_addr, uintptr(fd), uintptr(offset), uintptr(whence)) - newoffset = int64(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1865,15 +1937,14 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { - return - } - --func libc_lseek_trampoline() -+var libc_lseek_trampoline_addr uintptr - --//go:linkname libc_lseek libc_lseek - //go:cgo_import_dynamic libc_lseek lseek "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) { -- r0, _, e1 := syscall_syscall6(funcPC(libc_select_trampoline), uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0) -+ r0, _, e1 := syscall_syscall6(libc_select_trampoline_addr, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1881,54 +1952,50 @@ func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err - return - } - --func libc_select_trampoline() -+var libc_select_trampoline_addr uintptr - --//go:linkname libc_select libc_select - //go:cgo_import_dynamic libc_select select "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setegid(egid int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_setegid_trampoline), uintptr(egid), 0, 0) -+ _, _, e1 := syscall_syscall(libc_setegid_trampoline_addr, uintptr(egid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setegid_trampoline() -+var libc_setegid_trampoline_addr uintptr - --//go:linkname libc_setegid libc_setegid - //go:cgo_import_dynamic libc_setegid setegid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Seteuid(euid int) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_seteuid_trampoline), uintptr(euid), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_seteuid_trampoline_addr, uintptr(euid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_seteuid_trampoline() -+var libc_seteuid_trampoline_addr uintptr - --//go:linkname libc_seteuid libc_seteuid - //go:cgo_import_dynamic libc_seteuid seteuid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setgid(gid int) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setgid_trampoline), uintptr(gid), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_setgid_trampoline_addr, uintptr(gid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setgid_trampoline() -+var libc_setgid_trampoline_addr uintptr - --//go:linkname libc_setgid libc_setgid - //go:cgo_import_dynamic libc_setgid setgid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1939,112 +2006,105 @@ func Setlogin(name string) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_setlogin_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_setlogin_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setlogin_trampoline() -+var libc_setlogin_trampoline_addr uintptr - --//go:linkname libc_setlogin libc_setlogin - //go:cgo_import_dynamic libc_setlogin setlogin "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setpgid(pid int, pgid int) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setpgid_trampoline), uintptr(pid), uintptr(pgid), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setpgid_trampoline_addr, uintptr(pid), uintptr(pgid), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setpgid_trampoline() -+var libc_setpgid_trampoline_addr uintptr - --//go:linkname libc_setpgid libc_setpgid - //go:cgo_import_dynamic libc_setpgid setpgid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setpriority(which int, who int, prio int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_setpriority_trampoline), uintptr(which), uintptr(who), uintptr(prio)) -+ _, _, e1 := syscall_syscall(libc_setpriority_trampoline_addr, uintptr(which), uintptr(who), uintptr(prio)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setpriority_trampoline() -+var libc_setpriority_trampoline_addr uintptr - --//go:linkname libc_setpriority libc_setpriority - //go:cgo_import_dynamic libc_setpriority setpriority "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setprivexec(flag int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_setprivexec_trampoline), uintptr(flag), 0, 0) -+ _, _, e1 := syscall_syscall(libc_setprivexec_trampoline_addr, uintptr(flag), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setprivexec_trampoline() -+var libc_setprivexec_trampoline_addr uintptr - --//go:linkname libc_setprivexec libc_setprivexec - //go:cgo_import_dynamic libc_setprivexec setprivexec "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setregid(rgid int, egid int) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setregid_trampoline), uintptr(rgid), uintptr(egid), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setregid_trampoline_addr, uintptr(rgid), uintptr(egid), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setregid_trampoline() -+var libc_setregid_trampoline_addr uintptr - --//go:linkname libc_setregid libc_setregid - //go:cgo_import_dynamic libc_setregid setregid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setreuid(ruid int, euid int) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setreuid_trampoline), uintptr(ruid), uintptr(euid), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setreuid_trampoline_addr, uintptr(ruid), uintptr(euid), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setreuid_trampoline() -+var libc_setreuid_trampoline_addr uintptr - --//go:linkname libc_setreuid libc_setreuid - //go:cgo_import_dynamic libc_setreuid setreuid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setrlimit(which int, lim *Rlimit) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setrlimit_trampoline_addr, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setrlimit_trampoline() -+var libc_setrlimit_trampoline_addr uintptr - --//go:linkname libc_setrlimit libc_setrlimit - //go:cgo_import_dynamic libc_setrlimit setrlimit "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setsid() (pid int, err error) { -- r0, _, e1 := syscall_rawSyscall(funcPC(libc_setsid_trampoline), 0, 0, 0) -+ r0, _, e1 := syscall_rawSyscall(libc_setsid_trampoline_addr, 0, 0, 0) - pid = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -2052,39 +2112,36 @@ func Setsid() (pid int, err error) { - return - } - --func libc_setsid_trampoline() -+var libc_setsid_trampoline_addr uintptr - --//go:linkname libc_setsid libc_setsid - //go:cgo_import_dynamic libc_setsid setsid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Settimeofday(tp *Timeval) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_settimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_settimeofday_trampoline_addr, uintptr(unsafe.Pointer(tp)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_settimeofday_trampoline() -+var libc_settimeofday_trampoline_addr uintptr - --//go:linkname libc_settimeofday libc_settimeofday - //go:cgo_import_dynamic libc_settimeofday settimeofday "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setuid(uid int) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setuid_trampoline), uintptr(uid), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_setuid_trampoline_addr, uintptr(uid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setuid_trampoline() -+var libc_setuid_trampoline_addr uintptr - --//go:linkname libc_setuid libc_setuid - //go:cgo_import_dynamic libc_setuid setuid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -2100,16 +2157,15 @@ func Symlink(path string, link string) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_symlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -+ _, _, e1 := syscall_syscall(libc_symlink_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_symlink_trampoline() -+var libc_symlink_trampoline_addr uintptr - --//go:linkname libc_symlink libc_symlink - //go:cgo_import_dynamic libc_symlink symlink "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -2125,31 +2181,29 @@ func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_symlinkat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1))) -+ _, _, e1 := syscall_syscall(libc_symlinkat_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1))) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_symlinkat_trampoline() -+var libc_symlinkat_trampoline_addr uintptr - --//go:linkname libc_symlinkat libc_symlinkat - //go:cgo_import_dynamic libc_symlinkat symlinkat "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Sync() (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_sync_trampoline), 0, 0, 0) -+ _, _, e1 := syscall_syscall(libc_sync_trampoline_addr, 0, 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_sync_trampoline() -+var libc_sync_trampoline_addr uintptr - --//go:linkname libc_sync libc_sync - //go:cgo_import_dynamic libc_sync sync "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -2160,29 +2214,27 @@ func Truncate(path string, length int64) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_truncate_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(length), 0) -+ _, _, e1 := syscall_syscall(libc_truncate_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_truncate_trampoline() -+var libc_truncate_trampoline_addr uintptr - --//go:linkname libc_truncate libc_truncate - //go:cgo_import_dynamic libc_truncate truncate "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Umask(newmask int) (oldmask int) { -- r0, _, _ := syscall_syscall(funcPC(libc_umask_trampoline), uintptr(newmask), 0, 0) -+ r0, _, _ := syscall_syscall(libc_umask_trampoline_addr, uintptr(newmask), 0, 0) - oldmask = int(r0) - return - } - --func libc_umask_trampoline() -+var libc_umask_trampoline_addr uintptr - --//go:linkname libc_umask libc_umask - //go:cgo_import_dynamic libc_umask umask "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -2193,16 +2245,15 @@ func Undelete(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_undelete_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_undelete_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_undelete_trampoline() -+var libc_undelete_trampoline_addr uintptr - --//go:linkname libc_undelete libc_undelete - //go:cgo_import_dynamic libc_undelete undelete "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -2213,16 +2264,15 @@ func Unlink(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_unlink_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_unlink_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_unlink_trampoline() -+var libc_unlink_trampoline_addr uintptr - --//go:linkname libc_unlink libc_unlink - //go:cgo_import_dynamic libc_unlink unlink "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -2233,16 +2283,15 @@ func Unlinkat(dirfd int, path string, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_unlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags)) -+ _, _, e1 := syscall_syscall(libc_unlinkat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_unlinkat_trampoline() -+var libc_unlinkat_trampoline_addr uintptr - --//go:linkname libc_unlinkat libc_unlinkat - //go:cgo_import_dynamic libc_unlinkat unlinkat "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -2253,16 +2302,15 @@ func Unmount(path string, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_unmount_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall(libc_unmount_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_unmount_trampoline() -+var libc_unmount_trampoline_addr uintptr - --//go:linkname libc_unmount libc_unmount - //go:cgo_import_dynamic libc_unmount unmount "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -2274,7 +2322,7 @@ func write(fd int, p []byte) (n int, err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p))) -+ r0, _, e1 := syscall_syscall(libc_write_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -2282,15 +2330,14 @@ func write(fd int, p []byte) (n int, err error) { - return - } - --func libc_write_trampoline() -+var libc_write_trampoline_addr uintptr - --//go:linkname libc_write libc_write - //go:cgo_import_dynamic libc_write write "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) { -- r0, _, e1 := syscall_syscall6(funcPC(libc_mmap_trampoline), uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos)) -+ r0, _, e1 := syscall_syscall6(libc_mmap_trampoline_addr, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos)) - ret = uintptr(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -2298,30 +2345,28 @@ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) ( - return - } - --func libc_mmap_trampoline() -+var libc_mmap_trampoline_addr uintptr - --//go:linkname libc_mmap libc_mmap - //go:cgo_import_dynamic libc_mmap mmap "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func munmap(addr uintptr, length uintptr) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_munmap_trampoline), uintptr(addr), uintptr(length), 0) -+ _, _, e1 := syscall_syscall(libc_munmap_trampoline_addr, uintptr(addr), uintptr(length), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_munmap_trampoline() -+var libc_munmap_trampoline_addr uintptr - --//go:linkname libc_munmap libc_munmap - //go:cgo_import_dynamic libc_munmap munmap "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func readlen(fd int, buf *byte, nbuf int) (n int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) -+ r0, _, e1 := syscall_syscall(libc_read_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -2332,7 +2377,7 @@ func readlen(fd int, buf *byte, nbuf int) (n int, err error) { - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func writelen(fd int, buf *byte, nbuf int) (n int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) -+ r0, _, e1 := syscall_syscall(libc_write_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -2342,49 +2387,16 @@ func writelen(fd int, buf *byte, nbuf int) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) { -- _, _, e1 := syscall_syscall6(funcPC(libc_ptrace_trampoline), uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_ptrace_trampoline() -- --//go:linkname libc_ptrace libc_ptrace --//go:cgo_import_dynamic libc_ptrace ptrace "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func gettimeofday(tp *Timeval) (sec int64, usec int32, err error) { -- r0, r1, e1 := syscall_rawSyscall(funcPC(libc_gettimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0) -- sec = int64(r0) -- usec = int32(r1) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_gettimeofday_trampoline() -- --//go:linkname libc_gettimeofday libc_gettimeofday --//go:cgo_import_dynamic libc_gettimeofday gettimeofday "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Fstat(fd int, stat *Stat_t) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fstat64_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_fstat64_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_fstat64_trampoline() -+var libc_fstat64_trampoline_addr uintptr - --//go:linkname libc_fstat64 libc_fstat64 - //go:cgo_import_dynamic libc_fstat64 fstat64 "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -2395,37 +2407,35 @@ func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall6(funcPC(libc_fstatat64_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_fstatat64_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_fstatat64_trampoline() -+var libc_fstatat64_trampoline_addr uintptr - --//go:linkname libc_fstatat64 libc_fstatat64 - //go:cgo_import_dynamic libc_fstatat64 fstatat64 "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fstatfs(fd int, stat *Statfs_t) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fstatfs64_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_fstatfs64_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_fstatfs64_trampoline() -+var libc_fstatfs64_trampoline_addr uintptr - --//go:linkname libc_fstatfs64 libc_fstatfs64 - //go:cgo_import_dynamic libc_fstatfs64 fstatfs64 "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_getfsstat64_trampoline), uintptr(buf), uintptr(size), uintptr(flags)) -+ r0, _, e1 := syscall_syscall(libc_getfsstat64_trampoline_addr, uintptr(buf), uintptr(size), uintptr(flags)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -2433,9 +2443,8 @@ func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) { - return - } - --func libc_getfsstat64_trampoline() -+var libc_getfsstat64_trampoline_addr uintptr - --//go:linkname libc_getfsstat64 libc_getfsstat64 - //go:cgo_import_dynamic libc_getfsstat64 getfsstat64 "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -2446,36 +2455,48 @@ func Lstat(path string, stat *Stat_t) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_lstat64_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_lstat64_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_lstat64_trampoline() -+var libc_lstat64_trampoline_addr uintptr - --//go:linkname libc_lstat64 libc_lstat64 - //go:cgo_import_dynamic libc_lstat64 lstat64 "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func ptrace1(request int, pid int, addr uintptr, data uintptr) (err error) { -+ _, _, e1 := syscall_syscall6(libc_ptrace_trampoline_addr, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+var libc_ptrace_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_ptrace ptrace "/usr/lib/libSystem.B.dylib" -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Stat(path string, stat *Stat_t) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_stat64_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_stat64_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_stat64_trampoline() -+var libc_stat64_trampoline_addr uintptr - --//go:linkname libc_stat64 libc_stat64 - //go:cgo_import_dynamic libc_stat64 stat64 "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -2486,14 +2507,13 @@ func Statfs(path string, stat *Statfs_t) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_statfs64_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_statfs64_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_statfs64_trampoline() -+var libc_statfs64_trampoline_addr uintptr - --//go:linkname libc_statfs64 libc_statfs64 - //go:cgo_import_dynamic libc_statfs64 statfs64 "/usr/lib/libSystem.B.dylib" -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s -index a3fdf09..b41467a 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s -+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s -@@ -1,284 +1,889 @@ --// go run mkasm_darwin.go amd64 -+// go run mkasm.go darwin amd64 - // Code generated by the command above; DO NOT EDIT. - -+//go:build go1.12 - // +build go1.12 - - #include "textflag.h" --TEXT ·libc_getgroups_trampoline(SB),NOSPLIT,$0-0 -+ -+TEXT libc_getgroups_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getgroups(SB) --TEXT ·libc_setgroups_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getgroups_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getgroups_trampoline_addr(SB)/8, $libc_getgroups_trampoline<>(SB) -+ -+TEXT libc_setgroups_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setgroups(SB) --TEXT ·libc_wait4_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setgroups_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setgroups_trampoline_addr(SB)/8, $libc_setgroups_trampoline<>(SB) -+ -+TEXT libc_wait4_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_wait4(SB) --TEXT ·libc_accept_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_wait4_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_wait4_trampoline_addr(SB)/8, $libc_wait4_trampoline<>(SB) -+ -+TEXT libc_accept_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_accept(SB) --TEXT ·libc_bind_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_accept_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_accept_trampoline_addr(SB)/8, $libc_accept_trampoline<>(SB) -+ -+TEXT libc_bind_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_bind(SB) --TEXT ·libc_connect_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_bind_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_bind_trampoline_addr(SB)/8, $libc_bind_trampoline<>(SB) -+ -+TEXT libc_connect_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_connect(SB) --TEXT ·libc_socket_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_connect_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_connect_trampoline_addr(SB)/8, $libc_connect_trampoline<>(SB) -+ -+TEXT libc_socket_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_socket(SB) --TEXT ·libc_getsockopt_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_socket_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_socket_trampoline_addr(SB)/8, $libc_socket_trampoline<>(SB) -+ -+TEXT libc_getsockopt_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getsockopt(SB) --TEXT ·libc_setsockopt_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getsockopt_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getsockopt_trampoline_addr(SB)/8, $libc_getsockopt_trampoline<>(SB) -+ -+TEXT libc_setsockopt_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setsockopt(SB) --TEXT ·libc_getpeername_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setsockopt_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setsockopt_trampoline_addr(SB)/8, $libc_setsockopt_trampoline<>(SB) -+ -+TEXT libc_getpeername_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getpeername(SB) --TEXT ·libc_getsockname_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getpeername_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getpeername_trampoline_addr(SB)/8, $libc_getpeername_trampoline<>(SB) -+ -+TEXT libc_getsockname_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getsockname(SB) --TEXT ·libc_shutdown_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getsockname_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getsockname_trampoline_addr(SB)/8, $libc_getsockname_trampoline<>(SB) -+ -+TEXT libc_shutdown_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_shutdown(SB) --TEXT ·libc_socketpair_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_shutdown_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_shutdown_trampoline_addr(SB)/8, $libc_shutdown_trampoline<>(SB) -+ -+TEXT libc_socketpair_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_socketpair(SB) --TEXT ·libc_recvfrom_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_socketpair_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_socketpair_trampoline_addr(SB)/8, $libc_socketpair_trampoline<>(SB) -+ -+TEXT libc_recvfrom_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_recvfrom(SB) --TEXT ·libc_sendto_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_recvfrom_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_recvfrom_trampoline_addr(SB)/8, $libc_recvfrom_trampoline<>(SB) -+ -+TEXT libc_sendto_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_sendto(SB) --TEXT ·libc_recvmsg_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_sendto_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_sendto_trampoline_addr(SB)/8, $libc_sendto_trampoline<>(SB) -+ -+TEXT libc_recvmsg_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_recvmsg(SB) --TEXT ·libc_sendmsg_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_recvmsg_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_recvmsg_trampoline_addr(SB)/8, $libc_recvmsg_trampoline<>(SB) -+ -+TEXT libc_sendmsg_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_sendmsg(SB) --TEXT ·libc_kevent_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_sendmsg_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_sendmsg_trampoline_addr(SB)/8, $libc_sendmsg_trampoline<>(SB) -+ -+TEXT libc_kevent_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_kevent(SB) --TEXT ·libc_utimes_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_kevent_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_kevent_trampoline_addr(SB)/8, $libc_kevent_trampoline<>(SB) -+ -+TEXT libc_utimes_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_utimes(SB) --TEXT ·libc_futimes_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_utimes_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_utimes_trampoline_addr(SB)/8, $libc_utimes_trampoline<>(SB) -+ -+TEXT libc_futimes_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_futimes(SB) --TEXT ·libc_poll_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_futimes_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_futimes_trampoline_addr(SB)/8, $libc_futimes_trampoline<>(SB) -+ -+TEXT libc_poll_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_poll(SB) --TEXT ·libc_madvise_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_poll_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_poll_trampoline_addr(SB)/8, $libc_poll_trampoline<>(SB) -+ -+TEXT libc_madvise_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_madvise(SB) --TEXT ·libc_mlock_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_madvise_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_madvise_trampoline_addr(SB)/8, $libc_madvise_trampoline<>(SB) -+ -+TEXT libc_mlock_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_mlock(SB) --TEXT ·libc_mlockall_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_mlock_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mlock_trampoline_addr(SB)/8, $libc_mlock_trampoline<>(SB) -+ -+TEXT libc_mlockall_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_mlockall(SB) --TEXT ·libc_mprotect_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_mlockall_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mlockall_trampoline_addr(SB)/8, $libc_mlockall_trampoline<>(SB) -+ -+TEXT libc_mprotect_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_mprotect(SB) --TEXT ·libc_msync_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_mprotect_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mprotect_trampoline_addr(SB)/8, $libc_mprotect_trampoline<>(SB) -+ -+TEXT libc_msync_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_msync(SB) --TEXT ·libc_munlock_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_msync_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_msync_trampoline_addr(SB)/8, $libc_msync_trampoline<>(SB) -+ -+TEXT libc_munlock_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_munlock(SB) --TEXT ·libc_munlockall_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_munlock_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_munlock_trampoline_addr(SB)/8, $libc_munlock_trampoline<>(SB) -+ -+TEXT libc_munlockall_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_munlockall(SB) --TEXT ·libc_getattrlist_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getattrlist(SB) --TEXT ·libc_pipe_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_munlockall_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_munlockall_trampoline_addr(SB)/8, $libc_munlockall_trampoline<>(SB) -+ -+TEXT libc_pipe_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_pipe(SB) --TEXT ·libc_getxattr_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_pipe_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_pipe_trampoline_addr(SB)/8, $libc_pipe_trampoline<>(SB) -+ -+TEXT libc_getxattr_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getxattr(SB) --TEXT ·libc_fgetxattr_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getxattr_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getxattr_trampoline_addr(SB)/8, $libc_getxattr_trampoline<>(SB) -+ -+TEXT libc_fgetxattr_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fgetxattr(SB) --TEXT ·libc_setxattr_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fgetxattr_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fgetxattr_trampoline_addr(SB)/8, $libc_fgetxattr_trampoline<>(SB) -+ -+TEXT libc_setxattr_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setxattr(SB) --TEXT ·libc_fsetxattr_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setxattr_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setxattr_trampoline_addr(SB)/8, $libc_setxattr_trampoline<>(SB) -+ -+TEXT libc_fsetxattr_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fsetxattr(SB) --TEXT ·libc_removexattr_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fsetxattr_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fsetxattr_trampoline_addr(SB)/8, $libc_fsetxattr_trampoline<>(SB) -+ -+TEXT libc_removexattr_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_removexattr(SB) --TEXT ·libc_fremovexattr_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_removexattr_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_removexattr_trampoline_addr(SB)/8, $libc_removexattr_trampoline<>(SB) -+ -+TEXT libc_fremovexattr_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fremovexattr(SB) --TEXT ·libc_listxattr_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fremovexattr_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fremovexattr_trampoline_addr(SB)/8, $libc_fremovexattr_trampoline<>(SB) -+ -+TEXT libc_listxattr_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_listxattr(SB) --TEXT ·libc_flistxattr_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_listxattr_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_listxattr_trampoline_addr(SB)/8, $libc_listxattr_trampoline<>(SB) -+ -+TEXT libc_flistxattr_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_flistxattr(SB) --TEXT ·libc_setattrlist_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setattrlist(SB) --TEXT ·libc_fcntl_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_flistxattr_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_flistxattr_trampoline_addr(SB)/8, $libc_flistxattr_trampoline<>(SB) -+ -+TEXT libc_utimensat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_utimensat(SB) -+ -+GLOBL ·libc_utimensat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_utimensat_trampoline_addr(SB)/8, $libc_utimensat_trampoline<>(SB) -+ -+TEXT libc_fcntl_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fcntl(SB) --TEXT ·libc_kill_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fcntl_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fcntl_trampoline_addr(SB)/8, $libc_fcntl_trampoline<>(SB) -+ -+TEXT libc_kill_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_kill(SB) --TEXT ·libc_ioctl_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_kill_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_kill_trampoline_addr(SB)/8, $libc_kill_trampoline<>(SB) -+ -+TEXT libc_ioctl_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_ioctl(SB) --TEXT ·libc_sysctl_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_ioctl_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_ioctl_trampoline_addr(SB)/8, $libc_ioctl_trampoline<>(SB) -+ -+TEXT libc_sysctl_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_sysctl(SB) --TEXT ·libc_sendfile_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_sysctl_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_sysctl_trampoline_addr(SB)/8, $libc_sysctl_trampoline<>(SB) -+ -+TEXT libc_sendfile_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_sendfile(SB) --TEXT ·libc_access_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_sendfile_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_sendfile_trampoline_addr(SB)/8, $libc_sendfile_trampoline<>(SB) -+ -+TEXT libc_shmat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_shmat(SB) -+ -+GLOBL ·libc_shmat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_shmat_trampoline_addr(SB)/8, $libc_shmat_trampoline<>(SB) -+ -+TEXT libc_shmctl_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_shmctl(SB) -+ -+GLOBL ·libc_shmctl_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_shmctl_trampoline_addr(SB)/8, $libc_shmctl_trampoline<>(SB) -+ -+TEXT libc_shmdt_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_shmdt(SB) -+ -+GLOBL ·libc_shmdt_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_shmdt_trampoline_addr(SB)/8, $libc_shmdt_trampoline<>(SB) -+ -+TEXT libc_shmget_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_shmget(SB) -+ -+GLOBL ·libc_shmget_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_shmget_trampoline_addr(SB)/8, $libc_shmget_trampoline<>(SB) -+ -+TEXT libc_access_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_access(SB) --TEXT ·libc_adjtime_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_access_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_access_trampoline_addr(SB)/8, $libc_access_trampoline<>(SB) -+ -+TEXT libc_adjtime_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_adjtime(SB) --TEXT ·libc_chdir_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_adjtime_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_adjtime_trampoline_addr(SB)/8, $libc_adjtime_trampoline<>(SB) -+ -+TEXT libc_chdir_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_chdir(SB) --TEXT ·libc_chflags_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_chdir_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_chdir_trampoline_addr(SB)/8, $libc_chdir_trampoline<>(SB) -+ -+TEXT libc_chflags_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_chflags(SB) --TEXT ·libc_chmod_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_chflags_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_chflags_trampoline_addr(SB)/8, $libc_chflags_trampoline<>(SB) -+ -+TEXT libc_chmod_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_chmod(SB) --TEXT ·libc_chown_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_chmod_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_chmod_trampoline_addr(SB)/8, $libc_chmod_trampoline<>(SB) -+ -+TEXT libc_chown_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_chown(SB) --TEXT ·libc_chroot_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_chown_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_chown_trampoline_addr(SB)/8, $libc_chown_trampoline<>(SB) -+ -+TEXT libc_chroot_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_chroot(SB) --TEXT ·libc_clock_gettime_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_chroot_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_chroot_trampoline_addr(SB)/8, $libc_chroot_trampoline<>(SB) -+ -+TEXT libc_clock_gettime_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_clock_gettime(SB) --TEXT ·libc_close_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_clock_gettime_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_clock_gettime_trampoline_addr(SB)/8, $libc_clock_gettime_trampoline<>(SB) -+ -+TEXT libc_close_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_close(SB) --TEXT ·libc_dup_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_close_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_close_trampoline_addr(SB)/8, $libc_close_trampoline<>(SB) -+ -+TEXT libc_clonefile_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_clonefile(SB) -+ -+GLOBL ·libc_clonefile_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_clonefile_trampoline_addr(SB)/8, $libc_clonefile_trampoline<>(SB) -+ -+TEXT libc_clonefileat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_clonefileat(SB) -+ -+GLOBL ·libc_clonefileat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_clonefileat_trampoline_addr(SB)/8, $libc_clonefileat_trampoline<>(SB) -+ -+TEXT libc_dup_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_dup(SB) --TEXT ·libc_dup2_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_dup_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_dup_trampoline_addr(SB)/8, $libc_dup_trampoline<>(SB) -+ -+TEXT libc_dup2_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_dup2(SB) --TEXT ·libc_exchangedata_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_dup2_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_dup2_trampoline_addr(SB)/8, $libc_dup2_trampoline<>(SB) -+ -+TEXT libc_exchangedata_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_exchangedata(SB) --TEXT ·libc_exit_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_exchangedata_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_exchangedata_trampoline_addr(SB)/8, $libc_exchangedata_trampoline<>(SB) -+ -+TEXT libc_exit_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_exit(SB) --TEXT ·libc_faccessat_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_exit_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_exit_trampoline_addr(SB)/8, $libc_exit_trampoline<>(SB) -+ -+TEXT libc_faccessat_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_faccessat(SB) --TEXT ·libc_fchdir_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_faccessat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_faccessat_trampoline_addr(SB)/8, $libc_faccessat_trampoline<>(SB) -+ -+TEXT libc_fchdir_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fchdir(SB) --TEXT ·libc_fchflags_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fchdir_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fchdir_trampoline_addr(SB)/8, $libc_fchdir_trampoline<>(SB) -+ -+TEXT libc_fchflags_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fchflags(SB) --TEXT ·libc_fchmod_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fchflags_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fchflags_trampoline_addr(SB)/8, $libc_fchflags_trampoline<>(SB) -+ -+TEXT libc_fchmod_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fchmod(SB) --TEXT ·libc_fchmodat_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fchmod_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fchmod_trampoline_addr(SB)/8, $libc_fchmod_trampoline<>(SB) -+ -+TEXT libc_fchmodat_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fchmodat(SB) --TEXT ·libc_fchown_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fchmodat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fchmodat_trampoline_addr(SB)/8, $libc_fchmodat_trampoline<>(SB) -+ -+TEXT libc_fchown_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fchown(SB) --TEXT ·libc_fchownat_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fchown_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fchown_trampoline_addr(SB)/8, $libc_fchown_trampoline<>(SB) -+ -+TEXT libc_fchownat_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fchownat(SB) --TEXT ·libc_flock_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fchownat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fchownat_trampoline_addr(SB)/8, $libc_fchownat_trampoline<>(SB) -+ -+TEXT libc_fclonefileat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fclonefileat(SB) -+ -+GLOBL ·libc_fclonefileat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fclonefileat_trampoline_addr(SB)/8, $libc_fclonefileat_trampoline<>(SB) -+ -+TEXT libc_flock_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_flock(SB) --TEXT ·libc_fpathconf_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_flock_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_flock_trampoline_addr(SB)/8, $libc_flock_trampoline<>(SB) -+ -+TEXT libc_fpathconf_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fpathconf(SB) --TEXT ·libc_fsync_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fpathconf_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fpathconf_trampoline_addr(SB)/8, $libc_fpathconf_trampoline<>(SB) -+ -+TEXT libc_fsync_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fsync(SB) --TEXT ·libc_ftruncate_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fsync_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fsync_trampoline_addr(SB)/8, $libc_fsync_trampoline<>(SB) -+ -+TEXT libc_ftruncate_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_ftruncate(SB) --TEXT ·libc_getdtablesize_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_ftruncate_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_ftruncate_trampoline_addr(SB)/8, $libc_ftruncate_trampoline<>(SB) -+ -+TEXT libc_getcwd_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getcwd(SB) -+ -+GLOBL ·libc_getcwd_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getcwd_trampoline_addr(SB)/8, $libc_getcwd_trampoline<>(SB) -+ -+TEXT libc_getdtablesize_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getdtablesize(SB) --TEXT ·libc_getegid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getdtablesize_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getdtablesize_trampoline_addr(SB)/8, $libc_getdtablesize_trampoline<>(SB) -+ -+TEXT libc_getegid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getegid(SB) --TEXT ·libc_geteuid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getegid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getegid_trampoline_addr(SB)/8, $libc_getegid_trampoline<>(SB) -+ -+TEXT libc_geteuid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_geteuid(SB) --TEXT ·libc_getgid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_geteuid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_geteuid_trampoline_addr(SB)/8, $libc_geteuid_trampoline<>(SB) -+ -+TEXT libc_getgid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getgid(SB) --TEXT ·libc_getpgid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getgid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getgid_trampoline_addr(SB)/8, $libc_getgid_trampoline<>(SB) -+ -+TEXT libc_getpgid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getpgid(SB) --TEXT ·libc_getpgrp_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getpgid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getpgid_trampoline_addr(SB)/8, $libc_getpgid_trampoline<>(SB) -+ -+TEXT libc_getpgrp_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getpgrp(SB) --TEXT ·libc_getpid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getpgrp_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getpgrp_trampoline_addr(SB)/8, $libc_getpgrp_trampoline<>(SB) -+ -+TEXT libc_getpid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getpid(SB) --TEXT ·libc_getppid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getpid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getpid_trampoline_addr(SB)/8, $libc_getpid_trampoline<>(SB) -+ -+TEXT libc_getppid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getppid(SB) --TEXT ·libc_getpriority_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getppid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getppid_trampoline_addr(SB)/8, $libc_getppid_trampoline<>(SB) -+ -+TEXT libc_getpriority_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getpriority(SB) --TEXT ·libc_getrlimit_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getpriority_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getpriority_trampoline_addr(SB)/8, $libc_getpriority_trampoline<>(SB) -+ -+TEXT libc_getrlimit_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getrlimit(SB) --TEXT ·libc_getrusage_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getrlimit_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getrlimit_trampoline_addr(SB)/8, $libc_getrlimit_trampoline<>(SB) -+ -+TEXT libc_getrusage_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getrusage(SB) --TEXT ·libc_getsid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getrusage_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getrusage_trampoline_addr(SB)/8, $libc_getrusage_trampoline<>(SB) -+ -+TEXT libc_getsid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getsid(SB) --TEXT ·libc_getuid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getsid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getsid_trampoline_addr(SB)/8, $libc_getsid_trampoline<>(SB) -+ -+TEXT libc_gettimeofday_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_gettimeofday(SB) -+ -+GLOBL ·libc_gettimeofday_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_gettimeofday_trampoline_addr(SB)/8, $libc_gettimeofday_trampoline<>(SB) -+ -+TEXT libc_getuid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getuid(SB) --TEXT ·libc_issetugid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getuid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getuid_trampoline_addr(SB)/8, $libc_getuid_trampoline<>(SB) -+ -+TEXT libc_issetugid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_issetugid(SB) --TEXT ·libc_kqueue_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_issetugid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_issetugid_trampoline_addr(SB)/8, $libc_issetugid_trampoline<>(SB) -+ -+TEXT libc_kqueue_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_kqueue(SB) --TEXT ·libc_lchown_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_kqueue_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_kqueue_trampoline_addr(SB)/8, $libc_kqueue_trampoline<>(SB) -+ -+TEXT libc_lchown_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_lchown(SB) --TEXT ·libc_link_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_lchown_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_lchown_trampoline_addr(SB)/8, $libc_lchown_trampoline<>(SB) -+ -+TEXT libc_link_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_link(SB) --TEXT ·libc_linkat_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_link_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_link_trampoline_addr(SB)/8, $libc_link_trampoline<>(SB) -+ -+TEXT libc_linkat_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_linkat(SB) --TEXT ·libc_listen_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_linkat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_linkat_trampoline_addr(SB)/8, $libc_linkat_trampoline<>(SB) -+ -+TEXT libc_listen_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_listen(SB) --TEXT ·libc_mkdir_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_listen_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_listen_trampoline_addr(SB)/8, $libc_listen_trampoline<>(SB) -+ -+TEXT libc_mkdir_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_mkdir(SB) --TEXT ·libc_mkdirat_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_mkdir_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mkdir_trampoline_addr(SB)/8, $libc_mkdir_trampoline<>(SB) -+ -+TEXT libc_mkdirat_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_mkdirat(SB) --TEXT ·libc_mkfifo_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_mkdirat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mkdirat_trampoline_addr(SB)/8, $libc_mkdirat_trampoline<>(SB) -+ -+TEXT libc_mkfifo_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_mkfifo(SB) --TEXT ·libc_mknod_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_mkfifo_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mkfifo_trampoline_addr(SB)/8, $libc_mkfifo_trampoline<>(SB) -+ -+TEXT libc_mknod_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_mknod(SB) --TEXT ·libc_open_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_mknod_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mknod_trampoline_addr(SB)/8, $libc_mknod_trampoline<>(SB) -+ -+TEXT libc_mount_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mount(SB) -+ -+GLOBL ·libc_mount_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mount_trampoline_addr(SB)/8, $libc_mount_trampoline<>(SB) -+ -+TEXT libc_open_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_open(SB) --TEXT ·libc_openat_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_open_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_open_trampoline_addr(SB)/8, $libc_open_trampoline<>(SB) -+ -+TEXT libc_openat_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_openat(SB) --TEXT ·libc_pathconf_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_openat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_openat_trampoline_addr(SB)/8, $libc_openat_trampoline<>(SB) -+ -+TEXT libc_pathconf_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_pathconf(SB) --TEXT ·libc_pread_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_pathconf_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_pathconf_trampoline_addr(SB)/8, $libc_pathconf_trampoline<>(SB) -+ -+TEXT libc_pread_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_pread(SB) --TEXT ·libc_pwrite_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_pread_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_pread_trampoline_addr(SB)/8, $libc_pread_trampoline<>(SB) -+ -+TEXT libc_pwrite_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_pwrite(SB) --TEXT ·libc_read_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_pwrite_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_pwrite_trampoline_addr(SB)/8, $libc_pwrite_trampoline<>(SB) -+ -+TEXT libc_read_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_read(SB) --TEXT ·libc_readlink_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_read_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_read_trampoline_addr(SB)/8, $libc_read_trampoline<>(SB) -+ -+TEXT libc_readlink_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_readlink(SB) --TEXT ·libc_readlinkat_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_readlink_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_readlink_trampoline_addr(SB)/8, $libc_readlink_trampoline<>(SB) -+ -+TEXT libc_readlinkat_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_readlinkat(SB) --TEXT ·libc_rename_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_readlinkat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_readlinkat_trampoline_addr(SB)/8, $libc_readlinkat_trampoline<>(SB) -+ -+TEXT libc_rename_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_rename(SB) --TEXT ·libc_renameat_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_rename_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_rename_trampoline_addr(SB)/8, $libc_rename_trampoline<>(SB) -+ -+TEXT libc_renameat_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_renameat(SB) --TEXT ·libc_revoke_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_renameat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_renameat_trampoline_addr(SB)/8, $libc_renameat_trampoline<>(SB) -+ -+TEXT libc_revoke_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_revoke(SB) --TEXT ·libc_rmdir_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_revoke_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_revoke_trampoline_addr(SB)/8, $libc_revoke_trampoline<>(SB) -+ -+TEXT libc_rmdir_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_rmdir(SB) --TEXT ·libc_lseek_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_rmdir_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_rmdir_trampoline_addr(SB)/8, $libc_rmdir_trampoline<>(SB) -+ -+TEXT libc_lseek_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_lseek(SB) --TEXT ·libc_select_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_lseek_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_lseek_trampoline_addr(SB)/8, $libc_lseek_trampoline<>(SB) -+ -+TEXT libc_select_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_select(SB) --TEXT ·libc_setegid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_select_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_select_trampoline_addr(SB)/8, $libc_select_trampoline<>(SB) -+ -+TEXT libc_setegid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setegid(SB) --TEXT ·libc_seteuid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setegid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setegid_trampoline_addr(SB)/8, $libc_setegid_trampoline<>(SB) -+ -+TEXT libc_seteuid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_seteuid(SB) --TEXT ·libc_setgid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_seteuid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_seteuid_trampoline_addr(SB)/8, $libc_seteuid_trampoline<>(SB) -+ -+TEXT libc_setgid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setgid(SB) --TEXT ·libc_setlogin_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setgid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setgid_trampoline_addr(SB)/8, $libc_setgid_trampoline<>(SB) -+ -+TEXT libc_setlogin_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setlogin(SB) --TEXT ·libc_setpgid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setlogin_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setlogin_trampoline_addr(SB)/8, $libc_setlogin_trampoline<>(SB) -+ -+TEXT libc_setpgid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setpgid(SB) --TEXT ·libc_setpriority_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setpgid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setpgid_trampoline_addr(SB)/8, $libc_setpgid_trampoline<>(SB) -+ -+TEXT libc_setpriority_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setpriority(SB) --TEXT ·libc_setprivexec_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setpriority_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setpriority_trampoline_addr(SB)/8, $libc_setpriority_trampoline<>(SB) -+ -+TEXT libc_setprivexec_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setprivexec(SB) --TEXT ·libc_setregid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setprivexec_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setprivexec_trampoline_addr(SB)/8, $libc_setprivexec_trampoline<>(SB) -+ -+TEXT libc_setregid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setregid(SB) --TEXT ·libc_setreuid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setregid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setregid_trampoline_addr(SB)/8, $libc_setregid_trampoline<>(SB) -+ -+TEXT libc_setreuid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setreuid(SB) --TEXT ·libc_setrlimit_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setreuid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setreuid_trampoline_addr(SB)/8, $libc_setreuid_trampoline<>(SB) -+ -+TEXT libc_setrlimit_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setrlimit(SB) --TEXT ·libc_setsid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setrlimit_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setrlimit_trampoline_addr(SB)/8, $libc_setrlimit_trampoline<>(SB) -+ -+TEXT libc_setsid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setsid(SB) --TEXT ·libc_settimeofday_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setsid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setsid_trampoline_addr(SB)/8, $libc_setsid_trampoline<>(SB) -+ -+TEXT libc_settimeofday_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_settimeofday(SB) --TEXT ·libc_setuid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_settimeofday_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_settimeofday_trampoline_addr(SB)/8, $libc_settimeofday_trampoline<>(SB) -+ -+TEXT libc_setuid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setuid(SB) --TEXT ·libc_symlink_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setuid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setuid_trampoline_addr(SB)/8, $libc_setuid_trampoline<>(SB) -+ -+TEXT libc_symlink_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_symlink(SB) --TEXT ·libc_symlinkat_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_symlink_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_symlink_trampoline_addr(SB)/8, $libc_symlink_trampoline<>(SB) -+ -+TEXT libc_symlinkat_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_symlinkat(SB) --TEXT ·libc_sync_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_symlinkat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_symlinkat_trampoline_addr(SB)/8, $libc_symlinkat_trampoline<>(SB) -+ -+TEXT libc_sync_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_sync(SB) --TEXT ·libc_truncate_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_sync_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_sync_trampoline_addr(SB)/8, $libc_sync_trampoline<>(SB) -+ -+TEXT libc_truncate_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_truncate(SB) --TEXT ·libc_umask_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_truncate_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_truncate_trampoline_addr(SB)/8, $libc_truncate_trampoline<>(SB) -+ -+TEXT libc_umask_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_umask(SB) --TEXT ·libc_undelete_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_umask_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_umask_trampoline_addr(SB)/8, $libc_umask_trampoline<>(SB) -+ -+TEXT libc_undelete_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_undelete(SB) --TEXT ·libc_unlink_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_undelete_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_undelete_trampoline_addr(SB)/8, $libc_undelete_trampoline<>(SB) -+ -+TEXT libc_unlink_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_unlink(SB) --TEXT ·libc_unlinkat_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_unlink_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_unlink_trampoline_addr(SB)/8, $libc_unlink_trampoline<>(SB) -+ -+TEXT libc_unlinkat_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_unlinkat(SB) --TEXT ·libc_unmount_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_unlinkat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_unlinkat_trampoline_addr(SB)/8, $libc_unlinkat_trampoline<>(SB) -+ -+TEXT libc_unmount_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_unmount(SB) --TEXT ·libc_write_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_unmount_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_unmount_trampoline_addr(SB)/8, $libc_unmount_trampoline<>(SB) -+ -+TEXT libc_write_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_write(SB) --TEXT ·libc_mmap_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_write_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_write_trampoline_addr(SB)/8, $libc_write_trampoline<>(SB) -+ -+TEXT libc_mmap_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_mmap(SB) --TEXT ·libc_munmap_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_mmap_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mmap_trampoline_addr(SB)/8, $libc_mmap_trampoline<>(SB) -+ -+TEXT libc_munmap_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_munmap(SB) --TEXT ·libc_ptrace_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_ptrace(SB) --TEXT ·libc_gettimeofday_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_gettimeofday(SB) --TEXT ·libc_fstat64_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_munmap_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_munmap_trampoline_addr(SB)/8, $libc_munmap_trampoline<>(SB) -+ -+TEXT libc_fstat64_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fstat64(SB) --TEXT ·libc_fstatat64_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fstat64_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fstat64_trampoline_addr(SB)/8, $libc_fstat64_trampoline<>(SB) -+ -+TEXT libc_fstatat64_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fstatat64(SB) --TEXT ·libc_fstatfs64_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fstatat64_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fstatat64_trampoline_addr(SB)/8, $libc_fstatat64_trampoline<>(SB) -+ -+TEXT libc_fstatfs64_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fstatfs64(SB) --TEXT ·libc_getfsstat64_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fstatfs64_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fstatfs64_trampoline_addr(SB)/8, $libc_fstatfs64_trampoline<>(SB) -+ -+TEXT libc_getfsstat64_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getfsstat64(SB) --TEXT ·libc_lstat64_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getfsstat64_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getfsstat64_trampoline_addr(SB)/8, $libc_getfsstat64_trampoline<>(SB) -+ -+TEXT libc_lstat64_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_lstat64(SB) --TEXT ·libc_stat64_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_lstat64_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_lstat64_trampoline_addr(SB)/8, $libc_lstat64_trampoline<>(SB) -+ -+TEXT libc_ptrace_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_ptrace(SB) -+ -+GLOBL ·libc_ptrace_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_ptrace_trampoline_addr(SB)/8, $libc_ptrace_trampoline<>(SB) -+ -+TEXT libc_stat64_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_stat64(SB) --TEXT ·libc_statfs64_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_stat64_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_stat64_trampoline_addr(SB)/8, $libc_stat64_trampoline<>(SB) -+ -+TEXT libc_statfs64_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_statfs64(SB) -+ -+GLOBL ·libc_statfs64_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_statfs64_trampoline_addr(SB)/8, $libc_statfs64_trampoline<>(SB) -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_11.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_11.go -deleted file mode 100644 -index cea04e0..0000000 ---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_11.go -+++ /dev/null -@@ -1,1784 +0,0 @@ --// go run mksyscall.go -l32 -tags darwin,arm,!go1.12 syscall_bsd.go syscall_darwin.go syscall_darwin_arm.1_11.go syscall_darwin_arm.go --// Code generated by the command above; see README.md. DO NOT EDIT. -- --// +build darwin,arm,!go1.12 -- --package unix -- --import ( -- "syscall" -- "unsafe" --) -- --var _ syscall.Errno -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getgroups(ngid int, gid *_Gid_t) (n int, err error) { -- r0, _, e1 := RawSyscall(SYS_GETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func setgroups(ngid int, gid *_Gid_t) (err error) { -- _, _, e1 := RawSyscall(SYS_SETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) { -- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0) -- wpid = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { -- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -- _, _, e1 := Syscall(SYS_BIND, uintptr(s), uintptr(addr), uintptr(addrlen)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -- _, _, e1 := Syscall(SYS_CONNECT, uintptr(s), uintptr(addr), uintptr(addrlen)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func socket(domain int, typ int, proto int) (fd int, err error) { -- r0, _, e1 := RawSyscall(SYS_SOCKET, uintptr(domain), uintptr(typ), uintptr(proto)) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) { -- _, _, e1 := Syscall6(SYS_GETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) { -- _, _, e1 := Syscall6(SYS_SETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -- _, _, e1 := RawSyscall(SYS_GETPEERNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -- _, _, e1 := RawSyscall(SYS_GETSOCKNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Shutdown(s int, how int) (err error) { -- _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(s), uintptr(how), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) { -- _, _, e1 := RawSyscall6(SYS_SOCKETPAIR, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) { -- var _p0 unsafe.Pointer -- if len(p) > 0 { -- _p0 = unsafe.Pointer(&p[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := Syscall6(SYS_RECVFROM, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) { -- var _p0 unsafe.Pointer -- if len(buf) > 0 { -- _p0 = unsafe.Pointer(&buf[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := Syscall6(SYS_SENDTO, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_RECVMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_SENDMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, nevent int, timeout *Timespec) (n int, err error) { -- r0, _, e1 := Syscall6(SYS_KEVENT, uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout))) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func utimes(path string, timeval *[2]Timeval) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func futimes(fd int, timeval *[2]Timeval) (err error) { -- _, _, e1 := Syscall(SYS_FUTIMES, uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Madvise(b []byte, behav int) (err error) { -- var _p0 unsafe.Pointer -- if len(b) > 0 { -- _p0 = unsafe.Pointer(&b[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(behav)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mlock(b []byte) (err error) { -- var _p0 unsafe.Pointer -- if len(b) > 0 { -- _p0 = unsafe.Pointer(&b[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mlockall(flags int) (err error) { -- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mprotect(b []byte, prot int) (err error) { -- var _p0 unsafe.Pointer -- if len(b) > 0 { -- _p0 = unsafe.Pointer(&b[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Msync(b []byte, flags int) (err error) { -- var _p0 unsafe.Pointer -- if len(b) > 0 { -- _p0 = unsafe.Pointer(&b[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Munlock(b []byte) (err error) { -- var _p0 unsafe.Pointer -- if len(b) > 0 { -- _p0 = unsafe.Pointer(&b[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Munlockall() (err error) { -- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) { -- _, _, e1 := Syscall6(SYS_GETATTRLIST, uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func pipe() (r int, w int, err error) { -- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0) -- r = int(r0) -- w = int(r1) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getxattr(path string, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) -- sz = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) -- sz = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func setxattr(path string, attr string, data *byte, size int, position uint32, options int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func fsetxattr(fd int, attr string, data *byte, size int, position uint32, options int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func removexattr(path string, attr string, options int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func fremovexattr(fd int, attr string, options int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func listxattr(path string, dest *byte, size int, options int) (sz int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- r0, _, e1 := Syscall6(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) -- sz = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) { -- r0, _, e1 := Syscall6(SYS_FLISTXATTR, uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) -- sz = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) { -- _, _, e1 := Syscall6(SYS_SETATTRLIST, uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func fcntl(fd int, cmd int, arg int) (val int, err error) { -- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg)) -- val = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func kill(pid int, signum int, posix int) (err error) { -- _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), uintptr(posix)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func ioctl(fd int, req uint, arg uintptr) (err error) { -- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) { -- var _p0 unsafe.Pointer -- if len(mib) > 0 { -- _p0 = unsafe.Pointer(&mib[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := Syscall6(SYS_SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) { -- _, _, e1 := Syscall9(SYS_SENDFILE, uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(offset>>32), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Access(path string, mode uint32) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_ACCESS, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Adjtime(delta *Timeval, olddelta *Timeval) (err error) { -- _, _, e1 := Syscall(SYS_ADJTIME, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Chdir(path string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Chflags(path string, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_CHFLAGS, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Chmod(path string, mode uint32) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_CHMOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Chown(path string, uid int, gid int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_CHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Chroot(path string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Close(fd int) (err error) { -- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Dup(fd int) (nfd int, err error) { -- r0, _, e1 := Syscall(SYS_DUP, uintptr(fd), 0, 0) -- nfd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Dup2(from int, to int) (err error) { -- _, _, e1 := Syscall(SYS_DUP2, uintptr(from), uintptr(to), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Exchangedata(path1 string, path2 string, options int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path1) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(path2) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_EXCHANGEDATA, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Exit(code int) { -- Syscall(SYS_EXIT, uintptr(code), 0, 0) -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fchdir(fd int) (err error) { -- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fchflags(fd int, flags int) (err error) { -- _, _, e1 := Syscall(SYS_FCHFLAGS, uintptr(fd), uintptr(flags), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fchmod(fd int, mode uint32) (err error) { -- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fchown(fd int, uid int, gid int) (err error) { -- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Flock(fd int, how int) (err error) { -- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fpathconf(fd int, name int) (val int, err error) { -- r0, _, e1 := Syscall(SYS_FPATHCONF, uintptr(fd), uintptr(name), 0) -- val = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fsync(fd int) (err error) { -- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Ftruncate(fd int, length int64) (err error) { -- _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), uintptr(length), uintptr(length>>32)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getdtablesize() (size int) { -- r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0) -- size = int(r0) -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getegid() (egid int) { -- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0) -- egid = int(r0) -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Geteuid() (uid int) { -- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0) -- uid = int(r0) -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getgid() (gid int) { -- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0) -- gid = int(r0) -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getpgid(pid int) (pgid int, err error) { -- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0) -- pgid = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getpgrp() (pgrp int) { -- r0, _, _ := RawSyscall(SYS_GETPGRP, 0, 0, 0) -- pgrp = int(r0) -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getpid() (pid int) { -- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0) -- pid = int(r0) -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getppid() (ppid int) { -- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0) -- ppid = int(r0) -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getpriority(which int, who int) (prio int, err error) { -- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0) -- prio = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getrlimit(which int, lim *Rlimit) (err error) { -- _, _, e1 := RawSyscall(SYS_GETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getrusage(who int, rusage *Rusage) (err error) { -- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getsid(pid int) (sid int, err error) { -- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0) -- sid = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getuid() (uid int) { -- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0) -- uid = int(r0) -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Issetugid() (tainted bool) { -- r0, _, _ := RawSyscall(SYS_ISSETUGID, 0, 0, 0) -- tainted = bool(r0 != 0) -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Kqueue() (fd int, err error) { -- r0, _, e1 := Syscall(SYS_KQUEUE, 0, 0, 0) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Lchown(path string, uid int, gid int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_LCHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Link(path string, link string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(link) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(link) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Listen(s int, backlog int) (err error) { -- _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mkdir(path string, mode uint32) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_MKDIR, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mkdirat(dirfd int, path string, mode uint32) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mkfifo(path string, mode uint32) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_MKFIFO, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mknod(path string, mode uint32, dev int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_MKNOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Open(path string, mode int, perm uint32) (fd int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- r0, _, e1 := Syscall(SYS_OPEN, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm)) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Pathconf(path string, name int) (val int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- r0, _, e1 := Syscall(SYS_PATHCONF, uintptr(unsafe.Pointer(_p0)), uintptr(name), 0) -- val = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Pread(fd int, p []byte, offset int64) (n int, err error) { -- var _p0 unsafe.Pointer -- if len(p) > 0 { -- _p0 = unsafe.Pointer(&p[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := Syscall6(SYS_PREAD, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -- var _p0 unsafe.Pointer -- if len(p) > 0 { -- _p0 = unsafe.Pointer(&p[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := Syscall6(SYS_PWRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func read(fd int, p []byte) (n int, err error) { -- var _p0 unsafe.Pointer -- if len(p) > 0 { -- _p0 = unsafe.Pointer(&p[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p))) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Readlink(path string, buf []byte) (n int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 unsafe.Pointer -- if len(buf) > 0 { -- _p1 = unsafe.Pointer(&buf[0]) -- } else { -- _p1 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := Syscall(SYS_READLINK, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf))) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 unsafe.Pointer -- if len(buf) > 0 { -- _p1 = unsafe.Pointer(&buf[0]) -- } else { -- _p1 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Rename(from string, to string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(from) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(to) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_RENAME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Renameat(fromfd int, from string, tofd int, to string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(from) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(to) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Revoke(path string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_REVOKE, uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Rmdir(path string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_RMDIR, uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { -- r0, r1, e1 := Syscall6(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(offset>>32), uintptr(whence), 0, 0) -- newoffset = int64(int64(r1)<<32 | int64(r0)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) { -- r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setegid(egid int) (err error) { -- _, _, e1 := Syscall(SYS_SETEGID, uintptr(egid), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Seteuid(euid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETEUID, uintptr(euid), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setgid(gid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETGID, uintptr(gid), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setlogin(name string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(name) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_SETLOGIN, uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setpgid(pid int, pgid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setpriority(which int, who int, prio int) (err error) { -- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setprivexec(flag int) (err error) { -- _, _, e1 := Syscall(SYS_SETPRIVEXEC, uintptr(flag), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setregid(rgid int, egid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setreuid(ruid int, euid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setrlimit(which int, lim *Rlimit) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setsid() (pid int, err error) { -- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0) -- pid = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Settimeofday(tp *Timeval) (err error) { -- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setuid(uid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETUID, uintptr(uid), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Symlink(path string, link string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(link) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_SYMLINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(oldpath) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(newpath) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1))) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Sync() (err error) { -- _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Truncate(path string, length int64) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), uintptr(length>>32)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Umask(newmask int) (oldmask int) { -- r0, _, _ := Syscall(SYS_UMASK, uintptr(newmask), 0, 0) -- oldmask = int(r0) -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Undelete(path string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_UNDELETE, uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Unlink(path string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_UNLINK, uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Unlinkat(dirfd int, path string, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Unmount(path string, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_UNMOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func write(fd int, p []byte) (n int, err error) { -- var _p0 unsafe.Pointer -- if len(p) > 0 { -- _p0 = unsafe.Pointer(&p[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p))) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) { -- r0, _, e1 := Syscall9(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos), uintptr(pos>>32), 0, 0) -- ret = uintptr(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func munmap(addr uintptr, length uintptr) (err error) { -- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func readlen(fd int, buf *byte, nbuf int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func writelen(fd int, buf *byte, nbuf int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func gettimeofday(tp *Timeval) (sec int32, usec int32, err error) { -- r0, r1, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0) -- sec = int32(r0) -- usec = int32(r1) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fstat(fd int, stat *Stat_t) (err error) { -- _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fstatfs(fd int, stat *Statfs_t) (err error) { -- _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_GETFSSTAT, uintptr(buf), uintptr(size), uintptr(flags)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Lstat(path string, stat *Stat_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_LSTAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Stat(path string, stat *Stat_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_STAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Statfs(path string, stat *Statfs_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_STATFS, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.go -deleted file mode 100644 -index f519ce9..0000000 ---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.go -+++ /dev/null -@@ -1,41 +0,0 @@ --// go run mksyscall.go -l32 -tags darwin,arm,go1.13 syscall_darwin.1_13.go --// Code generated by the command above; see README.md. DO NOT EDIT. -- --// +build darwin,arm,go1.13 -- --package unix -- --import ( -- "syscall" -- "unsafe" --) -- --var _ syscall.Errno -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func closedir(dir uintptr) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_closedir_trampoline), uintptr(dir), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_closedir_trampoline() -- --//go:linkname libc_closedir libc_closedir --//go:cgo_import_dynamic libc_closedir closedir "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func readdir_r(dir uintptr, entry *Dirent, result **Dirent) (res Errno) { -- r0, _, _ := syscall_syscall(funcPC(libc_readdir_r_trampoline), uintptr(dir), uintptr(unsafe.Pointer(entry)), uintptr(unsafe.Pointer(result))) -- res = Errno(r0) -- return --} -- --func libc_readdir_r_trampoline() -- --//go:linkname libc_readdir_r libc_readdir_r --//go:cgo_import_dynamic libc_readdir_r readdir_r "/usr/lib/libSystem.B.dylib" -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.s -deleted file mode 100644 -index 488e557..0000000 ---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.1_13.s -+++ /dev/null -@@ -1,12 +0,0 @@ --// go run mkasm_darwin.go arm --// Code generated by the command above; DO NOT EDIT. -- --// +build go1.13 -- --#include "textflag.h" --TEXT ·libc_fdopendir_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fdopendir(SB) --TEXT ·libc_closedir_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_closedir(SB) --TEXT ·libc_readdir_r_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_readdir_r(SB) -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go -deleted file mode 100644 -index 6310395..0000000 ---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.go -+++ /dev/null -@@ -1,2484 +0,0 @@ --// go run mksyscall.go -l32 -tags darwin,arm,go1.12 syscall_bsd.go syscall_darwin.go syscall_darwin_arm.go --// Code generated by the command above; see README.md. DO NOT EDIT. -- --// +build darwin,arm,go1.12 -- --package unix -- --import ( -- "syscall" -- "unsafe" --) -- --var _ syscall.Errno -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getgroups(ngid int, gid *_Gid_t) (n int, err error) { -- r0, _, e1 := syscall_rawSyscall(funcPC(libc_getgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_getgroups_trampoline() -- --//go:linkname libc_getgroups libc_getgroups --//go:cgo_import_dynamic libc_getgroups getgroups "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func setgroups(ngid int, gid *_Gid_t) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setgroups_trampoline() -- --//go:linkname libc_setgroups libc_setgroups --//go:cgo_import_dynamic libc_setgroups setgroups "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) { -- r0, _, e1 := syscall_syscall6(funcPC(libc_wait4_trampoline), uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0) -- wpid = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_wait4_trampoline() -- --//go:linkname libc_wait4 libc_wait4 --//go:cgo_import_dynamic libc_wait4 wait4 "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_accept_trampoline), uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_accept_trampoline() -- --//go:linkname libc_accept libc_accept --//go:cgo_import_dynamic libc_accept accept "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_bind_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_bind_trampoline() -- --//go:linkname libc_bind libc_bind --//go:cgo_import_dynamic libc_bind bind "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_connect_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_connect_trampoline() -- --//go:linkname libc_connect libc_connect --//go:cgo_import_dynamic libc_connect connect "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func socket(domain int, typ int, proto int) (fd int, err error) { -- r0, _, e1 := syscall_rawSyscall(funcPC(libc_socket_trampoline), uintptr(domain), uintptr(typ), uintptr(proto)) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_socket_trampoline() -- --//go:linkname libc_socket libc_socket --//go:cgo_import_dynamic libc_socket socket "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) { -- _, _, e1 := syscall_syscall6(funcPC(libc_getsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_getsockopt_trampoline() -- --//go:linkname libc_getsockopt libc_getsockopt --//go:cgo_import_dynamic libc_getsockopt getsockopt "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) { -- _, _, e1 := syscall_syscall6(funcPC(libc_setsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setsockopt_trampoline() -- --//go:linkname libc_setsockopt libc_setsockopt --//go:cgo_import_dynamic libc_setsockopt setsockopt "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_getpeername_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_getpeername_trampoline() -- --//go:linkname libc_getpeername libc_getpeername --//go:cgo_import_dynamic libc_getpeername getpeername "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_getsockname_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_getsockname_trampoline() -- --//go:linkname libc_getsockname libc_getsockname --//go:cgo_import_dynamic libc_getsockname getsockname "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Shutdown(s int, how int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_shutdown_trampoline), uintptr(s), uintptr(how), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_shutdown_trampoline() -- --//go:linkname libc_shutdown libc_shutdown --//go:cgo_import_dynamic libc_shutdown shutdown "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) { -- _, _, e1 := syscall_rawSyscall6(funcPC(libc_socketpair_trampoline), uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_socketpair_trampoline() -- --//go:linkname libc_socketpair libc_socketpair --//go:cgo_import_dynamic libc_socketpair socketpair "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) { -- var _p0 unsafe.Pointer -- if len(p) > 0 { -- _p0 = unsafe.Pointer(&p[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := syscall_syscall6(funcPC(libc_recvfrom_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_recvfrom_trampoline() -- --//go:linkname libc_recvfrom libc_recvfrom --//go:cgo_import_dynamic libc_recvfrom recvfrom "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) { -- var _p0 unsafe.Pointer -- if len(buf) > 0 { -- _p0 = unsafe.Pointer(&buf[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := syscall_syscall6(funcPC(libc_sendto_trampoline), uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_sendto_trampoline() -- --//go:linkname libc_sendto libc_sendto --//go:cgo_import_dynamic libc_sendto sendto "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_recvmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_recvmsg_trampoline() -- --//go:linkname libc_recvmsg libc_recvmsg --//go:cgo_import_dynamic libc_recvmsg recvmsg "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_sendmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_sendmsg_trampoline() -- --//go:linkname libc_sendmsg libc_sendmsg --//go:cgo_import_dynamic libc_sendmsg sendmsg "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, nevent int, timeout *Timespec) (n int, err error) { -- r0, _, e1 := syscall_syscall6(funcPC(libc_kevent_trampoline), uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout))) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_kevent_trampoline() -- --//go:linkname libc_kevent libc_kevent --//go:cgo_import_dynamic libc_kevent kevent "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func utimes(path string, timeval *[2]Timeval) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_utimes_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_utimes_trampoline() -- --//go:linkname libc_utimes libc_utimes --//go:cgo_import_dynamic libc_utimes utimes "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func futimes(fd int, timeval *[2]Timeval) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_futimes_trampoline), uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_futimes_trampoline() -- --//go:linkname libc_futimes libc_futimes --//go:cgo_import_dynamic libc_futimes futimes "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_poll_trampoline), uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_poll_trampoline() -- --//go:linkname libc_poll libc_poll --//go:cgo_import_dynamic libc_poll poll "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Madvise(b []byte, behav int) (err error) { -- var _p0 unsafe.Pointer -- if len(b) > 0 { -- _p0 = unsafe.Pointer(&b[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := syscall_syscall(funcPC(libc_madvise_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(behav)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_madvise_trampoline() -- --//go:linkname libc_madvise libc_madvise --//go:cgo_import_dynamic libc_madvise madvise "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mlock(b []byte) (err error) { -- var _p0 unsafe.Pointer -- if len(b) > 0 { -- _p0 = unsafe.Pointer(&b[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := syscall_syscall(funcPC(libc_mlock_trampoline), uintptr(_p0), uintptr(len(b)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_mlock_trampoline() -- --//go:linkname libc_mlock libc_mlock --//go:cgo_import_dynamic libc_mlock mlock "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mlockall(flags int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_mlockall_trampoline), uintptr(flags), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_mlockall_trampoline() -- --//go:linkname libc_mlockall libc_mlockall --//go:cgo_import_dynamic libc_mlockall mlockall "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mprotect(b []byte, prot int) (err error) { -- var _p0 unsafe.Pointer -- if len(b) > 0 { -- _p0 = unsafe.Pointer(&b[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := syscall_syscall(funcPC(libc_mprotect_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(prot)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_mprotect_trampoline() -- --//go:linkname libc_mprotect libc_mprotect --//go:cgo_import_dynamic libc_mprotect mprotect "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Msync(b []byte, flags int) (err error) { -- var _p0 unsafe.Pointer -- if len(b) > 0 { -- _p0 = unsafe.Pointer(&b[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := syscall_syscall(funcPC(libc_msync_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(flags)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_msync_trampoline() -- --//go:linkname libc_msync libc_msync --//go:cgo_import_dynamic libc_msync msync "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Munlock(b []byte) (err error) { -- var _p0 unsafe.Pointer -- if len(b) > 0 { -- _p0 = unsafe.Pointer(&b[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := syscall_syscall(funcPC(libc_munlock_trampoline), uintptr(_p0), uintptr(len(b)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_munlock_trampoline() -- --//go:linkname libc_munlock libc_munlock --//go:cgo_import_dynamic libc_munlock munlock "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Munlockall() (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_munlockall_trampoline), 0, 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_munlockall_trampoline() -- --//go:linkname libc_munlockall libc_munlockall --//go:cgo_import_dynamic libc_munlockall munlockall "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) { -- _, _, e1 := syscall_syscall6(funcPC(libc_getattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_getattrlist_trampoline() -- --//go:linkname libc_getattrlist libc_getattrlist --//go:cgo_import_dynamic libc_getattrlist getattrlist "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func pipe() (r int, w int, err error) { -- r0, r1, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), 0, 0, 0) -- r = int(r0) -- w = int(r1) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_pipe_trampoline() -- --//go:linkname libc_pipe libc_pipe --//go:cgo_import_dynamic libc_pipe pipe "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getxattr(path string, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- r0, _, e1 := syscall_syscall6(funcPC(libc_getxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) -- sz = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_getxattr_trampoline() -- --//go:linkname libc_getxattr libc_getxattr --//go:cgo_import_dynamic libc_getxattr getxattr "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- r0, _, e1 := syscall_syscall6(funcPC(libc_fgetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) -- sz = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fgetxattr_trampoline() -- --//go:linkname libc_fgetxattr libc_fgetxattr --//go:cgo_import_dynamic libc_fgetxattr fgetxattr "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func setxattr(path string, attr string, data *byte, size int, position uint32, options int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall6(funcPC(libc_setxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setxattr_trampoline() -- --//go:linkname libc_setxattr libc_setxattr --//go:cgo_import_dynamic libc_setxattr setxattr "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func fsetxattr(fd int, attr string, data *byte, size int, position uint32, options int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall6(funcPC(libc_fsetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fsetxattr_trampoline() -- --//go:linkname libc_fsetxattr libc_fsetxattr --//go:cgo_import_dynamic libc_fsetxattr fsetxattr "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func removexattr(path string, attr string, options int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_removexattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_removexattr_trampoline() -- --//go:linkname libc_removexattr libc_removexattr --//go:cgo_import_dynamic libc_removexattr removexattr "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func fremovexattr(fd int, attr string, options int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_fremovexattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fremovexattr_trampoline() -- --//go:linkname libc_fremovexattr libc_fremovexattr --//go:cgo_import_dynamic libc_fremovexattr fremovexattr "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func listxattr(path string, dest *byte, size int, options int) (sz int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- r0, _, e1 := syscall_syscall6(funcPC(libc_listxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) -- sz = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_listxattr_trampoline() -- --//go:linkname libc_listxattr libc_listxattr --//go:cgo_import_dynamic libc_listxattr listxattr "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) { -- r0, _, e1 := syscall_syscall6(funcPC(libc_flistxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) -- sz = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_flistxattr_trampoline() -- --//go:linkname libc_flistxattr libc_flistxattr --//go:cgo_import_dynamic libc_flistxattr flistxattr "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) { -- _, _, e1 := syscall_syscall6(funcPC(libc_setattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setattrlist_trampoline() -- --//go:linkname libc_setattrlist libc_setattrlist --//go:cgo_import_dynamic libc_setattrlist setattrlist "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func fcntl(fd int, cmd int, arg int) (val int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_fcntl_trampoline), uintptr(fd), uintptr(cmd), uintptr(arg)) -- val = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fcntl_trampoline() -- --//go:linkname libc_fcntl libc_fcntl --//go:cgo_import_dynamic libc_fcntl fcntl "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func kill(pid int, signum int, posix int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_kill_trampoline), uintptr(pid), uintptr(signum), uintptr(posix)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_kill_trampoline() -- --//go:linkname libc_kill libc_kill --//go:cgo_import_dynamic libc_kill kill "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func ioctl(fd int, req uint, arg uintptr) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_ioctl_trampoline), uintptr(fd), uintptr(req), uintptr(arg)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_ioctl_trampoline() -- --//go:linkname libc_ioctl libc_ioctl --//go:cgo_import_dynamic libc_ioctl ioctl "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) { -- var _p0 unsafe.Pointer -- if len(mib) > 0 { -- _p0 = unsafe.Pointer(&mib[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := syscall_syscall6(funcPC(libc_sysctl_trampoline), uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_sysctl_trampoline() -- --//go:linkname libc_sysctl libc_sysctl --//go:cgo_import_dynamic libc_sysctl sysctl "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) { -- _, _, e1 := syscall_syscall9(funcPC(libc_sendfile_trampoline), uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(offset>>32), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_sendfile_trampoline() -- --//go:linkname libc_sendfile libc_sendfile --//go:cgo_import_dynamic libc_sendfile sendfile "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Access(path string, mode uint32) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_access_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_access_trampoline() -- --//go:linkname libc_access libc_access --//go:cgo_import_dynamic libc_access access "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Adjtime(delta *Timeval, olddelta *Timeval) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_adjtime_trampoline), uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_adjtime_trampoline() -- --//go:linkname libc_adjtime libc_adjtime --//go:cgo_import_dynamic libc_adjtime adjtime "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Chdir(path string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_chdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_chdir_trampoline() -- --//go:linkname libc_chdir libc_chdir --//go:cgo_import_dynamic libc_chdir chdir "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Chflags(path string, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_chflags_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_chflags_trampoline() -- --//go:linkname libc_chflags libc_chflags --//go:cgo_import_dynamic libc_chflags chflags "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Chmod(path string, mode uint32) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_chmod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_chmod_trampoline() -- --//go:linkname libc_chmod libc_chmod --//go:cgo_import_dynamic libc_chmod chmod "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Chown(path string, uid int, gid int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_chown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_chown_trampoline() -- --//go:linkname libc_chown libc_chown --//go:cgo_import_dynamic libc_chown chown "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Chroot(path string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_chroot_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_chroot_trampoline() -- --//go:linkname libc_chroot libc_chroot --//go:cgo_import_dynamic libc_chroot chroot "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func ClockGettime(clockid int32, time *Timespec) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_clock_gettime_trampoline), uintptr(clockid), uintptr(unsafe.Pointer(time)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_clock_gettime_trampoline() -- --//go:linkname libc_clock_gettime libc_clock_gettime --//go:cgo_import_dynamic libc_clock_gettime clock_gettime "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Close(fd int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_close_trampoline), uintptr(fd), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_close_trampoline() -- --//go:linkname libc_close libc_close --//go:cgo_import_dynamic libc_close close "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Dup(fd int) (nfd int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_dup_trampoline), uintptr(fd), 0, 0) -- nfd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_dup_trampoline() -- --//go:linkname libc_dup libc_dup --//go:cgo_import_dynamic libc_dup dup "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Dup2(from int, to int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_dup2_trampoline), uintptr(from), uintptr(to), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_dup2_trampoline() -- --//go:linkname libc_dup2 libc_dup2 --//go:cgo_import_dynamic libc_dup2 dup2 "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Exchangedata(path1 string, path2 string, options int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path1) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(path2) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_exchangedata_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_exchangedata_trampoline() -- --//go:linkname libc_exchangedata libc_exchangedata --//go:cgo_import_dynamic libc_exchangedata exchangedata "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Exit(code int) { -- syscall_syscall(funcPC(libc_exit_trampoline), uintptr(code), 0, 0) -- return --} -- --func libc_exit_trampoline() -- --//go:linkname libc_exit libc_exit --//go:cgo_import_dynamic libc_exit exit "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall6(funcPC(libc_faccessat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_faccessat_trampoline() -- --//go:linkname libc_faccessat libc_faccessat --//go:cgo_import_dynamic libc_faccessat faccessat "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fchdir(fd int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fchdir_trampoline), uintptr(fd), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fchdir_trampoline() -- --//go:linkname libc_fchdir libc_fchdir --//go:cgo_import_dynamic libc_fchdir fchdir "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fchflags(fd int, flags int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fchflags_trampoline), uintptr(fd), uintptr(flags), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fchflags_trampoline() -- --//go:linkname libc_fchflags libc_fchflags --//go:cgo_import_dynamic libc_fchflags fchflags "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fchmod(fd int, mode uint32) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fchmod_trampoline), uintptr(fd), uintptr(mode), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fchmod_trampoline() -- --//go:linkname libc_fchmod libc_fchmod --//go:cgo_import_dynamic libc_fchmod fchmod "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall6(funcPC(libc_fchmodat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fchmodat_trampoline() -- --//go:linkname libc_fchmodat libc_fchmodat --//go:cgo_import_dynamic libc_fchmodat fchmodat "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fchown(fd int, uid int, gid int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fchown_trampoline), uintptr(fd), uintptr(uid), uintptr(gid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fchown_trampoline() -- --//go:linkname libc_fchown libc_fchown --//go:cgo_import_dynamic libc_fchown fchown "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall6(funcPC(libc_fchownat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fchownat_trampoline() -- --//go:linkname libc_fchownat libc_fchownat --//go:cgo_import_dynamic libc_fchownat fchownat "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Flock(fd int, how int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_flock_trampoline), uintptr(fd), uintptr(how), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_flock_trampoline() -- --//go:linkname libc_flock libc_flock --//go:cgo_import_dynamic libc_flock flock "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fpathconf(fd int, name int) (val int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_fpathconf_trampoline), uintptr(fd), uintptr(name), 0) -- val = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fpathconf_trampoline() -- --//go:linkname libc_fpathconf libc_fpathconf --//go:cgo_import_dynamic libc_fpathconf fpathconf "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fsync(fd int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fsync_trampoline), uintptr(fd), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fsync_trampoline() -- --//go:linkname libc_fsync libc_fsync --//go:cgo_import_dynamic libc_fsync fsync "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Ftruncate(fd int, length int64) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_ftruncate_trampoline), uintptr(fd), uintptr(length), uintptr(length>>32)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_ftruncate_trampoline() -- --//go:linkname libc_ftruncate libc_ftruncate --//go:cgo_import_dynamic libc_ftruncate ftruncate "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getdtablesize() (size int) { -- r0, _, _ := syscall_syscall(funcPC(libc_getdtablesize_trampoline), 0, 0, 0) -- size = int(r0) -- return --} -- --func libc_getdtablesize_trampoline() -- --//go:linkname libc_getdtablesize libc_getdtablesize --//go:cgo_import_dynamic libc_getdtablesize getdtablesize "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getegid() (egid int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_getegid_trampoline), 0, 0, 0) -- egid = int(r0) -- return --} -- --func libc_getegid_trampoline() -- --//go:linkname libc_getegid libc_getegid --//go:cgo_import_dynamic libc_getegid getegid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Geteuid() (uid int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_geteuid_trampoline), 0, 0, 0) -- uid = int(r0) -- return --} -- --func libc_geteuid_trampoline() -- --//go:linkname libc_geteuid libc_geteuid --//go:cgo_import_dynamic libc_geteuid geteuid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getgid() (gid int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_getgid_trampoline), 0, 0, 0) -- gid = int(r0) -- return --} -- --func libc_getgid_trampoline() -- --//go:linkname libc_getgid libc_getgid --//go:cgo_import_dynamic libc_getgid getgid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getpgid(pid int) (pgid int, err error) { -- r0, _, e1 := syscall_rawSyscall(funcPC(libc_getpgid_trampoline), uintptr(pid), 0, 0) -- pgid = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_getpgid_trampoline() -- --//go:linkname libc_getpgid libc_getpgid --//go:cgo_import_dynamic libc_getpgid getpgid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getpgrp() (pgrp int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_getpgrp_trampoline), 0, 0, 0) -- pgrp = int(r0) -- return --} -- --func libc_getpgrp_trampoline() -- --//go:linkname libc_getpgrp libc_getpgrp --//go:cgo_import_dynamic libc_getpgrp getpgrp "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getpid() (pid int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_getpid_trampoline), 0, 0, 0) -- pid = int(r0) -- return --} -- --func libc_getpid_trampoline() -- --//go:linkname libc_getpid libc_getpid --//go:cgo_import_dynamic libc_getpid getpid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getppid() (ppid int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_getppid_trampoline), 0, 0, 0) -- ppid = int(r0) -- return --} -- --func libc_getppid_trampoline() -- --//go:linkname libc_getppid libc_getppid --//go:cgo_import_dynamic libc_getppid getppid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getpriority(which int, who int) (prio int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_getpriority_trampoline), uintptr(which), uintptr(who), 0) -- prio = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_getpriority_trampoline() -- --//go:linkname libc_getpriority libc_getpriority --//go:cgo_import_dynamic libc_getpriority getpriority "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getrlimit(which int, lim *Rlimit) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_getrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_getrlimit_trampoline() -- --//go:linkname libc_getrlimit libc_getrlimit --//go:cgo_import_dynamic libc_getrlimit getrlimit "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getrusage(who int, rusage *Rusage) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_getrusage_trampoline), uintptr(who), uintptr(unsafe.Pointer(rusage)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_getrusage_trampoline() -- --//go:linkname libc_getrusage libc_getrusage --//go:cgo_import_dynamic libc_getrusage getrusage "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getsid(pid int) (sid int, err error) { -- r0, _, e1 := syscall_rawSyscall(funcPC(libc_getsid_trampoline), uintptr(pid), 0, 0) -- sid = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_getsid_trampoline() -- --//go:linkname libc_getsid libc_getsid --//go:cgo_import_dynamic libc_getsid getsid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Getuid() (uid int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_getuid_trampoline), 0, 0, 0) -- uid = int(r0) -- return --} -- --func libc_getuid_trampoline() -- --//go:linkname libc_getuid libc_getuid --//go:cgo_import_dynamic libc_getuid getuid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Issetugid() (tainted bool) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_issetugid_trampoline), 0, 0, 0) -- tainted = bool(r0 != 0) -- return --} -- --func libc_issetugid_trampoline() -- --//go:linkname libc_issetugid libc_issetugid --//go:cgo_import_dynamic libc_issetugid issetugid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Kqueue() (fd int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_kqueue_trampoline), 0, 0, 0) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_kqueue_trampoline() -- --//go:linkname libc_kqueue libc_kqueue --//go:cgo_import_dynamic libc_kqueue kqueue "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Lchown(path string, uid int, gid int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_lchown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_lchown_trampoline() -- --//go:linkname libc_lchown libc_lchown --//go:cgo_import_dynamic libc_lchown lchown "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Link(path string, link string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(link) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_link_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_link_trampoline() -- --//go:linkname libc_link libc_link --//go:cgo_import_dynamic libc_link link "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(link) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall6(funcPC(libc_linkat_trampoline), uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_linkat_trampoline() -- --//go:linkname libc_linkat libc_linkat --//go:cgo_import_dynamic libc_linkat linkat "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Listen(s int, backlog int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_listen_trampoline), uintptr(s), uintptr(backlog), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_listen_trampoline() -- --//go:linkname libc_listen libc_listen --//go:cgo_import_dynamic libc_listen listen "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mkdir(path string, mode uint32) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_mkdir_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_mkdir_trampoline() -- --//go:linkname libc_mkdir libc_mkdir --//go:cgo_import_dynamic libc_mkdir mkdir "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mkdirat(dirfd int, path string, mode uint32) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_mkdirat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_mkdirat_trampoline() -- --//go:linkname libc_mkdirat libc_mkdirat --//go:cgo_import_dynamic libc_mkdirat mkdirat "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mkfifo(path string, mode uint32) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_mkfifo_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_mkfifo_trampoline() -- --//go:linkname libc_mkfifo libc_mkfifo --//go:cgo_import_dynamic libc_mkfifo mkfifo "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Mknod(path string, mode uint32, dev int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_mknod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_mknod_trampoline() -- --//go:linkname libc_mknod libc_mknod --//go:cgo_import_dynamic libc_mknod mknod "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Open(path string, mode int, perm uint32) (fd int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- r0, _, e1 := syscall_syscall(funcPC(libc_open_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm)) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_open_trampoline() -- --//go:linkname libc_open libc_open --//go:cgo_import_dynamic libc_open open "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- r0, _, e1 := syscall_syscall6(funcPC(libc_openat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_openat_trampoline() -- --//go:linkname libc_openat libc_openat --//go:cgo_import_dynamic libc_openat openat "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Pathconf(path string, name int) (val int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- r0, _, e1 := syscall_syscall(funcPC(libc_pathconf_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(name), 0) -- val = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_pathconf_trampoline() -- --//go:linkname libc_pathconf libc_pathconf --//go:cgo_import_dynamic libc_pathconf pathconf "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Pread(fd int, p []byte, offset int64) (n int, err error) { -- var _p0 unsafe.Pointer -- if len(p) > 0 { -- _p0 = unsafe.Pointer(&p[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := syscall_syscall6(funcPC(libc_pread_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_pread_trampoline() -- --//go:linkname libc_pread libc_pread --//go:cgo_import_dynamic libc_pread pread "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -- var _p0 unsafe.Pointer -- if len(p) > 0 { -- _p0 = unsafe.Pointer(&p[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := syscall_syscall6(funcPC(libc_pwrite_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_pwrite_trampoline() -- --//go:linkname libc_pwrite libc_pwrite --//go:cgo_import_dynamic libc_pwrite pwrite "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func read(fd int, p []byte) (n int, err error) { -- var _p0 unsafe.Pointer -- if len(p) > 0 { -- _p0 = unsafe.Pointer(&p[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p))) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_read_trampoline() -- --//go:linkname libc_read libc_read --//go:cgo_import_dynamic libc_read read "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Readlink(path string, buf []byte) (n int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 unsafe.Pointer -- if len(buf) > 0 { -- _p1 = unsafe.Pointer(&buf[0]) -- } else { -- _p1 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := syscall_syscall(funcPC(libc_readlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf))) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_readlink_trampoline() -- --//go:linkname libc_readlink libc_readlink --//go:cgo_import_dynamic libc_readlink readlink "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 unsafe.Pointer -- if len(buf) > 0 { -- _p1 = unsafe.Pointer(&buf[0]) -- } else { -- _p1 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := syscall_syscall6(funcPC(libc_readlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_readlinkat_trampoline() -- --//go:linkname libc_readlinkat libc_readlinkat --//go:cgo_import_dynamic libc_readlinkat readlinkat "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Rename(from string, to string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(from) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(to) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_rename_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_rename_trampoline() -- --//go:linkname libc_rename libc_rename --//go:cgo_import_dynamic libc_rename rename "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Renameat(fromfd int, from string, tofd int, to string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(from) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(to) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall6(funcPC(libc_renameat_trampoline), uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_renameat_trampoline() -- --//go:linkname libc_renameat libc_renameat --//go:cgo_import_dynamic libc_renameat renameat "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Revoke(path string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_revoke_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_revoke_trampoline() -- --//go:linkname libc_revoke libc_revoke --//go:cgo_import_dynamic libc_revoke revoke "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Rmdir(path string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_rmdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_rmdir_trampoline() -- --//go:linkname libc_rmdir libc_rmdir --//go:cgo_import_dynamic libc_rmdir rmdir "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { -- r0, r1, e1 := syscall_syscall6(funcPC(libc_lseek_trampoline), uintptr(fd), uintptr(offset), uintptr(offset>>32), uintptr(whence), 0, 0) -- newoffset = int64(int64(r1)<<32 | int64(r0)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_lseek_trampoline() -- --//go:linkname libc_lseek libc_lseek --//go:cgo_import_dynamic libc_lseek lseek "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) { -- r0, _, e1 := syscall_syscall6(funcPC(libc_select_trampoline), uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_select_trampoline() -- --//go:linkname libc_select libc_select --//go:cgo_import_dynamic libc_select select "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setegid(egid int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_setegid_trampoline), uintptr(egid), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setegid_trampoline() -- --//go:linkname libc_setegid libc_setegid --//go:cgo_import_dynamic libc_setegid setegid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Seteuid(euid int) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_seteuid_trampoline), uintptr(euid), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_seteuid_trampoline() -- --//go:linkname libc_seteuid libc_seteuid --//go:cgo_import_dynamic libc_seteuid seteuid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setgid(gid int) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setgid_trampoline), uintptr(gid), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setgid_trampoline() -- --//go:linkname libc_setgid libc_setgid --//go:cgo_import_dynamic libc_setgid setgid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setlogin(name string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(name) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_setlogin_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setlogin_trampoline() -- --//go:linkname libc_setlogin libc_setlogin --//go:cgo_import_dynamic libc_setlogin setlogin "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setpgid(pid int, pgid int) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setpgid_trampoline), uintptr(pid), uintptr(pgid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setpgid_trampoline() -- --//go:linkname libc_setpgid libc_setpgid --//go:cgo_import_dynamic libc_setpgid setpgid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setpriority(which int, who int, prio int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_setpriority_trampoline), uintptr(which), uintptr(who), uintptr(prio)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setpriority_trampoline() -- --//go:linkname libc_setpriority libc_setpriority --//go:cgo_import_dynamic libc_setpriority setpriority "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setprivexec(flag int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_setprivexec_trampoline), uintptr(flag), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setprivexec_trampoline() -- --//go:linkname libc_setprivexec libc_setprivexec --//go:cgo_import_dynamic libc_setprivexec setprivexec "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setregid(rgid int, egid int) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setregid_trampoline), uintptr(rgid), uintptr(egid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setregid_trampoline() -- --//go:linkname libc_setregid libc_setregid --//go:cgo_import_dynamic libc_setregid setregid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setreuid(ruid int, euid int) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setreuid_trampoline), uintptr(ruid), uintptr(euid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setreuid_trampoline() -- --//go:linkname libc_setreuid libc_setreuid --//go:cgo_import_dynamic libc_setreuid setreuid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setrlimit(which int, lim *Rlimit) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setrlimit_trampoline() -- --//go:linkname libc_setrlimit libc_setrlimit --//go:cgo_import_dynamic libc_setrlimit setrlimit "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setsid() (pid int, err error) { -- r0, _, e1 := syscall_rawSyscall(funcPC(libc_setsid_trampoline), 0, 0, 0) -- pid = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setsid_trampoline() -- --//go:linkname libc_setsid libc_setsid --//go:cgo_import_dynamic libc_setsid setsid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Settimeofday(tp *Timeval) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_settimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_settimeofday_trampoline() -- --//go:linkname libc_settimeofday libc_settimeofday --//go:cgo_import_dynamic libc_settimeofday settimeofday "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setuid(uid int) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setuid_trampoline), uintptr(uid), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_setuid_trampoline() -- --//go:linkname libc_setuid libc_setuid --//go:cgo_import_dynamic libc_setuid setuid "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Symlink(path string, link string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(link) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_symlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_symlink_trampoline() -- --//go:linkname libc_symlink libc_symlink --//go:cgo_import_dynamic libc_symlink symlink "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(oldpath) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(newpath) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_symlinkat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1))) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_symlinkat_trampoline() -- --//go:linkname libc_symlinkat libc_symlinkat --//go:cgo_import_dynamic libc_symlinkat symlinkat "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Sync() (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_sync_trampoline), 0, 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_sync_trampoline() -- --//go:linkname libc_sync libc_sync --//go:cgo_import_dynamic libc_sync sync "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Truncate(path string, length int64) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_truncate_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(length), uintptr(length>>32)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_truncate_trampoline() -- --//go:linkname libc_truncate libc_truncate --//go:cgo_import_dynamic libc_truncate truncate "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Umask(newmask int) (oldmask int) { -- r0, _, _ := syscall_syscall(funcPC(libc_umask_trampoline), uintptr(newmask), 0, 0) -- oldmask = int(r0) -- return --} -- --func libc_umask_trampoline() -- --//go:linkname libc_umask libc_umask --//go:cgo_import_dynamic libc_umask umask "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Undelete(path string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_undelete_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_undelete_trampoline() -- --//go:linkname libc_undelete libc_undelete --//go:cgo_import_dynamic libc_undelete undelete "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Unlink(path string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_unlink_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_unlink_trampoline() -- --//go:linkname libc_unlink libc_unlink --//go:cgo_import_dynamic libc_unlink unlink "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Unlinkat(dirfd int, path string, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_unlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_unlinkat_trampoline() -- --//go:linkname libc_unlinkat libc_unlinkat --//go:cgo_import_dynamic libc_unlinkat unlinkat "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Unmount(path string, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_unmount_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_unmount_trampoline() -- --//go:linkname libc_unmount libc_unmount --//go:cgo_import_dynamic libc_unmount unmount "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func write(fd int, p []byte) (n int, err error) { -- var _p0 unsafe.Pointer -- if len(p) > 0 { -- _p0 = unsafe.Pointer(&p[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p))) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_write_trampoline() -- --//go:linkname libc_write libc_write --//go:cgo_import_dynamic libc_write write "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) { -- r0, _, e1 := syscall_syscall9(funcPC(libc_mmap_trampoline), uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos), uintptr(pos>>32), 0, 0) -- ret = uintptr(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_mmap_trampoline() -- --//go:linkname libc_mmap libc_mmap --//go:cgo_import_dynamic libc_mmap mmap "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func munmap(addr uintptr, length uintptr) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_munmap_trampoline), uintptr(addr), uintptr(length), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_munmap_trampoline() -- --//go:linkname libc_munmap libc_munmap --//go:cgo_import_dynamic libc_munmap munmap "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func readlen(fd int, buf *byte, nbuf int) (n int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func writelen(fd int, buf *byte, nbuf int) (n int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func gettimeofday(tp *Timeval) (sec int32, usec int32, err error) { -- r0, r1, e1 := syscall_rawSyscall(funcPC(libc_gettimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0) -- sec = int32(r0) -- usec = int32(r1) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_gettimeofday_trampoline() -- --//go:linkname libc_gettimeofday libc_gettimeofday --//go:cgo_import_dynamic libc_gettimeofday gettimeofday "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fstat(fd int, stat *Stat_t) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fstat_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fstat_trampoline() -- --//go:linkname libc_fstat libc_fstat --//go:cgo_import_dynamic libc_fstat fstat "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall6(funcPC(libc_fstatat_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fstatat_trampoline() -- --//go:linkname libc_fstatat libc_fstatat --//go:cgo_import_dynamic libc_fstatat fstatat "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fstatfs(fd int, stat *Statfs_t) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fstatfs_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_fstatfs_trampoline() -- --//go:linkname libc_fstatfs libc_fstatfs --//go:cgo_import_dynamic libc_fstatfs fstatfs "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_getfsstat_trampoline), uintptr(buf), uintptr(size), uintptr(flags)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_getfsstat_trampoline() -- --//go:linkname libc_getfsstat libc_getfsstat --//go:cgo_import_dynamic libc_getfsstat getfsstat "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Lstat(path string, stat *Stat_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_lstat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_lstat_trampoline() -- --//go:linkname libc_lstat libc_lstat --//go:cgo_import_dynamic libc_lstat lstat "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Stat(path string, stat *Stat_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_stat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_stat_trampoline() -- --//go:linkname libc_stat libc_stat --//go:cgo_import_dynamic libc_stat stat "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Statfs(path string, stat *Statfs_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := syscall_syscall(funcPC(libc_statfs_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_statfs_trampoline() -- --//go:linkname libc_statfs libc_statfs --//go:cgo_import_dynamic libc_statfs statfs "/usr/lib/libSystem.B.dylib" -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.s -deleted file mode 100644 -index b67f518..0000000 ---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm.s -+++ /dev/null -@@ -1,282 +0,0 @@ --// go run mkasm_darwin.go arm --// Code generated by the command above; DO NOT EDIT. -- --// +build go1.12 -- --#include "textflag.h" --TEXT ·libc_getgroups_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getgroups(SB) --TEXT ·libc_setgroups_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setgroups(SB) --TEXT ·libc_wait4_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_wait4(SB) --TEXT ·libc_accept_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_accept(SB) --TEXT ·libc_bind_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_bind(SB) --TEXT ·libc_connect_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_connect(SB) --TEXT ·libc_socket_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_socket(SB) --TEXT ·libc_getsockopt_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getsockopt(SB) --TEXT ·libc_setsockopt_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setsockopt(SB) --TEXT ·libc_getpeername_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getpeername(SB) --TEXT ·libc_getsockname_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getsockname(SB) --TEXT ·libc_shutdown_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_shutdown(SB) --TEXT ·libc_socketpair_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_socketpair(SB) --TEXT ·libc_recvfrom_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_recvfrom(SB) --TEXT ·libc_sendto_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_sendto(SB) --TEXT ·libc_recvmsg_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_recvmsg(SB) --TEXT ·libc_sendmsg_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_sendmsg(SB) --TEXT ·libc_kevent_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_kevent(SB) --TEXT ·libc_utimes_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_utimes(SB) --TEXT ·libc_futimes_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_futimes(SB) --TEXT ·libc_poll_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_poll(SB) --TEXT ·libc_madvise_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_madvise(SB) --TEXT ·libc_mlock_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_mlock(SB) --TEXT ·libc_mlockall_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_mlockall(SB) --TEXT ·libc_mprotect_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_mprotect(SB) --TEXT ·libc_msync_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_msync(SB) --TEXT ·libc_munlock_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_munlock(SB) --TEXT ·libc_munlockall_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_munlockall(SB) --TEXT ·libc_getattrlist_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getattrlist(SB) --TEXT ·libc_pipe_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_pipe(SB) --TEXT ·libc_getxattr_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getxattr(SB) --TEXT ·libc_fgetxattr_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fgetxattr(SB) --TEXT ·libc_setxattr_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setxattr(SB) --TEXT ·libc_fsetxattr_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fsetxattr(SB) --TEXT ·libc_removexattr_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_removexattr(SB) --TEXT ·libc_fremovexattr_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fremovexattr(SB) --TEXT ·libc_listxattr_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_listxattr(SB) --TEXT ·libc_flistxattr_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_flistxattr(SB) --TEXT ·libc_setattrlist_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setattrlist(SB) --TEXT ·libc_fcntl_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fcntl(SB) --TEXT ·libc_kill_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_kill(SB) --TEXT ·libc_ioctl_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_ioctl(SB) --TEXT ·libc_sysctl_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_sysctl(SB) --TEXT ·libc_sendfile_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_sendfile(SB) --TEXT ·libc_access_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_access(SB) --TEXT ·libc_adjtime_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_adjtime(SB) --TEXT ·libc_chdir_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_chdir(SB) --TEXT ·libc_chflags_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_chflags(SB) --TEXT ·libc_chmod_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_chmod(SB) --TEXT ·libc_chown_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_chown(SB) --TEXT ·libc_chroot_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_chroot(SB) --TEXT ·libc_clock_gettime_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_clock_gettime(SB) --TEXT ·libc_close_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_close(SB) --TEXT ·libc_dup_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_dup(SB) --TEXT ·libc_dup2_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_dup2(SB) --TEXT ·libc_exchangedata_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_exchangedata(SB) --TEXT ·libc_exit_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_exit(SB) --TEXT ·libc_faccessat_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_faccessat(SB) --TEXT ·libc_fchdir_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fchdir(SB) --TEXT ·libc_fchflags_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fchflags(SB) --TEXT ·libc_fchmod_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fchmod(SB) --TEXT ·libc_fchmodat_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fchmodat(SB) --TEXT ·libc_fchown_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fchown(SB) --TEXT ·libc_fchownat_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fchownat(SB) --TEXT ·libc_flock_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_flock(SB) --TEXT ·libc_fpathconf_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fpathconf(SB) --TEXT ·libc_fsync_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fsync(SB) --TEXT ·libc_ftruncate_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_ftruncate(SB) --TEXT ·libc_getdtablesize_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getdtablesize(SB) --TEXT ·libc_getegid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getegid(SB) --TEXT ·libc_geteuid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_geteuid(SB) --TEXT ·libc_getgid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getgid(SB) --TEXT ·libc_getpgid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getpgid(SB) --TEXT ·libc_getpgrp_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getpgrp(SB) --TEXT ·libc_getpid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getpid(SB) --TEXT ·libc_getppid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getppid(SB) --TEXT ·libc_getpriority_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getpriority(SB) --TEXT ·libc_getrlimit_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getrlimit(SB) --TEXT ·libc_getrusage_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getrusage(SB) --TEXT ·libc_getsid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getsid(SB) --TEXT ·libc_getuid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getuid(SB) --TEXT ·libc_issetugid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_issetugid(SB) --TEXT ·libc_kqueue_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_kqueue(SB) --TEXT ·libc_lchown_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_lchown(SB) --TEXT ·libc_link_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_link(SB) --TEXT ·libc_linkat_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_linkat(SB) --TEXT ·libc_listen_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_listen(SB) --TEXT ·libc_mkdir_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_mkdir(SB) --TEXT ·libc_mkdirat_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_mkdirat(SB) --TEXT ·libc_mkfifo_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_mkfifo(SB) --TEXT ·libc_mknod_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_mknod(SB) --TEXT ·libc_open_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_open(SB) --TEXT ·libc_openat_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_openat(SB) --TEXT ·libc_pathconf_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_pathconf(SB) --TEXT ·libc_pread_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_pread(SB) --TEXT ·libc_pwrite_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_pwrite(SB) --TEXT ·libc_read_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_read(SB) --TEXT ·libc_readlink_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_readlink(SB) --TEXT ·libc_readlinkat_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_readlinkat(SB) --TEXT ·libc_rename_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_rename(SB) --TEXT ·libc_renameat_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_renameat(SB) --TEXT ·libc_revoke_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_revoke(SB) --TEXT ·libc_rmdir_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_rmdir(SB) --TEXT ·libc_lseek_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_lseek(SB) --TEXT ·libc_select_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_select(SB) --TEXT ·libc_setegid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setegid(SB) --TEXT ·libc_seteuid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_seteuid(SB) --TEXT ·libc_setgid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setgid(SB) --TEXT ·libc_setlogin_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setlogin(SB) --TEXT ·libc_setpgid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setpgid(SB) --TEXT ·libc_setpriority_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setpriority(SB) --TEXT ·libc_setprivexec_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setprivexec(SB) --TEXT ·libc_setregid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setregid(SB) --TEXT ·libc_setreuid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setreuid(SB) --TEXT ·libc_setrlimit_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setrlimit(SB) --TEXT ·libc_setsid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setsid(SB) --TEXT ·libc_settimeofday_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_settimeofday(SB) --TEXT ·libc_setuid_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setuid(SB) --TEXT ·libc_symlink_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_symlink(SB) --TEXT ·libc_symlinkat_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_symlinkat(SB) --TEXT ·libc_sync_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_sync(SB) --TEXT ·libc_truncate_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_truncate(SB) --TEXT ·libc_umask_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_umask(SB) --TEXT ·libc_undelete_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_undelete(SB) --TEXT ·libc_unlink_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_unlink(SB) --TEXT ·libc_unlinkat_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_unlinkat(SB) --TEXT ·libc_unmount_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_unmount(SB) --TEXT ·libc_write_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_write(SB) --TEXT ·libc_mmap_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_mmap(SB) --TEXT ·libc_munmap_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_munmap(SB) --TEXT ·libc_gettimeofday_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_gettimeofday(SB) --TEXT ·libc_fstat_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fstat(SB) --TEXT ·libc_fstatat_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fstatat(SB) --TEXT ·libc_fstatfs_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_fstatfs(SB) --TEXT ·libc_getfsstat_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getfsstat(SB) --TEXT ·libc_lstat_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_lstat(SB) --TEXT ·libc_stat_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_stat(SB) --TEXT ·libc_statfs_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_statfs(SB) -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.go -index d64e6c8..cec595d 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.go -@@ -1,6 +1,7 @@ - // go run mksyscall.go -tags darwin,arm64,go1.13 syscall_darwin.1_13.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build darwin && arm64 && go1.13 - // +build darwin,arm64,go1.13 - - package unix -@@ -15,27 +16,25 @@ var _ syscall.Errno - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func closedir(dir uintptr) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_closedir_trampoline), uintptr(dir), 0, 0) -+ _, _, e1 := syscall_syscall(libc_closedir_trampoline_addr, uintptr(dir), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_closedir_trampoline() -+var libc_closedir_trampoline_addr uintptr - --//go:linkname libc_closedir libc_closedir - //go:cgo_import_dynamic libc_closedir closedir "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func readdir_r(dir uintptr, entry *Dirent, result **Dirent) (res Errno) { -- r0, _, _ := syscall_syscall(funcPC(libc_readdir_r_trampoline), uintptr(dir), uintptr(unsafe.Pointer(entry)), uintptr(unsafe.Pointer(result))) -+ r0, _, _ := syscall_syscall(libc_readdir_r_trampoline_addr, uintptr(dir), uintptr(unsafe.Pointer(entry)), uintptr(unsafe.Pointer(result))) - res = Errno(r0) - return - } - --func libc_readdir_r_trampoline() -+var libc_readdir_r_trampoline_addr uintptr - --//go:linkname libc_readdir_r libc_readdir_r - //go:cgo_import_dynamic libc_readdir_r readdir_r "/usr/lib/libSystem.B.dylib" -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.s -index b29dabb..0c3f76b 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.s -+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_13.s -@@ -1,12 +1,25 @@ --// go run mkasm_darwin.go arm64 -+// go run mkasm.go darwin arm64 - // Code generated by the command above; DO NOT EDIT. - -+//go:build go1.13 - // +build go1.13 - - #include "textflag.h" --TEXT ·libc_fdopendir_trampoline(SB),NOSPLIT,$0-0 -+ -+TEXT libc_fdopendir_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fdopendir(SB) --TEXT ·libc_closedir_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fdopendir_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fdopendir_trampoline_addr(SB)/8, $libc_fdopendir_trampoline<>(SB) -+ -+TEXT libc_closedir_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_closedir(SB) --TEXT ·libc_readdir_r_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_closedir_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_closedir_trampoline_addr(SB)/8, $libc_closedir_trampoline<>(SB) -+ -+TEXT libc_readdir_r_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_readdir_r(SB) -+ -+GLOBL ·libc_readdir_r_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_readdir_r_trampoline_addr(SB)/8, $libc_readdir_r_trampoline<>(SB) -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go -index a8709f7..35938d3 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go -@@ -1,6 +1,7 @@ - // go run mksyscall.go -tags darwin,arm64,go1.12 syscall_bsd.go syscall_darwin.go syscall_darwin_arm64.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build darwin && arm64 && go1.12 - // +build darwin,arm64,go1.12 - - package unix -@@ -15,7 +16,7 @@ var _ syscall.Errno - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func getgroups(ngid int, gid *_Gid_t) (n int, err error) { -- r0, _, e1 := syscall_rawSyscall(funcPC(libc_getgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) -+ r0, _, e1 := syscall_rawSyscall(libc_getgroups_trampoline_addr, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -23,30 +24,28 @@ func getgroups(ngid int, gid *_Gid_t) (n int, err error) { - return - } - --func libc_getgroups_trampoline() -+var libc_getgroups_trampoline_addr uintptr - --//go:linkname libc_getgroups libc_getgroups - //go:cgo_import_dynamic libc_getgroups getgroups "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func setgroups(ngid int, gid *_Gid_t) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setgroups_trampoline), uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setgroups_trampoline_addr, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setgroups_trampoline() -+var libc_setgroups_trampoline_addr uintptr - --//go:linkname libc_setgroups libc_setgroups - //go:cgo_import_dynamic libc_setgroups setgroups "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) { -- r0, _, e1 := syscall_syscall6(funcPC(libc_wait4_trampoline), uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_wait4_trampoline_addr, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0) - wpid = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -54,15 +53,14 @@ func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err - return - } - --func libc_wait4_trampoline() -+var libc_wait4_trampoline_addr uintptr - --//go:linkname libc_wait4 libc_wait4 - //go:cgo_import_dynamic libc_wait4 wait4 "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_accept_trampoline), uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ r0, _, e1 := syscall_syscall(libc_accept_trampoline_addr, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -70,45 +68,42 @@ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { - return - } - --func libc_accept_trampoline() -+var libc_accept_trampoline_addr uintptr - --//go:linkname libc_accept libc_accept - //go:cgo_import_dynamic libc_accept accept "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_bind_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen)) -+ _, _, e1 := syscall_syscall(libc_bind_trampoline_addr, uintptr(s), uintptr(addr), uintptr(addrlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_bind_trampoline() -+var libc_bind_trampoline_addr uintptr - --//go:linkname libc_bind libc_bind - //go:cgo_import_dynamic libc_bind bind "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_connect_trampoline), uintptr(s), uintptr(addr), uintptr(addrlen)) -+ _, _, e1 := syscall_syscall(libc_connect_trampoline_addr, uintptr(s), uintptr(addr), uintptr(addrlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_connect_trampoline() -+var libc_connect_trampoline_addr uintptr - --//go:linkname libc_connect libc_connect - //go:cgo_import_dynamic libc_connect connect "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func socket(domain int, typ int, proto int) (fd int, err error) { -- r0, _, e1 := syscall_rawSyscall(funcPC(libc_socket_trampoline), uintptr(domain), uintptr(typ), uintptr(proto)) -+ r0, _, e1 := syscall_rawSyscall(libc_socket_trampoline_addr, uintptr(domain), uintptr(typ), uintptr(proto)) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -116,99 +111,92 @@ func socket(domain int, typ int, proto int) (fd int, err error) { - return - } - --func libc_socket_trampoline() -+var libc_socket_trampoline_addr uintptr - --//go:linkname libc_socket libc_socket - //go:cgo_import_dynamic libc_socket socket "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) { -- _, _, e1 := syscall_syscall6(funcPC(libc_getsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0) -+ _, _, e1 := syscall_syscall6(libc_getsockopt_trampoline_addr, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_getsockopt_trampoline() -+var libc_getsockopt_trampoline_addr uintptr - --//go:linkname libc_getsockopt libc_getsockopt - //go:cgo_import_dynamic libc_getsockopt getsockopt "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) { -- _, _, e1 := syscall_syscall6(funcPC(libc_setsockopt_trampoline), uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0) -+ _, _, e1 := syscall_syscall6(libc_setsockopt_trampoline_addr, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setsockopt_trampoline() -+var libc_setsockopt_trampoline_addr uintptr - --//go:linkname libc_setsockopt libc_setsockopt - //go:cgo_import_dynamic libc_setsockopt setsockopt "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_getpeername_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ _, _, e1 := syscall_rawSyscall(libc_getpeername_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_getpeername_trampoline() -+var libc_getpeername_trampoline_addr uintptr - --//go:linkname libc_getpeername libc_getpeername - //go:cgo_import_dynamic libc_getpeername getpeername "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_getsockname_trampoline), uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ _, _, e1 := syscall_rawSyscall(libc_getsockname_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_getsockname_trampoline() -+var libc_getsockname_trampoline_addr uintptr - --//go:linkname libc_getsockname libc_getsockname - //go:cgo_import_dynamic libc_getsockname getsockname "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Shutdown(s int, how int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_shutdown_trampoline), uintptr(s), uintptr(how), 0) -+ _, _, e1 := syscall_syscall(libc_shutdown_trampoline_addr, uintptr(s), uintptr(how), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_shutdown_trampoline() -+var libc_shutdown_trampoline_addr uintptr - --//go:linkname libc_shutdown libc_shutdown - //go:cgo_import_dynamic libc_shutdown shutdown "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) { -- _, _, e1 := syscall_rawSyscall6(funcPC(libc_socketpair_trampoline), uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0) -+ _, _, e1 := syscall_rawSyscall6(libc_socketpair_trampoline_addr, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_socketpair_trampoline() -+var libc_socketpair_trampoline_addr uintptr - --//go:linkname libc_socketpair libc_socketpair - //go:cgo_import_dynamic libc_socketpair socketpair "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -220,7 +208,7 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := syscall_syscall6(funcPC(libc_recvfrom_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) -+ r0, _, e1 := syscall_syscall6(libc_recvfrom_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -228,9 +216,8 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl - return - } - --func libc_recvfrom_trampoline() -+var libc_recvfrom_trampoline_addr uintptr - --//go:linkname libc_recvfrom libc_recvfrom - //go:cgo_import_dynamic libc_recvfrom recvfrom "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -242,22 +229,21 @@ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) ( - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := syscall_syscall6(funcPC(libc_sendto_trampoline), uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen)) -+ _, _, e1 := syscall_syscall6(libc_sendto_trampoline_addr, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_sendto_trampoline() -+var libc_sendto_trampoline_addr uintptr - --//go:linkname libc_sendto libc_sendto - //go:cgo_import_dynamic libc_sendto sendto "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_recvmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -+ r0, _, e1 := syscall_syscall(libc_recvmsg_trampoline_addr, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -265,15 +251,14 @@ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) { - return - } - --func libc_recvmsg_trampoline() -+var libc_recvmsg_trampoline_addr uintptr - --//go:linkname libc_recvmsg libc_recvmsg - //go:cgo_import_dynamic libc_recvmsg recvmsg "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_sendmsg_trampoline), uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -+ r0, _, e1 := syscall_syscall(libc_sendmsg_trampoline_addr, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -281,15 +266,14 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { - return - } - --func libc_sendmsg_trampoline() -+var libc_sendmsg_trampoline_addr uintptr - --//go:linkname libc_sendmsg libc_sendmsg - //go:cgo_import_dynamic libc_sendmsg sendmsg "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, nevent int, timeout *Timespec) (n int, err error) { -- r0, _, e1 := syscall_syscall6(funcPC(libc_kevent_trampoline), uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout))) -+ r0, _, e1 := syscall_syscall6(libc_kevent_trampoline_addr, uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -297,9 +281,8 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne - return - } - --func libc_kevent_trampoline() -+var libc_kevent_trampoline_addr uintptr - --//go:linkname libc_kevent libc_kevent - //go:cgo_import_dynamic libc_kevent kevent "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -310,37 +293,35 @@ func utimes(path string, timeval *[2]Timeval) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_utimes_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0) -+ _, _, e1 := syscall_syscall(libc_utimes_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_utimes_trampoline() -+var libc_utimes_trampoline_addr uintptr - --//go:linkname libc_utimes libc_utimes - //go:cgo_import_dynamic libc_utimes utimes "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func futimes(fd int, timeval *[2]Timeval) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_futimes_trampoline), uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0) -+ _, _, e1 := syscall_syscall(libc_futimes_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_futimes_trampoline() -+var libc_futimes_trampoline_addr uintptr - --//go:linkname libc_futimes libc_futimes - //go:cgo_import_dynamic libc_futimes futimes "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_poll_trampoline), uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) -+ r0, _, e1 := syscall_syscall(libc_poll_trampoline_addr, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -348,9 +329,8 @@ func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { - return - } - --func libc_poll_trampoline() -+var libc_poll_trampoline_addr uintptr - --//go:linkname libc_poll libc_poll - //go:cgo_import_dynamic libc_poll poll "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -362,16 +342,15 @@ func Madvise(b []byte, behav int) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := syscall_syscall(funcPC(libc_madvise_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(behav)) -+ _, _, e1 := syscall_syscall(libc_madvise_trampoline_addr, uintptr(_p0), uintptr(len(b)), uintptr(behav)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_madvise_trampoline() -+var libc_madvise_trampoline_addr uintptr - --//go:linkname libc_madvise libc_madvise - //go:cgo_import_dynamic libc_madvise madvise "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -383,31 +362,29 @@ func Mlock(b []byte) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := syscall_syscall(funcPC(libc_mlock_trampoline), uintptr(_p0), uintptr(len(b)), 0) -+ _, _, e1 := syscall_syscall(libc_mlock_trampoline_addr, uintptr(_p0), uintptr(len(b)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_mlock_trampoline() -+var libc_mlock_trampoline_addr uintptr - --//go:linkname libc_mlock libc_mlock - //go:cgo_import_dynamic libc_mlock mlock "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mlockall(flags int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_mlockall_trampoline), uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall(libc_mlockall_trampoline_addr, uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_mlockall_trampoline() -+var libc_mlockall_trampoline_addr uintptr - --//go:linkname libc_mlockall libc_mlockall - //go:cgo_import_dynamic libc_mlockall mlockall "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -419,16 +396,15 @@ func Mprotect(b []byte, prot int) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := syscall_syscall(funcPC(libc_mprotect_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(prot)) -+ _, _, e1 := syscall_syscall(libc_mprotect_trampoline_addr, uintptr(_p0), uintptr(len(b)), uintptr(prot)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_mprotect_trampoline() -+var libc_mprotect_trampoline_addr uintptr - --//go:linkname libc_mprotect libc_mprotect - //go:cgo_import_dynamic libc_mprotect mprotect "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -440,16 +416,15 @@ func Msync(b []byte, flags int) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := syscall_syscall(funcPC(libc_msync_trampoline), uintptr(_p0), uintptr(len(b)), uintptr(flags)) -+ _, _, e1 := syscall_syscall(libc_msync_trampoline_addr, uintptr(_p0), uintptr(len(b)), uintptr(flags)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_msync_trampoline() -+var libc_msync_trampoline_addr uintptr - --//go:linkname libc_msync libc_msync - //go:cgo_import_dynamic libc_msync msync "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -461,63 +436,43 @@ func Munlock(b []byte) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := syscall_syscall(funcPC(libc_munlock_trampoline), uintptr(_p0), uintptr(len(b)), 0) -+ _, _, e1 := syscall_syscall(libc_munlock_trampoline_addr, uintptr(_p0), uintptr(len(b)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_munlock_trampoline() -+var libc_munlock_trampoline_addr uintptr - --//go:linkname libc_munlock libc_munlock - //go:cgo_import_dynamic libc_munlock munlock "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Munlockall() (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_munlockall_trampoline), 0, 0, 0) -+ _, _, e1 := syscall_syscall(libc_munlockall_trampoline_addr, 0, 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_munlockall_trampoline() -+var libc_munlockall_trampoline_addr uintptr - --//go:linkname libc_munlockall libc_munlockall - //go:cgo_import_dynamic libc_munlockall munlockall "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) { -- _, _, e1 := syscall_syscall6(funcPC(libc_getattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0) -+func pipe(p *[2]int32) (err error) { -+ _, _, e1 := syscall_rawSyscall(libc_pipe_trampoline_addr, uintptr(unsafe.Pointer(p)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_getattrlist_trampoline() -+var libc_pipe_trampoline_addr uintptr - --//go:linkname libc_getattrlist libc_getattrlist --//go:cgo_import_dynamic libc_getattrlist getattrlist "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func pipe() (r int, w int, err error) { -- r0, r1, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), 0, 0, 0) -- r = int(r0) -- w = int(r1) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_pipe_trampoline() -- --//go:linkname libc_pipe libc_pipe - //go:cgo_import_dynamic libc_pipe pipe "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -533,7 +488,7 @@ func getxattr(path string, attr string, dest *byte, size int, position uint32, o - if err != nil { - return - } -- r0, _, e1 := syscall_syscall6(funcPC(libc_getxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) -+ r0, _, e1 := syscall_syscall6(libc_getxattr_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) - sz = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -541,9 +496,8 @@ func getxattr(path string, attr string, dest *byte, size int, position uint32, o - return - } - --func libc_getxattr_trampoline() -+var libc_getxattr_trampoline_addr uintptr - --//go:linkname libc_getxattr libc_getxattr - //go:cgo_import_dynamic libc_getxattr getxattr "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -554,7 +508,7 @@ func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, optio - if err != nil { - return - } -- r0, _, e1 := syscall_syscall6(funcPC(libc_fgetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) -+ r0, _, e1 := syscall_syscall6(libc_fgetxattr_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) - sz = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -562,9 +516,8 @@ func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, optio - return - } - --func libc_fgetxattr_trampoline() -+var libc_fgetxattr_trampoline_addr uintptr - --//go:linkname libc_fgetxattr libc_fgetxattr - //go:cgo_import_dynamic libc_fgetxattr fgetxattr "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -580,16 +533,15 @@ func setxattr(path string, attr string, data *byte, size int, position uint32, o - if err != nil { - return - } -- _, _, e1 := syscall_syscall6(funcPC(libc_setxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) -+ _, _, e1 := syscall_syscall6(libc_setxattr_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setxattr_trampoline() -+var libc_setxattr_trampoline_addr uintptr - --//go:linkname libc_setxattr libc_setxattr - //go:cgo_import_dynamic libc_setxattr setxattr "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -600,16 +552,15 @@ func fsetxattr(fd int, attr string, data *byte, size int, position uint32, optio - if err != nil { - return - } -- _, _, e1 := syscall_syscall6(funcPC(libc_fsetxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) -+ _, _, e1 := syscall_syscall6(libc_fsetxattr_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_fsetxattr_trampoline() -+var libc_fsetxattr_trampoline_addr uintptr - --//go:linkname libc_fsetxattr libc_fsetxattr - //go:cgo_import_dynamic libc_fsetxattr fsetxattr "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -625,16 +576,15 @@ func removexattr(path string, attr string, options int) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_removexattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) -+ _, _, e1 := syscall_syscall(libc_removexattr_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_removexattr_trampoline() -+var libc_removexattr_trampoline_addr uintptr - --//go:linkname libc_removexattr libc_removexattr - //go:cgo_import_dynamic libc_removexattr removexattr "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -645,16 +595,15 @@ func fremovexattr(fd int, attr string, options int) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_fremovexattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options)) -+ _, _, e1 := syscall_syscall(libc_fremovexattr_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_fremovexattr_trampoline() -+var libc_fremovexattr_trampoline_addr uintptr - --//go:linkname libc_fremovexattr libc_fremovexattr - //go:cgo_import_dynamic libc_fremovexattr fremovexattr "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -665,7 +614,7 @@ func listxattr(path string, dest *byte, size int, options int) (sz int, err erro - if err != nil { - return - } -- r0, _, e1 := syscall_syscall6(funcPC(libc_listxattr_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_listxattr_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) - sz = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -673,15 +622,14 @@ func listxattr(path string, dest *byte, size int, options int) (sz int, err erro - return - } - --func libc_listxattr_trampoline() -+var libc_listxattr_trampoline_addr uintptr - --//go:linkname libc_listxattr libc_listxattr - //go:cgo_import_dynamic libc_listxattr listxattr "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) { -- r0, _, e1 := syscall_syscall6(funcPC(libc_flistxattr_trampoline), uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_flistxattr_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) - sz = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -689,30 +637,33 @@ func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) { - return - } - --func libc_flistxattr_trampoline() -+var libc_flistxattr_trampoline_addr uintptr - --//go:linkname libc_flistxattr libc_flistxattr - //go:cgo_import_dynamic libc_flistxattr flistxattr "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) { -- _, _, e1 := syscall_syscall6(funcPC(libc_setattrlist_trampoline), uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0) -+func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall6(libc_utimensat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setattrlist_trampoline() -+var libc_utimensat_trampoline_addr uintptr - --//go:linkname libc_setattrlist libc_setattrlist --//go:cgo_import_dynamic libc_setattrlist setattrlist "/usr/lib/libSystem.B.dylib" -+//go:cgo_import_dynamic libc_utimensat utimensat "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func fcntl(fd int, cmd int, arg int) (val int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_fcntl_trampoline), uintptr(fd), uintptr(cmd), uintptr(arg)) -+ r0, _, e1 := syscall_syscall(libc_fcntl_trampoline_addr, uintptr(fd), uintptr(cmd), uintptr(arg)) - val = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -720,39 +671,36 @@ func fcntl(fd int, cmd int, arg int) (val int, err error) { - return - } - --func libc_fcntl_trampoline() -+var libc_fcntl_trampoline_addr uintptr - --//go:linkname libc_fcntl libc_fcntl - //go:cgo_import_dynamic libc_fcntl fcntl "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func kill(pid int, signum int, posix int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_kill_trampoline), uintptr(pid), uintptr(signum), uintptr(posix)) -+ _, _, e1 := syscall_syscall(libc_kill_trampoline_addr, uintptr(pid), uintptr(signum), uintptr(posix)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_kill_trampoline() -+var libc_kill_trampoline_addr uintptr - --//go:linkname libc_kill libc_kill - //go:cgo_import_dynamic libc_kill kill "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func ioctl(fd int, req uint, arg uintptr) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_ioctl_trampoline), uintptr(fd), uintptr(req), uintptr(arg)) -+ _, _, e1 := syscall_syscall(libc_ioctl_trampoline_addr, uintptr(fd), uintptr(req), uintptr(arg)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_ioctl_trampoline() -+var libc_ioctl_trampoline_addr uintptr - --//go:linkname libc_ioctl libc_ioctl - //go:cgo_import_dynamic libc_ioctl ioctl "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -764,66 +712,121 @@ func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := syscall_syscall6(funcPC(libc_sysctl_trampoline), uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) -+ _, _, e1 := syscall_syscall6(libc_sysctl_trampoline_addr, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_sysctl_trampoline() -+var libc_sysctl_trampoline_addr uintptr - --//go:linkname libc_sysctl libc_sysctl - //go:cgo_import_dynamic libc_sysctl sysctl "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) { -- _, _, e1 := syscall_syscall6(funcPC(libc_sendfile_trampoline), uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags)) -+ _, _, e1 := syscall_syscall6(libc_sendfile_trampoline_addr, uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_sendfile_trampoline() -+var libc_sendfile_trampoline_addr uintptr - --//go:linkname libc_sendfile libc_sendfile - //go:cgo_import_dynamic libc_sendfile sendfile "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func shmat(id int, addr uintptr, flag int) (ret uintptr, err error) { -+ r0, _, e1 := syscall_syscall(libc_shmat_trampoline_addr, uintptr(id), uintptr(addr), uintptr(flag)) -+ ret = uintptr(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+var libc_shmat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_shmat shmat "/usr/lib/libSystem.B.dylib" -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func shmctl(id int, cmd int, buf *SysvShmDesc) (result int, err error) { -+ r0, _, e1 := syscall_syscall(libc_shmctl_trampoline_addr, uintptr(id), uintptr(cmd), uintptr(unsafe.Pointer(buf))) -+ result = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+var libc_shmctl_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_shmctl shmctl "/usr/lib/libSystem.B.dylib" -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func shmdt(addr uintptr) (err error) { -+ _, _, e1 := syscall_syscall(libc_shmdt_trampoline_addr, uintptr(addr), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+var libc_shmdt_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_shmdt shmdt "/usr/lib/libSystem.B.dylib" -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func shmget(key int, size int, flag int) (id int, err error) { -+ r0, _, e1 := syscall_syscall(libc_shmget_trampoline_addr, uintptr(key), uintptr(size), uintptr(flag)) -+ id = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+var libc_shmget_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_shmget shmget "/usr/lib/libSystem.B.dylib" -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Access(path string, mode uint32) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_access_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_access_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_access_trampoline() -+var libc_access_trampoline_addr uintptr - --//go:linkname libc_access libc_access - //go:cgo_import_dynamic libc_access access "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Adjtime(delta *Timeval, olddelta *Timeval) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_adjtime_trampoline), uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0) -+ _, _, e1 := syscall_syscall(libc_adjtime_trampoline_addr, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_adjtime_trampoline() -+var libc_adjtime_trampoline_addr uintptr - --//go:linkname libc_adjtime libc_adjtime - //go:cgo_import_dynamic libc_adjtime adjtime "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -834,16 +837,15 @@ func Chdir(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_chdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_chdir_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_chdir_trampoline() -+var libc_chdir_trampoline_addr uintptr - --//go:linkname libc_chdir libc_chdir - //go:cgo_import_dynamic libc_chdir chdir "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -854,16 +856,15 @@ func Chflags(path string, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_chflags_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall(libc_chflags_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_chflags_trampoline() -+var libc_chflags_trampoline_addr uintptr - --//go:linkname libc_chflags libc_chflags - //go:cgo_import_dynamic libc_chflags chflags "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -874,16 +875,15 @@ func Chmod(path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_chmod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_chmod_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_chmod_trampoline() -+var libc_chmod_trampoline_addr uintptr - --//go:linkname libc_chmod libc_chmod - //go:cgo_import_dynamic libc_chmod chmod "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -894,16 +894,15 @@ func Chown(path string, uid int, gid int) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_chown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) -+ _, _, e1 := syscall_syscall(libc_chown_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_chown_trampoline() -+var libc_chown_trampoline_addr uintptr - --//go:linkname libc_chown libc_chown - //go:cgo_import_dynamic libc_chown chown "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -914,52 +913,97 @@ func Chroot(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_chroot_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_chroot_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_chroot_trampoline() -+var libc_chroot_trampoline_addr uintptr - --//go:linkname libc_chroot libc_chroot - //go:cgo_import_dynamic libc_chroot chroot "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func ClockGettime(clockid int32, time *Timespec) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_clock_gettime_trampoline), uintptr(clockid), uintptr(unsafe.Pointer(time)), 0) -+ _, _, e1 := syscall_syscall(libc_clock_gettime_trampoline_addr, uintptr(clockid), uintptr(unsafe.Pointer(time)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_clock_gettime_trampoline() -+var libc_clock_gettime_trampoline_addr uintptr - --//go:linkname libc_clock_gettime libc_clock_gettime - //go:cgo_import_dynamic libc_clock_gettime clock_gettime "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Close(fd int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_close_trampoline), uintptr(fd), 0, 0) -+ _, _, e1 := syscall_syscall(libc_close_trampoline_addr, uintptr(fd), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_close_trampoline() -+var libc_close_trampoline_addr uintptr - --//go:linkname libc_close libc_close - //go:cgo_import_dynamic libc_close close "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func Clonefile(src string, dst string, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(src) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(dst) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall(libc_clonefile_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(flags)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+var libc_clonefile_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_clonefile clonefile "/usr/lib/libSystem.B.dylib" -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Clonefileat(srcDirfd int, src string, dstDirfd int, dst string, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(src) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(dst) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall6(libc_clonefileat_trampoline_addr, uintptr(srcDirfd), uintptr(unsafe.Pointer(_p0)), uintptr(dstDirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+var libc_clonefileat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_clonefileat clonefileat "/usr/lib/libSystem.B.dylib" -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Dup(fd int) (nfd int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_dup_trampoline), uintptr(fd), 0, 0) -+ r0, _, e1 := syscall_syscall(libc_dup_trampoline_addr, uintptr(fd), 0, 0) - nfd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -967,24 +1011,22 @@ func Dup(fd int) (nfd int, err error) { - return - } - --func libc_dup_trampoline() -+var libc_dup_trampoline_addr uintptr - --//go:linkname libc_dup libc_dup - //go:cgo_import_dynamic libc_dup dup "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Dup2(from int, to int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_dup2_trampoline), uintptr(from), uintptr(to), 0) -+ _, _, e1 := syscall_syscall(libc_dup2_trampoline_addr, uintptr(from), uintptr(to), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_dup2_trampoline() -+var libc_dup2_trampoline_addr uintptr - --//go:linkname libc_dup2 libc_dup2 - //go:cgo_import_dynamic libc_dup2 dup2 "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1000,28 +1042,26 @@ func Exchangedata(path1 string, path2 string, options int) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_exchangedata_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) -+ _, _, e1 := syscall_syscall(libc_exchangedata_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_exchangedata_trampoline() -+var libc_exchangedata_trampoline_addr uintptr - --//go:linkname libc_exchangedata libc_exchangedata - //go:cgo_import_dynamic libc_exchangedata exchangedata "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Exit(code int) { -- syscall_syscall(funcPC(libc_exit_trampoline), uintptr(code), 0, 0) -+ syscall_syscall(libc_exit_trampoline_addr, uintptr(code), 0, 0) - return - } - --func libc_exit_trampoline() -+var libc_exit_trampoline_addr uintptr - --//go:linkname libc_exit libc_exit - //go:cgo_import_dynamic libc_exit exit "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1032,61 +1072,57 @@ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall6(funcPC(libc_faccessat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_faccessat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_faccessat_trampoline() -+var libc_faccessat_trampoline_addr uintptr - --//go:linkname libc_faccessat libc_faccessat - //go:cgo_import_dynamic libc_faccessat faccessat "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchdir(fd int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fchdir_trampoline), uintptr(fd), 0, 0) -+ _, _, e1 := syscall_syscall(libc_fchdir_trampoline_addr, uintptr(fd), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_fchdir_trampoline() -+var libc_fchdir_trampoline_addr uintptr - --//go:linkname libc_fchdir libc_fchdir - //go:cgo_import_dynamic libc_fchdir fchdir "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchflags(fd int, flags int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fchflags_trampoline), uintptr(fd), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall(libc_fchflags_trampoline_addr, uintptr(fd), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_fchflags_trampoline() -+var libc_fchflags_trampoline_addr uintptr - --//go:linkname libc_fchflags libc_fchflags - //go:cgo_import_dynamic libc_fchflags fchflags "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchmod(fd int, mode uint32) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fchmod_trampoline), uintptr(fd), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_fchmod_trampoline_addr, uintptr(fd), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_fchmod_trampoline() -+var libc_fchmod_trampoline_addr uintptr - --//go:linkname libc_fchmod libc_fchmod - //go:cgo_import_dynamic libc_fchmod fchmod "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1097,31 +1133,29 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall6(funcPC(libc_fchmodat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_fchmodat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_fchmodat_trampoline() -+var libc_fchmodat_trampoline_addr uintptr - --//go:linkname libc_fchmodat libc_fchmodat - //go:cgo_import_dynamic libc_fchmodat fchmodat "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchown(fd int, uid int, gid int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fchown_trampoline), uintptr(fd), uintptr(uid), uintptr(gid)) -+ _, _, e1 := syscall_syscall(libc_fchown_trampoline_addr, uintptr(fd), uintptr(uid), uintptr(gid)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_fchown_trampoline() -+var libc_fchown_trampoline_addr uintptr - --//go:linkname libc_fchown libc_fchown - //go:cgo_import_dynamic libc_fchown fchown "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1132,37 +1166,54 @@ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall6(funcPC(libc_fchownat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall6(libc_fchownat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_fchownat_trampoline() -+var libc_fchownat_trampoline_addr uintptr - --//go:linkname libc_fchownat libc_fchownat - //go:cgo_import_dynamic libc_fchownat fchownat "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func Fclonefileat(srcDirfd int, dstDirfd int, dst string, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(dst) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall6(libc_fclonefileat_trampoline_addr, uintptr(srcDirfd), uintptr(dstDirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+var libc_fclonefileat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fclonefileat fclonefileat "/usr/lib/libSystem.B.dylib" -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Flock(fd int, how int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_flock_trampoline), uintptr(fd), uintptr(how), 0) -+ _, _, e1 := syscall_syscall(libc_flock_trampoline_addr, uintptr(fd), uintptr(how), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_flock_trampoline() -+var libc_flock_trampoline_addr uintptr - --//go:linkname libc_flock libc_flock - //go:cgo_import_dynamic libc_flock flock "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fpathconf(fd int, name int) (val int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_fpathconf_trampoline), uintptr(fd), uintptr(name), 0) -+ r0, _, e1 := syscall_syscall(libc_fpathconf_trampoline_addr, uintptr(fd), uintptr(name), 0) - val = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1170,97 +1221,111 @@ func Fpathconf(fd int, name int) (val int, err error) { - return - } - --func libc_fpathconf_trampoline() -+var libc_fpathconf_trampoline_addr uintptr - --//go:linkname libc_fpathconf libc_fpathconf - //go:cgo_import_dynamic libc_fpathconf fpathconf "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fsync(fd int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fsync_trampoline), uintptr(fd), 0, 0) -+ _, _, e1 := syscall_syscall(libc_fsync_trampoline_addr, uintptr(fd), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_fsync_trampoline() -+var libc_fsync_trampoline_addr uintptr - --//go:linkname libc_fsync libc_fsync - //go:cgo_import_dynamic libc_fsync fsync "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Ftruncate(fd int, length int64) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_ftruncate_trampoline), uintptr(fd), uintptr(length), 0) -+ _, _, e1 := syscall_syscall(libc_ftruncate_trampoline_addr, uintptr(fd), uintptr(length), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_ftruncate_trampoline() -+var libc_ftruncate_trampoline_addr uintptr - --//go:linkname libc_ftruncate libc_ftruncate - //go:cgo_import_dynamic libc_ftruncate ftruncate "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func Getcwd(buf []byte) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(buf) > 0 { -+ _p0 = unsafe.Pointer(&buf[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := syscall_syscall(libc_getcwd_trampoline_addr, uintptr(_p0), uintptr(len(buf)), 0) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+var libc_getcwd_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getcwd getcwd "/usr/lib/libSystem.B.dylib" -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Getdtablesize() (size int) { -- r0, _, _ := syscall_syscall(funcPC(libc_getdtablesize_trampoline), 0, 0, 0) -+ r0, _, _ := syscall_syscall(libc_getdtablesize_trampoline_addr, 0, 0, 0) - size = int(r0) - return - } - --func libc_getdtablesize_trampoline() -+var libc_getdtablesize_trampoline_addr uintptr - --//go:linkname libc_getdtablesize libc_getdtablesize - //go:cgo_import_dynamic libc_getdtablesize getdtablesize "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getegid() (egid int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_getegid_trampoline), 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getegid_trampoline_addr, 0, 0, 0) - egid = int(r0) - return - } - --func libc_getegid_trampoline() -+var libc_getegid_trampoline_addr uintptr - --//go:linkname libc_getegid libc_getegid - //go:cgo_import_dynamic libc_getegid getegid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Geteuid() (uid int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_geteuid_trampoline), 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_geteuid_trampoline_addr, 0, 0, 0) - uid = int(r0) - return - } - --func libc_geteuid_trampoline() -+var libc_geteuid_trampoline_addr uintptr - --//go:linkname libc_geteuid libc_geteuid - //go:cgo_import_dynamic libc_geteuid geteuid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getgid() (gid int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_getgid_trampoline), 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getgid_trampoline_addr, 0, 0, 0) - gid = int(r0) - return - } - --func libc_getgid_trampoline() -+var libc_getgid_trampoline_addr uintptr - --//go:linkname libc_getgid libc_getgid - //go:cgo_import_dynamic libc_getgid getgid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getpgid(pid int) (pgid int, err error) { -- r0, _, e1 := syscall_rawSyscall(funcPC(libc_getpgid_trampoline), uintptr(pid), 0, 0) -+ r0, _, e1 := syscall_rawSyscall(libc_getpgid_trampoline_addr, uintptr(pid), 0, 0) - pgid = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1268,54 +1333,50 @@ func Getpgid(pid int) (pgid int, err error) { - return - } - --func libc_getpgid_trampoline() -+var libc_getpgid_trampoline_addr uintptr - --//go:linkname libc_getpgid libc_getpgid - //go:cgo_import_dynamic libc_getpgid getpgid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getpgrp() (pgrp int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_getpgrp_trampoline), 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getpgrp_trampoline_addr, 0, 0, 0) - pgrp = int(r0) - return - } - --func libc_getpgrp_trampoline() -+var libc_getpgrp_trampoline_addr uintptr - --//go:linkname libc_getpgrp libc_getpgrp - //go:cgo_import_dynamic libc_getpgrp getpgrp "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getpid() (pid int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_getpid_trampoline), 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getpid_trampoline_addr, 0, 0, 0) - pid = int(r0) - return - } - --func libc_getpid_trampoline() -+var libc_getpid_trampoline_addr uintptr - --//go:linkname libc_getpid libc_getpid - //go:cgo_import_dynamic libc_getpid getpid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getppid() (ppid int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_getppid_trampoline), 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getppid_trampoline_addr, 0, 0, 0) - ppid = int(r0) - return - } - --func libc_getppid_trampoline() -+var libc_getppid_trampoline_addr uintptr - --//go:linkname libc_getppid libc_getppid - //go:cgo_import_dynamic libc_getppid getppid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getpriority(which int, who int) (prio int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_getpriority_trampoline), uintptr(which), uintptr(who), 0) -+ r0, _, e1 := syscall_syscall(libc_getpriority_trampoline_addr, uintptr(which), uintptr(who), 0) - prio = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1323,45 +1384,42 @@ func Getpriority(which int, who int) (prio int, err error) { - return - } - --func libc_getpriority_trampoline() -+var libc_getpriority_trampoline_addr uintptr - --//go:linkname libc_getpriority libc_getpriority - //go:cgo_import_dynamic libc_getpriority getpriority "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getrlimit(which int, lim *Rlimit) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_getrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0) -+ _, _, e1 := syscall_rawSyscall(libc_getrlimit_trampoline_addr, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_getrlimit_trampoline() -+var libc_getrlimit_trampoline_addr uintptr - --//go:linkname libc_getrlimit libc_getrlimit - //go:cgo_import_dynamic libc_getrlimit getrlimit "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getrusage(who int, rusage *Rusage) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_getrusage_trampoline), uintptr(who), uintptr(unsafe.Pointer(rusage)), 0) -+ _, _, e1 := syscall_rawSyscall(libc_getrusage_trampoline_addr, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_getrusage_trampoline() -+var libc_getrusage_trampoline_addr uintptr - --//go:linkname libc_getrusage libc_getrusage - //go:cgo_import_dynamic libc_getrusage getrusage "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getsid(pid int) (sid int, err error) { -- r0, _, e1 := syscall_rawSyscall(funcPC(libc_getsid_trampoline), uintptr(pid), 0, 0) -+ r0, _, e1 := syscall_rawSyscall(libc_getsid_trampoline_addr, uintptr(pid), 0, 0) - sid = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1369,41 +1427,52 @@ func Getsid(pid int) (sid int, err error) { - return - } - --func libc_getsid_trampoline() -+var libc_getsid_trampoline_addr uintptr - --//go:linkname libc_getsid libc_getsid - //go:cgo_import_dynamic libc_getsid getsid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func Gettimeofday(tp *Timeval) (err error) { -+ _, _, e1 := syscall_rawSyscall(libc_gettimeofday_trampoline_addr, uintptr(unsafe.Pointer(tp)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+var libc_gettimeofday_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_gettimeofday gettimeofday "/usr/lib/libSystem.B.dylib" -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Getuid() (uid int) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_getuid_trampoline), 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getuid_trampoline_addr, 0, 0, 0) - uid = int(r0) - return - } - --func libc_getuid_trampoline() -+var libc_getuid_trampoline_addr uintptr - --//go:linkname libc_getuid libc_getuid - //go:cgo_import_dynamic libc_getuid getuid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Issetugid() (tainted bool) { -- r0, _, _ := syscall_rawSyscall(funcPC(libc_issetugid_trampoline), 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_issetugid_trampoline_addr, 0, 0, 0) - tainted = bool(r0 != 0) - return - } - --func libc_issetugid_trampoline() -+var libc_issetugid_trampoline_addr uintptr - --//go:linkname libc_issetugid libc_issetugid - //go:cgo_import_dynamic libc_issetugid issetugid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Kqueue() (fd int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_kqueue_trampoline), 0, 0, 0) -+ r0, _, e1 := syscall_syscall(libc_kqueue_trampoline_addr, 0, 0, 0) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1411,9 +1480,8 @@ func Kqueue() (fd int, err error) { - return - } - --func libc_kqueue_trampoline() -+var libc_kqueue_trampoline_addr uintptr - --//go:linkname libc_kqueue libc_kqueue - //go:cgo_import_dynamic libc_kqueue kqueue "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1424,16 +1492,15 @@ func Lchown(path string, uid int, gid int) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_lchown_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) -+ _, _, e1 := syscall_syscall(libc_lchown_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_lchown_trampoline() -+var libc_lchown_trampoline_addr uintptr - --//go:linkname libc_lchown libc_lchown - //go:cgo_import_dynamic libc_lchown lchown "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1449,16 +1516,15 @@ func Link(path string, link string) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_link_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -+ _, _, e1 := syscall_syscall(libc_link_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_link_trampoline() -+var libc_link_trampoline_addr uintptr - --//go:linkname libc_link libc_link - //go:cgo_import_dynamic libc_link link "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1474,31 +1540,29 @@ func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err er - if err != nil { - return - } -- _, _, e1 := syscall_syscall6(funcPC(libc_linkat_trampoline), uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall6(libc_linkat_trampoline_addr, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_linkat_trampoline() -+var libc_linkat_trampoline_addr uintptr - --//go:linkname libc_linkat libc_linkat - //go:cgo_import_dynamic libc_linkat linkat "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Listen(s int, backlog int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_listen_trampoline), uintptr(s), uintptr(backlog), 0) -+ _, _, e1 := syscall_syscall(libc_listen_trampoline_addr, uintptr(s), uintptr(backlog), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_listen_trampoline() -+var libc_listen_trampoline_addr uintptr - --//go:linkname libc_listen libc_listen - //go:cgo_import_dynamic libc_listen listen "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1509,16 +1573,15 @@ func Mkdir(path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_mkdir_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_mkdir_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_mkdir_trampoline() -+var libc_mkdir_trampoline_addr uintptr - --//go:linkname libc_mkdir libc_mkdir - //go:cgo_import_dynamic libc_mkdir mkdir "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1529,16 +1592,15 @@ func Mkdirat(dirfd int, path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_mkdirat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) -+ _, _, e1 := syscall_syscall(libc_mkdirat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_mkdirat_trampoline() -+var libc_mkdirat_trampoline_addr uintptr - --//go:linkname libc_mkdirat libc_mkdirat - //go:cgo_import_dynamic libc_mkdirat mkdirat "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1549,16 +1611,15 @@ func Mkfifo(path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_mkfifo_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_mkfifo_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_mkfifo_trampoline() -+var libc_mkfifo_trampoline_addr uintptr - --//go:linkname libc_mkfifo libc_mkfifo - //go:cgo_import_dynamic libc_mkfifo mkfifo "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1569,27 +1630,50 @@ func Mknod(path string, mode uint32, dev int) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_mknod_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) -+ _, _, e1 := syscall_syscall(libc_mknod_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_mknod_trampoline() -+var libc_mknod_trampoline_addr uintptr - --//go:linkname libc_mknod libc_mknod - //go:cgo_import_dynamic libc_mknod mknod "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func Mount(fsType string, dir string, flags int, data unsafe.Pointer) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(fsType) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(dir) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall6(libc_mount_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(flags), uintptr(data), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+var libc_mount_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mount mount "/usr/lib/libSystem.B.dylib" -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Open(path string, mode int, perm uint32) (fd int, err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } -- r0, _, e1 := syscall_syscall(funcPC(libc_open_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm)) -+ r0, _, e1 := syscall_syscall(libc_open_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm)) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1597,9 +1681,8 @@ func Open(path string, mode int, perm uint32) (fd int, err error) { - return - } - --func libc_open_trampoline() -+var libc_open_trampoline_addr uintptr - --//go:linkname libc_open libc_open - //go:cgo_import_dynamic libc_open open "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1610,7 +1693,7 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) { - if err != nil { - return - } -- r0, _, e1 := syscall_syscall6(funcPC(libc_openat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_openat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1618,9 +1701,8 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) { - return - } - --func libc_openat_trampoline() -+var libc_openat_trampoline_addr uintptr - --//go:linkname libc_openat libc_openat - //go:cgo_import_dynamic libc_openat openat "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1631,7 +1713,7 @@ func Pathconf(path string, name int) (val int, err error) { - if err != nil { - return - } -- r0, _, e1 := syscall_syscall(funcPC(libc_pathconf_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(name), 0) -+ r0, _, e1 := syscall_syscall(libc_pathconf_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(name), 0) - val = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1639,21 +1721,20 @@ func Pathconf(path string, name int) (val int, err error) { - return - } - --func libc_pathconf_trampoline() -+var libc_pathconf_trampoline_addr uintptr - --//go:linkname libc_pathconf libc_pathconf - //go:cgo_import_dynamic libc_pathconf pathconf "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := syscall_syscall6(funcPC(libc_pread_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_pread_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1661,21 +1742,20 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - return - } - --func libc_pread_trampoline() -+var libc_pread_trampoline_addr uintptr - --//go:linkname libc_pread libc_pread - //go:cgo_import_dynamic libc_pread pread "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := syscall_syscall6(funcPC(libc_pwrite_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_pwrite_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1683,9 +1763,8 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) { - return - } - --func libc_pwrite_trampoline() -+var libc_pwrite_trampoline_addr uintptr - --//go:linkname libc_pwrite libc_pwrite - //go:cgo_import_dynamic libc_pwrite pwrite "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1697,7 +1776,7 @@ func read(fd int, p []byte) (n int, err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p))) -+ r0, _, e1 := syscall_syscall(libc_read_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1705,9 +1784,8 @@ func read(fd int, p []byte) (n int, err error) { - return - } - --func libc_read_trampoline() -+var libc_read_trampoline_addr uintptr - --//go:linkname libc_read libc_read - //go:cgo_import_dynamic libc_read read "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1724,7 +1802,7 @@ func Readlink(path string, buf []byte) (n int, err error) { - } else { - _p1 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := syscall_syscall(funcPC(libc_readlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf))) -+ r0, _, e1 := syscall_syscall(libc_readlink_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1732,9 +1810,8 @@ func Readlink(path string, buf []byte) (n int, err error) { - return - } - --func libc_readlink_trampoline() -+var libc_readlink_trampoline_addr uintptr - --//go:linkname libc_readlink libc_readlink - //go:cgo_import_dynamic libc_readlink readlink "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1751,7 +1828,7 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) { - } else { - _p1 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := syscall_syscall6(funcPC(libc_readlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_readlinkat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1759,9 +1836,8 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) { - return - } - --func libc_readlinkat_trampoline() -+var libc_readlinkat_trampoline_addr uintptr - --//go:linkname libc_readlinkat libc_readlinkat - //go:cgo_import_dynamic libc_readlinkat readlinkat "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1777,16 +1853,15 @@ func Rename(from string, to string) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_rename_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -+ _, _, e1 := syscall_syscall(libc_rename_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_rename_trampoline() -+var libc_rename_trampoline_addr uintptr - --//go:linkname libc_rename libc_rename - //go:cgo_import_dynamic libc_rename rename "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1802,16 +1877,15 @@ func Renameat(fromfd int, from string, tofd int, to string) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall6(funcPC(libc_renameat_trampoline), uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_renameat_trampoline_addr, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_renameat_trampoline() -+var libc_renameat_trampoline_addr uintptr - --//go:linkname libc_renameat libc_renameat - //go:cgo_import_dynamic libc_renameat renameat "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1822,16 +1896,15 @@ func Revoke(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_revoke_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_revoke_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_revoke_trampoline() -+var libc_revoke_trampoline_addr uintptr - --//go:linkname libc_revoke libc_revoke - //go:cgo_import_dynamic libc_revoke revoke "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1842,22 +1915,21 @@ func Rmdir(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_rmdir_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_rmdir_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_rmdir_trampoline() -+var libc_rmdir_trampoline_addr uintptr - --//go:linkname libc_rmdir libc_rmdir - //go:cgo_import_dynamic libc_rmdir rmdir "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_lseek_trampoline), uintptr(fd), uintptr(offset), uintptr(whence)) -+ r0, _, e1 := syscall_syscall(libc_lseek_trampoline_addr, uintptr(fd), uintptr(offset), uintptr(whence)) - newoffset = int64(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1865,15 +1937,14 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { - return - } - --func libc_lseek_trampoline() -+var libc_lseek_trampoline_addr uintptr - --//go:linkname libc_lseek libc_lseek - //go:cgo_import_dynamic libc_lseek lseek "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) { -- r0, _, e1 := syscall_syscall6(funcPC(libc_select_trampoline), uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0) -+ r0, _, e1 := syscall_syscall6(libc_select_trampoline_addr, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1881,54 +1952,50 @@ func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err - return - } - --func libc_select_trampoline() -+var libc_select_trampoline_addr uintptr - --//go:linkname libc_select libc_select - //go:cgo_import_dynamic libc_select select "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setegid(egid int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_setegid_trampoline), uintptr(egid), 0, 0) -+ _, _, e1 := syscall_syscall(libc_setegid_trampoline_addr, uintptr(egid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setegid_trampoline() -+var libc_setegid_trampoline_addr uintptr - --//go:linkname libc_setegid libc_setegid - //go:cgo_import_dynamic libc_setegid setegid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Seteuid(euid int) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_seteuid_trampoline), uintptr(euid), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_seteuid_trampoline_addr, uintptr(euid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_seteuid_trampoline() -+var libc_seteuid_trampoline_addr uintptr - --//go:linkname libc_seteuid libc_seteuid - //go:cgo_import_dynamic libc_seteuid seteuid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setgid(gid int) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setgid_trampoline), uintptr(gid), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_setgid_trampoline_addr, uintptr(gid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setgid_trampoline() -+var libc_setgid_trampoline_addr uintptr - --//go:linkname libc_setgid libc_setgid - //go:cgo_import_dynamic libc_setgid setgid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -1939,112 +2006,105 @@ func Setlogin(name string) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_setlogin_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_setlogin_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setlogin_trampoline() -+var libc_setlogin_trampoline_addr uintptr - --//go:linkname libc_setlogin libc_setlogin - //go:cgo_import_dynamic libc_setlogin setlogin "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setpgid(pid int, pgid int) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setpgid_trampoline), uintptr(pid), uintptr(pgid), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setpgid_trampoline_addr, uintptr(pid), uintptr(pgid), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setpgid_trampoline() -+var libc_setpgid_trampoline_addr uintptr - --//go:linkname libc_setpgid libc_setpgid - //go:cgo_import_dynamic libc_setpgid setpgid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setpriority(which int, who int, prio int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_setpriority_trampoline), uintptr(which), uintptr(who), uintptr(prio)) -+ _, _, e1 := syscall_syscall(libc_setpriority_trampoline_addr, uintptr(which), uintptr(who), uintptr(prio)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setpriority_trampoline() -+var libc_setpriority_trampoline_addr uintptr - --//go:linkname libc_setpriority libc_setpriority - //go:cgo_import_dynamic libc_setpriority setpriority "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setprivexec(flag int) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_setprivexec_trampoline), uintptr(flag), 0, 0) -+ _, _, e1 := syscall_syscall(libc_setprivexec_trampoline_addr, uintptr(flag), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setprivexec_trampoline() -+var libc_setprivexec_trampoline_addr uintptr - --//go:linkname libc_setprivexec libc_setprivexec - //go:cgo_import_dynamic libc_setprivexec setprivexec "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setregid(rgid int, egid int) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setregid_trampoline), uintptr(rgid), uintptr(egid), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setregid_trampoline_addr, uintptr(rgid), uintptr(egid), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setregid_trampoline() -+var libc_setregid_trampoline_addr uintptr - --//go:linkname libc_setregid libc_setregid - //go:cgo_import_dynamic libc_setregid setregid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setreuid(ruid int, euid int) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setreuid_trampoline), uintptr(ruid), uintptr(euid), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setreuid_trampoline_addr, uintptr(ruid), uintptr(euid), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setreuid_trampoline() -+var libc_setreuid_trampoline_addr uintptr - --//go:linkname libc_setreuid libc_setreuid - //go:cgo_import_dynamic libc_setreuid setreuid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setrlimit(which int, lim *Rlimit) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setrlimit_trampoline), uintptr(which), uintptr(unsafe.Pointer(lim)), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setrlimit_trampoline_addr, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setrlimit_trampoline() -+var libc_setrlimit_trampoline_addr uintptr - --//go:linkname libc_setrlimit libc_setrlimit - //go:cgo_import_dynamic libc_setrlimit setrlimit "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setsid() (pid int, err error) { -- r0, _, e1 := syscall_rawSyscall(funcPC(libc_setsid_trampoline), 0, 0, 0) -+ r0, _, e1 := syscall_rawSyscall(libc_setsid_trampoline_addr, 0, 0, 0) - pid = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -2052,39 +2112,36 @@ func Setsid() (pid int, err error) { - return - } - --func libc_setsid_trampoline() -+var libc_setsid_trampoline_addr uintptr - --//go:linkname libc_setsid libc_setsid - //go:cgo_import_dynamic libc_setsid setsid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Settimeofday(tp *Timeval) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_settimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_settimeofday_trampoline_addr, uintptr(unsafe.Pointer(tp)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_settimeofday_trampoline() -+var libc_settimeofday_trampoline_addr uintptr - --//go:linkname libc_settimeofday libc_settimeofday - //go:cgo_import_dynamic libc_settimeofday settimeofday "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setuid(uid int) (err error) { -- _, _, e1 := syscall_rawSyscall(funcPC(libc_setuid_trampoline), uintptr(uid), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_setuid_trampoline_addr, uintptr(uid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_setuid_trampoline() -+var libc_setuid_trampoline_addr uintptr - --//go:linkname libc_setuid libc_setuid - //go:cgo_import_dynamic libc_setuid setuid "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -2100,16 +2157,15 @@ func Symlink(path string, link string) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_symlink_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -+ _, _, e1 := syscall_syscall(libc_symlink_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_symlink_trampoline() -+var libc_symlink_trampoline_addr uintptr - --//go:linkname libc_symlink libc_symlink - //go:cgo_import_dynamic libc_symlink symlink "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -2125,31 +2181,29 @@ func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_symlinkat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1))) -+ _, _, e1 := syscall_syscall(libc_symlinkat_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1))) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_symlinkat_trampoline() -+var libc_symlinkat_trampoline_addr uintptr - --//go:linkname libc_symlinkat libc_symlinkat - //go:cgo_import_dynamic libc_symlinkat symlinkat "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Sync() (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_sync_trampoline), 0, 0, 0) -+ _, _, e1 := syscall_syscall(libc_sync_trampoline_addr, 0, 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_sync_trampoline() -+var libc_sync_trampoline_addr uintptr - --//go:linkname libc_sync libc_sync - //go:cgo_import_dynamic libc_sync sync "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -2160,29 +2214,27 @@ func Truncate(path string, length int64) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_truncate_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(length), 0) -+ _, _, e1 := syscall_syscall(libc_truncate_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_truncate_trampoline() -+var libc_truncate_trampoline_addr uintptr - --//go:linkname libc_truncate libc_truncate - //go:cgo_import_dynamic libc_truncate truncate "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Umask(newmask int) (oldmask int) { -- r0, _, _ := syscall_syscall(funcPC(libc_umask_trampoline), uintptr(newmask), 0, 0) -+ r0, _, _ := syscall_syscall(libc_umask_trampoline_addr, uintptr(newmask), 0, 0) - oldmask = int(r0) - return - } - --func libc_umask_trampoline() -+var libc_umask_trampoline_addr uintptr - --//go:linkname libc_umask libc_umask - //go:cgo_import_dynamic libc_umask umask "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -2193,16 +2245,15 @@ func Undelete(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_undelete_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_undelete_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_undelete_trampoline() -+var libc_undelete_trampoline_addr uintptr - --//go:linkname libc_undelete libc_undelete - //go:cgo_import_dynamic libc_undelete undelete "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -2213,16 +2264,15 @@ func Unlink(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_unlink_trampoline), uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_unlink_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_unlink_trampoline() -+var libc_unlink_trampoline_addr uintptr - --//go:linkname libc_unlink libc_unlink - //go:cgo_import_dynamic libc_unlink unlink "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -2233,16 +2283,15 @@ func Unlinkat(dirfd int, path string, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_unlinkat_trampoline), uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags)) -+ _, _, e1 := syscall_syscall(libc_unlinkat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_unlinkat_trampoline() -+var libc_unlinkat_trampoline_addr uintptr - --//go:linkname libc_unlinkat libc_unlinkat - //go:cgo_import_dynamic libc_unlinkat unlinkat "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -2253,16 +2302,15 @@ func Unmount(path string, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_unmount_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall(libc_unmount_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_unmount_trampoline() -+var libc_unmount_trampoline_addr uintptr - --//go:linkname libc_unmount libc_unmount - //go:cgo_import_dynamic libc_unmount unmount "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -2274,7 +2322,7 @@ func write(fd int, p []byte) (n int, err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(_p0), uintptr(len(p))) -+ r0, _, e1 := syscall_syscall(libc_write_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -2282,15 +2330,14 @@ func write(fd int, p []byte) (n int, err error) { - return - } - --func libc_write_trampoline() -+var libc_write_trampoline_addr uintptr - --//go:linkname libc_write libc_write - //go:cgo_import_dynamic libc_write write "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) { -- r0, _, e1 := syscall_syscall6(funcPC(libc_mmap_trampoline), uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos)) -+ r0, _, e1 := syscall_syscall6(libc_mmap_trampoline_addr, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos)) - ret = uintptr(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -2298,30 +2345,28 @@ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) ( - return - } - --func libc_mmap_trampoline() -+var libc_mmap_trampoline_addr uintptr - --//go:linkname libc_mmap libc_mmap - //go:cgo_import_dynamic libc_mmap mmap "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func munmap(addr uintptr, length uintptr) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_munmap_trampoline), uintptr(addr), uintptr(length), 0) -+ _, _, e1 := syscall_syscall(libc_munmap_trampoline_addr, uintptr(addr), uintptr(length), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_munmap_trampoline() -+var libc_munmap_trampoline_addr uintptr - --//go:linkname libc_munmap libc_munmap - //go:cgo_import_dynamic libc_munmap munmap "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func readlen(fd int, buf *byte, nbuf int) (n int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_read_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) -+ r0, _, e1 := syscall_syscall(libc_read_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -2332,7 +2377,7 @@ func readlen(fd int, buf *byte, nbuf int) (n int, err error) { - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func writelen(fd int, buf *byte, nbuf int) (n int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_write_trampoline), uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) -+ r0, _, e1 := syscall_syscall(libc_write_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -2342,34 +2387,16 @@ func writelen(fd int, buf *byte, nbuf int) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func gettimeofday(tp *Timeval) (sec int64, usec int32, err error) { -- r0, r1, e1 := syscall_rawSyscall(funcPC(libc_gettimeofday_trampoline), uintptr(unsafe.Pointer(tp)), 0, 0) -- sec = int64(r0) -- usec = int32(r1) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --func libc_gettimeofday_trampoline() -- --//go:linkname libc_gettimeofday libc_gettimeofday --//go:cgo_import_dynamic libc_gettimeofday gettimeofday "/usr/lib/libSystem.B.dylib" -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Fstat(fd int, stat *Stat_t) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fstat_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_fstat_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_fstat_trampoline() -+var libc_fstat_trampoline_addr uintptr - --//go:linkname libc_fstat libc_fstat - //go:cgo_import_dynamic libc_fstat fstat "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -2380,37 +2407,35 @@ func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall6(funcPC(libc_fstatat_trampoline), uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_fstatat_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_fstatat_trampoline() -+var libc_fstatat_trampoline_addr uintptr - --//go:linkname libc_fstatat libc_fstatat - //go:cgo_import_dynamic libc_fstatat fstatat "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fstatfs(fd int, stat *Statfs_t) (err error) { -- _, _, e1 := syscall_syscall(funcPC(libc_fstatfs_trampoline), uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_fstatfs_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_fstatfs_trampoline() -+var libc_fstatfs_trampoline_addr uintptr - --//go:linkname libc_fstatfs libc_fstatfs - //go:cgo_import_dynamic libc_fstatfs fstatfs "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) { -- r0, _, e1 := syscall_syscall(funcPC(libc_getfsstat_trampoline), uintptr(buf), uintptr(size), uintptr(flags)) -+ r0, _, e1 := syscall_syscall(libc_getfsstat_trampoline_addr, uintptr(buf), uintptr(size), uintptr(flags)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -2418,9 +2443,8 @@ func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) { - return - } - --func libc_getfsstat_trampoline() -+var libc_getfsstat_trampoline_addr uintptr - --//go:linkname libc_getfsstat libc_getfsstat - //go:cgo_import_dynamic libc_getfsstat getfsstat "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -2431,36 +2455,48 @@ func Lstat(path string, stat *Stat_t) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_lstat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_lstat_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_lstat_trampoline() -+var libc_lstat_trampoline_addr uintptr - --//go:linkname libc_lstat libc_lstat - //go:cgo_import_dynamic libc_lstat lstat "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func ptrace1(request int, pid int, addr uintptr, data uintptr) (err error) { -+ _, _, e1 := syscall_syscall6(libc_ptrace_trampoline_addr, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+var libc_ptrace_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_ptrace ptrace "/usr/lib/libSystem.B.dylib" -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Stat(path string, stat *Stat_t) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_stat_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_stat_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_stat_trampoline() -+var libc_stat_trampoline_addr uintptr - --//go:linkname libc_stat libc_stat - //go:cgo_import_dynamic libc_stat stat "/usr/lib/libSystem.B.dylib" - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -2471,14 +2507,13 @@ func Statfs(path string, stat *Statfs_t) (err error) { - if err != nil { - return - } -- _, _, e1 := syscall_syscall(funcPC(libc_statfs_trampoline), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_statfs_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - --func libc_statfs_trampoline() -+var libc_statfs_trampoline_addr uintptr - --//go:linkname libc_statfs libc_statfs - //go:cgo_import_dynamic libc_statfs statfs "/usr/lib/libSystem.B.dylib" -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s -index 40cce1b..e1f9204 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s -+++ b/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s -@@ -1,282 +1,889 @@ --// go run mkasm_darwin.go arm64 -+// go run mkasm.go darwin arm64 - // Code generated by the command above; DO NOT EDIT. - -+//go:build go1.12 - // +build go1.12 - - #include "textflag.h" --TEXT ·libc_getgroups_trampoline(SB),NOSPLIT,$0-0 -+ -+TEXT libc_getgroups_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getgroups(SB) --TEXT ·libc_setgroups_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getgroups_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getgroups_trampoline_addr(SB)/8, $libc_getgroups_trampoline<>(SB) -+ -+TEXT libc_setgroups_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setgroups(SB) --TEXT ·libc_wait4_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setgroups_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setgroups_trampoline_addr(SB)/8, $libc_setgroups_trampoline<>(SB) -+ -+TEXT libc_wait4_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_wait4(SB) --TEXT ·libc_accept_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_wait4_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_wait4_trampoline_addr(SB)/8, $libc_wait4_trampoline<>(SB) -+ -+TEXT libc_accept_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_accept(SB) --TEXT ·libc_bind_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_accept_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_accept_trampoline_addr(SB)/8, $libc_accept_trampoline<>(SB) -+ -+TEXT libc_bind_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_bind(SB) --TEXT ·libc_connect_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_bind_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_bind_trampoline_addr(SB)/8, $libc_bind_trampoline<>(SB) -+ -+TEXT libc_connect_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_connect(SB) --TEXT ·libc_socket_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_connect_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_connect_trampoline_addr(SB)/8, $libc_connect_trampoline<>(SB) -+ -+TEXT libc_socket_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_socket(SB) --TEXT ·libc_getsockopt_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_socket_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_socket_trampoline_addr(SB)/8, $libc_socket_trampoline<>(SB) -+ -+TEXT libc_getsockopt_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getsockopt(SB) --TEXT ·libc_setsockopt_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getsockopt_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getsockopt_trampoline_addr(SB)/8, $libc_getsockopt_trampoline<>(SB) -+ -+TEXT libc_setsockopt_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setsockopt(SB) --TEXT ·libc_getpeername_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setsockopt_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setsockopt_trampoline_addr(SB)/8, $libc_setsockopt_trampoline<>(SB) -+ -+TEXT libc_getpeername_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getpeername(SB) --TEXT ·libc_getsockname_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getpeername_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getpeername_trampoline_addr(SB)/8, $libc_getpeername_trampoline<>(SB) -+ -+TEXT libc_getsockname_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getsockname(SB) --TEXT ·libc_shutdown_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getsockname_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getsockname_trampoline_addr(SB)/8, $libc_getsockname_trampoline<>(SB) -+ -+TEXT libc_shutdown_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_shutdown(SB) --TEXT ·libc_socketpair_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_shutdown_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_shutdown_trampoline_addr(SB)/8, $libc_shutdown_trampoline<>(SB) -+ -+TEXT libc_socketpair_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_socketpair(SB) --TEXT ·libc_recvfrom_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_socketpair_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_socketpair_trampoline_addr(SB)/8, $libc_socketpair_trampoline<>(SB) -+ -+TEXT libc_recvfrom_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_recvfrom(SB) --TEXT ·libc_sendto_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_recvfrom_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_recvfrom_trampoline_addr(SB)/8, $libc_recvfrom_trampoline<>(SB) -+ -+TEXT libc_sendto_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_sendto(SB) --TEXT ·libc_recvmsg_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_sendto_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_sendto_trampoline_addr(SB)/8, $libc_sendto_trampoline<>(SB) -+ -+TEXT libc_recvmsg_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_recvmsg(SB) --TEXT ·libc_sendmsg_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_recvmsg_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_recvmsg_trampoline_addr(SB)/8, $libc_recvmsg_trampoline<>(SB) -+ -+TEXT libc_sendmsg_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_sendmsg(SB) --TEXT ·libc_kevent_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_sendmsg_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_sendmsg_trampoline_addr(SB)/8, $libc_sendmsg_trampoline<>(SB) -+ -+TEXT libc_kevent_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_kevent(SB) --TEXT ·libc_utimes_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_kevent_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_kevent_trampoline_addr(SB)/8, $libc_kevent_trampoline<>(SB) -+ -+TEXT libc_utimes_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_utimes(SB) --TEXT ·libc_futimes_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_utimes_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_utimes_trampoline_addr(SB)/8, $libc_utimes_trampoline<>(SB) -+ -+TEXT libc_futimes_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_futimes(SB) --TEXT ·libc_poll_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_futimes_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_futimes_trampoline_addr(SB)/8, $libc_futimes_trampoline<>(SB) -+ -+TEXT libc_poll_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_poll(SB) --TEXT ·libc_madvise_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_poll_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_poll_trampoline_addr(SB)/8, $libc_poll_trampoline<>(SB) -+ -+TEXT libc_madvise_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_madvise(SB) --TEXT ·libc_mlock_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_madvise_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_madvise_trampoline_addr(SB)/8, $libc_madvise_trampoline<>(SB) -+ -+TEXT libc_mlock_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_mlock(SB) --TEXT ·libc_mlockall_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_mlock_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mlock_trampoline_addr(SB)/8, $libc_mlock_trampoline<>(SB) -+ -+TEXT libc_mlockall_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_mlockall(SB) --TEXT ·libc_mprotect_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_mlockall_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mlockall_trampoline_addr(SB)/8, $libc_mlockall_trampoline<>(SB) -+ -+TEXT libc_mprotect_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_mprotect(SB) --TEXT ·libc_msync_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_mprotect_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mprotect_trampoline_addr(SB)/8, $libc_mprotect_trampoline<>(SB) -+ -+TEXT libc_msync_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_msync(SB) --TEXT ·libc_munlock_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_msync_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_msync_trampoline_addr(SB)/8, $libc_msync_trampoline<>(SB) -+ -+TEXT libc_munlock_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_munlock(SB) --TEXT ·libc_munlockall_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_munlock_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_munlock_trampoline_addr(SB)/8, $libc_munlock_trampoline<>(SB) -+ -+TEXT libc_munlockall_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_munlockall(SB) --TEXT ·libc_getattrlist_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_getattrlist(SB) --TEXT ·libc_pipe_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_munlockall_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_munlockall_trampoline_addr(SB)/8, $libc_munlockall_trampoline<>(SB) -+ -+TEXT libc_pipe_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_pipe(SB) --TEXT ·libc_getxattr_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_pipe_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_pipe_trampoline_addr(SB)/8, $libc_pipe_trampoline<>(SB) -+ -+TEXT libc_getxattr_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getxattr(SB) --TEXT ·libc_fgetxattr_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getxattr_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getxattr_trampoline_addr(SB)/8, $libc_getxattr_trampoline<>(SB) -+ -+TEXT libc_fgetxattr_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fgetxattr(SB) --TEXT ·libc_setxattr_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fgetxattr_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fgetxattr_trampoline_addr(SB)/8, $libc_fgetxattr_trampoline<>(SB) -+ -+TEXT libc_setxattr_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setxattr(SB) --TEXT ·libc_fsetxattr_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setxattr_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setxattr_trampoline_addr(SB)/8, $libc_setxattr_trampoline<>(SB) -+ -+TEXT libc_fsetxattr_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fsetxattr(SB) --TEXT ·libc_removexattr_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fsetxattr_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fsetxattr_trampoline_addr(SB)/8, $libc_fsetxattr_trampoline<>(SB) -+ -+TEXT libc_removexattr_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_removexattr(SB) --TEXT ·libc_fremovexattr_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_removexattr_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_removexattr_trampoline_addr(SB)/8, $libc_removexattr_trampoline<>(SB) -+ -+TEXT libc_fremovexattr_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fremovexattr(SB) --TEXT ·libc_listxattr_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fremovexattr_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fremovexattr_trampoline_addr(SB)/8, $libc_fremovexattr_trampoline<>(SB) -+ -+TEXT libc_listxattr_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_listxattr(SB) --TEXT ·libc_flistxattr_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_listxattr_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_listxattr_trampoline_addr(SB)/8, $libc_listxattr_trampoline<>(SB) -+ -+TEXT libc_flistxattr_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_flistxattr(SB) --TEXT ·libc_setattrlist_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_setattrlist(SB) --TEXT ·libc_fcntl_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_flistxattr_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_flistxattr_trampoline_addr(SB)/8, $libc_flistxattr_trampoline<>(SB) -+ -+TEXT libc_utimensat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_utimensat(SB) -+ -+GLOBL ·libc_utimensat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_utimensat_trampoline_addr(SB)/8, $libc_utimensat_trampoline<>(SB) -+ -+TEXT libc_fcntl_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fcntl(SB) --TEXT ·libc_kill_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fcntl_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fcntl_trampoline_addr(SB)/8, $libc_fcntl_trampoline<>(SB) -+ -+TEXT libc_kill_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_kill(SB) --TEXT ·libc_ioctl_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_kill_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_kill_trampoline_addr(SB)/8, $libc_kill_trampoline<>(SB) -+ -+TEXT libc_ioctl_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_ioctl(SB) --TEXT ·libc_sysctl_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_ioctl_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_ioctl_trampoline_addr(SB)/8, $libc_ioctl_trampoline<>(SB) -+ -+TEXT libc_sysctl_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_sysctl(SB) --TEXT ·libc_sendfile_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_sysctl_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_sysctl_trampoline_addr(SB)/8, $libc_sysctl_trampoline<>(SB) -+ -+TEXT libc_sendfile_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_sendfile(SB) --TEXT ·libc_access_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_sendfile_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_sendfile_trampoline_addr(SB)/8, $libc_sendfile_trampoline<>(SB) -+ -+TEXT libc_shmat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_shmat(SB) -+ -+GLOBL ·libc_shmat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_shmat_trampoline_addr(SB)/8, $libc_shmat_trampoline<>(SB) -+ -+TEXT libc_shmctl_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_shmctl(SB) -+ -+GLOBL ·libc_shmctl_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_shmctl_trampoline_addr(SB)/8, $libc_shmctl_trampoline<>(SB) -+ -+TEXT libc_shmdt_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_shmdt(SB) -+ -+GLOBL ·libc_shmdt_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_shmdt_trampoline_addr(SB)/8, $libc_shmdt_trampoline<>(SB) -+ -+TEXT libc_shmget_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_shmget(SB) -+ -+GLOBL ·libc_shmget_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_shmget_trampoline_addr(SB)/8, $libc_shmget_trampoline<>(SB) -+ -+TEXT libc_access_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_access(SB) --TEXT ·libc_adjtime_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_access_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_access_trampoline_addr(SB)/8, $libc_access_trampoline<>(SB) -+ -+TEXT libc_adjtime_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_adjtime(SB) --TEXT ·libc_chdir_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_adjtime_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_adjtime_trampoline_addr(SB)/8, $libc_adjtime_trampoline<>(SB) -+ -+TEXT libc_chdir_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_chdir(SB) --TEXT ·libc_chflags_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_chdir_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_chdir_trampoline_addr(SB)/8, $libc_chdir_trampoline<>(SB) -+ -+TEXT libc_chflags_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_chflags(SB) --TEXT ·libc_chmod_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_chflags_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_chflags_trampoline_addr(SB)/8, $libc_chflags_trampoline<>(SB) -+ -+TEXT libc_chmod_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_chmod(SB) --TEXT ·libc_chown_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_chmod_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_chmod_trampoline_addr(SB)/8, $libc_chmod_trampoline<>(SB) -+ -+TEXT libc_chown_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_chown(SB) --TEXT ·libc_chroot_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_chown_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_chown_trampoline_addr(SB)/8, $libc_chown_trampoline<>(SB) -+ -+TEXT libc_chroot_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_chroot(SB) --TEXT ·libc_clock_gettime_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_chroot_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_chroot_trampoline_addr(SB)/8, $libc_chroot_trampoline<>(SB) -+ -+TEXT libc_clock_gettime_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_clock_gettime(SB) --TEXT ·libc_close_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_clock_gettime_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_clock_gettime_trampoline_addr(SB)/8, $libc_clock_gettime_trampoline<>(SB) -+ -+TEXT libc_close_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_close(SB) --TEXT ·libc_dup_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_close_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_close_trampoline_addr(SB)/8, $libc_close_trampoline<>(SB) -+ -+TEXT libc_clonefile_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_clonefile(SB) -+ -+GLOBL ·libc_clonefile_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_clonefile_trampoline_addr(SB)/8, $libc_clonefile_trampoline<>(SB) -+ -+TEXT libc_clonefileat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_clonefileat(SB) -+ -+GLOBL ·libc_clonefileat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_clonefileat_trampoline_addr(SB)/8, $libc_clonefileat_trampoline<>(SB) -+ -+TEXT libc_dup_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_dup(SB) --TEXT ·libc_dup2_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_dup_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_dup_trampoline_addr(SB)/8, $libc_dup_trampoline<>(SB) -+ -+TEXT libc_dup2_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_dup2(SB) --TEXT ·libc_exchangedata_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_dup2_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_dup2_trampoline_addr(SB)/8, $libc_dup2_trampoline<>(SB) -+ -+TEXT libc_exchangedata_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_exchangedata(SB) --TEXT ·libc_exit_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_exchangedata_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_exchangedata_trampoline_addr(SB)/8, $libc_exchangedata_trampoline<>(SB) -+ -+TEXT libc_exit_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_exit(SB) --TEXT ·libc_faccessat_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_exit_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_exit_trampoline_addr(SB)/8, $libc_exit_trampoline<>(SB) -+ -+TEXT libc_faccessat_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_faccessat(SB) --TEXT ·libc_fchdir_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_faccessat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_faccessat_trampoline_addr(SB)/8, $libc_faccessat_trampoline<>(SB) -+ -+TEXT libc_fchdir_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fchdir(SB) --TEXT ·libc_fchflags_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fchdir_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fchdir_trampoline_addr(SB)/8, $libc_fchdir_trampoline<>(SB) -+ -+TEXT libc_fchflags_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fchflags(SB) --TEXT ·libc_fchmod_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fchflags_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fchflags_trampoline_addr(SB)/8, $libc_fchflags_trampoline<>(SB) -+ -+TEXT libc_fchmod_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fchmod(SB) --TEXT ·libc_fchmodat_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fchmod_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fchmod_trampoline_addr(SB)/8, $libc_fchmod_trampoline<>(SB) -+ -+TEXT libc_fchmodat_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fchmodat(SB) --TEXT ·libc_fchown_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fchmodat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fchmodat_trampoline_addr(SB)/8, $libc_fchmodat_trampoline<>(SB) -+ -+TEXT libc_fchown_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fchown(SB) --TEXT ·libc_fchownat_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fchown_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fchown_trampoline_addr(SB)/8, $libc_fchown_trampoline<>(SB) -+ -+TEXT libc_fchownat_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fchownat(SB) --TEXT ·libc_flock_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fchownat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fchownat_trampoline_addr(SB)/8, $libc_fchownat_trampoline<>(SB) -+ -+TEXT libc_fclonefileat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fclonefileat(SB) -+ -+GLOBL ·libc_fclonefileat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fclonefileat_trampoline_addr(SB)/8, $libc_fclonefileat_trampoline<>(SB) -+ -+TEXT libc_flock_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_flock(SB) --TEXT ·libc_fpathconf_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_flock_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_flock_trampoline_addr(SB)/8, $libc_flock_trampoline<>(SB) -+ -+TEXT libc_fpathconf_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fpathconf(SB) --TEXT ·libc_fsync_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fpathconf_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fpathconf_trampoline_addr(SB)/8, $libc_fpathconf_trampoline<>(SB) -+ -+TEXT libc_fsync_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fsync(SB) --TEXT ·libc_ftruncate_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fsync_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fsync_trampoline_addr(SB)/8, $libc_fsync_trampoline<>(SB) -+ -+TEXT libc_ftruncate_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_ftruncate(SB) --TEXT ·libc_getdtablesize_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_ftruncate_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_ftruncate_trampoline_addr(SB)/8, $libc_ftruncate_trampoline<>(SB) -+ -+TEXT libc_getcwd_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getcwd(SB) -+ -+GLOBL ·libc_getcwd_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getcwd_trampoline_addr(SB)/8, $libc_getcwd_trampoline<>(SB) -+ -+TEXT libc_getdtablesize_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getdtablesize(SB) --TEXT ·libc_getegid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getdtablesize_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getdtablesize_trampoline_addr(SB)/8, $libc_getdtablesize_trampoline<>(SB) -+ -+TEXT libc_getegid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getegid(SB) --TEXT ·libc_geteuid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getegid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getegid_trampoline_addr(SB)/8, $libc_getegid_trampoline<>(SB) -+ -+TEXT libc_geteuid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_geteuid(SB) --TEXT ·libc_getgid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_geteuid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_geteuid_trampoline_addr(SB)/8, $libc_geteuid_trampoline<>(SB) -+ -+TEXT libc_getgid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getgid(SB) --TEXT ·libc_getpgid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getgid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getgid_trampoline_addr(SB)/8, $libc_getgid_trampoline<>(SB) -+ -+TEXT libc_getpgid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getpgid(SB) --TEXT ·libc_getpgrp_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getpgid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getpgid_trampoline_addr(SB)/8, $libc_getpgid_trampoline<>(SB) -+ -+TEXT libc_getpgrp_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getpgrp(SB) --TEXT ·libc_getpid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getpgrp_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getpgrp_trampoline_addr(SB)/8, $libc_getpgrp_trampoline<>(SB) -+ -+TEXT libc_getpid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getpid(SB) --TEXT ·libc_getppid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getpid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getpid_trampoline_addr(SB)/8, $libc_getpid_trampoline<>(SB) -+ -+TEXT libc_getppid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getppid(SB) --TEXT ·libc_getpriority_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getppid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getppid_trampoline_addr(SB)/8, $libc_getppid_trampoline<>(SB) -+ -+TEXT libc_getpriority_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getpriority(SB) --TEXT ·libc_getrlimit_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getpriority_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getpriority_trampoline_addr(SB)/8, $libc_getpriority_trampoline<>(SB) -+ -+TEXT libc_getrlimit_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getrlimit(SB) --TEXT ·libc_getrusage_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getrlimit_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getrlimit_trampoline_addr(SB)/8, $libc_getrlimit_trampoline<>(SB) -+ -+TEXT libc_getrusage_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getrusage(SB) --TEXT ·libc_getsid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getrusage_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getrusage_trampoline_addr(SB)/8, $libc_getrusage_trampoline<>(SB) -+ -+TEXT libc_getsid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getsid(SB) --TEXT ·libc_getuid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getsid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getsid_trampoline_addr(SB)/8, $libc_getsid_trampoline<>(SB) -+ -+TEXT libc_gettimeofday_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_gettimeofday(SB) -+ -+GLOBL ·libc_gettimeofday_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_gettimeofday_trampoline_addr(SB)/8, $libc_gettimeofday_trampoline<>(SB) -+ -+TEXT libc_getuid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getuid(SB) --TEXT ·libc_issetugid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getuid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getuid_trampoline_addr(SB)/8, $libc_getuid_trampoline<>(SB) -+ -+TEXT libc_issetugid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_issetugid(SB) --TEXT ·libc_kqueue_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_issetugid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_issetugid_trampoline_addr(SB)/8, $libc_issetugid_trampoline<>(SB) -+ -+TEXT libc_kqueue_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_kqueue(SB) --TEXT ·libc_lchown_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_kqueue_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_kqueue_trampoline_addr(SB)/8, $libc_kqueue_trampoline<>(SB) -+ -+TEXT libc_lchown_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_lchown(SB) --TEXT ·libc_link_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_lchown_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_lchown_trampoline_addr(SB)/8, $libc_lchown_trampoline<>(SB) -+ -+TEXT libc_link_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_link(SB) --TEXT ·libc_linkat_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_link_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_link_trampoline_addr(SB)/8, $libc_link_trampoline<>(SB) -+ -+TEXT libc_linkat_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_linkat(SB) --TEXT ·libc_listen_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_linkat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_linkat_trampoline_addr(SB)/8, $libc_linkat_trampoline<>(SB) -+ -+TEXT libc_listen_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_listen(SB) --TEXT ·libc_mkdir_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_listen_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_listen_trampoline_addr(SB)/8, $libc_listen_trampoline<>(SB) -+ -+TEXT libc_mkdir_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_mkdir(SB) --TEXT ·libc_mkdirat_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_mkdir_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mkdir_trampoline_addr(SB)/8, $libc_mkdir_trampoline<>(SB) -+ -+TEXT libc_mkdirat_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_mkdirat(SB) --TEXT ·libc_mkfifo_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_mkdirat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mkdirat_trampoline_addr(SB)/8, $libc_mkdirat_trampoline<>(SB) -+ -+TEXT libc_mkfifo_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_mkfifo(SB) --TEXT ·libc_mknod_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_mkfifo_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mkfifo_trampoline_addr(SB)/8, $libc_mkfifo_trampoline<>(SB) -+ -+TEXT libc_mknod_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_mknod(SB) --TEXT ·libc_open_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_mknod_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mknod_trampoline_addr(SB)/8, $libc_mknod_trampoline<>(SB) -+ -+TEXT libc_mount_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mount(SB) -+ -+GLOBL ·libc_mount_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mount_trampoline_addr(SB)/8, $libc_mount_trampoline<>(SB) -+ -+TEXT libc_open_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_open(SB) --TEXT ·libc_openat_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_open_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_open_trampoline_addr(SB)/8, $libc_open_trampoline<>(SB) -+ -+TEXT libc_openat_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_openat(SB) --TEXT ·libc_pathconf_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_openat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_openat_trampoline_addr(SB)/8, $libc_openat_trampoline<>(SB) -+ -+TEXT libc_pathconf_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_pathconf(SB) --TEXT ·libc_pread_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_pathconf_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_pathconf_trampoline_addr(SB)/8, $libc_pathconf_trampoline<>(SB) -+ -+TEXT libc_pread_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_pread(SB) --TEXT ·libc_pwrite_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_pread_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_pread_trampoline_addr(SB)/8, $libc_pread_trampoline<>(SB) -+ -+TEXT libc_pwrite_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_pwrite(SB) --TEXT ·libc_read_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_pwrite_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_pwrite_trampoline_addr(SB)/8, $libc_pwrite_trampoline<>(SB) -+ -+TEXT libc_read_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_read(SB) --TEXT ·libc_readlink_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_read_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_read_trampoline_addr(SB)/8, $libc_read_trampoline<>(SB) -+ -+TEXT libc_readlink_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_readlink(SB) --TEXT ·libc_readlinkat_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_readlink_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_readlink_trampoline_addr(SB)/8, $libc_readlink_trampoline<>(SB) -+ -+TEXT libc_readlinkat_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_readlinkat(SB) --TEXT ·libc_rename_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_readlinkat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_readlinkat_trampoline_addr(SB)/8, $libc_readlinkat_trampoline<>(SB) -+ -+TEXT libc_rename_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_rename(SB) --TEXT ·libc_renameat_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_rename_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_rename_trampoline_addr(SB)/8, $libc_rename_trampoline<>(SB) -+ -+TEXT libc_renameat_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_renameat(SB) --TEXT ·libc_revoke_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_renameat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_renameat_trampoline_addr(SB)/8, $libc_renameat_trampoline<>(SB) -+ -+TEXT libc_revoke_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_revoke(SB) --TEXT ·libc_rmdir_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_revoke_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_revoke_trampoline_addr(SB)/8, $libc_revoke_trampoline<>(SB) -+ -+TEXT libc_rmdir_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_rmdir(SB) --TEXT ·libc_lseek_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_rmdir_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_rmdir_trampoline_addr(SB)/8, $libc_rmdir_trampoline<>(SB) -+ -+TEXT libc_lseek_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_lseek(SB) --TEXT ·libc_select_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_lseek_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_lseek_trampoline_addr(SB)/8, $libc_lseek_trampoline<>(SB) -+ -+TEXT libc_select_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_select(SB) --TEXT ·libc_setegid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_select_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_select_trampoline_addr(SB)/8, $libc_select_trampoline<>(SB) -+ -+TEXT libc_setegid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setegid(SB) --TEXT ·libc_seteuid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setegid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setegid_trampoline_addr(SB)/8, $libc_setegid_trampoline<>(SB) -+ -+TEXT libc_seteuid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_seteuid(SB) --TEXT ·libc_setgid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_seteuid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_seteuid_trampoline_addr(SB)/8, $libc_seteuid_trampoline<>(SB) -+ -+TEXT libc_setgid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setgid(SB) --TEXT ·libc_setlogin_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setgid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setgid_trampoline_addr(SB)/8, $libc_setgid_trampoline<>(SB) -+ -+TEXT libc_setlogin_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setlogin(SB) --TEXT ·libc_setpgid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setlogin_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setlogin_trampoline_addr(SB)/8, $libc_setlogin_trampoline<>(SB) -+ -+TEXT libc_setpgid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setpgid(SB) --TEXT ·libc_setpriority_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setpgid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setpgid_trampoline_addr(SB)/8, $libc_setpgid_trampoline<>(SB) -+ -+TEXT libc_setpriority_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setpriority(SB) --TEXT ·libc_setprivexec_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setpriority_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setpriority_trampoline_addr(SB)/8, $libc_setpriority_trampoline<>(SB) -+ -+TEXT libc_setprivexec_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setprivexec(SB) --TEXT ·libc_setregid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setprivexec_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setprivexec_trampoline_addr(SB)/8, $libc_setprivexec_trampoline<>(SB) -+ -+TEXT libc_setregid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setregid(SB) --TEXT ·libc_setreuid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setregid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setregid_trampoline_addr(SB)/8, $libc_setregid_trampoline<>(SB) -+ -+TEXT libc_setreuid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setreuid(SB) --TEXT ·libc_setrlimit_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setreuid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setreuid_trampoline_addr(SB)/8, $libc_setreuid_trampoline<>(SB) -+ -+TEXT libc_setrlimit_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setrlimit(SB) --TEXT ·libc_setsid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setrlimit_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setrlimit_trampoline_addr(SB)/8, $libc_setrlimit_trampoline<>(SB) -+ -+TEXT libc_setsid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setsid(SB) --TEXT ·libc_settimeofday_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setsid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setsid_trampoline_addr(SB)/8, $libc_setsid_trampoline<>(SB) -+ -+TEXT libc_settimeofday_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_settimeofday(SB) --TEXT ·libc_setuid_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_settimeofday_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_settimeofday_trampoline_addr(SB)/8, $libc_settimeofday_trampoline<>(SB) -+ -+TEXT libc_setuid_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_setuid(SB) --TEXT ·libc_symlink_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_setuid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setuid_trampoline_addr(SB)/8, $libc_setuid_trampoline<>(SB) -+ -+TEXT libc_symlink_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_symlink(SB) --TEXT ·libc_symlinkat_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_symlink_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_symlink_trampoline_addr(SB)/8, $libc_symlink_trampoline<>(SB) -+ -+TEXT libc_symlinkat_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_symlinkat(SB) --TEXT ·libc_sync_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_symlinkat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_symlinkat_trampoline_addr(SB)/8, $libc_symlinkat_trampoline<>(SB) -+ -+TEXT libc_sync_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_sync(SB) --TEXT ·libc_truncate_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_sync_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_sync_trampoline_addr(SB)/8, $libc_sync_trampoline<>(SB) -+ -+TEXT libc_truncate_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_truncate(SB) --TEXT ·libc_umask_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_truncate_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_truncate_trampoline_addr(SB)/8, $libc_truncate_trampoline<>(SB) -+ -+TEXT libc_umask_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_umask(SB) --TEXT ·libc_undelete_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_umask_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_umask_trampoline_addr(SB)/8, $libc_umask_trampoline<>(SB) -+ -+TEXT libc_undelete_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_undelete(SB) --TEXT ·libc_unlink_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_undelete_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_undelete_trampoline_addr(SB)/8, $libc_undelete_trampoline<>(SB) -+ -+TEXT libc_unlink_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_unlink(SB) --TEXT ·libc_unlinkat_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_unlink_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_unlink_trampoline_addr(SB)/8, $libc_unlink_trampoline<>(SB) -+ -+TEXT libc_unlinkat_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_unlinkat(SB) --TEXT ·libc_unmount_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_unlinkat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_unlinkat_trampoline_addr(SB)/8, $libc_unlinkat_trampoline<>(SB) -+ -+TEXT libc_unmount_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_unmount(SB) --TEXT ·libc_write_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_unmount_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_unmount_trampoline_addr(SB)/8, $libc_unmount_trampoline<>(SB) -+ -+TEXT libc_write_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_write(SB) --TEXT ·libc_mmap_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_write_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_write_trampoline_addr(SB)/8, $libc_write_trampoline<>(SB) -+ -+TEXT libc_mmap_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_mmap(SB) --TEXT ·libc_munmap_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_mmap_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mmap_trampoline_addr(SB)/8, $libc_mmap_trampoline<>(SB) -+ -+TEXT libc_munmap_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_munmap(SB) --TEXT ·libc_gettimeofday_trampoline(SB),NOSPLIT,$0-0 -- JMP libc_gettimeofday(SB) --TEXT ·libc_fstat_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_munmap_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_munmap_trampoline_addr(SB)/8, $libc_munmap_trampoline<>(SB) -+ -+TEXT libc_fstat_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fstat(SB) --TEXT ·libc_fstatat_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fstat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fstat_trampoline_addr(SB)/8, $libc_fstat_trampoline<>(SB) -+ -+TEXT libc_fstatat_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fstatat(SB) --TEXT ·libc_fstatfs_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fstatat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fstatat_trampoline_addr(SB)/8, $libc_fstatat_trampoline<>(SB) -+ -+TEXT libc_fstatfs_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_fstatfs(SB) --TEXT ·libc_getfsstat_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_fstatfs_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fstatfs_trampoline_addr(SB)/8, $libc_fstatfs_trampoline<>(SB) -+ -+TEXT libc_getfsstat_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_getfsstat(SB) --TEXT ·libc_lstat_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_getfsstat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getfsstat_trampoline_addr(SB)/8, $libc_getfsstat_trampoline<>(SB) -+ -+TEXT libc_lstat_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_lstat(SB) --TEXT ·libc_stat_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_lstat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_lstat_trampoline_addr(SB)/8, $libc_lstat_trampoline<>(SB) -+ -+TEXT libc_ptrace_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_ptrace(SB) -+ -+GLOBL ·libc_ptrace_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_ptrace_trampoline_addr(SB)/8, $libc_ptrace_trampoline<>(SB) -+ -+TEXT libc_stat_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_stat(SB) --TEXT ·libc_statfs_trampoline(SB),NOSPLIT,$0-0 -+ -+GLOBL ·libc_stat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_stat_trampoline_addr(SB)/8, $libc_stat_trampoline<>(SB) -+ -+TEXT libc_statfs_trampoline<>(SB),NOSPLIT,$0-0 - JMP libc_statfs(SB) -+ -+GLOBL ·libc_statfs_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_statfs_trampoline_addr(SB)/8, $libc_statfs_trampoline<>(SB) -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go -index fe1fdd7..1b6eedf 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go -@@ -1,6 +1,7 @@ - // go run mksyscall.go -dragonfly -tags dragonfly,amd64 syscall_bsd.go syscall_dragonfly.go syscall_dragonfly_amd64.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build dragonfly && amd64 - // +build dragonfly,amd64 - - package unix -@@ -214,22 +215,6 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) { -- var _p0 unsafe.Pointer -- if len(mib) > 0 { -- _p0 = unsafe.Pointer(&mib[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func utimes(path string, timeval *[2]Timeval) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) -@@ -378,6 +363,18 @@ func pipe() (r int, w int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func pipe2(p *[2]_C_int, flags int) (r int, w int, err error) { -+ r0, r1, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0) -+ r = int(r0) -+ w = int(r1) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func extpread(fd int, p []byte, flags int, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { -@@ -439,6 +436,22 @@ func ioctl(fd int, req uint, arg uintptr) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) { -+ var _p0 unsafe.Pointer -+ if len(mib) > 0 { -+ _p0 = unsafe.Pointer(&mib[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Access(path string, mode uint32) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_386.go b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_386.go -index 600f1d2..039c4aa 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_386.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_386.go -@@ -1,6 +1,7 @@ - // go run mksyscall.go -l32 -tags freebsd,386 syscall_bsd.go syscall_freebsd.go syscall_freebsd_386.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build freebsd && 386 - // +build freebsd,386 - - package unix -@@ -911,7 +912,7 @@ func Fpathconf(fd int, name int) (val int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func fstat(fd int, stat *stat_freebsd11_t) (err error) { -+func Fstat(fd int, stat *Stat_t) (err error) { - _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) -@@ -921,17 +922,7 @@ func fstat(fd int, stat *stat_freebsd11_t) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func fstat_freebsd12(fd int, stat *Stat_t) (err error) { -- _, _, e1 := Syscall(SYS_FSTAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func fstatat(fd int, path string, stat *stat_freebsd11_t, flags int) (err error) { -+func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { -@@ -946,22 +937,7 @@ func fstatat(fd int, path string, stat *stat_freebsd11_t, flags int) (err error) - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func fstatat_freebsd12(fd int, path string, stat *Stat_t, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_FSTATAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func fstatfs(fd int, stat *statfs_freebsd11_t) (err error) { -+func Fstatfs(fd int, stat *Statfs_t) (err error) { - _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) -@@ -971,16 +947,6 @@ func fstatfs(fd int, stat *statfs_freebsd11_t) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func fstatfs_freebsd12(fd int, stat *Statfs_t) (err error) { -- _, _, e1 := Syscall(SYS_FSTATFS_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Fsync(fd int) (err error) { - _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0) - if e1 != 0 { -@@ -1001,7 +967,7 @@ func Ftruncate(fd int, length int64) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) { -+func getdirentries(fd int, buf []byte, basep *uint64) (n int, err error) { - var _p0 unsafe.Pointer - if len(buf) > 0 { - _p0 = unsafe.Pointer(&buf[0]) -@@ -1018,23 +984,6 @@ func getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func getdirentries_freebsd12(fd int, buf []byte, basep *uint64) (n int, err error) { -- var _p0 unsafe.Pointer -- if len(buf) > 0 { -- _p0 = unsafe.Pointer(&buf[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := Syscall6(SYS_GETDIRENTRIES_FREEBSD12, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Getdtablesize() (size int) { - r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0) - size = int(r0) -@@ -1256,21 +1205,6 @@ func Listen(s int, backlog int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func lstat(path string, stat *stat_freebsd11_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_LSTAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Mkdir(path string, mode uint32) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) -@@ -1316,43 +1250,13 @@ func Mkfifo(path string, mode uint32) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func mknod(path string, mode uint32, dev int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_MKNOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func mknodat(fd int, path string, mode uint32, dev int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func mknodat_freebsd12(fd int, path string, mode uint32, dev uint64) (err error) { -+func Mknodat(fd int, path string, mode uint32, dev uint64) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_MKNODAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), uintptr(dev>>32), 0) -+ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), uintptr(dev>>32), 0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -1419,7 +1323,7 @@ func Pathconf(path string, name int) (val int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -1436,7 +1340,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -1752,22 +1656,7 @@ func Setuid(uid int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func stat(path string, stat *stat_freebsd11_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_STAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func statfs(path string, stat *statfs_freebsd11_t) (err error) { -+func Statfs(path string, stat *Statfs_t) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { -@@ -1782,21 +1671,6 @@ func statfs(path string, stat *statfs_freebsd11_t) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func statfs_freebsd12(path string, stat *Statfs_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_STATFS_FREEBSD12, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Symlink(path string, link string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go -index 064934b..0535d3c 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go -@@ -1,6 +1,7 @@ - // go run mksyscall.go -tags freebsd,amd64 syscall_bsd.go syscall_freebsd.go syscall_freebsd_amd64.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build freebsd && amd64 - // +build freebsd,amd64 - - package unix -@@ -911,7 +912,7 @@ func Fpathconf(fd int, name int) (val int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func fstat(fd int, stat *stat_freebsd11_t) (err error) { -+func Fstat(fd int, stat *Stat_t) (err error) { - _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) -@@ -921,17 +922,7 @@ func fstat(fd int, stat *stat_freebsd11_t) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func fstat_freebsd12(fd int, stat *Stat_t) (err error) { -- _, _, e1 := Syscall(SYS_FSTAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func fstatat(fd int, path string, stat *stat_freebsd11_t, flags int) (err error) { -+func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { -@@ -946,22 +937,7 @@ func fstatat(fd int, path string, stat *stat_freebsd11_t, flags int) (err error) - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func fstatat_freebsd12(fd int, path string, stat *Stat_t, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_FSTATAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func fstatfs(fd int, stat *statfs_freebsd11_t) (err error) { -+func Fstatfs(fd int, stat *Statfs_t) (err error) { - _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) -@@ -971,16 +947,6 @@ func fstatfs(fd int, stat *statfs_freebsd11_t) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func fstatfs_freebsd12(fd int, stat *Statfs_t) (err error) { -- _, _, e1 := Syscall(SYS_FSTATFS_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Fsync(fd int) (err error) { - _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0) - if e1 != 0 { -@@ -1001,7 +967,7 @@ func Ftruncate(fd int, length int64) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) { -+func getdirentries(fd int, buf []byte, basep *uint64) (n int, err error) { - var _p0 unsafe.Pointer - if len(buf) > 0 { - _p0 = unsafe.Pointer(&buf[0]) -@@ -1018,23 +984,6 @@ func getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func getdirentries_freebsd12(fd int, buf []byte, basep *uint64) (n int, err error) { -- var _p0 unsafe.Pointer -- if len(buf) > 0 { -- _p0 = unsafe.Pointer(&buf[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := Syscall6(SYS_GETDIRENTRIES_FREEBSD12, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Getdtablesize() (size int) { - r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0) - size = int(r0) -@@ -1256,21 +1205,6 @@ func Listen(s int, backlog int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func lstat(path string, stat *stat_freebsd11_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_LSTAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Mkdir(path string, mode uint32) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) -@@ -1316,22 +1250,7 @@ func Mkfifo(path string, mode uint32) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func mknod(path string, mode uint32, dev int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_MKNOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func mknodat(fd int, path string, mode uint32, dev int) (err error) { -+func Mknodat(fd int, path string, mode uint32, dev uint64) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { -@@ -1346,21 +1265,6 @@ func mknodat(fd int, path string, mode uint32, dev int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func mknodat_freebsd12(fd int, path string, mode uint32, dev uint64) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_MKNODAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Nanosleep(time *Timespec, leftover *Timespec) (err error) { - _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0) - if e1 != 0 { -@@ -1419,7 +1323,7 @@ func Pathconf(path string, name int) (val int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -1436,7 +1340,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -1752,22 +1656,7 @@ func Setuid(uid int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func stat(path string, stat *stat_freebsd11_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_STAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func statfs(path string, stat *statfs_freebsd11_t) (err error) { -+func Statfs(path string, stat *Statfs_t) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { -@@ -1782,21 +1671,6 @@ func statfs(path string, stat *statfs_freebsd11_t) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func statfs_freebsd12(path string, stat *Statfs_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_STATFS_FREEBSD12, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Symlink(path string, link string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm.go b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm.go -index 31d2c46..1018b52 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm.go -@@ -1,6 +1,7 @@ - // go run mksyscall.go -l32 -arm -tags freebsd,arm syscall_bsd.go syscall_freebsd.go syscall_freebsd_arm.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build freebsd && arm - // +build freebsd,arm - - package unix -@@ -350,22 +351,6 @@ func Munlockall() (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) { -- var _p0 unsafe.Pointer -- if len(mib) > 0 { -- _p0 = unsafe.Pointer(&mib[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func pipe2(p *[2]_C_int, flags int) (err error) { - _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0) - if e1 != 0 { -@@ -403,6 +388,22 @@ func ioctl(fd int, req uint, arg uintptr) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) { -+ var _p0 unsafe.Pointer -+ if len(mib) > 0 { -+ _p0 = unsafe.Pointer(&mib[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func ptrace(request int, pid int, addr uintptr, data int) (err error) { - _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0) - if e1 != 0 { -@@ -911,7 +912,7 @@ func Fpathconf(fd int, name int) (val int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func fstat(fd int, stat *stat_freebsd11_t) (err error) { -+func Fstat(fd int, stat *Stat_t) (err error) { - _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) -@@ -921,17 +922,7 @@ func fstat(fd int, stat *stat_freebsd11_t) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func fstat_freebsd12(fd int, stat *Stat_t) (err error) { -- _, _, e1 := Syscall(SYS_FSTAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func fstatat(fd int, path string, stat *stat_freebsd11_t, flags int) (err error) { -+func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { -@@ -946,22 +937,7 @@ func fstatat(fd int, path string, stat *stat_freebsd11_t, flags int) (err error) - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func fstatat_freebsd12(fd int, path string, stat *Stat_t, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_FSTATAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func fstatfs(fd int, stat *statfs_freebsd11_t) (err error) { -+func Fstatfs(fd int, stat *Statfs_t) (err error) { - _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) -@@ -971,16 +947,6 @@ func fstatfs(fd int, stat *statfs_freebsd11_t) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func fstatfs_freebsd12(fd int, stat *Statfs_t) (err error) { -- _, _, e1 := Syscall(SYS_FSTATFS_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Fsync(fd int) (err error) { - _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0) - if e1 != 0 { -@@ -1001,7 +967,7 @@ func Ftruncate(fd int, length int64) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) { -+func getdirentries(fd int, buf []byte, basep *uint64) (n int, err error) { - var _p0 unsafe.Pointer - if len(buf) > 0 { - _p0 = unsafe.Pointer(&buf[0]) -@@ -1018,23 +984,6 @@ func getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func getdirentries_freebsd12(fd int, buf []byte, basep *uint64) (n int, err error) { -- var _p0 unsafe.Pointer -- if len(buf) > 0 { -- _p0 = unsafe.Pointer(&buf[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := Syscall6(SYS_GETDIRENTRIES_FREEBSD12, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Getdtablesize() (size int) { - r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0) - size = int(r0) -@@ -1256,21 +1205,6 @@ func Listen(s int, backlog int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func lstat(path string, stat *stat_freebsd11_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_LSTAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Mkdir(path string, mode uint32) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) -@@ -1316,43 +1250,13 @@ func Mkfifo(path string, mode uint32) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func mknod(path string, mode uint32, dev int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_MKNOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func mknodat(fd int, path string, mode uint32, dev int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func mknodat_freebsd12(fd int, path string, mode uint32, dev uint64) (err error) { -+func Mknodat(fd int, path string, mode uint32, dev uint64) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_MKNODAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0) -+ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0, uintptr(dev), uintptr(dev>>32)) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -1419,7 +1323,7 @@ func Pathconf(path string, name int) (val int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -1436,7 +1340,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -1752,22 +1656,7 @@ func Setuid(uid int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func stat(path string, stat *stat_freebsd11_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_STAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func statfs(path string, stat *statfs_freebsd11_t) (err error) { -+func Statfs(path string, stat *Statfs_t) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { -@@ -1782,21 +1671,6 @@ func statfs(path string, stat *statfs_freebsd11_t) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func statfs_freebsd12(path string, stat *Statfs_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_STATFS_FREEBSD12, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Symlink(path string, link string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm64.go b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm64.go -index 4adaaa5..3802f4b 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm64.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_arm64.go -@@ -1,6 +1,7 @@ - // go run mksyscall.go -tags freebsd,arm64 syscall_bsd.go syscall_freebsd.go syscall_freebsd_arm64.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build freebsd && arm64 - // +build freebsd,arm64 - - package unix -@@ -911,7 +912,7 @@ func Fpathconf(fd int, name int) (val int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func fstat(fd int, stat *stat_freebsd11_t) (err error) { -+func Fstat(fd int, stat *Stat_t) (err error) { - _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) -@@ -921,17 +922,7 @@ func fstat(fd int, stat *stat_freebsd11_t) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func fstat_freebsd12(fd int, stat *Stat_t) (err error) { -- _, _, e1 := Syscall(SYS_FSTAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func fstatat(fd int, path string, stat *stat_freebsd11_t, flags int) (err error) { -+func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { -@@ -946,22 +937,7 @@ func fstatat(fd int, path string, stat *stat_freebsd11_t, flags int) (err error) - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func fstatat_freebsd12(fd int, path string, stat *Stat_t, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_FSTATAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func fstatfs(fd int, stat *statfs_freebsd11_t) (err error) { -+func Fstatfs(fd int, stat *Statfs_t) (err error) { - _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) -@@ -971,16 +947,6 @@ func fstatfs(fd int, stat *statfs_freebsd11_t) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func fstatfs_freebsd12(fd int, stat *Statfs_t) (err error) { -- _, _, e1 := Syscall(SYS_FSTATFS_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Fsync(fd int) (err error) { - _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0) - if e1 != 0 { -@@ -1001,7 +967,7 @@ func Ftruncate(fd int, length int64) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) { -+func getdirentries(fd int, buf []byte, basep *uint64) (n int, err error) { - var _p0 unsafe.Pointer - if len(buf) > 0 { - _p0 = unsafe.Pointer(&buf[0]) -@@ -1018,23 +984,6 @@ func getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func getdirentries_freebsd12(fd int, buf []byte, basep *uint64) (n int, err error) { -- var _p0 unsafe.Pointer -- if len(buf) > 0 { -- _p0 = unsafe.Pointer(&buf[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := Syscall6(SYS_GETDIRENTRIES_FREEBSD12, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Getdtablesize() (size int) { - r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0) - size = int(r0) -@@ -1256,21 +1205,6 @@ func Listen(s int, backlog int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func lstat(path string, stat *stat_freebsd11_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_LSTAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Mkdir(path string, mode uint32) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) -@@ -1316,22 +1250,7 @@ func Mkfifo(path string, mode uint32) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func mknod(path string, mode uint32, dev int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_MKNOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func mknodat(fd int, path string, mode uint32, dev int) (err error) { -+func Mknodat(fd int, path string, mode uint32, dev uint64) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { -@@ -1346,21 +1265,6 @@ func mknodat(fd int, path string, mode uint32, dev int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func mknodat_freebsd12(fd int, path string, mode uint32, dev uint64) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_MKNODAT_FREEBSD12, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Nanosleep(time *Timespec, leftover *Timespec) (err error) { - _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0) - if e1 != 0 { -@@ -1419,7 +1323,7 @@ func Pathconf(path string, name int) (val int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -1436,7 +1340,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -1752,22 +1656,7 @@ func Setuid(uid int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func stat(path string, stat *stat_freebsd11_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_STAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func statfs(path string, stat *statfs_freebsd11_t) (err error) { -+func Statfs(path string, stat *Statfs_t) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { -@@ -1782,21 +1671,6 @@ func statfs(path string, stat *statfs_freebsd11_t) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func statfs_freebsd12(path string, stat *Statfs_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_STATFS_FREEBSD12, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Symlink(path string, link string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_11.go b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_riscv64.go -similarity index 82% -rename from vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_11.go -rename to vendor/golang.org/x/sys/unix/zsyscall_freebsd_riscv64.go -index f8e5c37..8a2db7d 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.1_11.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_freebsd_riscv64.go -@@ -1,7 +1,8 @@ --// go run mksyscall.go -tags darwin,amd64,!go1.12 syscall_bsd.go syscall_darwin.go syscall_darwin_amd64.1_11.go syscall_darwin_amd64.go -+// go run mksyscall.go -tags freebsd,riscv64 syscall_bsd.go syscall_freebsd.go syscall_freebsd_riscv64.go - // Code generated by the command above; see README.md. DO NOT EDIT. - --// +build darwin,amd64,!go1.12 -+//go:build freebsd && riscv64 -+// +build freebsd,riscv64 - - package unix - -@@ -350,8 +351,8 @@ func Munlockall() (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) { -- _, _, e1 := Syscall6(SYS_GETATTRLIST, uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0) -+func pipe2(p *[2]_C_int, flags int) (err error) { -+ _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -360,10 +361,15 @@ func getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintp - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func pipe() (r int, w int, err error) { -- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0) -- r = int(r0) -- w = int(r1) -+func Getcwd(buf []byte) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(buf) > 0 { -+ _p0 = unsafe.Pointer(&buf[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0) -+ n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -372,19 +378,24 @@ func pipe() (r int, w int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func getxattr(path string, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -+func ioctl(fd int, req uint, arg uintptr) (err error) { -+ _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg)) -+ if e1 != 0 { -+ err = errnoErr(e1) - } -- var _p1 *byte -- _p1, err = BytePtrFromString(attr) -- if err != nil { -- return -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) { -+ var _p0 unsafe.Pointer -+ if len(mib) > 0 { -+ _p0 = unsafe.Pointer(&mib[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) -- sz = int(r0) -+ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -393,14 +404,8 @@ func getxattr(path string, attr string, dest *byte, size int, position uint32, o - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) -- sz = int(r0) -+func ptrace(request int, pid int, addr uintptr, data int) (err error) { -+ _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -409,18 +414,23 @@ func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, optio - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func setxattr(path string, attr string, data *byte, size int, position uint32, options int) (err error) { -+func Access(path string, mode uint32) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } -- var _p1 *byte -- _p1, err = BytePtrFromString(attr) -- if err != nil { -- return -+ _, _, e1 := Syscall(SYS_ACCESS, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) - } -- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Adjtime(delta *Timeval, olddelta *Timeval) (err error) { -+ _, _, e1 := Syscall(SYS_ADJTIME, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -429,13 +439,18 @@ func setxattr(path string, attr string, data *byte, size int, position uint32, o - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func fsetxattr(fd int, attr string, data *byte, size int, position uint32, options int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(attr) -- if err != nil { -- return -+func CapEnter() (err error) { -+ _, _, e1 := Syscall(SYS_CAP_ENTER, 0, 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) - } -- _, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func capRightsGet(version int, fd int, rightsp *CapRights) (err error) { -+ _, _, e1 := Syscall(SYS___CAP_RIGHTS_GET, uintptr(version), uintptr(fd), uintptr(unsafe.Pointer(rightsp))) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -444,18 +459,23 @@ func fsetxattr(fd int, attr string, data *byte, size int, position uint32, optio - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func removexattr(path string, attr string, options int) (err error) { -+func capRightsLimit(fd int, rightsp *CapRights) (err error) { -+ _, _, e1 := Syscall(SYS_CAP_RIGHTS_LIMIT, uintptr(fd), uintptr(unsafe.Pointer(rightsp)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Chdir(path string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } -- var _p1 *byte -- _p1, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) -+ _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -464,13 +484,13 @@ func removexattr(path string, attr string, options int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func fremovexattr(fd int, attr string, options int) (err error) { -+func Chflags(path string, flags int) (err error) { - var _p0 *byte -- _p0, err = BytePtrFromString(attr) -+ _p0, err = BytePtrFromString(path) - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options)) -+ _, _, e1 := Syscall(SYS_CHFLAGS, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -479,14 +499,13 @@ func fremovexattr(fd int, attr string, options int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func listxattr(path string, dest *byte, size int, options int) (sz int, err error) { -+func Chmod(path string, mode uint32) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } -- r0, _, e1 := Syscall6(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) -- sz = int(r0) -+ _, _, e1 := Syscall(SYS_CHMOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -495,9 +514,13 @@ func listxattr(path string, dest *byte, size int, options int) (sz int, err erro - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) { -- r0, _, e1 := Syscall6(SYS_FLISTXATTR, uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) -- sz = int(r0) -+func Chown(path string, uid int, gid int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_CHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -506,8 +529,13 @@ func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) { -- _, _, e1 := Syscall6(SYS_SETATTRLIST, uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0) -+func Chroot(path string) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -516,9 +544,8 @@ func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintp - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func fcntl(fd int, cmd int, arg int) (val int, err error) { -- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg)) -- val = int(r0) -+func Close(fd int) (err error) { -+ _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -527,8 +554,9 @@ func fcntl(fd int, cmd int, arg int) (val int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func kill(pid int, signum int, posix int) (err error) { -- _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), uintptr(posix)) -+func Dup(fd int) (nfd int, err error) { -+ r0, _, e1 := Syscall(SYS_DUP, uintptr(fd), 0, 0) -+ nfd = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -537,8 +565,8 @@ func kill(pid int, signum int, posix int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func ioctl(fd int, req uint, arg uintptr) (err error) { -- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg)) -+func Dup2(from int, to int) (err error) { -+ _, _, e1 := Syscall(SYS_DUP2, uintptr(from), uintptr(to), 0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -547,14 +575,21 @@ func ioctl(fd int, req uint, arg uintptr) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) { -- var _p0 unsafe.Pointer -- if len(mib) > 0 { -- _p0 = unsafe.Pointer(&mib[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -+func Exit(code int) { -+ Syscall(SYS_EXIT, uintptr(code), 0, 0) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func ExtattrGetFd(fd int, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(attrname) -+ if err != nil { -+ return - } -- _, _, e1 := Syscall6(SYS_SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) -+ r0, _, e1 := Syscall6(SYS_EXTATTR_GET_FD, uintptr(fd), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p0)), uintptr(data), uintptr(nbytes), 0) -+ ret = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -563,8 +598,14 @@ func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) { -- _, _, e1 := Syscall6(SYS_SENDFILE, uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags)) -+func ExtattrSetFd(fd int, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(attrname) -+ if err != nil { -+ return -+ } -+ r0, _, e1 := Syscall6(SYS_EXTATTR_SET_FD, uintptr(fd), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p0)), uintptr(data), uintptr(nbytes), 0) -+ ret = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -573,13 +614,13 @@ func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Access(path string, mode uint32) (err error) { -+func ExtattrDeleteFd(fd int, attrnamespace int, attrname string) (err error) { - var _p0 *byte -- _p0, err = BytePtrFromString(path) -+ _p0, err = BytePtrFromString(attrname) - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_ACCESS, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ _, _, e1 := Syscall(SYS_EXTATTR_DELETE_FD, uintptr(fd), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p0))) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -588,8 +629,9 @@ func Access(path string, mode uint32) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Adjtime(delta *Timeval, olddelta *Timeval) (err error) { -- _, _, e1 := Syscall(SYS_ADJTIME, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0) -+func ExtattrListFd(fd int, attrnamespace int, data uintptr, nbytes int) (ret int, err error) { -+ r0, _, e1 := Syscall6(SYS_EXTATTR_LIST_FD, uintptr(fd), uintptr(attrnamespace), uintptr(data), uintptr(nbytes), 0, 0) -+ ret = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -598,13 +640,19 @@ func Adjtime(delta *Timeval, olddelta *Timeval) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Chdir(path string) (err error) { -+func ExtattrGetFile(file string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) { - var _p0 *byte -- _p0, err = BytePtrFromString(path) -+ _p0, err = BytePtrFromString(file) - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ var _p1 *byte -+ _p1, err = BytePtrFromString(attrname) -+ if err != nil { -+ return -+ } -+ r0, _, e1 := Syscall6(SYS_EXTATTR_GET_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0) -+ ret = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -613,13 +661,19 @@ func Chdir(path string) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Chflags(path string, flags int) (err error) { -+func ExtattrSetFile(file string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) { - var _p0 *byte -- _p0, err = BytePtrFromString(path) -+ _p0, err = BytePtrFromString(file) - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_CHFLAGS, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -+ var _p1 *byte -+ _p1, err = BytePtrFromString(attrname) -+ if err != nil { -+ return -+ } -+ r0, _, e1 := Syscall6(SYS_EXTATTR_SET_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0) -+ ret = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -628,13 +682,18 @@ func Chflags(path string, flags int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Chmod(path string, mode uint32) (err error) { -+func ExtattrDeleteFile(file string, attrnamespace int, attrname string) (err error) { - var _p0 *byte -- _p0, err = BytePtrFromString(path) -+ _p0, err = BytePtrFromString(file) - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_CHMOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ var _p1 *byte -+ _p1, err = BytePtrFromString(attrname) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_EXTATTR_DELETE_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1))) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -643,13 +702,14 @@ func Chmod(path string, mode uint32) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Chown(path string, uid int, gid int) (err error) { -+func ExtattrListFile(file string, attrnamespace int, data uintptr, nbytes int) (ret int, err error) { - var _p0 *byte -- _p0, err = BytePtrFromString(path) -+ _p0, err = BytePtrFromString(file) - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_CHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) -+ r0, _, e1 := Syscall6(SYS_EXTATTR_LIST_FILE, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(data), uintptr(nbytes), 0, 0) -+ ret = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -658,23 +718,19 @@ func Chown(path string, uid int, gid int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Chroot(path string) (err error) { -+func ExtattrGetLink(link string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) { - var _p0 *byte -- _p0, err = BytePtrFromString(path) -+ _p0, err = BytePtrFromString(link) - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -+ var _p1 *byte -+ _p1, err = BytePtrFromString(attrname) -+ if err != nil { -+ return - } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Close(fd int) (err error) { -- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0) -+ r0, _, e1 := Syscall6(SYS_EXTATTR_GET_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0) -+ ret = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -683,9 +739,19 @@ func Close(fd int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Dup(fd int) (nfd int, err error) { -- r0, _, e1 := Syscall(SYS_DUP, uintptr(fd), 0, 0) -- nfd = int(r0) -+func ExtattrSetLink(link string, attrnamespace int, attrname string, data uintptr, nbytes int) (ret int, err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(link) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(attrname) -+ if err != nil { -+ return -+ } -+ r0, _, e1 := Syscall6(SYS_EXTATTR_SET_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1)), uintptr(data), uintptr(nbytes), 0) -+ ret = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -694,8 +760,18 @@ func Dup(fd int) (nfd int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Dup2(from int, to int) (err error) { -- _, _, e1 := Syscall(SYS_DUP2, uintptr(from), uintptr(to), 0) -+func ExtattrDeleteLink(link string, attrnamespace int, attrname string) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(link) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(attrname) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_EXTATTR_DELETE_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(unsafe.Pointer(_p1))) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -704,18 +780,14 @@ func Dup2(from int, to int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Exchangedata(path1 string, path2 string, options int) (err error) { -+func ExtattrListLink(link string, attrnamespace int, data uintptr, nbytes int) (ret int, err error) { - var _p0 *byte -- _p0, err = BytePtrFromString(path1) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(path2) -+ _p0, err = BytePtrFromString(link) - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_EXCHANGEDATA, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) -+ r0, _, e1 := Syscall6(SYS_EXTATTR_LIST_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(attrnamespace), uintptr(data), uintptr(nbytes), 0, 0) -+ ret = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -724,8 +796,11 @@ func Exchangedata(path1 string, path2 string, options int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Exit(code int) { -- Syscall(SYS_EXIT, uintptr(code), 0, 0) -+func Fadvise(fd int, offset int64, length int64, advice int) (err error) { -+ _, _, e1 := Syscall6(SYS_POSIX_FADVISE, uintptr(fd), uintptr(offset), uintptr(length), uintptr(advice), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } - return - } - -@@ -837,6 +912,41 @@ func Fpathconf(fd int, name int) (val int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func Fstat(fd int, stat *Stat_t) (err error) { -+ _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fstatfs(fd int, stat *Statfs_t) (err error) { -+ _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Fsync(fd int) (err error) { - _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0) - if e1 != 0 { -@@ -857,6 +967,23 @@ func Ftruncate(fd int, length int64) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func getdirentries(fd int, buf []byte, basep *uint64) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(buf) > 0 { -+ _p0 = unsafe.Pointer(&buf[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall6(SYS_GETDIRENTRIES, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Getdtablesize() (size int) { - r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0) - size = int(r0) -@@ -966,6 +1093,16 @@ func Getsid(pid int) (sid int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func Gettimeofday(tv *Timeval) (err error) { -+ _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Getuid() (uid int) { - r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0) - uid = int(r0) -@@ -975,13 +1112,23 @@ func Getuid() (uid int) { - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Issetugid() (tainted bool) { -- r0, _, _ := RawSyscall(SYS_ISSETUGID, 0, 0, 0) -+ r0, _, _ := Syscall(SYS_ISSETUGID, 0, 0, 0) - tainted = bool(r0 != 0) - return - } - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func Kill(pid int, signum syscall.Signal) (err error) { -+ _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Kqueue() (fd int, err error) { - r0, _, e1 := Syscall(SYS_KQUEUE, 0, 0, 0) - fd = int(r0) -@@ -1103,13 +1250,23 @@ func Mkfifo(path string, mode uint32) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Mknod(path string, mode uint32, dev int) (err error) { -+func Mknodat(fd int, path string, mode uint32, dev uint64) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_MKNOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) -+ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Nanosleep(time *Timespec, leftover *Timespec) (err error) { -+ _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -1134,13 +1291,13 @@ func Open(path string, mode int, perm uint32) (fd int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) { -+func Openat(fdat int, path string, mode int, perm uint32) (fd int, err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } -- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0) -+ r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(fdat), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1166,7 +1323,7 @@ func Pathconf(path string, name int) (val int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -1183,7 +1340,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -1354,7 +1511,7 @@ func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setegid(egid int) (err error) { -- _, _, e1 := Syscall(SYS_SETEGID, uintptr(egid), 0, 0) -+ _, _, e1 := RawSyscall(SYS_SETEGID, uintptr(egid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -1418,8 +1575,18 @@ func Setpriority(which int, who int, prio int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setprivexec(flag int) (err error) { -- _, _, e1 := Syscall(SYS_SETPRIVEXEC, uintptr(flag), 0, 0) -+func Setregid(rgid int, egid int) (err error) { -+ _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Setreuid(ruid int, euid int) (err error) { -+ _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -1428,8 +1595,8 @@ func Setprivexec(flag int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setregid(rgid int, egid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0) -+func Setresgid(rgid int, egid int, sgid int) (err error) { -+ _, _, e1 := RawSyscall(SYS_SETRESGID, uintptr(rgid), uintptr(egid), uintptr(sgid)) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -1438,8 +1605,8 @@ func Setregid(rgid int, egid int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setreuid(ruid int, euid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0) -+func Setresuid(ruid int, euid int, suid int) (err error) { -+ _, _, e1 := RawSyscall(SYS_SETRESUID, uintptr(ruid), uintptr(euid), uintptr(suid)) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -1489,6 +1656,21 @@ func Setuid(uid int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func Statfs(path string, stat *Statfs_t) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_STATFS, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Symlink(path string, link string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) -@@ -1682,113 +1864,9 @@ func writelen(fd int, buf *byte, nbuf int) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Getdirentries(fd int, buf []byte, basep *uintptr) (n int, err error) { -- var _p0 unsafe.Pointer -- if len(buf) > 0 { -- _p0 = unsafe.Pointer(&buf[0]) -- } else { -- _p0 = unsafe.Pointer(&_zero) -- } -- r0, _, e1 := Syscall6(SYS_GETDIRENTRIES64, uintptr(fd), uintptr(_p0), uintptr(len(buf)), uintptr(unsafe.Pointer(basep)), 0, 0) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func ptrace(request int, pid int, addr uintptr, data uintptr) (err error) { -- _, _, e1 := Syscall6(SYS_PTRACE, uintptr(request), uintptr(pid), uintptr(addr), uintptr(data), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func gettimeofday(tp *Timeval) (sec int64, usec int32, err error) { -- r0, r1, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0) -- sec = int64(r0) -- usec = int32(r1) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fstat(fd int, stat *Stat_t) (err error) { -- _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_FSTATAT64, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fstatfs(fd int, stat *Statfs_t) (err error) { -- _, _, e1 := Syscall(SYS_FSTATFS64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_GETFSSTAT64, uintptr(buf), uintptr(size), uintptr(flags)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Lstat(path string, stat *Stat_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Stat(path string, stat *Stat_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+func accept4(fd int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (nfd int, err error) { -+ r0, _, e1 := Syscall6(SYS_ACCEPT4, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), uintptr(flags), 0, 0) -+ nfd = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -1797,13 +1875,13 @@ func Stat(path string, stat *Stat_t) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Statfs(path string, stat *Statfs_t) (err error) { -+func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_STATFS64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_illumos_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_illumos_amd64.go -index 92efa1d..af5cb06 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_illumos_amd64.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_illumos_amd64.go -@@ -1,6 +1,7 @@ - // go run mksyscall_solaris.go -illumos -tags illumos,amd64 syscall_illumos.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build illumos && amd64 - // +build illumos,amd64 - - package unix -@@ -13,17 +14,26 @@ import ( - //go:cgo_import_dynamic libc_preadv preadv "libc.so" - //go:cgo_import_dynamic libc_writev writev "libc.so" - //go:cgo_import_dynamic libc_pwritev pwritev "libc.so" -+//go:cgo_import_dynamic libc_accept4 accept4 "libsocket.so" -+//go:cgo_import_dynamic libc_putmsg putmsg "libc.so" -+//go:cgo_import_dynamic libc_getmsg getmsg "libc.so" - - //go:linkname procreadv libc_readv - //go:linkname procpreadv libc_preadv - //go:linkname procwritev libc_writev - //go:linkname procpwritev libc_pwritev -+//go:linkname procaccept4 libc_accept4 -+//go:linkname procputmsg libc_putmsg -+//go:linkname procgetmsg libc_getmsg - - var ( - procreadv, - procpreadv, - procwritev, -- procpwritev syscallFunc -+ procpwritev, -+ procaccept4, -+ procputmsg, -+ procgetmsg syscallFunc - ) - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -85,3 +95,34 @@ func pwritev(fd int, iovs []Iovec, off int64) (n int, err error) { - } - return - } -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) { -+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procaccept4)), 4, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), uintptr(flags), 0, 0) -+ fd = int(r0) -+ if e1 != 0 { -+ err = e1 -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func putmsg(fd int, clptr *strbuf, dataptr *strbuf, flags int) (err error) { -+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procputmsg)), 4, uintptr(fd), uintptr(unsafe.Pointer(clptr)), uintptr(unsafe.Pointer(dataptr)), uintptr(flags), 0, 0) -+ if e1 != 0 { -+ err = e1 -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func getmsg(fd int, clptr *strbuf, dataptr *strbuf, flags *int) (err error) { -+ _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procgetmsg)), 4, uintptr(fd), uintptr(unsafe.Pointer(clptr)), uintptr(unsafe.Pointer(dataptr)), uintptr(unsafe.Pointer(flags)), 0, 0) -+ if e1 != 0 { -+ err = e1 -+ } -+ return -+} -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux.go b/vendor/golang.org/x/sys/unix/zsyscall_linux.go -index fd2dae8..bc4a275 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_linux.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux.go -@@ -1,5 +1,6 @@ --// Code generated by mkmerge.go; DO NOT EDIT. -+// Code generated by mkmerge; DO NOT EDIT. - -+//go:build linux - // +build linux - - package unix -@@ -47,6 +48,16 @@ func ioctl(fd int, req uint, arg uintptr) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func ioctlPtr(fd int, req uint, arg unsafe.Pointer) (err error) { -+ _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Linkat(olddirfd int, oldpath string, newdirfd int, newpath string, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(oldpath) -@@ -83,6 +94,32 @@ func openat(dirfd int, path string, flags int, mode uint32) (fd int, err error) - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func openat2(dirfd int, path string, open_how *OpenHow, size int) (fd int, err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ r0, _, e1 := Syscall6(SYS_OPENAT2, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(open_how)), uintptr(size), 0, 0) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func pipe2(p *[2]_C_int, flags int) (err error) { -+ _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) { - r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0) - n = int(r0) -@@ -194,6 +231,16 @@ func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func Waitid(idType int, id int, info *Siginfo, options int, rusage *Rusage) (err error) { -+ _, _, e1 := Syscall6(SYS_WAITID, uintptr(idType), uintptr(id), uintptr(unsafe.Pointer(info)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func KeyctlInt(cmd int, arg2 int, arg3 int, arg4 int, arg5 int) (ret int, err error) { - r0, _, e1 := Syscall6(SYS_KEYCTL, uintptr(cmd), uintptr(arg2), uintptr(arg3), uintptr(arg4), uintptr(arg5), 0) - ret = int(r0) -@@ -372,6 +419,21 @@ func mount(source string, target string, fstype string, flags uintptr, data *byt - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func mountSetattr(dirfd int, pathname string, flags uint, attr *MountAttr, size uintptr) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(pathname) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall6(SYS_MOUNT_SETATTR, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags), uintptr(unsafe.Pointer(attr)), uintptr(size), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Acct(path string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) -@@ -515,6 +577,16 @@ func Close(fd int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func CloseRange(first uint, last uint, flags uint) (err error) { -+ _, _, e1 := Syscall(SYS_CLOSE_RANGE, uintptr(first), uintptr(last), uintptr(flags)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func CopyFileRange(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) { - r0, _, e1 := Syscall6(SYS_COPY_FILE_RANGE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags)) - n = int(r0) -@@ -756,6 +828,49 @@ func Fsync(fd int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func Fsmount(fd int, flags int, mountAttrs int) (fsfd int, err error) { -+ r0, _, e1 := Syscall(SYS_FSMOUNT, uintptr(fd), uintptr(flags), uintptr(mountAttrs)) -+ fsfd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fsopen(fsName string, flags int) (fd int, err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(fsName) -+ if err != nil { -+ return -+ } -+ r0, _, e1 := Syscall(SYS_FSOPEN, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fspick(dirfd int, pathName string, flags int) (fd int, err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(pathName) -+ if err != nil { -+ return -+ } -+ r0, _, e1 := Syscall(SYS_FSPICK, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags)) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Getdents(fd int, buf []byte) (n int, err error) { - var _p0 unsafe.Pointer - if len(buf) > 0 { -@@ -1133,6 +1248,26 @@ func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func MoveMount(fromDirfd int, fromPathName string, toDirfd int, toPathName string, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(fromPathName) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(toPathName) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall6(SYS_MOVE_MOUNT, uintptr(fromDirfd), uintptr(unsafe.Pointer(_p0)), uintptr(toDirfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Nanosleep(time *Timespec, leftover *Timespec) (err error) { - _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0) - if e1 != 0 { -@@ -1143,6 +1278,22 @@ func Nanosleep(time *Timespec, leftover *Timespec) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func OpenTree(dfd int, fileName string, flags uint) (r int, err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(fileName) -+ if err != nil { -+ return -+ } -+ r0, _, e1 := Syscall(SYS_OPEN_TREE, uintptr(dfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags)) -+ r = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func PerfEventOpen(attr *PerfEventAttr, pid int, cpu int, groupFd int, flags int) (fd int, err error) { - r0, _, e1 := Syscall6(SYS_PERF_EVENT_OPEN, uintptr(unsafe.Pointer(attr)), uintptr(pid), uintptr(cpu), uintptr(groupFd), uintptr(flags), 0) - fd = int(r0) -@@ -1174,7 +1325,7 @@ func PivotRoot(newroot string, putold string) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) { -+func Prlimit(pid int, resource int, newlimit *Rlimit, old *Rlimit) (err error) { - _, _, e1 := RawSyscall6(SYS_PRLIMIT64, uintptr(pid), uintptr(resource), uintptr(unsafe.Pointer(newlimit)), uintptr(unsafe.Pointer(old)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1450,6 +1601,37 @@ func Sysinfo(info *Sysinfo_t) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func TimerfdCreate(clockid int, flags int) (fd int, err error) { -+ r0, _, e1 := RawSyscall(SYS_TIMERFD_CREATE, uintptr(clockid), uintptr(flags), 0) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func TimerfdGettime(fd int, currValue *ItimerSpec) (err error) { -+ _, _, e1 := RawSyscall(SYS_TIMERFD_GETTIME, uintptr(fd), uintptr(unsafe.Pointer(currValue)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func TimerfdSettime(fd int, flags int, newValue *ItimerSpec, oldValue *ItimerSpec) (err error) { -+ _, _, e1 := RawSyscall6(SYS_TIMERFD_SETTIME, uintptr(fd), uintptr(flags), uintptr(unsafe.Pointer(newValue)), uintptr(unsafe.Pointer(oldValue)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Tgkill(tgid int, tid int, sig syscall.Signal) (err error) { - _, _, e1 := RawSyscall(SYS_TGKILL, uintptr(tgid), uintptr(tid), uintptr(sig)) - if e1 != 0 { -@@ -1790,6 +1972,21 @@ func faccessat(dirfd int, path string, mode uint32) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func Faccessat2(dirfd int, path string, mode uint32, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall6(SYS_FACCESSAT2, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func nameToHandleAt(dirFD int, pathname string, fh *fileHandle, mountID *_C_int, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(pathname) -@@ -1816,8 +2013,139 @@ func openByHandleAt(mountFD int, fh *fileHandle, flags int) (fd int, err error) - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func pipe2(p *[2]_C_int, flags int) (err error) { -- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0) -+func ProcessVMReadv(pid int, localIov []Iovec, remoteIov []RemoteIovec, flags uint) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(localIov) > 0 { -+ _p0 = unsafe.Pointer(&localIov[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ var _p1 unsafe.Pointer -+ if len(remoteIov) > 0 { -+ _p1 = unsafe.Pointer(&remoteIov[0]) -+ } else { -+ _p1 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall6(SYS_PROCESS_VM_READV, uintptr(pid), uintptr(_p0), uintptr(len(localIov)), uintptr(_p1), uintptr(len(remoteIov)), uintptr(flags)) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func ProcessVMWritev(pid int, localIov []Iovec, remoteIov []RemoteIovec, flags uint) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(localIov) > 0 { -+ _p0 = unsafe.Pointer(&localIov[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ var _p1 unsafe.Pointer -+ if len(remoteIov) > 0 { -+ _p1 = unsafe.Pointer(&remoteIov[0]) -+ } else { -+ _p1 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall6(SYS_PROCESS_VM_WRITEV, uintptr(pid), uintptr(_p0), uintptr(len(localIov)), uintptr(_p1), uintptr(len(remoteIov)), uintptr(flags)) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func PidfdOpen(pid int, flags int) (fd int, err error) { -+ r0, _, e1 := Syscall(SYS_PIDFD_OPEN, uintptr(pid), uintptr(flags), 0) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func PidfdGetfd(pidfd int, targetfd int, flags int) (fd int, err error) { -+ r0, _, e1 := Syscall(SYS_PIDFD_GETFD, uintptr(pidfd), uintptr(targetfd), uintptr(flags)) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func PidfdSendSignal(pidfd int, sig Signal, info *Siginfo, flags int) (err error) { -+ _, _, e1 := Syscall6(SYS_PIDFD_SEND_SIGNAL, uintptr(pidfd), uintptr(sig), uintptr(unsafe.Pointer(info)), uintptr(flags), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func shmat(id int, addr uintptr, flag int) (ret uintptr, err error) { -+ r0, _, e1 := Syscall(SYS_SHMAT, uintptr(id), uintptr(addr), uintptr(flag)) -+ ret = uintptr(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func shmctl(id int, cmd int, buf *SysvShmDesc) (result int, err error) { -+ r0, _, e1 := Syscall(SYS_SHMCTL, uintptr(id), uintptr(cmd), uintptr(unsafe.Pointer(buf))) -+ result = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func shmdt(addr uintptr) (err error) { -+ _, _, e1 := Syscall(SYS_SHMDT, uintptr(addr), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func shmget(key int, size int, flag int) (id int, err error) { -+ r0, _, e1 := Syscall(SYS_SHMGET, uintptr(key), uintptr(size), uintptr(flag)) -+ id = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func getitimer(which int, currValue *Itimerval) (err error) { -+ _, _, e1 := Syscall(SYS_GETITIMER, uintptr(which), uintptr(unsafe.Pointer(currValue)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func setitimer(which int, newValue *Itimerval, oldValue *Itimerval) (err error) { -+ _, _, e1 := Syscall(SYS_SETITIMER, uintptr(which), uintptr(unsafe.Pointer(newValue)), uintptr(unsafe.Pointer(oldValue))) - if e1 != 0 { - err = errnoErr(e1) - } -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_386.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_386.go -index ba63af7..c81b0ad 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_linux_386.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_386.go -@@ -1,6 +1,7 @@ --// go run mksyscall.go -l32 -tags linux,386 syscall_linux.go syscall_linux_386.go -+// go run mksyscall.go -l32 -tags linux,386 syscall_linux.go syscall_linux_386.go syscall_linux_alarm.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build linux && 386 - // +build linux,386 - - package unix -@@ -45,37 +46,6 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func pipe(p *[2]_C_int) (err error) { -- _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Dup2(oldfd int, newfd int) (err error) { -- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func EpollCreate(size int) (fd int, err error) { -- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) { - var _p0 unsafe.Pointer - if len(events) > 0 { -@@ -180,17 +150,6 @@ func Getuid() (uid int) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func InotifyInit() (fd int, err error) { -- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Ioperm(from int, num int, on int) (err error) { - _, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on)) - if e1 != 0 { -@@ -241,7 +200,7 @@ func Lstat(path string, stat *Stat_t) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -258,7 +217,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -328,46 +287,6 @@ func setfsuid(uid int) (prev int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setregid(rgid int, egid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREGID32, uintptr(rgid), uintptr(egid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setresgid(rgid int, egid int, sgid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESGID32, uintptr(rgid), uintptr(egid), uintptr(sgid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setresuid(ruid int, euid int, suid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESUID32, uintptr(ruid), uintptr(euid), uintptr(suid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setreuid(ruid int, euid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREUID32, uintptr(ruid), uintptr(euid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) { - r0, _, e1 := Syscall6(SYS_SPLICE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags)) - n = int(r0) -@@ -568,9 +487,9 @@ func utimes(path string, times *[2]Timeval) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) -- n = int(r0) -+func Alarm(seconds uint) (remaining uint, err error) { -+ r0, _, e1 := Syscall(SYS_ALARM, uintptr(seconds), 0, 0) -+ remaining = uint(r0) - if e1 != 0 { - err = errnoErr(e1) - } -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_amd64.go -index f64adef..2206bce 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_linux_amd64.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_amd64.go -@@ -1,6 +1,7 @@ --// go run mksyscall.go -tags linux,amd64 syscall_linux.go syscall_linux_amd64.go -+// go run mksyscall.go -tags linux,amd64 syscall_linux.go syscall_linux_amd64.go syscall_linux_alarm.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build linux && amd64 - // +build linux,amd64 - - package unix -@@ -45,27 +46,6 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Dup2(oldfd int, newfd int) (err error) { -- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func EpollCreate(size int) (fd int, err error) { -- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) { - var _p0 unsafe.Pointer - if len(events) > 0 { -@@ -190,17 +170,6 @@ func Getuid() (uid int) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func inotifyInit() (fd int, err error) { -- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Ioperm(from int, num int, on int) (err error) { - _, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on)) - if e1 != 0 { -@@ -246,6 +215,17 @@ func Listen(s int, n int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func MemfdSecret(flags int) (fd int, err error) { -+ r0, _, e1 := Syscall(SYS_MEMFD_SECRET, uintptr(flags), 0, 0) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Pause() (err error) { - _, _, e1 := Syscall(SYS_PAUSE, 0, 0, 0) - if e1 != 0 { -@@ -256,7 +236,7 @@ func Pause() (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -273,7 +253,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -354,36 +334,6 @@ func setfsuid(uid int) (prev int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setregid(rgid int, egid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setresgid(rgid int, egid int, sgid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESGID, uintptr(rgid), uintptr(egid), uintptr(sgid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setresuid(ruid int, euid int, suid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESUID, uintptr(ruid), uintptr(euid), uintptr(suid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Setrlimit(resource int, rlim *Rlimit) (err error) { - _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0) - if e1 != 0 { -@@ -394,16 +344,6 @@ func Setrlimit(resource int, rlim *Rlimit) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setreuid(ruid int, euid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Shutdown(fd int, how int) (err error) { - _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(fd), uintptr(how), 0) - if e1 != 0 { -@@ -475,17 +415,6 @@ func Ustat(dev int, ubuf *Ustat_t) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { -- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) { - r0, _, e1 := Syscall6(SYS_ACCEPT4, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), uintptr(flags), 0, 0) - fd = int(r0) -@@ -710,19 +639,13 @@ func utimes(path string, times *[2]Timeval) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func pipe(p *[2]_C_int) (err error) { -- _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -+func kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(cmdline) -+ if err != nil { -+ return - } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) -- n = int(r0) -+ _, _, e1 := Syscall6(SYS_KEXEC_FILE_LOAD, uintptr(kernelFd), uintptr(initrdFd), uintptr(cmdlineLen), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -731,13 +654,9 @@ func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(cmdline) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_KEXEC_FILE_LOAD, uintptr(kernelFd), uintptr(initrdFd), uintptr(cmdlineLen), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -+func Alarm(seconds uint) (remaining uint, err error) { -+ r0, _, e1 := Syscall(SYS_ALARM, uintptr(seconds), 0, 0) -+ remaining = uint(r0) - if e1 != 0 { - err = errnoErr(e1) - } -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_arm.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_arm.go -index ac19523..edf6b39 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_linux_arm.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_arm.go -@@ -1,6 +1,7 @@ - // go run mksyscall.go -l32 -arm -tags linux,arm syscall_linux.go syscall_linux_arm.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build linux && arm - // +build linux,arm - - package unix -@@ -45,27 +46,6 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func pipe(p *[2]_C_int) (err error) { -- _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { -- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) { - r0, _, e1 := Syscall6(SYS_ACCEPT4, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), uintptr(flags), 0, 0) - fd = int(r0) -@@ -234,27 +214,6 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Dup2(oldfd int, newfd int) (err error) { -- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func EpollCreate(size int) (fd int, err error) { -- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) { - var _p0 unsafe.Pointer - if len(events) > 0 { -@@ -339,17 +298,6 @@ func Getuid() (uid int) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func InotifyInit() (fd int, err error) { -- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Lchown(path string, uid int, gid int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) -@@ -464,46 +412,6 @@ func setfsuid(uid int) (prev int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setregid(rgid int, egid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREGID32, uintptr(rgid), uintptr(egid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setresgid(rgid int, egid int, sgid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESGID32, uintptr(rgid), uintptr(egid), uintptr(sgid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setresuid(ruid int, euid int, suid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESUID32, uintptr(ruid), uintptr(euid), uintptr(suid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setreuid(ruid int, euid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREUID32, uintptr(ruid), uintptr(euid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Shutdown(fd int, how int) (err error) { - _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(fd), uintptr(how), 0) - if e1 != 0 { -@@ -590,7 +498,7 @@ func utimes(path string, times *[2]Timeval) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -607,7 +515,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -680,17 +588,6 @@ func setrlimit(resource int, rlim *rlimit32) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func armSyncFileRange(fd int, flags int, off int64, n int64) (err error) { - _, _, e1 := Syscall6(SYS_ARM_SYNC_FILE_RANGE, uintptr(fd), uintptr(flags), uintptr(off), uintptr(off>>32), uintptr(n), uintptr(n>>32)) - if e1 != 0 { -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_arm64.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_arm64.go -index f0d2890..190609f 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_linux_arm64.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_arm64.go -@@ -1,6 +1,7 @@ - // go run mksyscall.go -tags linux,arm64 syscall_linux.go syscall_linux_arm64.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build linux && arm64 - // +build linux,arm64 - - package unix -@@ -151,7 +152,7 @@ func Getgid() (gid int) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Getrlimit(resource int, rlim *Rlimit) (err error) { -+func getrlimit(resource int, rlim *Rlimit) (err error) { - _, _, e1 := RawSyscall(SYS_GETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0) - if e1 != 0 { - err = errnoErr(e1) -@@ -179,7 +180,18 @@ func Listen(s int, n int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func MemfdSecret(flags int) (fd int, err error) { -+ r0, _, e1 := Syscall(SYS_MEMFD_SECRET, uintptr(flags), 0, 0) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -196,7 +208,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -277,37 +289,7 @@ func setfsuid(uid int) (prev int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setregid(rgid int, egid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setresgid(rgid int, egid int, sgid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESGID, uintptr(rgid), uintptr(egid), uintptr(sgid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setresuid(ruid int, euid int, suid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESUID, uintptr(ruid), uintptr(euid), uintptr(suid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setrlimit(resource int, rlim *Rlimit) (err error) { -+func setrlimit(resource int, rlim *Rlimit) (err error) { - _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0) - if e1 != 0 { - err = errnoErr(e1) -@@ -317,16 +299,6 @@ func Setrlimit(resource int, rlim *Rlimit) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setreuid(ruid int, euid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Shutdown(fd int, how int) (err error) { - _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(fd), uintptr(how), 0) - if e1 != 0 { -@@ -388,17 +360,6 @@ func Truncate(path string, length int64) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { -- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) { - r0, _, e1 := Syscall6(SYS_ACCEPT4, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), uintptr(flags), 0, 0) - fd = int(r0) -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_loong64.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_loong64.go -new file mode 100644 -index 0000000..806ffd1 ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_loong64.go -@@ -0,0 +1,487 @@ -+// go run mksyscall.go -tags linux,loong64 syscall_linux.go syscall_linux_loong64.go -+// Code generated by the command above; see README.md. DO NOT EDIT. -+ -+//go:build linux && loong64 -+// +build linux,loong64 -+ -+package unix -+ -+import ( -+ "syscall" -+ "unsafe" -+) -+ -+var _ syscall.Errno -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) { -+ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask), uintptr(dirFd), uintptr(unsafe.Pointer(pathname)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fallocate(fd int, mode uint32, off int64, len int64) (err error) { -+ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off), uintptr(len), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) { -+ r0, _, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0) -+ n = int64(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(events) > 0 { -+ _p0 = unsafe.Pointer(&events[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall6(SYS_EPOLL_PWAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fadvise(fd int, offset int64, length int64, advice int) (err error) { -+ _, _, e1 := Syscall6(SYS_FADVISE64, uintptr(fd), uintptr(offset), uintptr(length), uintptr(advice), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fchown(fd int, uid int, gid int) (err error) { -+ _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fstatfs(fd int, buf *Statfs_t) (err error) { -+ _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(buf)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Ftruncate(fd int, length int64) (err error) { -+ _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), uintptr(length), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Getegid() (egid int) { -+ r0, _ := RawSyscallNoError(SYS_GETEGID, 0, 0, 0) -+ egid = int(r0) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Geteuid() (euid int) { -+ r0, _ := RawSyscallNoError(SYS_GETEUID, 0, 0, 0) -+ euid = int(r0) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Getgid() (gid int) { -+ r0, _ := RawSyscallNoError(SYS_GETGID, 0, 0, 0) -+ gid = int(r0) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Getuid() (uid int) { -+ r0, _ := RawSyscallNoError(SYS_GETUID, 0, 0, 0) -+ uid = int(r0) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Listen(s int, n int) (err error) { -+ _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(n), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func pread(fd int, p []byte, offset int64) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(p) > 0 { -+ _p0 = unsafe.Pointer(&p[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall6(SYS_PREAD64, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(p) > 0 { -+ _p0 = unsafe.Pointer(&p[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall6(SYS_PWRITE64, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Seek(fd int, offset int64, whence int) (off int64, err error) { -+ r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence)) -+ off = int64(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) { -+ r0, _, e1 := Syscall6(SYS_SENDFILE, uintptr(outfd), uintptr(infd), uintptr(unsafe.Pointer(offset)), uintptr(count), 0, 0) -+ written = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func setfsgid(gid int) (prev int, err error) { -+ r0, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0) -+ prev = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func setfsuid(uid int) (prev int, err error) { -+ r0, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0) -+ prev = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Shutdown(fd int, how int) (err error) { -+ _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(fd), uintptr(how), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error) { -+ r0, _, e1 := Syscall6(SYS_SPLICE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags)) -+ n = int64(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Statfs(path string, buf *Statfs_t) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_STATFS, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func SyncFileRange(fd int, off int64, n int64, flags int) (err error) { -+ _, _, e1 := Syscall6(SYS_SYNC_FILE_RANGE, uintptr(fd), uintptr(off), uintptr(n), uintptr(flags), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Truncate(path string, length int64) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) { -+ r0, _, e1 := Syscall6(SYS_ACCEPT4, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), uintptr(flags), 0, 0) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -+ _, _, e1 := Syscall(SYS_BIND, uintptr(s), uintptr(addr), uintptr(addrlen)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -+ _, _, e1 := Syscall(SYS_CONNECT, uintptr(s), uintptr(addr), uintptr(addrlen)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func getgroups(n int, list *_Gid_t) (nn int, err error) { -+ r0, _, e1 := RawSyscall(SYS_GETGROUPS, uintptr(n), uintptr(unsafe.Pointer(list)), 0) -+ nn = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func setgroups(n int, list *_Gid_t) (err error) { -+ _, _, e1 := RawSyscall(SYS_SETGROUPS, uintptr(n), uintptr(unsafe.Pointer(list)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) { -+ _, _, e1 := Syscall6(SYS_GETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) { -+ _, _, e1 := Syscall6(SYS_SETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func socket(domain int, typ int, proto int) (fd int, err error) { -+ r0, _, e1 := RawSyscall(SYS_SOCKET, uintptr(domain), uintptr(typ), uintptr(proto)) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) { -+ _, _, e1 := RawSyscall6(SYS_SOCKETPAIR, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -+ _, _, e1 := RawSyscall(SYS_GETPEERNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -+ _, _, e1 := RawSyscall(SYS_GETSOCKNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(p) > 0 { -+ _p0 = unsafe.Pointer(&p[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall6(SYS_RECVFROM, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) { -+ var _p0 unsafe.Pointer -+ if len(buf) > 0 { -+ _p0 = unsafe.Pointer(&buf[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ _, _, e1 := Syscall6(SYS_SENDTO, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) { -+ r0, _, e1 := Syscall(SYS_RECVMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { -+ r0, _, e1 := Syscall(SYS_SENDMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func mmap(addr uintptr, length uintptr, prot int, flags int, fd int, offset int64) (xaddr uintptr, err error) { -+ r0, _, e1 := Syscall6(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flags), uintptr(fd), uintptr(offset)) -+ xaddr = uintptr(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Gettimeofday(tv *Timeval) (err error) { -+ _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(cmdline) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall6(SYS_KEXEC_FILE_LOAD, uintptr(kernelFd), uintptr(initrdFd), uintptr(cmdlineLen), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_mips.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_mips.go -index aecbbca..5f984cb 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_linux_mips.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_mips.go -@@ -1,6 +1,7 @@ --// go run mksyscall.go -b32 -arm -tags linux,mips syscall_linux.go syscall_linux_mipsx.go -+// go run mksyscall.go -b32 -arm -tags linux,mips syscall_linux.go syscall_linux_mipsx.go syscall_linux_alarm.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build linux && mips - // +build linux,mips - - package unix -@@ -45,27 +46,6 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Dup2(oldfd int, newfd int) (err error) { -- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func EpollCreate(size int) (fd int, err error) { -- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) { - var _p0 unsafe.Pointer - if len(events) > 0 { -@@ -170,7 +150,7 @@ func Listen(s int, n int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -187,7 +167,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -268,46 +248,6 @@ func setfsuid(uid int) (prev int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setregid(rgid int, egid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setresgid(rgid int, egid int, sgid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESGID, uintptr(rgid), uintptr(egid), uintptr(sgid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setresuid(ruid int, euid int, suid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESUID, uintptr(ruid), uintptr(euid), uintptr(suid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setreuid(ruid int, euid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Shutdown(fd int, how int) (err error) { - _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(fd), uintptr(how), 0) - if e1 != 0 { -@@ -364,17 +304,6 @@ func Ustat(dev int, ubuf *Ustat_t) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { -- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) { - r0, _, e1 := Syscall6(SYS_ACCEPT4, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), uintptr(flags), 0, 0) - fd = int(r0) -@@ -543,17 +472,6 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func InotifyInit() (fd int, err error) { -- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Ioperm(from int, num int, on int) (err error) { - _, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on)) - if e1 != 0 { -@@ -705,18 +623,6 @@ func Pause() (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func pipe() (p1 int, p2 int, err error) { -- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0) -- p1 = int(r0) -- p2 = int(r1) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func mmap2(addr uintptr, length uintptr, prot int, flags int, fd int, pageOffset uintptr) (xaddr uintptr, err error) { - r0, _, e1 := Syscall6(SYS_MMAP2, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flags), uintptr(fd), uintptr(pageOffset)) - xaddr = uintptr(r0) -@@ -748,9 +654,9 @@ func setrlimit(resource int, rlim *rlimit32) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) -- n = int(r0) -+func Alarm(seconds uint) (remaining uint, err error) { -+ r0, _, e1 := Syscall(SYS_ALARM, uintptr(seconds), 0, 0) -+ remaining = uint(r0) - if e1 != 0 { - err = errnoErr(e1) - } -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64.go -index 424fb7f..46fc380 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64.go -@@ -1,6 +1,7 @@ --// go run mksyscall.go -tags linux,mips64 syscall_linux.go syscall_linux_mips64x.go -+// go run mksyscall.go -tags linux,mips64 syscall_linux.go syscall_linux_mips64x.go syscall_linux_alarm.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build linux && mips64 - // +build linux,mips64 - - package unix -@@ -45,27 +46,6 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Dup2(oldfd int, newfd int) (err error) { -- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func EpollCreate(size int) (fd int, err error) { -- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) { - var _p0 unsafe.Pointer - if len(events) > 0 { -@@ -200,7 +180,7 @@ func Pause() (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -217,7 +197,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -298,36 +278,6 @@ func setfsuid(uid int) (prev int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setregid(rgid int, egid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setresgid(rgid int, egid int, sgid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESGID, uintptr(rgid), uintptr(egid), uintptr(sgid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setresuid(ruid int, euid int, suid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESUID, uintptr(ruid), uintptr(euid), uintptr(suid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Setrlimit(resource int, rlim *Rlimit) (err error) { - _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0) - if e1 != 0 { -@@ -338,16 +288,6 @@ func Setrlimit(resource int, rlim *Rlimit) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setreuid(ruid int, euid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Shutdown(fd int, how int) (err error) { - _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(fd), uintptr(how), 0) - if e1 != 0 { -@@ -419,17 +359,6 @@ func Ustat(dev int, ubuf *Ustat_t) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { -- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) { - r0, _, e1 := Syscall6(SYS_ACCEPT4, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), uintptr(flags), 0, 0) - fd = int(r0) -@@ -719,9 +648,9 @@ func stat(path string, st *stat_t) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) -- n = int(r0) -+func Alarm(seconds uint) (remaining uint, err error) { -+ r0, _, e1 := Syscall(SYS_ALARM, uintptr(seconds), 0, 0) -+ remaining = uint(r0) - if e1 != 0 { - err = errnoErr(e1) - } -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64le.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64le.go -index 28c7239..cbd0d4d 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64le.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_mips64le.go -@@ -1,6 +1,7 @@ - // go run mksyscall.go -tags linux,mips64le syscall_linux.go syscall_linux_mips64x.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build linux && mips64le - // +build linux,mips64le - - package unix -@@ -45,27 +46,6 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Dup2(oldfd int, newfd int) (err error) { -- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func EpollCreate(size int) (fd int, err error) { -- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) { - var _p0 unsafe.Pointer - if len(events) > 0 { -@@ -200,7 +180,7 @@ func Pause() (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -217,7 +197,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -298,36 +278,6 @@ func setfsuid(uid int) (prev int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setregid(rgid int, egid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setresgid(rgid int, egid int, sgid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESGID, uintptr(rgid), uintptr(egid), uintptr(sgid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setresuid(ruid int, euid int, suid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESUID, uintptr(ruid), uintptr(euid), uintptr(suid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Setrlimit(resource int, rlim *Rlimit) (err error) { - _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0) - if e1 != 0 { -@@ -338,16 +288,6 @@ func Setrlimit(resource int, rlim *Rlimit) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setreuid(ruid int, euid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Shutdown(fd int, how int) (err error) { - _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(fd), uintptr(how), 0) - if e1 != 0 { -@@ -419,17 +359,6 @@ func Ustat(dev int, ubuf *Ustat_t) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { -- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) { - r0, _, e1 := Syscall6(SYS_ACCEPT4, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), uintptr(flags), 0, 0) - fd = int(r0) -@@ -716,14 +645,3 @@ func stat(path string, st *stat_t) (err error) { - } - return - } -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_mipsle.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_mipsle.go -index 84596b3..0c13d15 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_linux_mipsle.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_mipsle.go -@@ -1,6 +1,7 @@ --// go run mksyscall.go -l32 -arm -tags linux,mipsle syscall_linux.go syscall_linux_mipsx.go -+// go run mksyscall.go -l32 -arm -tags linux,mipsle syscall_linux.go syscall_linux_mipsx.go syscall_linux_alarm.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build linux && mipsle - // +build linux,mipsle - - package unix -@@ -45,27 +46,6 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Dup2(oldfd int, newfd int) (err error) { -- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func EpollCreate(size int) (fd int, err error) { -- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) { - var _p0 unsafe.Pointer - if len(events) > 0 { -@@ -170,7 +150,7 @@ func Listen(s int, n int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -187,7 +167,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -268,46 +248,6 @@ func setfsuid(uid int) (prev int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setregid(rgid int, egid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setresgid(rgid int, egid int, sgid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESGID, uintptr(rgid), uintptr(egid), uintptr(sgid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setresuid(ruid int, euid int, suid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESUID, uintptr(ruid), uintptr(euid), uintptr(suid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setreuid(ruid int, euid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Shutdown(fd int, how int) (err error) { - _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(fd), uintptr(how), 0) - if e1 != 0 { -@@ -364,17 +304,6 @@ func Ustat(dev int, ubuf *Ustat_t) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { -- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) { - r0, _, e1 := Syscall6(SYS_ACCEPT4, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), uintptr(flags), 0, 0) - fd = int(r0) -@@ -543,17 +472,6 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func InotifyInit() (fd int, err error) { -- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Ioperm(from int, num int, on int) (err error) { - _, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on)) - if e1 != 0 { -@@ -705,18 +623,6 @@ func Pause() (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func pipe() (p1 int, p2 int, err error) { -- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0) -- p1 = int(r0) -- p2 = int(r1) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func mmap2(addr uintptr, length uintptr, prot int, flags int, fd int, pageOffset uintptr) (xaddr uintptr, err error) { - r0, _, e1 := Syscall6(SYS_MMAP2, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flags), uintptr(fd), uintptr(pageOffset)) - xaddr = uintptr(r0) -@@ -748,9 +654,9 @@ func setrlimit(resource int, rlim *rlimit32) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) -- n = int(r0) -+func Alarm(seconds uint) (remaining uint, err error) { -+ r0, _, e1 := Syscall(SYS_ALARM, uintptr(seconds), 0, 0) -+ remaining = uint(r0) - if e1 != 0 { - err = errnoErr(e1) - } -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc.go -new file mode 100644 -index 0000000..e01432a ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc.go -@@ -0,0 +1,669 @@ -+// go run mksyscall.go -b32 -tags linux,ppc syscall_linux.go syscall_linux_ppc.go syscall_linux_alarm.go -+// Code generated by the command above; see README.md. DO NOT EDIT. -+ -+//go:build linux && ppc -+// +build linux,ppc -+ -+package unix -+ -+import ( -+ "syscall" -+ "unsafe" -+) -+ -+var _ syscall.Errno -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func fanotifyMark(fd int, flags uint, mask uint64, dirFd int, pathname *byte) (err error) { -+ _, _, e1 := Syscall6(SYS_FANOTIFY_MARK, uintptr(fd), uintptr(flags), uintptr(mask>>32), uintptr(mask), uintptr(dirFd), uintptr(unsafe.Pointer(pathname))) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fallocate(fd int, mode uint32, off int64, len int64) (err error) { -+ _, _, e1 := Syscall6(SYS_FALLOCATE, uintptr(fd), uintptr(mode), uintptr(off>>32), uintptr(off), uintptr(len>>32), uintptr(len)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) { -+ r0, r1, e1 := Syscall6(SYS_TEE, uintptr(rfd), uintptr(wfd), uintptr(len), uintptr(flags), 0, 0) -+ n = int64(int64(r0)<<32 | int64(r1)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(events) > 0 { -+ _p0 = unsafe.Pointer(&events[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall6(SYS_EPOLL_WAIT, uintptr(epfd), uintptr(_p0), uintptr(len(events)), uintptr(msec), 0, 0) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fchown(fd int, uid int, gid int) (err error) { -+ _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fstat(fd int, stat *Stat_t) (err error) { -+ _, _, e1 := Syscall(SYS_FSTAT64, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fstatat(dirfd int, path string, stat *Stat_t, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall6(SYS_FSTATAT64, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Ftruncate(fd int, length int64) (err error) { -+ _, _, e1 := Syscall(SYS_FTRUNCATE64, uintptr(fd), uintptr(length>>32), uintptr(length)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Getegid() (egid int) { -+ r0, _ := RawSyscallNoError(SYS_GETEGID, 0, 0, 0) -+ egid = int(r0) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Geteuid() (euid int) { -+ r0, _ := RawSyscallNoError(SYS_GETEUID, 0, 0, 0) -+ euid = int(r0) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Getgid() (gid int) { -+ r0, _ := RawSyscallNoError(SYS_GETGID, 0, 0, 0) -+ gid = int(r0) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Getuid() (uid int) { -+ r0, _ := RawSyscallNoError(SYS_GETUID, 0, 0, 0) -+ uid = int(r0) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Ioperm(from int, num int, on int) (err error) { -+ _, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Iopl(level int) (err error) { -+ _, _, e1 := Syscall(SYS_IOPL, uintptr(level), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Lchown(path string, uid int, gid int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_LCHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Listen(s int, n int) (err error) { -+ _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(n), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Lstat(path string, stat *Stat_t) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_LSTAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Pause() (err error) { -+ _, _, e1 := Syscall(SYS_PAUSE, 0, 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func pread(fd int, p []byte, offset int64) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(p) > 0 { -+ _p0 = unsafe.Pointer(&p[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall6(SYS_PREAD64, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset>>32), uintptr(offset), 0) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(p) > 0 { -+ _p0 = unsafe.Pointer(&p[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall6(SYS_PWRITE64, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset>>32), uintptr(offset), 0) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Renameat(olddirfd int, oldpath string, newdirfd int, newpath string) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(oldpath) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(newpath) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(olddirfd), uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) { -+ r0, _, e1 := Syscall6(SYS__NEWSELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func sendfile(outfd int, infd int, offset *int64, count int) (written int, err error) { -+ r0, _, e1 := Syscall6(SYS_SENDFILE64, uintptr(outfd), uintptr(infd), uintptr(unsafe.Pointer(offset)), uintptr(count), 0, 0) -+ written = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func setfsgid(gid int) (prev int, err error) { -+ r0, _, e1 := Syscall(SYS_SETFSGID, uintptr(gid), 0, 0) -+ prev = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func setfsuid(uid int) (prev int, err error) { -+ r0, _, e1 := Syscall(SYS_SETFSUID, uintptr(uid), 0, 0) -+ prev = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Shutdown(fd int, how int) (err error) { -+ _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(fd), uintptr(how), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int, err error) { -+ r0, _, e1 := Syscall6(SYS_SPLICE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags)) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Stat(path string, stat *Stat_t) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_STAT64, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Truncate(path string, length int64) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_TRUNCATE64, uintptr(unsafe.Pointer(_p0)), uintptr(length>>32), uintptr(length)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Ustat(dev int, ubuf *Ustat_t) (err error) { -+ _, _, e1 := Syscall(SYS_USTAT, uintptr(dev), uintptr(unsafe.Pointer(ubuf)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) { -+ r0, _, e1 := Syscall6(SYS_ACCEPT4, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), uintptr(flags), 0, 0) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -+ _, _, e1 := Syscall(SYS_BIND, uintptr(s), uintptr(addr), uintptr(addrlen)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -+ _, _, e1 := Syscall(SYS_CONNECT, uintptr(s), uintptr(addr), uintptr(addrlen)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func getgroups(n int, list *_Gid_t) (nn int, err error) { -+ r0, _, e1 := RawSyscall(SYS_GETGROUPS, uintptr(n), uintptr(unsafe.Pointer(list)), 0) -+ nn = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func setgroups(n int, list *_Gid_t) (err error) { -+ _, _, e1 := RawSyscall(SYS_SETGROUPS, uintptr(n), uintptr(unsafe.Pointer(list)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) { -+ _, _, e1 := Syscall6(SYS_GETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) { -+ _, _, e1 := Syscall6(SYS_SETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func socket(domain int, typ int, proto int) (fd int, err error) { -+ r0, _, e1 := RawSyscall(SYS_SOCKET, uintptr(domain), uintptr(typ), uintptr(proto)) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) { -+ _, _, e1 := RawSyscall6(SYS_SOCKETPAIR, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -+ _, _, e1 := RawSyscall(SYS_GETPEERNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -+ _, _, e1 := RawSyscall(SYS_GETSOCKNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(p) > 0 { -+ _p0 = unsafe.Pointer(&p[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := Syscall6(SYS_RECVFROM, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) { -+ var _p0 unsafe.Pointer -+ if len(buf) > 0 { -+ _p0 = unsafe.Pointer(&buf[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ _, _, e1 := Syscall6(SYS_SENDTO, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) { -+ r0, _, e1 := Syscall(SYS_RECVMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { -+ r0, _, e1 := Syscall(SYS_SENDMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func futimesat(dirfd int, path string, times *[2]Timeval) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_FUTIMESAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times))) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Gettimeofday(tv *Timeval) (err error) { -+ _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Time(t *Time_t) (tt Time_t, err error) { -+ r0, _, e1 := RawSyscall(SYS_TIME, uintptr(unsafe.Pointer(t)), 0, 0) -+ tt = Time_t(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Utime(path string, buf *Utimbuf) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_UTIME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(buf)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func utimes(path string, times *[2]Timeval) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func mmap2(addr uintptr, length uintptr, prot int, flags int, fd int, pageOffset uintptr) (xaddr uintptr, err error) { -+ r0, _, e1 := Syscall6(SYS_MMAP2, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flags), uintptr(fd), uintptr(pageOffset)) -+ xaddr = uintptr(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func getrlimit(resource int, rlim *rlimit32) (err error) { -+ _, _, e1 := RawSyscall(SYS_UGETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func setrlimit(resource int, rlim *rlimit32) (err error) { -+ _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func syncFileRange2(fd int, flags int, off int64, n int64) (err error) { -+ _, _, e1 := Syscall6(SYS_SYNC_FILE_RANGE2, uintptr(fd), uintptr(flags), uintptr(off>>32), uintptr(off), uintptr(n>>32), uintptr(n)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(cmdline) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall6(SYS_KEXEC_FILE_LOAD, uintptr(kernelFd), uintptr(initrdFd), uintptr(cmdlineLen), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Alarm(seconds uint) (remaining uint, err error) { -+ r0, _, e1 := Syscall(SYS_ALARM, uintptr(seconds), 0, 0) -+ remaining = uint(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64.go -index de02263..13c7ee7 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64.go -@@ -1,6 +1,7 @@ --// go run mksyscall.go -tags linux,ppc64 syscall_linux.go syscall_linux_ppc64x.go -+// go run mksyscall.go -tags linux,ppc64 syscall_linux.go syscall_linux_ppc64x.go syscall_linux_alarm.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build linux && ppc64 - // +build linux,ppc64 - - package unix -@@ -45,27 +46,6 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Dup2(oldfd int, newfd int) (err error) { -- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func EpollCreate(size int) (fd int, err error) { -- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) { - var _p0 unsafe.Pointer - if len(events) > 0 { -@@ -190,17 +170,6 @@ func Getuid() (uid int) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func InotifyInit() (fd int, err error) { -- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Ioperm(from int, num int, on int) (err error) { - _, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on)) - if e1 != 0 { -@@ -271,7 +240,7 @@ func Pause() (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -288,7 +257,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -380,36 +349,6 @@ func setfsuid(uid int) (prev int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setregid(rgid int, egid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setresgid(rgid int, egid int, sgid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESGID, uintptr(rgid), uintptr(egid), uintptr(sgid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setresuid(ruid int, euid int, suid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESUID, uintptr(ruid), uintptr(euid), uintptr(suid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Setrlimit(resource int, rlim *Rlimit) (err error) { - _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0) - if e1 != 0 { -@@ -420,16 +359,6 @@ func Setrlimit(resource int, rlim *Rlimit) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setreuid(ruid int, euid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Shutdown(fd int, how int) (err error) { - _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(fd), uintptr(how), 0) - if e1 != 0 { -@@ -506,17 +435,6 @@ func Ustat(dev int, ubuf *Ustat_t) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { -- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) { - r0, _, e1 := Syscall6(SYS_ACCEPT4, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), uintptr(flags), 0, 0) - fd = int(r0) -@@ -762,27 +680,6 @@ func utimes(path string, times *[2]Timeval) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func pipe(p *[2]_C_int) (err error) { -- _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func syncFileRange2(fd int, flags int, off int64, n int64) (err error) { - _, _, e1 := Syscall6(SYS_SYNC_FILE_RANGE2, uintptr(fd), uintptr(flags), uintptr(off), uintptr(n), 0, 0) - if e1 != 0 { -@@ -805,3 +702,14 @@ func kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, f - } - return - } -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Alarm(seconds uint) (remaining uint, err error) { -+ r0, _, e1 := Syscall(SYS_ALARM, uintptr(seconds), 0, 0) -+ remaining = uint(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go -index 888f21d..02d0c0f 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go -@@ -1,6 +1,7 @@ --// go run mksyscall.go -tags linux,ppc64le syscall_linux.go syscall_linux_ppc64x.go -+// go run mksyscall.go -tags linux,ppc64le syscall_linux.go syscall_linux_ppc64x.go syscall_linux_alarm.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build linux && ppc64le - // +build linux,ppc64le - - package unix -@@ -45,27 +46,6 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Dup2(oldfd int, newfd int) (err error) { -- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func EpollCreate(size int) (fd int, err error) { -- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) { - var _p0 unsafe.Pointer - if len(events) > 0 { -@@ -190,17 +170,6 @@ func Getuid() (uid int) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func InotifyInit() (fd int, err error) { -- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Ioperm(from int, num int, on int) (err error) { - _, _, e1 := Syscall(SYS_IOPERM, uintptr(from), uintptr(num), uintptr(on)) - if e1 != 0 { -@@ -271,7 +240,7 @@ func Pause() (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -288,7 +257,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -380,36 +349,6 @@ func setfsuid(uid int) (prev int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setregid(rgid int, egid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setresgid(rgid int, egid int, sgid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESGID, uintptr(rgid), uintptr(egid), uintptr(sgid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setresuid(ruid int, euid int, suid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESUID, uintptr(ruid), uintptr(euid), uintptr(suid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Setrlimit(resource int, rlim *Rlimit) (err error) { - _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0) - if e1 != 0 { -@@ -420,16 +359,6 @@ func Setrlimit(resource int, rlim *Rlimit) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setreuid(ruid int, euid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Shutdown(fd int, how int) (err error) { - _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(fd), uintptr(how), 0) - if e1 != 0 { -@@ -506,17 +435,6 @@ func Ustat(dev int, ubuf *Ustat_t) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { -- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) { - r0, _, e1 := Syscall6(SYS_ACCEPT4, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), uintptr(flags), 0, 0) - fd = int(r0) -@@ -762,27 +680,6 @@ func utimes(path string, times *[2]Timeval) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func pipe(p *[2]_C_int) (err error) { -- _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func syncFileRange2(fd int, flags int, off int64, n int64) (err error) { - _, _, e1 := Syscall6(SYS_SYNC_FILE_RANGE2, uintptr(fd), uintptr(flags), uintptr(off), uintptr(n), 0, 0) - if e1 != 0 { -@@ -805,3 +702,14 @@ func kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, f - } - return - } -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Alarm(seconds uint) (remaining uint, err error) { -+ r0, _, e1 := Syscall(SYS_ALARM, uintptr(seconds), 0, 0) -+ remaining = uint(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_riscv64.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_riscv64.go -index b761334..9fee3b1 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_linux_riscv64.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_riscv64.go -@@ -1,6 +1,7 @@ - // go run mksyscall.go -tags linux,riscv64 syscall_linux.go syscall_linux_riscv64.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build linux && riscv64 - // +build linux,riscv64 - - package unix -@@ -179,7 +180,18 @@ func Listen(s int, n int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func MemfdSecret(flags int) (fd int, err error) { -+ r0, _, e1 := Syscall(SYS_MEMFD_SECRET, uintptr(flags), 0, 0) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -196,7 +208,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -257,36 +269,6 @@ func setfsuid(uid int) (prev int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setregid(rgid int, egid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setresgid(rgid int, egid int, sgid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESGID, uintptr(rgid), uintptr(egid), uintptr(sgid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setresuid(ruid int, euid int, suid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESUID, uintptr(ruid), uintptr(euid), uintptr(suid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Setrlimit(resource int, rlim *Rlimit) (err error) { - _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0) - if e1 != 0 { -@@ -297,16 +279,6 @@ func Setrlimit(resource int, rlim *Rlimit) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setreuid(ruid int, euid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Shutdown(fd int, how int) (err error) { - _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(fd), uintptr(how), 0) - if e1 != 0 { -@@ -368,17 +340,6 @@ func Truncate(path string, length int64) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { -- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) { - r0, _, e1 := Syscall6(SYS_ACCEPT4, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), uintptr(flags), 0, 0) - fd = int(r0) -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go -index 9bc353f..647bbfe 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go -@@ -1,6 +1,7 @@ --// go run mksyscall.go -tags linux,s390x syscall_linux.go syscall_linux_s390x.go -+// go run mksyscall.go -tags linux,s390x syscall_linux.go syscall_linux_s390x.go syscall_linux_alarm.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build linux && s390x - // +build linux,s390x - - package unix -@@ -45,27 +46,6 @@ func Tee(rfd int, wfd int, len int, flags int) (n int64, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Dup2(oldfd int, newfd int) (err error) { -- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func EpollCreate(size int) (fd int, err error) { -- r0, _, e1 := RawSyscall(SYS_EPOLL_CREATE, uintptr(size), 0, 0) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func EpollWait(epfd int, events []EpollEvent, msec int) (n int, err error) { - var _p0 unsafe.Pointer - if len(events) > 0 { -@@ -190,17 +170,6 @@ func Getuid() (uid int) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func InotifyInit() (fd int, err error) { -- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Lchown(path string, uid int, gid int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) -@@ -241,7 +210,7 @@ func Pause() (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -258,7 +227,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -350,36 +319,6 @@ func setfsuid(uid int) (prev int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setregid(rgid int, egid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setresgid(rgid int, egid int, sgid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESGID, uintptr(rgid), uintptr(egid), uintptr(sgid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setresuid(ruid int, euid int, suid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESUID, uintptr(ruid), uintptr(euid), uintptr(suid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Setrlimit(resource int, rlim *Rlimit) (err error) { - _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0) - if e1 != 0 { -@@ -390,16 +329,6 @@ func Setrlimit(resource int, rlim *Rlimit) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setreuid(ruid int, euid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Splice(rfd int, roff *int64, wfd int, woff *int64, len int, flags int) (n int64, err error) { - r0, _, e1 := Syscall6(SYS_SPLICE, uintptr(rfd), uintptr(unsafe.Pointer(roff)), uintptr(wfd), uintptr(unsafe.Pointer(woff)), uintptr(len), uintptr(flags)) - n = int64(r0) -@@ -552,9 +481,13 @@ func utimes(path string, times *[2]Timeval) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) -- n = int(r0) -+func kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(cmdline) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall6(SYS_KEXEC_FILE_LOAD, uintptr(kernelFd), uintptr(initrdFd), uintptr(cmdlineLen), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -563,13 +496,9 @@ func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func kexecFileLoad(kernelFd int, initrdFd int, cmdlineLen int, cmdline string, flags int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(cmdline) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_KEXEC_FILE_LOAD, uintptr(kernelFd), uintptr(initrdFd), uintptr(cmdlineLen), uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -+func Alarm(seconds uint) (remaining uint, err error) { -+ r0, _, e1 := Syscall(SYS_ALARM, uintptr(seconds), 0, 0) -+ remaining = uint(r0) - if e1 != 0 { - err = errnoErr(e1) - } -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_linux_sparc64.go b/vendor/golang.org/x/sys/unix/zsyscall_linux_sparc64.go -index 854e816..ada057f 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_linux_sparc64.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_linux_sparc64.go -@@ -1,6 +1,7 @@ --// go run mksyscall.go -tags linux,sparc64 syscall_linux.go syscall_linux_sparc64.go -+// go run mksyscall.go -tags linux,sparc64 syscall_linux.go syscall_linux_sparc64.go syscall_linux_alarm.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build linux && sparc64 - // +build linux,sparc64 - - package unix -@@ -72,16 +73,6 @@ func Fadvise(fd int, offset int64, length int64, advice int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Dup2(oldfd int, newfd int) (err error) { -- _, _, e1 := Syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Fchown(fd int, uid int, gid int) (err error) { - _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid)) - if e1 != 0 { -@@ -179,17 +170,6 @@ func Getuid() (uid int) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func InotifyInit() (fd int, err error) { -- r0, _, e1 := RawSyscall(SYS_INOTIFY_INIT, 0, 0, 0) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Lchown(path string, uid int, gid int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) -@@ -240,7 +220,7 @@ func Pause() (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -257,7 +237,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -349,36 +329,6 @@ func setfsuid(uid int) (prev int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setregid(rgid int, egid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setresgid(rgid int, egid int, sgid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESGID, uintptr(rgid), uintptr(egid), uintptr(sgid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Setresuid(ruid int, euid int, suid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESUID, uintptr(ruid), uintptr(euid), uintptr(suid)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Setrlimit(resource int, rlim *Rlimit) (err error) { - _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0) - if e1 != 0 { -@@ -389,16 +339,6 @@ func Setrlimit(resource int, rlim *Rlimit) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setreuid(ruid int, euid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Shutdown(fd int, how int) (err error) { - _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(fd), uintptr(how), 0) - if e1 != 0 { -@@ -475,17 +415,6 @@ func Truncate(path string, length int64) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { -- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -- fd = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int, err error) { - r0, _, e1 := Syscall6(SYS_ACCEPT4, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), uintptr(flags), 0, 0) - fd = int(r0) -@@ -720,19 +649,9 @@ func utimes(path string, times *[2]Timeval) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func pipe(p *[2]_C_int) (err error) { -- _, _, e1 := RawSyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) -- n = int(r0) -+func Alarm(seconds uint) (remaining uint, err error) { -+ r0, _, e1 := Syscall(SYS_ALARM, uintptr(seconds), 0, 0) -+ remaining = uint(r0) - if e1 != 0 { - err = errnoErr(e1) - } -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_netbsd_386.go b/vendor/golang.org/x/sys/unix/zsyscall_netbsd_386.go -index 3bbd9e3..4af561a 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_netbsd_386.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_netbsd_386.go -@@ -1,6 +1,7 @@ - // go run mksyscall.go -l32 -netbsd -tags netbsd,386 syscall_bsd.go syscall_netbsd.go syscall_netbsd_386.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build netbsd && 386 - // +build netbsd,386 - - package unix -@@ -350,10 +351,8 @@ func Munlockall() (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func pipe() (fd1 int, fd2 int, err error) { -- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0) -- fd1 = int(r0) -- fd2 = int(r1) -+func pipe2(p *[2]_C_int, flags int) (err error) { -+ _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -1331,7 +1330,7 @@ func Pathconf(path string, name int) (val int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -1348,7 +1347,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go -index d8cf501..3b90e94 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go -@@ -1,6 +1,7 @@ - // go run mksyscall.go -netbsd -tags netbsd,amd64 syscall_bsd.go syscall_netbsd.go syscall_netbsd_amd64.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build netbsd && amd64 - // +build netbsd,amd64 - - package unix -@@ -350,10 +351,8 @@ func Munlockall() (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func pipe() (fd1 int, fd2 int, err error) { -- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0) -- fd1 = int(r0) -- fd2 = int(r1) -+func pipe2(p *[2]_C_int, flags int) (err error) { -+ _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -1331,7 +1330,7 @@ func Pathconf(path string, name int) (val int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -1348,7 +1347,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm.go b/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm.go -index 1153fe6..890f4cc 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm.go -@@ -1,6 +1,7 @@ - // go run mksyscall.go -l32 -netbsd -arm -tags netbsd,arm syscall_bsd.go syscall_netbsd.go syscall_netbsd_arm.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build netbsd && arm - // +build netbsd,arm - - package unix -@@ -350,10 +351,8 @@ func Munlockall() (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func pipe() (fd1 int, fd2 int, err error) { -- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0) -- fd1 = int(r0) -- fd2 = int(r1) -+func pipe2(p *[2]_C_int, flags int) (err error) { -+ _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -1331,7 +1330,7 @@ func Pathconf(path string, name int) (val int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -1348,7 +1347,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm64.go b/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm64.go -index 24b4ebb..c79f071 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm64.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_netbsd_arm64.go -@@ -1,6 +1,7 @@ - // go run mksyscall.go -netbsd -tags netbsd,arm64 syscall_bsd.go syscall_netbsd.go syscall_netbsd_arm64.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build netbsd && arm64 - // +build netbsd,arm64 - - package unix -@@ -350,10 +351,8 @@ func Munlockall() (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func pipe() (fd1 int, fd2 int, err error) { -- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0) -- fd1 = int(r0) -- fd2 = int(r1) -+func pipe2(p *[2]_C_int, flags int) (err error) { -+ _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -1331,7 +1330,7 @@ func Pathconf(path string, name int) (val int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -@@ -1348,7 +1347,7 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.go b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.go -index b44b31a..2925fe0 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.go -@@ -1,6 +1,7 @@ --// go run mksyscall.go -l32 -openbsd -tags openbsd,386 syscall_bsd.go syscall_openbsd.go syscall_openbsd_386.go -+// go run mksyscall.go -l32 -openbsd -libc -tags openbsd,386 syscall_bsd.go syscall_openbsd.go syscall_openbsd_386.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build openbsd && 386 - // +build openbsd,386 - - package unix -@@ -15,7 +16,7 @@ var _ syscall.Errno - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func getgroups(ngid int, gid *_Gid_t) (n int, err error) { -- r0, _, e1 := RawSyscall(SYS_GETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) -+ r0, _, e1 := syscall_rawSyscall(libc_getgroups_trampoline_addr, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -23,20 +24,28 @@ func getgroups(ngid int, gid *_Gid_t) (n int, err error) { - return - } - -+var libc_getgroups_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getgroups getgroups "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func setgroups(ngid int, gid *_Gid_t) (err error) { -- _, _, e1 := RawSyscall(SYS_SETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setgroups_trampoline_addr, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setgroups_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setgroups setgroups "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) { -- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_wait4_trampoline_addr, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0) - wpid = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -44,10 +53,14 @@ func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err - return - } - -+var libc_wait4_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_wait4 wait4 "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { -- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ r0, _, e1 := syscall_syscall(libc_accept_trampoline_addr, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -55,30 +68,42 @@ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { - return - } - -+var libc_accept_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_accept accept "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -- _, _, e1 := Syscall(SYS_BIND, uintptr(s), uintptr(addr), uintptr(addrlen)) -+ _, _, e1 := syscall_syscall(libc_bind_trampoline_addr, uintptr(s), uintptr(addr), uintptr(addrlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_bind_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_bind bind "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -- _, _, e1 := Syscall(SYS_CONNECT, uintptr(s), uintptr(addr), uintptr(addrlen)) -+ _, _, e1 := syscall_syscall(libc_connect_trampoline_addr, uintptr(s), uintptr(addr), uintptr(addrlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_connect_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_connect connect "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func socket(domain int, typ int, proto int) (fd int, err error) { -- r0, _, e1 := RawSyscall(SYS_SOCKET, uintptr(domain), uintptr(typ), uintptr(proto)) -+ r0, _, e1 := syscall_rawSyscall(libc_socket_trampoline_addr, uintptr(domain), uintptr(typ), uintptr(proto)) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -86,66 +111,94 @@ func socket(domain int, typ int, proto int) (fd int, err error) { - return - } - -+var libc_socket_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_socket socket "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) { -- _, _, e1 := Syscall6(SYS_GETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0) -+ _, _, e1 := syscall_syscall6(libc_getsockopt_trampoline_addr, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_getsockopt_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getsockopt getsockopt "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) { -- _, _, e1 := Syscall6(SYS_SETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0) -+ _, _, e1 := syscall_syscall6(libc_setsockopt_trampoline_addr, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setsockopt_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setsockopt setsockopt "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -- _, _, e1 := RawSyscall(SYS_GETPEERNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ _, _, e1 := syscall_rawSyscall(libc_getpeername_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_getpeername_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getpeername getpeername "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -- _, _, e1 := RawSyscall(SYS_GETSOCKNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ _, _, e1 := syscall_rawSyscall(libc_getsockname_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_getsockname_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getsockname getsockname "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Shutdown(s int, how int) (err error) { -- _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(s), uintptr(how), 0) -+ _, _, e1 := syscall_syscall(libc_shutdown_trampoline_addr, uintptr(s), uintptr(how), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_shutdown_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_shutdown shutdown "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) { -- _, _, e1 := RawSyscall6(SYS_SOCKETPAIR, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0) -+ _, _, e1 := syscall_rawSyscall6(libc_socketpair_trampoline_addr, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_socketpair_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_socketpair socketpair "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) { -@@ -155,7 +208,7 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall6(SYS_RECVFROM, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) -+ r0, _, e1 := syscall_syscall6(libc_recvfrom_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -163,6 +216,10 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl - return - } - -+var libc_recvfrom_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_recvfrom recvfrom "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) { -@@ -172,17 +229,21 @@ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) ( - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall6(SYS_SENDTO, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen)) -+ _, _, e1 := syscall_syscall6(libc_sendto_trampoline_addr, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_sendto_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_sendto sendto "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_RECVMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -+ r0, _, e1 := syscall_syscall(libc_recvmsg_trampoline_addr, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -190,10 +251,14 @@ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) { - return - } - -+var libc_recvmsg_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_recvmsg recvmsg "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_SENDMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -+ r0, _, e1 := syscall_syscall(libc_sendmsg_trampoline_addr, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -201,10 +266,14 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { - return - } - -+var libc_sendmsg_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_sendmsg sendmsg "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, nevent int, timeout *Timespec) (n int, err error) { -- r0, _, e1 := Syscall6(SYS_KEVENT, uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout))) -+ r0, _, e1 := syscall_syscall6(libc_kevent_trampoline_addr, uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -212,6 +281,10 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne - return - } - -+var libc_kevent_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_kevent kevent "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func utimes(path string, timeval *[2]Timeval) (err error) { -@@ -220,27 +293,35 @@ func utimes(path string, timeval *[2]Timeval) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0) -+ _, _, e1 := syscall_syscall(libc_utimes_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_utimes_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_utimes utimes "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func futimes(fd int, timeval *[2]Timeval) (err error) { -- _, _, e1 := Syscall(SYS_FUTIMES, uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0) -+ _, _, e1 := syscall_syscall(libc_futimes_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_futimes_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_futimes futimes "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) -+ r0, _, e1 := syscall_syscall(libc_poll_trampoline_addr, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -248,6 +329,10 @@ func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { - return - } - -+var libc_poll_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_poll poll "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Madvise(b []byte, behav int) (err error) { -@@ -257,13 +342,17 @@ func Madvise(b []byte, behav int) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(behav)) -+ _, _, e1 := syscall_syscall(libc_madvise_trampoline_addr, uintptr(_p0), uintptr(len(b)), uintptr(behav)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_madvise_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_madvise madvise "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mlock(b []byte) (err error) { -@@ -273,23 +362,31 @@ func Mlock(b []byte) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0) -+ _, _, e1 := syscall_syscall(libc_mlock_trampoline_addr, uintptr(_p0), uintptr(len(b)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mlock_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mlock mlock "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mlockall(flags int) (err error) { -- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall(libc_mlockall_trampoline_addr, uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mlockall_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mlockall mlockall "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mprotect(b []byte, prot int) (err error) { -@@ -299,13 +396,17 @@ func Mprotect(b []byte, prot int) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot)) -+ _, _, e1 := syscall_syscall(libc_mprotect_trampoline_addr, uintptr(_p0), uintptr(len(b)), uintptr(prot)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mprotect_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mprotect mprotect "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Msync(b []byte, flags int) (err error) { -@@ -315,13 +416,17 @@ func Msync(b []byte, flags int) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags)) -+ _, _, e1 := syscall_syscall(libc_msync_trampoline_addr, uintptr(_p0), uintptr(len(b)), uintptr(flags)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_msync_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_msync msync "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Munlock(b []byte) (err error) { -@@ -331,33 +436,45 @@ func Munlock(b []byte) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0) -+ _, _, e1 := syscall_syscall(libc_munlock_trampoline_addr, uintptr(_p0), uintptr(len(b)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_munlock_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_munlock munlock "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Munlockall() (err error) { -- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0) -+ _, _, e1 := syscall_syscall(libc_munlockall_trampoline_addr, 0, 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_munlockall_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_munlockall munlockall "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func pipe2(p *[2]_C_int, flags int) (err error) { -- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0) -+ _, _, e1 := syscall_rawSyscall(libc_pipe2_trampoline_addr, uintptr(unsafe.Pointer(p)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_pipe2_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_pipe2 pipe2 "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getdents(fd int, buf []byte) (n int, err error) { -@@ -367,7 +484,7 @@ func Getdents(fd int, buf []byte) (n int, err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall(SYS_GETDENTS, uintptr(fd), uintptr(_p0), uintptr(len(buf))) -+ r0, _, e1 := syscall_syscall(libc_getdents_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(buf))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -375,6 +492,10 @@ func Getdents(fd int, buf []byte) (n int, err error) { - return - } - -+var libc_getdents_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getdents getdents "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getcwd(buf []byte) (n int, err error) { -@@ -384,7 +505,7 @@ func Getcwd(buf []byte) (n int, err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0) -+ r0, _, e1 := syscall_syscall(libc_getcwd_trampoline_addr, uintptr(_p0), uintptr(len(buf)), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -392,16 +513,24 @@ func Getcwd(buf []byte) (n int, err error) { - return - } - -+var libc_getcwd_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getcwd getcwd "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func ioctl(fd int, req uint, arg uintptr) (err error) { -- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg)) -+ _, _, e1 := syscall_syscall(libc_ioctl_trampoline_addr, uintptr(fd), uintptr(req), uintptr(arg)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_ioctl_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_ioctl ioctl "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) { -@@ -411,17 +540,21 @@ func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) -+ _, _, e1 := syscall_syscall6(libc_sysctl_trampoline_addr, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_sysctl_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_sysctl sysctl "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) { -- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_ppoll_trampoline_addr, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -429,6 +562,10 @@ func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, - return - } - -+var libc_ppoll_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_ppoll ppoll "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Access(path string, mode uint32) (err error) { -@@ -437,23 +574,31 @@ func Access(path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_ACCESS, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_access_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_access_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_access access "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Adjtime(delta *Timeval, olddelta *Timeval) (err error) { -- _, _, e1 := Syscall(SYS_ADJTIME, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0) -+ _, _, e1 := syscall_syscall(libc_adjtime_trampoline_addr, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_adjtime_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_adjtime adjtime "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Chdir(path string) (err error) { -@@ -462,13 +607,17 @@ func Chdir(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_chdir_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_chdir_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_chdir chdir "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Chflags(path string, flags int) (err error) { -@@ -477,13 +626,17 @@ func Chflags(path string, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_CHFLAGS, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall(libc_chflags_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_chflags_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_chflags chflags "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Chmod(path string, mode uint32) (err error) { -@@ -492,13 +645,17 @@ func Chmod(path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_CHMOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_chmod_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_chmod_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_chmod chmod "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Chown(path string, uid int, gid int) (err error) { -@@ -507,13 +664,17 @@ func Chown(path string, uid int, gid int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_CHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) -+ _, _, e1 := syscall_syscall(libc_chown_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_chown_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_chown chown "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Chroot(path string) (err error) { -@@ -522,27 +683,35 @@ func Chroot(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_chroot_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_chroot_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_chroot chroot "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Close(fd int) (err error) { -- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0) -+ _, _, e1 := syscall_syscall(libc_close_trampoline_addr, uintptr(fd), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_close_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_close close "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Dup(fd int) (nfd int, err error) { -- r0, _, e1 := Syscall(SYS_DUP, uintptr(fd), 0, 0) -+ r0, _, e1 := syscall_syscall(libc_dup_trampoline_addr, uintptr(fd), 0, 0) - nfd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -550,33 +719,49 @@ func Dup(fd int) (nfd int, err error) { - return - } - -+var libc_dup_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_dup dup "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Dup2(from int, to int) (err error) { -- _, _, e1 := Syscall(SYS_DUP2, uintptr(from), uintptr(to), 0) -+ _, _, e1 := syscall_syscall(libc_dup2_trampoline_addr, uintptr(from), uintptr(to), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_dup2_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_dup2 dup2 "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Dup3(from int, to int, flags int) (err error) { -- _, _, e1 := Syscall(SYS_DUP3, uintptr(from), uintptr(to), uintptr(flags)) -+ _, _, e1 := syscall_syscall(libc_dup3_trampoline_addr, uintptr(from), uintptr(to), uintptr(flags)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_dup3_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_dup3 dup3 "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Exit(code int) { -- Syscall(SYS_EXIT, uintptr(code), 0, 0) -+ syscall_syscall(libc_exit_trampoline_addr, uintptr(code), 0, 0) - return - } - -+var libc_exit_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_exit exit "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) { -@@ -585,43 +770,59 @@ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_faccessat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_faccessat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_faccessat faccessat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchdir(fd int) (err error) { -- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0) -+ _, _, e1 := syscall_syscall(libc_fchdir_trampoline_addr, uintptr(fd), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fchdir_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fchdir fchdir "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchflags(fd int, flags int) (err error) { -- _, _, e1 := Syscall(SYS_FCHFLAGS, uintptr(fd), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall(libc_fchflags_trampoline_addr, uintptr(fd), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fchflags_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fchflags fchflags "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchmod(fd int, mode uint32) (err error) { -- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_fchmod_trampoline_addr, uintptr(fd), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fchmod_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fchmod fchmod "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) { -@@ -630,23 +831,31 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_fchmodat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fchmodat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fchmodat fchmodat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchown(fd int, uid int, gid int) (err error) { -- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid)) -+ _, _, e1 := syscall_syscall(libc_fchown_trampoline_addr, uintptr(fd), uintptr(uid), uintptr(gid)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fchown_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fchown fchown "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) { -@@ -655,27 +864,35 @@ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall6(libc_fchownat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fchownat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fchownat fchownat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Flock(fd int, how int) (err error) { -- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0) -+ _, _, e1 := syscall_syscall(libc_flock_trampoline_addr, uintptr(fd), uintptr(how), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_flock_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_flock flock "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fpathconf(fd int, name int) (val int, err error) { -- r0, _, e1 := Syscall(SYS_FPATHCONF, uintptr(fd), uintptr(name), 0) -+ r0, _, e1 := syscall_syscall(libc_fpathconf_trampoline_addr, uintptr(fd), uintptr(name), 0) - val = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -683,16 +900,24 @@ func Fpathconf(fd int, name int) (val int, err error) { - return - } - -+var libc_fpathconf_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fpathconf fpathconf "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fstat(fd int, stat *Stat_t) (err error) { -- _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_fstat_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fstat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fstat fstat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) { -@@ -701,71 +926,99 @@ func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_fstatat_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fstatat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fstatat fstatat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fstatfs(fd int, stat *Statfs_t) (err error) { -- _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_fstatfs_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fstatfs_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fstatfs fstatfs "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fsync(fd int) (err error) { -- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0) -+ _, _, e1 := syscall_syscall(libc_fsync_trampoline_addr, uintptr(fd), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fsync_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fsync fsync "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Ftruncate(fd int, length int64) (err error) { -- _, _, e1 := Syscall6(SYS_FTRUNCATE, uintptr(fd), 0, uintptr(length), uintptr(length>>32), 0, 0) -+ _, _, e1 := syscall_syscall(libc_ftruncate_trampoline_addr, uintptr(fd), uintptr(length), uintptr(length>>32)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_ftruncate_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_ftruncate ftruncate "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getegid() (egid int) { -- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getegid_trampoline_addr, 0, 0, 0) - egid = int(r0) - return - } - -+var libc_getegid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getegid getegid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Geteuid() (uid int) { -- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_geteuid_trampoline_addr, 0, 0, 0) - uid = int(r0) - return - } - -+var libc_geteuid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_geteuid geteuid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getgid() (gid int) { -- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getgid_trampoline_addr, 0, 0, 0) - gid = int(r0) - return - } - -+var libc_getgid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getgid getgid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getpgid(pid int) (pgid int, err error) { -- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0) -+ r0, _, e1 := syscall_rawSyscall(libc_getpgid_trampoline_addr, uintptr(pid), 0, 0) - pgid = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -773,34 +1026,50 @@ func Getpgid(pid int) (pgid int, err error) { - return - } - -+var libc_getpgid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getpgid getpgid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getpgrp() (pgrp int) { -- r0, _, _ := RawSyscall(SYS_GETPGRP, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getpgrp_trampoline_addr, 0, 0, 0) - pgrp = int(r0) - return - } - -+var libc_getpgrp_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getpgrp getpgrp "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getpid() (pid int) { -- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getpid_trampoline_addr, 0, 0, 0) - pid = int(r0) - return - } - -+var libc_getpid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getpid getpid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getppid() (ppid int) { -- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getppid_trampoline_addr, 0, 0, 0) - ppid = int(r0) - return - } - -+var libc_getppid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getppid getppid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getpriority(which int, who int) (prio int, err error) { -- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0) -+ r0, _, e1 := syscall_syscall(libc_getpriority_trampoline_addr, uintptr(which), uintptr(who), 0) - prio = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -808,20 +1077,28 @@ func Getpriority(which int, who int) (prio int, err error) { - return - } - -+var libc_getpriority_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getpriority getpriority "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getrlimit(which int, lim *Rlimit) (err error) { -- _, _, e1 := RawSyscall(SYS_GETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) -+ _, _, e1 := syscall_rawSyscall(libc_getrlimit_trampoline_addr, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_getrlimit_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getrlimit getrlimit "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getrtable() (rtable int, err error) { -- r0, _, e1 := RawSyscall(SYS_GETRTABLE, 0, 0, 0) -+ r0, _, e1 := syscall_rawSyscall(libc_getrtable_trampoline_addr, 0, 0, 0) - rtable = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -829,20 +1106,28 @@ func Getrtable() (rtable int, err error) { - return - } - -+var libc_getrtable_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getrtable getrtable "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getrusage(who int, rusage *Rusage) (err error) { -- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0) -+ _, _, e1 := syscall_rawSyscall(libc_getrusage_trampoline_addr, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_getrusage_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getrusage getrusage "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getsid(pid int) (sid int, err error) { -- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0) -+ r0, _, e1 := syscall_rawSyscall(libc_getsid_trampoline_addr, uintptr(pid), 0, 0) - sid = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -850,46 +1135,66 @@ func Getsid(pid int) (sid int, err error) { - return - } - -+var libc_getsid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getsid getsid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Gettimeofday(tv *Timeval) (err error) { -- _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_gettimeofday_trampoline_addr, uintptr(unsafe.Pointer(tv)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_gettimeofday_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_gettimeofday gettimeofday "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getuid() (uid int) { -- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getuid_trampoline_addr, 0, 0, 0) - uid = int(r0) - return - } - -+var libc_getuid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getuid getuid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Issetugid() (tainted bool) { -- r0, _, _ := Syscall(SYS_ISSETUGID, 0, 0, 0) -+ r0, _, _ := syscall_syscall(libc_issetugid_trampoline_addr, 0, 0, 0) - tainted = bool(r0 != 0) - return - } - -+var libc_issetugid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_issetugid issetugid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Kill(pid int, signum syscall.Signal) (err error) { -- _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), 0) -+ _, _, e1 := syscall_syscall(libc_kill_trampoline_addr, uintptr(pid), uintptr(signum), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_kill_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_kill kill "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Kqueue() (fd int, err error) { -- r0, _, e1 := Syscall(SYS_KQUEUE, 0, 0, 0) -+ r0, _, e1 := syscall_syscall(libc_kqueue_trampoline_addr, 0, 0, 0) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -897,6 +1202,10 @@ func Kqueue() (fd int, err error) { - return - } - -+var libc_kqueue_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_kqueue kqueue "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Lchown(path string, uid int, gid int) (err error) { -@@ -905,13 +1214,17 @@ func Lchown(path string, uid int, gid int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_LCHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) -+ _, _, e1 := syscall_syscall(libc_lchown_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_lchown_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_lchown lchown "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Link(path string, link string) (err error) { -@@ -925,13 +1238,17 @@ func Link(path string, link string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -+ _, _, e1 := syscall_syscall(libc_link_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_link_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_link link "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) { -@@ -945,23 +1262,31 @@ func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err er - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall6(libc_linkat_trampoline_addr, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_linkat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_linkat linkat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Listen(s int, backlog int) (err error) { -- _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0) -+ _, _, e1 := syscall_syscall(libc_listen_trampoline_addr, uintptr(s), uintptr(backlog), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_listen_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_listen listen "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Lstat(path string, stat *Stat_t) (err error) { -@@ -970,13 +1295,17 @@ func Lstat(path string, stat *Stat_t) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_LSTAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_lstat_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_lstat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_lstat lstat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mkdir(path string, mode uint32) (err error) { -@@ -985,13 +1314,17 @@ func Mkdir(path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_MKDIR, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_mkdir_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mkdir_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mkdir mkdir "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mkdirat(dirfd int, path string, mode uint32) (err error) { -@@ -1000,13 +1333,17 @@ func Mkdirat(dirfd int, path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) -+ _, _, e1 := syscall_syscall(libc_mkdirat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mkdirat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mkdirat mkdirat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mkfifo(path string, mode uint32) (err error) { -@@ -1015,13 +1352,17 @@ func Mkfifo(path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_MKFIFO, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_mkfifo_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mkfifo_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mkfifo mkfifo "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mkfifoat(dirfd int, path string, mode uint32) (err error) { -@@ -1030,13 +1371,17 @@ func Mkfifoat(dirfd int, path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_MKFIFOAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) -+ _, _, e1 := syscall_syscall(libc_mkfifoat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mkfifoat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mkfifoat mkfifoat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mknod(path string, mode uint32, dev int) (err error) { -@@ -1045,13 +1390,17 @@ func Mknod(path string, mode uint32, dev int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_MKNOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) -+ _, _, e1 := syscall_syscall(libc_mknod_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mknod_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mknod mknod "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) { -@@ -1060,23 +1409,31 @@ func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_mknodat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mknodat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mknodat mknodat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Nanosleep(time *Timespec, leftover *Timespec) (err error) { -- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0) -+ _, _, e1 := syscall_syscall(libc_nanosleep_trampoline_addr, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_nanosleep_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_nanosleep nanosleep "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Open(path string, mode int, perm uint32) (fd int, err error) { -@@ -1085,7 +1442,7 @@ func Open(path string, mode int, perm uint32) (fd int, err error) { - if err != nil { - return - } -- r0, _, e1 := Syscall(SYS_OPEN, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm)) -+ r0, _, e1 := syscall_syscall(libc_open_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm)) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1093,6 +1450,10 @@ func Open(path string, mode int, perm uint32) (fd int, err error) { - return - } - -+var libc_open_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_open open "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) { -@@ -1101,7 +1462,7 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) { - if err != nil { - return - } -- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_openat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1109,6 +1470,10 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) { - return - } - -+var libc_openat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_openat openat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Pathconf(path string, name int) (val int, err error) { -@@ -1117,7 +1482,7 @@ func Pathconf(path string, name int) (val int, err error) { - if err != nil { - return - } -- r0, _, e1 := Syscall(SYS_PATHCONF, uintptr(unsafe.Pointer(_p0)), uintptr(name), 0) -+ r0, _, e1 := syscall_syscall(libc_pathconf_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(name), 0) - val = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1125,16 +1490,20 @@ func Pathconf(path string, name int) (val int, err error) { - return - } - -+var libc_pathconf_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_pathconf pathconf "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall6(SYS_PREAD, uintptr(fd), uintptr(_p0), uintptr(len(p)), 0, uintptr(offset), uintptr(offset>>32)) -+ r0, _, e1 := syscall_syscall6(libc_pread_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1142,16 +1511,20 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - return - } - -+var libc_pread_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_pread pread "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall6(SYS_PWRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)), 0, uintptr(offset), uintptr(offset>>32)) -+ r0, _, e1 := syscall_syscall6(libc_pwrite_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), uintptr(offset>>32), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1159,6 +1532,10 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) { - return - } - -+var libc_pwrite_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_pwrite pwrite "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func read(fd int, p []byte) (n int, err error) { -@@ -1168,7 +1545,7 @@ func read(fd int, p []byte) (n int, err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p))) -+ r0, _, e1 := syscall_syscall(libc_read_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1176,6 +1553,10 @@ func read(fd int, p []byte) (n int, err error) { - return - } - -+var libc_read_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_read read "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Readlink(path string, buf []byte) (n int, err error) { -@@ -1190,7 +1571,7 @@ func Readlink(path string, buf []byte) (n int, err error) { - } else { - _p1 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall(SYS_READLINK, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf))) -+ r0, _, e1 := syscall_syscall(libc_readlink_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1198,6 +1579,10 @@ func Readlink(path string, buf []byte) (n int, err error) { - return - } - -+var libc_readlink_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_readlink readlink "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) { -@@ -1212,7 +1597,7 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) { - } else { - _p1 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_readlinkat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1220,6 +1605,10 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) { - return - } - -+var libc_readlinkat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_readlinkat readlinkat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Rename(from string, to string) (err error) { -@@ -1233,13 +1622,17 @@ func Rename(from string, to string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_RENAME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -+ _, _, e1 := syscall_syscall(libc_rename_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_rename_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_rename rename "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Renameat(fromfd int, from string, tofd int, to string) (err error) { -@@ -1253,13 +1646,17 @@ func Renameat(fromfd int, from string, tofd int, to string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_renameat_trampoline_addr, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_renameat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_renameat renameat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Revoke(path string) (err error) { -@@ -1268,13 +1665,17 @@ func Revoke(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_REVOKE, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_revoke_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_revoke_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_revoke revoke "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Rmdir(path string) (err error) { -@@ -1283,17 +1684,21 @@ func Rmdir(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_RMDIR, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_rmdir_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_rmdir_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_rmdir rmdir "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { -- r0, r1, e1 := Syscall6(SYS_LSEEK, uintptr(fd), 0, uintptr(offset), uintptr(offset>>32), uintptr(whence), 0) -+ r0, r1, e1 := syscall_syscall6(libc_lseek_trampoline_addr, uintptr(fd), uintptr(offset), uintptr(offset>>32), uintptr(whence), 0, 0) - newoffset = int64(int64(r1)<<32 | int64(r0)) - if e1 != 0 { - err = errnoErr(e1) -@@ -1301,10 +1706,14 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { - return - } - -+var libc_lseek_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_lseek lseek "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) { -- r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0) -+ r0, _, e1 := syscall_syscall6(libc_select_trampoline_addr, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1312,36 +1721,52 @@ func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err - return - } - -+var libc_select_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_select select "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setegid(egid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETEGID, uintptr(egid), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_setegid_trampoline_addr, uintptr(egid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setegid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setegid setegid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Seteuid(euid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETEUID, uintptr(euid), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_seteuid_trampoline_addr, uintptr(euid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_seteuid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_seteuid seteuid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setgid(gid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETGID, uintptr(gid), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_setgid_trampoline_addr, uintptr(gid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setgid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setgid setgid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setlogin(name string) (err error) { -@@ -1350,97 +1775,133 @@ func Setlogin(name string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_SETLOGIN, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_setlogin_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setlogin_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setlogin setlogin "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setpgid(pid int, pgid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setpgid_trampoline_addr, uintptr(pid), uintptr(pgid), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setpgid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setpgid setpgid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setpriority(which int, who int, prio int) (err error) { -- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio)) -+ _, _, e1 := syscall_syscall(libc_setpriority_trampoline_addr, uintptr(which), uintptr(who), uintptr(prio)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setpriority_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setpriority setpriority "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setregid(rgid int, egid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setregid_trampoline_addr, uintptr(rgid), uintptr(egid), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setregid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setregid setregid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setreuid(ruid int, euid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setreuid_trampoline_addr, uintptr(ruid), uintptr(euid), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setreuid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setreuid setreuid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setresgid(rgid int, egid int, sgid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESGID, uintptr(rgid), uintptr(egid), uintptr(sgid)) -+ _, _, e1 := syscall_rawSyscall(libc_setresgid_trampoline_addr, uintptr(rgid), uintptr(egid), uintptr(sgid)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setresgid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setresgid setresgid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setresuid(ruid int, euid int, suid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESUID, uintptr(ruid), uintptr(euid), uintptr(suid)) -+ _, _, e1 := syscall_rawSyscall(libc_setresuid_trampoline_addr, uintptr(ruid), uintptr(euid), uintptr(suid)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setresuid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setresuid setresuid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setrlimit(which int, lim *Rlimit) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setrlimit_trampoline_addr, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setrlimit_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setrlimit setrlimit "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setrtable(rtable int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRTABLE, uintptr(rtable), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_setrtable_trampoline_addr, uintptr(rtable), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setrtable_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setrtable setrtable "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setsid() (pid int, err error) { -- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0) -+ r0, _, e1 := syscall_rawSyscall(libc_setsid_trampoline_addr, 0, 0, 0) - pid = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1448,26 +1909,38 @@ func Setsid() (pid int, err error) { - return - } - -+var libc_setsid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setsid setsid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Settimeofday(tp *Timeval) (err error) { -- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_settimeofday_trampoline_addr, uintptr(unsafe.Pointer(tp)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_settimeofday_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_settimeofday settimeofday "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setuid(uid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETUID, uintptr(uid), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_setuid_trampoline_addr, uintptr(uid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setuid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setuid setuid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Stat(path string, stat *Stat_t) (err error) { -@@ -1476,13 +1949,17 @@ func Stat(path string, stat *Stat_t) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_STAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_stat_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_stat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_stat stat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Statfs(path string, stat *Statfs_t) (err error) { -@@ -1491,13 +1968,17 @@ func Statfs(path string, stat *Statfs_t) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_STATFS, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_statfs_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_statfs_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_statfs statfs "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Symlink(path string, link string) (err error) { -@@ -1511,13 +1992,17 @@ func Symlink(path string, link string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_SYMLINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -+ _, _, e1 := syscall_syscall(libc_symlink_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_symlink_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_symlink symlink "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) { -@@ -1531,23 +2016,31 @@ func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1))) -+ _, _, e1 := syscall_syscall(libc_symlinkat_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1))) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_symlinkat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_symlinkat symlinkat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Sync() (err error) { -- _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0) -+ _, _, e1 := syscall_syscall(libc_sync_trampoline_addr, 0, 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_sync_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_sync sync "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Truncate(path string, length int64) (err error) { -@@ -1556,21 +2049,29 @@ func Truncate(path string, length int64) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), 0, uintptr(length), uintptr(length>>32), 0, 0) -+ _, _, e1 := syscall_syscall(libc_truncate_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(length), uintptr(length>>32)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_truncate_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_truncate truncate "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Umask(newmask int) (oldmask int) { -- r0, _, _ := Syscall(SYS_UMASK, uintptr(newmask), 0, 0) -+ r0, _, _ := syscall_syscall(libc_umask_trampoline_addr, uintptr(newmask), 0, 0) - oldmask = int(r0) - return - } - -+var libc_umask_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_umask umask "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Unlink(path string) (err error) { -@@ -1579,13 +2080,17 @@ func Unlink(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_UNLINK, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_unlink_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_unlink_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_unlink unlink "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Unlinkat(dirfd int, path string, flags int) (err error) { -@@ -1594,13 +2099,17 @@ func Unlinkat(dirfd int, path string, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags)) -+ _, _, e1 := syscall_syscall(libc_unlinkat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_unlinkat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_unlinkat unlinkat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Unmount(path string, flags int) (err error) { -@@ -1609,13 +2118,17 @@ func Unmount(path string, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_UNMOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall(libc_unmount_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_unmount_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_unmount unmount "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func write(fd int, p []byte) (n int, err error) { -@@ -1625,7 +2138,7 @@ func write(fd int, p []byte) (n int, err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p))) -+ r0, _, e1 := syscall_syscall(libc_write_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1633,10 +2146,14 @@ func write(fd int, p []byte) (n int, err error) { - return - } - -+var libc_write_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_write write "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) { -- r0, _, e1 := Syscall9(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), 0, uintptr(pos), uintptr(pos>>32), 0) -+ r0, _, e1 := syscall_syscall9(libc_mmap_trampoline_addr, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos), uintptr(pos>>32), 0, 0) - ret = uintptr(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1644,20 +2161,28 @@ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) ( - return - } - -+var libc_mmap_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mmap mmap "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func munmap(addr uintptr, length uintptr) (err error) { -- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0) -+ _, _, e1 := syscall_syscall(libc_munmap_trampoline_addr, uintptr(addr), uintptr(length), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_munmap_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_munmap munmap "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func readlen(fd int, buf *byte, nbuf int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) -+ r0, _, e1 := syscall_syscall(libc_read_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1668,7 +2193,7 @@ func readlen(fd int, buf *byte, nbuf int) (n int, err error) { - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func writelen(fd int, buf *byte, nbuf int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) -+ r0, _, e1 := syscall_syscall(libc_write_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1684,9 +2209,13 @@ func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_utimensat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } -+ -+var libc_utimensat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_utimensat utimensat "libc.so" -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.s b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.s -new file mode 100644 -index 0000000..75eb2f5 ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_386.s -@@ -0,0 +1,796 @@ -+// go run mkasm.go openbsd 386 -+// Code generated by the command above; DO NOT EDIT. -+ -+#include "textflag.h" -+ -+TEXT libc_getgroups_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getgroups(SB) -+ -+GLOBL ·libc_getgroups_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getgroups_trampoline_addr(SB)/4, $libc_getgroups_trampoline<>(SB) -+ -+TEXT libc_setgroups_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setgroups(SB) -+ -+GLOBL ·libc_setgroups_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setgroups_trampoline_addr(SB)/4, $libc_setgroups_trampoline<>(SB) -+ -+TEXT libc_wait4_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_wait4(SB) -+ -+GLOBL ·libc_wait4_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_wait4_trampoline_addr(SB)/4, $libc_wait4_trampoline<>(SB) -+ -+TEXT libc_accept_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_accept(SB) -+ -+GLOBL ·libc_accept_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_accept_trampoline_addr(SB)/4, $libc_accept_trampoline<>(SB) -+ -+TEXT libc_bind_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_bind(SB) -+ -+GLOBL ·libc_bind_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_bind_trampoline_addr(SB)/4, $libc_bind_trampoline<>(SB) -+ -+TEXT libc_connect_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_connect(SB) -+ -+GLOBL ·libc_connect_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_connect_trampoline_addr(SB)/4, $libc_connect_trampoline<>(SB) -+ -+TEXT libc_socket_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_socket(SB) -+ -+GLOBL ·libc_socket_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_socket_trampoline_addr(SB)/4, $libc_socket_trampoline<>(SB) -+ -+TEXT libc_getsockopt_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getsockopt(SB) -+ -+GLOBL ·libc_getsockopt_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getsockopt_trampoline_addr(SB)/4, $libc_getsockopt_trampoline<>(SB) -+ -+TEXT libc_setsockopt_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setsockopt(SB) -+ -+GLOBL ·libc_setsockopt_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setsockopt_trampoline_addr(SB)/4, $libc_setsockopt_trampoline<>(SB) -+ -+TEXT libc_getpeername_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getpeername(SB) -+ -+GLOBL ·libc_getpeername_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getpeername_trampoline_addr(SB)/4, $libc_getpeername_trampoline<>(SB) -+ -+TEXT libc_getsockname_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getsockname(SB) -+ -+GLOBL ·libc_getsockname_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getsockname_trampoline_addr(SB)/4, $libc_getsockname_trampoline<>(SB) -+ -+TEXT libc_shutdown_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_shutdown(SB) -+ -+GLOBL ·libc_shutdown_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_shutdown_trampoline_addr(SB)/4, $libc_shutdown_trampoline<>(SB) -+ -+TEXT libc_socketpair_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_socketpair(SB) -+ -+GLOBL ·libc_socketpair_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_socketpair_trampoline_addr(SB)/4, $libc_socketpair_trampoline<>(SB) -+ -+TEXT libc_recvfrom_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_recvfrom(SB) -+ -+GLOBL ·libc_recvfrom_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_recvfrom_trampoline_addr(SB)/4, $libc_recvfrom_trampoline<>(SB) -+ -+TEXT libc_sendto_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_sendto(SB) -+ -+GLOBL ·libc_sendto_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_sendto_trampoline_addr(SB)/4, $libc_sendto_trampoline<>(SB) -+ -+TEXT libc_recvmsg_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_recvmsg(SB) -+ -+GLOBL ·libc_recvmsg_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_recvmsg_trampoline_addr(SB)/4, $libc_recvmsg_trampoline<>(SB) -+ -+TEXT libc_sendmsg_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_sendmsg(SB) -+ -+GLOBL ·libc_sendmsg_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_sendmsg_trampoline_addr(SB)/4, $libc_sendmsg_trampoline<>(SB) -+ -+TEXT libc_kevent_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_kevent(SB) -+ -+GLOBL ·libc_kevent_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_kevent_trampoline_addr(SB)/4, $libc_kevent_trampoline<>(SB) -+ -+TEXT libc_utimes_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_utimes(SB) -+ -+GLOBL ·libc_utimes_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_utimes_trampoline_addr(SB)/4, $libc_utimes_trampoline<>(SB) -+ -+TEXT libc_futimes_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_futimes(SB) -+ -+GLOBL ·libc_futimes_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_futimes_trampoline_addr(SB)/4, $libc_futimes_trampoline<>(SB) -+ -+TEXT libc_poll_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_poll(SB) -+ -+GLOBL ·libc_poll_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_poll_trampoline_addr(SB)/4, $libc_poll_trampoline<>(SB) -+ -+TEXT libc_madvise_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_madvise(SB) -+ -+GLOBL ·libc_madvise_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_madvise_trampoline_addr(SB)/4, $libc_madvise_trampoline<>(SB) -+ -+TEXT libc_mlock_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mlock(SB) -+ -+GLOBL ·libc_mlock_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_mlock_trampoline_addr(SB)/4, $libc_mlock_trampoline<>(SB) -+ -+TEXT libc_mlockall_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mlockall(SB) -+ -+GLOBL ·libc_mlockall_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_mlockall_trampoline_addr(SB)/4, $libc_mlockall_trampoline<>(SB) -+ -+TEXT libc_mprotect_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mprotect(SB) -+ -+GLOBL ·libc_mprotect_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_mprotect_trampoline_addr(SB)/4, $libc_mprotect_trampoline<>(SB) -+ -+TEXT libc_msync_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_msync(SB) -+ -+GLOBL ·libc_msync_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_msync_trampoline_addr(SB)/4, $libc_msync_trampoline<>(SB) -+ -+TEXT libc_munlock_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_munlock(SB) -+ -+GLOBL ·libc_munlock_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_munlock_trampoline_addr(SB)/4, $libc_munlock_trampoline<>(SB) -+ -+TEXT libc_munlockall_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_munlockall(SB) -+ -+GLOBL ·libc_munlockall_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_munlockall_trampoline_addr(SB)/4, $libc_munlockall_trampoline<>(SB) -+ -+TEXT libc_pipe2_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_pipe2(SB) -+ -+GLOBL ·libc_pipe2_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_pipe2_trampoline_addr(SB)/4, $libc_pipe2_trampoline<>(SB) -+ -+TEXT libc_getdents_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getdents(SB) -+ -+GLOBL ·libc_getdents_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getdents_trampoline_addr(SB)/4, $libc_getdents_trampoline<>(SB) -+ -+TEXT libc_getcwd_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getcwd(SB) -+ -+GLOBL ·libc_getcwd_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getcwd_trampoline_addr(SB)/4, $libc_getcwd_trampoline<>(SB) -+ -+TEXT libc_ioctl_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_ioctl(SB) -+ -+GLOBL ·libc_ioctl_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_ioctl_trampoline_addr(SB)/4, $libc_ioctl_trampoline<>(SB) -+ -+TEXT libc_sysctl_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_sysctl(SB) -+ -+GLOBL ·libc_sysctl_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_sysctl_trampoline_addr(SB)/4, $libc_sysctl_trampoline<>(SB) -+ -+TEXT libc_ppoll_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_ppoll(SB) -+ -+GLOBL ·libc_ppoll_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_ppoll_trampoline_addr(SB)/4, $libc_ppoll_trampoline<>(SB) -+ -+TEXT libc_access_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_access(SB) -+ -+GLOBL ·libc_access_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_access_trampoline_addr(SB)/4, $libc_access_trampoline<>(SB) -+ -+TEXT libc_adjtime_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_adjtime(SB) -+ -+GLOBL ·libc_adjtime_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_adjtime_trampoline_addr(SB)/4, $libc_adjtime_trampoline<>(SB) -+ -+TEXT libc_chdir_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_chdir(SB) -+ -+GLOBL ·libc_chdir_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_chdir_trampoline_addr(SB)/4, $libc_chdir_trampoline<>(SB) -+ -+TEXT libc_chflags_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_chflags(SB) -+ -+GLOBL ·libc_chflags_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_chflags_trampoline_addr(SB)/4, $libc_chflags_trampoline<>(SB) -+ -+TEXT libc_chmod_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_chmod(SB) -+ -+GLOBL ·libc_chmod_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_chmod_trampoline_addr(SB)/4, $libc_chmod_trampoline<>(SB) -+ -+TEXT libc_chown_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_chown(SB) -+ -+GLOBL ·libc_chown_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_chown_trampoline_addr(SB)/4, $libc_chown_trampoline<>(SB) -+ -+TEXT libc_chroot_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_chroot(SB) -+ -+GLOBL ·libc_chroot_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_chroot_trampoline_addr(SB)/4, $libc_chroot_trampoline<>(SB) -+ -+TEXT libc_close_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_close(SB) -+ -+GLOBL ·libc_close_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_close_trampoline_addr(SB)/4, $libc_close_trampoline<>(SB) -+ -+TEXT libc_dup_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_dup(SB) -+ -+GLOBL ·libc_dup_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_dup_trampoline_addr(SB)/4, $libc_dup_trampoline<>(SB) -+ -+TEXT libc_dup2_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_dup2(SB) -+ -+GLOBL ·libc_dup2_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_dup2_trampoline_addr(SB)/4, $libc_dup2_trampoline<>(SB) -+ -+TEXT libc_dup3_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_dup3(SB) -+ -+GLOBL ·libc_dup3_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_dup3_trampoline_addr(SB)/4, $libc_dup3_trampoline<>(SB) -+ -+TEXT libc_exit_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_exit(SB) -+ -+GLOBL ·libc_exit_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_exit_trampoline_addr(SB)/4, $libc_exit_trampoline<>(SB) -+ -+TEXT libc_faccessat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_faccessat(SB) -+ -+GLOBL ·libc_faccessat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_faccessat_trampoline_addr(SB)/4, $libc_faccessat_trampoline<>(SB) -+ -+TEXT libc_fchdir_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fchdir(SB) -+ -+GLOBL ·libc_fchdir_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_fchdir_trampoline_addr(SB)/4, $libc_fchdir_trampoline<>(SB) -+ -+TEXT libc_fchflags_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fchflags(SB) -+ -+GLOBL ·libc_fchflags_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_fchflags_trampoline_addr(SB)/4, $libc_fchflags_trampoline<>(SB) -+ -+TEXT libc_fchmod_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fchmod(SB) -+ -+GLOBL ·libc_fchmod_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_fchmod_trampoline_addr(SB)/4, $libc_fchmod_trampoline<>(SB) -+ -+TEXT libc_fchmodat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fchmodat(SB) -+ -+GLOBL ·libc_fchmodat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_fchmodat_trampoline_addr(SB)/4, $libc_fchmodat_trampoline<>(SB) -+ -+TEXT libc_fchown_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fchown(SB) -+ -+GLOBL ·libc_fchown_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_fchown_trampoline_addr(SB)/4, $libc_fchown_trampoline<>(SB) -+ -+TEXT libc_fchownat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fchownat(SB) -+ -+GLOBL ·libc_fchownat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_fchownat_trampoline_addr(SB)/4, $libc_fchownat_trampoline<>(SB) -+ -+TEXT libc_flock_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_flock(SB) -+ -+GLOBL ·libc_flock_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_flock_trampoline_addr(SB)/4, $libc_flock_trampoline<>(SB) -+ -+TEXT libc_fpathconf_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fpathconf(SB) -+ -+GLOBL ·libc_fpathconf_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_fpathconf_trampoline_addr(SB)/4, $libc_fpathconf_trampoline<>(SB) -+ -+TEXT libc_fstat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fstat(SB) -+ -+GLOBL ·libc_fstat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_fstat_trampoline_addr(SB)/4, $libc_fstat_trampoline<>(SB) -+ -+TEXT libc_fstatat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fstatat(SB) -+ -+GLOBL ·libc_fstatat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_fstatat_trampoline_addr(SB)/4, $libc_fstatat_trampoline<>(SB) -+ -+TEXT libc_fstatfs_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fstatfs(SB) -+ -+GLOBL ·libc_fstatfs_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_fstatfs_trampoline_addr(SB)/4, $libc_fstatfs_trampoline<>(SB) -+ -+TEXT libc_fsync_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fsync(SB) -+ -+GLOBL ·libc_fsync_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_fsync_trampoline_addr(SB)/4, $libc_fsync_trampoline<>(SB) -+ -+TEXT libc_ftruncate_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_ftruncate(SB) -+ -+GLOBL ·libc_ftruncate_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_ftruncate_trampoline_addr(SB)/4, $libc_ftruncate_trampoline<>(SB) -+ -+TEXT libc_getegid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getegid(SB) -+ -+GLOBL ·libc_getegid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getegid_trampoline_addr(SB)/4, $libc_getegid_trampoline<>(SB) -+ -+TEXT libc_geteuid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_geteuid(SB) -+ -+GLOBL ·libc_geteuid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_geteuid_trampoline_addr(SB)/4, $libc_geteuid_trampoline<>(SB) -+ -+TEXT libc_getgid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getgid(SB) -+ -+GLOBL ·libc_getgid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getgid_trampoline_addr(SB)/4, $libc_getgid_trampoline<>(SB) -+ -+TEXT libc_getpgid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getpgid(SB) -+ -+GLOBL ·libc_getpgid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getpgid_trampoline_addr(SB)/4, $libc_getpgid_trampoline<>(SB) -+ -+TEXT libc_getpgrp_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getpgrp(SB) -+ -+GLOBL ·libc_getpgrp_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getpgrp_trampoline_addr(SB)/4, $libc_getpgrp_trampoline<>(SB) -+ -+TEXT libc_getpid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getpid(SB) -+ -+GLOBL ·libc_getpid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getpid_trampoline_addr(SB)/4, $libc_getpid_trampoline<>(SB) -+ -+TEXT libc_getppid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getppid(SB) -+ -+GLOBL ·libc_getppid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getppid_trampoline_addr(SB)/4, $libc_getppid_trampoline<>(SB) -+ -+TEXT libc_getpriority_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getpriority(SB) -+ -+GLOBL ·libc_getpriority_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getpriority_trampoline_addr(SB)/4, $libc_getpriority_trampoline<>(SB) -+ -+TEXT libc_getrlimit_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getrlimit(SB) -+ -+GLOBL ·libc_getrlimit_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getrlimit_trampoline_addr(SB)/4, $libc_getrlimit_trampoline<>(SB) -+ -+TEXT libc_getrtable_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getrtable(SB) -+ -+GLOBL ·libc_getrtable_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getrtable_trampoline_addr(SB)/4, $libc_getrtable_trampoline<>(SB) -+ -+TEXT libc_getrusage_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getrusage(SB) -+ -+GLOBL ·libc_getrusage_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getrusage_trampoline_addr(SB)/4, $libc_getrusage_trampoline<>(SB) -+ -+TEXT libc_getsid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getsid(SB) -+ -+GLOBL ·libc_getsid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getsid_trampoline_addr(SB)/4, $libc_getsid_trampoline<>(SB) -+ -+TEXT libc_gettimeofday_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_gettimeofday(SB) -+ -+GLOBL ·libc_gettimeofday_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_gettimeofday_trampoline_addr(SB)/4, $libc_gettimeofday_trampoline<>(SB) -+ -+TEXT libc_getuid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getuid(SB) -+ -+GLOBL ·libc_getuid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getuid_trampoline_addr(SB)/4, $libc_getuid_trampoline<>(SB) -+ -+TEXT libc_issetugid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_issetugid(SB) -+ -+GLOBL ·libc_issetugid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_issetugid_trampoline_addr(SB)/4, $libc_issetugid_trampoline<>(SB) -+ -+TEXT libc_kill_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_kill(SB) -+ -+GLOBL ·libc_kill_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_kill_trampoline_addr(SB)/4, $libc_kill_trampoline<>(SB) -+ -+TEXT libc_kqueue_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_kqueue(SB) -+ -+GLOBL ·libc_kqueue_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_kqueue_trampoline_addr(SB)/4, $libc_kqueue_trampoline<>(SB) -+ -+TEXT libc_lchown_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_lchown(SB) -+ -+GLOBL ·libc_lchown_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_lchown_trampoline_addr(SB)/4, $libc_lchown_trampoline<>(SB) -+ -+TEXT libc_link_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_link(SB) -+ -+GLOBL ·libc_link_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_link_trampoline_addr(SB)/4, $libc_link_trampoline<>(SB) -+ -+TEXT libc_linkat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_linkat(SB) -+ -+GLOBL ·libc_linkat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_linkat_trampoline_addr(SB)/4, $libc_linkat_trampoline<>(SB) -+ -+TEXT libc_listen_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_listen(SB) -+ -+GLOBL ·libc_listen_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_listen_trampoline_addr(SB)/4, $libc_listen_trampoline<>(SB) -+ -+TEXT libc_lstat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_lstat(SB) -+ -+GLOBL ·libc_lstat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_lstat_trampoline_addr(SB)/4, $libc_lstat_trampoline<>(SB) -+ -+TEXT libc_mkdir_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mkdir(SB) -+ -+GLOBL ·libc_mkdir_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_mkdir_trampoline_addr(SB)/4, $libc_mkdir_trampoline<>(SB) -+ -+TEXT libc_mkdirat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mkdirat(SB) -+ -+GLOBL ·libc_mkdirat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_mkdirat_trampoline_addr(SB)/4, $libc_mkdirat_trampoline<>(SB) -+ -+TEXT libc_mkfifo_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mkfifo(SB) -+ -+GLOBL ·libc_mkfifo_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_mkfifo_trampoline_addr(SB)/4, $libc_mkfifo_trampoline<>(SB) -+ -+TEXT libc_mkfifoat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mkfifoat(SB) -+ -+GLOBL ·libc_mkfifoat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_mkfifoat_trampoline_addr(SB)/4, $libc_mkfifoat_trampoline<>(SB) -+ -+TEXT libc_mknod_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mknod(SB) -+ -+GLOBL ·libc_mknod_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_mknod_trampoline_addr(SB)/4, $libc_mknod_trampoline<>(SB) -+ -+TEXT libc_mknodat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mknodat(SB) -+ -+GLOBL ·libc_mknodat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_mknodat_trampoline_addr(SB)/4, $libc_mknodat_trampoline<>(SB) -+ -+TEXT libc_nanosleep_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_nanosleep(SB) -+ -+GLOBL ·libc_nanosleep_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_nanosleep_trampoline_addr(SB)/4, $libc_nanosleep_trampoline<>(SB) -+ -+TEXT libc_open_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_open(SB) -+ -+GLOBL ·libc_open_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_open_trampoline_addr(SB)/4, $libc_open_trampoline<>(SB) -+ -+TEXT libc_openat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_openat(SB) -+ -+GLOBL ·libc_openat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_openat_trampoline_addr(SB)/4, $libc_openat_trampoline<>(SB) -+ -+TEXT libc_pathconf_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_pathconf(SB) -+ -+GLOBL ·libc_pathconf_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_pathconf_trampoline_addr(SB)/4, $libc_pathconf_trampoline<>(SB) -+ -+TEXT libc_pread_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_pread(SB) -+ -+GLOBL ·libc_pread_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_pread_trampoline_addr(SB)/4, $libc_pread_trampoline<>(SB) -+ -+TEXT libc_pwrite_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_pwrite(SB) -+ -+GLOBL ·libc_pwrite_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_pwrite_trampoline_addr(SB)/4, $libc_pwrite_trampoline<>(SB) -+ -+TEXT libc_read_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_read(SB) -+ -+GLOBL ·libc_read_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_read_trampoline_addr(SB)/4, $libc_read_trampoline<>(SB) -+ -+TEXT libc_readlink_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_readlink(SB) -+ -+GLOBL ·libc_readlink_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_readlink_trampoline_addr(SB)/4, $libc_readlink_trampoline<>(SB) -+ -+TEXT libc_readlinkat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_readlinkat(SB) -+ -+GLOBL ·libc_readlinkat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_readlinkat_trampoline_addr(SB)/4, $libc_readlinkat_trampoline<>(SB) -+ -+TEXT libc_rename_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_rename(SB) -+ -+GLOBL ·libc_rename_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_rename_trampoline_addr(SB)/4, $libc_rename_trampoline<>(SB) -+ -+TEXT libc_renameat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_renameat(SB) -+ -+GLOBL ·libc_renameat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_renameat_trampoline_addr(SB)/4, $libc_renameat_trampoline<>(SB) -+ -+TEXT libc_revoke_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_revoke(SB) -+ -+GLOBL ·libc_revoke_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_revoke_trampoline_addr(SB)/4, $libc_revoke_trampoline<>(SB) -+ -+TEXT libc_rmdir_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_rmdir(SB) -+ -+GLOBL ·libc_rmdir_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_rmdir_trampoline_addr(SB)/4, $libc_rmdir_trampoline<>(SB) -+ -+TEXT libc_lseek_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_lseek(SB) -+ -+GLOBL ·libc_lseek_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_lseek_trampoline_addr(SB)/4, $libc_lseek_trampoline<>(SB) -+ -+TEXT libc_select_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_select(SB) -+ -+GLOBL ·libc_select_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_select_trampoline_addr(SB)/4, $libc_select_trampoline<>(SB) -+ -+TEXT libc_setegid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setegid(SB) -+ -+GLOBL ·libc_setegid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setegid_trampoline_addr(SB)/4, $libc_setegid_trampoline<>(SB) -+ -+TEXT libc_seteuid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_seteuid(SB) -+ -+GLOBL ·libc_seteuid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_seteuid_trampoline_addr(SB)/4, $libc_seteuid_trampoline<>(SB) -+ -+TEXT libc_setgid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setgid(SB) -+ -+GLOBL ·libc_setgid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setgid_trampoline_addr(SB)/4, $libc_setgid_trampoline<>(SB) -+ -+TEXT libc_setlogin_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setlogin(SB) -+ -+GLOBL ·libc_setlogin_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setlogin_trampoline_addr(SB)/4, $libc_setlogin_trampoline<>(SB) -+ -+TEXT libc_setpgid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setpgid(SB) -+ -+GLOBL ·libc_setpgid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setpgid_trampoline_addr(SB)/4, $libc_setpgid_trampoline<>(SB) -+ -+TEXT libc_setpriority_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setpriority(SB) -+ -+GLOBL ·libc_setpriority_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setpriority_trampoline_addr(SB)/4, $libc_setpriority_trampoline<>(SB) -+ -+TEXT libc_setregid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setregid(SB) -+ -+GLOBL ·libc_setregid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setregid_trampoline_addr(SB)/4, $libc_setregid_trampoline<>(SB) -+ -+TEXT libc_setreuid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setreuid(SB) -+ -+GLOBL ·libc_setreuid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setreuid_trampoline_addr(SB)/4, $libc_setreuid_trampoline<>(SB) -+ -+TEXT libc_setresgid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setresgid(SB) -+ -+GLOBL ·libc_setresgid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setresgid_trampoline_addr(SB)/4, $libc_setresgid_trampoline<>(SB) -+ -+TEXT libc_setresuid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setresuid(SB) -+ -+GLOBL ·libc_setresuid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setresuid_trampoline_addr(SB)/4, $libc_setresuid_trampoline<>(SB) -+ -+TEXT libc_setrlimit_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setrlimit(SB) -+ -+GLOBL ·libc_setrlimit_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setrlimit_trampoline_addr(SB)/4, $libc_setrlimit_trampoline<>(SB) -+ -+TEXT libc_setrtable_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setrtable(SB) -+ -+GLOBL ·libc_setrtable_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setrtable_trampoline_addr(SB)/4, $libc_setrtable_trampoline<>(SB) -+ -+TEXT libc_setsid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setsid(SB) -+ -+GLOBL ·libc_setsid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setsid_trampoline_addr(SB)/4, $libc_setsid_trampoline<>(SB) -+ -+TEXT libc_settimeofday_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_settimeofday(SB) -+ -+GLOBL ·libc_settimeofday_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_settimeofday_trampoline_addr(SB)/4, $libc_settimeofday_trampoline<>(SB) -+ -+TEXT libc_setuid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setuid(SB) -+ -+GLOBL ·libc_setuid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setuid_trampoline_addr(SB)/4, $libc_setuid_trampoline<>(SB) -+ -+TEXT libc_stat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_stat(SB) -+ -+GLOBL ·libc_stat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_stat_trampoline_addr(SB)/4, $libc_stat_trampoline<>(SB) -+ -+TEXT libc_statfs_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_statfs(SB) -+ -+GLOBL ·libc_statfs_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_statfs_trampoline_addr(SB)/4, $libc_statfs_trampoline<>(SB) -+ -+TEXT libc_symlink_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_symlink(SB) -+ -+GLOBL ·libc_symlink_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_symlink_trampoline_addr(SB)/4, $libc_symlink_trampoline<>(SB) -+ -+TEXT libc_symlinkat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_symlinkat(SB) -+ -+GLOBL ·libc_symlinkat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_symlinkat_trampoline_addr(SB)/4, $libc_symlinkat_trampoline<>(SB) -+ -+TEXT libc_sync_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_sync(SB) -+ -+GLOBL ·libc_sync_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_sync_trampoline_addr(SB)/4, $libc_sync_trampoline<>(SB) -+ -+TEXT libc_truncate_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_truncate(SB) -+ -+GLOBL ·libc_truncate_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_truncate_trampoline_addr(SB)/4, $libc_truncate_trampoline<>(SB) -+ -+TEXT libc_umask_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_umask(SB) -+ -+GLOBL ·libc_umask_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_umask_trampoline_addr(SB)/4, $libc_umask_trampoline<>(SB) -+ -+TEXT libc_unlink_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_unlink(SB) -+ -+GLOBL ·libc_unlink_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_unlink_trampoline_addr(SB)/4, $libc_unlink_trampoline<>(SB) -+ -+TEXT libc_unlinkat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_unlinkat(SB) -+ -+GLOBL ·libc_unlinkat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_unlinkat_trampoline_addr(SB)/4, $libc_unlinkat_trampoline<>(SB) -+ -+TEXT libc_unmount_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_unmount(SB) -+ -+GLOBL ·libc_unmount_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_unmount_trampoline_addr(SB)/4, $libc_unmount_trampoline<>(SB) -+ -+TEXT libc_write_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_write(SB) -+ -+GLOBL ·libc_write_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_write_trampoline_addr(SB)/4, $libc_write_trampoline<>(SB) -+ -+TEXT libc_mmap_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mmap(SB) -+ -+GLOBL ·libc_mmap_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_mmap_trampoline_addr(SB)/4, $libc_mmap_trampoline<>(SB) -+ -+TEXT libc_munmap_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_munmap(SB) -+ -+GLOBL ·libc_munmap_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_munmap_trampoline_addr(SB)/4, $libc_munmap_trampoline<>(SB) -+ -+TEXT libc_utimensat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_utimensat(SB) -+ -+GLOBL ·libc_utimensat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_utimensat_trampoline_addr(SB)/4, $libc_utimensat_trampoline<>(SB) -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.go -index 67f93ee..98446d2 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.go -@@ -1,6 +1,7 @@ --// go run mksyscall.go -openbsd -tags openbsd,amd64 syscall_bsd.go syscall_openbsd.go syscall_openbsd_amd64.go -+// go run mksyscall.go -openbsd -libc -tags openbsd,amd64 syscall_bsd.go syscall_openbsd.go syscall_openbsd_amd64.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build openbsd && amd64 - // +build openbsd,amd64 - - package unix -@@ -15,7 +16,7 @@ var _ syscall.Errno - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func getgroups(ngid int, gid *_Gid_t) (n int, err error) { -- r0, _, e1 := RawSyscall(SYS_GETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) -+ r0, _, e1 := syscall_rawSyscall(libc_getgroups_trampoline_addr, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -23,20 +24,28 @@ func getgroups(ngid int, gid *_Gid_t) (n int, err error) { - return - } - -+var libc_getgroups_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getgroups getgroups "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func setgroups(ngid int, gid *_Gid_t) (err error) { -- _, _, e1 := RawSyscall(SYS_SETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setgroups_trampoline_addr, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setgroups_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setgroups setgroups "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) { -- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_wait4_trampoline_addr, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0) - wpid = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -44,10 +53,14 @@ func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err - return - } - -+var libc_wait4_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_wait4 wait4 "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { -- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ r0, _, e1 := syscall_syscall(libc_accept_trampoline_addr, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -55,30 +68,42 @@ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { - return - } - -+var libc_accept_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_accept accept "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -- _, _, e1 := Syscall(SYS_BIND, uintptr(s), uintptr(addr), uintptr(addrlen)) -+ _, _, e1 := syscall_syscall(libc_bind_trampoline_addr, uintptr(s), uintptr(addr), uintptr(addrlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_bind_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_bind bind "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -- _, _, e1 := Syscall(SYS_CONNECT, uintptr(s), uintptr(addr), uintptr(addrlen)) -+ _, _, e1 := syscall_syscall(libc_connect_trampoline_addr, uintptr(s), uintptr(addr), uintptr(addrlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_connect_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_connect connect "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func socket(domain int, typ int, proto int) (fd int, err error) { -- r0, _, e1 := RawSyscall(SYS_SOCKET, uintptr(domain), uintptr(typ), uintptr(proto)) -+ r0, _, e1 := syscall_rawSyscall(libc_socket_trampoline_addr, uintptr(domain), uintptr(typ), uintptr(proto)) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -86,66 +111,94 @@ func socket(domain int, typ int, proto int) (fd int, err error) { - return - } - -+var libc_socket_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_socket socket "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) { -- _, _, e1 := Syscall6(SYS_GETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0) -+ _, _, e1 := syscall_syscall6(libc_getsockopt_trampoline_addr, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_getsockopt_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getsockopt getsockopt "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) { -- _, _, e1 := Syscall6(SYS_SETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0) -+ _, _, e1 := syscall_syscall6(libc_setsockopt_trampoline_addr, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setsockopt_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setsockopt setsockopt "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -- _, _, e1 := RawSyscall(SYS_GETPEERNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ _, _, e1 := syscall_rawSyscall(libc_getpeername_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_getpeername_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getpeername getpeername "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -- _, _, e1 := RawSyscall(SYS_GETSOCKNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ _, _, e1 := syscall_rawSyscall(libc_getsockname_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_getsockname_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getsockname getsockname "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Shutdown(s int, how int) (err error) { -- _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(s), uintptr(how), 0) -+ _, _, e1 := syscall_syscall(libc_shutdown_trampoline_addr, uintptr(s), uintptr(how), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_shutdown_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_shutdown shutdown "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) { -- _, _, e1 := RawSyscall6(SYS_SOCKETPAIR, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0) -+ _, _, e1 := syscall_rawSyscall6(libc_socketpair_trampoline_addr, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_socketpair_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_socketpair socketpair "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) { -@@ -155,7 +208,7 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall6(SYS_RECVFROM, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) -+ r0, _, e1 := syscall_syscall6(libc_recvfrom_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -163,6 +216,10 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl - return - } - -+var libc_recvfrom_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_recvfrom recvfrom "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) { -@@ -172,17 +229,21 @@ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) ( - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall6(SYS_SENDTO, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen)) -+ _, _, e1 := syscall_syscall6(libc_sendto_trampoline_addr, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_sendto_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_sendto sendto "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_RECVMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -+ r0, _, e1 := syscall_syscall(libc_recvmsg_trampoline_addr, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -190,10 +251,14 @@ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) { - return - } - -+var libc_recvmsg_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_recvmsg recvmsg "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_SENDMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -+ r0, _, e1 := syscall_syscall(libc_sendmsg_trampoline_addr, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -201,10 +266,14 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { - return - } - -+var libc_sendmsg_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_sendmsg sendmsg "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, nevent int, timeout *Timespec) (n int, err error) { -- r0, _, e1 := Syscall6(SYS_KEVENT, uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout))) -+ r0, _, e1 := syscall_syscall6(libc_kevent_trampoline_addr, uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -212,6 +281,10 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne - return - } - -+var libc_kevent_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_kevent kevent "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func utimes(path string, timeval *[2]Timeval) (err error) { -@@ -220,27 +293,35 @@ func utimes(path string, timeval *[2]Timeval) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0) -+ _, _, e1 := syscall_syscall(libc_utimes_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_utimes_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_utimes utimes "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func futimes(fd int, timeval *[2]Timeval) (err error) { -- _, _, e1 := Syscall(SYS_FUTIMES, uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0) -+ _, _, e1 := syscall_syscall(libc_futimes_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_futimes_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_futimes futimes "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) -+ r0, _, e1 := syscall_syscall(libc_poll_trampoline_addr, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -248,6 +329,10 @@ func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { - return - } - -+var libc_poll_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_poll poll "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Madvise(b []byte, behav int) (err error) { -@@ -257,13 +342,17 @@ func Madvise(b []byte, behav int) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(behav)) -+ _, _, e1 := syscall_syscall(libc_madvise_trampoline_addr, uintptr(_p0), uintptr(len(b)), uintptr(behav)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_madvise_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_madvise madvise "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mlock(b []byte) (err error) { -@@ -273,23 +362,31 @@ func Mlock(b []byte) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0) -+ _, _, e1 := syscall_syscall(libc_mlock_trampoline_addr, uintptr(_p0), uintptr(len(b)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mlock_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mlock mlock "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mlockall(flags int) (err error) { -- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall(libc_mlockall_trampoline_addr, uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mlockall_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mlockall mlockall "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mprotect(b []byte, prot int) (err error) { -@@ -299,13 +396,17 @@ func Mprotect(b []byte, prot int) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot)) -+ _, _, e1 := syscall_syscall(libc_mprotect_trampoline_addr, uintptr(_p0), uintptr(len(b)), uintptr(prot)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mprotect_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mprotect mprotect "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Msync(b []byte, flags int) (err error) { -@@ -315,13 +416,17 @@ func Msync(b []byte, flags int) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags)) -+ _, _, e1 := syscall_syscall(libc_msync_trampoline_addr, uintptr(_p0), uintptr(len(b)), uintptr(flags)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_msync_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_msync msync "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Munlock(b []byte) (err error) { -@@ -331,33 +436,45 @@ func Munlock(b []byte) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0) -+ _, _, e1 := syscall_syscall(libc_munlock_trampoline_addr, uintptr(_p0), uintptr(len(b)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_munlock_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_munlock munlock "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Munlockall() (err error) { -- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0) -+ _, _, e1 := syscall_syscall(libc_munlockall_trampoline_addr, 0, 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_munlockall_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_munlockall munlockall "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func pipe2(p *[2]_C_int, flags int) (err error) { -- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0) -+ _, _, e1 := syscall_rawSyscall(libc_pipe2_trampoline_addr, uintptr(unsafe.Pointer(p)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_pipe2_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_pipe2 pipe2 "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getdents(fd int, buf []byte) (n int, err error) { -@@ -367,7 +484,7 @@ func Getdents(fd int, buf []byte) (n int, err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall(SYS_GETDENTS, uintptr(fd), uintptr(_p0), uintptr(len(buf))) -+ r0, _, e1 := syscall_syscall(libc_getdents_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(buf))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -375,6 +492,10 @@ func Getdents(fd int, buf []byte) (n int, err error) { - return - } - -+var libc_getdents_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getdents getdents "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getcwd(buf []byte) (n int, err error) { -@@ -384,7 +505,7 @@ func Getcwd(buf []byte) (n int, err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0) -+ r0, _, e1 := syscall_syscall(libc_getcwd_trampoline_addr, uintptr(_p0), uintptr(len(buf)), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -392,16 +513,24 @@ func Getcwd(buf []byte) (n int, err error) { - return - } - -+var libc_getcwd_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getcwd getcwd "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func ioctl(fd int, req uint, arg uintptr) (err error) { -- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg)) -+ _, _, e1 := syscall_syscall(libc_ioctl_trampoline_addr, uintptr(fd), uintptr(req), uintptr(arg)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_ioctl_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_ioctl ioctl "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) { -@@ -411,17 +540,21 @@ func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) -+ _, _, e1 := syscall_syscall6(libc_sysctl_trampoline_addr, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_sysctl_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_sysctl sysctl "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) { -- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_ppoll_trampoline_addr, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -429,6 +562,10 @@ func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, - return - } - -+var libc_ppoll_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_ppoll ppoll "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Access(path string, mode uint32) (err error) { -@@ -437,23 +574,31 @@ func Access(path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_ACCESS, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_access_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_access_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_access access "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Adjtime(delta *Timeval, olddelta *Timeval) (err error) { -- _, _, e1 := Syscall(SYS_ADJTIME, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0) -+ _, _, e1 := syscall_syscall(libc_adjtime_trampoline_addr, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_adjtime_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_adjtime adjtime "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Chdir(path string) (err error) { -@@ -462,13 +607,17 @@ func Chdir(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_chdir_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_chdir_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_chdir chdir "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Chflags(path string, flags int) (err error) { -@@ -477,13 +626,17 @@ func Chflags(path string, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_CHFLAGS, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall(libc_chflags_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_chflags_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_chflags chflags "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Chmod(path string, mode uint32) (err error) { -@@ -492,13 +645,17 @@ func Chmod(path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_CHMOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_chmod_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_chmod_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_chmod chmod "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Chown(path string, uid int, gid int) (err error) { -@@ -507,13 +664,17 @@ func Chown(path string, uid int, gid int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_CHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) -+ _, _, e1 := syscall_syscall(libc_chown_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_chown_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_chown chown "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Chroot(path string) (err error) { -@@ -522,27 +683,35 @@ func Chroot(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_chroot_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_chroot_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_chroot chroot "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Close(fd int) (err error) { -- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0) -+ _, _, e1 := syscall_syscall(libc_close_trampoline_addr, uintptr(fd), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_close_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_close close "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Dup(fd int) (nfd int, err error) { -- r0, _, e1 := Syscall(SYS_DUP, uintptr(fd), 0, 0) -+ r0, _, e1 := syscall_syscall(libc_dup_trampoline_addr, uintptr(fd), 0, 0) - nfd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -550,33 +719,49 @@ func Dup(fd int) (nfd int, err error) { - return - } - -+var libc_dup_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_dup dup "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Dup2(from int, to int) (err error) { -- _, _, e1 := Syscall(SYS_DUP2, uintptr(from), uintptr(to), 0) -+ _, _, e1 := syscall_syscall(libc_dup2_trampoline_addr, uintptr(from), uintptr(to), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_dup2_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_dup2 dup2 "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Dup3(from int, to int, flags int) (err error) { -- _, _, e1 := Syscall(SYS_DUP3, uintptr(from), uintptr(to), uintptr(flags)) -+ _, _, e1 := syscall_syscall(libc_dup3_trampoline_addr, uintptr(from), uintptr(to), uintptr(flags)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_dup3_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_dup3 dup3 "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Exit(code int) { -- Syscall(SYS_EXIT, uintptr(code), 0, 0) -+ syscall_syscall(libc_exit_trampoline_addr, uintptr(code), 0, 0) - return - } - -+var libc_exit_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_exit exit "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) { -@@ -585,43 +770,59 @@ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_faccessat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_faccessat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_faccessat faccessat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchdir(fd int) (err error) { -- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0) -+ _, _, e1 := syscall_syscall(libc_fchdir_trampoline_addr, uintptr(fd), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fchdir_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fchdir fchdir "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchflags(fd int, flags int) (err error) { -- _, _, e1 := Syscall(SYS_FCHFLAGS, uintptr(fd), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall(libc_fchflags_trampoline_addr, uintptr(fd), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fchflags_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fchflags fchflags "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchmod(fd int, mode uint32) (err error) { -- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_fchmod_trampoline_addr, uintptr(fd), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fchmod_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fchmod fchmod "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) { -@@ -630,23 +831,31 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_fchmodat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fchmodat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fchmodat fchmodat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchown(fd int, uid int, gid int) (err error) { -- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid)) -+ _, _, e1 := syscall_syscall(libc_fchown_trampoline_addr, uintptr(fd), uintptr(uid), uintptr(gid)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fchown_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fchown fchown "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) { -@@ -655,27 +864,35 @@ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall6(libc_fchownat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fchownat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fchownat fchownat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Flock(fd int, how int) (err error) { -- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0) -+ _, _, e1 := syscall_syscall(libc_flock_trampoline_addr, uintptr(fd), uintptr(how), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_flock_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_flock flock "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fpathconf(fd int, name int) (val int, err error) { -- r0, _, e1 := Syscall(SYS_FPATHCONF, uintptr(fd), uintptr(name), 0) -+ r0, _, e1 := syscall_syscall(libc_fpathconf_trampoline_addr, uintptr(fd), uintptr(name), 0) - val = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -683,16 +900,24 @@ func Fpathconf(fd int, name int) (val int, err error) { - return - } - -+var libc_fpathconf_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fpathconf fpathconf "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fstat(fd int, stat *Stat_t) (err error) { -- _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_fstat_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fstat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fstat fstat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) { -@@ -701,71 +926,99 @@ func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_fstatat_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fstatat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fstatat fstatat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fstatfs(fd int, stat *Statfs_t) (err error) { -- _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_fstatfs_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fstatfs_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fstatfs fstatfs "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fsync(fd int) (err error) { -- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0) -+ _, _, e1 := syscall_syscall(libc_fsync_trampoline_addr, uintptr(fd), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fsync_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fsync fsync "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Ftruncate(fd int, length int64) (err error) { -- _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), 0, uintptr(length)) -+ _, _, e1 := syscall_syscall(libc_ftruncate_trampoline_addr, uintptr(fd), uintptr(length), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_ftruncate_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_ftruncate ftruncate "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getegid() (egid int) { -- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getegid_trampoline_addr, 0, 0, 0) - egid = int(r0) - return - } - -+var libc_getegid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getegid getegid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Geteuid() (uid int) { -- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_geteuid_trampoline_addr, 0, 0, 0) - uid = int(r0) - return - } - -+var libc_geteuid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_geteuid geteuid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getgid() (gid int) { -- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getgid_trampoline_addr, 0, 0, 0) - gid = int(r0) - return - } - -+var libc_getgid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getgid getgid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getpgid(pid int) (pgid int, err error) { -- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0) -+ r0, _, e1 := syscall_rawSyscall(libc_getpgid_trampoline_addr, uintptr(pid), 0, 0) - pgid = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -773,34 +1026,50 @@ func Getpgid(pid int) (pgid int, err error) { - return - } - -+var libc_getpgid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getpgid getpgid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getpgrp() (pgrp int) { -- r0, _, _ := RawSyscall(SYS_GETPGRP, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getpgrp_trampoline_addr, 0, 0, 0) - pgrp = int(r0) - return - } - -+var libc_getpgrp_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getpgrp getpgrp "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getpid() (pid int) { -- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getpid_trampoline_addr, 0, 0, 0) - pid = int(r0) - return - } - -+var libc_getpid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getpid getpid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getppid() (ppid int) { -- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getppid_trampoline_addr, 0, 0, 0) - ppid = int(r0) - return - } - -+var libc_getppid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getppid getppid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getpriority(which int, who int) (prio int, err error) { -- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0) -+ r0, _, e1 := syscall_syscall(libc_getpriority_trampoline_addr, uintptr(which), uintptr(who), 0) - prio = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -808,20 +1077,28 @@ func Getpriority(which int, who int) (prio int, err error) { - return - } - -+var libc_getpriority_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getpriority getpriority "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getrlimit(which int, lim *Rlimit) (err error) { -- _, _, e1 := RawSyscall(SYS_GETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) -+ _, _, e1 := syscall_rawSyscall(libc_getrlimit_trampoline_addr, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_getrlimit_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getrlimit getrlimit "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getrtable() (rtable int, err error) { -- r0, _, e1 := RawSyscall(SYS_GETRTABLE, 0, 0, 0) -+ r0, _, e1 := syscall_rawSyscall(libc_getrtable_trampoline_addr, 0, 0, 0) - rtable = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -829,20 +1106,28 @@ func Getrtable() (rtable int, err error) { - return - } - -+var libc_getrtable_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getrtable getrtable "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getrusage(who int, rusage *Rusage) (err error) { -- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0) -+ _, _, e1 := syscall_rawSyscall(libc_getrusage_trampoline_addr, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_getrusage_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getrusage getrusage "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getsid(pid int) (sid int, err error) { -- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0) -+ r0, _, e1 := syscall_rawSyscall(libc_getsid_trampoline_addr, uintptr(pid), 0, 0) - sid = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -850,46 +1135,66 @@ func Getsid(pid int) (sid int, err error) { - return - } - -+var libc_getsid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getsid getsid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Gettimeofday(tv *Timeval) (err error) { -- _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_gettimeofday_trampoline_addr, uintptr(unsafe.Pointer(tv)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_gettimeofday_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_gettimeofday gettimeofday "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getuid() (uid int) { -- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getuid_trampoline_addr, 0, 0, 0) - uid = int(r0) - return - } - -+var libc_getuid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getuid getuid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Issetugid() (tainted bool) { -- r0, _, _ := Syscall(SYS_ISSETUGID, 0, 0, 0) -+ r0, _, _ := syscall_syscall(libc_issetugid_trampoline_addr, 0, 0, 0) - tainted = bool(r0 != 0) - return - } - -+var libc_issetugid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_issetugid issetugid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Kill(pid int, signum syscall.Signal) (err error) { -- _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), 0) -+ _, _, e1 := syscall_syscall(libc_kill_trampoline_addr, uintptr(pid), uintptr(signum), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_kill_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_kill kill "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Kqueue() (fd int, err error) { -- r0, _, e1 := Syscall(SYS_KQUEUE, 0, 0, 0) -+ r0, _, e1 := syscall_syscall(libc_kqueue_trampoline_addr, 0, 0, 0) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -897,6 +1202,10 @@ func Kqueue() (fd int, err error) { - return - } - -+var libc_kqueue_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_kqueue kqueue "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Lchown(path string, uid int, gid int) (err error) { -@@ -905,13 +1214,17 @@ func Lchown(path string, uid int, gid int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_LCHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) -+ _, _, e1 := syscall_syscall(libc_lchown_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_lchown_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_lchown lchown "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Link(path string, link string) (err error) { -@@ -925,13 +1238,17 @@ func Link(path string, link string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -+ _, _, e1 := syscall_syscall(libc_link_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_link_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_link link "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) { -@@ -945,23 +1262,31 @@ func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err er - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall6(libc_linkat_trampoline_addr, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_linkat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_linkat linkat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Listen(s int, backlog int) (err error) { -- _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0) -+ _, _, e1 := syscall_syscall(libc_listen_trampoline_addr, uintptr(s), uintptr(backlog), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_listen_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_listen listen "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Lstat(path string, stat *Stat_t) (err error) { -@@ -970,13 +1295,17 @@ func Lstat(path string, stat *Stat_t) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_LSTAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_lstat_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_lstat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_lstat lstat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mkdir(path string, mode uint32) (err error) { -@@ -985,13 +1314,17 @@ func Mkdir(path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_MKDIR, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_mkdir_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mkdir_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mkdir mkdir "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mkdirat(dirfd int, path string, mode uint32) (err error) { -@@ -1000,13 +1333,17 @@ func Mkdirat(dirfd int, path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) -+ _, _, e1 := syscall_syscall(libc_mkdirat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mkdirat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mkdirat mkdirat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mkfifo(path string, mode uint32) (err error) { -@@ -1015,13 +1352,17 @@ func Mkfifo(path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_MKFIFO, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_mkfifo_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mkfifo_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mkfifo mkfifo "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mkfifoat(dirfd int, path string, mode uint32) (err error) { -@@ -1030,13 +1371,17 @@ func Mkfifoat(dirfd int, path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_MKFIFOAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) -+ _, _, e1 := syscall_syscall(libc_mkfifoat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mkfifoat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mkfifoat mkfifoat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mknod(path string, mode uint32, dev int) (err error) { -@@ -1045,13 +1390,17 @@ func Mknod(path string, mode uint32, dev int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_MKNOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) -+ _, _, e1 := syscall_syscall(libc_mknod_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mknod_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mknod mknod "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) { -@@ -1060,23 +1409,31 @@ func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_mknodat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mknodat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mknodat mknodat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Nanosleep(time *Timespec, leftover *Timespec) (err error) { -- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0) -+ _, _, e1 := syscall_syscall(libc_nanosleep_trampoline_addr, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_nanosleep_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_nanosleep nanosleep "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Open(path string, mode int, perm uint32) (fd int, err error) { -@@ -1085,7 +1442,7 @@ func Open(path string, mode int, perm uint32) (fd int, err error) { - if err != nil { - return - } -- r0, _, e1 := Syscall(SYS_OPEN, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm)) -+ r0, _, e1 := syscall_syscall(libc_open_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm)) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1093,6 +1450,10 @@ func Open(path string, mode int, perm uint32) (fd int, err error) { - return - } - -+var libc_open_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_open open "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) { -@@ -1101,7 +1462,7 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) { - if err != nil { - return - } -- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_openat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1109,6 +1470,10 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) { - return - } - -+var libc_openat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_openat openat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Pathconf(path string, name int) (val int, err error) { -@@ -1117,7 +1482,7 @@ func Pathconf(path string, name int) (val int, err error) { - if err != nil { - return - } -- r0, _, e1 := Syscall(SYS_PATHCONF, uintptr(unsafe.Pointer(_p0)), uintptr(name), 0) -+ r0, _, e1 := syscall_syscall(libc_pathconf_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(name), 0) - val = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1125,16 +1490,20 @@ func Pathconf(path string, name int) (val int, err error) { - return - } - -+var libc_pathconf_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_pathconf pathconf "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall6(SYS_PREAD, uintptr(fd), uintptr(_p0), uintptr(len(p)), 0, uintptr(offset), 0) -+ r0, _, e1 := syscall_syscall6(libc_pread_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1142,16 +1511,20 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - return - } - -+var libc_pread_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_pread pread "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall6(SYS_PWRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)), 0, uintptr(offset), 0) -+ r0, _, e1 := syscall_syscall6(libc_pwrite_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1159,6 +1532,10 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) { - return - } - -+var libc_pwrite_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_pwrite pwrite "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func read(fd int, p []byte) (n int, err error) { -@@ -1168,7 +1545,7 @@ func read(fd int, p []byte) (n int, err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p))) -+ r0, _, e1 := syscall_syscall(libc_read_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1176,6 +1553,10 @@ func read(fd int, p []byte) (n int, err error) { - return - } - -+var libc_read_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_read read "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Readlink(path string, buf []byte) (n int, err error) { -@@ -1190,7 +1571,7 @@ func Readlink(path string, buf []byte) (n int, err error) { - } else { - _p1 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall(SYS_READLINK, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf))) -+ r0, _, e1 := syscall_syscall(libc_readlink_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1198,6 +1579,10 @@ func Readlink(path string, buf []byte) (n int, err error) { - return - } - -+var libc_readlink_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_readlink readlink "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) { -@@ -1212,7 +1597,7 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) { - } else { - _p1 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_readlinkat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1220,6 +1605,10 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) { - return - } - -+var libc_readlinkat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_readlinkat readlinkat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Rename(from string, to string) (err error) { -@@ -1233,13 +1622,17 @@ func Rename(from string, to string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_RENAME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -+ _, _, e1 := syscall_syscall(libc_rename_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_rename_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_rename rename "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Renameat(fromfd int, from string, tofd int, to string) (err error) { -@@ -1253,13 +1646,17 @@ func Renameat(fromfd int, from string, tofd int, to string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_renameat_trampoline_addr, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_renameat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_renameat renameat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Revoke(path string) (err error) { -@@ -1268,13 +1665,17 @@ func Revoke(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_REVOKE, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_revoke_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_revoke_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_revoke revoke "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Rmdir(path string) (err error) { -@@ -1283,17 +1684,21 @@ func Rmdir(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_RMDIR, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_rmdir_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_rmdir_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_rmdir rmdir "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { -- r0, _, e1 := Syscall6(SYS_LSEEK, uintptr(fd), 0, uintptr(offset), uintptr(whence), 0, 0) -+ r0, _, e1 := syscall_syscall(libc_lseek_trampoline_addr, uintptr(fd), uintptr(offset), uintptr(whence)) - newoffset = int64(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1301,10 +1706,14 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { - return - } - -+var libc_lseek_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_lseek lseek "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) { -- r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0) -+ r0, _, e1 := syscall_syscall6(libc_select_trampoline_addr, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1312,36 +1721,52 @@ func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err - return - } - -+var libc_select_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_select select "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setegid(egid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETEGID, uintptr(egid), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_setegid_trampoline_addr, uintptr(egid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setegid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setegid setegid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Seteuid(euid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETEUID, uintptr(euid), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_seteuid_trampoline_addr, uintptr(euid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_seteuid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_seteuid seteuid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setgid(gid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETGID, uintptr(gid), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_setgid_trampoline_addr, uintptr(gid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setgid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setgid setgid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setlogin(name string) (err error) { -@@ -1350,97 +1775,133 @@ func Setlogin(name string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_SETLOGIN, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_setlogin_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setlogin_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setlogin setlogin "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setpgid(pid int, pgid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setpgid_trampoline_addr, uintptr(pid), uintptr(pgid), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setpgid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setpgid setpgid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setpriority(which int, who int, prio int) (err error) { -- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio)) -+ _, _, e1 := syscall_syscall(libc_setpriority_trampoline_addr, uintptr(which), uintptr(who), uintptr(prio)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setpriority_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setpriority setpriority "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setregid(rgid int, egid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setregid_trampoline_addr, uintptr(rgid), uintptr(egid), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setregid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setregid setregid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setreuid(ruid int, euid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setreuid_trampoline_addr, uintptr(ruid), uintptr(euid), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setreuid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setreuid setreuid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setresgid(rgid int, egid int, sgid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESGID, uintptr(rgid), uintptr(egid), uintptr(sgid)) -+ _, _, e1 := syscall_rawSyscall(libc_setresgid_trampoline_addr, uintptr(rgid), uintptr(egid), uintptr(sgid)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setresgid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setresgid setresgid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setresuid(ruid int, euid int, suid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESUID, uintptr(ruid), uintptr(euid), uintptr(suid)) -+ _, _, e1 := syscall_rawSyscall(libc_setresuid_trampoline_addr, uintptr(ruid), uintptr(euid), uintptr(suid)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setresuid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setresuid setresuid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setrlimit(which int, lim *Rlimit) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setrlimit_trampoline_addr, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setrlimit_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setrlimit setrlimit "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setrtable(rtable int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRTABLE, uintptr(rtable), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_setrtable_trampoline_addr, uintptr(rtable), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setrtable_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setrtable setrtable "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setsid() (pid int, err error) { -- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0) -+ r0, _, e1 := syscall_rawSyscall(libc_setsid_trampoline_addr, 0, 0, 0) - pid = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1448,26 +1909,38 @@ func Setsid() (pid int, err error) { - return - } - -+var libc_setsid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setsid setsid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Settimeofday(tp *Timeval) (err error) { -- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_settimeofday_trampoline_addr, uintptr(unsafe.Pointer(tp)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_settimeofday_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_settimeofday settimeofday "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setuid(uid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETUID, uintptr(uid), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_setuid_trampoline_addr, uintptr(uid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setuid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setuid setuid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Stat(path string, stat *Stat_t) (err error) { -@@ -1476,13 +1949,17 @@ func Stat(path string, stat *Stat_t) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_STAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_stat_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_stat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_stat stat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Statfs(path string, stat *Statfs_t) (err error) { -@@ -1491,13 +1968,17 @@ func Statfs(path string, stat *Statfs_t) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_STATFS, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_statfs_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_statfs_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_statfs statfs "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Symlink(path string, link string) (err error) { -@@ -1511,13 +1992,17 @@ func Symlink(path string, link string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_SYMLINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -+ _, _, e1 := syscall_syscall(libc_symlink_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_symlink_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_symlink symlink "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) { -@@ -1531,23 +2016,31 @@ func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1))) -+ _, _, e1 := syscall_syscall(libc_symlinkat_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1))) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_symlinkat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_symlinkat symlinkat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Sync() (err error) { -- _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0) -+ _, _, e1 := syscall_syscall(libc_sync_trampoline_addr, 0, 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_sync_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_sync sync "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Truncate(path string, length int64) (err error) { -@@ -1556,21 +2049,29 @@ func Truncate(path string, length int64) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), 0, uintptr(length)) -+ _, _, e1 := syscall_syscall(libc_truncate_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_truncate_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_truncate truncate "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Umask(newmask int) (oldmask int) { -- r0, _, _ := Syscall(SYS_UMASK, uintptr(newmask), 0, 0) -+ r0, _, _ := syscall_syscall(libc_umask_trampoline_addr, uintptr(newmask), 0, 0) - oldmask = int(r0) - return - } - -+var libc_umask_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_umask umask "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Unlink(path string) (err error) { -@@ -1579,13 +2080,17 @@ func Unlink(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_UNLINK, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_unlink_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_unlink_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_unlink unlink "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Unlinkat(dirfd int, path string, flags int) (err error) { -@@ -1594,13 +2099,17 @@ func Unlinkat(dirfd int, path string, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags)) -+ _, _, e1 := syscall_syscall(libc_unlinkat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_unlinkat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_unlinkat unlinkat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Unmount(path string, flags int) (err error) { -@@ -1609,13 +2118,17 @@ func Unmount(path string, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_UNMOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall(libc_unmount_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_unmount_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_unmount unmount "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func write(fd int, p []byte) (n int, err error) { -@@ -1625,7 +2138,7 @@ func write(fd int, p []byte) (n int, err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p))) -+ r0, _, e1 := syscall_syscall(libc_write_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1633,10 +2146,14 @@ func write(fd int, p []byte) (n int, err error) { - return - } - -+var libc_write_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_write write "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) { -- r0, _, e1 := Syscall9(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), 0, uintptr(pos), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_mmap_trampoline_addr, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos)) - ret = uintptr(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1644,20 +2161,28 @@ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) ( - return - } - -+var libc_mmap_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mmap mmap "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func munmap(addr uintptr, length uintptr) (err error) { -- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0) -+ _, _, e1 := syscall_syscall(libc_munmap_trampoline_addr, uintptr(addr), uintptr(length), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_munmap_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_munmap munmap "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func readlen(fd int, buf *byte, nbuf int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) -+ r0, _, e1 := syscall_syscall(libc_read_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1668,7 +2193,7 @@ func readlen(fd int, buf *byte, nbuf int) (n int, err error) { - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func writelen(fd int, buf *byte, nbuf int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) -+ r0, _, e1 := syscall_syscall(libc_write_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1684,9 +2209,13 @@ func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_utimensat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } -+ -+var libc_utimensat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_utimensat utimensat "libc.so" -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.s b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.s -new file mode 100644 -index 0000000..243a666 ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.s -@@ -0,0 +1,796 @@ -+// go run mkasm.go openbsd amd64 -+// Code generated by the command above; DO NOT EDIT. -+ -+#include "textflag.h" -+ -+TEXT libc_getgroups_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getgroups(SB) -+ -+GLOBL ·libc_getgroups_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getgroups_trampoline_addr(SB)/8, $libc_getgroups_trampoline<>(SB) -+ -+TEXT libc_setgroups_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setgroups(SB) -+ -+GLOBL ·libc_setgroups_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setgroups_trampoline_addr(SB)/8, $libc_setgroups_trampoline<>(SB) -+ -+TEXT libc_wait4_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_wait4(SB) -+ -+GLOBL ·libc_wait4_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_wait4_trampoline_addr(SB)/8, $libc_wait4_trampoline<>(SB) -+ -+TEXT libc_accept_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_accept(SB) -+ -+GLOBL ·libc_accept_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_accept_trampoline_addr(SB)/8, $libc_accept_trampoline<>(SB) -+ -+TEXT libc_bind_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_bind(SB) -+ -+GLOBL ·libc_bind_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_bind_trampoline_addr(SB)/8, $libc_bind_trampoline<>(SB) -+ -+TEXT libc_connect_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_connect(SB) -+ -+GLOBL ·libc_connect_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_connect_trampoline_addr(SB)/8, $libc_connect_trampoline<>(SB) -+ -+TEXT libc_socket_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_socket(SB) -+ -+GLOBL ·libc_socket_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_socket_trampoline_addr(SB)/8, $libc_socket_trampoline<>(SB) -+ -+TEXT libc_getsockopt_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getsockopt(SB) -+ -+GLOBL ·libc_getsockopt_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getsockopt_trampoline_addr(SB)/8, $libc_getsockopt_trampoline<>(SB) -+ -+TEXT libc_setsockopt_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setsockopt(SB) -+ -+GLOBL ·libc_setsockopt_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setsockopt_trampoline_addr(SB)/8, $libc_setsockopt_trampoline<>(SB) -+ -+TEXT libc_getpeername_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getpeername(SB) -+ -+GLOBL ·libc_getpeername_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getpeername_trampoline_addr(SB)/8, $libc_getpeername_trampoline<>(SB) -+ -+TEXT libc_getsockname_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getsockname(SB) -+ -+GLOBL ·libc_getsockname_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getsockname_trampoline_addr(SB)/8, $libc_getsockname_trampoline<>(SB) -+ -+TEXT libc_shutdown_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_shutdown(SB) -+ -+GLOBL ·libc_shutdown_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_shutdown_trampoline_addr(SB)/8, $libc_shutdown_trampoline<>(SB) -+ -+TEXT libc_socketpair_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_socketpair(SB) -+ -+GLOBL ·libc_socketpair_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_socketpair_trampoline_addr(SB)/8, $libc_socketpair_trampoline<>(SB) -+ -+TEXT libc_recvfrom_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_recvfrom(SB) -+ -+GLOBL ·libc_recvfrom_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_recvfrom_trampoline_addr(SB)/8, $libc_recvfrom_trampoline<>(SB) -+ -+TEXT libc_sendto_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_sendto(SB) -+ -+GLOBL ·libc_sendto_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_sendto_trampoline_addr(SB)/8, $libc_sendto_trampoline<>(SB) -+ -+TEXT libc_recvmsg_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_recvmsg(SB) -+ -+GLOBL ·libc_recvmsg_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_recvmsg_trampoline_addr(SB)/8, $libc_recvmsg_trampoline<>(SB) -+ -+TEXT libc_sendmsg_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_sendmsg(SB) -+ -+GLOBL ·libc_sendmsg_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_sendmsg_trampoline_addr(SB)/8, $libc_sendmsg_trampoline<>(SB) -+ -+TEXT libc_kevent_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_kevent(SB) -+ -+GLOBL ·libc_kevent_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_kevent_trampoline_addr(SB)/8, $libc_kevent_trampoline<>(SB) -+ -+TEXT libc_utimes_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_utimes(SB) -+ -+GLOBL ·libc_utimes_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_utimes_trampoline_addr(SB)/8, $libc_utimes_trampoline<>(SB) -+ -+TEXT libc_futimes_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_futimes(SB) -+ -+GLOBL ·libc_futimes_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_futimes_trampoline_addr(SB)/8, $libc_futimes_trampoline<>(SB) -+ -+TEXT libc_poll_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_poll(SB) -+ -+GLOBL ·libc_poll_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_poll_trampoline_addr(SB)/8, $libc_poll_trampoline<>(SB) -+ -+TEXT libc_madvise_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_madvise(SB) -+ -+GLOBL ·libc_madvise_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_madvise_trampoline_addr(SB)/8, $libc_madvise_trampoline<>(SB) -+ -+TEXT libc_mlock_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mlock(SB) -+ -+GLOBL ·libc_mlock_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mlock_trampoline_addr(SB)/8, $libc_mlock_trampoline<>(SB) -+ -+TEXT libc_mlockall_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mlockall(SB) -+ -+GLOBL ·libc_mlockall_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mlockall_trampoline_addr(SB)/8, $libc_mlockall_trampoline<>(SB) -+ -+TEXT libc_mprotect_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mprotect(SB) -+ -+GLOBL ·libc_mprotect_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mprotect_trampoline_addr(SB)/8, $libc_mprotect_trampoline<>(SB) -+ -+TEXT libc_msync_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_msync(SB) -+ -+GLOBL ·libc_msync_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_msync_trampoline_addr(SB)/8, $libc_msync_trampoline<>(SB) -+ -+TEXT libc_munlock_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_munlock(SB) -+ -+GLOBL ·libc_munlock_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_munlock_trampoline_addr(SB)/8, $libc_munlock_trampoline<>(SB) -+ -+TEXT libc_munlockall_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_munlockall(SB) -+ -+GLOBL ·libc_munlockall_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_munlockall_trampoline_addr(SB)/8, $libc_munlockall_trampoline<>(SB) -+ -+TEXT libc_pipe2_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_pipe2(SB) -+ -+GLOBL ·libc_pipe2_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_pipe2_trampoline_addr(SB)/8, $libc_pipe2_trampoline<>(SB) -+ -+TEXT libc_getdents_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getdents(SB) -+ -+GLOBL ·libc_getdents_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getdents_trampoline_addr(SB)/8, $libc_getdents_trampoline<>(SB) -+ -+TEXT libc_getcwd_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getcwd(SB) -+ -+GLOBL ·libc_getcwd_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getcwd_trampoline_addr(SB)/8, $libc_getcwd_trampoline<>(SB) -+ -+TEXT libc_ioctl_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_ioctl(SB) -+ -+GLOBL ·libc_ioctl_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_ioctl_trampoline_addr(SB)/8, $libc_ioctl_trampoline<>(SB) -+ -+TEXT libc_sysctl_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_sysctl(SB) -+ -+GLOBL ·libc_sysctl_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_sysctl_trampoline_addr(SB)/8, $libc_sysctl_trampoline<>(SB) -+ -+TEXT libc_ppoll_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_ppoll(SB) -+ -+GLOBL ·libc_ppoll_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_ppoll_trampoline_addr(SB)/8, $libc_ppoll_trampoline<>(SB) -+ -+TEXT libc_access_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_access(SB) -+ -+GLOBL ·libc_access_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_access_trampoline_addr(SB)/8, $libc_access_trampoline<>(SB) -+ -+TEXT libc_adjtime_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_adjtime(SB) -+ -+GLOBL ·libc_adjtime_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_adjtime_trampoline_addr(SB)/8, $libc_adjtime_trampoline<>(SB) -+ -+TEXT libc_chdir_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_chdir(SB) -+ -+GLOBL ·libc_chdir_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_chdir_trampoline_addr(SB)/8, $libc_chdir_trampoline<>(SB) -+ -+TEXT libc_chflags_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_chflags(SB) -+ -+GLOBL ·libc_chflags_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_chflags_trampoline_addr(SB)/8, $libc_chflags_trampoline<>(SB) -+ -+TEXT libc_chmod_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_chmod(SB) -+ -+GLOBL ·libc_chmod_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_chmod_trampoline_addr(SB)/8, $libc_chmod_trampoline<>(SB) -+ -+TEXT libc_chown_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_chown(SB) -+ -+GLOBL ·libc_chown_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_chown_trampoline_addr(SB)/8, $libc_chown_trampoline<>(SB) -+ -+TEXT libc_chroot_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_chroot(SB) -+ -+GLOBL ·libc_chroot_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_chroot_trampoline_addr(SB)/8, $libc_chroot_trampoline<>(SB) -+ -+TEXT libc_close_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_close(SB) -+ -+GLOBL ·libc_close_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_close_trampoline_addr(SB)/8, $libc_close_trampoline<>(SB) -+ -+TEXT libc_dup_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_dup(SB) -+ -+GLOBL ·libc_dup_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_dup_trampoline_addr(SB)/8, $libc_dup_trampoline<>(SB) -+ -+TEXT libc_dup2_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_dup2(SB) -+ -+GLOBL ·libc_dup2_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_dup2_trampoline_addr(SB)/8, $libc_dup2_trampoline<>(SB) -+ -+TEXT libc_dup3_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_dup3(SB) -+ -+GLOBL ·libc_dup3_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_dup3_trampoline_addr(SB)/8, $libc_dup3_trampoline<>(SB) -+ -+TEXT libc_exit_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_exit(SB) -+ -+GLOBL ·libc_exit_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_exit_trampoline_addr(SB)/8, $libc_exit_trampoline<>(SB) -+ -+TEXT libc_faccessat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_faccessat(SB) -+ -+GLOBL ·libc_faccessat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_faccessat_trampoline_addr(SB)/8, $libc_faccessat_trampoline<>(SB) -+ -+TEXT libc_fchdir_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fchdir(SB) -+ -+GLOBL ·libc_fchdir_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fchdir_trampoline_addr(SB)/8, $libc_fchdir_trampoline<>(SB) -+ -+TEXT libc_fchflags_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fchflags(SB) -+ -+GLOBL ·libc_fchflags_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fchflags_trampoline_addr(SB)/8, $libc_fchflags_trampoline<>(SB) -+ -+TEXT libc_fchmod_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fchmod(SB) -+ -+GLOBL ·libc_fchmod_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fchmod_trampoline_addr(SB)/8, $libc_fchmod_trampoline<>(SB) -+ -+TEXT libc_fchmodat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fchmodat(SB) -+ -+GLOBL ·libc_fchmodat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fchmodat_trampoline_addr(SB)/8, $libc_fchmodat_trampoline<>(SB) -+ -+TEXT libc_fchown_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fchown(SB) -+ -+GLOBL ·libc_fchown_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fchown_trampoline_addr(SB)/8, $libc_fchown_trampoline<>(SB) -+ -+TEXT libc_fchownat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fchownat(SB) -+ -+GLOBL ·libc_fchownat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fchownat_trampoline_addr(SB)/8, $libc_fchownat_trampoline<>(SB) -+ -+TEXT libc_flock_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_flock(SB) -+ -+GLOBL ·libc_flock_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_flock_trampoline_addr(SB)/8, $libc_flock_trampoline<>(SB) -+ -+TEXT libc_fpathconf_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fpathconf(SB) -+ -+GLOBL ·libc_fpathconf_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fpathconf_trampoline_addr(SB)/8, $libc_fpathconf_trampoline<>(SB) -+ -+TEXT libc_fstat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fstat(SB) -+ -+GLOBL ·libc_fstat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fstat_trampoline_addr(SB)/8, $libc_fstat_trampoline<>(SB) -+ -+TEXT libc_fstatat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fstatat(SB) -+ -+GLOBL ·libc_fstatat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fstatat_trampoline_addr(SB)/8, $libc_fstatat_trampoline<>(SB) -+ -+TEXT libc_fstatfs_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fstatfs(SB) -+ -+GLOBL ·libc_fstatfs_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fstatfs_trampoline_addr(SB)/8, $libc_fstatfs_trampoline<>(SB) -+ -+TEXT libc_fsync_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fsync(SB) -+ -+GLOBL ·libc_fsync_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fsync_trampoline_addr(SB)/8, $libc_fsync_trampoline<>(SB) -+ -+TEXT libc_ftruncate_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_ftruncate(SB) -+ -+GLOBL ·libc_ftruncate_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_ftruncate_trampoline_addr(SB)/8, $libc_ftruncate_trampoline<>(SB) -+ -+TEXT libc_getegid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getegid(SB) -+ -+GLOBL ·libc_getegid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getegid_trampoline_addr(SB)/8, $libc_getegid_trampoline<>(SB) -+ -+TEXT libc_geteuid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_geteuid(SB) -+ -+GLOBL ·libc_geteuid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_geteuid_trampoline_addr(SB)/8, $libc_geteuid_trampoline<>(SB) -+ -+TEXT libc_getgid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getgid(SB) -+ -+GLOBL ·libc_getgid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getgid_trampoline_addr(SB)/8, $libc_getgid_trampoline<>(SB) -+ -+TEXT libc_getpgid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getpgid(SB) -+ -+GLOBL ·libc_getpgid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getpgid_trampoline_addr(SB)/8, $libc_getpgid_trampoline<>(SB) -+ -+TEXT libc_getpgrp_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getpgrp(SB) -+ -+GLOBL ·libc_getpgrp_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getpgrp_trampoline_addr(SB)/8, $libc_getpgrp_trampoline<>(SB) -+ -+TEXT libc_getpid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getpid(SB) -+ -+GLOBL ·libc_getpid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getpid_trampoline_addr(SB)/8, $libc_getpid_trampoline<>(SB) -+ -+TEXT libc_getppid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getppid(SB) -+ -+GLOBL ·libc_getppid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getppid_trampoline_addr(SB)/8, $libc_getppid_trampoline<>(SB) -+ -+TEXT libc_getpriority_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getpriority(SB) -+ -+GLOBL ·libc_getpriority_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getpriority_trampoline_addr(SB)/8, $libc_getpriority_trampoline<>(SB) -+ -+TEXT libc_getrlimit_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getrlimit(SB) -+ -+GLOBL ·libc_getrlimit_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getrlimit_trampoline_addr(SB)/8, $libc_getrlimit_trampoline<>(SB) -+ -+TEXT libc_getrtable_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getrtable(SB) -+ -+GLOBL ·libc_getrtable_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getrtable_trampoline_addr(SB)/8, $libc_getrtable_trampoline<>(SB) -+ -+TEXT libc_getrusage_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getrusage(SB) -+ -+GLOBL ·libc_getrusage_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getrusage_trampoline_addr(SB)/8, $libc_getrusage_trampoline<>(SB) -+ -+TEXT libc_getsid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getsid(SB) -+ -+GLOBL ·libc_getsid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getsid_trampoline_addr(SB)/8, $libc_getsid_trampoline<>(SB) -+ -+TEXT libc_gettimeofday_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_gettimeofday(SB) -+ -+GLOBL ·libc_gettimeofday_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_gettimeofday_trampoline_addr(SB)/8, $libc_gettimeofday_trampoline<>(SB) -+ -+TEXT libc_getuid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getuid(SB) -+ -+GLOBL ·libc_getuid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getuid_trampoline_addr(SB)/8, $libc_getuid_trampoline<>(SB) -+ -+TEXT libc_issetugid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_issetugid(SB) -+ -+GLOBL ·libc_issetugid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_issetugid_trampoline_addr(SB)/8, $libc_issetugid_trampoline<>(SB) -+ -+TEXT libc_kill_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_kill(SB) -+ -+GLOBL ·libc_kill_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_kill_trampoline_addr(SB)/8, $libc_kill_trampoline<>(SB) -+ -+TEXT libc_kqueue_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_kqueue(SB) -+ -+GLOBL ·libc_kqueue_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_kqueue_trampoline_addr(SB)/8, $libc_kqueue_trampoline<>(SB) -+ -+TEXT libc_lchown_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_lchown(SB) -+ -+GLOBL ·libc_lchown_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_lchown_trampoline_addr(SB)/8, $libc_lchown_trampoline<>(SB) -+ -+TEXT libc_link_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_link(SB) -+ -+GLOBL ·libc_link_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_link_trampoline_addr(SB)/8, $libc_link_trampoline<>(SB) -+ -+TEXT libc_linkat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_linkat(SB) -+ -+GLOBL ·libc_linkat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_linkat_trampoline_addr(SB)/8, $libc_linkat_trampoline<>(SB) -+ -+TEXT libc_listen_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_listen(SB) -+ -+GLOBL ·libc_listen_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_listen_trampoline_addr(SB)/8, $libc_listen_trampoline<>(SB) -+ -+TEXT libc_lstat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_lstat(SB) -+ -+GLOBL ·libc_lstat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_lstat_trampoline_addr(SB)/8, $libc_lstat_trampoline<>(SB) -+ -+TEXT libc_mkdir_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mkdir(SB) -+ -+GLOBL ·libc_mkdir_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mkdir_trampoline_addr(SB)/8, $libc_mkdir_trampoline<>(SB) -+ -+TEXT libc_mkdirat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mkdirat(SB) -+ -+GLOBL ·libc_mkdirat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mkdirat_trampoline_addr(SB)/8, $libc_mkdirat_trampoline<>(SB) -+ -+TEXT libc_mkfifo_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mkfifo(SB) -+ -+GLOBL ·libc_mkfifo_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mkfifo_trampoline_addr(SB)/8, $libc_mkfifo_trampoline<>(SB) -+ -+TEXT libc_mkfifoat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mkfifoat(SB) -+ -+GLOBL ·libc_mkfifoat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mkfifoat_trampoline_addr(SB)/8, $libc_mkfifoat_trampoline<>(SB) -+ -+TEXT libc_mknod_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mknod(SB) -+ -+GLOBL ·libc_mknod_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mknod_trampoline_addr(SB)/8, $libc_mknod_trampoline<>(SB) -+ -+TEXT libc_mknodat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mknodat(SB) -+ -+GLOBL ·libc_mknodat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mknodat_trampoline_addr(SB)/8, $libc_mknodat_trampoline<>(SB) -+ -+TEXT libc_nanosleep_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_nanosleep(SB) -+ -+GLOBL ·libc_nanosleep_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_nanosleep_trampoline_addr(SB)/8, $libc_nanosleep_trampoline<>(SB) -+ -+TEXT libc_open_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_open(SB) -+ -+GLOBL ·libc_open_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_open_trampoline_addr(SB)/8, $libc_open_trampoline<>(SB) -+ -+TEXT libc_openat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_openat(SB) -+ -+GLOBL ·libc_openat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_openat_trampoline_addr(SB)/8, $libc_openat_trampoline<>(SB) -+ -+TEXT libc_pathconf_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_pathconf(SB) -+ -+GLOBL ·libc_pathconf_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_pathconf_trampoline_addr(SB)/8, $libc_pathconf_trampoline<>(SB) -+ -+TEXT libc_pread_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_pread(SB) -+ -+GLOBL ·libc_pread_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_pread_trampoline_addr(SB)/8, $libc_pread_trampoline<>(SB) -+ -+TEXT libc_pwrite_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_pwrite(SB) -+ -+GLOBL ·libc_pwrite_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_pwrite_trampoline_addr(SB)/8, $libc_pwrite_trampoline<>(SB) -+ -+TEXT libc_read_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_read(SB) -+ -+GLOBL ·libc_read_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_read_trampoline_addr(SB)/8, $libc_read_trampoline<>(SB) -+ -+TEXT libc_readlink_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_readlink(SB) -+ -+GLOBL ·libc_readlink_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_readlink_trampoline_addr(SB)/8, $libc_readlink_trampoline<>(SB) -+ -+TEXT libc_readlinkat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_readlinkat(SB) -+ -+GLOBL ·libc_readlinkat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_readlinkat_trampoline_addr(SB)/8, $libc_readlinkat_trampoline<>(SB) -+ -+TEXT libc_rename_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_rename(SB) -+ -+GLOBL ·libc_rename_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_rename_trampoline_addr(SB)/8, $libc_rename_trampoline<>(SB) -+ -+TEXT libc_renameat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_renameat(SB) -+ -+GLOBL ·libc_renameat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_renameat_trampoline_addr(SB)/8, $libc_renameat_trampoline<>(SB) -+ -+TEXT libc_revoke_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_revoke(SB) -+ -+GLOBL ·libc_revoke_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_revoke_trampoline_addr(SB)/8, $libc_revoke_trampoline<>(SB) -+ -+TEXT libc_rmdir_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_rmdir(SB) -+ -+GLOBL ·libc_rmdir_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_rmdir_trampoline_addr(SB)/8, $libc_rmdir_trampoline<>(SB) -+ -+TEXT libc_lseek_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_lseek(SB) -+ -+GLOBL ·libc_lseek_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_lseek_trampoline_addr(SB)/8, $libc_lseek_trampoline<>(SB) -+ -+TEXT libc_select_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_select(SB) -+ -+GLOBL ·libc_select_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_select_trampoline_addr(SB)/8, $libc_select_trampoline<>(SB) -+ -+TEXT libc_setegid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setegid(SB) -+ -+GLOBL ·libc_setegid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setegid_trampoline_addr(SB)/8, $libc_setegid_trampoline<>(SB) -+ -+TEXT libc_seteuid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_seteuid(SB) -+ -+GLOBL ·libc_seteuid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_seteuid_trampoline_addr(SB)/8, $libc_seteuid_trampoline<>(SB) -+ -+TEXT libc_setgid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setgid(SB) -+ -+GLOBL ·libc_setgid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setgid_trampoline_addr(SB)/8, $libc_setgid_trampoline<>(SB) -+ -+TEXT libc_setlogin_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setlogin(SB) -+ -+GLOBL ·libc_setlogin_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setlogin_trampoline_addr(SB)/8, $libc_setlogin_trampoline<>(SB) -+ -+TEXT libc_setpgid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setpgid(SB) -+ -+GLOBL ·libc_setpgid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setpgid_trampoline_addr(SB)/8, $libc_setpgid_trampoline<>(SB) -+ -+TEXT libc_setpriority_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setpriority(SB) -+ -+GLOBL ·libc_setpriority_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setpriority_trampoline_addr(SB)/8, $libc_setpriority_trampoline<>(SB) -+ -+TEXT libc_setregid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setregid(SB) -+ -+GLOBL ·libc_setregid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setregid_trampoline_addr(SB)/8, $libc_setregid_trampoline<>(SB) -+ -+TEXT libc_setreuid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setreuid(SB) -+ -+GLOBL ·libc_setreuid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setreuid_trampoline_addr(SB)/8, $libc_setreuid_trampoline<>(SB) -+ -+TEXT libc_setresgid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setresgid(SB) -+ -+GLOBL ·libc_setresgid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setresgid_trampoline_addr(SB)/8, $libc_setresgid_trampoline<>(SB) -+ -+TEXT libc_setresuid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setresuid(SB) -+ -+GLOBL ·libc_setresuid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setresuid_trampoline_addr(SB)/8, $libc_setresuid_trampoline<>(SB) -+ -+TEXT libc_setrlimit_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setrlimit(SB) -+ -+GLOBL ·libc_setrlimit_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setrlimit_trampoline_addr(SB)/8, $libc_setrlimit_trampoline<>(SB) -+ -+TEXT libc_setrtable_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setrtable(SB) -+ -+GLOBL ·libc_setrtable_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setrtable_trampoline_addr(SB)/8, $libc_setrtable_trampoline<>(SB) -+ -+TEXT libc_setsid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setsid(SB) -+ -+GLOBL ·libc_setsid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setsid_trampoline_addr(SB)/8, $libc_setsid_trampoline<>(SB) -+ -+TEXT libc_settimeofday_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_settimeofday(SB) -+ -+GLOBL ·libc_settimeofday_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_settimeofday_trampoline_addr(SB)/8, $libc_settimeofday_trampoline<>(SB) -+ -+TEXT libc_setuid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setuid(SB) -+ -+GLOBL ·libc_setuid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setuid_trampoline_addr(SB)/8, $libc_setuid_trampoline<>(SB) -+ -+TEXT libc_stat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_stat(SB) -+ -+GLOBL ·libc_stat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_stat_trampoline_addr(SB)/8, $libc_stat_trampoline<>(SB) -+ -+TEXT libc_statfs_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_statfs(SB) -+ -+GLOBL ·libc_statfs_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_statfs_trampoline_addr(SB)/8, $libc_statfs_trampoline<>(SB) -+ -+TEXT libc_symlink_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_symlink(SB) -+ -+GLOBL ·libc_symlink_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_symlink_trampoline_addr(SB)/8, $libc_symlink_trampoline<>(SB) -+ -+TEXT libc_symlinkat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_symlinkat(SB) -+ -+GLOBL ·libc_symlinkat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_symlinkat_trampoline_addr(SB)/8, $libc_symlinkat_trampoline<>(SB) -+ -+TEXT libc_sync_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_sync(SB) -+ -+GLOBL ·libc_sync_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_sync_trampoline_addr(SB)/8, $libc_sync_trampoline<>(SB) -+ -+TEXT libc_truncate_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_truncate(SB) -+ -+GLOBL ·libc_truncate_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_truncate_trampoline_addr(SB)/8, $libc_truncate_trampoline<>(SB) -+ -+TEXT libc_umask_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_umask(SB) -+ -+GLOBL ·libc_umask_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_umask_trampoline_addr(SB)/8, $libc_umask_trampoline<>(SB) -+ -+TEXT libc_unlink_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_unlink(SB) -+ -+GLOBL ·libc_unlink_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_unlink_trampoline_addr(SB)/8, $libc_unlink_trampoline<>(SB) -+ -+TEXT libc_unlinkat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_unlinkat(SB) -+ -+GLOBL ·libc_unlinkat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_unlinkat_trampoline_addr(SB)/8, $libc_unlinkat_trampoline<>(SB) -+ -+TEXT libc_unmount_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_unmount(SB) -+ -+GLOBL ·libc_unmount_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_unmount_trampoline_addr(SB)/8, $libc_unmount_trampoline<>(SB) -+ -+TEXT libc_write_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_write(SB) -+ -+GLOBL ·libc_write_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_write_trampoline_addr(SB)/8, $libc_write_trampoline<>(SB) -+ -+TEXT libc_mmap_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mmap(SB) -+ -+GLOBL ·libc_mmap_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mmap_trampoline_addr(SB)/8, $libc_mmap_trampoline<>(SB) -+ -+TEXT libc_munmap_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_munmap(SB) -+ -+GLOBL ·libc_munmap_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_munmap_trampoline_addr(SB)/8, $libc_munmap_trampoline<>(SB) -+ -+TEXT libc_utimensat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_utimensat(SB) -+ -+GLOBL ·libc_utimensat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_utimensat_trampoline_addr(SB)/8, $libc_utimensat_trampoline<>(SB) -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.go b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.go -index d7c878b..8da6791 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.go -@@ -1,6 +1,7 @@ --// go run mksyscall.go -l32 -openbsd -arm -tags openbsd,arm syscall_bsd.go syscall_openbsd.go syscall_openbsd_arm.go -+// go run mksyscall.go -l32 -openbsd -arm -libc -tags openbsd,arm syscall_bsd.go syscall_openbsd.go syscall_openbsd_arm.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build openbsd && arm - // +build openbsd,arm - - package unix -@@ -15,7 +16,7 @@ var _ syscall.Errno - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func getgroups(ngid int, gid *_Gid_t) (n int, err error) { -- r0, _, e1 := RawSyscall(SYS_GETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) -+ r0, _, e1 := syscall_rawSyscall(libc_getgroups_trampoline_addr, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -23,20 +24,28 @@ func getgroups(ngid int, gid *_Gid_t) (n int, err error) { - return - } - -+var libc_getgroups_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getgroups getgroups "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func setgroups(ngid int, gid *_Gid_t) (err error) { -- _, _, e1 := RawSyscall(SYS_SETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setgroups_trampoline_addr, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setgroups_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setgroups setgroups "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) { -- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_wait4_trampoline_addr, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0) - wpid = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -44,10 +53,14 @@ func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err - return - } - -+var libc_wait4_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_wait4 wait4 "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { -- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ r0, _, e1 := syscall_syscall(libc_accept_trampoline_addr, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -55,30 +68,42 @@ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { - return - } - -+var libc_accept_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_accept accept "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -- _, _, e1 := Syscall(SYS_BIND, uintptr(s), uintptr(addr), uintptr(addrlen)) -+ _, _, e1 := syscall_syscall(libc_bind_trampoline_addr, uintptr(s), uintptr(addr), uintptr(addrlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_bind_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_bind bind "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -- _, _, e1 := Syscall(SYS_CONNECT, uintptr(s), uintptr(addr), uintptr(addrlen)) -+ _, _, e1 := syscall_syscall(libc_connect_trampoline_addr, uintptr(s), uintptr(addr), uintptr(addrlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_connect_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_connect connect "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func socket(domain int, typ int, proto int) (fd int, err error) { -- r0, _, e1 := RawSyscall(SYS_SOCKET, uintptr(domain), uintptr(typ), uintptr(proto)) -+ r0, _, e1 := syscall_rawSyscall(libc_socket_trampoline_addr, uintptr(domain), uintptr(typ), uintptr(proto)) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -86,66 +111,94 @@ func socket(domain int, typ int, proto int) (fd int, err error) { - return - } - -+var libc_socket_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_socket socket "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) { -- _, _, e1 := Syscall6(SYS_GETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0) -+ _, _, e1 := syscall_syscall6(libc_getsockopt_trampoline_addr, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_getsockopt_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getsockopt getsockopt "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) { -- _, _, e1 := Syscall6(SYS_SETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0) -+ _, _, e1 := syscall_syscall6(libc_setsockopt_trampoline_addr, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setsockopt_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setsockopt setsockopt "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -- _, _, e1 := RawSyscall(SYS_GETPEERNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ _, _, e1 := syscall_rawSyscall(libc_getpeername_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_getpeername_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getpeername getpeername "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -- _, _, e1 := RawSyscall(SYS_GETSOCKNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ _, _, e1 := syscall_rawSyscall(libc_getsockname_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_getsockname_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getsockname getsockname "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Shutdown(s int, how int) (err error) { -- _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(s), uintptr(how), 0) -+ _, _, e1 := syscall_syscall(libc_shutdown_trampoline_addr, uintptr(s), uintptr(how), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_shutdown_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_shutdown shutdown "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) { -- _, _, e1 := RawSyscall6(SYS_SOCKETPAIR, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0) -+ _, _, e1 := syscall_rawSyscall6(libc_socketpair_trampoline_addr, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_socketpair_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_socketpair socketpair "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) { -@@ -155,7 +208,7 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall6(SYS_RECVFROM, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) -+ r0, _, e1 := syscall_syscall6(libc_recvfrom_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -163,6 +216,10 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl - return - } - -+var libc_recvfrom_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_recvfrom recvfrom "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) { -@@ -172,17 +229,21 @@ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) ( - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall6(SYS_SENDTO, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen)) -+ _, _, e1 := syscall_syscall6(libc_sendto_trampoline_addr, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_sendto_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_sendto sendto "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_RECVMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -+ r0, _, e1 := syscall_syscall(libc_recvmsg_trampoline_addr, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -190,10 +251,14 @@ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) { - return - } - -+var libc_recvmsg_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_recvmsg recvmsg "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_SENDMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -+ r0, _, e1 := syscall_syscall(libc_sendmsg_trampoline_addr, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -201,10 +266,14 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { - return - } - -+var libc_sendmsg_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_sendmsg sendmsg "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, nevent int, timeout *Timespec) (n int, err error) { -- r0, _, e1 := Syscall6(SYS_KEVENT, uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout))) -+ r0, _, e1 := syscall_syscall6(libc_kevent_trampoline_addr, uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -212,6 +281,10 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne - return - } - -+var libc_kevent_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_kevent kevent "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func utimes(path string, timeval *[2]Timeval) (err error) { -@@ -220,27 +293,35 @@ func utimes(path string, timeval *[2]Timeval) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0) -+ _, _, e1 := syscall_syscall(libc_utimes_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_utimes_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_utimes utimes "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func futimes(fd int, timeval *[2]Timeval) (err error) { -- _, _, e1 := Syscall(SYS_FUTIMES, uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0) -+ _, _, e1 := syscall_syscall(libc_futimes_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_futimes_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_futimes futimes "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) -+ r0, _, e1 := syscall_syscall(libc_poll_trampoline_addr, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -248,6 +329,10 @@ func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { - return - } - -+var libc_poll_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_poll poll "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Madvise(b []byte, behav int) (err error) { -@@ -257,13 +342,17 @@ func Madvise(b []byte, behav int) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(behav)) -+ _, _, e1 := syscall_syscall(libc_madvise_trampoline_addr, uintptr(_p0), uintptr(len(b)), uintptr(behav)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_madvise_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_madvise madvise "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mlock(b []byte) (err error) { -@@ -273,23 +362,31 @@ func Mlock(b []byte) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0) -+ _, _, e1 := syscall_syscall(libc_mlock_trampoline_addr, uintptr(_p0), uintptr(len(b)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mlock_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mlock mlock "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mlockall(flags int) (err error) { -- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall(libc_mlockall_trampoline_addr, uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mlockall_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mlockall mlockall "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mprotect(b []byte, prot int) (err error) { -@@ -299,13 +396,17 @@ func Mprotect(b []byte, prot int) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot)) -+ _, _, e1 := syscall_syscall(libc_mprotect_trampoline_addr, uintptr(_p0), uintptr(len(b)), uintptr(prot)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mprotect_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mprotect mprotect "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Msync(b []byte, flags int) (err error) { -@@ -315,13 +416,17 @@ func Msync(b []byte, flags int) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags)) -+ _, _, e1 := syscall_syscall(libc_msync_trampoline_addr, uintptr(_p0), uintptr(len(b)), uintptr(flags)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_msync_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_msync msync "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Munlock(b []byte) (err error) { -@@ -331,33 +436,45 @@ func Munlock(b []byte) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0) -+ _, _, e1 := syscall_syscall(libc_munlock_trampoline_addr, uintptr(_p0), uintptr(len(b)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_munlock_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_munlock munlock "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Munlockall() (err error) { -- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0) -+ _, _, e1 := syscall_syscall(libc_munlockall_trampoline_addr, 0, 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_munlockall_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_munlockall munlockall "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func pipe2(p *[2]_C_int, flags int) (err error) { -- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0) -+ _, _, e1 := syscall_rawSyscall(libc_pipe2_trampoline_addr, uintptr(unsafe.Pointer(p)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_pipe2_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_pipe2 pipe2 "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getdents(fd int, buf []byte) (n int, err error) { -@@ -367,7 +484,7 @@ func Getdents(fd int, buf []byte) (n int, err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall(SYS_GETDENTS, uintptr(fd), uintptr(_p0), uintptr(len(buf))) -+ r0, _, e1 := syscall_syscall(libc_getdents_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(buf))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -375,6 +492,10 @@ func Getdents(fd int, buf []byte) (n int, err error) { - return - } - -+var libc_getdents_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getdents getdents "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getcwd(buf []byte) (n int, err error) { -@@ -384,7 +505,7 @@ func Getcwd(buf []byte) (n int, err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0) -+ r0, _, e1 := syscall_syscall(libc_getcwd_trampoline_addr, uintptr(_p0), uintptr(len(buf)), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -392,16 +513,24 @@ func Getcwd(buf []byte) (n int, err error) { - return - } - -+var libc_getcwd_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getcwd getcwd "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func ioctl(fd int, req uint, arg uintptr) (err error) { -- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg)) -+ _, _, e1 := syscall_syscall(libc_ioctl_trampoline_addr, uintptr(fd), uintptr(req), uintptr(arg)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_ioctl_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_ioctl ioctl "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) { -@@ -411,17 +540,21 @@ func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) -+ _, _, e1 := syscall_syscall6(libc_sysctl_trampoline_addr, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_sysctl_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_sysctl sysctl "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) { -- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_ppoll_trampoline_addr, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -429,6 +562,10 @@ func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, - return - } - -+var libc_ppoll_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_ppoll ppoll "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Access(path string, mode uint32) (err error) { -@@ -437,23 +574,31 @@ func Access(path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_ACCESS, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_access_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_access_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_access access "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Adjtime(delta *Timeval, olddelta *Timeval) (err error) { -- _, _, e1 := Syscall(SYS_ADJTIME, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0) -+ _, _, e1 := syscall_syscall(libc_adjtime_trampoline_addr, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_adjtime_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_adjtime adjtime "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Chdir(path string) (err error) { -@@ -462,13 +607,17 @@ func Chdir(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_chdir_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_chdir_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_chdir chdir "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Chflags(path string, flags int) (err error) { -@@ -477,13 +626,17 @@ func Chflags(path string, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_CHFLAGS, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall(libc_chflags_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_chflags_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_chflags chflags "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Chmod(path string, mode uint32) (err error) { -@@ -492,13 +645,17 @@ func Chmod(path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_CHMOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_chmod_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_chmod_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_chmod chmod "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Chown(path string, uid int, gid int) (err error) { -@@ -507,13 +664,17 @@ func Chown(path string, uid int, gid int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_CHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) -+ _, _, e1 := syscall_syscall(libc_chown_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_chown_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_chown chown "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Chroot(path string) (err error) { -@@ -522,27 +683,35 @@ func Chroot(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_chroot_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_chroot_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_chroot chroot "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Close(fd int) (err error) { -- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0) -+ _, _, e1 := syscall_syscall(libc_close_trampoline_addr, uintptr(fd), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_close_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_close close "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Dup(fd int) (nfd int, err error) { -- r0, _, e1 := Syscall(SYS_DUP, uintptr(fd), 0, 0) -+ r0, _, e1 := syscall_syscall(libc_dup_trampoline_addr, uintptr(fd), 0, 0) - nfd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -550,33 +719,49 @@ func Dup(fd int) (nfd int, err error) { - return - } - -+var libc_dup_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_dup dup "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Dup2(from int, to int) (err error) { -- _, _, e1 := Syscall(SYS_DUP2, uintptr(from), uintptr(to), 0) -+ _, _, e1 := syscall_syscall(libc_dup2_trampoline_addr, uintptr(from), uintptr(to), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_dup2_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_dup2 dup2 "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Dup3(from int, to int, flags int) (err error) { -- _, _, e1 := Syscall(SYS_DUP3, uintptr(from), uintptr(to), uintptr(flags)) -+ _, _, e1 := syscall_syscall(libc_dup3_trampoline_addr, uintptr(from), uintptr(to), uintptr(flags)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_dup3_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_dup3 dup3 "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Exit(code int) { -- Syscall(SYS_EXIT, uintptr(code), 0, 0) -+ syscall_syscall(libc_exit_trampoline_addr, uintptr(code), 0, 0) - return - } - -+var libc_exit_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_exit exit "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) { -@@ -585,43 +770,59 @@ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_faccessat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_faccessat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_faccessat faccessat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchdir(fd int) (err error) { -- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0) -+ _, _, e1 := syscall_syscall(libc_fchdir_trampoline_addr, uintptr(fd), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fchdir_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fchdir fchdir "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchflags(fd int, flags int) (err error) { -- _, _, e1 := Syscall(SYS_FCHFLAGS, uintptr(fd), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall(libc_fchflags_trampoline_addr, uintptr(fd), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fchflags_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fchflags fchflags "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchmod(fd int, mode uint32) (err error) { -- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_fchmod_trampoline_addr, uintptr(fd), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fchmod_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fchmod fchmod "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) { -@@ -630,23 +831,31 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_fchmodat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fchmodat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fchmodat fchmodat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchown(fd int, uid int, gid int) (err error) { -- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid)) -+ _, _, e1 := syscall_syscall(libc_fchown_trampoline_addr, uintptr(fd), uintptr(uid), uintptr(gid)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fchown_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fchown fchown "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) { -@@ -655,27 +864,35 @@ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall6(libc_fchownat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fchownat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fchownat fchownat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Flock(fd int, how int) (err error) { -- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0) -+ _, _, e1 := syscall_syscall(libc_flock_trampoline_addr, uintptr(fd), uintptr(how), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_flock_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_flock flock "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fpathconf(fd int, name int) (val int, err error) { -- r0, _, e1 := Syscall(SYS_FPATHCONF, uintptr(fd), uintptr(name), 0) -+ r0, _, e1 := syscall_syscall(libc_fpathconf_trampoline_addr, uintptr(fd), uintptr(name), 0) - val = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -683,16 +900,24 @@ func Fpathconf(fd int, name int) (val int, err error) { - return - } - -+var libc_fpathconf_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fpathconf fpathconf "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fstat(fd int, stat *Stat_t) (err error) { -- _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_fstat_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fstat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fstat fstat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) { -@@ -701,71 +926,99 @@ func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_fstatat_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fstatat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fstatat fstatat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fstatfs(fd int, stat *Statfs_t) (err error) { -- _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_fstatfs_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fstatfs_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fstatfs fstatfs "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fsync(fd int) (err error) { -- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0) -+ _, _, e1 := syscall_syscall(libc_fsync_trampoline_addr, uintptr(fd), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fsync_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fsync fsync "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Ftruncate(fd int, length int64) (err error) { -- _, _, e1 := Syscall6(SYS_FTRUNCATE, uintptr(fd), 0, uintptr(length), uintptr(length>>32), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_ftruncate_trampoline_addr, uintptr(fd), 0, uintptr(length), uintptr(length>>32), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_ftruncate_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_ftruncate ftruncate "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getegid() (egid int) { -- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getegid_trampoline_addr, 0, 0, 0) - egid = int(r0) - return - } - -+var libc_getegid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getegid getegid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Geteuid() (uid int) { -- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_geteuid_trampoline_addr, 0, 0, 0) - uid = int(r0) - return - } - -+var libc_geteuid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_geteuid geteuid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getgid() (gid int) { -- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getgid_trampoline_addr, 0, 0, 0) - gid = int(r0) - return - } - -+var libc_getgid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getgid getgid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getpgid(pid int) (pgid int, err error) { -- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0) -+ r0, _, e1 := syscall_rawSyscall(libc_getpgid_trampoline_addr, uintptr(pid), 0, 0) - pgid = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -773,34 +1026,50 @@ func Getpgid(pid int) (pgid int, err error) { - return - } - -+var libc_getpgid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getpgid getpgid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getpgrp() (pgrp int) { -- r0, _, _ := RawSyscall(SYS_GETPGRP, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getpgrp_trampoline_addr, 0, 0, 0) - pgrp = int(r0) - return - } - -+var libc_getpgrp_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getpgrp getpgrp "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getpid() (pid int) { -- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getpid_trampoline_addr, 0, 0, 0) - pid = int(r0) - return - } - -+var libc_getpid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getpid getpid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getppid() (ppid int) { -- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getppid_trampoline_addr, 0, 0, 0) - ppid = int(r0) - return - } - -+var libc_getppid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getppid getppid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getpriority(which int, who int) (prio int, err error) { -- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0) -+ r0, _, e1 := syscall_syscall(libc_getpriority_trampoline_addr, uintptr(which), uintptr(who), 0) - prio = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -808,20 +1077,28 @@ func Getpriority(which int, who int) (prio int, err error) { - return - } - -+var libc_getpriority_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getpriority getpriority "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getrlimit(which int, lim *Rlimit) (err error) { -- _, _, e1 := RawSyscall(SYS_GETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) -+ _, _, e1 := syscall_rawSyscall(libc_getrlimit_trampoline_addr, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_getrlimit_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getrlimit getrlimit "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getrtable() (rtable int, err error) { -- r0, _, e1 := RawSyscall(SYS_GETRTABLE, 0, 0, 0) -+ r0, _, e1 := syscall_rawSyscall(libc_getrtable_trampoline_addr, 0, 0, 0) - rtable = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -829,20 +1106,28 @@ func Getrtable() (rtable int, err error) { - return - } - -+var libc_getrtable_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getrtable getrtable "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getrusage(who int, rusage *Rusage) (err error) { -- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0) -+ _, _, e1 := syscall_rawSyscall(libc_getrusage_trampoline_addr, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_getrusage_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getrusage getrusage "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getsid(pid int) (sid int, err error) { -- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0) -+ r0, _, e1 := syscall_rawSyscall(libc_getsid_trampoline_addr, uintptr(pid), 0, 0) - sid = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -850,46 +1135,66 @@ func Getsid(pid int) (sid int, err error) { - return - } - -+var libc_getsid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getsid getsid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Gettimeofday(tv *Timeval) (err error) { -- _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_gettimeofday_trampoline_addr, uintptr(unsafe.Pointer(tv)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_gettimeofday_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_gettimeofday gettimeofday "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getuid() (uid int) { -- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getuid_trampoline_addr, 0, 0, 0) - uid = int(r0) - return - } - -+var libc_getuid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getuid getuid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Issetugid() (tainted bool) { -- r0, _, _ := Syscall(SYS_ISSETUGID, 0, 0, 0) -+ r0, _, _ := syscall_syscall(libc_issetugid_trampoline_addr, 0, 0, 0) - tainted = bool(r0 != 0) - return - } - -+var libc_issetugid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_issetugid issetugid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Kill(pid int, signum syscall.Signal) (err error) { -- _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), 0) -+ _, _, e1 := syscall_syscall(libc_kill_trampoline_addr, uintptr(pid), uintptr(signum), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_kill_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_kill kill "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Kqueue() (fd int, err error) { -- r0, _, e1 := Syscall(SYS_KQUEUE, 0, 0, 0) -+ r0, _, e1 := syscall_syscall(libc_kqueue_trampoline_addr, 0, 0, 0) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -897,6 +1202,10 @@ func Kqueue() (fd int, err error) { - return - } - -+var libc_kqueue_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_kqueue kqueue "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Lchown(path string, uid int, gid int) (err error) { -@@ -905,13 +1214,17 @@ func Lchown(path string, uid int, gid int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_LCHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) -+ _, _, e1 := syscall_syscall(libc_lchown_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_lchown_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_lchown lchown "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Link(path string, link string) (err error) { -@@ -925,13 +1238,17 @@ func Link(path string, link string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -+ _, _, e1 := syscall_syscall(libc_link_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_link_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_link link "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) { -@@ -945,23 +1262,31 @@ func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err er - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall6(libc_linkat_trampoline_addr, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_linkat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_linkat linkat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Listen(s int, backlog int) (err error) { -- _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0) -+ _, _, e1 := syscall_syscall(libc_listen_trampoline_addr, uintptr(s), uintptr(backlog), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_listen_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_listen listen "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Lstat(path string, stat *Stat_t) (err error) { -@@ -970,13 +1295,17 @@ func Lstat(path string, stat *Stat_t) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_LSTAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_lstat_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_lstat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_lstat lstat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mkdir(path string, mode uint32) (err error) { -@@ -985,13 +1314,17 @@ func Mkdir(path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_MKDIR, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_mkdir_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mkdir_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mkdir mkdir "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mkdirat(dirfd int, path string, mode uint32) (err error) { -@@ -1000,13 +1333,17 @@ func Mkdirat(dirfd int, path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) -+ _, _, e1 := syscall_syscall(libc_mkdirat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mkdirat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mkdirat mkdirat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mkfifo(path string, mode uint32) (err error) { -@@ -1015,13 +1352,17 @@ func Mkfifo(path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_MKFIFO, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_mkfifo_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mkfifo_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mkfifo mkfifo "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mkfifoat(dirfd int, path string, mode uint32) (err error) { -@@ -1030,13 +1371,17 @@ func Mkfifoat(dirfd int, path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_MKFIFOAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) -+ _, _, e1 := syscall_syscall(libc_mkfifoat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mkfifoat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mkfifoat mkfifoat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mknod(path string, mode uint32, dev int) (err error) { -@@ -1045,13 +1390,17 @@ func Mknod(path string, mode uint32, dev int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_MKNOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) -+ _, _, e1 := syscall_syscall(libc_mknod_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mknod_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mknod mknod "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) { -@@ -1060,23 +1409,31 @@ func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_mknodat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mknodat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mknodat mknodat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Nanosleep(time *Timespec, leftover *Timespec) (err error) { -- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0) -+ _, _, e1 := syscall_syscall(libc_nanosleep_trampoline_addr, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_nanosleep_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_nanosleep nanosleep "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Open(path string, mode int, perm uint32) (fd int, err error) { -@@ -1085,7 +1442,7 @@ func Open(path string, mode int, perm uint32) (fd int, err error) { - if err != nil { - return - } -- r0, _, e1 := Syscall(SYS_OPEN, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm)) -+ r0, _, e1 := syscall_syscall(libc_open_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm)) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1093,6 +1450,10 @@ func Open(path string, mode int, perm uint32) (fd int, err error) { - return - } - -+var libc_open_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_open open "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) { -@@ -1101,7 +1462,7 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) { - if err != nil { - return - } -- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_openat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1109,6 +1470,10 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) { - return - } - -+var libc_openat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_openat openat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Pathconf(path string, name int) (val int, err error) { -@@ -1117,7 +1482,7 @@ func Pathconf(path string, name int) (val int, err error) { - if err != nil { - return - } -- r0, _, e1 := Syscall(SYS_PATHCONF, uintptr(unsafe.Pointer(_p0)), uintptr(name), 0) -+ r0, _, e1 := syscall_syscall(libc_pathconf_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(name), 0) - val = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1125,16 +1490,20 @@ func Pathconf(path string, name int) (val int, err error) { - return - } - -+var libc_pathconf_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_pathconf pathconf "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall6(SYS_PREAD, uintptr(fd), uintptr(_p0), uintptr(len(p)), 0, uintptr(offset), uintptr(offset>>32)) -+ r0, _, e1 := syscall_syscall6(libc_pread_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p)), 0, uintptr(offset), uintptr(offset>>32)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1142,16 +1511,20 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - return - } - -+var libc_pread_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_pread pread "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall6(SYS_PWRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)), 0, uintptr(offset), uintptr(offset>>32)) -+ r0, _, e1 := syscall_syscall6(libc_pwrite_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p)), 0, uintptr(offset), uintptr(offset>>32)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1159,6 +1532,10 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) { - return - } - -+var libc_pwrite_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_pwrite pwrite "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func read(fd int, p []byte) (n int, err error) { -@@ -1168,7 +1545,7 @@ func read(fd int, p []byte) (n int, err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p))) -+ r0, _, e1 := syscall_syscall(libc_read_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1176,6 +1553,10 @@ func read(fd int, p []byte) (n int, err error) { - return - } - -+var libc_read_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_read read "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Readlink(path string, buf []byte) (n int, err error) { -@@ -1190,7 +1571,7 @@ func Readlink(path string, buf []byte) (n int, err error) { - } else { - _p1 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall(SYS_READLINK, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf))) -+ r0, _, e1 := syscall_syscall(libc_readlink_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1198,6 +1579,10 @@ func Readlink(path string, buf []byte) (n int, err error) { - return - } - -+var libc_readlink_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_readlink readlink "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) { -@@ -1212,7 +1597,7 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) { - } else { - _p1 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_readlinkat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1220,6 +1605,10 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) { - return - } - -+var libc_readlinkat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_readlinkat readlinkat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Rename(from string, to string) (err error) { -@@ -1233,13 +1622,17 @@ func Rename(from string, to string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_RENAME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -+ _, _, e1 := syscall_syscall(libc_rename_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_rename_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_rename rename "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Renameat(fromfd int, from string, tofd int, to string) (err error) { -@@ -1253,13 +1646,17 @@ func Renameat(fromfd int, from string, tofd int, to string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_renameat_trampoline_addr, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_renameat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_renameat renameat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Revoke(path string) (err error) { -@@ -1268,13 +1665,17 @@ func Revoke(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_REVOKE, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_revoke_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_revoke_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_revoke revoke "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Rmdir(path string) (err error) { -@@ -1283,17 +1684,21 @@ func Rmdir(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_RMDIR, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_rmdir_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_rmdir_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_rmdir rmdir "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { -- r0, r1, e1 := Syscall6(SYS_LSEEK, uintptr(fd), 0, uintptr(offset), uintptr(offset>>32), uintptr(whence), 0) -+ r0, r1, e1 := syscall_syscall6(libc_lseek_trampoline_addr, uintptr(fd), 0, uintptr(offset), uintptr(offset>>32), uintptr(whence), 0) - newoffset = int64(int64(r1)<<32 | int64(r0)) - if e1 != 0 { - err = errnoErr(e1) -@@ -1301,10 +1706,14 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { - return - } - -+var libc_lseek_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_lseek lseek "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) { -- r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0) -+ r0, _, e1 := syscall_syscall6(libc_select_trampoline_addr, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1312,36 +1721,52 @@ func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err - return - } - -+var libc_select_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_select select "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setegid(egid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETEGID, uintptr(egid), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_setegid_trampoline_addr, uintptr(egid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setegid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setegid setegid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Seteuid(euid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETEUID, uintptr(euid), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_seteuid_trampoline_addr, uintptr(euid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_seteuid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_seteuid seteuid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setgid(gid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETGID, uintptr(gid), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_setgid_trampoline_addr, uintptr(gid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setgid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setgid setgid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setlogin(name string) (err error) { -@@ -1350,97 +1775,133 @@ func Setlogin(name string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_SETLOGIN, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_setlogin_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setlogin_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setlogin setlogin "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setpgid(pid int, pgid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setpgid_trampoline_addr, uintptr(pid), uintptr(pgid), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setpgid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setpgid setpgid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setpriority(which int, who int, prio int) (err error) { -- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio)) -+ _, _, e1 := syscall_syscall(libc_setpriority_trampoline_addr, uintptr(which), uintptr(who), uintptr(prio)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setpriority_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setpriority setpriority "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setregid(rgid int, egid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setregid_trampoline_addr, uintptr(rgid), uintptr(egid), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setregid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setregid setregid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setreuid(ruid int, euid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setreuid_trampoline_addr, uintptr(ruid), uintptr(euid), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setreuid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setreuid setreuid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setresgid(rgid int, egid int, sgid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESGID, uintptr(rgid), uintptr(egid), uintptr(sgid)) -+ _, _, e1 := syscall_rawSyscall(libc_setresgid_trampoline_addr, uintptr(rgid), uintptr(egid), uintptr(sgid)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setresgid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setresgid setresgid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setresuid(ruid int, euid int, suid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESUID, uintptr(ruid), uintptr(euid), uintptr(suid)) -+ _, _, e1 := syscall_rawSyscall(libc_setresuid_trampoline_addr, uintptr(ruid), uintptr(euid), uintptr(suid)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setresuid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setresuid setresuid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setrlimit(which int, lim *Rlimit) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setrlimit_trampoline_addr, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setrlimit_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setrlimit setrlimit "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setrtable(rtable int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRTABLE, uintptr(rtable), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_setrtable_trampoline_addr, uintptr(rtable), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setrtable_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setrtable setrtable "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setsid() (pid int, err error) { -- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0) -+ r0, _, e1 := syscall_rawSyscall(libc_setsid_trampoline_addr, 0, 0, 0) - pid = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1448,26 +1909,38 @@ func Setsid() (pid int, err error) { - return - } - -+var libc_setsid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setsid setsid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Settimeofday(tp *Timeval) (err error) { -- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_settimeofday_trampoline_addr, uintptr(unsafe.Pointer(tp)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_settimeofday_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_settimeofday settimeofday "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setuid(uid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETUID, uintptr(uid), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_setuid_trampoline_addr, uintptr(uid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setuid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setuid setuid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Stat(path string, stat *Stat_t) (err error) { -@@ -1476,13 +1949,17 @@ func Stat(path string, stat *Stat_t) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_STAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_stat_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_stat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_stat stat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Statfs(path string, stat *Statfs_t) (err error) { -@@ -1491,13 +1968,17 @@ func Statfs(path string, stat *Statfs_t) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_STATFS, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_statfs_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_statfs_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_statfs statfs "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Symlink(path string, link string) (err error) { -@@ -1511,13 +1992,17 @@ func Symlink(path string, link string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_SYMLINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -+ _, _, e1 := syscall_syscall(libc_symlink_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_symlink_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_symlink symlink "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) { -@@ -1531,23 +2016,31 @@ func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1))) -+ _, _, e1 := syscall_syscall(libc_symlinkat_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1))) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_symlinkat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_symlinkat symlinkat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Sync() (err error) { -- _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0) -+ _, _, e1 := syscall_syscall(libc_sync_trampoline_addr, 0, 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_sync_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_sync sync "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Truncate(path string, length int64) (err error) { -@@ -1556,21 +2049,29 @@ func Truncate(path string, length int64) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), 0, uintptr(length), uintptr(length>>32), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_truncate_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, uintptr(length), uintptr(length>>32), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_truncate_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_truncate truncate "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Umask(newmask int) (oldmask int) { -- r0, _, _ := Syscall(SYS_UMASK, uintptr(newmask), 0, 0) -+ r0, _, _ := syscall_syscall(libc_umask_trampoline_addr, uintptr(newmask), 0, 0) - oldmask = int(r0) - return - } - -+var libc_umask_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_umask umask "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Unlink(path string) (err error) { -@@ -1579,13 +2080,17 @@ func Unlink(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_UNLINK, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_unlink_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_unlink_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_unlink unlink "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Unlinkat(dirfd int, path string, flags int) (err error) { -@@ -1594,13 +2099,17 @@ func Unlinkat(dirfd int, path string, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags)) -+ _, _, e1 := syscall_syscall(libc_unlinkat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_unlinkat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_unlinkat unlinkat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Unmount(path string, flags int) (err error) { -@@ -1609,13 +2118,17 @@ func Unmount(path string, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_UNMOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall(libc_unmount_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_unmount_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_unmount unmount "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func write(fd int, p []byte) (n int, err error) { -@@ -1625,7 +2138,7 @@ func write(fd int, p []byte) (n int, err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p))) -+ r0, _, e1 := syscall_syscall(libc_write_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1633,10 +2146,14 @@ func write(fd int, p []byte) (n int, err error) { - return - } - -+var libc_write_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_write write "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) { -- r0, _, e1 := Syscall9(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), 0, uintptr(pos), uintptr(pos>>32), 0) -+ r0, _, e1 := syscall_syscall9(libc_mmap_trampoline_addr, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), 0, uintptr(pos), uintptr(pos>>32), 0) - ret = uintptr(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1644,20 +2161,28 @@ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) ( - return - } - -+var libc_mmap_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mmap mmap "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func munmap(addr uintptr, length uintptr) (err error) { -- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0) -+ _, _, e1 := syscall_syscall(libc_munmap_trampoline_addr, uintptr(addr), uintptr(length), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_munmap_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_munmap munmap "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func readlen(fd int, buf *byte, nbuf int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) -+ r0, _, e1 := syscall_syscall(libc_read_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1668,7 +2193,7 @@ func readlen(fd int, buf *byte, nbuf int) (n int, err error) { - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func writelen(fd int, buf *byte, nbuf int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) -+ r0, _, e1 := syscall_syscall(libc_write_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1684,9 +2209,13 @@ func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_utimensat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } -+ -+var libc_utimensat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_utimensat utimensat "libc.so" -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.s b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.s -new file mode 100644 -index 0000000..9ad116d ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.s -@@ -0,0 +1,796 @@ -+// go run mkasm.go openbsd arm -+// Code generated by the command above; DO NOT EDIT. -+ -+#include "textflag.h" -+ -+TEXT libc_getgroups_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getgroups(SB) -+ -+GLOBL ·libc_getgroups_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getgroups_trampoline_addr(SB)/4, $libc_getgroups_trampoline<>(SB) -+ -+TEXT libc_setgroups_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setgroups(SB) -+ -+GLOBL ·libc_setgroups_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setgroups_trampoline_addr(SB)/4, $libc_setgroups_trampoline<>(SB) -+ -+TEXT libc_wait4_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_wait4(SB) -+ -+GLOBL ·libc_wait4_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_wait4_trampoline_addr(SB)/4, $libc_wait4_trampoline<>(SB) -+ -+TEXT libc_accept_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_accept(SB) -+ -+GLOBL ·libc_accept_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_accept_trampoline_addr(SB)/4, $libc_accept_trampoline<>(SB) -+ -+TEXT libc_bind_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_bind(SB) -+ -+GLOBL ·libc_bind_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_bind_trampoline_addr(SB)/4, $libc_bind_trampoline<>(SB) -+ -+TEXT libc_connect_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_connect(SB) -+ -+GLOBL ·libc_connect_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_connect_trampoline_addr(SB)/4, $libc_connect_trampoline<>(SB) -+ -+TEXT libc_socket_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_socket(SB) -+ -+GLOBL ·libc_socket_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_socket_trampoline_addr(SB)/4, $libc_socket_trampoline<>(SB) -+ -+TEXT libc_getsockopt_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getsockopt(SB) -+ -+GLOBL ·libc_getsockopt_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getsockopt_trampoline_addr(SB)/4, $libc_getsockopt_trampoline<>(SB) -+ -+TEXT libc_setsockopt_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setsockopt(SB) -+ -+GLOBL ·libc_setsockopt_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setsockopt_trampoline_addr(SB)/4, $libc_setsockopt_trampoline<>(SB) -+ -+TEXT libc_getpeername_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getpeername(SB) -+ -+GLOBL ·libc_getpeername_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getpeername_trampoline_addr(SB)/4, $libc_getpeername_trampoline<>(SB) -+ -+TEXT libc_getsockname_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getsockname(SB) -+ -+GLOBL ·libc_getsockname_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getsockname_trampoline_addr(SB)/4, $libc_getsockname_trampoline<>(SB) -+ -+TEXT libc_shutdown_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_shutdown(SB) -+ -+GLOBL ·libc_shutdown_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_shutdown_trampoline_addr(SB)/4, $libc_shutdown_trampoline<>(SB) -+ -+TEXT libc_socketpair_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_socketpair(SB) -+ -+GLOBL ·libc_socketpair_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_socketpair_trampoline_addr(SB)/4, $libc_socketpair_trampoline<>(SB) -+ -+TEXT libc_recvfrom_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_recvfrom(SB) -+ -+GLOBL ·libc_recvfrom_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_recvfrom_trampoline_addr(SB)/4, $libc_recvfrom_trampoline<>(SB) -+ -+TEXT libc_sendto_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_sendto(SB) -+ -+GLOBL ·libc_sendto_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_sendto_trampoline_addr(SB)/4, $libc_sendto_trampoline<>(SB) -+ -+TEXT libc_recvmsg_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_recvmsg(SB) -+ -+GLOBL ·libc_recvmsg_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_recvmsg_trampoline_addr(SB)/4, $libc_recvmsg_trampoline<>(SB) -+ -+TEXT libc_sendmsg_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_sendmsg(SB) -+ -+GLOBL ·libc_sendmsg_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_sendmsg_trampoline_addr(SB)/4, $libc_sendmsg_trampoline<>(SB) -+ -+TEXT libc_kevent_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_kevent(SB) -+ -+GLOBL ·libc_kevent_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_kevent_trampoline_addr(SB)/4, $libc_kevent_trampoline<>(SB) -+ -+TEXT libc_utimes_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_utimes(SB) -+ -+GLOBL ·libc_utimes_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_utimes_trampoline_addr(SB)/4, $libc_utimes_trampoline<>(SB) -+ -+TEXT libc_futimes_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_futimes(SB) -+ -+GLOBL ·libc_futimes_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_futimes_trampoline_addr(SB)/4, $libc_futimes_trampoline<>(SB) -+ -+TEXT libc_poll_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_poll(SB) -+ -+GLOBL ·libc_poll_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_poll_trampoline_addr(SB)/4, $libc_poll_trampoline<>(SB) -+ -+TEXT libc_madvise_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_madvise(SB) -+ -+GLOBL ·libc_madvise_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_madvise_trampoline_addr(SB)/4, $libc_madvise_trampoline<>(SB) -+ -+TEXT libc_mlock_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mlock(SB) -+ -+GLOBL ·libc_mlock_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_mlock_trampoline_addr(SB)/4, $libc_mlock_trampoline<>(SB) -+ -+TEXT libc_mlockall_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mlockall(SB) -+ -+GLOBL ·libc_mlockall_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_mlockall_trampoline_addr(SB)/4, $libc_mlockall_trampoline<>(SB) -+ -+TEXT libc_mprotect_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mprotect(SB) -+ -+GLOBL ·libc_mprotect_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_mprotect_trampoline_addr(SB)/4, $libc_mprotect_trampoline<>(SB) -+ -+TEXT libc_msync_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_msync(SB) -+ -+GLOBL ·libc_msync_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_msync_trampoline_addr(SB)/4, $libc_msync_trampoline<>(SB) -+ -+TEXT libc_munlock_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_munlock(SB) -+ -+GLOBL ·libc_munlock_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_munlock_trampoline_addr(SB)/4, $libc_munlock_trampoline<>(SB) -+ -+TEXT libc_munlockall_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_munlockall(SB) -+ -+GLOBL ·libc_munlockall_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_munlockall_trampoline_addr(SB)/4, $libc_munlockall_trampoline<>(SB) -+ -+TEXT libc_pipe2_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_pipe2(SB) -+ -+GLOBL ·libc_pipe2_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_pipe2_trampoline_addr(SB)/4, $libc_pipe2_trampoline<>(SB) -+ -+TEXT libc_getdents_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getdents(SB) -+ -+GLOBL ·libc_getdents_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getdents_trampoline_addr(SB)/4, $libc_getdents_trampoline<>(SB) -+ -+TEXT libc_getcwd_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getcwd(SB) -+ -+GLOBL ·libc_getcwd_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getcwd_trampoline_addr(SB)/4, $libc_getcwd_trampoline<>(SB) -+ -+TEXT libc_ioctl_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_ioctl(SB) -+ -+GLOBL ·libc_ioctl_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_ioctl_trampoline_addr(SB)/4, $libc_ioctl_trampoline<>(SB) -+ -+TEXT libc_sysctl_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_sysctl(SB) -+ -+GLOBL ·libc_sysctl_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_sysctl_trampoline_addr(SB)/4, $libc_sysctl_trampoline<>(SB) -+ -+TEXT libc_ppoll_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_ppoll(SB) -+ -+GLOBL ·libc_ppoll_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_ppoll_trampoline_addr(SB)/4, $libc_ppoll_trampoline<>(SB) -+ -+TEXT libc_access_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_access(SB) -+ -+GLOBL ·libc_access_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_access_trampoline_addr(SB)/4, $libc_access_trampoline<>(SB) -+ -+TEXT libc_adjtime_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_adjtime(SB) -+ -+GLOBL ·libc_adjtime_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_adjtime_trampoline_addr(SB)/4, $libc_adjtime_trampoline<>(SB) -+ -+TEXT libc_chdir_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_chdir(SB) -+ -+GLOBL ·libc_chdir_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_chdir_trampoline_addr(SB)/4, $libc_chdir_trampoline<>(SB) -+ -+TEXT libc_chflags_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_chflags(SB) -+ -+GLOBL ·libc_chflags_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_chflags_trampoline_addr(SB)/4, $libc_chflags_trampoline<>(SB) -+ -+TEXT libc_chmod_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_chmod(SB) -+ -+GLOBL ·libc_chmod_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_chmod_trampoline_addr(SB)/4, $libc_chmod_trampoline<>(SB) -+ -+TEXT libc_chown_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_chown(SB) -+ -+GLOBL ·libc_chown_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_chown_trampoline_addr(SB)/4, $libc_chown_trampoline<>(SB) -+ -+TEXT libc_chroot_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_chroot(SB) -+ -+GLOBL ·libc_chroot_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_chroot_trampoline_addr(SB)/4, $libc_chroot_trampoline<>(SB) -+ -+TEXT libc_close_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_close(SB) -+ -+GLOBL ·libc_close_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_close_trampoline_addr(SB)/4, $libc_close_trampoline<>(SB) -+ -+TEXT libc_dup_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_dup(SB) -+ -+GLOBL ·libc_dup_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_dup_trampoline_addr(SB)/4, $libc_dup_trampoline<>(SB) -+ -+TEXT libc_dup2_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_dup2(SB) -+ -+GLOBL ·libc_dup2_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_dup2_trampoline_addr(SB)/4, $libc_dup2_trampoline<>(SB) -+ -+TEXT libc_dup3_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_dup3(SB) -+ -+GLOBL ·libc_dup3_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_dup3_trampoline_addr(SB)/4, $libc_dup3_trampoline<>(SB) -+ -+TEXT libc_exit_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_exit(SB) -+ -+GLOBL ·libc_exit_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_exit_trampoline_addr(SB)/4, $libc_exit_trampoline<>(SB) -+ -+TEXT libc_faccessat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_faccessat(SB) -+ -+GLOBL ·libc_faccessat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_faccessat_trampoline_addr(SB)/4, $libc_faccessat_trampoline<>(SB) -+ -+TEXT libc_fchdir_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fchdir(SB) -+ -+GLOBL ·libc_fchdir_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_fchdir_trampoline_addr(SB)/4, $libc_fchdir_trampoline<>(SB) -+ -+TEXT libc_fchflags_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fchflags(SB) -+ -+GLOBL ·libc_fchflags_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_fchflags_trampoline_addr(SB)/4, $libc_fchflags_trampoline<>(SB) -+ -+TEXT libc_fchmod_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fchmod(SB) -+ -+GLOBL ·libc_fchmod_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_fchmod_trampoline_addr(SB)/4, $libc_fchmod_trampoline<>(SB) -+ -+TEXT libc_fchmodat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fchmodat(SB) -+ -+GLOBL ·libc_fchmodat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_fchmodat_trampoline_addr(SB)/4, $libc_fchmodat_trampoline<>(SB) -+ -+TEXT libc_fchown_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fchown(SB) -+ -+GLOBL ·libc_fchown_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_fchown_trampoline_addr(SB)/4, $libc_fchown_trampoline<>(SB) -+ -+TEXT libc_fchownat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fchownat(SB) -+ -+GLOBL ·libc_fchownat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_fchownat_trampoline_addr(SB)/4, $libc_fchownat_trampoline<>(SB) -+ -+TEXT libc_flock_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_flock(SB) -+ -+GLOBL ·libc_flock_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_flock_trampoline_addr(SB)/4, $libc_flock_trampoline<>(SB) -+ -+TEXT libc_fpathconf_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fpathconf(SB) -+ -+GLOBL ·libc_fpathconf_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_fpathconf_trampoline_addr(SB)/4, $libc_fpathconf_trampoline<>(SB) -+ -+TEXT libc_fstat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fstat(SB) -+ -+GLOBL ·libc_fstat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_fstat_trampoline_addr(SB)/4, $libc_fstat_trampoline<>(SB) -+ -+TEXT libc_fstatat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fstatat(SB) -+ -+GLOBL ·libc_fstatat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_fstatat_trampoline_addr(SB)/4, $libc_fstatat_trampoline<>(SB) -+ -+TEXT libc_fstatfs_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fstatfs(SB) -+ -+GLOBL ·libc_fstatfs_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_fstatfs_trampoline_addr(SB)/4, $libc_fstatfs_trampoline<>(SB) -+ -+TEXT libc_fsync_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fsync(SB) -+ -+GLOBL ·libc_fsync_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_fsync_trampoline_addr(SB)/4, $libc_fsync_trampoline<>(SB) -+ -+TEXT libc_ftruncate_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_ftruncate(SB) -+ -+GLOBL ·libc_ftruncate_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_ftruncate_trampoline_addr(SB)/4, $libc_ftruncate_trampoline<>(SB) -+ -+TEXT libc_getegid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getegid(SB) -+ -+GLOBL ·libc_getegid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getegid_trampoline_addr(SB)/4, $libc_getegid_trampoline<>(SB) -+ -+TEXT libc_geteuid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_geteuid(SB) -+ -+GLOBL ·libc_geteuid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_geteuid_trampoline_addr(SB)/4, $libc_geteuid_trampoline<>(SB) -+ -+TEXT libc_getgid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getgid(SB) -+ -+GLOBL ·libc_getgid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getgid_trampoline_addr(SB)/4, $libc_getgid_trampoline<>(SB) -+ -+TEXT libc_getpgid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getpgid(SB) -+ -+GLOBL ·libc_getpgid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getpgid_trampoline_addr(SB)/4, $libc_getpgid_trampoline<>(SB) -+ -+TEXT libc_getpgrp_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getpgrp(SB) -+ -+GLOBL ·libc_getpgrp_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getpgrp_trampoline_addr(SB)/4, $libc_getpgrp_trampoline<>(SB) -+ -+TEXT libc_getpid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getpid(SB) -+ -+GLOBL ·libc_getpid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getpid_trampoline_addr(SB)/4, $libc_getpid_trampoline<>(SB) -+ -+TEXT libc_getppid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getppid(SB) -+ -+GLOBL ·libc_getppid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getppid_trampoline_addr(SB)/4, $libc_getppid_trampoline<>(SB) -+ -+TEXT libc_getpriority_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getpriority(SB) -+ -+GLOBL ·libc_getpriority_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getpriority_trampoline_addr(SB)/4, $libc_getpriority_trampoline<>(SB) -+ -+TEXT libc_getrlimit_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getrlimit(SB) -+ -+GLOBL ·libc_getrlimit_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getrlimit_trampoline_addr(SB)/4, $libc_getrlimit_trampoline<>(SB) -+ -+TEXT libc_getrtable_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getrtable(SB) -+ -+GLOBL ·libc_getrtable_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getrtable_trampoline_addr(SB)/4, $libc_getrtable_trampoline<>(SB) -+ -+TEXT libc_getrusage_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getrusage(SB) -+ -+GLOBL ·libc_getrusage_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getrusage_trampoline_addr(SB)/4, $libc_getrusage_trampoline<>(SB) -+ -+TEXT libc_getsid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getsid(SB) -+ -+GLOBL ·libc_getsid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getsid_trampoline_addr(SB)/4, $libc_getsid_trampoline<>(SB) -+ -+TEXT libc_gettimeofday_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_gettimeofday(SB) -+ -+GLOBL ·libc_gettimeofday_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_gettimeofday_trampoline_addr(SB)/4, $libc_gettimeofday_trampoline<>(SB) -+ -+TEXT libc_getuid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getuid(SB) -+ -+GLOBL ·libc_getuid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_getuid_trampoline_addr(SB)/4, $libc_getuid_trampoline<>(SB) -+ -+TEXT libc_issetugid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_issetugid(SB) -+ -+GLOBL ·libc_issetugid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_issetugid_trampoline_addr(SB)/4, $libc_issetugid_trampoline<>(SB) -+ -+TEXT libc_kill_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_kill(SB) -+ -+GLOBL ·libc_kill_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_kill_trampoline_addr(SB)/4, $libc_kill_trampoline<>(SB) -+ -+TEXT libc_kqueue_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_kqueue(SB) -+ -+GLOBL ·libc_kqueue_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_kqueue_trampoline_addr(SB)/4, $libc_kqueue_trampoline<>(SB) -+ -+TEXT libc_lchown_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_lchown(SB) -+ -+GLOBL ·libc_lchown_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_lchown_trampoline_addr(SB)/4, $libc_lchown_trampoline<>(SB) -+ -+TEXT libc_link_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_link(SB) -+ -+GLOBL ·libc_link_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_link_trampoline_addr(SB)/4, $libc_link_trampoline<>(SB) -+ -+TEXT libc_linkat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_linkat(SB) -+ -+GLOBL ·libc_linkat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_linkat_trampoline_addr(SB)/4, $libc_linkat_trampoline<>(SB) -+ -+TEXT libc_listen_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_listen(SB) -+ -+GLOBL ·libc_listen_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_listen_trampoline_addr(SB)/4, $libc_listen_trampoline<>(SB) -+ -+TEXT libc_lstat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_lstat(SB) -+ -+GLOBL ·libc_lstat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_lstat_trampoline_addr(SB)/4, $libc_lstat_trampoline<>(SB) -+ -+TEXT libc_mkdir_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mkdir(SB) -+ -+GLOBL ·libc_mkdir_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_mkdir_trampoline_addr(SB)/4, $libc_mkdir_trampoline<>(SB) -+ -+TEXT libc_mkdirat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mkdirat(SB) -+ -+GLOBL ·libc_mkdirat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_mkdirat_trampoline_addr(SB)/4, $libc_mkdirat_trampoline<>(SB) -+ -+TEXT libc_mkfifo_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mkfifo(SB) -+ -+GLOBL ·libc_mkfifo_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_mkfifo_trampoline_addr(SB)/4, $libc_mkfifo_trampoline<>(SB) -+ -+TEXT libc_mkfifoat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mkfifoat(SB) -+ -+GLOBL ·libc_mkfifoat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_mkfifoat_trampoline_addr(SB)/4, $libc_mkfifoat_trampoline<>(SB) -+ -+TEXT libc_mknod_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mknod(SB) -+ -+GLOBL ·libc_mknod_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_mknod_trampoline_addr(SB)/4, $libc_mknod_trampoline<>(SB) -+ -+TEXT libc_mknodat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mknodat(SB) -+ -+GLOBL ·libc_mknodat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_mknodat_trampoline_addr(SB)/4, $libc_mknodat_trampoline<>(SB) -+ -+TEXT libc_nanosleep_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_nanosleep(SB) -+ -+GLOBL ·libc_nanosleep_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_nanosleep_trampoline_addr(SB)/4, $libc_nanosleep_trampoline<>(SB) -+ -+TEXT libc_open_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_open(SB) -+ -+GLOBL ·libc_open_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_open_trampoline_addr(SB)/4, $libc_open_trampoline<>(SB) -+ -+TEXT libc_openat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_openat(SB) -+ -+GLOBL ·libc_openat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_openat_trampoline_addr(SB)/4, $libc_openat_trampoline<>(SB) -+ -+TEXT libc_pathconf_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_pathconf(SB) -+ -+GLOBL ·libc_pathconf_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_pathconf_trampoline_addr(SB)/4, $libc_pathconf_trampoline<>(SB) -+ -+TEXT libc_pread_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_pread(SB) -+ -+GLOBL ·libc_pread_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_pread_trampoline_addr(SB)/4, $libc_pread_trampoline<>(SB) -+ -+TEXT libc_pwrite_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_pwrite(SB) -+ -+GLOBL ·libc_pwrite_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_pwrite_trampoline_addr(SB)/4, $libc_pwrite_trampoline<>(SB) -+ -+TEXT libc_read_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_read(SB) -+ -+GLOBL ·libc_read_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_read_trampoline_addr(SB)/4, $libc_read_trampoline<>(SB) -+ -+TEXT libc_readlink_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_readlink(SB) -+ -+GLOBL ·libc_readlink_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_readlink_trampoline_addr(SB)/4, $libc_readlink_trampoline<>(SB) -+ -+TEXT libc_readlinkat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_readlinkat(SB) -+ -+GLOBL ·libc_readlinkat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_readlinkat_trampoline_addr(SB)/4, $libc_readlinkat_trampoline<>(SB) -+ -+TEXT libc_rename_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_rename(SB) -+ -+GLOBL ·libc_rename_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_rename_trampoline_addr(SB)/4, $libc_rename_trampoline<>(SB) -+ -+TEXT libc_renameat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_renameat(SB) -+ -+GLOBL ·libc_renameat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_renameat_trampoline_addr(SB)/4, $libc_renameat_trampoline<>(SB) -+ -+TEXT libc_revoke_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_revoke(SB) -+ -+GLOBL ·libc_revoke_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_revoke_trampoline_addr(SB)/4, $libc_revoke_trampoline<>(SB) -+ -+TEXT libc_rmdir_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_rmdir(SB) -+ -+GLOBL ·libc_rmdir_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_rmdir_trampoline_addr(SB)/4, $libc_rmdir_trampoline<>(SB) -+ -+TEXT libc_lseek_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_lseek(SB) -+ -+GLOBL ·libc_lseek_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_lseek_trampoline_addr(SB)/4, $libc_lseek_trampoline<>(SB) -+ -+TEXT libc_select_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_select(SB) -+ -+GLOBL ·libc_select_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_select_trampoline_addr(SB)/4, $libc_select_trampoline<>(SB) -+ -+TEXT libc_setegid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setegid(SB) -+ -+GLOBL ·libc_setegid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setegid_trampoline_addr(SB)/4, $libc_setegid_trampoline<>(SB) -+ -+TEXT libc_seteuid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_seteuid(SB) -+ -+GLOBL ·libc_seteuid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_seteuid_trampoline_addr(SB)/4, $libc_seteuid_trampoline<>(SB) -+ -+TEXT libc_setgid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setgid(SB) -+ -+GLOBL ·libc_setgid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setgid_trampoline_addr(SB)/4, $libc_setgid_trampoline<>(SB) -+ -+TEXT libc_setlogin_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setlogin(SB) -+ -+GLOBL ·libc_setlogin_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setlogin_trampoline_addr(SB)/4, $libc_setlogin_trampoline<>(SB) -+ -+TEXT libc_setpgid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setpgid(SB) -+ -+GLOBL ·libc_setpgid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setpgid_trampoline_addr(SB)/4, $libc_setpgid_trampoline<>(SB) -+ -+TEXT libc_setpriority_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setpriority(SB) -+ -+GLOBL ·libc_setpriority_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setpriority_trampoline_addr(SB)/4, $libc_setpriority_trampoline<>(SB) -+ -+TEXT libc_setregid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setregid(SB) -+ -+GLOBL ·libc_setregid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setregid_trampoline_addr(SB)/4, $libc_setregid_trampoline<>(SB) -+ -+TEXT libc_setreuid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setreuid(SB) -+ -+GLOBL ·libc_setreuid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setreuid_trampoline_addr(SB)/4, $libc_setreuid_trampoline<>(SB) -+ -+TEXT libc_setresgid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setresgid(SB) -+ -+GLOBL ·libc_setresgid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setresgid_trampoline_addr(SB)/4, $libc_setresgid_trampoline<>(SB) -+ -+TEXT libc_setresuid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setresuid(SB) -+ -+GLOBL ·libc_setresuid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setresuid_trampoline_addr(SB)/4, $libc_setresuid_trampoline<>(SB) -+ -+TEXT libc_setrlimit_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setrlimit(SB) -+ -+GLOBL ·libc_setrlimit_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setrlimit_trampoline_addr(SB)/4, $libc_setrlimit_trampoline<>(SB) -+ -+TEXT libc_setrtable_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setrtable(SB) -+ -+GLOBL ·libc_setrtable_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setrtable_trampoline_addr(SB)/4, $libc_setrtable_trampoline<>(SB) -+ -+TEXT libc_setsid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setsid(SB) -+ -+GLOBL ·libc_setsid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setsid_trampoline_addr(SB)/4, $libc_setsid_trampoline<>(SB) -+ -+TEXT libc_settimeofday_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_settimeofday(SB) -+ -+GLOBL ·libc_settimeofday_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_settimeofday_trampoline_addr(SB)/4, $libc_settimeofday_trampoline<>(SB) -+ -+TEXT libc_setuid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setuid(SB) -+ -+GLOBL ·libc_setuid_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_setuid_trampoline_addr(SB)/4, $libc_setuid_trampoline<>(SB) -+ -+TEXT libc_stat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_stat(SB) -+ -+GLOBL ·libc_stat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_stat_trampoline_addr(SB)/4, $libc_stat_trampoline<>(SB) -+ -+TEXT libc_statfs_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_statfs(SB) -+ -+GLOBL ·libc_statfs_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_statfs_trampoline_addr(SB)/4, $libc_statfs_trampoline<>(SB) -+ -+TEXT libc_symlink_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_symlink(SB) -+ -+GLOBL ·libc_symlink_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_symlink_trampoline_addr(SB)/4, $libc_symlink_trampoline<>(SB) -+ -+TEXT libc_symlinkat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_symlinkat(SB) -+ -+GLOBL ·libc_symlinkat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_symlinkat_trampoline_addr(SB)/4, $libc_symlinkat_trampoline<>(SB) -+ -+TEXT libc_sync_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_sync(SB) -+ -+GLOBL ·libc_sync_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_sync_trampoline_addr(SB)/4, $libc_sync_trampoline<>(SB) -+ -+TEXT libc_truncate_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_truncate(SB) -+ -+GLOBL ·libc_truncate_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_truncate_trampoline_addr(SB)/4, $libc_truncate_trampoline<>(SB) -+ -+TEXT libc_umask_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_umask(SB) -+ -+GLOBL ·libc_umask_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_umask_trampoline_addr(SB)/4, $libc_umask_trampoline<>(SB) -+ -+TEXT libc_unlink_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_unlink(SB) -+ -+GLOBL ·libc_unlink_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_unlink_trampoline_addr(SB)/4, $libc_unlink_trampoline<>(SB) -+ -+TEXT libc_unlinkat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_unlinkat(SB) -+ -+GLOBL ·libc_unlinkat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_unlinkat_trampoline_addr(SB)/4, $libc_unlinkat_trampoline<>(SB) -+ -+TEXT libc_unmount_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_unmount(SB) -+ -+GLOBL ·libc_unmount_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_unmount_trampoline_addr(SB)/4, $libc_unmount_trampoline<>(SB) -+ -+TEXT libc_write_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_write(SB) -+ -+GLOBL ·libc_write_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_write_trampoline_addr(SB)/4, $libc_write_trampoline<>(SB) -+ -+TEXT libc_mmap_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mmap(SB) -+ -+GLOBL ·libc_mmap_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_mmap_trampoline_addr(SB)/4, $libc_mmap_trampoline<>(SB) -+ -+TEXT libc_munmap_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_munmap(SB) -+ -+GLOBL ·libc_munmap_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_munmap_trampoline_addr(SB)/4, $libc_munmap_trampoline<>(SB) -+ -+TEXT libc_utimensat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_utimensat(SB) -+ -+GLOBL ·libc_utimensat_trampoline_addr(SB), RODATA, $4 -+DATA ·libc_utimensat_trampoline_addr(SB)/4, $libc_utimensat_trampoline<>(SB) -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.go b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.go -index 8facd69..800aab6 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.go -@@ -1,6 +1,7 @@ --// go run mksyscall.go -openbsd -tags openbsd,arm64 syscall_bsd.go syscall_openbsd.go syscall_openbsd_arm64.go -+// go run mksyscall.go -openbsd -libc -tags openbsd,arm64 syscall_bsd.go syscall_openbsd.go syscall_openbsd_arm64.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build openbsd && arm64 - // +build openbsd,arm64 - - package unix -@@ -15,7 +16,7 @@ var _ syscall.Errno - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func getgroups(ngid int, gid *_Gid_t) (n int, err error) { -- r0, _, e1 := RawSyscall(SYS_GETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) -+ r0, _, e1 := syscall_rawSyscall(libc_getgroups_trampoline_addr, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -23,20 +24,28 @@ func getgroups(ngid int, gid *_Gid_t) (n int, err error) { - return - } - -+var libc_getgroups_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getgroups getgroups "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func setgroups(ngid int, gid *_Gid_t) (err error) { -- _, _, e1 := RawSyscall(SYS_SETGROUPS, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setgroups_trampoline_addr, uintptr(ngid), uintptr(unsafe.Pointer(gid)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setgroups_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setgroups setgroups "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err error) { -- r0, _, e1 := Syscall6(SYS_WAIT4, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_wait4_trampoline_addr, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options), uintptr(unsafe.Pointer(rusage)), 0, 0) - wpid = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -44,10 +53,14 @@ func wait4(pid int, wstatus *_C_int, options int, rusage *Rusage) (wpid int, err - return - } - -+var libc_wait4_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_wait4 wait4 "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { -- r0, _, e1 := Syscall(SYS_ACCEPT, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ r0, _, e1 := syscall_syscall(libc_accept_trampoline_addr, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -55,30 +68,42 @@ func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { - return - } - -+var libc_accept_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_accept accept "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -- _, _, e1 := Syscall(SYS_BIND, uintptr(s), uintptr(addr), uintptr(addrlen)) -+ _, _, e1 := syscall_syscall(libc_bind_trampoline_addr, uintptr(s), uintptr(addr), uintptr(addrlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_bind_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_bind bind "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -- _, _, e1 := Syscall(SYS_CONNECT, uintptr(s), uintptr(addr), uintptr(addrlen)) -+ _, _, e1 := syscall_syscall(libc_connect_trampoline_addr, uintptr(s), uintptr(addr), uintptr(addrlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_connect_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_connect connect "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func socket(domain int, typ int, proto int) (fd int, err error) { -- r0, _, e1 := RawSyscall(SYS_SOCKET, uintptr(domain), uintptr(typ), uintptr(proto)) -+ r0, _, e1 := syscall_rawSyscall(libc_socket_trampoline_addr, uintptr(domain), uintptr(typ), uintptr(proto)) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -86,66 +111,94 @@ func socket(domain int, typ int, proto int) (fd int, err error) { - return - } - -+var libc_socket_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_socket socket "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) { -- _, _, e1 := Syscall6(SYS_GETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0) -+ _, _, e1 := syscall_syscall6(libc_getsockopt_trampoline_addr, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_getsockopt_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getsockopt getsockopt "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) { -- _, _, e1 := Syscall6(SYS_SETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0) -+ _, _, e1 := syscall_syscall6(libc_setsockopt_trampoline_addr, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setsockopt_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setsockopt setsockopt "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -- _, _, e1 := RawSyscall(SYS_GETPEERNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ _, _, e1 := syscall_rawSyscall(libc_getpeername_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_getpeername_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getpeername getpeername "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -- _, _, e1 := RawSyscall(SYS_GETSOCKNAME, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ _, _, e1 := syscall_rawSyscall(libc_getsockname_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_getsockname_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getsockname getsockname "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Shutdown(s int, how int) (err error) { -- _, _, e1 := Syscall(SYS_SHUTDOWN, uintptr(s), uintptr(how), 0) -+ _, _, e1 := syscall_syscall(libc_shutdown_trampoline_addr, uintptr(s), uintptr(how), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_shutdown_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_shutdown shutdown "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) { -- _, _, e1 := RawSyscall6(SYS_SOCKETPAIR, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0) -+ _, _, e1 := syscall_rawSyscall6(libc_socketpair_trampoline_addr, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_socketpair_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_socketpair socketpair "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) { -@@ -155,7 +208,7 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall6(SYS_RECVFROM, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) -+ r0, _, e1 := syscall_syscall6(libc_recvfrom_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -163,6 +216,10 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl - return - } - -+var libc_recvfrom_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_recvfrom recvfrom "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) { -@@ -172,17 +229,21 @@ func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) ( - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall6(SYS_SENDTO, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen)) -+ _, _, e1 := syscall_syscall6(libc_sendto_trampoline_addr, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_sendto_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_sendto sendto "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_RECVMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -+ r0, _, e1 := syscall_syscall(libc_recvmsg_trampoline_addr, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -190,10 +251,14 @@ func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) { - return - } - -+var libc_recvmsg_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_recvmsg recvmsg "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_SENDMSG, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -+ r0, _, e1 := syscall_syscall(libc_sendmsg_trampoline_addr, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -201,10 +266,14 @@ func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { - return - } - -+var libc_sendmsg_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_sendmsg sendmsg "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, nevent int, timeout *Timespec) (n int, err error) { -- r0, _, e1 := Syscall6(SYS_KEVENT, uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout))) -+ r0, _, e1 := syscall_syscall6(libc_kevent_trampoline_addr, uintptr(kq), uintptr(change), uintptr(nchange), uintptr(event), uintptr(nevent), uintptr(unsafe.Pointer(timeout))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -212,6 +281,10 @@ func kevent(kq int, change unsafe.Pointer, nchange int, event unsafe.Pointer, ne - return - } - -+var libc_kevent_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_kevent kevent "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func utimes(path string, timeval *[2]Timeval) (err error) { -@@ -220,27 +293,35 @@ func utimes(path string, timeval *[2]Timeval) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_UTIMES, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0) -+ _, _, e1 := syscall_syscall(libc_utimes_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_utimes_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_utimes utimes "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func futimes(fd int, timeval *[2]Timeval) (err error) { -- _, _, e1 := Syscall(SYS_FUTIMES, uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0) -+ _, _, e1 := syscall_syscall(libc_futimes_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(timeval)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_futimes_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_futimes futimes "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_POLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) -+ r0, _, e1 := syscall_syscall(libc_poll_trampoline_addr, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(timeout)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -248,6 +329,10 @@ func poll(fds *PollFd, nfds int, timeout int) (n int, err error) { - return - } - -+var libc_poll_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_poll poll "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Madvise(b []byte, behav int) (err error) { -@@ -257,13 +342,17 @@ func Madvise(b []byte, behav int) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall(SYS_MADVISE, uintptr(_p0), uintptr(len(b)), uintptr(behav)) -+ _, _, e1 := syscall_syscall(libc_madvise_trampoline_addr, uintptr(_p0), uintptr(len(b)), uintptr(behav)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_madvise_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_madvise madvise "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mlock(b []byte) (err error) { -@@ -273,23 +362,31 @@ func Mlock(b []byte) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall(SYS_MLOCK, uintptr(_p0), uintptr(len(b)), 0) -+ _, _, e1 := syscall_syscall(libc_mlock_trampoline_addr, uintptr(_p0), uintptr(len(b)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mlock_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mlock mlock "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mlockall(flags int) (err error) { -- _, _, e1 := Syscall(SYS_MLOCKALL, uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall(libc_mlockall_trampoline_addr, uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mlockall_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mlockall mlockall "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mprotect(b []byte, prot int) (err error) { -@@ -299,13 +396,17 @@ func Mprotect(b []byte, prot int) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot)) -+ _, _, e1 := syscall_syscall(libc_mprotect_trampoline_addr, uintptr(_p0), uintptr(len(b)), uintptr(prot)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mprotect_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mprotect mprotect "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Msync(b []byte, flags int) (err error) { -@@ -315,13 +416,17 @@ func Msync(b []byte, flags int) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags)) -+ _, _, e1 := syscall_syscall(libc_msync_trampoline_addr, uintptr(_p0), uintptr(len(b)), uintptr(flags)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_msync_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_msync msync "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Munlock(b []byte) (err error) { -@@ -331,33 +436,45 @@ func Munlock(b []byte) (err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall(SYS_MUNLOCK, uintptr(_p0), uintptr(len(b)), 0) -+ _, _, e1 := syscall_syscall(libc_munlock_trampoline_addr, uintptr(_p0), uintptr(len(b)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_munlock_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_munlock munlock "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Munlockall() (err error) { -- _, _, e1 := Syscall(SYS_MUNLOCKALL, 0, 0, 0) -+ _, _, e1 := syscall_syscall(libc_munlockall_trampoline_addr, 0, 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_munlockall_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_munlockall munlockall "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func pipe2(p *[2]_C_int, flags int) (err error) { -- _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0) -+ _, _, e1 := syscall_rawSyscall(libc_pipe2_trampoline_addr, uintptr(unsafe.Pointer(p)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_pipe2_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_pipe2 pipe2 "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getdents(fd int, buf []byte) (n int, err error) { -@@ -367,7 +484,7 @@ func Getdents(fd int, buf []byte) (n int, err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall(SYS_GETDENTS, uintptr(fd), uintptr(_p0), uintptr(len(buf))) -+ r0, _, e1 := syscall_syscall(libc_getdents_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(buf))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -375,6 +492,10 @@ func Getdents(fd int, buf []byte) (n int, err error) { - return - } - -+var libc_getdents_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getdents getdents "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getcwd(buf []byte) (n int, err error) { -@@ -384,7 +505,7 @@ func Getcwd(buf []byte) (n int, err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0) -+ r0, _, e1 := syscall_syscall(libc_getcwd_trampoline_addr, uintptr(_p0), uintptr(len(buf)), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -392,16 +513,24 @@ func Getcwd(buf []byte) (n int, err error) { - return - } - -+var libc_getcwd_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getcwd getcwd "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func ioctl(fd int, req uint, arg uintptr) (err error) { -- _, _, e1 := Syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg)) -+ _, _, e1 := syscall_syscall(libc_ioctl_trampoline_addr, uintptr(fd), uintptr(req), uintptr(arg)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_ioctl_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_ioctl ioctl "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) (err error) { -@@ -411,17 +540,21 @@ func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) -+ _, _, e1 := syscall_syscall6(libc_sysctl_trampoline_addr, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_sysctl_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_sysctl sysctl "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) { -- r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_ppoll_trampoline_addr, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -429,6 +562,10 @@ func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, - return - } - -+var libc_ppoll_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_ppoll ppoll "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Access(path string, mode uint32) (err error) { -@@ -437,23 +574,31 @@ func Access(path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_ACCESS, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_access_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_access_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_access access "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Adjtime(delta *Timeval, olddelta *Timeval) (err error) { -- _, _, e1 := Syscall(SYS_ADJTIME, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0) -+ _, _, e1 := syscall_syscall(libc_adjtime_trampoline_addr, uintptr(unsafe.Pointer(delta)), uintptr(unsafe.Pointer(olddelta)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_adjtime_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_adjtime adjtime "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Chdir(path string) (err error) { -@@ -462,13 +607,17 @@ func Chdir(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_CHDIR, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_chdir_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_chdir_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_chdir chdir "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Chflags(path string, flags int) (err error) { -@@ -477,13 +626,17 @@ func Chflags(path string, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_CHFLAGS, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall(libc_chflags_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_chflags_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_chflags chflags "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Chmod(path string, mode uint32) (err error) { -@@ -492,13 +645,17 @@ func Chmod(path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_CHMOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_chmod_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_chmod_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_chmod chmod "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Chown(path string, uid int, gid int) (err error) { -@@ -507,13 +664,17 @@ func Chown(path string, uid int, gid int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_CHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) -+ _, _, e1 := syscall_syscall(libc_chown_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_chown_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_chown chown "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Chroot(path string) (err error) { -@@ -522,27 +683,35 @@ func Chroot(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_CHROOT, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_chroot_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_chroot_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_chroot chroot "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Close(fd int) (err error) { -- _, _, e1 := Syscall(SYS_CLOSE, uintptr(fd), 0, 0) -+ _, _, e1 := syscall_syscall(libc_close_trampoline_addr, uintptr(fd), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_close_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_close close "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Dup(fd int) (nfd int, err error) { -- r0, _, e1 := Syscall(SYS_DUP, uintptr(fd), 0, 0) -+ r0, _, e1 := syscall_syscall(libc_dup_trampoline_addr, uintptr(fd), 0, 0) - nfd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -550,33 +719,49 @@ func Dup(fd int) (nfd int, err error) { - return - } - -+var libc_dup_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_dup dup "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Dup2(from int, to int) (err error) { -- _, _, e1 := Syscall(SYS_DUP2, uintptr(from), uintptr(to), 0) -+ _, _, e1 := syscall_syscall(libc_dup2_trampoline_addr, uintptr(from), uintptr(to), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_dup2_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_dup2 dup2 "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Dup3(from int, to int, flags int) (err error) { -- _, _, e1 := Syscall(SYS_DUP3, uintptr(from), uintptr(to), uintptr(flags)) -+ _, _, e1 := syscall_syscall(libc_dup3_trampoline_addr, uintptr(from), uintptr(to), uintptr(flags)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_dup3_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_dup3 dup3 "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Exit(code int) { -- Syscall(SYS_EXIT, uintptr(code), 0, 0) -+ syscall_syscall(libc_exit_trampoline_addr, uintptr(code), 0, 0) - return - } - -+var libc_exit_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_exit exit "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) { -@@ -585,43 +770,59 @@ func Faccessat(dirfd int, path string, mode uint32, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_FACCESSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_faccessat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_faccessat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_faccessat faccessat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchdir(fd int) (err error) { -- _, _, e1 := Syscall(SYS_FCHDIR, uintptr(fd), 0, 0) -+ _, _, e1 := syscall_syscall(libc_fchdir_trampoline_addr, uintptr(fd), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fchdir_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fchdir fchdir "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchflags(fd int, flags int) (err error) { -- _, _, e1 := Syscall(SYS_FCHFLAGS, uintptr(fd), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall(libc_fchflags_trampoline_addr, uintptr(fd), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fchflags_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fchflags fchflags "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchmod(fd int, mode uint32) (err error) { -- _, _, e1 := Syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_fchmod_trampoline_addr, uintptr(fd), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fchmod_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fchmod fchmod "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) { -@@ -630,23 +831,31 @@ func Fchmodat(dirfd int, path string, mode uint32, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_FCHMODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_fchmodat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fchmodat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fchmodat fchmodat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchown(fd int, uid int, gid int) (err error) { -- _, _, e1 := Syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid)) -+ _, _, e1 := syscall_syscall(libc_fchown_trampoline_addr, uintptr(fd), uintptr(uid), uintptr(gid)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fchown_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fchown fchown "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) { -@@ -655,27 +864,35 @@ func Fchownat(dirfd int, path string, uid int, gid int, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_FCHOWNAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall6(libc_fchownat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fchownat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fchownat fchownat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Flock(fd int, how int) (err error) { -- _, _, e1 := Syscall(SYS_FLOCK, uintptr(fd), uintptr(how), 0) -+ _, _, e1 := syscall_syscall(libc_flock_trampoline_addr, uintptr(fd), uintptr(how), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_flock_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_flock flock "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fpathconf(fd int, name int) (val int, err error) { -- r0, _, e1 := Syscall(SYS_FPATHCONF, uintptr(fd), uintptr(name), 0) -+ r0, _, e1 := syscall_syscall(libc_fpathconf_trampoline_addr, uintptr(fd), uintptr(name), 0) - val = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -683,16 +900,24 @@ func Fpathconf(fd int, name int) (val int, err error) { - return - } - -+var libc_fpathconf_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fpathconf fpathconf "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fstat(fd int, stat *Stat_t) (err error) { -- _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_fstat_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fstat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fstat fstat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) { -@@ -701,71 +926,99 @@ func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_fstatat_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fstatat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fstatat fstatat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fstatfs(fd int, stat *Statfs_t) (err error) { -- _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_fstatfs_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fstatfs_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fstatfs fstatfs "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Fsync(fd int) (err error) { -- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0) -+ _, _, e1 := syscall_syscall(libc_fsync_trampoline_addr, uintptr(fd), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_fsync_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_fsync fsync "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Ftruncate(fd int, length int64) (err error) { -- _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), 0, uintptr(length)) -+ _, _, e1 := syscall_syscall(libc_ftruncate_trampoline_addr, uintptr(fd), uintptr(length), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_ftruncate_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_ftruncate ftruncate "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getegid() (egid int) { -- r0, _, _ := RawSyscall(SYS_GETEGID, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getegid_trampoline_addr, 0, 0, 0) - egid = int(r0) - return - } - -+var libc_getegid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getegid getegid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Geteuid() (uid int) { -- r0, _, _ := RawSyscall(SYS_GETEUID, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_geteuid_trampoline_addr, 0, 0, 0) - uid = int(r0) - return - } - -+var libc_geteuid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_geteuid geteuid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getgid() (gid int) { -- r0, _, _ := RawSyscall(SYS_GETGID, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getgid_trampoline_addr, 0, 0, 0) - gid = int(r0) - return - } - -+var libc_getgid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getgid getgid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getpgid(pid int) (pgid int, err error) { -- r0, _, e1 := RawSyscall(SYS_GETPGID, uintptr(pid), 0, 0) -+ r0, _, e1 := syscall_rawSyscall(libc_getpgid_trampoline_addr, uintptr(pid), 0, 0) - pgid = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -773,34 +1026,50 @@ func Getpgid(pid int) (pgid int, err error) { - return - } - -+var libc_getpgid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getpgid getpgid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getpgrp() (pgrp int) { -- r0, _, _ := RawSyscall(SYS_GETPGRP, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getpgrp_trampoline_addr, 0, 0, 0) - pgrp = int(r0) - return - } - -+var libc_getpgrp_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getpgrp getpgrp "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getpid() (pid int) { -- r0, _, _ := RawSyscall(SYS_GETPID, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getpid_trampoline_addr, 0, 0, 0) - pid = int(r0) - return - } - -+var libc_getpid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getpid getpid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getppid() (ppid int) { -- r0, _, _ := RawSyscall(SYS_GETPPID, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getppid_trampoline_addr, 0, 0, 0) - ppid = int(r0) - return - } - -+var libc_getppid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getppid getppid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getpriority(which int, who int) (prio int, err error) { -- r0, _, e1 := Syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0) -+ r0, _, e1 := syscall_syscall(libc_getpriority_trampoline_addr, uintptr(which), uintptr(who), 0) - prio = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -808,20 +1077,28 @@ func Getpriority(which int, who int) (prio int, err error) { - return - } - -+var libc_getpriority_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getpriority getpriority "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getrlimit(which int, lim *Rlimit) (err error) { -- _, _, e1 := RawSyscall(SYS_GETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) -+ _, _, e1 := syscall_rawSyscall(libc_getrlimit_trampoline_addr, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_getrlimit_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getrlimit getrlimit "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getrtable() (rtable int, err error) { -- r0, _, e1 := RawSyscall(SYS_GETRTABLE, 0, 0, 0) -+ r0, _, e1 := syscall_rawSyscall(libc_getrtable_trampoline_addr, 0, 0, 0) - rtable = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -829,20 +1106,28 @@ func Getrtable() (rtable int, err error) { - return - } - -+var libc_getrtable_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getrtable getrtable "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getrusage(who int, rusage *Rusage) (err error) { -- _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0) -+ _, _, e1 := syscall_rawSyscall(libc_getrusage_trampoline_addr, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_getrusage_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getrusage getrusage "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getsid(pid int) (sid int, err error) { -- r0, _, e1 := RawSyscall(SYS_GETSID, uintptr(pid), 0, 0) -+ r0, _, e1 := syscall_rawSyscall(libc_getsid_trampoline_addr, uintptr(pid), 0, 0) - sid = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -850,46 +1135,66 @@ func Getsid(pid int) (sid int, err error) { - return - } - -+var libc_getsid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getsid getsid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Gettimeofday(tv *Timeval) (err error) { -- _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_gettimeofday_trampoline_addr, uintptr(unsafe.Pointer(tv)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_gettimeofday_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_gettimeofday gettimeofday "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Getuid() (uid int) { -- r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0) -+ r0, _, _ := syscall_rawSyscall(libc_getuid_trampoline_addr, 0, 0, 0) - uid = int(r0) - return - } - -+var libc_getuid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_getuid getuid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Issetugid() (tainted bool) { -- r0, _, _ := Syscall(SYS_ISSETUGID, 0, 0, 0) -+ r0, _, _ := syscall_syscall(libc_issetugid_trampoline_addr, 0, 0, 0) - tainted = bool(r0 != 0) - return - } - -+var libc_issetugid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_issetugid issetugid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Kill(pid int, signum syscall.Signal) (err error) { -- _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), 0) -+ _, _, e1 := syscall_syscall(libc_kill_trampoline_addr, uintptr(pid), uintptr(signum), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_kill_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_kill kill "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Kqueue() (fd int, err error) { -- r0, _, e1 := Syscall(SYS_KQUEUE, 0, 0, 0) -+ r0, _, e1 := syscall_syscall(libc_kqueue_trampoline_addr, 0, 0, 0) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -897,6 +1202,10 @@ func Kqueue() (fd int, err error) { - return - } - -+var libc_kqueue_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_kqueue kqueue "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Lchown(path string, uid int, gid int) (err error) { -@@ -905,13 +1214,17 @@ func Lchown(path string, uid int, gid int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_LCHOWN, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) -+ _, _, e1 := syscall_syscall(libc_lchown_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_lchown_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_lchown lchown "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Link(path string, link string) (err error) { -@@ -925,13 +1238,17 @@ func Link(path string, link string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_LINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -+ _, _, e1 := syscall_syscall(libc_link_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_link_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_link link "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err error) { -@@ -945,23 +1262,31 @@ func Linkat(pathfd int, path string, linkfd int, link string, flags int) (err er - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_LINKAT, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall6(libc_linkat_trampoline_addr, uintptr(pathfd), uintptr(unsafe.Pointer(_p0)), uintptr(linkfd), uintptr(unsafe.Pointer(_p1)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_linkat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_linkat linkat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Listen(s int, backlog int) (err error) { -- _, _, e1 := Syscall(SYS_LISTEN, uintptr(s), uintptr(backlog), 0) -+ _, _, e1 := syscall_syscall(libc_listen_trampoline_addr, uintptr(s), uintptr(backlog), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_listen_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_listen listen "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Lstat(path string, stat *Stat_t) (err error) { -@@ -970,13 +1295,17 @@ func Lstat(path string, stat *Stat_t) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_LSTAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_lstat_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_lstat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_lstat lstat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mkdir(path string, mode uint32) (err error) { -@@ -985,13 +1314,17 @@ func Mkdir(path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_MKDIR, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_mkdir_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mkdir_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mkdir mkdir "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mkdirat(dirfd int, path string, mode uint32) (err error) { -@@ -1000,13 +1333,17 @@ func Mkdirat(dirfd int, path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_MKDIRAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) -+ _, _, e1 := syscall_syscall(libc_mkdirat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mkdirat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mkdirat mkdirat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mkfifo(path string, mode uint32) (err error) { -@@ -1015,13 +1352,17 @@ func Mkfifo(path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_MKFIFO, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ _, _, e1 := syscall_syscall(libc_mkfifo_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mkfifo_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mkfifo mkfifo "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mkfifoat(dirfd int, path string, mode uint32) (err error) { -@@ -1030,13 +1371,17 @@ func Mkfifoat(dirfd int, path string, mode uint32) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_MKFIFOAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) -+ _, _, e1 := syscall_syscall(libc_mkfifoat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mkfifoat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mkfifoat mkfifoat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mknod(path string, mode uint32, dev int) (err error) { -@@ -1045,13 +1390,17 @@ func Mknod(path string, mode uint32, dev int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_MKNOD, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) -+ _, _, e1 := syscall_syscall(libc_mknod_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mknod_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mknod mknod "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) { -@@ -1060,23 +1409,31 @@ func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_mknodat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_mknodat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mknodat mknodat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Nanosleep(time *Timespec, leftover *Timespec) (err error) { -- _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0) -+ _, _, e1 := syscall_syscall(libc_nanosleep_trampoline_addr, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_nanosleep_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_nanosleep nanosleep "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Open(path string, mode int, perm uint32) (fd int, err error) { -@@ -1085,7 +1442,7 @@ func Open(path string, mode int, perm uint32) (fd int, err error) { - if err != nil { - return - } -- r0, _, e1 := Syscall(SYS_OPEN, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm)) -+ r0, _, e1 := syscall_syscall(libc_open_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm)) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1093,6 +1450,10 @@ func Open(path string, mode int, perm uint32) (fd int, err error) { - return - } - -+var libc_open_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_open open "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) { -@@ -1101,7 +1462,7 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) { - if err != nil { - return - } -- r0, _, e1 := Syscall6(SYS_OPENAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_openat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm), 0, 0) - fd = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1109,6 +1470,10 @@ func Openat(dirfd int, path string, mode int, perm uint32) (fd int, err error) { - return - } - -+var libc_openat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_openat openat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Pathconf(path string, name int) (val int, err error) { -@@ -1117,7 +1482,7 @@ func Pathconf(path string, name int) (val int, err error) { - if err != nil { - return - } -- r0, _, e1 := Syscall(SYS_PATHCONF, uintptr(unsafe.Pointer(_p0)), uintptr(name), 0) -+ r0, _, e1 := syscall_syscall(libc_pathconf_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(name), 0) - val = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1125,16 +1490,20 @@ func Pathconf(path string, name int) (val int, err error) { - return - } - -+var libc_pathconf_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_pathconf pathconf "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall6(SYS_PREAD, uintptr(fd), uintptr(_p0), uintptr(len(p)), 0, uintptr(offset), 0) -+ r0, _, e1 := syscall_syscall6(libc_pread_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1142,16 +1511,20 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - return - } - -+var libc_pread_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_pread pread "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall6(SYS_PWRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)), 0, uintptr(offset), 0) -+ r0, _, e1 := syscall_syscall6(libc_pwrite_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1159,6 +1532,10 @@ func Pwrite(fd int, p []byte, offset int64) (n int, err error) { - return - } - -+var libc_pwrite_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_pwrite pwrite "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func read(fd int, p []byte) (n int, err error) { -@@ -1168,7 +1545,7 @@ func read(fd int, p []byte) (n int, err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p))) -+ r0, _, e1 := syscall_syscall(libc_read_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1176,6 +1553,10 @@ func read(fd int, p []byte) (n int, err error) { - return - } - -+var libc_read_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_read read "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Readlink(path string, buf []byte) (n int, err error) { -@@ -1190,7 +1571,7 @@ func Readlink(path string, buf []byte) (n int, err error) { - } else { - _p1 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall(SYS_READLINK, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf))) -+ r0, _, e1 := syscall_syscall(libc_readlink_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1198,6 +1579,10 @@ func Readlink(path string, buf []byte) (n int, err error) { - return - } - -+var libc_readlink_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_readlink readlink "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) { -@@ -1212,7 +1597,7 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) { - } else { - _p1 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall6(SYS_READLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_readlinkat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf)), 0, 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1220,6 +1605,10 @@ func Readlinkat(dirfd int, path string, buf []byte) (n int, err error) { - return - } - -+var libc_readlinkat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_readlinkat readlinkat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Rename(from string, to string) (err error) { -@@ -1233,13 +1622,17 @@ func Rename(from string, to string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_RENAME, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -+ _, _, e1 := syscall_syscall(libc_rename_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_rename_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_rename rename "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Renameat(fromfd int, from string, tofd int, to string) (err error) { -@@ -1253,13 +1646,17 @@ func Renameat(fromfd int, from string, tofd int, to string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_RENAMEAT, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_renameat_trampoline_addr, uintptr(fromfd), uintptr(unsafe.Pointer(_p0)), uintptr(tofd), uintptr(unsafe.Pointer(_p1)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_renameat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_renameat renameat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Revoke(path string) (err error) { -@@ -1268,13 +1665,17 @@ func Revoke(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_REVOKE, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_revoke_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_revoke_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_revoke revoke "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Rmdir(path string) (err error) { -@@ -1283,17 +1684,21 @@ func Rmdir(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_RMDIR, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_rmdir_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_rmdir_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_rmdir rmdir "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { -- r0, _, e1 := Syscall6(SYS_LSEEK, uintptr(fd), 0, uintptr(offset), uintptr(whence), 0, 0) -+ r0, _, e1 := syscall_syscall(libc_lseek_trampoline_addr, uintptr(fd), uintptr(offset), uintptr(whence)) - newoffset = int64(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1301,10 +1706,14 @@ func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { - return - } - -+var libc_lseek_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_lseek lseek "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err error) { -- r0, _, e1 := Syscall6(SYS_SELECT, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0) -+ r0, _, e1 := syscall_syscall6(libc_select_trampoline_addr, uintptr(nfd), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1312,36 +1721,52 @@ func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err - return - } - -+var libc_select_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_select select "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setegid(egid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETEGID, uintptr(egid), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_setegid_trampoline_addr, uintptr(egid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setegid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setegid setegid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Seteuid(euid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETEUID, uintptr(euid), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_seteuid_trampoline_addr, uintptr(euid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_seteuid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_seteuid seteuid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setgid(gid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETGID, uintptr(gid), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_setgid_trampoline_addr, uintptr(gid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setgid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setgid setgid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setlogin(name string) (err error) { -@@ -1350,97 +1775,133 @@ func Setlogin(name string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_SETLOGIN, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_setlogin_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setlogin_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setlogin setlogin "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setpgid(pid int, pgid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setpgid_trampoline_addr, uintptr(pid), uintptr(pgid), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setpgid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setpgid setpgid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setpriority(which int, who int, prio int) (err error) { -- _, _, e1 := Syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio)) -+ _, _, e1 := syscall_syscall(libc_setpriority_trampoline_addr, uintptr(which), uintptr(who), uintptr(prio)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setpriority_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setpriority setpriority "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setregid(rgid int, egid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setregid_trampoline_addr, uintptr(rgid), uintptr(egid), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setregid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setregid setregid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setreuid(ruid int, euid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setreuid_trampoline_addr, uintptr(ruid), uintptr(euid), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setreuid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setreuid setreuid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setresgid(rgid int, egid int, sgid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESGID, uintptr(rgid), uintptr(egid), uintptr(sgid)) -+ _, _, e1 := syscall_rawSyscall(libc_setresgid_trampoline_addr, uintptr(rgid), uintptr(egid), uintptr(sgid)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setresgid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setresgid setresgid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setresuid(ruid int, euid int, suid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRESUID, uintptr(ruid), uintptr(euid), uintptr(suid)) -+ _, _, e1 := syscall_rawSyscall(libc_setresuid_trampoline_addr, uintptr(ruid), uintptr(euid), uintptr(suid)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setresuid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setresuid setresuid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setrlimit(which int, lim *Rlimit) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRLIMIT, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) -+ _, _, e1 := syscall_rawSyscall(libc_setrlimit_trampoline_addr, uintptr(which), uintptr(unsafe.Pointer(lim)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setrlimit_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setrlimit setrlimit "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setrtable(rtable int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETRTABLE, uintptr(rtable), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_setrtable_trampoline_addr, uintptr(rtable), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setrtable_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setrtable setrtable "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setsid() (pid int, err error) { -- r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0) -+ r0, _, e1 := syscall_rawSyscall(libc_setsid_trampoline_addr, 0, 0, 0) - pid = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1448,26 +1909,38 @@ func Setsid() (pid int, err error) { - return - } - -+var libc_setsid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setsid setsid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Settimeofday(tp *Timeval) (err error) { -- _, _, e1 := RawSyscall(SYS_SETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_settimeofday_trampoline_addr, uintptr(unsafe.Pointer(tp)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_settimeofday_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_settimeofday settimeofday "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setuid(uid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETUID, uintptr(uid), 0, 0) -+ _, _, e1 := syscall_rawSyscall(libc_setuid_trampoline_addr, uintptr(uid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_setuid_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_setuid setuid "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Stat(path string, stat *Stat_t) (err error) { -@@ -1476,13 +1949,17 @@ func Stat(path string, stat *Stat_t) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_STAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_stat_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_stat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_stat stat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Statfs(path string, stat *Statfs_t) (err error) { -@@ -1491,13 +1968,17 @@ func Statfs(path string, stat *Statfs_t) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_STATFS, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := syscall_syscall(libc_statfs_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_statfs_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_statfs statfs "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Symlink(path string, link string) (err error) { -@@ -1511,13 +1992,17 @@ func Symlink(path string, link string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_SYMLINK, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -+ _, _, e1 := syscall_syscall(libc_symlink_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_symlink_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_symlink symlink "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) { -@@ -1531,23 +2016,31 @@ func Symlinkat(oldpath string, newdirfd int, newpath string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_SYMLINKAT, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1))) -+ _, _, e1 := syscall_syscall(libc_symlinkat_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(newdirfd), uintptr(unsafe.Pointer(_p1))) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_symlinkat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_symlinkat symlinkat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Sync() (err error) { -- _, _, e1 := Syscall(SYS_SYNC, 0, 0, 0) -+ _, _, e1 := syscall_syscall(libc_sync_trampoline_addr, 0, 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_sync_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_sync sync "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Truncate(path string, length int64) (err error) { -@@ -1556,21 +2049,29 @@ func Truncate(path string, length int64) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), 0, uintptr(length)) -+ _, _, e1 := syscall_syscall(libc_truncate_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_truncate_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_truncate truncate "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Umask(newmask int) (oldmask int) { -- r0, _, _ := Syscall(SYS_UMASK, uintptr(newmask), 0, 0) -+ r0, _, _ := syscall_syscall(libc_umask_trampoline_addr, uintptr(newmask), 0, 0) - oldmask = int(r0) - return - } - -+var libc_umask_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_umask umask "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Unlink(path string) (err error) { -@@ -1579,13 +2080,17 @@ func Unlink(path string) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_UNLINK, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ _, _, e1 := syscall_syscall(libc_unlink_trampoline_addr, uintptr(unsafe.Pointer(_p0)), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_unlink_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_unlink unlink "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Unlinkat(dirfd int, path string, flags int) (err error) { -@@ -1594,13 +2099,17 @@ func Unlinkat(dirfd int, path string, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_UNLINKAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags)) -+ _, _, e1 := syscall_syscall(libc_unlinkat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(flags)) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_unlinkat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_unlinkat unlinkat "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Unmount(path string, flags int) (err error) { -@@ -1609,13 +2118,17 @@ func Unmount(path string, flags int) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_UNMOUNT, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) -+ _, _, e1 := syscall_syscall(libc_unmount_trampoline_addr, uintptr(unsafe.Pointer(_p0)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_unmount_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_unmount unmount "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func write(fd int, p []byte) (n int, err error) { -@@ -1625,7 +2138,7 @@ func write(fd int, p []byte) (n int, err error) { - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p))) -+ r0, _, e1 := syscall_syscall(libc_write_trampoline_addr, uintptr(fd), uintptr(_p0), uintptr(len(p))) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1633,10 +2146,14 @@ func write(fd int, p []byte) (n int, err error) { - return - } - -+var libc_write_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_write write "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) { -- r0, _, e1 := Syscall9(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), 0, uintptr(pos), 0, 0) -+ r0, _, e1 := syscall_syscall6(libc_mmap_trampoline_addr, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos)) - ret = uintptr(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1644,20 +2161,28 @@ func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) ( - return - } - -+var libc_mmap_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_mmap mmap "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func munmap(addr uintptr, length uintptr) (err error) { -- _, _, e1 := Syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0) -+ _, _, e1 := syscall_syscall(libc_munmap_trampoline_addr, uintptr(addr), uintptr(length), 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } - -+var libc_munmap_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_munmap munmap "libc.so" -+ - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func readlen(fd int, buf *byte, nbuf int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) -+ r0, _, e1 := syscall_syscall(libc_read_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1668,7 +2193,7 @@ func readlen(fd int, buf *byte, nbuf int) (n int, err error) { - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func writelen(fd int, buf *byte, nbuf int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_WRITE, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) -+ r0, _, e1 := syscall_syscall(libc_write_trampoline_addr, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1684,9 +2209,13 @@ func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0) -+ _, _, e1 := syscall_syscall6(libc_utimensat_trampoline_addr, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } - return - } -+ -+var libc_utimensat_trampoline_addr uintptr -+ -+//go:cgo_import_dynamic libc_utimensat utimensat "libc.so" -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.s b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.s -new file mode 100644 -index 0000000..4efeff9 ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.s -@@ -0,0 +1,796 @@ -+// go run mkasm.go openbsd arm64 -+// Code generated by the command above; DO NOT EDIT. -+ -+#include "textflag.h" -+ -+TEXT libc_getgroups_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getgroups(SB) -+ -+GLOBL ·libc_getgroups_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getgroups_trampoline_addr(SB)/8, $libc_getgroups_trampoline<>(SB) -+ -+TEXT libc_setgroups_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setgroups(SB) -+ -+GLOBL ·libc_setgroups_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setgroups_trampoline_addr(SB)/8, $libc_setgroups_trampoline<>(SB) -+ -+TEXT libc_wait4_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_wait4(SB) -+ -+GLOBL ·libc_wait4_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_wait4_trampoline_addr(SB)/8, $libc_wait4_trampoline<>(SB) -+ -+TEXT libc_accept_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_accept(SB) -+ -+GLOBL ·libc_accept_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_accept_trampoline_addr(SB)/8, $libc_accept_trampoline<>(SB) -+ -+TEXT libc_bind_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_bind(SB) -+ -+GLOBL ·libc_bind_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_bind_trampoline_addr(SB)/8, $libc_bind_trampoline<>(SB) -+ -+TEXT libc_connect_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_connect(SB) -+ -+GLOBL ·libc_connect_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_connect_trampoline_addr(SB)/8, $libc_connect_trampoline<>(SB) -+ -+TEXT libc_socket_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_socket(SB) -+ -+GLOBL ·libc_socket_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_socket_trampoline_addr(SB)/8, $libc_socket_trampoline<>(SB) -+ -+TEXT libc_getsockopt_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getsockopt(SB) -+ -+GLOBL ·libc_getsockopt_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getsockopt_trampoline_addr(SB)/8, $libc_getsockopt_trampoline<>(SB) -+ -+TEXT libc_setsockopt_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setsockopt(SB) -+ -+GLOBL ·libc_setsockopt_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setsockopt_trampoline_addr(SB)/8, $libc_setsockopt_trampoline<>(SB) -+ -+TEXT libc_getpeername_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getpeername(SB) -+ -+GLOBL ·libc_getpeername_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getpeername_trampoline_addr(SB)/8, $libc_getpeername_trampoline<>(SB) -+ -+TEXT libc_getsockname_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getsockname(SB) -+ -+GLOBL ·libc_getsockname_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getsockname_trampoline_addr(SB)/8, $libc_getsockname_trampoline<>(SB) -+ -+TEXT libc_shutdown_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_shutdown(SB) -+ -+GLOBL ·libc_shutdown_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_shutdown_trampoline_addr(SB)/8, $libc_shutdown_trampoline<>(SB) -+ -+TEXT libc_socketpair_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_socketpair(SB) -+ -+GLOBL ·libc_socketpair_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_socketpair_trampoline_addr(SB)/8, $libc_socketpair_trampoline<>(SB) -+ -+TEXT libc_recvfrom_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_recvfrom(SB) -+ -+GLOBL ·libc_recvfrom_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_recvfrom_trampoline_addr(SB)/8, $libc_recvfrom_trampoline<>(SB) -+ -+TEXT libc_sendto_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_sendto(SB) -+ -+GLOBL ·libc_sendto_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_sendto_trampoline_addr(SB)/8, $libc_sendto_trampoline<>(SB) -+ -+TEXT libc_recvmsg_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_recvmsg(SB) -+ -+GLOBL ·libc_recvmsg_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_recvmsg_trampoline_addr(SB)/8, $libc_recvmsg_trampoline<>(SB) -+ -+TEXT libc_sendmsg_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_sendmsg(SB) -+ -+GLOBL ·libc_sendmsg_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_sendmsg_trampoline_addr(SB)/8, $libc_sendmsg_trampoline<>(SB) -+ -+TEXT libc_kevent_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_kevent(SB) -+ -+GLOBL ·libc_kevent_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_kevent_trampoline_addr(SB)/8, $libc_kevent_trampoline<>(SB) -+ -+TEXT libc_utimes_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_utimes(SB) -+ -+GLOBL ·libc_utimes_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_utimes_trampoline_addr(SB)/8, $libc_utimes_trampoline<>(SB) -+ -+TEXT libc_futimes_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_futimes(SB) -+ -+GLOBL ·libc_futimes_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_futimes_trampoline_addr(SB)/8, $libc_futimes_trampoline<>(SB) -+ -+TEXT libc_poll_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_poll(SB) -+ -+GLOBL ·libc_poll_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_poll_trampoline_addr(SB)/8, $libc_poll_trampoline<>(SB) -+ -+TEXT libc_madvise_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_madvise(SB) -+ -+GLOBL ·libc_madvise_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_madvise_trampoline_addr(SB)/8, $libc_madvise_trampoline<>(SB) -+ -+TEXT libc_mlock_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mlock(SB) -+ -+GLOBL ·libc_mlock_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mlock_trampoline_addr(SB)/8, $libc_mlock_trampoline<>(SB) -+ -+TEXT libc_mlockall_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mlockall(SB) -+ -+GLOBL ·libc_mlockall_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mlockall_trampoline_addr(SB)/8, $libc_mlockall_trampoline<>(SB) -+ -+TEXT libc_mprotect_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mprotect(SB) -+ -+GLOBL ·libc_mprotect_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mprotect_trampoline_addr(SB)/8, $libc_mprotect_trampoline<>(SB) -+ -+TEXT libc_msync_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_msync(SB) -+ -+GLOBL ·libc_msync_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_msync_trampoline_addr(SB)/8, $libc_msync_trampoline<>(SB) -+ -+TEXT libc_munlock_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_munlock(SB) -+ -+GLOBL ·libc_munlock_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_munlock_trampoline_addr(SB)/8, $libc_munlock_trampoline<>(SB) -+ -+TEXT libc_munlockall_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_munlockall(SB) -+ -+GLOBL ·libc_munlockall_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_munlockall_trampoline_addr(SB)/8, $libc_munlockall_trampoline<>(SB) -+ -+TEXT libc_pipe2_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_pipe2(SB) -+ -+GLOBL ·libc_pipe2_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_pipe2_trampoline_addr(SB)/8, $libc_pipe2_trampoline<>(SB) -+ -+TEXT libc_getdents_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getdents(SB) -+ -+GLOBL ·libc_getdents_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getdents_trampoline_addr(SB)/8, $libc_getdents_trampoline<>(SB) -+ -+TEXT libc_getcwd_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getcwd(SB) -+ -+GLOBL ·libc_getcwd_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getcwd_trampoline_addr(SB)/8, $libc_getcwd_trampoline<>(SB) -+ -+TEXT libc_ioctl_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_ioctl(SB) -+ -+GLOBL ·libc_ioctl_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_ioctl_trampoline_addr(SB)/8, $libc_ioctl_trampoline<>(SB) -+ -+TEXT libc_sysctl_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_sysctl(SB) -+ -+GLOBL ·libc_sysctl_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_sysctl_trampoline_addr(SB)/8, $libc_sysctl_trampoline<>(SB) -+ -+TEXT libc_ppoll_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_ppoll(SB) -+ -+GLOBL ·libc_ppoll_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_ppoll_trampoline_addr(SB)/8, $libc_ppoll_trampoline<>(SB) -+ -+TEXT libc_access_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_access(SB) -+ -+GLOBL ·libc_access_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_access_trampoline_addr(SB)/8, $libc_access_trampoline<>(SB) -+ -+TEXT libc_adjtime_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_adjtime(SB) -+ -+GLOBL ·libc_adjtime_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_adjtime_trampoline_addr(SB)/8, $libc_adjtime_trampoline<>(SB) -+ -+TEXT libc_chdir_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_chdir(SB) -+ -+GLOBL ·libc_chdir_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_chdir_trampoline_addr(SB)/8, $libc_chdir_trampoline<>(SB) -+ -+TEXT libc_chflags_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_chflags(SB) -+ -+GLOBL ·libc_chflags_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_chflags_trampoline_addr(SB)/8, $libc_chflags_trampoline<>(SB) -+ -+TEXT libc_chmod_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_chmod(SB) -+ -+GLOBL ·libc_chmod_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_chmod_trampoline_addr(SB)/8, $libc_chmod_trampoline<>(SB) -+ -+TEXT libc_chown_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_chown(SB) -+ -+GLOBL ·libc_chown_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_chown_trampoline_addr(SB)/8, $libc_chown_trampoline<>(SB) -+ -+TEXT libc_chroot_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_chroot(SB) -+ -+GLOBL ·libc_chroot_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_chroot_trampoline_addr(SB)/8, $libc_chroot_trampoline<>(SB) -+ -+TEXT libc_close_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_close(SB) -+ -+GLOBL ·libc_close_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_close_trampoline_addr(SB)/8, $libc_close_trampoline<>(SB) -+ -+TEXT libc_dup_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_dup(SB) -+ -+GLOBL ·libc_dup_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_dup_trampoline_addr(SB)/8, $libc_dup_trampoline<>(SB) -+ -+TEXT libc_dup2_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_dup2(SB) -+ -+GLOBL ·libc_dup2_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_dup2_trampoline_addr(SB)/8, $libc_dup2_trampoline<>(SB) -+ -+TEXT libc_dup3_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_dup3(SB) -+ -+GLOBL ·libc_dup3_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_dup3_trampoline_addr(SB)/8, $libc_dup3_trampoline<>(SB) -+ -+TEXT libc_exit_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_exit(SB) -+ -+GLOBL ·libc_exit_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_exit_trampoline_addr(SB)/8, $libc_exit_trampoline<>(SB) -+ -+TEXT libc_faccessat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_faccessat(SB) -+ -+GLOBL ·libc_faccessat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_faccessat_trampoline_addr(SB)/8, $libc_faccessat_trampoline<>(SB) -+ -+TEXT libc_fchdir_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fchdir(SB) -+ -+GLOBL ·libc_fchdir_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fchdir_trampoline_addr(SB)/8, $libc_fchdir_trampoline<>(SB) -+ -+TEXT libc_fchflags_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fchflags(SB) -+ -+GLOBL ·libc_fchflags_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fchflags_trampoline_addr(SB)/8, $libc_fchflags_trampoline<>(SB) -+ -+TEXT libc_fchmod_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fchmod(SB) -+ -+GLOBL ·libc_fchmod_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fchmod_trampoline_addr(SB)/8, $libc_fchmod_trampoline<>(SB) -+ -+TEXT libc_fchmodat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fchmodat(SB) -+ -+GLOBL ·libc_fchmodat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fchmodat_trampoline_addr(SB)/8, $libc_fchmodat_trampoline<>(SB) -+ -+TEXT libc_fchown_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fchown(SB) -+ -+GLOBL ·libc_fchown_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fchown_trampoline_addr(SB)/8, $libc_fchown_trampoline<>(SB) -+ -+TEXT libc_fchownat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fchownat(SB) -+ -+GLOBL ·libc_fchownat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fchownat_trampoline_addr(SB)/8, $libc_fchownat_trampoline<>(SB) -+ -+TEXT libc_flock_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_flock(SB) -+ -+GLOBL ·libc_flock_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_flock_trampoline_addr(SB)/8, $libc_flock_trampoline<>(SB) -+ -+TEXT libc_fpathconf_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fpathconf(SB) -+ -+GLOBL ·libc_fpathconf_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fpathconf_trampoline_addr(SB)/8, $libc_fpathconf_trampoline<>(SB) -+ -+TEXT libc_fstat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fstat(SB) -+ -+GLOBL ·libc_fstat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fstat_trampoline_addr(SB)/8, $libc_fstat_trampoline<>(SB) -+ -+TEXT libc_fstatat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fstatat(SB) -+ -+GLOBL ·libc_fstatat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fstatat_trampoline_addr(SB)/8, $libc_fstatat_trampoline<>(SB) -+ -+TEXT libc_fstatfs_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fstatfs(SB) -+ -+GLOBL ·libc_fstatfs_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fstatfs_trampoline_addr(SB)/8, $libc_fstatfs_trampoline<>(SB) -+ -+TEXT libc_fsync_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_fsync(SB) -+ -+GLOBL ·libc_fsync_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_fsync_trampoline_addr(SB)/8, $libc_fsync_trampoline<>(SB) -+ -+TEXT libc_ftruncate_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_ftruncate(SB) -+ -+GLOBL ·libc_ftruncate_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_ftruncate_trampoline_addr(SB)/8, $libc_ftruncate_trampoline<>(SB) -+ -+TEXT libc_getegid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getegid(SB) -+ -+GLOBL ·libc_getegid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getegid_trampoline_addr(SB)/8, $libc_getegid_trampoline<>(SB) -+ -+TEXT libc_geteuid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_geteuid(SB) -+ -+GLOBL ·libc_geteuid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_geteuid_trampoline_addr(SB)/8, $libc_geteuid_trampoline<>(SB) -+ -+TEXT libc_getgid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getgid(SB) -+ -+GLOBL ·libc_getgid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getgid_trampoline_addr(SB)/8, $libc_getgid_trampoline<>(SB) -+ -+TEXT libc_getpgid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getpgid(SB) -+ -+GLOBL ·libc_getpgid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getpgid_trampoline_addr(SB)/8, $libc_getpgid_trampoline<>(SB) -+ -+TEXT libc_getpgrp_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getpgrp(SB) -+ -+GLOBL ·libc_getpgrp_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getpgrp_trampoline_addr(SB)/8, $libc_getpgrp_trampoline<>(SB) -+ -+TEXT libc_getpid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getpid(SB) -+ -+GLOBL ·libc_getpid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getpid_trampoline_addr(SB)/8, $libc_getpid_trampoline<>(SB) -+ -+TEXT libc_getppid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getppid(SB) -+ -+GLOBL ·libc_getppid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getppid_trampoline_addr(SB)/8, $libc_getppid_trampoline<>(SB) -+ -+TEXT libc_getpriority_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getpriority(SB) -+ -+GLOBL ·libc_getpriority_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getpriority_trampoline_addr(SB)/8, $libc_getpriority_trampoline<>(SB) -+ -+TEXT libc_getrlimit_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getrlimit(SB) -+ -+GLOBL ·libc_getrlimit_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getrlimit_trampoline_addr(SB)/8, $libc_getrlimit_trampoline<>(SB) -+ -+TEXT libc_getrtable_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getrtable(SB) -+ -+GLOBL ·libc_getrtable_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getrtable_trampoline_addr(SB)/8, $libc_getrtable_trampoline<>(SB) -+ -+TEXT libc_getrusage_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getrusage(SB) -+ -+GLOBL ·libc_getrusage_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getrusage_trampoline_addr(SB)/8, $libc_getrusage_trampoline<>(SB) -+ -+TEXT libc_getsid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getsid(SB) -+ -+GLOBL ·libc_getsid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getsid_trampoline_addr(SB)/8, $libc_getsid_trampoline<>(SB) -+ -+TEXT libc_gettimeofday_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_gettimeofday(SB) -+ -+GLOBL ·libc_gettimeofday_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_gettimeofday_trampoline_addr(SB)/8, $libc_gettimeofday_trampoline<>(SB) -+ -+TEXT libc_getuid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_getuid(SB) -+ -+GLOBL ·libc_getuid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_getuid_trampoline_addr(SB)/8, $libc_getuid_trampoline<>(SB) -+ -+TEXT libc_issetugid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_issetugid(SB) -+ -+GLOBL ·libc_issetugid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_issetugid_trampoline_addr(SB)/8, $libc_issetugid_trampoline<>(SB) -+ -+TEXT libc_kill_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_kill(SB) -+ -+GLOBL ·libc_kill_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_kill_trampoline_addr(SB)/8, $libc_kill_trampoline<>(SB) -+ -+TEXT libc_kqueue_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_kqueue(SB) -+ -+GLOBL ·libc_kqueue_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_kqueue_trampoline_addr(SB)/8, $libc_kqueue_trampoline<>(SB) -+ -+TEXT libc_lchown_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_lchown(SB) -+ -+GLOBL ·libc_lchown_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_lchown_trampoline_addr(SB)/8, $libc_lchown_trampoline<>(SB) -+ -+TEXT libc_link_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_link(SB) -+ -+GLOBL ·libc_link_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_link_trampoline_addr(SB)/8, $libc_link_trampoline<>(SB) -+ -+TEXT libc_linkat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_linkat(SB) -+ -+GLOBL ·libc_linkat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_linkat_trampoline_addr(SB)/8, $libc_linkat_trampoline<>(SB) -+ -+TEXT libc_listen_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_listen(SB) -+ -+GLOBL ·libc_listen_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_listen_trampoline_addr(SB)/8, $libc_listen_trampoline<>(SB) -+ -+TEXT libc_lstat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_lstat(SB) -+ -+GLOBL ·libc_lstat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_lstat_trampoline_addr(SB)/8, $libc_lstat_trampoline<>(SB) -+ -+TEXT libc_mkdir_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mkdir(SB) -+ -+GLOBL ·libc_mkdir_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mkdir_trampoline_addr(SB)/8, $libc_mkdir_trampoline<>(SB) -+ -+TEXT libc_mkdirat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mkdirat(SB) -+ -+GLOBL ·libc_mkdirat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mkdirat_trampoline_addr(SB)/8, $libc_mkdirat_trampoline<>(SB) -+ -+TEXT libc_mkfifo_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mkfifo(SB) -+ -+GLOBL ·libc_mkfifo_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mkfifo_trampoline_addr(SB)/8, $libc_mkfifo_trampoline<>(SB) -+ -+TEXT libc_mkfifoat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mkfifoat(SB) -+ -+GLOBL ·libc_mkfifoat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mkfifoat_trampoline_addr(SB)/8, $libc_mkfifoat_trampoline<>(SB) -+ -+TEXT libc_mknod_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mknod(SB) -+ -+GLOBL ·libc_mknod_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mknod_trampoline_addr(SB)/8, $libc_mknod_trampoline<>(SB) -+ -+TEXT libc_mknodat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mknodat(SB) -+ -+GLOBL ·libc_mknodat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mknodat_trampoline_addr(SB)/8, $libc_mknodat_trampoline<>(SB) -+ -+TEXT libc_nanosleep_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_nanosleep(SB) -+ -+GLOBL ·libc_nanosleep_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_nanosleep_trampoline_addr(SB)/8, $libc_nanosleep_trampoline<>(SB) -+ -+TEXT libc_open_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_open(SB) -+ -+GLOBL ·libc_open_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_open_trampoline_addr(SB)/8, $libc_open_trampoline<>(SB) -+ -+TEXT libc_openat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_openat(SB) -+ -+GLOBL ·libc_openat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_openat_trampoline_addr(SB)/8, $libc_openat_trampoline<>(SB) -+ -+TEXT libc_pathconf_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_pathconf(SB) -+ -+GLOBL ·libc_pathconf_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_pathconf_trampoline_addr(SB)/8, $libc_pathconf_trampoline<>(SB) -+ -+TEXT libc_pread_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_pread(SB) -+ -+GLOBL ·libc_pread_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_pread_trampoline_addr(SB)/8, $libc_pread_trampoline<>(SB) -+ -+TEXT libc_pwrite_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_pwrite(SB) -+ -+GLOBL ·libc_pwrite_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_pwrite_trampoline_addr(SB)/8, $libc_pwrite_trampoline<>(SB) -+ -+TEXT libc_read_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_read(SB) -+ -+GLOBL ·libc_read_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_read_trampoline_addr(SB)/8, $libc_read_trampoline<>(SB) -+ -+TEXT libc_readlink_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_readlink(SB) -+ -+GLOBL ·libc_readlink_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_readlink_trampoline_addr(SB)/8, $libc_readlink_trampoline<>(SB) -+ -+TEXT libc_readlinkat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_readlinkat(SB) -+ -+GLOBL ·libc_readlinkat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_readlinkat_trampoline_addr(SB)/8, $libc_readlinkat_trampoline<>(SB) -+ -+TEXT libc_rename_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_rename(SB) -+ -+GLOBL ·libc_rename_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_rename_trampoline_addr(SB)/8, $libc_rename_trampoline<>(SB) -+ -+TEXT libc_renameat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_renameat(SB) -+ -+GLOBL ·libc_renameat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_renameat_trampoline_addr(SB)/8, $libc_renameat_trampoline<>(SB) -+ -+TEXT libc_revoke_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_revoke(SB) -+ -+GLOBL ·libc_revoke_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_revoke_trampoline_addr(SB)/8, $libc_revoke_trampoline<>(SB) -+ -+TEXT libc_rmdir_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_rmdir(SB) -+ -+GLOBL ·libc_rmdir_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_rmdir_trampoline_addr(SB)/8, $libc_rmdir_trampoline<>(SB) -+ -+TEXT libc_lseek_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_lseek(SB) -+ -+GLOBL ·libc_lseek_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_lseek_trampoline_addr(SB)/8, $libc_lseek_trampoline<>(SB) -+ -+TEXT libc_select_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_select(SB) -+ -+GLOBL ·libc_select_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_select_trampoline_addr(SB)/8, $libc_select_trampoline<>(SB) -+ -+TEXT libc_setegid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setegid(SB) -+ -+GLOBL ·libc_setegid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setegid_trampoline_addr(SB)/8, $libc_setegid_trampoline<>(SB) -+ -+TEXT libc_seteuid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_seteuid(SB) -+ -+GLOBL ·libc_seteuid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_seteuid_trampoline_addr(SB)/8, $libc_seteuid_trampoline<>(SB) -+ -+TEXT libc_setgid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setgid(SB) -+ -+GLOBL ·libc_setgid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setgid_trampoline_addr(SB)/8, $libc_setgid_trampoline<>(SB) -+ -+TEXT libc_setlogin_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setlogin(SB) -+ -+GLOBL ·libc_setlogin_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setlogin_trampoline_addr(SB)/8, $libc_setlogin_trampoline<>(SB) -+ -+TEXT libc_setpgid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setpgid(SB) -+ -+GLOBL ·libc_setpgid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setpgid_trampoline_addr(SB)/8, $libc_setpgid_trampoline<>(SB) -+ -+TEXT libc_setpriority_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setpriority(SB) -+ -+GLOBL ·libc_setpriority_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setpriority_trampoline_addr(SB)/8, $libc_setpriority_trampoline<>(SB) -+ -+TEXT libc_setregid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setregid(SB) -+ -+GLOBL ·libc_setregid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setregid_trampoline_addr(SB)/8, $libc_setregid_trampoline<>(SB) -+ -+TEXT libc_setreuid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setreuid(SB) -+ -+GLOBL ·libc_setreuid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setreuid_trampoline_addr(SB)/8, $libc_setreuid_trampoline<>(SB) -+ -+TEXT libc_setresgid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setresgid(SB) -+ -+GLOBL ·libc_setresgid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setresgid_trampoline_addr(SB)/8, $libc_setresgid_trampoline<>(SB) -+ -+TEXT libc_setresuid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setresuid(SB) -+ -+GLOBL ·libc_setresuid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setresuid_trampoline_addr(SB)/8, $libc_setresuid_trampoline<>(SB) -+ -+TEXT libc_setrlimit_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setrlimit(SB) -+ -+GLOBL ·libc_setrlimit_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setrlimit_trampoline_addr(SB)/8, $libc_setrlimit_trampoline<>(SB) -+ -+TEXT libc_setrtable_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setrtable(SB) -+ -+GLOBL ·libc_setrtable_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setrtable_trampoline_addr(SB)/8, $libc_setrtable_trampoline<>(SB) -+ -+TEXT libc_setsid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setsid(SB) -+ -+GLOBL ·libc_setsid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setsid_trampoline_addr(SB)/8, $libc_setsid_trampoline<>(SB) -+ -+TEXT libc_settimeofday_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_settimeofday(SB) -+ -+GLOBL ·libc_settimeofday_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_settimeofday_trampoline_addr(SB)/8, $libc_settimeofday_trampoline<>(SB) -+ -+TEXT libc_setuid_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_setuid(SB) -+ -+GLOBL ·libc_setuid_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_setuid_trampoline_addr(SB)/8, $libc_setuid_trampoline<>(SB) -+ -+TEXT libc_stat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_stat(SB) -+ -+GLOBL ·libc_stat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_stat_trampoline_addr(SB)/8, $libc_stat_trampoline<>(SB) -+ -+TEXT libc_statfs_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_statfs(SB) -+ -+GLOBL ·libc_statfs_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_statfs_trampoline_addr(SB)/8, $libc_statfs_trampoline<>(SB) -+ -+TEXT libc_symlink_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_symlink(SB) -+ -+GLOBL ·libc_symlink_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_symlink_trampoline_addr(SB)/8, $libc_symlink_trampoline<>(SB) -+ -+TEXT libc_symlinkat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_symlinkat(SB) -+ -+GLOBL ·libc_symlinkat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_symlinkat_trampoline_addr(SB)/8, $libc_symlinkat_trampoline<>(SB) -+ -+TEXT libc_sync_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_sync(SB) -+ -+GLOBL ·libc_sync_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_sync_trampoline_addr(SB)/8, $libc_sync_trampoline<>(SB) -+ -+TEXT libc_truncate_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_truncate(SB) -+ -+GLOBL ·libc_truncate_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_truncate_trampoline_addr(SB)/8, $libc_truncate_trampoline<>(SB) -+ -+TEXT libc_umask_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_umask(SB) -+ -+GLOBL ·libc_umask_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_umask_trampoline_addr(SB)/8, $libc_umask_trampoline<>(SB) -+ -+TEXT libc_unlink_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_unlink(SB) -+ -+GLOBL ·libc_unlink_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_unlink_trampoline_addr(SB)/8, $libc_unlink_trampoline<>(SB) -+ -+TEXT libc_unlinkat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_unlinkat(SB) -+ -+GLOBL ·libc_unlinkat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_unlinkat_trampoline_addr(SB)/8, $libc_unlinkat_trampoline<>(SB) -+ -+TEXT libc_unmount_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_unmount(SB) -+ -+GLOBL ·libc_unmount_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_unmount_trampoline_addr(SB)/8, $libc_unmount_trampoline<>(SB) -+ -+TEXT libc_write_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_write(SB) -+ -+GLOBL ·libc_write_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_write_trampoline_addr(SB)/8, $libc_write_trampoline<>(SB) -+ -+TEXT libc_mmap_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_mmap(SB) -+ -+GLOBL ·libc_mmap_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_mmap_trampoline_addr(SB)/8, $libc_mmap_trampoline<>(SB) -+ -+TEXT libc_munmap_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_munmap(SB) -+ -+GLOBL ·libc_munmap_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_munmap_trampoline_addr(SB)/8, $libc_munmap_trampoline<>(SB) -+ -+TEXT libc_utimensat_trampoline<>(SB),NOSPLIT,$0-0 -+ JMP libc_utimensat(SB) -+ -+GLOBL ·libc_utimensat_trampoline_addr(SB), RODATA, $8 -+DATA ·libc_utimensat_trampoline_addr(SB)/8, $libc_utimensat_trampoline<>(SB) -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_11.go b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_mips64.go -similarity index 85% -rename from vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_11.go -rename to vendor/golang.org/x/sys/unix/zsyscall_openbsd_mips64.go -index 8c3bb3a..016d959 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.1_11.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_openbsd_mips64.go -@@ -1,7 +1,8 @@ --// go run mksyscall.go -tags darwin,arm64,!go1.12 syscall_bsd.go syscall_darwin.go syscall_darwin_arm64.1_11.go syscall_darwin_arm64.go -+// go run mksyscall.go -openbsd -tags openbsd,mips64 syscall_bsd.go syscall_openbsd.go syscall_openbsd_mips64.go - // Code generated by the command above; see README.md. DO NOT EDIT. - --// +build darwin,arm64,!go1.12 -+//go:build openbsd && mips64 -+// +build openbsd,mips64 - - package unix - -@@ -350,8 +351,8 @@ func Munlockall() (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) { -- _, _, e1 := Syscall6(SYS_GETATTRLIST, uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0) -+func pipe2(p *[2]_C_int, flags int) (err error) { -+ _, _, e1 := RawSyscall(SYS_PIPE2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -360,154 +361,15 @@ func getattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintp - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func pipe() (r int, w int, err error) { -- r0, r1, e1 := RawSyscall(SYS_PIPE, 0, 0, 0) -- r = int(r0) -- w = int(r1) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getxattr(path string, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- r0, _, e1 := Syscall6(SYS_GETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) -- sz = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func fgetxattr(fd int, attr string, dest *byte, size int, position uint32, options int) (sz int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- r0, _, e1 := Syscall6(SYS_FGETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(position), uintptr(options)) -- sz = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func setxattr(path string, attr string, data *byte, size int, position uint32, options int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_SETXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func fsetxattr(fd int, attr string, data *byte, size int, position uint32, options int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- _, _, e1 := Syscall6(SYS_FSETXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(data)), uintptr(size), uintptr(position), uintptr(options)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func removexattr(path string, attr string, options int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_REMOVEXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func fremovexattr(fd int, attr string, options int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(attr) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_FREMOVEXATTR, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(options)) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func listxattr(path string, dest *byte, size int, options int) (sz int, err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- r0, _, e1 := Syscall6(SYS_LISTXATTR, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) -- sz = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func flistxattr(fd int, dest *byte, size int, options int) (sz int, err error) { -- r0, _, e1 := Syscall6(SYS_FLISTXATTR, uintptr(fd), uintptr(unsafe.Pointer(dest)), uintptr(size), uintptr(options), 0, 0) -- sz = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -+func Getdents(fd int, buf []byte) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(buf) > 0 { -+ _p0 = unsafe.Pointer(&buf[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) - } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintptr, options int) (err error) { -- _, _, e1 := Syscall6(SYS_SETATTRLIST, uintptr(unsafe.Pointer(path)), uintptr(list), uintptr(buf), uintptr(size), uintptr(options), 0) -+ r0, _, e1 := Syscall(SYS_GETDENTS, uintptr(fd), uintptr(_p0), uintptr(len(buf))) -+ n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -516,19 +378,15 @@ func setattrlist(path *byte, list unsafe.Pointer, buf unsafe.Pointer, size uintp - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func fcntl(fd int, cmd int, arg int) (val int, err error) { -- r0, _, e1 := Syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg)) -- val = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -+func Getcwd(buf []byte) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(buf) > 0 { -+ _p0 = unsafe.Pointer(&buf[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) - } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func kill(pid int, signum int, posix int) (err error) { -- _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), uintptr(posix)) -+ r0, _, e1 := Syscall(SYS___GETCWD, uintptr(_p0), uintptr(len(buf)), 0) -+ n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -554,7 +412,7 @@ func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) - } else { - _p0 = unsafe.Pointer(&_zero) - } -- _, _, e1 := Syscall6(SYS_SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) -+ _, _, e1 := Syscall6(SYS___SYSCTL, uintptr(_p0), uintptr(len(mib)), uintptr(unsafe.Pointer(old)), uintptr(unsafe.Pointer(oldlen)), uintptr(unsafe.Pointer(new)), uintptr(newlen)) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -563,8 +421,9 @@ func sysctl(mib []_C_int, old *byte, oldlen *uintptr, new *byte, newlen uintptr) - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func sendfile(infd int, outfd int, offset int64, len *int64, hdtr unsafe.Pointer, flags int) (err error) { -- _, _, e1 := Syscall6(SYS_SENDFILE, uintptr(infd), uintptr(outfd), uintptr(offset), uintptr(unsafe.Pointer(len)), uintptr(hdtr), uintptr(flags)) -+func ppoll(fds *PollFd, nfds int, timeout *Timespec, sigmask *Sigset_t) (n int, err error) { -+ r0, _, e1 := Syscall6(SYS_PPOLL, uintptr(unsafe.Pointer(fds)), uintptr(nfds), uintptr(unsafe.Pointer(timeout)), uintptr(unsafe.Pointer(sigmask)), 0, 0) -+ n = int(r0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -704,18 +563,8 @@ func Dup2(from int, to int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Exchangedata(path1 string, path2 string, options int) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path1) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = BytePtrFromString(path2) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_EXCHANGEDATA, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(options)) -+func Dup3(from int, to int, flags int) (err error) { -+ _, _, e1 := Syscall(SYS_DUP3, uintptr(from), uintptr(to), uintptr(flags)) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -837,8 +686,8 @@ func Fpathconf(fd int, name int) (val int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Fsync(fd int) (err error) { -- _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0) -+func Fstat(fd int, stat *Stat_t) (err error) { -+ _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -847,8 +696,13 @@ func Fsync(fd int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Ftruncate(fd int, length int64) (err error) { -- _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), uintptr(length), 0) -+func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -857,9 +711,31 @@ func Ftruncate(fd int, length int64) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Getdtablesize() (size int) { -- r0, _, _ := Syscall(SYS_GETDTABLESIZE, 0, 0, 0) -- size = int(r0) -+func Fstatfs(fd int, stat *Statfs_t) (err error) { -+ _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fsync(fd int) (err error) { -+ _, _, e1 := Syscall(SYS_FSYNC, uintptr(fd), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Ftruncate(fd int, length int64) (err error) { -+ _, _, e1 := Syscall(SYS_FTRUNCATE, uintptr(fd), 0, uintptr(length)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } - return - } - -@@ -945,6 +821,17 @@ func Getrlimit(which int, lim *Rlimit) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func Getrtable() (rtable int, err error) { -+ r0, _, e1 := RawSyscall(SYS_GETRTABLE, 0, 0, 0) -+ rtable = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Getrusage(who int, rusage *Rusage) (err error) { - _, _, e1 := RawSyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0) - if e1 != 0 { -@@ -966,6 +853,16 @@ func Getsid(pid int) (sid int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func Gettimeofday(tv *Timeval) (err error) { -+ _, _, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Getuid() (uid int) { - r0, _, _ := RawSyscall(SYS_GETUID, 0, 0, 0) - uid = int(r0) -@@ -975,13 +872,23 @@ func Getuid() (uid int) { - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Issetugid() (tainted bool) { -- r0, _, _ := RawSyscall(SYS_ISSETUGID, 0, 0, 0) -+ r0, _, _ := Syscall(SYS_ISSETUGID, 0, 0, 0) - tainted = bool(r0 != 0) - return - } - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func Kill(pid int, signum syscall.Signal) (err error) { -+ _, _, e1 := Syscall(SYS_KILL, uintptr(pid), uintptr(signum), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Kqueue() (fd int, err error) { - r0, _, e1 := Syscall(SYS_KQUEUE, 0, 0, 0) - fd = int(r0) -@@ -1058,6 +965,21 @@ func Listen(s int, backlog int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func Lstat(path string, stat *Stat_t) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_LSTAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Mkdir(path string, mode uint32) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) -@@ -1103,6 +1025,21 @@ func Mkfifo(path string, mode uint32) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func Mkfifoat(dirfd int, path string, mode uint32) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_MKFIFOAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Mknod(path string, mode uint32, dev int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) -@@ -1118,6 +1055,31 @@ func Mknod(path string, mode uint32, dev int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func Mknodat(dirfd int, path string, mode uint32, dev int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall6(SYS_MKNODAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Nanosleep(time *Timespec, leftover *Timespec) (err error) { -+ _, _, e1 := Syscall(SYS_NANOSLEEP, uintptr(unsafe.Pointer(time)), uintptr(unsafe.Pointer(leftover)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Open(path string, mode int, perm uint32) (fd int, err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) -@@ -1166,14 +1128,14 @@ func Pathconf(path string, name int) (val int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall6(SYS_PREAD, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) -+ r0, _, e1 := Syscall6(SYS_PREAD, uintptr(fd), uintptr(_p0), uintptr(len(p)), 0, uintptr(offset), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1183,14 +1145,14 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 unsafe.Pointer - if len(p) > 0 { - _p0 = unsafe.Pointer(&p[0]) - } else { - _p0 = unsafe.Pointer(&_zero) - } -- r0, _, e1 := Syscall6(SYS_PWRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) -+ r0, _, e1 := Syscall6(SYS_PWRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)), 0, uintptr(offset), 0) - n = int(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1332,7 +1294,7 @@ func Rmdir(path string) (err error) { - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Seek(fd int, offset int64, whence int) (newoffset int64, err error) { -- r0, _, e1 := Syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence)) -+ r0, _, e1 := Syscall6(SYS_LSEEK, uintptr(fd), 0, uintptr(offset), uintptr(whence), 0, 0) - newoffset = int64(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1354,7 +1316,7 @@ func Select(nfd int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (n int, err - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func Setegid(egid int) (err error) { -- _, _, e1 := Syscall(SYS_SETEGID, uintptr(egid), 0, 0) -+ _, _, e1 := RawSyscall(SYS_SETEGID, uintptr(egid), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -1418,8 +1380,8 @@ func Setpriority(which int, who int, prio int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setprivexec(flag int) (err error) { -- _, _, e1 := Syscall(SYS_SETPRIVEXEC, uintptr(flag), 0, 0) -+func Setregid(rgid int, egid int) (err error) { -+ _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -1428,8 +1390,8 @@ func Setprivexec(flag int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setregid(rgid int, egid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0) -+func Setreuid(ruid int, euid int) (err error) { -+ _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -1438,8 +1400,18 @@ func Setregid(rgid int, egid int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Setreuid(ruid int, euid int) (err error) { -- _, _, e1 := RawSyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0) -+func Setresgid(rgid int, egid int, sgid int) (err error) { -+ _, _, e1 := RawSyscall(SYS_SETRESGID, uintptr(rgid), uintptr(egid), uintptr(sgid)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Setresuid(ruid int, euid int, suid int) (err error) { -+ _, _, e1 := RawSyscall(SYS_SETRESUID, uintptr(ruid), uintptr(euid), uintptr(suid)) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -1458,6 +1430,16 @@ func Setrlimit(which int, lim *Rlimit) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func Setrtable(rtable int) (err error) { -+ _, _, e1 := RawSyscall(SYS_SETRTABLE, uintptr(rtable), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Setsid() (pid int, err error) { - r0, _, e1 := RawSyscall(SYS_SETSID, 0, 0, 0) - pid = int(r0) -@@ -1489,6 +1471,36 @@ func Setuid(uid int) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func Stat(path string, stat *Stat_t) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_STAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Statfs(path string, stat *Statfs_t) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := Syscall(SYS_STATFS, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Symlink(path string, link string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) -@@ -1545,7 +1557,7 @@ func Truncate(path string, length int64) (err error) { - if err != nil { - return - } -- _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0) -+ _, _, e1 := Syscall(SYS_TRUNCATE, uintptr(unsafe.Pointer(_p0)), 0, uintptr(length)) - if e1 != 0 { - err = errnoErr(e1) - } -@@ -1562,21 +1574,6 @@ func Umask(newmask int) (oldmask int) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Undelete(path string) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_UNDELETE, uintptr(unsafe.Pointer(_p0)), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- - func Unlink(path string) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) -@@ -1640,7 +1637,7 @@ func write(fd int, p []byte) (n int, err error) { - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - - func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) { -- r0, _, e1 := Syscall6(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos)) -+ r0, _, e1 := Syscall9(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), 0, uintptr(pos), 0, 0) - ret = uintptr(r0) - if e1 != 0 { - err = errnoErr(e1) -@@ -1682,101 +1679,13 @@ func writelen(fd int, buf *byte, nbuf int) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func gettimeofday(tp *Timeval) (sec int64, usec int32, err error) { -- r0, r1, e1 := RawSyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tp)), 0, 0) -- sec = int64(r0) -- usec = int32(r1) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fstat(fd int, stat *Stat_t) (err error) { -- _, _, e1 := Syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fstatat(fd int, path string, stat *Stat_t, flags int) (err error) { -+func utimensat(dirfd int, path string, times *[2]Timespec, flags int) (err error) { - var _p0 *byte - _p0, err = BytePtrFromString(path) - if err != nil { - return - } -- _, _, e1 := Syscall6(SYS_FSTATAT, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), uintptr(flags), 0, 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Fstatfs(fd int, stat *Statfs_t) (err error) { -- _, _, e1 := Syscall(SYS_FSTATFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func getfsstat(buf unsafe.Pointer, size uintptr, flags int) (n int, err error) { -- r0, _, e1 := Syscall(SYS_GETFSSTAT, uintptr(buf), uintptr(size), uintptr(flags)) -- n = int(r0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Lstat(path string, stat *Stat_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_LSTAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Stat(path string, stat *Stat_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_STAT, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -- if e1 != 0 { -- err = errnoErr(e1) -- } -- return --} -- --// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -- --func Statfs(path string, stat *Statfs_t) (err error) { -- var _p0 *byte -- _p0, err = BytePtrFromString(path) -- if err != nil { -- return -- } -- _, _, e1 := Syscall(SYS_STATFS, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+ _, _, e1 := Syscall6(SYS_UTIMENSAT, uintptr(dirfd), uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(times)), uintptr(flags), 0, 0) - if e1 != 0 { - err = errnoErr(e1) - } -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go b/vendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go -index a96165d..fdf53f8 100644 ---- a/vendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go -+++ b/vendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go -@@ -1,6 +1,7 @@ - // go run mksyscall_solaris.go -tags solaris,amd64 syscall_solaris.go syscall_solaris_amd64.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build solaris && amd64 - // +build solaris,amd64 - - package unix -@@ -11,6 +12,7 @@ import ( - ) - - //go:cgo_import_dynamic libc_pipe pipe "libc.so" -+//go:cgo_import_dynamic libc_pipe2 pipe2 "libc.so" - //go:cgo_import_dynamic libc_getsockname getsockname "libsocket.so" - //go:cgo_import_dynamic libc_getcwd getcwd "libc.so" - //go:cgo_import_dynamic libc_getgroups getgroups "libc.so" -@@ -64,6 +66,7 @@ import ( - //go:cgo_import_dynamic libc_getpriority getpriority "libc.so" - //go:cgo_import_dynamic libc_getrlimit getrlimit "libc.so" - //go:cgo_import_dynamic libc_getrusage getrusage "libc.so" -+//go:cgo_import_dynamic libc_getsid getsid "libc.so" - //go:cgo_import_dynamic libc_gettimeofday gettimeofday "libc.so" - //go:cgo_import_dynamic libc_getuid getuid "libc.so" - //go:cgo_import_dynamic libc_kill kill "libc.so" -@@ -114,6 +117,7 @@ import ( - //go:cgo_import_dynamic libc_statvfs statvfs "libc.so" - //go:cgo_import_dynamic libc_symlink symlink "libc.so" - //go:cgo_import_dynamic libc_sync sync "libc.so" -+//go:cgo_import_dynamic libc_sysconf sysconf "libc.so" - //go:cgo_import_dynamic libc_times times "libc.so" - //go:cgo_import_dynamic libc_truncate truncate "libc.so" - //go:cgo_import_dynamic libc_fsync fsync "libc.so" -@@ -138,8 +142,14 @@ import ( - //go:cgo_import_dynamic libc_getpeername getpeername "libsocket.so" - //go:cgo_import_dynamic libc_setsockopt setsockopt "libsocket.so" - //go:cgo_import_dynamic libc_recvfrom recvfrom "libsocket.so" -+//go:cgo_import_dynamic libc_port_create port_create "libc.so" -+//go:cgo_import_dynamic libc_port_associate port_associate "libc.so" -+//go:cgo_import_dynamic libc_port_dissociate port_dissociate "libc.so" -+//go:cgo_import_dynamic libc_port_get port_get "libc.so" -+//go:cgo_import_dynamic libc_port_getn port_getn "libc.so" - - //go:linkname procpipe libc_pipe -+//go:linkname procpipe2 libc_pipe2 - //go:linkname procgetsockname libc_getsockname - //go:linkname procGetcwd libc_getcwd - //go:linkname procgetgroups libc_getgroups -@@ -193,6 +203,7 @@ import ( - //go:linkname procGetpriority libc_getpriority - //go:linkname procGetrlimit libc_getrlimit - //go:linkname procGetrusage libc_getrusage -+//go:linkname procGetsid libc_getsid - //go:linkname procGettimeofday libc_gettimeofday - //go:linkname procGetuid libc_getuid - //go:linkname procKill libc_kill -@@ -218,8 +229,8 @@ import ( - //go:linkname procOpenat libc_openat - //go:linkname procPathconf libc_pathconf - //go:linkname procPause libc_pause --//go:linkname procPread libc_pread --//go:linkname procPwrite libc_pwrite -+//go:linkname procpread libc_pread -+//go:linkname procpwrite libc_pwrite - //go:linkname procread libc_read - //go:linkname procReadlink libc_readlink - //go:linkname procRename libc_rename -@@ -243,6 +254,7 @@ import ( - //go:linkname procStatvfs libc_statvfs - //go:linkname procSymlink libc_symlink - //go:linkname procSync libc_sync -+//go:linkname procSysconf libc_sysconf - //go:linkname procTimes libc_times - //go:linkname procTruncate libc_truncate - //go:linkname procFsync libc_fsync -@@ -267,9 +279,15 @@ import ( - //go:linkname procgetpeername libc_getpeername - //go:linkname procsetsockopt libc_setsockopt - //go:linkname procrecvfrom libc_recvfrom -+//go:linkname procport_create libc_port_create -+//go:linkname procport_associate libc_port_associate -+//go:linkname procport_dissociate libc_port_dissociate -+//go:linkname procport_get libc_port_get -+//go:linkname procport_getn libc_port_getn - - var ( - procpipe, -+ procpipe2, - procgetsockname, - procGetcwd, - procgetgroups, -@@ -323,6 +341,7 @@ var ( - procGetpriority, - procGetrlimit, - procGetrusage, -+ procGetsid, - procGettimeofday, - procGetuid, - procKill, -@@ -348,8 +367,8 @@ var ( - procOpenat, - procPathconf, - procPause, -- procPread, -- procPwrite, -+ procpread, -+ procpwrite, - procread, - procReadlink, - procRename, -@@ -373,6 +392,7 @@ var ( - procStatvfs, - procSymlink, - procSync, -+ procSysconf, - procTimes, - procTruncate, - procFsync, -@@ -396,7 +416,12 @@ var ( - proc__xnet_getsockopt, - procgetpeername, - procsetsockopt, -- procrecvfrom syscallFunc -+ procrecvfrom, -+ procport_create, -+ procport_associate, -+ procport_dissociate, -+ procport_get, -+ procport_getn syscallFunc - ) - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -@@ -412,6 +437,16 @@ func pipe(p *[2]_C_int) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func pipe2(p *[2]_C_int, flags int) (err error) { -+ _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procpipe2)), 2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0, 0, 0, 0) -+ if e1 != 0 { -+ err = e1 -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { - _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procgetsockname)), 3, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), 0, 0, 0) - if e1 != 0 { -@@ -602,8 +637,9 @@ func __minor(version int, dev uint64) (val uint) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func ioctl(fd int, req uint, arg uintptr) (err error) { -- _, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procioctl)), 3, uintptr(fd), uintptr(req), uintptr(arg), 0, 0, 0) -+func ioctlRet(fd int, req uint, arg uintptr) (ret int, err error) { -+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procioctl)), 3, uintptr(fd), uintptr(req), uintptr(arg), 0, 0, 0) -+ ret = int(r0) - if e1 != 0 { - err = e1 - } -@@ -1011,6 +1047,17 @@ func Getrusage(who int, rusage *Rusage) (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func Getsid(pid int) (sid int, err error) { -+ r0, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procGetsid)), 1, uintptr(pid), 0, 0, 0, 0, 0) -+ sid = int(r0) -+ if e1 != 0 { -+ err = e1 -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Gettimeofday(tv *Timeval) (err error) { - _, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procGettimeofday)), 1, uintptr(unsafe.Pointer(tv)), 0, 0, 0, 0, 0) - if e1 != 0 { -@@ -1347,12 +1394,12 @@ func Pause() (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pread(fd int, p []byte, offset int64) (n int, err error) { -+func pread(fd int, p []byte, offset int64) (n int, err error) { - var _p0 *byte - if len(p) > 0 { - _p0 = &p[0] - } -- r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procPread)), 4, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(len(p)), uintptr(offset), 0, 0) -+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procpread)), 4, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(len(p)), uintptr(offset), 0, 0) - n = int(r0) - if e1 != 0 { - err = e1 -@@ -1362,12 +1409,12 @@ func Pread(fd int, p []byte, offset int64) (n int, err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - --func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+func pwrite(fd int, p []byte, offset int64) (n int, err error) { - var _p0 *byte - if len(p) > 0 { - _p0 = &p[0] - } -- r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procPwrite)), 4, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(len(p)), uintptr(offset), 0, 0) -+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procpwrite)), 4, uintptr(fd), uintptr(unsafe.Pointer(_p0)), uintptr(len(p)), uintptr(offset), 0, 0) - n = int(r0) - if e1 != 0 { - err = e1 -@@ -1674,6 +1721,17 @@ func Sync() (err error) { - - // THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT - -+func Sysconf(which int) (n int64, err error) { -+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procSysconf)), 1, uintptr(which), 0, 0, 0, 0, 0) -+ n = int64(r0) -+ if e1 != 0 { -+ err = e1 -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ - func Times(tms *Tms) (ticks uintptr, err error) { - r0, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procTimes)), 1, uintptr(unsafe.Pointer(tms)), 0, 0, 0, 0, 0) - ticks = uintptr(r0) -@@ -1952,3 +2010,58 @@ func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Sockl - } - return - } -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func port_create() (n int, err error) { -+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procport_create)), 0, 0, 0, 0, 0, 0, 0) -+ n = int(r0) -+ if e1 != 0 { -+ err = e1 -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func port_associate(port int, source int, object uintptr, events int, user *byte) (n int, err error) { -+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procport_associate)), 5, uintptr(port), uintptr(source), uintptr(object), uintptr(events), uintptr(unsafe.Pointer(user)), 0) -+ n = int(r0) -+ if e1 != 0 { -+ err = e1 -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func port_dissociate(port int, source int, object uintptr) (n int, err error) { -+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procport_dissociate)), 3, uintptr(port), uintptr(source), uintptr(object), 0, 0, 0) -+ n = int(r0) -+ if e1 != 0 { -+ err = e1 -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func port_get(port int, pe *portEvent, timeout *Timespec) (n int, err error) { -+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procport_get)), 3, uintptr(port), uintptr(unsafe.Pointer(pe)), uintptr(unsafe.Pointer(timeout)), 0, 0, 0) -+ n = int(r0) -+ if e1 != 0 { -+ err = e1 -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func port_getn(port int, pe *portEvent, max uint32, nget *uint32, timeout *Timespec) (n int, err error) { -+ r0, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procport_getn)), 5, uintptr(port), uintptr(unsafe.Pointer(pe)), uintptr(max), uintptr(unsafe.Pointer(nget)), uintptr(unsafe.Pointer(timeout)), 0) -+ n = int(r0) -+ if e1 != 0 { -+ err = e1 -+ } -+ return -+} -diff --git a/vendor/golang.org/x/sys/unix/zsyscall_zos_s390x.go b/vendor/golang.org/x/sys/unix/zsyscall_zos_s390x.go -new file mode 100644 -index 0000000..f207945 ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/zsyscall_zos_s390x.go -@@ -0,0 +1,1255 @@ -+// go run mksyscall.go -tags zos,s390x syscall_zos_s390x.go -+// Code generated by the command above; see README.md. DO NOT EDIT. -+ -+//go:build zos && s390x -+// +build zos,s390x -+ -+package unix -+ -+import ( -+ "unsafe" -+) -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func fcntl(fd int, cmd int, arg int) (val int, err error) { -+ r0, _, e1 := syscall_syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg)) -+ val = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func read(fd int, p []byte) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(p) > 0 { -+ _p0 = unsafe.Pointer(&p[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := syscall_syscall(SYS_READ, uintptr(fd), uintptr(_p0), uintptr(len(p))) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func readlen(fd int, buf *byte, nbuf int) (n int, err error) { -+ r0, _, e1 := syscall_syscall(SYS_READ, uintptr(fd), uintptr(unsafe.Pointer(buf)), uintptr(nbuf)) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func write(fd int, p []byte) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(p) > 0 { -+ _p0 = unsafe.Pointer(&p[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := syscall_syscall(SYS_WRITE, uintptr(fd), uintptr(_p0), uintptr(len(p))) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func accept(s int, rsa *RawSockaddrAny, addrlen *_Socklen) (fd int, err error) { -+ r0, _, e1 := syscall_syscall(SYS___ACCEPT_A, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func bind(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -+ _, _, e1 := syscall_syscall(SYS___BIND_A, uintptr(s), uintptr(addr), uintptr(addrlen)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func connect(s int, addr unsafe.Pointer, addrlen _Socklen) (err error) { -+ _, _, e1 := syscall_syscall(SYS___CONNECT_A, uintptr(s), uintptr(addr), uintptr(addrlen)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func getgroups(n int, list *_Gid_t) (nn int, err error) { -+ r0, _, e1 := syscall_rawsyscall(SYS_GETGROUPS, uintptr(n), uintptr(unsafe.Pointer(list)), 0) -+ nn = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func setgroups(n int, list *_Gid_t) (err error) { -+ _, _, e1 := syscall_rawsyscall(SYS_SETGROUPS, uintptr(n), uintptr(unsafe.Pointer(list)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func getsockopt(s int, level int, name int, val unsafe.Pointer, vallen *_Socklen) (err error) { -+ _, _, e1 := syscall_syscall6(SYS_GETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(unsafe.Pointer(vallen)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func setsockopt(s int, level int, name int, val unsafe.Pointer, vallen uintptr) (err error) { -+ _, _, e1 := syscall_syscall6(SYS_SETSOCKOPT, uintptr(s), uintptr(level), uintptr(name), uintptr(val), uintptr(vallen), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func socket(domain int, typ int, proto int) (fd int, err error) { -+ r0, _, e1 := syscall_rawsyscall(SYS_SOCKET, uintptr(domain), uintptr(typ), uintptr(proto)) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func socketpair(domain int, typ int, proto int, fd *[2]int32) (err error) { -+ _, _, e1 := syscall_rawsyscall6(SYS_SOCKETPAIR, uintptr(domain), uintptr(typ), uintptr(proto), uintptr(unsafe.Pointer(fd)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func getpeername(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -+ _, _, e1 := syscall_rawsyscall(SYS___GETPEERNAME_A, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) { -+ _, _, e1 := syscall_rawsyscall(SYS___GETSOCKNAME_A, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func recvfrom(fd int, p []byte, flags int, from *RawSockaddrAny, fromlen *_Socklen) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(p) > 0 { -+ _p0 = unsafe.Pointer(&p[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := syscall_syscall6(SYS___RECVFROM_A, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func sendto(s int, buf []byte, flags int, to unsafe.Pointer, addrlen _Socklen) (err error) { -+ var _p0 unsafe.Pointer -+ if len(buf) > 0 { -+ _p0 = unsafe.Pointer(&buf[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ _, _, e1 := syscall_syscall6(SYS___SENDTO_A, uintptr(s), uintptr(_p0), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(addrlen)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func recvmsg(s int, msg *Msghdr, flags int) (n int, err error) { -+ r0, _, e1 := syscall_syscall(SYS___RECVMSG_A, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func sendmsg(s int, msg *Msghdr, flags int) (n int, err error) { -+ r0, _, e1 := syscall_syscall(SYS___SENDMSG_A, uintptr(s), uintptr(unsafe.Pointer(msg)), uintptr(flags)) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func mmap(addr uintptr, length uintptr, prot int, flag int, fd int, pos int64) (ret uintptr, err error) { -+ r0, _, e1 := syscall_syscall6(SYS_MMAP, uintptr(addr), uintptr(length), uintptr(prot), uintptr(flag), uintptr(fd), uintptr(pos)) -+ ret = uintptr(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func munmap(addr uintptr, length uintptr) (err error) { -+ _, _, e1 := syscall_syscall(SYS_MUNMAP, uintptr(addr), uintptr(length), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func ioctl(fd int, req uint, arg uintptr) (err error) { -+ _, _, e1 := syscall_syscall(SYS_IOCTL, uintptr(fd), uintptr(req), uintptr(arg)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Access(path string, mode uint32) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall(SYS___ACCESS_A, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Chdir(path string) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall(SYS___CHDIR_A, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Chown(path string, uid int, gid int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall(SYS___CHOWN_A, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Chmod(path string, mode uint32) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall(SYS___CHMOD_A, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Creat(path string, mode uint32) (fd int, err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ r0, _, e1 := syscall_syscall(SYS___CREAT_A, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Dup(oldfd int) (fd int, err error) { -+ r0, _, e1 := syscall_syscall(SYS_DUP, uintptr(oldfd), 0, 0) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Dup2(oldfd int, newfd int) (err error) { -+ _, _, e1 := syscall_syscall(SYS_DUP2, uintptr(oldfd), uintptr(newfd), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Errno2() (er2 int) { -+ uer2, _, _ := syscall_syscall(SYS___ERRNO2, 0, 0, 0) -+ er2 = int(uer2) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Err2ad() (eadd *int) { -+ ueadd, _, _ := syscall_syscall(SYS___ERR2AD, 0, 0, 0) -+ eadd = (*int)(unsafe.Pointer(ueadd)) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Exit(code int) { -+ syscall_syscall(SYS_EXIT, uintptr(code), 0, 0) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fchdir(fd int) (err error) { -+ _, _, e1 := syscall_syscall(SYS_FCHDIR, uintptr(fd), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fchmod(fd int, mode uint32) (err error) { -+ _, _, e1 := syscall_syscall(SYS_FCHMOD, uintptr(fd), uintptr(mode), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fchown(fd int, uid int, gid int) (err error) { -+ _, _, e1 := syscall_syscall(SYS_FCHOWN, uintptr(fd), uintptr(uid), uintptr(gid)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func FcntlInt(fd uintptr, cmd int, arg int) (retval int, err error) { -+ r0, _, e1 := syscall_syscall(SYS_FCNTL, uintptr(fd), uintptr(cmd), uintptr(arg)) -+ retval = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func fstat(fd int, stat *Stat_LE_t) (err error) { -+ _, _, e1 := syscall_syscall(SYS_FSTAT, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fstatvfs(fd int, stat *Statvfs_t) (err error) { -+ _, _, e1 := syscall_syscall(SYS_FSTATVFS, uintptr(fd), uintptr(unsafe.Pointer(stat)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Fsync(fd int) (err error) { -+ _, _, e1 := syscall_syscall(SYS_FSYNC, uintptr(fd), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Ftruncate(fd int, length int64) (err error) { -+ _, _, e1 := syscall_syscall(SYS_FTRUNCATE, uintptr(fd), uintptr(length), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Getpagesize() (pgsize int) { -+ r0, _, _ := syscall_syscall(SYS_GETPAGESIZE, 0, 0, 0) -+ pgsize = int(r0) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Mprotect(b []byte, prot int) (err error) { -+ var _p0 unsafe.Pointer -+ if len(b) > 0 { -+ _p0 = unsafe.Pointer(&b[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ _, _, e1 := syscall_syscall(SYS_MPROTECT, uintptr(_p0), uintptr(len(b)), uintptr(prot)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Msync(b []byte, flags int) (err error) { -+ var _p0 unsafe.Pointer -+ if len(b) > 0 { -+ _p0 = unsafe.Pointer(&b[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ _, _, e1 := syscall_syscall(SYS_MSYNC, uintptr(_p0), uintptr(len(b)), uintptr(flags)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Poll(fds []PollFd, timeout int) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(fds) > 0 { -+ _p0 = unsafe.Pointer(&fds[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := syscall_syscall(SYS_POLL, uintptr(_p0), uintptr(len(fds)), uintptr(timeout)) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Times(tms *Tms) (ticks uintptr, err error) { -+ r0, _, e1 := syscall_syscall(SYS_TIMES, uintptr(unsafe.Pointer(tms)), 0, 0) -+ ticks = uintptr(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func W_Getmntent(buff *byte, size int) (lastsys int, err error) { -+ r0, _, e1 := syscall_syscall(SYS_W_GETMNTENT, uintptr(unsafe.Pointer(buff)), uintptr(size), 0) -+ lastsys = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func W_Getmntent_A(buff *byte, size int) (lastsys int, err error) { -+ r0, _, e1 := syscall_syscall(SYS___W_GETMNTENT_A, uintptr(unsafe.Pointer(buff)), uintptr(size), 0) -+ lastsys = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func mount_LE(path string, filesystem string, fstype string, mtm uint32, parmlen int32, parm string) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(filesystem) -+ if err != nil { -+ return -+ } -+ var _p2 *byte -+ _p2, err = BytePtrFromString(fstype) -+ if err != nil { -+ return -+ } -+ var _p3 *byte -+ _p3, err = BytePtrFromString(parm) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall6(SYS___MOUNT_A, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), uintptr(unsafe.Pointer(_p2)), uintptr(mtm), uintptr(parmlen), uintptr(unsafe.Pointer(_p3))) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func unmount(filesystem string, mtm int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(filesystem) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall(SYS___UMOUNT_A, uintptr(unsafe.Pointer(_p0)), uintptr(mtm), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Chroot(path string) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall(SYS___CHROOT_A, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Uname(buf *Utsname) (err error) { -+ _, _, e1 := syscall_rawsyscall(SYS___UNAME_A, uintptr(unsafe.Pointer(buf)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Gethostname(buf []byte) (err error) { -+ var _p0 unsafe.Pointer -+ if len(buf) > 0 { -+ _p0 = unsafe.Pointer(&buf[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ _, _, e1 := syscall_syscall(SYS___GETHOSTNAME_A, uintptr(_p0), uintptr(len(buf)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Getegid() (egid int) { -+ r0, _, _ := syscall_rawsyscall(SYS_GETEGID, 0, 0, 0) -+ egid = int(r0) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Geteuid() (uid int) { -+ r0, _, _ := syscall_rawsyscall(SYS_GETEUID, 0, 0, 0) -+ uid = int(r0) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Getgid() (gid int) { -+ r0, _, _ := syscall_rawsyscall(SYS_GETGID, 0, 0, 0) -+ gid = int(r0) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Getpid() (pid int) { -+ r0, _, _ := syscall_rawsyscall(SYS_GETPID, 0, 0, 0) -+ pid = int(r0) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Getpgid(pid int) (pgid int, err error) { -+ r0, _, e1 := syscall_rawsyscall(SYS_GETPGID, uintptr(pid), 0, 0) -+ pgid = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Getppid() (pid int) { -+ r0, _, _ := syscall_rawsyscall(SYS_GETPPID, 0, 0, 0) -+ pid = int(r0) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Getpriority(which int, who int) (prio int, err error) { -+ r0, _, e1 := syscall_syscall(SYS_GETPRIORITY, uintptr(which), uintptr(who), 0) -+ prio = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Getrlimit(resource int, rlim *Rlimit) (err error) { -+ _, _, e1 := syscall_rawsyscall(SYS_GETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(rlim)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func getrusage(who int, rusage *rusage_zos) (err error) { -+ _, _, e1 := syscall_rawsyscall(SYS_GETRUSAGE, uintptr(who), uintptr(unsafe.Pointer(rusage)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Getsid(pid int) (sid int, err error) { -+ r0, _, e1 := syscall_rawsyscall(SYS_GETSID, uintptr(pid), 0, 0) -+ sid = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Getuid() (uid int) { -+ r0, _, _ := syscall_rawsyscall(SYS_GETUID, 0, 0, 0) -+ uid = int(r0) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Kill(pid int, sig Signal) (err error) { -+ _, _, e1 := syscall_rawsyscall(SYS_KILL, uintptr(pid), uintptr(sig), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Lchown(path string, uid int, gid int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall(SYS___LCHOWN_A, uintptr(unsafe.Pointer(_p0)), uintptr(uid), uintptr(gid)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Link(path string, link string) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(link) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall(SYS___LINK_A, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Listen(s int, n int) (err error) { -+ _, _, e1 := syscall_syscall(SYS_LISTEN, uintptr(s), uintptr(n), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func lstat(path string, stat *Stat_LE_t) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall(SYS___LSTAT_A, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(stat)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Mkdir(path string, mode uint32) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall(SYS___MKDIR_A, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Mkfifo(path string, mode uint32) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall(SYS___MKFIFO_A, uintptr(unsafe.Pointer(_p0)), uintptr(mode), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Mknod(path string, mode uint32, dev int) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall(SYS___MKNOD_A, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(dev)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Pread(fd int, p []byte, offset int64) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(p) > 0 { -+ _p0 = unsafe.Pointer(&p[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := syscall_syscall6(SYS_PREAD, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Pwrite(fd int, p []byte, offset int64) (n int, err error) { -+ var _p0 unsafe.Pointer -+ if len(p) > 0 { -+ _p0 = unsafe.Pointer(&p[0]) -+ } else { -+ _p0 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := syscall_syscall6(SYS_PWRITE, uintptr(fd), uintptr(_p0), uintptr(len(p)), uintptr(offset), 0, 0) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Readlink(path string, buf []byte) (n int, err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ var _p1 unsafe.Pointer -+ if len(buf) > 0 { -+ _p1 = unsafe.Pointer(&buf[0]) -+ } else { -+ _p1 = unsafe.Pointer(&_zero) -+ } -+ r0, _, e1 := syscall_syscall(SYS___READLINK_A, uintptr(unsafe.Pointer(_p0)), uintptr(_p1), uintptr(len(buf))) -+ n = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Rename(from string, to string) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(from) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(to) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall(SYS___RENAME_A, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Rmdir(path string) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall(SYS___RMDIR_A, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Seek(fd int, offset int64, whence int) (off int64, err error) { -+ r0, _, e1 := syscall_syscall(SYS_LSEEK, uintptr(fd), uintptr(offset), uintptr(whence)) -+ off = int64(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Setpriority(which int, who int, prio int) (err error) { -+ _, _, e1 := syscall_syscall(SYS_SETPRIORITY, uintptr(which), uintptr(who), uintptr(prio)) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Setpgid(pid int, pgid int) (err error) { -+ _, _, e1 := syscall_rawsyscall(SYS_SETPGID, uintptr(pid), uintptr(pgid), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Setrlimit(resource int, lim *Rlimit) (err error) { -+ _, _, e1 := syscall_rawsyscall(SYS_SETRLIMIT, uintptr(resource), uintptr(unsafe.Pointer(lim)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Setregid(rgid int, egid int) (err error) { -+ _, _, e1 := syscall_rawsyscall(SYS_SETREGID, uintptr(rgid), uintptr(egid), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Setreuid(ruid int, euid int) (err error) { -+ _, _, e1 := syscall_rawsyscall(SYS_SETREUID, uintptr(ruid), uintptr(euid), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Setsid() (pid int, err error) { -+ r0, _, e1 := syscall_rawsyscall(SYS_SETSID, 0, 0, 0) -+ pid = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Setuid(uid int) (err error) { -+ _, _, e1 := syscall_syscall(SYS_SETUID, uintptr(uid), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Setgid(uid int) (err error) { -+ _, _, e1 := syscall_syscall(SYS_SETGID, uintptr(uid), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Shutdown(fd int, how int) (err error) { -+ _, _, e1 := syscall_syscall(SYS_SHUTDOWN, uintptr(fd), uintptr(how), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func stat(path string, statLE *Stat_LE_t) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall(SYS___STAT_A, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(statLE)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Symlink(path string, link string) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ var _p1 *byte -+ _p1, err = BytePtrFromString(link) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall(SYS___SYMLINK_A, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(_p1)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Sync() { -+ syscall_syscall(SYS_SYNC, 0, 0, 0) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Truncate(path string, length int64) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall(SYS___TRUNCATE_A, uintptr(unsafe.Pointer(_p0)), uintptr(length), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Tcgetattr(fildes int, termptr *Termios) (err error) { -+ _, _, e1 := syscall_syscall(SYS_TCGETATTR, uintptr(fildes), uintptr(unsafe.Pointer(termptr)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Tcsetattr(fildes int, when int, termptr *Termios) (err error) { -+ _, _, e1 := syscall_syscall(SYS_TCSETATTR, uintptr(fildes), uintptr(when), uintptr(unsafe.Pointer(termptr))) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Umask(mask int) (oldmask int) { -+ r0, _, _ := syscall_syscall(SYS_UMASK, uintptr(mask), 0, 0) -+ oldmask = int(r0) -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Unlink(path string) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall(SYS___UNLINK_A, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Utime(path string, utim *Utimbuf) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall(SYS___UTIME_A, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(utim)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func open(path string, mode int, perm uint32) (fd int, err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ r0, _, e1 := syscall_syscall(SYS___OPEN_A, uintptr(unsafe.Pointer(_p0)), uintptr(mode), uintptr(perm)) -+ fd = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func remove(path string) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall(SYS_REMOVE, uintptr(unsafe.Pointer(_p0)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func waitpid(pid int, wstatus *_C_int, options int) (wpid int, err error) { -+ r0, _, e1 := syscall_syscall(SYS_WAITPID, uintptr(pid), uintptr(unsafe.Pointer(wstatus)), uintptr(options)) -+ wpid = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func gettimeofday(tv *timeval_zos) (err error) { -+ _, _, e1 := syscall_rawsyscall(SYS_GETTIMEOFDAY, uintptr(unsafe.Pointer(tv)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func pipe(p *[2]_C_int) (err error) { -+ _, _, e1 := syscall_rawsyscall(SYS_PIPE, uintptr(unsafe.Pointer(p)), 0, 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func utimes(path string, timeval *[2]Timeval) (err error) { -+ var _p0 *byte -+ _p0, err = BytePtrFromString(path) -+ if err != nil { -+ return -+ } -+ _, _, e1 := syscall_syscall(SYS___UTIMES_A, uintptr(unsafe.Pointer(_p0)), uintptr(unsafe.Pointer(timeval)), 0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT -+ -+func Select(nmsgsfds int, r *FdSet, w *FdSet, e *FdSet, timeout *Timeval) (ret int, err error) { -+ r0, _, e1 := syscall_syscall6(SYS_SELECT, uintptr(nmsgsfds), uintptr(unsafe.Pointer(r)), uintptr(unsafe.Pointer(w)), uintptr(unsafe.Pointer(e)), uintptr(unsafe.Pointer(timeout)), 0) -+ ret = int(r0) -+ if e1 != 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -diff --git a/vendor/golang.org/x/sys/unix/zsysctl_openbsd_386.go b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_386.go -index 37dcc74..9e9d0b2 100644 ---- a/vendor/golang.org/x/sys/unix/zsysctl_openbsd_386.go -+++ b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_386.go -@@ -1,6 +1,7 @@ --// mksysctl_openbsd.pl -+// go run mksysctl_openbsd.go - // Code generated by the command above; DO NOT EDIT. - -+//go:build 386 && openbsd - // +build 386,openbsd - - package unix -@@ -30,6 +31,7 @@ var sysctlMib = []mibentry{ - {"hw.model", []_C_int{6, 2}}, - {"hw.ncpu", []_C_int{6, 3}}, - {"hw.ncpufound", []_C_int{6, 21}}, -+ {"hw.ncpuonline", []_C_int{6, 25}}, - {"hw.pagesize", []_C_int{6, 7}}, - {"hw.physmem", []_C_int{6, 19}}, - {"hw.product", []_C_int{6, 15}}, -diff --git a/vendor/golang.org/x/sys/unix/zsysctl_openbsd_amd64.go b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_amd64.go -index fe6caa6..adecd09 100644 ---- a/vendor/golang.org/x/sys/unix/zsysctl_openbsd_amd64.go -+++ b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_amd64.go -@@ -1,6 +1,7 @@ - // go run mksysctl_openbsd.go - // Code generated by the command above; DO NOT EDIT. - -+//go:build amd64 && openbsd - // +build amd64,openbsd - - package unix -@@ -31,6 +32,7 @@ var sysctlMib = []mibentry{ - {"hw.model", []_C_int{6, 2}}, - {"hw.ncpu", []_C_int{6, 3}}, - {"hw.ncpufound", []_C_int{6, 21}}, -+ {"hw.ncpuonline", []_C_int{6, 25}}, - {"hw.pagesize", []_C_int{6, 7}}, - {"hw.perfpolicy", []_C_int{6, 23}}, - {"hw.physmem", []_C_int{6, 19}}, -diff --git a/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm.go b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm.go -index 6eb8c0b..8ea52a4 100644 ---- a/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm.go -+++ b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm.go -@@ -1,6 +1,7 @@ - // go run mksysctl_openbsd.go - // Code generated by the command above; DO NOT EDIT. - -+//go:build arm && openbsd - // +build arm,openbsd - - package unix -@@ -30,6 +31,7 @@ var sysctlMib = []mibentry{ - {"hw.model", []_C_int{6, 2}}, - {"hw.ncpu", []_C_int{6, 3}}, - {"hw.ncpufound", []_C_int{6, 21}}, -+ {"hw.ncpuonline", []_C_int{6, 25}}, - {"hw.pagesize", []_C_int{6, 7}}, - {"hw.physmem", []_C_int{6, 19}}, - {"hw.product", []_C_int{6, 15}}, -diff --git a/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm64.go b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm64.go -index ba4304f..154b57a 100644 ---- a/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm64.go -+++ b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_arm64.go -@@ -1,6 +1,7 @@ - // go run mksysctl_openbsd.go - // Code generated by the command above; DO NOT EDIT. - -+//go:build arm64 && openbsd - // +build arm64,openbsd - - package unix -diff --git a/vendor/golang.org/x/sys/unix/zsysctl_openbsd_mips64.go b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_mips64.go -new file mode 100644 -index 0000000..d96bb2b ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/zsysctl_openbsd_mips64.go -@@ -0,0 +1,280 @@ -+// go run mksysctl_openbsd.go -+// Code generated by the command above; DO NOT EDIT. -+ -+//go:build mips64 && openbsd -+// +build mips64,openbsd -+ -+package unix -+ -+type mibentry struct { -+ ctlname string -+ ctloid []_C_int -+} -+ -+var sysctlMib = []mibentry{ -+ {"ddb.console", []_C_int{9, 6}}, -+ {"ddb.log", []_C_int{9, 7}}, -+ {"ddb.max_line", []_C_int{9, 3}}, -+ {"ddb.max_width", []_C_int{9, 2}}, -+ {"ddb.panic", []_C_int{9, 5}}, -+ {"ddb.profile", []_C_int{9, 9}}, -+ {"ddb.radix", []_C_int{9, 1}}, -+ {"ddb.tab_stop_width", []_C_int{9, 4}}, -+ {"ddb.trigger", []_C_int{9, 8}}, -+ {"fs.posix.setuid", []_C_int{3, 1, 1}}, -+ {"hw.allowpowerdown", []_C_int{6, 22}}, -+ {"hw.byteorder", []_C_int{6, 4}}, -+ {"hw.cpuspeed", []_C_int{6, 12}}, -+ {"hw.diskcount", []_C_int{6, 10}}, -+ {"hw.disknames", []_C_int{6, 8}}, -+ {"hw.diskstats", []_C_int{6, 9}}, -+ {"hw.machine", []_C_int{6, 1}}, -+ {"hw.model", []_C_int{6, 2}}, -+ {"hw.ncpu", []_C_int{6, 3}}, -+ {"hw.ncpufound", []_C_int{6, 21}}, -+ {"hw.ncpuonline", []_C_int{6, 25}}, -+ {"hw.pagesize", []_C_int{6, 7}}, -+ {"hw.perfpolicy", []_C_int{6, 23}}, -+ {"hw.physmem", []_C_int{6, 19}}, -+ {"hw.product", []_C_int{6, 15}}, -+ {"hw.serialno", []_C_int{6, 17}}, -+ {"hw.setperf", []_C_int{6, 13}}, -+ {"hw.smt", []_C_int{6, 24}}, -+ {"hw.usermem", []_C_int{6, 20}}, -+ {"hw.uuid", []_C_int{6, 18}}, -+ {"hw.vendor", []_C_int{6, 14}}, -+ {"hw.version", []_C_int{6, 16}}, -+ {"kern.allowdt", []_C_int{1, 65}}, -+ {"kern.allowkmem", []_C_int{1, 52}}, -+ {"kern.argmax", []_C_int{1, 8}}, -+ {"kern.audio", []_C_int{1, 84}}, -+ {"kern.boottime", []_C_int{1, 21}}, -+ {"kern.bufcachepercent", []_C_int{1, 72}}, -+ {"kern.ccpu", []_C_int{1, 45}}, -+ {"kern.clockrate", []_C_int{1, 12}}, -+ {"kern.consbuf", []_C_int{1, 83}}, -+ {"kern.consbufsize", []_C_int{1, 82}}, -+ {"kern.consdev", []_C_int{1, 75}}, -+ {"kern.cp_time", []_C_int{1, 40}}, -+ {"kern.cp_time2", []_C_int{1, 71}}, -+ {"kern.cpustats", []_C_int{1, 85}}, -+ {"kern.domainname", []_C_int{1, 22}}, -+ {"kern.file", []_C_int{1, 73}}, -+ {"kern.forkstat", []_C_int{1, 42}}, -+ {"kern.fscale", []_C_int{1, 46}}, -+ {"kern.fsync", []_C_int{1, 33}}, -+ {"kern.global_ptrace", []_C_int{1, 81}}, -+ {"kern.hostid", []_C_int{1, 11}}, -+ {"kern.hostname", []_C_int{1, 10}}, -+ {"kern.intrcnt.nintrcnt", []_C_int{1, 63, 1}}, -+ {"kern.job_control", []_C_int{1, 19}}, -+ {"kern.malloc.buckets", []_C_int{1, 39, 1}}, -+ {"kern.malloc.kmemnames", []_C_int{1, 39, 3}}, -+ {"kern.maxclusters", []_C_int{1, 67}}, -+ {"kern.maxfiles", []_C_int{1, 7}}, -+ {"kern.maxlocksperuid", []_C_int{1, 70}}, -+ {"kern.maxpartitions", []_C_int{1, 23}}, -+ {"kern.maxproc", []_C_int{1, 6}}, -+ {"kern.maxthread", []_C_int{1, 25}}, -+ {"kern.maxvnodes", []_C_int{1, 5}}, -+ {"kern.mbstat", []_C_int{1, 59}}, -+ {"kern.msgbuf", []_C_int{1, 48}}, -+ {"kern.msgbufsize", []_C_int{1, 38}}, -+ {"kern.nchstats", []_C_int{1, 41}}, -+ {"kern.netlivelocks", []_C_int{1, 76}}, -+ {"kern.nfiles", []_C_int{1, 56}}, -+ {"kern.ngroups", []_C_int{1, 18}}, -+ {"kern.nosuidcoredump", []_C_int{1, 32}}, -+ {"kern.nprocs", []_C_int{1, 47}}, -+ {"kern.nselcoll", []_C_int{1, 43}}, -+ {"kern.nthreads", []_C_int{1, 26}}, -+ {"kern.numvnodes", []_C_int{1, 58}}, -+ {"kern.osrelease", []_C_int{1, 2}}, -+ {"kern.osrevision", []_C_int{1, 3}}, -+ {"kern.ostype", []_C_int{1, 1}}, -+ {"kern.osversion", []_C_int{1, 27}}, -+ {"kern.pfstatus", []_C_int{1, 86}}, -+ {"kern.pool_debug", []_C_int{1, 77}}, -+ {"kern.posix1version", []_C_int{1, 17}}, -+ {"kern.proc", []_C_int{1, 66}}, -+ {"kern.rawpartition", []_C_int{1, 24}}, -+ {"kern.saved_ids", []_C_int{1, 20}}, -+ {"kern.securelevel", []_C_int{1, 9}}, -+ {"kern.seminfo", []_C_int{1, 61}}, -+ {"kern.shminfo", []_C_int{1, 62}}, -+ {"kern.somaxconn", []_C_int{1, 28}}, -+ {"kern.sominconn", []_C_int{1, 29}}, -+ {"kern.splassert", []_C_int{1, 54}}, -+ {"kern.stackgap_random", []_C_int{1, 50}}, -+ {"kern.sysvipc_info", []_C_int{1, 51}}, -+ {"kern.sysvmsg", []_C_int{1, 34}}, -+ {"kern.sysvsem", []_C_int{1, 35}}, -+ {"kern.sysvshm", []_C_int{1, 36}}, -+ {"kern.timecounter.choice", []_C_int{1, 69, 4}}, -+ {"kern.timecounter.hardware", []_C_int{1, 69, 3}}, -+ {"kern.timecounter.tick", []_C_int{1, 69, 1}}, -+ {"kern.timecounter.timestepwarnings", []_C_int{1, 69, 2}}, -+ {"kern.timeout_stats", []_C_int{1, 87}}, -+ {"kern.tty.tk_cancc", []_C_int{1, 44, 4}}, -+ {"kern.tty.tk_nin", []_C_int{1, 44, 1}}, -+ {"kern.tty.tk_nout", []_C_int{1, 44, 2}}, -+ {"kern.tty.tk_rawcc", []_C_int{1, 44, 3}}, -+ {"kern.tty.ttyinfo", []_C_int{1, 44, 5}}, -+ {"kern.ttycount", []_C_int{1, 57}}, -+ {"kern.utc_offset", []_C_int{1, 88}}, -+ {"kern.version", []_C_int{1, 4}}, -+ {"kern.watchdog.auto", []_C_int{1, 64, 2}}, -+ {"kern.watchdog.period", []_C_int{1, 64, 1}}, -+ {"kern.witnesswatch", []_C_int{1, 53}}, -+ {"kern.wxabort", []_C_int{1, 74}}, -+ {"net.bpf.bufsize", []_C_int{4, 31, 1}}, -+ {"net.bpf.maxbufsize", []_C_int{4, 31, 2}}, -+ {"net.inet.ah.enable", []_C_int{4, 2, 51, 1}}, -+ {"net.inet.ah.stats", []_C_int{4, 2, 51, 2}}, -+ {"net.inet.carp.allow", []_C_int{4, 2, 112, 1}}, -+ {"net.inet.carp.log", []_C_int{4, 2, 112, 3}}, -+ {"net.inet.carp.preempt", []_C_int{4, 2, 112, 2}}, -+ {"net.inet.carp.stats", []_C_int{4, 2, 112, 4}}, -+ {"net.inet.divert.recvspace", []_C_int{4, 2, 258, 1}}, -+ {"net.inet.divert.sendspace", []_C_int{4, 2, 258, 2}}, -+ {"net.inet.divert.stats", []_C_int{4, 2, 258, 3}}, -+ {"net.inet.esp.enable", []_C_int{4, 2, 50, 1}}, -+ {"net.inet.esp.stats", []_C_int{4, 2, 50, 4}}, -+ {"net.inet.esp.udpencap", []_C_int{4, 2, 50, 2}}, -+ {"net.inet.esp.udpencap_port", []_C_int{4, 2, 50, 3}}, -+ {"net.inet.etherip.allow", []_C_int{4, 2, 97, 1}}, -+ {"net.inet.etherip.stats", []_C_int{4, 2, 97, 2}}, -+ {"net.inet.gre.allow", []_C_int{4, 2, 47, 1}}, -+ {"net.inet.gre.wccp", []_C_int{4, 2, 47, 2}}, -+ {"net.inet.icmp.bmcastecho", []_C_int{4, 2, 1, 2}}, -+ {"net.inet.icmp.errppslimit", []_C_int{4, 2, 1, 3}}, -+ {"net.inet.icmp.maskrepl", []_C_int{4, 2, 1, 1}}, -+ {"net.inet.icmp.rediraccept", []_C_int{4, 2, 1, 4}}, -+ {"net.inet.icmp.redirtimeout", []_C_int{4, 2, 1, 5}}, -+ {"net.inet.icmp.stats", []_C_int{4, 2, 1, 7}}, -+ {"net.inet.icmp.tstamprepl", []_C_int{4, 2, 1, 6}}, -+ {"net.inet.igmp.stats", []_C_int{4, 2, 2, 1}}, -+ {"net.inet.ip.arpdown", []_C_int{4, 2, 0, 40}}, -+ {"net.inet.ip.arpqueued", []_C_int{4, 2, 0, 36}}, -+ {"net.inet.ip.arptimeout", []_C_int{4, 2, 0, 39}}, -+ {"net.inet.ip.encdebug", []_C_int{4, 2, 0, 12}}, -+ {"net.inet.ip.forwarding", []_C_int{4, 2, 0, 1}}, -+ {"net.inet.ip.ifq.congestion", []_C_int{4, 2, 0, 30, 4}}, -+ {"net.inet.ip.ifq.drops", []_C_int{4, 2, 0, 30, 3}}, -+ {"net.inet.ip.ifq.len", []_C_int{4, 2, 0, 30, 1}}, -+ {"net.inet.ip.ifq.maxlen", []_C_int{4, 2, 0, 30, 2}}, -+ {"net.inet.ip.maxqueue", []_C_int{4, 2, 0, 11}}, -+ {"net.inet.ip.mforwarding", []_C_int{4, 2, 0, 31}}, -+ {"net.inet.ip.mrtmfc", []_C_int{4, 2, 0, 37}}, -+ {"net.inet.ip.mrtproto", []_C_int{4, 2, 0, 34}}, -+ {"net.inet.ip.mrtstats", []_C_int{4, 2, 0, 35}}, -+ {"net.inet.ip.mrtvif", []_C_int{4, 2, 0, 38}}, -+ {"net.inet.ip.mtu", []_C_int{4, 2, 0, 4}}, -+ {"net.inet.ip.mtudisc", []_C_int{4, 2, 0, 27}}, -+ {"net.inet.ip.mtudisctimeout", []_C_int{4, 2, 0, 28}}, -+ {"net.inet.ip.multipath", []_C_int{4, 2, 0, 32}}, -+ {"net.inet.ip.portfirst", []_C_int{4, 2, 0, 7}}, -+ {"net.inet.ip.porthifirst", []_C_int{4, 2, 0, 9}}, -+ {"net.inet.ip.porthilast", []_C_int{4, 2, 0, 10}}, -+ {"net.inet.ip.portlast", []_C_int{4, 2, 0, 8}}, -+ {"net.inet.ip.redirect", []_C_int{4, 2, 0, 2}}, -+ {"net.inet.ip.sourceroute", []_C_int{4, 2, 0, 5}}, -+ {"net.inet.ip.stats", []_C_int{4, 2, 0, 33}}, -+ {"net.inet.ip.ttl", []_C_int{4, 2, 0, 3}}, -+ {"net.inet.ipcomp.enable", []_C_int{4, 2, 108, 1}}, -+ {"net.inet.ipcomp.stats", []_C_int{4, 2, 108, 2}}, -+ {"net.inet.ipip.allow", []_C_int{4, 2, 4, 1}}, -+ {"net.inet.ipip.stats", []_C_int{4, 2, 4, 2}}, -+ {"net.inet.pfsync.stats", []_C_int{4, 2, 240, 1}}, -+ {"net.inet.tcp.ackonpush", []_C_int{4, 2, 6, 13}}, -+ {"net.inet.tcp.always_keepalive", []_C_int{4, 2, 6, 22}}, -+ {"net.inet.tcp.baddynamic", []_C_int{4, 2, 6, 6}}, -+ {"net.inet.tcp.drop", []_C_int{4, 2, 6, 19}}, -+ {"net.inet.tcp.ecn", []_C_int{4, 2, 6, 14}}, -+ {"net.inet.tcp.ident", []_C_int{4, 2, 6, 9}}, -+ {"net.inet.tcp.keepidle", []_C_int{4, 2, 6, 3}}, -+ {"net.inet.tcp.keepinittime", []_C_int{4, 2, 6, 2}}, -+ {"net.inet.tcp.keepintvl", []_C_int{4, 2, 6, 4}}, -+ {"net.inet.tcp.mssdflt", []_C_int{4, 2, 6, 11}}, -+ {"net.inet.tcp.reasslimit", []_C_int{4, 2, 6, 18}}, -+ {"net.inet.tcp.rfc1323", []_C_int{4, 2, 6, 1}}, -+ {"net.inet.tcp.rfc3390", []_C_int{4, 2, 6, 17}}, -+ {"net.inet.tcp.rootonly", []_C_int{4, 2, 6, 24}}, -+ {"net.inet.tcp.rstppslimit", []_C_int{4, 2, 6, 12}}, -+ {"net.inet.tcp.sack", []_C_int{4, 2, 6, 10}}, -+ {"net.inet.tcp.sackholelimit", []_C_int{4, 2, 6, 20}}, -+ {"net.inet.tcp.slowhz", []_C_int{4, 2, 6, 5}}, -+ {"net.inet.tcp.stats", []_C_int{4, 2, 6, 21}}, -+ {"net.inet.tcp.synbucketlimit", []_C_int{4, 2, 6, 16}}, -+ {"net.inet.tcp.syncachelimit", []_C_int{4, 2, 6, 15}}, -+ {"net.inet.tcp.synhashsize", []_C_int{4, 2, 6, 25}}, -+ {"net.inet.tcp.synuselimit", []_C_int{4, 2, 6, 23}}, -+ {"net.inet.udp.baddynamic", []_C_int{4, 2, 17, 2}}, -+ {"net.inet.udp.checksum", []_C_int{4, 2, 17, 1}}, -+ {"net.inet.udp.recvspace", []_C_int{4, 2, 17, 3}}, -+ {"net.inet.udp.rootonly", []_C_int{4, 2, 17, 6}}, -+ {"net.inet.udp.sendspace", []_C_int{4, 2, 17, 4}}, -+ {"net.inet.udp.stats", []_C_int{4, 2, 17, 5}}, -+ {"net.inet6.divert.recvspace", []_C_int{4, 24, 86, 1}}, -+ {"net.inet6.divert.sendspace", []_C_int{4, 24, 86, 2}}, -+ {"net.inet6.divert.stats", []_C_int{4, 24, 86, 3}}, -+ {"net.inet6.icmp6.errppslimit", []_C_int{4, 24, 30, 14}}, -+ {"net.inet6.icmp6.mtudisc_hiwat", []_C_int{4, 24, 30, 16}}, -+ {"net.inet6.icmp6.mtudisc_lowat", []_C_int{4, 24, 30, 17}}, -+ {"net.inet6.icmp6.nd6_debug", []_C_int{4, 24, 30, 18}}, -+ {"net.inet6.icmp6.nd6_delay", []_C_int{4, 24, 30, 8}}, -+ {"net.inet6.icmp6.nd6_maxnudhint", []_C_int{4, 24, 30, 15}}, -+ {"net.inet6.icmp6.nd6_mmaxtries", []_C_int{4, 24, 30, 10}}, -+ {"net.inet6.icmp6.nd6_umaxtries", []_C_int{4, 24, 30, 9}}, -+ {"net.inet6.icmp6.redirtimeout", []_C_int{4, 24, 30, 3}}, -+ {"net.inet6.ip6.auto_flowlabel", []_C_int{4, 24, 17, 17}}, -+ {"net.inet6.ip6.dad_count", []_C_int{4, 24, 17, 16}}, -+ {"net.inet6.ip6.dad_pending", []_C_int{4, 24, 17, 49}}, -+ {"net.inet6.ip6.defmcasthlim", []_C_int{4, 24, 17, 18}}, -+ {"net.inet6.ip6.forwarding", []_C_int{4, 24, 17, 1}}, -+ {"net.inet6.ip6.forwsrcrt", []_C_int{4, 24, 17, 5}}, -+ {"net.inet6.ip6.hdrnestlimit", []_C_int{4, 24, 17, 15}}, -+ {"net.inet6.ip6.hlim", []_C_int{4, 24, 17, 3}}, -+ {"net.inet6.ip6.log_interval", []_C_int{4, 24, 17, 14}}, -+ {"net.inet6.ip6.maxdynroutes", []_C_int{4, 24, 17, 48}}, -+ {"net.inet6.ip6.maxfragpackets", []_C_int{4, 24, 17, 9}}, -+ {"net.inet6.ip6.maxfrags", []_C_int{4, 24, 17, 41}}, -+ {"net.inet6.ip6.mforwarding", []_C_int{4, 24, 17, 42}}, -+ {"net.inet6.ip6.mrtmfc", []_C_int{4, 24, 17, 53}}, -+ {"net.inet6.ip6.mrtmif", []_C_int{4, 24, 17, 52}}, -+ {"net.inet6.ip6.mrtproto", []_C_int{4, 24, 17, 8}}, -+ {"net.inet6.ip6.mtudisctimeout", []_C_int{4, 24, 17, 50}}, -+ {"net.inet6.ip6.multicast_mtudisc", []_C_int{4, 24, 17, 44}}, -+ {"net.inet6.ip6.multipath", []_C_int{4, 24, 17, 43}}, -+ {"net.inet6.ip6.neighborgcthresh", []_C_int{4, 24, 17, 45}}, -+ {"net.inet6.ip6.redirect", []_C_int{4, 24, 17, 2}}, -+ {"net.inet6.ip6.soiikey", []_C_int{4, 24, 17, 54}}, -+ {"net.inet6.ip6.sourcecheck", []_C_int{4, 24, 17, 10}}, -+ {"net.inet6.ip6.sourcecheck_logint", []_C_int{4, 24, 17, 11}}, -+ {"net.inet6.ip6.use_deprecated", []_C_int{4, 24, 17, 21}}, -+ {"net.key.sadb_dump", []_C_int{4, 30, 1}}, -+ {"net.key.spd_dump", []_C_int{4, 30, 2}}, -+ {"net.mpls.ifq.congestion", []_C_int{4, 33, 3, 4}}, -+ {"net.mpls.ifq.drops", []_C_int{4, 33, 3, 3}}, -+ {"net.mpls.ifq.len", []_C_int{4, 33, 3, 1}}, -+ {"net.mpls.ifq.maxlen", []_C_int{4, 33, 3, 2}}, -+ {"net.mpls.mapttl_ip", []_C_int{4, 33, 5}}, -+ {"net.mpls.mapttl_ip6", []_C_int{4, 33, 6}}, -+ {"net.mpls.ttl", []_C_int{4, 33, 2}}, -+ {"net.pflow.stats", []_C_int{4, 34, 1}}, -+ {"net.pipex.enable", []_C_int{4, 35, 1}}, -+ {"vm.anonmin", []_C_int{2, 7}}, -+ {"vm.loadavg", []_C_int{2, 2}}, -+ {"vm.malloc_conf", []_C_int{2, 12}}, -+ {"vm.maxslp", []_C_int{2, 10}}, -+ {"vm.nkmempages", []_C_int{2, 6}}, -+ {"vm.psstrings", []_C_int{2, 3}}, -+ {"vm.swapencrypt.enable", []_C_int{2, 5, 0}}, -+ {"vm.swapencrypt.keyscreated", []_C_int{2, 5, 1}}, -+ {"vm.swapencrypt.keysdeleted", []_C_int{2, 5, 2}}, -+ {"vm.uspace", []_C_int{2, 11}}, -+ {"vm.uvmexp", []_C_int{2, 4}}, -+ {"vm.vmmeter", []_C_int{2, 1}}, -+ {"vm.vnodemin", []_C_int{2, 9}}, -+ {"vm.vtextmin", []_C_int{2, 8}}, -+} -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_darwin_386.go b/vendor/golang.org/x/sys/unix/zsysnum_darwin_386.go -deleted file mode 100644 -index f336145..0000000 ---- a/vendor/golang.org/x/sys/unix/zsysnum_darwin_386.go -+++ /dev/null -@@ -1,436 +0,0 @@ --// go run mksysnum.go /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/usr/include/sys/syscall.h --// Code generated by the command above; see README.md. DO NOT EDIT. -- --// +build 386,darwin -- --package unix -- --const ( -- SYS_SYSCALL = 0 -- SYS_EXIT = 1 -- SYS_FORK = 2 -- SYS_READ = 3 -- SYS_WRITE = 4 -- SYS_OPEN = 5 -- SYS_CLOSE = 6 -- SYS_WAIT4 = 7 -- SYS_LINK = 9 -- SYS_UNLINK = 10 -- SYS_CHDIR = 12 -- SYS_FCHDIR = 13 -- SYS_MKNOD = 14 -- SYS_CHMOD = 15 -- SYS_CHOWN = 16 -- SYS_GETFSSTAT = 18 -- SYS_GETPID = 20 -- SYS_SETUID = 23 -- SYS_GETUID = 24 -- SYS_GETEUID = 25 -- SYS_PTRACE = 26 -- SYS_RECVMSG = 27 -- SYS_SENDMSG = 28 -- SYS_RECVFROM = 29 -- SYS_ACCEPT = 30 -- SYS_GETPEERNAME = 31 -- SYS_GETSOCKNAME = 32 -- SYS_ACCESS = 33 -- SYS_CHFLAGS = 34 -- SYS_FCHFLAGS = 35 -- SYS_SYNC = 36 -- SYS_KILL = 37 -- SYS_GETPPID = 39 -- SYS_DUP = 41 -- SYS_PIPE = 42 -- SYS_GETEGID = 43 -- SYS_SIGACTION = 46 -- SYS_GETGID = 47 -- SYS_SIGPROCMASK = 48 -- SYS_GETLOGIN = 49 -- SYS_SETLOGIN = 50 -- SYS_ACCT = 51 -- SYS_SIGPENDING = 52 -- SYS_SIGALTSTACK = 53 -- SYS_IOCTL = 54 -- SYS_REBOOT = 55 -- SYS_REVOKE = 56 -- SYS_SYMLINK = 57 -- SYS_READLINK = 58 -- SYS_EXECVE = 59 -- SYS_UMASK = 60 -- SYS_CHROOT = 61 -- SYS_MSYNC = 65 -- SYS_VFORK = 66 -- SYS_MUNMAP = 73 -- SYS_MPROTECT = 74 -- SYS_MADVISE = 75 -- SYS_MINCORE = 78 -- SYS_GETGROUPS = 79 -- SYS_SETGROUPS = 80 -- SYS_GETPGRP = 81 -- SYS_SETPGID = 82 -- SYS_SETITIMER = 83 -- SYS_SWAPON = 85 -- SYS_GETITIMER = 86 -- SYS_GETDTABLESIZE = 89 -- SYS_DUP2 = 90 -- SYS_FCNTL = 92 -- SYS_SELECT = 93 -- SYS_FSYNC = 95 -- SYS_SETPRIORITY = 96 -- SYS_SOCKET = 97 -- SYS_CONNECT = 98 -- SYS_GETPRIORITY = 100 -- SYS_BIND = 104 -- SYS_SETSOCKOPT = 105 -- SYS_LISTEN = 106 -- SYS_SIGSUSPEND = 111 -- SYS_GETTIMEOFDAY = 116 -- SYS_GETRUSAGE = 117 -- SYS_GETSOCKOPT = 118 -- SYS_READV = 120 -- SYS_WRITEV = 121 -- SYS_SETTIMEOFDAY = 122 -- SYS_FCHOWN = 123 -- SYS_FCHMOD = 124 -- SYS_SETREUID = 126 -- SYS_SETREGID = 127 -- SYS_RENAME = 128 -- SYS_FLOCK = 131 -- SYS_MKFIFO = 132 -- SYS_SENDTO = 133 -- SYS_SHUTDOWN = 134 -- SYS_SOCKETPAIR = 135 -- SYS_MKDIR = 136 -- SYS_RMDIR = 137 -- SYS_UTIMES = 138 -- SYS_FUTIMES = 139 -- SYS_ADJTIME = 140 -- SYS_GETHOSTUUID = 142 -- SYS_SETSID = 147 -- SYS_GETPGID = 151 -- SYS_SETPRIVEXEC = 152 -- SYS_PREAD = 153 -- SYS_PWRITE = 154 -- SYS_NFSSVC = 155 -- SYS_STATFS = 157 -- SYS_FSTATFS = 158 -- SYS_UNMOUNT = 159 -- SYS_GETFH = 161 -- SYS_QUOTACTL = 165 -- SYS_MOUNT = 167 -- SYS_CSOPS = 169 -- SYS_CSOPS_AUDITTOKEN = 170 -- SYS_WAITID = 173 -- SYS_KDEBUG_TYPEFILTER = 177 -- SYS_KDEBUG_TRACE_STRING = 178 -- SYS_KDEBUG_TRACE64 = 179 -- SYS_KDEBUG_TRACE = 180 -- SYS_SETGID = 181 -- SYS_SETEGID = 182 -- SYS_SETEUID = 183 -- SYS_SIGRETURN = 184 -- SYS_THREAD_SELFCOUNTS = 186 -- SYS_FDATASYNC = 187 -- SYS_STAT = 188 -- SYS_FSTAT = 189 -- SYS_LSTAT = 190 -- SYS_PATHCONF = 191 -- SYS_FPATHCONF = 192 -- SYS_GETRLIMIT = 194 -- SYS_SETRLIMIT = 195 -- SYS_GETDIRENTRIES = 196 -- SYS_MMAP = 197 -- SYS_LSEEK = 199 -- SYS_TRUNCATE = 200 -- SYS_FTRUNCATE = 201 -- SYS_SYSCTL = 202 -- SYS_MLOCK = 203 -- SYS_MUNLOCK = 204 -- SYS_UNDELETE = 205 -- SYS_OPEN_DPROTECTED_NP = 216 -- SYS_GETATTRLIST = 220 -- SYS_SETATTRLIST = 221 -- SYS_GETDIRENTRIESATTR = 222 -- SYS_EXCHANGEDATA = 223 -- SYS_SEARCHFS = 225 -- SYS_DELETE = 226 -- SYS_COPYFILE = 227 -- SYS_FGETATTRLIST = 228 -- SYS_FSETATTRLIST = 229 -- SYS_POLL = 230 -- SYS_WATCHEVENT = 231 -- SYS_WAITEVENT = 232 -- SYS_MODWATCH = 233 -- SYS_GETXATTR = 234 -- SYS_FGETXATTR = 235 -- SYS_SETXATTR = 236 -- SYS_FSETXATTR = 237 -- SYS_REMOVEXATTR = 238 -- SYS_FREMOVEXATTR = 239 -- SYS_LISTXATTR = 240 -- SYS_FLISTXATTR = 241 -- SYS_FSCTL = 242 -- SYS_INITGROUPS = 243 -- SYS_POSIX_SPAWN = 244 -- SYS_FFSCTL = 245 -- SYS_NFSCLNT = 247 -- SYS_FHOPEN = 248 -- SYS_MINHERIT = 250 -- SYS_SEMSYS = 251 -- SYS_MSGSYS = 252 -- SYS_SHMSYS = 253 -- SYS_SEMCTL = 254 -- SYS_SEMGET = 255 -- SYS_SEMOP = 256 -- SYS_MSGCTL = 258 -- SYS_MSGGET = 259 -- SYS_MSGSND = 260 -- SYS_MSGRCV = 261 -- SYS_SHMAT = 262 -- SYS_SHMCTL = 263 -- SYS_SHMDT = 264 -- SYS_SHMGET = 265 -- SYS_SHM_OPEN = 266 -- SYS_SHM_UNLINK = 267 -- SYS_SEM_OPEN = 268 -- SYS_SEM_CLOSE = 269 -- SYS_SEM_UNLINK = 270 -- SYS_SEM_WAIT = 271 -- SYS_SEM_TRYWAIT = 272 -- SYS_SEM_POST = 273 -- SYS_SYSCTLBYNAME = 274 -- SYS_OPEN_EXTENDED = 277 -- SYS_UMASK_EXTENDED = 278 -- SYS_STAT_EXTENDED = 279 -- SYS_LSTAT_EXTENDED = 280 -- SYS_FSTAT_EXTENDED = 281 -- SYS_CHMOD_EXTENDED = 282 -- SYS_FCHMOD_EXTENDED = 283 -- SYS_ACCESS_EXTENDED = 284 -- SYS_SETTID = 285 -- SYS_GETTID = 286 -- SYS_SETSGROUPS = 287 -- SYS_GETSGROUPS = 288 -- SYS_SETWGROUPS = 289 -- SYS_GETWGROUPS = 290 -- SYS_MKFIFO_EXTENDED = 291 -- SYS_MKDIR_EXTENDED = 292 -- SYS_IDENTITYSVC = 293 -- SYS_SHARED_REGION_CHECK_NP = 294 -- SYS_VM_PRESSURE_MONITOR = 296 -- SYS_PSYNCH_RW_LONGRDLOCK = 297 -- SYS_PSYNCH_RW_YIELDWRLOCK = 298 -- SYS_PSYNCH_RW_DOWNGRADE = 299 -- SYS_PSYNCH_RW_UPGRADE = 300 -- SYS_PSYNCH_MUTEXWAIT = 301 -- SYS_PSYNCH_MUTEXDROP = 302 -- SYS_PSYNCH_CVBROAD = 303 -- SYS_PSYNCH_CVSIGNAL = 304 -- SYS_PSYNCH_CVWAIT = 305 -- SYS_PSYNCH_RW_RDLOCK = 306 -- SYS_PSYNCH_RW_WRLOCK = 307 -- SYS_PSYNCH_RW_UNLOCK = 308 -- SYS_PSYNCH_RW_UNLOCK2 = 309 -- SYS_GETSID = 310 -- SYS_SETTID_WITH_PID = 311 -- SYS_PSYNCH_CVCLRPREPOST = 312 -- SYS_AIO_FSYNC = 313 -- SYS_AIO_RETURN = 314 -- SYS_AIO_SUSPEND = 315 -- SYS_AIO_CANCEL = 316 -- SYS_AIO_ERROR = 317 -- SYS_AIO_READ = 318 -- SYS_AIO_WRITE = 319 -- SYS_LIO_LISTIO = 320 -- SYS_IOPOLICYSYS = 322 -- SYS_PROCESS_POLICY = 323 -- SYS_MLOCKALL = 324 -- SYS_MUNLOCKALL = 325 -- SYS_ISSETUGID = 327 -- SYS___PTHREAD_KILL = 328 -- SYS___PTHREAD_SIGMASK = 329 -- SYS___SIGWAIT = 330 -- SYS___DISABLE_THREADSIGNAL = 331 -- SYS___PTHREAD_MARKCANCEL = 332 -- SYS___PTHREAD_CANCELED = 333 -- SYS___SEMWAIT_SIGNAL = 334 -- SYS_PROC_INFO = 336 -- SYS_SENDFILE = 337 -- SYS_STAT64 = 338 -- SYS_FSTAT64 = 339 -- SYS_LSTAT64 = 340 -- SYS_STAT64_EXTENDED = 341 -- SYS_LSTAT64_EXTENDED = 342 -- SYS_FSTAT64_EXTENDED = 343 -- SYS_GETDIRENTRIES64 = 344 -- SYS_STATFS64 = 345 -- SYS_FSTATFS64 = 346 -- SYS_GETFSSTAT64 = 347 -- SYS___PTHREAD_CHDIR = 348 -- SYS___PTHREAD_FCHDIR = 349 -- SYS_AUDIT = 350 -- SYS_AUDITON = 351 -- SYS_GETAUID = 353 -- SYS_SETAUID = 354 -- SYS_GETAUDIT_ADDR = 357 -- SYS_SETAUDIT_ADDR = 358 -- SYS_AUDITCTL = 359 -- SYS_BSDTHREAD_CREATE = 360 -- SYS_BSDTHREAD_TERMINATE = 361 -- SYS_KQUEUE = 362 -- SYS_KEVENT = 363 -- SYS_LCHOWN = 364 -- SYS_BSDTHREAD_REGISTER = 366 -- SYS_WORKQ_OPEN = 367 -- SYS_WORKQ_KERNRETURN = 368 -- SYS_KEVENT64 = 369 -- SYS___OLD_SEMWAIT_SIGNAL = 370 -- SYS___OLD_SEMWAIT_SIGNAL_NOCANCEL = 371 -- SYS_THREAD_SELFID = 372 -- SYS_LEDGER = 373 -- SYS_KEVENT_QOS = 374 -- SYS_KEVENT_ID = 375 -- SYS___MAC_EXECVE = 380 -- SYS___MAC_SYSCALL = 381 -- SYS___MAC_GET_FILE = 382 -- SYS___MAC_SET_FILE = 383 -- SYS___MAC_GET_LINK = 384 -- SYS___MAC_SET_LINK = 385 -- SYS___MAC_GET_PROC = 386 -- SYS___MAC_SET_PROC = 387 -- SYS___MAC_GET_FD = 388 -- SYS___MAC_SET_FD = 389 -- SYS___MAC_GET_PID = 390 -- SYS_PSELECT = 394 -- SYS_PSELECT_NOCANCEL = 395 -- SYS_READ_NOCANCEL = 396 -- SYS_WRITE_NOCANCEL = 397 -- SYS_OPEN_NOCANCEL = 398 -- SYS_CLOSE_NOCANCEL = 399 -- SYS_WAIT4_NOCANCEL = 400 -- SYS_RECVMSG_NOCANCEL = 401 -- SYS_SENDMSG_NOCANCEL = 402 -- SYS_RECVFROM_NOCANCEL = 403 -- SYS_ACCEPT_NOCANCEL = 404 -- SYS_MSYNC_NOCANCEL = 405 -- SYS_FCNTL_NOCANCEL = 406 -- SYS_SELECT_NOCANCEL = 407 -- SYS_FSYNC_NOCANCEL = 408 -- SYS_CONNECT_NOCANCEL = 409 -- SYS_SIGSUSPEND_NOCANCEL = 410 -- SYS_READV_NOCANCEL = 411 -- SYS_WRITEV_NOCANCEL = 412 -- SYS_SENDTO_NOCANCEL = 413 -- SYS_PREAD_NOCANCEL = 414 -- SYS_PWRITE_NOCANCEL = 415 -- SYS_WAITID_NOCANCEL = 416 -- SYS_POLL_NOCANCEL = 417 -- SYS_MSGSND_NOCANCEL = 418 -- SYS_MSGRCV_NOCANCEL = 419 -- SYS_SEM_WAIT_NOCANCEL = 420 -- SYS_AIO_SUSPEND_NOCANCEL = 421 -- SYS___SIGWAIT_NOCANCEL = 422 -- SYS___SEMWAIT_SIGNAL_NOCANCEL = 423 -- SYS___MAC_MOUNT = 424 -- SYS___MAC_GET_MOUNT = 425 -- SYS___MAC_GETFSSTAT = 426 -- SYS_FSGETPATH = 427 -- SYS_AUDIT_SESSION_SELF = 428 -- SYS_AUDIT_SESSION_JOIN = 429 -- SYS_FILEPORT_MAKEPORT = 430 -- SYS_FILEPORT_MAKEFD = 431 -- SYS_AUDIT_SESSION_PORT = 432 -- SYS_PID_SUSPEND = 433 -- SYS_PID_RESUME = 434 -- SYS_PID_HIBERNATE = 435 -- SYS_PID_SHUTDOWN_SOCKETS = 436 -- SYS_SHARED_REGION_MAP_AND_SLIDE_NP = 438 -- SYS_KAS_INFO = 439 -- SYS_MEMORYSTATUS_CONTROL = 440 -- SYS_GUARDED_OPEN_NP = 441 -- SYS_GUARDED_CLOSE_NP = 442 -- SYS_GUARDED_KQUEUE_NP = 443 -- SYS_CHANGE_FDGUARD_NP = 444 -- SYS_USRCTL = 445 -- SYS_PROC_RLIMIT_CONTROL = 446 -- SYS_CONNECTX = 447 -- SYS_DISCONNECTX = 448 -- SYS_PEELOFF = 449 -- SYS_SOCKET_DELEGATE = 450 -- SYS_TELEMETRY = 451 -- SYS_PROC_UUID_POLICY = 452 -- SYS_MEMORYSTATUS_GET_LEVEL = 453 -- SYS_SYSTEM_OVERRIDE = 454 -- SYS_VFS_PURGE = 455 -- SYS_SFI_CTL = 456 -- SYS_SFI_PIDCTL = 457 -- SYS_COALITION = 458 -- SYS_COALITION_INFO = 459 -- SYS_NECP_MATCH_POLICY = 460 -- SYS_GETATTRLISTBULK = 461 -- SYS_CLONEFILEAT = 462 -- SYS_OPENAT = 463 -- SYS_OPENAT_NOCANCEL = 464 -- SYS_RENAMEAT = 465 -- SYS_FACCESSAT = 466 -- SYS_FCHMODAT = 467 -- SYS_FCHOWNAT = 468 -- SYS_FSTATAT = 469 -- SYS_FSTATAT64 = 470 -- SYS_LINKAT = 471 -- SYS_UNLINKAT = 472 -- SYS_READLINKAT = 473 -- SYS_SYMLINKAT = 474 -- SYS_MKDIRAT = 475 -- SYS_GETATTRLISTAT = 476 -- SYS_PROC_TRACE_LOG = 477 -- SYS_BSDTHREAD_CTL = 478 -- SYS_OPENBYID_NP = 479 -- SYS_RECVMSG_X = 480 -- SYS_SENDMSG_X = 481 -- SYS_THREAD_SELFUSAGE = 482 -- SYS_CSRCTL = 483 -- SYS_GUARDED_OPEN_DPROTECTED_NP = 484 -- SYS_GUARDED_WRITE_NP = 485 -- SYS_GUARDED_PWRITE_NP = 486 -- SYS_GUARDED_WRITEV_NP = 487 -- SYS_RENAMEATX_NP = 488 -- SYS_MREMAP_ENCRYPTED = 489 -- SYS_NETAGENT_TRIGGER = 490 -- SYS_STACK_SNAPSHOT_WITH_CONFIG = 491 -- SYS_MICROSTACKSHOT = 492 -- SYS_GRAB_PGO_DATA = 493 -- SYS_PERSONA = 494 -- SYS_WORK_INTERVAL_CTL = 499 -- SYS_GETENTROPY = 500 -- SYS_NECP_OPEN = 501 -- SYS_NECP_CLIENT_ACTION = 502 -- SYS___NEXUS_OPEN = 503 -- SYS___NEXUS_REGISTER = 504 -- SYS___NEXUS_DEREGISTER = 505 -- SYS___NEXUS_CREATE = 506 -- SYS___NEXUS_DESTROY = 507 -- SYS___NEXUS_GET_OPT = 508 -- SYS___NEXUS_SET_OPT = 509 -- SYS___CHANNEL_OPEN = 510 -- SYS___CHANNEL_GET_INFO = 511 -- SYS___CHANNEL_SYNC = 512 -- SYS___CHANNEL_GET_OPT = 513 -- SYS___CHANNEL_SET_OPT = 514 -- SYS_ULOCK_WAIT = 515 -- SYS_ULOCK_WAKE = 516 -- SYS_FCLONEFILEAT = 517 -- SYS_FS_SNAPSHOT = 518 -- SYS_TERMINATE_WITH_PAYLOAD = 520 -- SYS_ABORT_WITH_PAYLOAD = 521 -- SYS_NECP_SESSION_OPEN = 522 -- SYS_NECP_SESSION_ACTION = 523 -- SYS_SETATTRLISTAT = 524 -- SYS_NET_QOS_GUIDELINE = 525 -- SYS_FMOUNT = 526 -- SYS_NTP_ADJTIME = 527 -- SYS_NTP_GETTIME = 528 -- SYS_OS_FAULT_WITH_PAYLOAD = 529 -- SYS_MAXSYSCALL = 530 -- SYS_INVALID = 63 --) -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_darwin_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_darwin_amd64.go -index 654dd3d..f8298ff 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_darwin_amd64.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_darwin_amd64.go -@@ -1,10 +1,12 @@ - // go run mksysnum.go /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/sys/syscall.h - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build amd64 && darwin - // +build amd64,darwin - - package unix - -+// Deprecated: Use libSystem wrappers instead of direct syscalls. - const ( - SYS_SYSCALL = 0 - SYS_EXIT = 1 -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm.go b/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm.go -deleted file mode 100644 -index 103a72e..0000000 ---- a/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm.go -+++ /dev/null -@@ -1,436 +0,0 @@ --// go run mksysnum.go /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS11.1.sdk/usr/include/sys/syscall.h --// Code generated by the command above; see README.md. DO NOT EDIT. -- --// +build arm,darwin -- --package unix -- --const ( -- SYS_SYSCALL = 0 -- SYS_EXIT = 1 -- SYS_FORK = 2 -- SYS_READ = 3 -- SYS_WRITE = 4 -- SYS_OPEN = 5 -- SYS_CLOSE = 6 -- SYS_WAIT4 = 7 -- SYS_LINK = 9 -- SYS_UNLINK = 10 -- SYS_CHDIR = 12 -- SYS_FCHDIR = 13 -- SYS_MKNOD = 14 -- SYS_CHMOD = 15 -- SYS_CHOWN = 16 -- SYS_GETFSSTAT = 18 -- SYS_GETPID = 20 -- SYS_SETUID = 23 -- SYS_GETUID = 24 -- SYS_GETEUID = 25 -- SYS_PTRACE = 26 -- SYS_RECVMSG = 27 -- SYS_SENDMSG = 28 -- SYS_RECVFROM = 29 -- SYS_ACCEPT = 30 -- SYS_GETPEERNAME = 31 -- SYS_GETSOCKNAME = 32 -- SYS_ACCESS = 33 -- SYS_CHFLAGS = 34 -- SYS_FCHFLAGS = 35 -- SYS_SYNC = 36 -- SYS_KILL = 37 -- SYS_GETPPID = 39 -- SYS_DUP = 41 -- SYS_PIPE = 42 -- SYS_GETEGID = 43 -- SYS_SIGACTION = 46 -- SYS_GETGID = 47 -- SYS_SIGPROCMASK = 48 -- SYS_GETLOGIN = 49 -- SYS_SETLOGIN = 50 -- SYS_ACCT = 51 -- SYS_SIGPENDING = 52 -- SYS_SIGALTSTACK = 53 -- SYS_IOCTL = 54 -- SYS_REBOOT = 55 -- SYS_REVOKE = 56 -- SYS_SYMLINK = 57 -- SYS_READLINK = 58 -- SYS_EXECVE = 59 -- SYS_UMASK = 60 -- SYS_CHROOT = 61 -- SYS_MSYNC = 65 -- SYS_VFORK = 66 -- SYS_MUNMAP = 73 -- SYS_MPROTECT = 74 -- SYS_MADVISE = 75 -- SYS_MINCORE = 78 -- SYS_GETGROUPS = 79 -- SYS_SETGROUPS = 80 -- SYS_GETPGRP = 81 -- SYS_SETPGID = 82 -- SYS_SETITIMER = 83 -- SYS_SWAPON = 85 -- SYS_GETITIMER = 86 -- SYS_GETDTABLESIZE = 89 -- SYS_DUP2 = 90 -- SYS_FCNTL = 92 -- SYS_SELECT = 93 -- SYS_FSYNC = 95 -- SYS_SETPRIORITY = 96 -- SYS_SOCKET = 97 -- SYS_CONNECT = 98 -- SYS_GETPRIORITY = 100 -- SYS_BIND = 104 -- SYS_SETSOCKOPT = 105 -- SYS_LISTEN = 106 -- SYS_SIGSUSPEND = 111 -- SYS_GETTIMEOFDAY = 116 -- SYS_GETRUSAGE = 117 -- SYS_GETSOCKOPT = 118 -- SYS_READV = 120 -- SYS_WRITEV = 121 -- SYS_SETTIMEOFDAY = 122 -- SYS_FCHOWN = 123 -- SYS_FCHMOD = 124 -- SYS_SETREUID = 126 -- SYS_SETREGID = 127 -- SYS_RENAME = 128 -- SYS_FLOCK = 131 -- SYS_MKFIFO = 132 -- SYS_SENDTO = 133 -- SYS_SHUTDOWN = 134 -- SYS_SOCKETPAIR = 135 -- SYS_MKDIR = 136 -- SYS_RMDIR = 137 -- SYS_UTIMES = 138 -- SYS_FUTIMES = 139 -- SYS_ADJTIME = 140 -- SYS_GETHOSTUUID = 142 -- SYS_SETSID = 147 -- SYS_GETPGID = 151 -- SYS_SETPRIVEXEC = 152 -- SYS_PREAD = 153 -- SYS_PWRITE = 154 -- SYS_NFSSVC = 155 -- SYS_STATFS = 157 -- SYS_FSTATFS = 158 -- SYS_UNMOUNT = 159 -- SYS_GETFH = 161 -- SYS_QUOTACTL = 165 -- SYS_MOUNT = 167 -- SYS_CSOPS = 169 -- SYS_CSOPS_AUDITTOKEN = 170 -- SYS_WAITID = 173 -- SYS_KDEBUG_TYPEFILTER = 177 -- SYS_KDEBUG_TRACE_STRING = 178 -- SYS_KDEBUG_TRACE64 = 179 -- SYS_KDEBUG_TRACE = 180 -- SYS_SETGID = 181 -- SYS_SETEGID = 182 -- SYS_SETEUID = 183 -- SYS_SIGRETURN = 184 -- SYS_THREAD_SELFCOUNTS = 186 -- SYS_FDATASYNC = 187 -- SYS_STAT = 188 -- SYS_FSTAT = 189 -- SYS_LSTAT = 190 -- SYS_PATHCONF = 191 -- SYS_FPATHCONF = 192 -- SYS_GETRLIMIT = 194 -- SYS_SETRLIMIT = 195 -- SYS_GETDIRENTRIES = 196 -- SYS_MMAP = 197 -- SYS_LSEEK = 199 -- SYS_TRUNCATE = 200 -- SYS_FTRUNCATE = 201 -- SYS_SYSCTL = 202 -- SYS_MLOCK = 203 -- SYS_MUNLOCK = 204 -- SYS_UNDELETE = 205 -- SYS_OPEN_DPROTECTED_NP = 216 -- SYS_GETATTRLIST = 220 -- SYS_SETATTRLIST = 221 -- SYS_GETDIRENTRIESATTR = 222 -- SYS_EXCHANGEDATA = 223 -- SYS_SEARCHFS = 225 -- SYS_DELETE = 226 -- SYS_COPYFILE = 227 -- SYS_FGETATTRLIST = 228 -- SYS_FSETATTRLIST = 229 -- SYS_POLL = 230 -- SYS_WATCHEVENT = 231 -- SYS_WAITEVENT = 232 -- SYS_MODWATCH = 233 -- SYS_GETXATTR = 234 -- SYS_FGETXATTR = 235 -- SYS_SETXATTR = 236 -- SYS_FSETXATTR = 237 -- SYS_REMOVEXATTR = 238 -- SYS_FREMOVEXATTR = 239 -- SYS_LISTXATTR = 240 -- SYS_FLISTXATTR = 241 -- SYS_FSCTL = 242 -- SYS_INITGROUPS = 243 -- SYS_POSIX_SPAWN = 244 -- SYS_FFSCTL = 245 -- SYS_NFSCLNT = 247 -- SYS_FHOPEN = 248 -- SYS_MINHERIT = 250 -- SYS_SEMSYS = 251 -- SYS_MSGSYS = 252 -- SYS_SHMSYS = 253 -- SYS_SEMCTL = 254 -- SYS_SEMGET = 255 -- SYS_SEMOP = 256 -- SYS_MSGCTL = 258 -- SYS_MSGGET = 259 -- SYS_MSGSND = 260 -- SYS_MSGRCV = 261 -- SYS_SHMAT = 262 -- SYS_SHMCTL = 263 -- SYS_SHMDT = 264 -- SYS_SHMGET = 265 -- SYS_SHM_OPEN = 266 -- SYS_SHM_UNLINK = 267 -- SYS_SEM_OPEN = 268 -- SYS_SEM_CLOSE = 269 -- SYS_SEM_UNLINK = 270 -- SYS_SEM_WAIT = 271 -- SYS_SEM_TRYWAIT = 272 -- SYS_SEM_POST = 273 -- SYS_SYSCTLBYNAME = 274 -- SYS_OPEN_EXTENDED = 277 -- SYS_UMASK_EXTENDED = 278 -- SYS_STAT_EXTENDED = 279 -- SYS_LSTAT_EXTENDED = 280 -- SYS_FSTAT_EXTENDED = 281 -- SYS_CHMOD_EXTENDED = 282 -- SYS_FCHMOD_EXTENDED = 283 -- SYS_ACCESS_EXTENDED = 284 -- SYS_SETTID = 285 -- SYS_GETTID = 286 -- SYS_SETSGROUPS = 287 -- SYS_GETSGROUPS = 288 -- SYS_SETWGROUPS = 289 -- SYS_GETWGROUPS = 290 -- SYS_MKFIFO_EXTENDED = 291 -- SYS_MKDIR_EXTENDED = 292 -- SYS_IDENTITYSVC = 293 -- SYS_SHARED_REGION_CHECK_NP = 294 -- SYS_VM_PRESSURE_MONITOR = 296 -- SYS_PSYNCH_RW_LONGRDLOCK = 297 -- SYS_PSYNCH_RW_YIELDWRLOCK = 298 -- SYS_PSYNCH_RW_DOWNGRADE = 299 -- SYS_PSYNCH_RW_UPGRADE = 300 -- SYS_PSYNCH_MUTEXWAIT = 301 -- SYS_PSYNCH_MUTEXDROP = 302 -- SYS_PSYNCH_CVBROAD = 303 -- SYS_PSYNCH_CVSIGNAL = 304 -- SYS_PSYNCH_CVWAIT = 305 -- SYS_PSYNCH_RW_RDLOCK = 306 -- SYS_PSYNCH_RW_WRLOCK = 307 -- SYS_PSYNCH_RW_UNLOCK = 308 -- SYS_PSYNCH_RW_UNLOCK2 = 309 -- SYS_GETSID = 310 -- SYS_SETTID_WITH_PID = 311 -- SYS_PSYNCH_CVCLRPREPOST = 312 -- SYS_AIO_FSYNC = 313 -- SYS_AIO_RETURN = 314 -- SYS_AIO_SUSPEND = 315 -- SYS_AIO_CANCEL = 316 -- SYS_AIO_ERROR = 317 -- SYS_AIO_READ = 318 -- SYS_AIO_WRITE = 319 -- SYS_LIO_LISTIO = 320 -- SYS_IOPOLICYSYS = 322 -- SYS_PROCESS_POLICY = 323 -- SYS_MLOCKALL = 324 -- SYS_MUNLOCKALL = 325 -- SYS_ISSETUGID = 327 -- SYS___PTHREAD_KILL = 328 -- SYS___PTHREAD_SIGMASK = 329 -- SYS___SIGWAIT = 330 -- SYS___DISABLE_THREADSIGNAL = 331 -- SYS___PTHREAD_MARKCANCEL = 332 -- SYS___PTHREAD_CANCELED = 333 -- SYS___SEMWAIT_SIGNAL = 334 -- SYS_PROC_INFO = 336 -- SYS_SENDFILE = 337 -- SYS_STAT64 = 338 -- SYS_FSTAT64 = 339 -- SYS_LSTAT64 = 340 -- SYS_STAT64_EXTENDED = 341 -- SYS_LSTAT64_EXTENDED = 342 -- SYS_FSTAT64_EXTENDED = 343 -- SYS_GETDIRENTRIES64 = 344 -- SYS_STATFS64 = 345 -- SYS_FSTATFS64 = 346 -- SYS_GETFSSTAT64 = 347 -- SYS___PTHREAD_CHDIR = 348 -- SYS___PTHREAD_FCHDIR = 349 -- SYS_AUDIT = 350 -- SYS_AUDITON = 351 -- SYS_GETAUID = 353 -- SYS_SETAUID = 354 -- SYS_GETAUDIT_ADDR = 357 -- SYS_SETAUDIT_ADDR = 358 -- SYS_AUDITCTL = 359 -- SYS_BSDTHREAD_CREATE = 360 -- SYS_BSDTHREAD_TERMINATE = 361 -- SYS_KQUEUE = 362 -- SYS_KEVENT = 363 -- SYS_LCHOWN = 364 -- SYS_BSDTHREAD_REGISTER = 366 -- SYS_WORKQ_OPEN = 367 -- SYS_WORKQ_KERNRETURN = 368 -- SYS_KEVENT64 = 369 -- SYS___OLD_SEMWAIT_SIGNAL = 370 -- SYS___OLD_SEMWAIT_SIGNAL_NOCANCEL = 371 -- SYS_THREAD_SELFID = 372 -- SYS_LEDGER = 373 -- SYS_KEVENT_QOS = 374 -- SYS_KEVENT_ID = 375 -- SYS___MAC_EXECVE = 380 -- SYS___MAC_SYSCALL = 381 -- SYS___MAC_GET_FILE = 382 -- SYS___MAC_SET_FILE = 383 -- SYS___MAC_GET_LINK = 384 -- SYS___MAC_SET_LINK = 385 -- SYS___MAC_GET_PROC = 386 -- SYS___MAC_SET_PROC = 387 -- SYS___MAC_GET_FD = 388 -- SYS___MAC_SET_FD = 389 -- SYS___MAC_GET_PID = 390 -- SYS_PSELECT = 394 -- SYS_PSELECT_NOCANCEL = 395 -- SYS_READ_NOCANCEL = 396 -- SYS_WRITE_NOCANCEL = 397 -- SYS_OPEN_NOCANCEL = 398 -- SYS_CLOSE_NOCANCEL = 399 -- SYS_WAIT4_NOCANCEL = 400 -- SYS_RECVMSG_NOCANCEL = 401 -- SYS_SENDMSG_NOCANCEL = 402 -- SYS_RECVFROM_NOCANCEL = 403 -- SYS_ACCEPT_NOCANCEL = 404 -- SYS_MSYNC_NOCANCEL = 405 -- SYS_FCNTL_NOCANCEL = 406 -- SYS_SELECT_NOCANCEL = 407 -- SYS_FSYNC_NOCANCEL = 408 -- SYS_CONNECT_NOCANCEL = 409 -- SYS_SIGSUSPEND_NOCANCEL = 410 -- SYS_READV_NOCANCEL = 411 -- SYS_WRITEV_NOCANCEL = 412 -- SYS_SENDTO_NOCANCEL = 413 -- SYS_PREAD_NOCANCEL = 414 -- SYS_PWRITE_NOCANCEL = 415 -- SYS_WAITID_NOCANCEL = 416 -- SYS_POLL_NOCANCEL = 417 -- SYS_MSGSND_NOCANCEL = 418 -- SYS_MSGRCV_NOCANCEL = 419 -- SYS_SEM_WAIT_NOCANCEL = 420 -- SYS_AIO_SUSPEND_NOCANCEL = 421 -- SYS___SIGWAIT_NOCANCEL = 422 -- SYS___SEMWAIT_SIGNAL_NOCANCEL = 423 -- SYS___MAC_MOUNT = 424 -- SYS___MAC_GET_MOUNT = 425 -- SYS___MAC_GETFSSTAT = 426 -- SYS_FSGETPATH = 427 -- SYS_AUDIT_SESSION_SELF = 428 -- SYS_AUDIT_SESSION_JOIN = 429 -- SYS_FILEPORT_MAKEPORT = 430 -- SYS_FILEPORT_MAKEFD = 431 -- SYS_AUDIT_SESSION_PORT = 432 -- SYS_PID_SUSPEND = 433 -- SYS_PID_RESUME = 434 -- SYS_PID_HIBERNATE = 435 -- SYS_PID_SHUTDOWN_SOCKETS = 436 -- SYS_SHARED_REGION_MAP_AND_SLIDE_NP = 438 -- SYS_KAS_INFO = 439 -- SYS_MEMORYSTATUS_CONTROL = 440 -- SYS_GUARDED_OPEN_NP = 441 -- SYS_GUARDED_CLOSE_NP = 442 -- SYS_GUARDED_KQUEUE_NP = 443 -- SYS_CHANGE_FDGUARD_NP = 444 -- SYS_USRCTL = 445 -- SYS_PROC_RLIMIT_CONTROL = 446 -- SYS_CONNECTX = 447 -- SYS_DISCONNECTX = 448 -- SYS_PEELOFF = 449 -- SYS_SOCKET_DELEGATE = 450 -- SYS_TELEMETRY = 451 -- SYS_PROC_UUID_POLICY = 452 -- SYS_MEMORYSTATUS_GET_LEVEL = 453 -- SYS_SYSTEM_OVERRIDE = 454 -- SYS_VFS_PURGE = 455 -- SYS_SFI_CTL = 456 -- SYS_SFI_PIDCTL = 457 -- SYS_COALITION = 458 -- SYS_COALITION_INFO = 459 -- SYS_NECP_MATCH_POLICY = 460 -- SYS_GETATTRLISTBULK = 461 -- SYS_CLONEFILEAT = 462 -- SYS_OPENAT = 463 -- SYS_OPENAT_NOCANCEL = 464 -- SYS_RENAMEAT = 465 -- SYS_FACCESSAT = 466 -- SYS_FCHMODAT = 467 -- SYS_FCHOWNAT = 468 -- SYS_FSTATAT = 469 -- SYS_FSTATAT64 = 470 -- SYS_LINKAT = 471 -- SYS_UNLINKAT = 472 -- SYS_READLINKAT = 473 -- SYS_SYMLINKAT = 474 -- SYS_MKDIRAT = 475 -- SYS_GETATTRLISTAT = 476 -- SYS_PROC_TRACE_LOG = 477 -- SYS_BSDTHREAD_CTL = 478 -- SYS_OPENBYID_NP = 479 -- SYS_RECVMSG_X = 480 -- SYS_SENDMSG_X = 481 -- SYS_THREAD_SELFUSAGE = 482 -- SYS_CSRCTL = 483 -- SYS_GUARDED_OPEN_DPROTECTED_NP = 484 -- SYS_GUARDED_WRITE_NP = 485 -- SYS_GUARDED_PWRITE_NP = 486 -- SYS_GUARDED_WRITEV_NP = 487 -- SYS_RENAMEATX_NP = 488 -- SYS_MREMAP_ENCRYPTED = 489 -- SYS_NETAGENT_TRIGGER = 490 -- SYS_STACK_SNAPSHOT_WITH_CONFIG = 491 -- SYS_MICROSTACKSHOT = 492 -- SYS_GRAB_PGO_DATA = 493 -- SYS_PERSONA = 494 -- SYS_WORK_INTERVAL_CTL = 499 -- SYS_GETENTROPY = 500 -- SYS_NECP_OPEN = 501 -- SYS_NECP_CLIENT_ACTION = 502 -- SYS___NEXUS_OPEN = 503 -- SYS___NEXUS_REGISTER = 504 -- SYS___NEXUS_DEREGISTER = 505 -- SYS___NEXUS_CREATE = 506 -- SYS___NEXUS_DESTROY = 507 -- SYS___NEXUS_GET_OPT = 508 -- SYS___NEXUS_SET_OPT = 509 -- SYS___CHANNEL_OPEN = 510 -- SYS___CHANNEL_GET_INFO = 511 -- SYS___CHANNEL_SYNC = 512 -- SYS___CHANNEL_GET_OPT = 513 -- SYS___CHANNEL_SET_OPT = 514 -- SYS_ULOCK_WAIT = 515 -- SYS_ULOCK_WAKE = 516 -- SYS_FCLONEFILEAT = 517 -- SYS_FS_SNAPSHOT = 518 -- SYS_TERMINATE_WITH_PAYLOAD = 520 -- SYS_ABORT_WITH_PAYLOAD = 521 -- SYS_NECP_SESSION_OPEN = 522 -- SYS_NECP_SESSION_ACTION = 523 -- SYS_SETATTRLISTAT = 524 -- SYS_NET_QOS_GUIDELINE = 525 -- SYS_FMOUNT = 526 -- SYS_NTP_ADJTIME = 527 -- SYS_NTP_GETTIME = 528 -- SYS_OS_FAULT_WITH_PAYLOAD = 529 -- SYS_MAXSYSCALL = 530 -- SYS_INVALID = 63 --) -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm64.go b/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm64.go -index 7ab2130..5eb433b 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm64.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_darwin_arm64.go -@@ -1,10 +1,12 @@ - // go run mksysnum.go /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS11.1.sdk/usr/include/sys/syscall.h - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build arm64 && darwin - // +build arm64,darwin - - package unix - -+// Deprecated: Use libSystem wrappers instead of direct syscalls. - const ( - SYS_SYSCALL = 0 - SYS_EXIT = 1 -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go -index 464c9a9..703675c 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go -@@ -1,134 +1,131 @@ - // go run mksysnum.go https://gitweb.dragonflybsd.org/dragonfly.git/blob_plain/HEAD:/sys/kern/syscalls.master - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build amd64 && dragonfly - // +build amd64,dragonfly - - package unix - - const ( -- // SYS_NOSYS = 0; // { int nosys(void); } syscall nosys_args int -- SYS_EXIT = 1 // { void exit(int rval); } -- SYS_FORK = 2 // { int fork(void); } -- SYS_READ = 3 // { ssize_t read(int fd, void *buf, size_t nbyte); } -- SYS_WRITE = 4 // { ssize_t write(int fd, const void *buf, size_t nbyte); } -- SYS_OPEN = 5 // { int open(char *path, int flags, int mode); } -- SYS_CLOSE = 6 // { int close(int fd); } -- SYS_WAIT4 = 7 // { int wait4(int pid, int *status, int options, struct rusage *rusage); } wait4 wait_args int -- SYS_LINK = 9 // { int link(char *path, char *link); } -- SYS_UNLINK = 10 // { int unlink(char *path); } -- SYS_CHDIR = 12 // { int chdir(char *path); } -- SYS_FCHDIR = 13 // { int fchdir(int fd); } -- SYS_MKNOD = 14 // { int mknod(char *path, int mode, int dev); } -- SYS_CHMOD = 15 // { int chmod(char *path, int mode); } -- SYS_CHOWN = 16 // { int chown(char *path, int uid, int gid); } -- SYS_OBREAK = 17 // { int obreak(char *nsize); } break obreak_args int -- SYS_GETFSSTAT = 18 // { int getfsstat(struct statfs *buf, long bufsize, int flags); } -- SYS_GETPID = 20 // { pid_t getpid(void); } -- SYS_MOUNT = 21 // { int mount(char *type, char *path, int flags, caddr_t data); } -- SYS_UNMOUNT = 22 // { int unmount(char *path, int flags); } -- SYS_SETUID = 23 // { int setuid(uid_t uid); } -- SYS_GETUID = 24 // { uid_t getuid(void); } -- SYS_GETEUID = 25 // { uid_t geteuid(void); } -- SYS_PTRACE = 26 // { int ptrace(int req, pid_t pid, caddr_t addr, int data); } -- SYS_RECVMSG = 27 // { int recvmsg(int s, struct msghdr *msg, int flags); } -- SYS_SENDMSG = 28 // { int sendmsg(int s, caddr_t msg, int flags); } -- SYS_RECVFROM = 29 // { int recvfrom(int s, caddr_t buf, size_t len, int flags, caddr_t from, int *fromlenaddr); } -- SYS_ACCEPT = 30 // { int accept(int s, caddr_t name, int *anamelen); } -- SYS_GETPEERNAME = 31 // { int getpeername(int fdes, caddr_t asa, int *alen); } -- SYS_GETSOCKNAME = 32 // { int getsockname(int fdes, caddr_t asa, int *alen); } -- SYS_ACCESS = 33 // { int access(char *path, int flags); } -- SYS_CHFLAGS = 34 // { int chflags(char *path, int flags); } -- SYS_FCHFLAGS = 35 // { int fchflags(int fd, int flags); } -- SYS_SYNC = 36 // { int sync(void); } -- SYS_KILL = 37 // { int kill(int pid, int signum); } -- SYS_GETPPID = 39 // { pid_t getppid(void); } -- SYS_DUP = 41 // { int dup(int fd); } -- SYS_PIPE = 42 // { int pipe(void); } -- SYS_GETEGID = 43 // { gid_t getegid(void); } -- SYS_PROFIL = 44 // { int profil(caddr_t samples, size_t size, size_t offset, u_int scale); } -- SYS_KTRACE = 45 // { int ktrace(const char *fname, int ops, int facs, int pid); } -- SYS_GETGID = 47 // { gid_t getgid(void); } -- SYS_GETLOGIN = 49 // { int getlogin(char *namebuf, u_int namelen); } -- SYS_SETLOGIN = 50 // { int setlogin(char *namebuf); } -- SYS_ACCT = 51 // { int acct(char *path); } -- SYS_SIGALTSTACK = 53 // { int sigaltstack(stack_t *ss, stack_t *oss); } -- SYS_IOCTL = 54 // { int ioctl(int fd, u_long com, caddr_t data); } -- SYS_REBOOT = 55 // { int reboot(int opt); } -- SYS_REVOKE = 56 // { int revoke(char *path); } -- SYS_SYMLINK = 57 // { int symlink(char *path, char *link); } -- SYS_READLINK = 58 // { int readlink(char *path, char *buf, int count); } -- SYS_EXECVE = 59 // { int execve(char *fname, char **argv, char **envv); } -- SYS_UMASK = 60 // { int umask(int newmask); } umask umask_args int -- SYS_CHROOT = 61 // { int chroot(char *path); } -- SYS_MSYNC = 65 // { int msync(void *addr, size_t len, int flags); } -- SYS_VFORK = 66 // { pid_t vfork(void); } -- SYS_SBRK = 69 // { int sbrk(int incr); } -- SYS_SSTK = 70 // { int sstk(int incr); } -- SYS_MUNMAP = 73 // { int munmap(void *addr, size_t len); } -- SYS_MPROTECT = 74 // { int mprotect(void *addr, size_t len, int prot); } -- SYS_MADVISE = 75 // { int madvise(void *addr, size_t len, int behav); } -- SYS_MINCORE = 78 // { int mincore(const void *addr, size_t len, char *vec); } -- SYS_GETGROUPS = 79 // { int getgroups(u_int gidsetsize, gid_t *gidset); } -- SYS_SETGROUPS = 80 // { int setgroups(u_int gidsetsize, gid_t *gidset); } -- SYS_GETPGRP = 81 // { int getpgrp(void); } -- SYS_SETPGID = 82 // { int setpgid(int pid, int pgid); } -- SYS_SETITIMER = 83 // { int setitimer(u_int which, struct itimerval *itv, struct itimerval *oitv); } -- SYS_SWAPON = 85 // { int swapon(char *name); } -- SYS_GETITIMER = 86 // { int getitimer(u_int which, struct itimerval *itv); } -- SYS_GETDTABLESIZE = 89 // { int getdtablesize(void); } -- SYS_DUP2 = 90 // { int dup2(int from, int to); } -- SYS_FCNTL = 92 // { int fcntl(int fd, int cmd, long arg); } -- SYS_SELECT = 93 // { int select(int nd, fd_set *in, fd_set *ou, fd_set *ex, struct timeval *tv); } -- SYS_FSYNC = 95 // { int fsync(int fd); } -- SYS_SETPRIORITY = 96 // { int setpriority(int which, int who, int prio); } -- SYS_SOCKET = 97 // { int socket(int domain, int type, int protocol); } -- SYS_CONNECT = 98 // { int connect(int s, caddr_t name, int namelen); } -- SYS_GETPRIORITY = 100 // { int getpriority(int which, int who); } -- SYS_BIND = 104 // { int bind(int s, caddr_t name, int namelen); } -- SYS_SETSOCKOPT = 105 // { int setsockopt(int s, int level, int name, caddr_t val, int valsize); } -- SYS_LISTEN = 106 // { int listen(int s, int backlog); } -- SYS_GETTIMEOFDAY = 116 // { int gettimeofday(struct timeval *tp, struct timezone *tzp); } -- SYS_GETRUSAGE = 117 // { int getrusage(int who, struct rusage *rusage); } -- SYS_GETSOCKOPT = 118 // { int getsockopt(int s, int level, int name, caddr_t val, int *avalsize); } -- SYS_READV = 120 // { int readv(int fd, struct iovec *iovp, u_int iovcnt); } -- SYS_WRITEV = 121 // { int writev(int fd, struct iovec *iovp, u_int iovcnt); } -- SYS_SETTIMEOFDAY = 122 // { int settimeofday(struct timeval *tv, struct timezone *tzp); } -- SYS_FCHOWN = 123 // { int fchown(int fd, int uid, int gid); } -- SYS_FCHMOD = 124 // { int fchmod(int fd, int mode); } -- SYS_SETREUID = 126 // { int setreuid(int ruid, int euid); } -- SYS_SETREGID = 127 // { int setregid(int rgid, int egid); } -- SYS_RENAME = 128 // { int rename(char *from, char *to); } -- SYS_FLOCK = 131 // { int flock(int fd, int how); } -- SYS_MKFIFO = 132 // { int mkfifo(char *path, int mode); } -- SYS_SENDTO = 133 // { int sendto(int s, caddr_t buf, size_t len, int flags, caddr_t to, int tolen); } -- SYS_SHUTDOWN = 134 // { int shutdown(int s, int how); } -- SYS_SOCKETPAIR = 135 // { int socketpair(int domain, int type, int protocol, int *rsv); } -- SYS_MKDIR = 136 // { int mkdir(char *path, int mode); } -- SYS_RMDIR = 137 // { int rmdir(char *path); } -- SYS_UTIMES = 138 // { int utimes(char *path, struct timeval *tptr); } -- SYS_ADJTIME = 140 // { int adjtime(struct timeval *delta, struct timeval *olddelta); } -- SYS_SETSID = 147 // { int setsid(void); } -- SYS_QUOTACTL = 148 // { int quotactl(char *path, int cmd, int uid, caddr_t arg); } -- SYS_STATFS = 157 // { int statfs(char *path, struct statfs *buf); } -- SYS_FSTATFS = 158 // { int fstatfs(int fd, struct statfs *buf); } -- SYS_GETFH = 161 // { int getfh(char *fname, struct fhandle *fhp); } -- SYS_GETDOMAINNAME = 162 // { int getdomainname(char *domainname, int len); } -- SYS_SETDOMAINNAME = 163 // { int setdomainname(char *domainname, int len); } -- SYS_UNAME = 164 // { int uname(struct utsname *name); } -- SYS_SYSARCH = 165 // { int sysarch(int op, char *parms); } -- SYS_RTPRIO = 166 // { int rtprio(int function, pid_t pid, struct rtprio *rtp); } -- SYS_EXTPREAD = 173 // { ssize_t extpread(int fd, void *buf, size_t nbyte, int flags, off_t offset); } -- SYS_EXTPWRITE = 174 // { ssize_t extpwrite(int fd, const void *buf, size_t nbyte, int flags, off_t offset); } -- SYS_NTP_ADJTIME = 176 // { int ntp_adjtime(struct timex *tp); } -- SYS_SETGID = 181 // { int setgid(gid_t gid); } -- SYS_SETEGID = 182 // { int setegid(gid_t egid); } -- SYS_SETEUID = 183 // { int seteuid(uid_t euid); } -- SYS_PATHCONF = 191 // { int pathconf(char *path, int name); } -- SYS_FPATHCONF = 192 // { int fpathconf(int fd, int name); } -- SYS_GETRLIMIT = 194 // { int getrlimit(u_int which, struct rlimit *rlp); } getrlimit __getrlimit_args int -- SYS_SETRLIMIT = 195 // { int setrlimit(u_int which, struct rlimit *rlp); } setrlimit __setrlimit_args int -- SYS_MMAP = 197 // { caddr_t mmap(caddr_t addr, size_t len, int prot, int flags, int fd, int pad, off_t pos); } -- // SYS_NOSYS = 198; // { int nosys(void); } __syscall __syscall_args int -+ SYS_EXIT = 1 // { void exit(int rval); } -+ SYS_FORK = 2 // { int fork(void); } -+ SYS_READ = 3 // { ssize_t read(int fd, void *buf, size_t nbyte); } -+ SYS_WRITE = 4 // { ssize_t write(int fd, const void *buf, size_t nbyte); } -+ SYS_OPEN = 5 // { int open(char *path, int flags, int mode); } -+ SYS_CLOSE = 6 // { int close(int fd); } -+ SYS_WAIT4 = 7 // { int wait4(int pid, int *status, int options, struct rusage *rusage); } wait4 wait_args int -+ // SYS_NOSYS = 8; // { int nosys(void); } __nosys nosys_args int -+ SYS_LINK = 9 // { int link(char *path, char *link); } -+ SYS_UNLINK = 10 // { int unlink(char *path); } -+ SYS_CHDIR = 12 // { int chdir(char *path); } -+ SYS_FCHDIR = 13 // { int fchdir(int fd); } -+ SYS_MKNOD = 14 // { int mknod(char *path, int mode, int dev); } -+ SYS_CHMOD = 15 // { int chmod(char *path, int mode); } -+ SYS_CHOWN = 16 // { int chown(char *path, int uid, int gid); } -+ SYS_OBREAK = 17 // { int obreak(char *nsize); } break obreak_args int -+ SYS_GETFSSTAT = 18 // { int getfsstat(struct statfs *buf, long bufsize, int flags); } -+ SYS_GETPID = 20 // { pid_t getpid(void); } -+ SYS_MOUNT = 21 // { int mount(char *type, char *path, int flags, caddr_t data); } -+ SYS_UNMOUNT = 22 // { int unmount(char *path, int flags); } -+ SYS_SETUID = 23 // { int setuid(uid_t uid); } -+ SYS_GETUID = 24 // { uid_t getuid(void); } -+ SYS_GETEUID = 25 // { uid_t geteuid(void); } -+ SYS_PTRACE = 26 // { int ptrace(int req, pid_t pid, caddr_t addr, int data); } -+ SYS_RECVMSG = 27 // { int recvmsg(int s, struct msghdr *msg, int flags); } -+ SYS_SENDMSG = 28 // { int sendmsg(int s, caddr_t msg, int flags); } -+ SYS_RECVFROM = 29 // { int recvfrom(int s, caddr_t buf, size_t len, int flags, caddr_t from, int *fromlenaddr); } -+ SYS_ACCEPT = 30 // { int accept(int s, caddr_t name, int *anamelen); } -+ SYS_GETPEERNAME = 31 // { int getpeername(int fdes, caddr_t asa, int *alen); } -+ SYS_GETSOCKNAME = 32 // { int getsockname(int fdes, caddr_t asa, int *alen); } -+ SYS_ACCESS = 33 // { int access(char *path, int flags); } -+ SYS_CHFLAGS = 34 // { int chflags(const char *path, u_long flags); } -+ SYS_FCHFLAGS = 35 // { int fchflags(int fd, u_long flags); } -+ SYS_SYNC = 36 // { int sync(void); } -+ SYS_KILL = 37 // { int kill(int pid, int signum); } -+ SYS_GETPPID = 39 // { pid_t getppid(void); } -+ SYS_DUP = 41 // { int dup(int fd); } -+ SYS_PIPE = 42 // { int pipe(void); } -+ SYS_GETEGID = 43 // { gid_t getegid(void); } -+ SYS_PROFIL = 44 // { int profil(caddr_t samples, size_t size, u_long offset, u_int scale); } -+ SYS_KTRACE = 45 // { int ktrace(const char *fname, int ops, int facs, int pid); } -+ SYS_GETGID = 47 // { gid_t getgid(void); } -+ SYS_GETLOGIN = 49 // { int getlogin(char *namebuf, size_t namelen); } -+ SYS_SETLOGIN = 50 // { int setlogin(char *namebuf); } -+ SYS_ACCT = 51 // { int acct(char *path); } -+ SYS_SIGALTSTACK = 53 // { int sigaltstack(stack_t *ss, stack_t *oss); } -+ SYS_IOCTL = 54 // { int ioctl(int fd, u_long com, caddr_t data); } -+ SYS_REBOOT = 55 // { int reboot(int opt); } -+ SYS_REVOKE = 56 // { int revoke(char *path); } -+ SYS_SYMLINK = 57 // { int symlink(char *path, char *link); } -+ SYS_READLINK = 58 // { int readlink(char *path, char *buf, int count); } -+ SYS_EXECVE = 59 // { int execve(char *fname, char **argv, char **envv); } -+ SYS_UMASK = 60 // { int umask(int newmask); } umask umask_args int -+ SYS_CHROOT = 61 // { int chroot(char *path); } -+ SYS_MSYNC = 65 // { int msync(void *addr, size_t len, int flags); } -+ SYS_VFORK = 66 // { pid_t vfork(void); } -+ SYS_SBRK = 69 // { caddr_t sbrk(size_t incr); } -+ SYS_SSTK = 70 // { int sstk(size_t incr); } -+ SYS_MUNMAP = 73 // { int munmap(void *addr, size_t len); } -+ SYS_MPROTECT = 74 // { int mprotect(void *addr, size_t len, int prot); } -+ SYS_MADVISE = 75 // { int madvise(void *addr, size_t len, int behav); } -+ SYS_MINCORE = 78 // { int mincore(const void *addr, size_t len, char *vec); } -+ SYS_GETGROUPS = 79 // { int getgroups(u_int gidsetsize, gid_t *gidset); } -+ SYS_SETGROUPS = 80 // { int setgroups(u_int gidsetsize, gid_t *gidset); } -+ SYS_GETPGRP = 81 // { int getpgrp(void); } -+ SYS_SETPGID = 82 // { int setpgid(int pid, int pgid); } -+ SYS_SETITIMER = 83 // { int setitimer(u_int which, struct itimerval *itv, struct itimerval *oitv); } -+ SYS_SWAPON = 85 // { int swapon(char *name); } -+ SYS_GETITIMER = 86 // { int getitimer(u_int which, struct itimerval *itv); } -+ SYS_GETDTABLESIZE = 89 // { int getdtablesize(void); } -+ SYS_DUP2 = 90 // { int dup2(int from, int to); } -+ SYS_FCNTL = 92 // { int fcntl(int fd, int cmd, long arg); } -+ SYS_SELECT = 93 // { int select(int nd, fd_set *in, fd_set *ou, fd_set *ex, struct timeval *tv); } -+ SYS_FSYNC = 95 // { int fsync(int fd); } -+ SYS_SETPRIORITY = 96 // { int setpriority(int which, int who, int prio); } -+ SYS_SOCKET = 97 // { int socket(int domain, int type, int protocol); } -+ SYS_CONNECT = 98 // { int connect(int s, caddr_t name, int namelen); } -+ SYS_GETPRIORITY = 100 // { int getpriority(int which, int who); } -+ SYS_BIND = 104 // { int bind(int s, caddr_t name, int namelen); } -+ SYS_SETSOCKOPT = 105 // { int setsockopt(int s, int level, int name, caddr_t val, int valsize); } -+ SYS_LISTEN = 106 // { int listen(int s, int backlog); } -+ SYS_GETTIMEOFDAY = 116 // { int gettimeofday(struct timeval *tp, struct timezone *tzp); } -+ SYS_GETRUSAGE = 117 // { int getrusage(int who, struct rusage *rusage); } -+ SYS_GETSOCKOPT = 118 // { int getsockopt(int s, int level, int name, caddr_t val, int *avalsize); } -+ SYS_READV = 120 // { int readv(int fd, struct iovec *iovp, u_int iovcnt); } -+ SYS_WRITEV = 121 // { int writev(int fd, struct iovec *iovp, u_int iovcnt); } -+ SYS_SETTIMEOFDAY = 122 // { int settimeofday(struct timeval *tv, struct timezone *tzp); } -+ SYS_FCHOWN = 123 // { int fchown(int fd, int uid, int gid); } -+ SYS_FCHMOD = 124 // { int fchmod(int fd, int mode); } -+ SYS_SETREUID = 126 // { int setreuid(int ruid, int euid); } -+ SYS_SETREGID = 127 // { int setregid(int rgid, int egid); } -+ SYS_RENAME = 128 // { int rename(char *from, char *to); } -+ SYS_FLOCK = 131 // { int flock(int fd, int how); } -+ SYS_MKFIFO = 132 // { int mkfifo(char *path, int mode); } -+ SYS_SENDTO = 133 // { int sendto(int s, caddr_t buf, size_t len, int flags, caddr_t to, int tolen); } -+ SYS_SHUTDOWN = 134 // { int shutdown(int s, int how); } -+ SYS_SOCKETPAIR = 135 // { int socketpair(int domain, int type, int protocol, int *rsv); } -+ SYS_MKDIR = 136 // { int mkdir(char *path, int mode); } -+ SYS_RMDIR = 137 // { int rmdir(char *path); } -+ SYS_UTIMES = 138 // { int utimes(char *path, struct timeval *tptr); } -+ SYS_ADJTIME = 140 // { int adjtime(struct timeval *delta, struct timeval *olddelta); } -+ SYS_SETSID = 147 // { int setsid(void); } -+ SYS_QUOTACTL = 148 // { int quotactl(char *path, int cmd, int uid, caddr_t arg); } -+ SYS_STATFS = 157 // { int statfs(char *path, struct statfs *buf); } -+ SYS_FSTATFS = 158 // { int fstatfs(int fd, struct statfs *buf); } -+ SYS_GETFH = 161 // { int getfh(char *fname, struct fhandle *fhp); } -+ SYS_SYSARCH = 165 // { int sysarch(int op, char *parms); } -+ SYS_RTPRIO = 166 // { int rtprio(int function, pid_t pid, struct rtprio *rtp); } -+ SYS_EXTPREAD = 173 // { ssize_t extpread(int fd, void *buf, size_t nbyte, int flags, off_t offset); } -+ SYS_EXTPWRITE = 174 // { ssize_t extpwrite(int fd, const void *buf, size_t nbyte, int flags, off_t offset); } -+ SYS_NTP_ADJTIME = 176 // { int ntp_adjtime(struct timex *tp); } -+ SYS_SETGID = 181 // { int setgid(gid_t gid); } -+ SYS_SETEGID = 182 // { int setegid(gid_t egid); } -+ SYS_SETEUID = 183 // { int seteuid(uid_t euid); } -+ SYS_PATHCONF = 191 // { int pathconf(char *path, int name); } -+ SYS_FPATHCONF = 192 // { int fpathconf(int fd, int name); } -+ SYS_GETRLIMIT = 194 // { int getrlimit(u_int which, struct rlimit *rlp); } getrlimit __getrlimit_args int -+ SYS_SETRLIMIT = 195 // { int setrlimit(u_int which, struct rlimit *rlp); } setrlimit __setrlimit_args int -+ SYS_MMAP = 197 // { caddr_t mmap(caddr_t addr, size_t len, int prot, int flags, int fd, int pad, off_t pos); } - SYS_LSEEK = 199 // { off_t lseek(int fd, int pad, off_t offset, int whence); } - SYS_TRUNCATE = 200 // { int truncate(char *path, int pad, off_t length); } - SYS_FTRUNCATE = 201 // { int ftruncate(int fd, int pad, off_t length); } -@@ -161,8 +158,8 @@ const ( - SYS_LCHOWN = 254 // { int lchown(char *path, int uid, int gid); } - SYS_LCHMOD = 274 // { int lchmod(char *path, mode_t mode); } - SYS_LUTIMES = 276 // { int lutimes(char *path, struct timeval *tptr); } -- SYS_EXTPREADV = 289 // { ssize_t extpreadv(int fd, struct iovec *iovp, u_int iovcnt, int flags, off_t offset); } -- SYS_EXTPWRITEV = 290 // { ssize_t extpwritev(int fd, struct iovec *iovp,u_int iovcnt, int flags, off_t offset); } -+ SYS_EXTPREADV = 289 // { ssize_t extpreadv(int fd, const struct iovec *iovp, int iovcnt, int flags, off_t offset); } -+ SYS_EXTPWRITEV = 290 // { ssize_t extpwritev(int fd, const struct iovec *iovp, int iovcnt, int flags, off_t offset); } - SYS_FHSTATFS = 297 // { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); } - SYS_FHOPEN = 298 // { int fhopen(const struct fhandle *u_fhp, int flags); } - SYS_MODNEXT = 300 // { int modnext(int modid); } -@@ -225,7 +222,7 @@ const ( - SYS_KQUEUE = 362 // { int kqueue(void); } - SYS_KEVENT = 363 // { int kevent(int fd, const struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); } - SYS_KENV = 390 // { int kenv(int what, const char *name, char *value, int len); } -- SYS_LCHFLAGS = 391 // { int lchflags(char *path, int flags); } -+ SYS_LCHFLAGS = 391 // { int lchflags(const char *path, u_long flags); } - SYS_UUIDGEN = 392 // { int uuidgen(struct uuid *store, int count); } - SYS_SENDFILE = 393 // { int sendfile(int fd, int s, off_t offset, size_t nbytes, struct sf_hdtr *hdtr, off_t *sbytes, int flags); } - SYS_VARSYM_SET = 450 // { int varsym_set(int level, const char *name, const char *data); } -@@ -302,7 +299,7 @@ const ( - SYS_VMM_GUEST_CTL = 534 // { int vmm_guest_ctl(int op, struct vmm_guest_options *options); } - SYS_VMM_GUEST_SYNC_ADDR = 535 // { int vmm_guest_sync_addr(long *dstaddr, long *srcaddr); } - SYS_PROCCTL = 536 // { int procctl(idtype_t idtype, id_t id, int cmd, void *data); } -- SYS_CHFLAGSAT = 537 // { int chflagsat(int fd, const char *path, int flags, int atflags);} -+ SYS_CHFLAGSAT = 537 // { int chflagsat(int fd, const char *path, u_long flags, int atflags);} - SYS_PIPE2 = 538 // { int pipe2(int *fildes, int flags); } - SYS_UTIMENSAT = 539 // { int utimensat(int fd, const char *path, const struct timespec *ts, int flags); } - SYS_FUTIMENS = 540 // { int futimens(int fd, const struct timespec *ts); } -@@ -312,4 +309,9 @@ const ( - SYS_LWP_SETAFFINITY = 544 // { int lwp_setaffinity(pid_t pid, lwpid_t tid, const cpumask_t *mask); } - SYS_LWP_GETAFFINITY = 545 // { int lwp_getaffinity(pid_t pid, lwpid_t tid, cpumask_t *mask); } - SYS_LWP_CREATE2 = 546 // { int lwp_create2(struct lwp_params *params, const cpumask_t *mask); } -+ SYS_GETCPUCLOCKID = 547 // { int getcpuclockid(pid_t pid, lwpid_t lwp_id, clockid_t *clock_id); } -+ SYS_WAIT6 = 548 // { int wait6(idtype_t idtype, id_t id, int *status, int options, struct __wrusage *wrusage, siginfo_t *info); } -+ SYS_LWP_GETNAME = 549 // { int lwp_getname(lwpid_t tid, char *name, size_t len); } -+ SYS_GETRANDOM = 550 // { ssize_t getrandom(void *buf, size_t len, unsigned flags); } -+ SYS___REALPATH = 551 // { ssize_t __realpath(const char *path, char *buf, size_t len); } - ) -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_freebsd_386.go b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_386.go -index 9474974..4e0d961 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_freebsd_386.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_386.go -@@ -1,6 +1,7 @@ --// go run mksysnum.go https://svn.freebsd.org/base/stable/11/sys/kern/syscalls.master -+// go run mksysnum.go https://cgit.freebsd.org/src/plain/sys/kern/syscalls.master?h=stable/12 - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build 386 && freebsd - // +build 386,freebsd - - package unix -@@ -18,10 +19,9 @@ const ( - SYS_UNLINK = 10 // { int unlink(char *path); } - SYS_CHDIR = 12 // { int chdir(char *path); } - SYS_FCHDIR = 13 // { int fchdir(int fd); } -- SYS_MKNOD = 14 // { int mknod(char *path, int mode, int dev); } - SYS_CHMOD = 15 // { int chmod(char *path, int mode); } - SYS_CHOWN = 16 // { int chown(char *path, int uid, int gid); } -- SYS_OBREAK = 17 // { int obreak(char *nsize); } break obreak_args int -+ SYS_BREAK = 17 // { caddr_t break(char *nsize); } - SYS_GETPID = 20 // { pid_t getpid(void); } - SYS_MOUNT = 21 // { int mount(char *type, char *path, int flags, caddr_t data); } - SYS_UNMOUNT = 22 // { int unmount(char *path, int flags); } -@@ -42,7 +42,6 @@ const ( - SYS_KILL = 37 // { int kill(int pid, int signum); } - SYS_GETPPID = 39 // { pid_t getppid(void); } - SYS_DUP = 41 // { int dup(u_int fd); } -- SYS_PIPE = 42 // { int pipe(void); } - SYS_GETEGID = 43 // { gid_t getegid(void); } - SYS_PROFIL = 44 // { int profil(caddr_t samples, size_t size, size_t offset, u_int scale); } - SYS_KTRACE = 45 // { int ktrace(const char *fname, int ops, int facs, int pid); } -@@ -57,15 +56,14 @@ const ( - SYS_SYMLINK = 57 // { int symlink(char *path, char *link); } - SYS_READLINK = 58 // { ssize_t readlink(char *path, char *buf, size_t count); } - SYS_EXECVE = 59 // { int execve(char *fname, char **argv, char **envv); } -- SYS_UMASK = 60 // { int umask(int newmask); } umask umask_args int -+ SYS_UMASK = 60 // { int umask(int newmask); } - SYS_CHROOT = 61 // { int chroot(char *path); } - SYS_MSYNC = 65 // { int msync(void *addr, size_t len, int flags); } - SYS_VFORK = 66 // { int vfork(void); } - SYS_SBRK = 69 // { int sbrk(int incr); } - SYS_SSTK = 70 // { int sstk(int incr); } -- SYS_OVADVISE = 72 // { int ovadvise(int anom); } vadvise ovadvise_args int - SYS_MUNMAP = 73 // { int munmap(void *addr, size_t len); } -- SYS_MPROTECT = 74 // { int mprotect(const void *addr, size_t len, int prot); } -+ SYS_MPROTECT = 74 // { int mprotect(void *addr, size_t len, int prot); } - SYS_MADVISE = 75 // { int madvise(void *addr, size_t len, int behav); } - SYS_MINCORE = 78 // { int mincore(const void *addr, size_t len, char *vec); } - SYS_GETGROUPS = 79 // { int getgroups(u_int gidsetsize, gid_t *gidset); } -@@ -123,14 +121,10 @@ const ( - SYS_SETGID = 181 // { int setgid(gid_t gid); } - SYS_SETEGID = 182 // { int setegid(gid_t egid); } - SYS_SETEUID = 183 // { int seteuid(uid_t euid); } -- SYS_STAT = 188 // { int stat(char *path, struct stat *ub); } -- SYS_FSTAT = 189 // { int fstat(int fd, struct stat *sb); } -- SYS_LSTAT = 190 // { int lstat(char *path, struct stat *ub); } - SYS_PATHCONF = 191 // { int pathconf(char *path, int name); } - SYS_FPATHCONF = 192 // { int fpathconf(int fd, int name); } - SYS_GETRLIMIT = 194 // { int getrlimit(u_int which, struct rlimit *rlp); } getrlimit __getrlimit_args int - SYS_SETRLIMIT = 195 // { int setrlimit(u_int which, struct rlimit *rlp); } setrlimit __setrlimit_args int -- SYS_GETDIRENTRIES = 196 // { int getdirentries(int fd, char *buf, u_int count, long *basep); } - SYS___SYSCTL = 202 // { int __sysctl(int *name, u_int namelen, void *old, size_t *oldlenp, void *new, size_t newlen); } __sysctl sysctl_args int - SYS_MLOCK = 203 // { int mlock(const void *addr, size_t len); } - SYS_MUNLOCK = 204 // { int munlock(const void *addr, size_t len); } -@@ -142,12 +136,12 @@ const ( - SYS_SEMOP = 222 // { int semop(int semid, struct sembuf *sops, size_t nsops); } - SYS_MSGGET = 225 // { int msgget(key_t key, int msgflg); } - SYS_MSGSND = 226 // { int msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); } -- SYS_MSGRCV = 227 // { int msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); } -+ SYS_MSGRCV = 227 // { ssize_t msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); } - SYS_SHMAT = 228 // { int shmat(int shmid, const void *shmaddr, int shmflg); } - SYS_SHMDT = 230 // { int shmdt(const void *shmaddr); } - SYS_SHMGET = 231 // { int shmget(key_t key, size_t size, int shmflg); } - SYS_CLOCK_GETTIME = 232 // { int clock_gettime(clockid_t clock_id, struct timespec *tp); } -- SYS_CLOCK_SETTIME = 233 // { int clock_settime( clockid_t clock_id, const struct timespec *tp); } -+ SYS_CLOCK_SETTIME = 233 // { int clock_settime(clockid_t clock_id, const struct timespec *tp); } - SYS_CLOCK_GETRES = 234 // { int clock_getres(clockid_t clock_id, struct timespec *tp); } - SYS_KTIMER_CREATE = 235 // { int ktimer_create(clockid_t clock_id, struct sigevent *evp, int *timerid); } - SYS_KTIMER_DELETE = 236 // { int ktimer_delete(int timerid); } -@@ -156,50 +150,44 @@ const ( - SYS_KTIMER_GETOVERRUN = 239 // { int ktimer_getoverrun(int timerid); } - SYS_NANOSLEEP = 240 // { int nanosleep(const struct timespec *rqtp, struct timespec *rmtp); } - SYS_FFCLOCK_GETCOUNTER = 241 // { int ffclock_getcounter(ffcounter *ffcount); } -- SYS_FFCLOCK_SETESTIMATE = 242 // { int ffclock_setestimate( struct ffclock_estimate *cest); } -- SYS_FFCLOCK_GETESTIMATE = 243 // { int ffclock_getestimate( struct ffclock_estimate *cest); } -+ SYS_FFCLOCK_SETESTIMATE = 242 // { int ffclock_setestimate(struct ffclock_estimate *cest); } -+ SYS_FFCLOCK_GETESTIMATE = 243 // { int ffclock_getestimate(struct ffclock_estimate *cest); } - SYS_CLOCK_NANOSLEEP = 244 // { int clock_nanosleep(clockid_t clock_id, int flags, const struct timespec *rqtp, struct timespec *rmtp); } -- SYS_CLOCK_GETCPUCLOCKID2 = 247 // { int clock_getcpuclockid2(id_t id,int which, clockid_t *clock_id); } -+ SYS_CLOCK_GETCPUCLOCKID2 = 247 // { int clock_getcpuclockid2(id_t id, int which, clockid_t *clock_id); } - SYS_NTP_GETTIME = 248 // { int ntp_gettime(struct ntptimeval *ntvp); } - SYS_MINHERIT = 250 // { int minherit(void *addr, size_t len, int inherit); } - SYS_RFORK = 251 // { int rfork(int flags); } -- SYS_OPENBSD_POLL = 252 // { int openbsd_poll(struct pollfd *fds, u_int nfds, int timeout); } - SYS_ISSETUGID = 253 // { int issetugid(void); } - SYS_LCHOWN = 254 // { int lchown(char *path, int uid, int gid); } - SYS_AIO_READ = 255 // { int aio_read(struct aiocb *aiocbp); } - SYS_AIO_WRITE = 256 // { int aio_write(struct aiocb *aiocbp); } -- SYS_LIO_LISTIO = 257 // { int lio_listio(int mode, struct aiocb * const *acb_list, int nent, struct sigevent *sig); } -- SYS_GETDENTS = 272 // { int getdents(int fd, char *buf, size_t count); } -+ SYS_LIO_LISTIO = 257 // { int lio_listio(int mode, struct aiocb* const *acb_list, int nent, struct sigevent *sig); } - SYS_LCHMOD = 274 // { int lchmod(char *path, mode_t mode); } - SYS_LUTIMES = 276 // { int lutimes(char *path, struct timeval *tptr); } -- SYS_NSTAT = 278 // { int nstat(char *path, struct nstat *ub); } -- SYS_NFSTAT = 279 // { int nfstat(int fd, struct nstat *sb); } -- SYS_NLSTAT = 280 // { int nlstat(char *path, struct nstat *ub); } - SYS_PREADV = 289 // { ssize_t preadv(int fd, struct iovec *iovp, u_int iovcnt, off_t offset); } - SYS_PWRITEV = 290 // { ssize_t pwritev(int fd, struct iovec *iovp, u_int iovcnt, off_t offset); } - SYS_FHOPEN = 298 // { int fhopen(const struct fhandle *u_fhp, int flags); } -- SYS_FHSTAT = 299 // { int fhstat(const struct fhandle *u_fhp, struct stat *sb); } - SYS_MODNEXT = 300 // { int modnext(int modid); } -- SYS_MODSTAT = 301 // { int modstat(int modid, struct module_stat *stat); } -+ SYS_MODSTAT = 301 // { int modstat(int modid, struct module_stat* stat); } - SYS_MODFNEXT = 302 // { int modfnext(int modid); } - SYS_MODFIND = 303 // { int modfind(const char *name); } - SYS_KLDLOAD = 304 // { int kldload(const char *file); } - SYS_KLDUNLOAD = 305 // { int kldunload(int fileid); } - SYS_KLDFIND = 306 // { int kldfind(const char *file); } - SYS_KLDNEXT = 307 // { int kldnext(int fileid); } -- SYS_KLDSTAT = 308 // { int kldstat(int fileid, struct kld_file_stat* stat); } -+ SYS_KLDSTAT = 308 // { int kldstat(int fileid, struct kld_file_stat *stat); } - SYS_KLDFIRSTMOD = 309 // { int kldfirstmod(int fileid); } - SYS_GETSID = 310 // { int getsid(pid_t pid); } - SYS_SETRESUID = 311 // { int setresuid(uid_t ruid, uid_t euid, uid_t suid); } - SYS_SETRESGID = 312 // { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); } - SYS_AIO_RETURN = 314 // { ssize_t aio_return(struct aiocb *aiocbp); } -- SYS_AIO_SUSPEND = 315 // { int aio_suspend( struct aiocb * const * aiocbp, int nent, const struct timespec *timeout); } -+ SYS_AIO_SUSPEND = 315 // { int aio_suspend(struct aiocb * const * aiocbp, int nent, const struct timespec *timeout); } - SYS_AIO_CANCEL = 316 // { int aio_cancel(int fd, struct aiocb *aiocbp); } - SYS_AIO_ERROR = 317 // { int aio_error(struct aiocb *aiocbp); } - SYS_YIELD = 321 // { int yield(void); } - SYS_MLOCKALL = 324 // { int mlockall(int how); } - SYS_MUNLOCKALL = 325 // { int munlockall(void); } -- SYS___GETCWD = 326 // { int __getcwd(char *buf, u_int buflen); } -+ SYS___GETCWD = 326 // { int __getcwd(char *buf, size_t buflen); } - SYS_SCHED_SETPARAM = 327 // { int sched_setparam (pid_t pid, const struct sched_param *param); } - SYS_SCHED_GETPARAM = 328 // { int sched_getparam (pid_t pid, struct sched_param *param); } - SYS_SCHED_SETSCHEDULER = 329 // { int sched_setscheduler (pid_t pid, int policy, const struct sched_param *param); } -@@ -225,14 +213,13 @@ const ( - SYS___ACL_ACLCHECK_FILE = 353 // { int __acl_aclcheck_file(const char *path, acl_type_t type, struct acl *aclp); } - SYS___ACL_ACLCHECK_FD = 354 // { int __acl_aclcheck_fd(int filedes, acl_type_t type, struct acl *aclp); } - SYS_EXTATTRCTL = 355 // { int extattrctl(const char *path, int cmd, const char *filename, int attrnamespace, const char *attrname); } -- SYS_EXTATTR_SET_FILE = 356 // { ssize_t extattr_set_file( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -- SYS_EXTATTR_GET_FILE = 357 // { ssize_t extattr_get_file( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -+ SYS_EXTATTR_SET_FILE = 356 // { ssize_t extattr_set_file(const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -+ SYS_EXTATTR_GET_FILE = 357 // { ssize_t extattr_get_file(const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } - SYS_EXTATTR_DELETE_FILE = 358 // { int extattr_delete_file(const char *path, int attrnamespace, const char *attrname); } -- SYS_AIO_WAITCOMPLETE = 359 // { ssize_t aio_waitcomplete( struct aiocb **aiocbp, struct timespec *timeout); } -+ SYS_AIO_WAITCOMPLETE = 359 // { ssize_t aio_waitcomplete(struct aiocb **aiocbp, struct timespec *timeout); } - SYS_GETRESUID = 360 // { int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); } - SYS_GETRESGID = 361 // { int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); } - SYS_KQUEUE = 362 // { int kqueue(void); } -- SYS_KEVENT = 363 // { int kevent(int fd, struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); } - SYS_EXTATTR_SET_FD = 371 // { ssize_t extattr_set_fd(int fd, int attrnamespace, const char *attrname, void *data, size_t nbytes); } - SYS_EXTATTR_GET_FD = 372 // { ssize_t extattr_get_fd(int fd, int attrnamespace, const char *attrname, void *data, size_t nbytes); } - SYS_EXTATTR_DELETE_FD = 373 // { int extattr_delete_fd(int fd, int attrnamespace, const char *attrname); } -@@ -250,10 +237,6 @@ const ( - SYS_UUIDGEN = 392 // { int uuidgen(struct uuid *store, int count); } - SYS_SENDFILE = 393 // { int sendfile(int fd, int s, off_t offset, size_t nbytes, struct sf_hdtr *hdtr, off_t *sbytes, int flags); } - SYS_MAC_SYSCALL = 394 // { int mac_syscall(const char *policy, int call, void *arg); } -- SYS_GETFSSTAT = 395 // { int getfsstat(struct statfs *buf, long bufsize, int mode); } -- SYS_STATFS = 396 // { int statfs(char *path, struct statfs *buf); } -- SYS_FSTATFS = 397 // { int fstatfs(int fd, struct statfs *buf); } -- SYS_FHSTATFS = 398 // { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); } - SYS_KSEM_CLOSE = 400 // { int ksem_close(semid_t id); } - SYS_KSEM_POST = 401 // { int ksem_post(semid_t id); } - SYS_KSEM_WAIT = 402 // { int ksem_wait(semid_t id); } -@@ -266,14 +249,14 @@ const ( - SYS___MAC_GET_PID = 409 // { int __mac_get_pid(pid_t pid, struct mac *mac_p); } - SYS___MAC_GET_LINK = 410 // { int __mac_get_link(const char *path_p, struct mac *mac_p); } - SYS___MAC_SET_LINK = 411 // { int __mac_set_link(const char *path_p, struct mac *mac_p); } -- SYS_EXTATTR_SET_LINK = 412 // { ssize_t extattr_set_link( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -- SYS_EXTATTR_GET_LINK = 413 // { ssize_t extattr_get_link( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -- SYS_EXTATTR_DELETE_LINK = 414 // { int extattr_delete_link( const char *path, int attrnamespace, const char *attrname); } -+ SYS_EXTATTR_SET_LINK = 412 // { ssize_t extattr_set_link(const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -+ SYS_EXTATTR_GET_LINK = 413 // { ssize_t extattr_get_link(const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -+ SYS_EXTATTR_DELETE_LINK = 414 // { int extattr_delete_link(const char *path, int attrnamespace, const char *attrname); } - SYS___MAC_EXECVE = 415 // { int __mac_execve(char *fname, char **argv, char **envv, struct mac *mac_p); } - SYS_SIGACTION = 416 // { int sigaction(int sig, const struct sigaction *act, struct sigaction *oact); } -- SYS_SIGRETURN = 417 // { int sigreturn( const struct __ucontext *sigcntxp); } -+ SYS_SIGRETURN = 417 // { int sigreturn(const struct __ucontext *sigcntxp); } - SYS_GETCONTEXT = 421 // { int getcontext(struct __ucontext *ucp); } -- SYS_SETCONTEXT = 422 // { int setcontext( const struct __ucontext *ucp); } -+ SYS_SETCONTEXT = 422 // { int setcontext(const struct __ucontext *ucp); } - SYS_SWAPCONTEXT = 423 // { int swapcontext(struct __ucontext *oucp, const struct __ucontext *ucp); } - SYS_SWAPOFF = 424 // { int swapoff(const char *name); } - SYS___ACL_GET_LINK = 425 // { int __acl_get_link(const char *path, acl_type_t type, struct acl *aclp); } -@@ -287,10 +270,10 @@ const ( - SYS_THR_KILL = 433 // { int thr_kill(long id, int sig); } - SYS_JAIL_ATTACH = 436 // { int jail_attach(int jid); } - SYS_EXTATTR_LIST_FD = 437 // { ssize_t extattr_list_fd(int fd, int attrnamespace, void *data, size_t nbytes); } -- SYS_EXTATTR_LIST_FILE = 438 // { ssize_t extattr_list_file( const char *path, int attrnamespace, void *data, size_t nbytes); } -- SYS_EXTATTR_LIST_LINK = 439 // { ssize_t extattr_list_link( const char *path, int attrnamespace, void *data, size_t nbytes); } -+ SYS_EXTATTR_LIST_FILE = 438 // { ssize_t extattr_list_file(const char *path, int attrnamespace, void *data, size_t nbytes); } -+ SYS_EXTATTR_LIST_LINK = 439 // { ssize_t extattr_list_link(const char *path, int attrnamespace, void *data, size_t nbytes); } - SYS_KSEM_TIMEDWAIT = 441 // { int ksem_timedwait(semid_t id, const struct timespec *abstime); } -- SYS_THR_SUSPEND = 442 // { int thr_suspend( const struct timespec *timeout); } -+ SYS_THR_SUSPEND = 442 // { int thr_suspend(const struct timespec *timeout); } - SYS_THR_WAKE = 443 // { int thr_wake(long id); } - SYS_KLDUNLOADF = 444 // { int kldunloadf(int fileid, int flags); } - SYS_AUDIT = 445 // { int audit(const void *record, u_int length); } -@@ -299,17 +282,17 @@ const ( - SYS_SETAUID = 448 // { int setauid(uid_t *auid); } - SYS_GETAUDIT = 449 // { int getaudit(struct auditinfo *auditinfo); } - SYS_SETAUDIT = 450 // { int setaudit(struct auditinfo *auditinfo); } -- SYS_GETAUDIT_ADDR = 451 // { int getaudit_addr( struct auditinfo_addr *auditinfo_addr, u_int length); } -- SYS_SETAUDIT_ADDR = 452 // { int setaudit_addr( struct auditinfo_addr *auditinfo_addr, u_int length); } -+ SYS_GETAUDIT_ADDR = 451 // { int getaudit_addr(struct auditinfo_addr *auditinfo_addr, u_int length); } -+ SYS_SETAUDIT_ADDR = 452 // { int setaudit_addr(struct auditinfo_addr *auditinfo_addr, u_int length); } - SYS_AUDITCTL = 453 // { int auditctl(char *path); } - SYS__UMTX_OP = 454 // { int _umtx_op(void *obj, int op, u_long val, void *uaddr1, void *uaddr2); } - SYS_THR_NEW = 455 // { int thr_new(struct thr_param *param, int param_size); } - SYS_SIGQUEUE = 456 // { int sigqueue(pid_t pid, int signum, void *value); } - SYS_KMQ_OPEN = 457 // { int kmq_open(const char *path, int flags, mode_t mode, const struct mq_attr *attr); } -- SYS_KMQ_SETATTR = 458 // { int kmq_setattr(int mqd, const struct mq_attr *attr, struct mq_attr *oattr); } -- SYS_KMQ_TIMEDRECEIVE = 459 // { int kmq_timedreceive(int mqd, char *msg_ptr, size_t msg_len, unsigned *msg_prio, const struct timespec *abs_timeout); } -- SYS_KMQ_TIMEDSEND = 460 // { int kmq_timedsend(int mqd, const char *msg_ptr, size_t msg_len,unsigned msg_prio, const struct timespec *abs_timeout);} -- SYS_KMQ_NOTIFY = 461 // { int kmq_notify(int mqd, const struct sigevent *sigev); } -+ SYS_KMQ_SETATTR = 458 // { int kmq_setattr(int mqd, const struct mq_attr *attr, struct mq_attr *oattr); } -+ SYS_KMQ_TIMEDRECEIVE = 459 // { int kmq_timedreceive(int mqd, char *msg_ptr, size_t msg_len, unsigned *msg_prio, const struct timespec *abs_timeout); } -+ SYS_KMQ_TIMEDSEND = 460 // { int kmq_timedsend(int mqd, const char *msg_ptr, size_t msg_len, unsigned msg_prio, const struct timespec *abs_timeout); } -+ SYS_KMQ_NOTIFY = 461 // { int kmq_notify(int mqd, const struct sigevent *sigev); } - SYS_KMQ_UNLINK = 462 // { int kmq_unlink(const char *path); } - SYS_ABORT2 = 463 // { int abort2(const char *why, int nargs, void **args); } - SYS_THR_SET_NAME = 464 // { int thr_set_name(long id, const char *name); } -@@ -318,7 +301,7 @@ const ( - SYS_SCTP_PEELOFF = 471 // { int sctp_peeloff(int sd, uint32_t name); } - SYS_SCTP_GENERIC_SENDMSG = 472 // { int sctp_generic_sendmsg(int sd, caddr_t msg, int mlen, caddr_t to, __socklen_t tolen, struct sctp_sndrcvinfo *sinfo, int flags); } - SYS_SCTP_GENERIC_SENDMSG_IOV = 473 // { int sctp_generic_sendmsg_iov(int sd, struct iovec *iov, int iovlen, caddr_t to, __socklen_t tolen, struct sctp_sndrcvinfo *sinfo, int flags); } -- SYS_SCTP_GENERIC_RECVMSG = 474 // { int sctp_generic_recvmsg(int sd, struct iovec *iov, int iovlen, struct sockaddr * from, __socklen_t *fromlenaddr, struct sctp_sndrcvinfo *sinfo, int *msg_flags); } -+ SYS_SCTP_GENERIC_RECVMSG = 474 // { int sctp_generic_recvmsg(int sd, struct iovec *iov, int iovlen, struct sockaddr *from, __socklen_t *fromlenaddr, struct sctp_sndrcvinfo *sinfo, int *msg_flags); } - SYS_PREAD = 475 // { ssize_t pread(int fd, void *buf, size_t nbyte, off_t offset); } - SYS_PWRITE = 476 // { ssize_t pwrite(int fd, const void *buf, size_t nbyte, off_t offset); } - SYS_MMAP = 477 // { caddr_t mmap(caddr_t addr, size_t len, int prot, int flags, int fd, off_t pos); } -@@ -337,14 +320,12 @@ const ( - SYS_FCHMODAT = 490 // { int fchmodat(int fd, char *path, mode_t mode, int flag); } - SYS_FCHOWNAT = 491 // { int fchownat(int fd, char *path, uid_t uid, gid_t gid, int flag); } - SYS_FEXECVE = 492 // { int fexecve(int fd, char **argv, char **envv); } -- SYS_FSTATAT = 493 // { int fstatat(int fd, char *path, struct stat *buf, int flag); } - SYS_FUTIMESAT = 494 // { int futimesat(int fd, char *path, struct timeval *times); } - SYS_LINKAT = 495 // { int linkat(int fd1, char *path1, int fd2, char *path2, int flag); } - SYS_MKDIRAT = 496 // { int mkdirat(int fd, char *path, mode_t mode); } - SYS_MKFIFOAT = 497 // { int mkfifoat(int fd, char *path, mode_t mode); } -- SYS_MKNODAT = 498 // { int mknodat(int fd, char *path, mode_t mode, dev_t dev); } - SYS_OPENAT = 499 // { int openat(int fd, char *path, int flag, mode_t mode); } -- SYS_READLINKAT = 500 // { int readlinkat(int fd, char *path, char *buf, size_t bufsize); } -+ SYS_READLINKAT = 500 // { ssize_t readlinkat(int fd, char *path, char *buf, size_t bufsize); } - SYS_RENAMEAT = 501 // { int renameat(int oldfd, char *old, int newfd, char *new); } - SYS_SYMLINKAT = 502 // { int symlinkat(char *path1, int fd, char *path2); } - SYS_UNLINKAT = 503 // { int unlinkat(int fd, char *path, int flag); } -@@ -390,7 +371,24 @@ const ( - SYS_PPOLL = 545 // { int ppoll(struct pollfd *fds, u_int nfds, const struct timespec *ts, const sigset_t *set); } - SYS_FUTIMENS = 546 // { int futimens(int fd, struct timespec *times); } - SYS_UTIMENSAT = 547 // { int utimensat(int fd, char *path, struct timespec *times, int flag); } -- SYS_NUMA_GETAFFINITY = 548 // { int numa_getaffinity(cpuwhich_t which, id_t id, struct vm_domain_policy_entry *policy); } -- SYS_NUMA_SETAFFINITY = 549 // { int numa_setaffinity(cpuwhich_t which, id_t id, const struct vm_domain_policy_entry *policy); } - SYS_FDATASYNC = 550 // { int fdatasync(int fd); } -+ SYS_FSTAT = 551 // { int fstat(int fd, struct stat *sb); } -+ SYS_FSTATAT = 552 // { int fstatat(int fd, char *path, struct stat *buf, int flag); } -+ SYS_FHSTAT = 553 // { int fhstat(const struct fhandle *u_fhp, struct stat *sb); } -+ SYS_GETDIRENTRIES = 554 // { ssize_t getdirentries(int fd, char *buf, size_t count, off_t *basep); } -+ SYS_STATFS = 555 // { int statfs(char *path, struct statfs *buf); } -+ SYS_FSTATFS = 556 // { int fstatfs(int fd, struct statfs *buf); } -+ SYS_GETFSSTAT = 557 // { int getfsstat(struct statfs *buf, long bufsize, int mode); } -+ SYS_FHSTATFS = 558 // { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); } -+ SYS_MKNODAT = 559 // { int mknodat(int fd, char *path, mode_t mode, dev_t dev); } -+ SYS_KEVENT = 560 // { int kevent(int fd, struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); } -+ SYS_CPUSET_GETDOMAIN = 561 // { int cpuset_getdomain(cpulevel_t level, cpuwhich_t which, id_t id, size_t domainsetsize, domainset_t *mask, int *policy); } -+ SYS_CPUSET_SETDOMAIN = 562 // { int cpuset_setdomain(cpulevel_t level, cpuwhich_t which, id_t id, size_t domainsetsize, domainset_t *mask, int policy); } -+ SYS_GETRANDOM = 563 // { int getrandom(void *buf, size_t buflen, unsigned int flags); } -+ SYS_GETFHAT = 564 // { int getfhat(int fd, char *path, struct fhandle *fhp, int flags); } -+ SYS_FHLINK = 565 // { int fhlink(struct fhandle *fhp, const char *to); } -+ SYS_FHLINKAT = 566 // { int fhlinkat(struct fhandle *fhp, int tofd, const char *to,); } -+ SYS_FHREADLINK = 567 // { int fhreadlink(struct fhandle *fhp, char *buf, size_t bufsize); } -+ SYS___SYSCTLBYNAME = 570 // { int __sysctlbyname(const char *name, size_t namelen, void *old, size_t *oldlenp, void *new, size_t newlen); } -+ SYS_CLOSE_RANGE = 575 // { int close_range(u_int lowfd, u_int highfd, int flags); } - ) -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go -index 48a7bea..01636b8 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go -@@ -1,6 +1,7 @@ --// go run mksysnum.go https://svn.freebsd.org/base/stable/11/sys/kern/syscalls.master -+// go run mksysnum.go https://cgit.freebsd.org/src/plain/sys/kern/syscalls.master?h=stable/12 - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build amd64 && freebsd - // +build amd64,freebsd - - package unix -@@ -18,10 +19,9 @@ const ( - SYS_UNLINK = 10 // { int unlink(char *path); } - SYS_CHDIR = 12 // { int chdir(char *path); } - SYS_FCHDIR = 13 // { int fchdir(int fd); } -- SYS_MKNOD = 14 // { int mknod(char *path, int mode, int dev); } - SYS_CHMOD = 15 // { int chmod(char *path, int mode); } - SYS_CHOWN = 16 // { int chown(char *path, int uid, int gid); } -- SYS_OBREAK = 17 // { int obreak(char *nsize); } break obreak_args int -+ SYS_BREAK = 17 // { caddr_t break(char *nsize); } - SYS_GETPID = 20 // { pid_t getpid(void); } - SYS_MOUNT = 21 // { int mount(char *type, char *path, int flags, caddr_t data); } - SYS_UNMOUNT = 22 // { int unmount(char *path, int flags); } -@@ -42,7 +42,6 @@ const ( - SYS_KILL = 37 // { int kill(int pid, int signum); } - SYS_GETPPID = 39 // { pid_t getppid(void); } - SYS_DUP = 41 // { int dup(u_int fd); } -- SYS_PIPE = 42 // { int pipe(void); } - SYS_GETEGID = 43 // { gid_t getegid(void); } - SYS_PROFIL = 44 // { int profil(caddr_t samples, size_t size, size_t offset, u_int scale); } - SYS_KTRACE = 45 // { int ktrace(const char *fname, int ops, int facs, int pid); } -@@ -57,15 +56,14 @@ const ( - SYS_SYMLINK = 57 // { int symlink(char *path, char *link); } - SYS_READLINK = 58 // { ssize_t readlink(char *path, char *buf, size_t count); } - SYS_EXECVE = 59 // { int execve(char *fname, char **argv, char **envv); } -- SYS_UMASK = 60 // { int umask(int newmask); } umask umask_args int -+ SYS_UMASK = 60 // { int umask(int newmask); } - SYS_CHROOT = 61 // { int chroot(char *path); } - SYS_MSYNC = 65 // { int msync(void *addr, size_t len, int flags); } - SYS_VFORK = 66 // { int vfork(void); } - SYS_SBRK = 69 // { int sbrk(int incr); } - SYS_SSTK = 70 // { int sstk(int incr); } -- SYS_OVADVISE = 72 // { int ovadvise(int anom); } vadvise ovadvise_args int - SYS_MUNMAP = 73 // { int munmap(void *addr, size_t len); } -- SYS_MPROTECT = 74 // { int mprotect(const void *addr, size_t len, int prot); } -+ SYS_MPROTECT = 74 // { int mprotect(void *addr, size_t len, int prot); } - SYS_MADVISE = 75 // { int madvise(void *addr, size_t len, int behav); } - SYS_MINCORE = 78 // { int mincore(const void *addr, size_t len, char *vec); } - SYS_GETGROUPS = 79 // { int getgroups(u_int gidsetsize, gid_t *gidset); } -@@ -123,14 +121,10 @@ const ( - SYS_SETGID = 181 // { int setgid(gid_t gid); } - SYS_SETEGID = 182 // { int setegid(gid_t egid); } - SYS_SETEUID = 183 // { int seteuid(uid_t euid); } -- SYS_STAT = 188 // { int stat(char *path, struct stat *ub); } -- SYS_FSTAT = 189 // { int fstat(int fd, struct stat *sb); } -- SYS_LSTAT = 190 // { int lstat(char *path, struct stat *ub); } - SYS_PATHCONF = 191 // { int pathconf(char *path, int name); } - SYS_FPATHCONF = 192 // { int fpathconf(int fd, int name); } - SYS_GETRLIMIT = 194 // { int getrlimit(u_int which, struct rlimit *rlp); } getrlimit __getrlimit_args int - SYS_SETRLIMIT = 195 // { int setrlimit(u_int which, struct rlimit *rlp); } setrlimit __setrlimit_args int -- SYS_GETDIRENTRIES = 196 // { int getdirentries(int fd, char *buf, u_int count, long *basep); } - SYS___SYSCTL = 202 // { int __sysctl(int *name, u_int namelen, void *old, size_t *oldlenp, void *new, size_t newlen); } __sysctl sysctl_args int - SYS_MLOCK = 203 // { int mlock(const void *addr, size_t len); } - SYS_MUNLOCK = 204 // { int munlock(const void *addr, size_t len); } -@@ -142,12 +136,12 @@ const ( - SYS_SEMOP = 222 // { int semop(int semid, struct sembuf *sops, size_t nsops); } - SYS_MSGGET = 225 // { int msgget(key_t key, int msgflg); } - SYS_MSGSND = 226 // { int msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); } -- SYS_MSGRCV = 227 // { int msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); } -+ SYS_MSGRCV = 227 // { ssize_t msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); } - SYS_SHMAT = 228 // { int shmat(int shmid, const void *shmaddr, int shmflg); } - SYS_SHMDT = 230 // { int shmdt(const void *shmaddr); } - SYS_SHMGET = 231 // { int shmget(key_t key, size_t size, int shmflg); } - SYS_CLOCK_GETTIME = 232 // { int clock_gettime(clockid_t clock_id, struct timespec *tp); } -- SYS_CLOCK_SETTIME = 233 // { int clock_settime( clockid_t clock_id, const struct timespec *tp); } -+ SYS_CLOCK_SETTIME = 233 // { int clock_settime(clockid_t clock_id, const struct timespec *tp); } - SYS_CLOCK_GETRES = 234 // { int clock_getres(clockid_t clock_id, struct timespec *tp); } - SYS_KTIMER_CREATE = 235 // { int ktimer_create(clockid_t clock_id, struct sigevent *evp, int *timerid); } - SYS_KTIMER_DELETE = 236 // { int ktimer_delete(int timerid); } -@@ -156,50 +150,44 @@ const ( - SYS_KTIMER_GETOVERRUN = 239 // { int ktimer_getoverrun(int timerid); } - SYS_NANOSLEEP = 240 // { int nanosleep(const struct timespec *rqtp, struct timespec *rmtp); } - SYS_FFCLOCK_GETCOUNTER = 241 // { int ffclock_getcounter(ffcounter *ffcount); } -- SYS_FFCLOCK_SETESTIMATE = 242 // { int ffclock_setestimate( struct ffclock_estimate *cest); } -- SYS_FFCLOCK_GETESTIMATE = 243 // { int ffclock_getestimate( struct ffclock_estimate *cest); } -+ SYS_FFCLOCK_SETESTIMATE = 242 // { int ffclock_setestimate(struct ffclock_estimate *cest); } -+ SYS_FFCLOCK_GETESTIMATE = 243 // { int ffclock_getestimate(struct ffclock_estimate *cest); } - SYS_CLOCK_NANOSLEEP = 244 // { int clock_nanosleep(clockid_t clock_id, int flags, const struct timespec *rqtp, struct timespec *rmtp); } -- SYS_CLOCK_GETCPUCLOCKID2 = 247 // { int clock_getcpuclockid2(id_t id,int which, clockid_t *clock_id); } -+ SYS_CLOCK_GETCPUCLOCKID2 = 247 // { int clock_getcpuclockid2(id_t id, int which, clockid_t *clock_id); } - SYS_NTP_GETTIME = 248 // { int ntp_gettime(struct ntptimeval *ntvp); } - SYS_MINHERIT = 250 // { int minherit(void *addr, size_t len, int inherit); } - SYS_RFORK = 251 // { int rfork(int flags); } -- SYS_OPENBSD_POLL = 252 // { int openbsd_poll(struct pollfd *fds, u_int nfds, int timeout); } - SYS_ISSETUGID = 253 // { int issetugid(void); } - SYS_LCHOWN = 254 // { int lchown(char *path, int uid, int gid); } - SYS_AIO_READ = 255 // { int aio_read(struct aiocb *aiocbp); } - SYS_AIO_WRITE = 256 // { int aio_write(struct aiocb *aiocbp); } -- SYS_LIO_LISTIO = 257 // { int lio_listio(int mode, struct aiocb * const *acb_list, int nent, struct sigevent *sig); } -- SYS_GETDENTS = 272 // { int getdents(int fd, char *buf, size_t count); } -+ SYS_LIO_LISTIO = 257 // { int lio_listio(int mode, struct aiocb* const *acb_list, int nent, struct sigevent *sig); } - SYS_LCHMOD = 274 // { int lchmod(char *path, mode_t mode); } - SYS_LUTIMES = 276 // { int lutimes(char *path, struct timeval *tptr); } -- SYS_NSTAT = 278 // { int nstat(char *path, struct nstat *ub); } -- SYS_NFSTAT = 279 // { int nfstat(int fd, struct nstat *sb); } -- SYS_NLSTAT = 280 // { int nlstat(char *path, struct nstat *ub); } - SYS_PREADV = 289 // { ssize_t preadv(int fd, struct iovec *iovp, u_int iovcnt, off_t offset); } - SYS_PWRITEV = 290 // { ssize_t pwritev(int fd, struct iovec *iovp, u_int iovcnt, off_t offset); } - SYS_FHOPEN = 298 // { int fhopen(const struct fhandle *u_fhp, int flags); } -- SYS_FHSTAT = 299 // { int fhstat(const struct fhandle *u_fhp, struct stat *sb); } - SYS_MODNEXT = 300 // { int modnext(int modid); } -- SYS_MODSTAT = 301 // { int modstat(int modid, struct module_stat *stat); } -+ SYS_MODSTAT = 301 // { int modstat(int modid, struct module_stat* stat); } - SYS_MODFNEXT = 302 // { int modfnext(int modid); } - SYS_MODFIND = 303 // { int modfind(const char *name); } - SYS_KLDLOAD = 304 // { int kldload(const char *file); } - SYS_KLDUNLOAD = 305 // { int kldunload(int fileid); } - SYS_KLDFIND = 306 // { int kldfind(const char *file); } - SYS_KLDNEXT = 307 // { int kldnext(int fileid); } -- SYS_KLDSTAT = 308 // { int kldstat(int fileid, struct kld_file_stat* stat); } -+ SYS_KLDSTAT = 308 // { int kldstat(int fileid, struct kld_file_stat *stat); } - SYS_KLDFIRSTMOD = 309 // { int kldfirstmod(int fileid); } - SYS_GETSID = 310 // { int getsid(pid_t pid); } - SYS_SETRESUID = 311 // { int setresuid(uid_t ruid, uid_t euid, uid_t suid); } - SYS_SETRESGID = 312 // { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); } - SYS_AIO_RETURN = 314 // { ssize_t aio_return(struct aiocb *aiocbp); } -- SYS_AIO_SUSPEND = 315 // { int aio_suspend( struct aiocb * const * aiocbp, int nent, const struct timespec *timeout); } -+ SYS_AIO_SUSPEND = 315 // { int aio_suspend(struct aiocb * const * aiocbp, int nent, const struct timespec *timeout); } - SYS_AIO_CANCEL = 316 // { int aio_cancel(int fd, struct aiocb *aiocbp); } - SYS_AIO_ERROR = 317 // { int aio_error(struct aiocb *aiocbp); } - SYS_YIELD = 321 // { int yield(void); } - SYS_MLOCKALL = 324 // { int mlockall(int how); } - SYS_MUNLOCKALL = 325 // { int munlockall(void); } -- SYS___GETCWD = 326 // { int __getcwd(char *buf, u_int buflen); } -+ SYS___GETCWD = 326 // { int __getcwd(char *buf, size_t buflen); } - SYS_SCHED_SETPARAM = 327 // { int sched_setparam (pid_t pid, const struct sched_param *param); } - SYS_SCHED_GETPARAM = 328 // { int sched_getparam (pid_t pid, struct sched_param *param); } - SYS_SCHED_SETSCHEDULER = 329 // { int sched_setscheduler (pid_t pid, int policy, const struct sched_param *param); } -@@ -225,14 +213,13 @@ const ( - SYS___ACL_ACLCHECK_FILE = 353 // { int __acl_aclcheck_file(const char *path, acl_type_t type, struct acl *aclp); } - SYS___ACL_ACLCHECK_FD = 354 // { int __acl_aclcheck_fd(int filedes, acl_type_t type, struct acl *aclp); } - SYS_EXTATTRCTL = 355 // { int extattrctl(const char *path, int cmd, const char *filename, int attrnamespace, const char *attrname); } -- SYS_EXTATTR_SET_FILE = 356 // { ssize_t extattr_set_file( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -- SYS_EXTATTR_GET_FILE = 357 // { ssize_t extattr_get_file( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -+ SYS_EXTATTR_SET_FILE = 356 // { ssize_t extattr_set_file(const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -+ SYS_EXTATTR_GET_FILE = 357 // { ssize_t extattr_get_file(const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } - SYS_EXTATTR_DELETE_FILE = 358 // { int extattr_delete_file(const char *path, int attrnamespace, const char *attrname); } -- SYS_AIO_WAITCOMPLETE = 359 // { ssize_t aio_waitcomplete( struct aiocb **aiocbp, struct timespec *timeout); } -+ SYS_AIO_WAITCOMPLETE = 359 // { ssize_t aio_waitcomplete(struct aiocb **aiocbp, struct timespec *timeout); } - SYS_GETRESUID = 360 // { int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); } - SYS_GETRESGID = 361 // { int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); } - SYS_KQUEUE = 362 // { int kqueue(void); } -- SYS_KEVENT = 363 // { int kevent(int fd, struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); } - SYS_EXTATTR_SET_FD = 371 // { ssize_t extattr_set_fd(int fd, int attrnamespace, const char *attrname, void *data, size_t nbytes); } - SYS_EXTATTR_GET_FD = 372 // { ssize_t extattr_get_fd(int fd, int attrnamespace, const char *attrname, void *data, size_t nbytes); } - SYS_EXTATTR_DELETE_FD = 373 // { int extattr_delete_fd(int fd, int attrnamespace, const char *attrname); } -@@ -250,10 +237,6 @@ const ( - SYS_UUIDGEN = 392 // { int uuidgen(struct uuid *store, int count); } - SYS_SENDFILE = 393 // { int sendfile(int fd, int s, off_t offset, size_t nbytes, struct sf_hdtr *hdtr, off_t *sbytes, int flags); } - SYS_MAC_SYSCALL = 394 // { int mac_syscall(const char *policy, int call, void *arg); } -- SYS_GETFSSTAT = 395 // { int getfsstat(struct statfs *buf, long bufsize, int mode); } -- SYS_STATFS = 396 // { int statfs(char *path, struct statfs *buf); } -- SYS_FSTATFS = 397 // { int fstatfs(int fd, struct statfs *buf); } -- SYS_FHSTATFS = 398 // { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); } - SYS_KSEM_CLOSE = 400 // { int ksem_close(semid_t id); } - SYS_KSEM_POST = 401 // { int ksem_post(semid_t id); } - SYS_KSEM_WAIT = 402 // { int ksem_wait(semid_t id); } -@@ -266,14 +249,14 @@ const ( - SYS___MAC_GET_PID = 409 // { int __mac_get_pid(pid_t pid, struct mac *mac_p); } - SYS___MAC_GET_LINK = 410 // { int __mac_get_link(const char *path_p, struct mac *mac_p); } - SYS___MAC_SET_LINK = 411 // { int __mac_set_link(const char *path_p, struct mac *mac_p); } -- SYS_EXTATTR_SET_LINK = 412 // { ssize_t extattr_set_link( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -- SYS_EXTATTR_GET_LINK = 413 // { ssize_t extattr_get_link( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -- SYS_EXTATTR_DELETE_LINK = 414 // { int extattr_delete_link( const char *path, int attrnamespace, const char *attrname); } -+ SYS_EXTATTR_SET_LINK = 412 // { ssize_t extattr_set_link(const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -+ SYS_EXTATTR_GET_LINK = 413 // { ssize_t extattr_get_link(const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -+ SYS_EXTATTR_DELETE_LINK = 414 // { int extattr_delete_link(const char *path, int attrnamespace, const char *attrname); } - SYS___MAC_EXECVE = 415 // { int __mac_execve(char *fname, char **argv, char **envv, struct mac *mac_p); } - SYS_SIGACTION = 416 // { int sigaction(int sig, const struct sigaction *act, struct sigaction *oact); } -- SYS_SIGRETURN = 417 // { int sigreturn( const struct __ucontext *sigcntxp); } -+ SYS_SIGRETURN = 417 // { int sigreturn(const struct __ucontext *sigcntxp); } - SYS_GETCONTEXT = 421 // { int getcontext(struct __ucontext *ucp); } -- SYS_SETCONTEXT = 422 // { int setcontext( const struct __ucontext *ucp); } -+ SYS_SETCONTEXT = 422 // { int setcontext(const struct __ucontext *ucp); } - SYS_SWAPCONTEXT = 423 // { int swapcontext(struct __ucontext *oucp, const struct __ucontext *ucp); } - SYS_SWAPOFF = 424 // { int swapoff(const char *name); } - SYS___ACL_GET_LINK = 425 // { int __acl_get_link(const char *path, acl_type_t type, struct acl *aclp); } -@@ -287,10 +270,10 @@ const ( - SYS_THR_KILL = 433 // { int thr_kill(long id, int sig); } - SYS_JAIL_ATTACH = 436 // { int jail_attach(int jid); } - SYS_EXTATTR_LIST_FD = 437 // { ssize_t extattr_list_fd(int fd, int attrnamespace, void *data, size_t nbytes); } -- SYS_EXTATTR_LIST_FILE = 438 // { ssize_t extattr_list_file( const char *path, int attrnamespace, void *data, size_t nbytes); } -- SYS_EXTATTR_LIST_LINK = 439 // { ssize_t extattr_list_link( const char *path, int attrnamespace, void *data, size_t nbytes); } -+ SYS_EXTATTR_LIST_FILE = 438 // { ssize_t extattr_list_file(const char *path, int attrnamespace, void *data, size_t nbytes); } -+ SYS_EXTATTR_LIST_LINK = 439 // { ssize_t extattr_list_link(const char *path, int attrnamespace, void *data, size_t nbytes); } - SYS_KSEM_TIMEDWAIT = 441 // { int ksem_timedwait(semid_t id, const struct timespec *abstime); } -- SYS_THR_SUSPEND = 442 // { int thr_suspend( const struct timespec *timeout); } -+ SYS_THR_SUSPEND = 442 // { int thr_suspend(const struct timespec *timeout); } - SYS_THR_WAKE = 443 // { int thr_wake(long id); } - SYS_KLDUNLOADF = 444 // { int kldunloadf(int fileid, int flags); } - SYS_AUDIT = 445 // { int audit(const void *record, u_int length); } -@@ -299,17 +282,17 @@ const ( - SYS_SETAUID = 448 // { int setauid(uid_t *auid); } - SYS_GETAUDIT = 449 // { int getaudit(struct auditinfo *auditinfo); } - SYS_SETAUDIT = 450 // { int setaudit(struct auditinfo *auditinfo); } -- SYS_GETAUDIT_ADDR = 451 // { int getaudit_addr( struct auditinfo_addr *auditinfo_addr, u_int length); } -- SYS_SETAUDIT_ADDR = 452 // { int setaudit_addr( struct auditinfo_addr *auditinfo_addr, u_int length); } -+ SYS_GETAUDIT_ADDR = 451 // { int getaudit_addr(struct auditinfo_addr *auditinfo_addr, u_int length); } -+ SYS_SETAUDIT_ADDR = 452 // { int setaudit_addr(struct auditinfo_addr *auditinfo_addr, u_int length); } - SYS_AUDITCTL = 453 // { int auditctl(char *path); } - SYS__UMTX_OP = 454 // { int _umtx_op(void *obj, int op, u_long val, void *uaddr1, void *uaddr2); } - SYS_THR_NEW = 455 // { int thr_new(struct thr_param *param, int param_size); } - SYS_SIGQUEUE = 456 // { int sigqueue(pid_t pid, int signum, void *value); } - SYS_KMQ_OPEN = 457 // { int kmq_open(const char *path, int flags, mode_t mode, const struct mq_attr *attr); } -- SYS_KMQ_SETATTR = 458 // { int kmq_setattr(int mqd, const struct mq_attr *attr, struct mq_attr *oattr); } -- SYS_KMQ_TIMEDRECEIVE = 459 // { int kmq_timedreceive(int mqd, char *msg_ptr, size_t msg_len, unsigned *msg_prio, const struct timespec *abs_timeout); } -- SYS_KMQ_TIMEDSEND = 460 // { int kmq_timedsend(int mqd, const char *msg_ptr, size_t msg_len,unsigned msg_prio, const struct timespec *abs_timeout);} -- SYS_KMQ_NOTIFY = 461 // { int kmq_notify(int mqd, const struct sigevent *sigev); } -+ SYS_KMQ_SETATTR = 458 // { int kmq_setattr(int mqd, const struct mq_attr *attr, struct mq_attr *oattr); } -+ SYS_KMQ_TIMEDRECEIVE = 459 // { int kmq_timedreceive(int mqd, char *msg_ptr, size_t msg_len, unsigned *msg_prio, const struct timespec *abs_timeout); } -+ SYS_KMQ_TIMEDSEND = 460 // { int kmq_timedsend(int mqd, const char *msg_ptr, size_t msg_len, unsigned msg_prio, const struct timespec *abs_timeout); } -+ SYS_KMQ_NOTIFY = 461 // { int kmq_notify(int mqd, const struct sigevent *sigev); } - SYS_KMQ_UNLINK = 462 // { int kmq_unlink(const char *path); } - SYS_ABORT2 = 463 // { int abort2(const char *why, int nargs, void **args); } - SYS_THR_SET_NAME = 464 // { int thr_set_name(long id, const char *name); } -@@ -318,7 +301,7 @@ const ( - SYS_SCTP_PEELOFF = 471 // { int sctp_peeloff(int sd, uint32_t name); } - SYS_SCTP_GENERIC_SENDMSG = 472 // { int sctp_generic_sendmsg(int sd, caddr_t msg, int mlen, caddr_t to, __socklen_t tolen, struct sctp_sndrcvinfo *sinfo, int flags); } - SYS_SCTP_GENERIC_SENDMSG_IOV = 473 // { int sctp_generic_sendmsg_iov(int sd, struct iovec *iov, int iovlen, caddr_t to, __socklen_t tolen, struct sctp_sndrcvinfo *sinfo, int flags); } -- SYS_SCTP_GENERIC_RECVMSG = 474 // { int sctp_generic_recvmsg(int sd, struct iovec *iov, int iovlen, struct sockaddr * from, __socklen_t *fromlenaddr, struct sctp_sndrcvinfo *sinfo, int *msg_flags); } -+ SYS_SCTP_GENERIC_RECVMSG = 474 // { int sctp_generic_recvmsg(int sd, struct iovec *iov, int iovlen, struct sockaddr *from, __socklen_t *fromlenaddr, struct sctp_sndrcvinfo *sinfo, int *msg_flags); } - SYS_PREAD = 475 // { ssize_t pread(int fd, void *buf, size_t nbyte, off_t offset); } - SYS_PWRITE = 476 // { ssize_t pwrite(int fd, const void *buf, size_t nbyte, off_t offset); } - SYS_MMAP = 477 // { caddr_t mmap(caddr_t addr, size_t len, int prot, int flags, int fd, off_t pos); } -@@ -337,14 +320,12 @@ const ( - SYS_FCHMODAT = 490 // { int fchmodat(int fd, char *path, mode_t mode, int flag); } - SYS_FCHOWNAT = 491 // { int fchownat(int fd, char *path, uid_t uid, gid_t gid, int flag); } - SYS_FEXECVE = 492 // { int fexecve(int fd, char **argv, char **envv); } -- SYS_FSTATAT = 493 // { int fstatat(int fd, char *path, struct stat *buf, int flag); } - SYS_FUTIMESAT = 494 // { int futimesat(int fd, char *path, struct timeval *times); } - SYS_LINKAT = 495 // { int linkat(int fd1, char *path1, int fd2, char *path2, int flag); } - SYS_MKDIRAT = 496 // { int mkdirat(int fd, char *path, mode_t mode); } - SYS_MKFIFOAT = 497 // { int mkfifoat(int fd, char *path, mode_t mode); } -- SYS_MKNODAT = 498 // { int mknodat(int fd, char *path, mode_t mode, dev_t dev); } - SYS_OPENAT = 499 // { int openat(int fd, char *path, int flag, mode_t mode); } -- SYS_READLINKAT = 500 // { int readlinkat(int fd, char *path, char *buf, size_t bufsize); } -+ SYS_READLINKAT = 500 // { ssize_t readlinkat(int fd, char *path, char *buf, size_t bufsize); } - SYS_RENAMEAT = 501 // { int renameat(int oldfd, char *old, int newfd, char *new); } - SYS_SYMLINKAT = 502 // { int symlinkat(char *path1, int fd, char *path2); } - SYS_UNLINKAT = 503 // { int unlinkat(int fd, char *path, int flag); } -@@ -390,7 +371,24 @@ const ( - SYS_PPOLL = 545 // { int ppoll(struct pollfd *fds, u_int nfds, const struct timespec *ts, const sigset_t *set); } - SYS_FUTIMENS = 546 // { int futimens(int fd, struct timespec *times); } - SYS_UTIMENSAT = 547 // { int utimensat(int fd, char *path, struct timespec *times, int flag); } -- SYS_NUMA_GETAFFINITY = 548 // { int numa_getaffinity(cpuwhich_t which, id_t id, struct vm_domain_policy_entry *policy); } -- SYS_NUMA_SETAFFINITY = 549 // { int numa_setaffinity(cpuwhich_t which, id_t id, const struct vm_domain_policy_entry *policy); } - SYS_FDATASYNC = 550 // { int fdatasync(int fd); } -+ SYS_FSTAT = 551 // { int fstat(int fd, struct stat *sb); } -+ SYS_FSTATAT = 552 // { int fstatat(int fd, char *path, struct stat *buf, int flag); } -+ SYS_FHSTAT = 553 // { int fhstat(const struct fhandle *u_fhp, struct stat *sb); } -+ SYS_GETDIRENTRIES = 554 // { ssize_t getdirentries(int fd, char *buf, size_t count, off_t *basep); } -+ SYS_STATFS = 555 // { int statfs(char *path, struct statfs *buf); } -+ SYS_FSTATFS = 556 // { int fstatfs(int fd, struct statfs *buf); } -+ SYS_GETFSSTAT = 557 // { int getfsstat(struct statfs *buf, long bufsize, int mode); } -+ SYS_FHSTATFS = 558 // { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); } -+ SYS_MKNODAT = 559 // { int mknodat(int fd, char *path, mode_t mode, dev_t dev); } -+ SYS_KEVENT = 560 // { int kevent(int fd, struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); } -+ SYS_CPUSET_GETDOMAIN = 561 // { int cpuset_getdomain(cpulevel_t level, cpuwhich_t which, id_t id, size_t domainsetsize, domainset_t *mask, int *policy); } -+ SYS_CPUSET_SETDOMAIN = 562 // { int cpuset_setdomain(cpulevel_t level, cpuwhich_t which, id_t id, size_t domainsetsize, domainset_t *mask, int policy); } -+ SYS_GETRANDOM = 563 // { int getrandom(void *buf, size_t buflen, unsigned int flags); } -+ SYS_GETFHAT = 564 // { int getfhat(int fd, char *path, struct fhandle *fhp, int flags); } -+ SYS_FHLINK = 565 // { int fhlink(struct fhandle *fhp, const char *to); } -+ SYS_FHLINKAT = 566 // { int fhlinkat(struct fhandle *fhp, int tofd, const char *to,); } -+ SYS_FHREADLINK = 567 // { int fhreadlink(struct fhandle *fhp, char *buf, size_t bufsize); } -+ SYS___SYSCTLBYNAME = 570 // { int __sysctlbyname(const char *name, size_t namelen, void *old, size_t *oldlenp, void *new, size_t newlen); } -+ SYS_CLOSE_RANGE = 575 // { int close_range(u_int lowfd, u_int highfd, int flags); } - ) -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm.go b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm.go -index 4a6dfd4..ad99bc1 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm.go -@@ -1,6 +1,7 @@ --// go run mksysnum.go https://svn.freebsd.org/base/stable/11/sys/kern/syscalls.master -+// go run mksysnum.go https://cgit.freebsd.org/src/plain/sys/kern/syscalls.master?h=stable/12 - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build arm && freebsd - // +build arm,freebsd - - package unix -@@ -18,10 +19,9 @@ const ( - SYS_UNLINK = 10 // { int unlink(char *path); } - SYS_CHDIR = 12 // { int chdir(char *path); } - SYS_FCHDIR = 13 // { int fchdir(int fd); } -- SYS_MKNOD = 14 // { int mknod(char *path, int mode, int dev); } - SYS_CHMOD = 15 // { int chmod(char *path, int mode); } - SYS_CHOWN = 16 // { int chown(char *path, int uid, int gid); } -- SYS_OBREAK = 17 // { int obreak(char *nsize); } break obreak_args int -+ SYS_BREAK = 17 // { caddr_t break(char *nsize); } - SYS_GETPID = 20 // { pid_t getpid(void); } - SYS_MOUNT = 21 // { int mount(char *type, char *path, int flags, caddr_t data); } - SYS_UNMOUNT = 22 // { int unmount(char *path, int flags); } -@@ -42,7 +42,6 @@ const ( - SYS_KILL = 37 // { int kill(int pid, int signum); } - SYS_GETPPID = 39 // { pid_t getppid(void); } - SYS_DUP = 41 // { int dup(u_int fd); } -- SYS_PIPE = 42 // { int pipe(void); } - SYS_GETEGID = 43 // { gid_t getegid(void); } - SYS_PROFIL = 44 // { int profil(caddr_t samples, size_t size, size_t offset, u_int scale); } - SYS_KTRACE = 45 // { int ktrace(const char *fname, int ops, int facs, int pid); } -@@ -57,15 +56,14 @@ const ( - SYS_SYMLINK = 57 // { int symlink(char *path, char *link); } - SYS_READLINK = 58 // { ssize_t readlink(char *path, char *buf, size_t count); } - SYS_EXECVE = 59 // { int execve(char *fname, char **argv, char **envv); } -- SYS_UMASK = 60 // { int umask(int newmask); } umask umask_args int -+ SYS_UMASK = 60 // { int umask(int newmask); } - SYS_CHROOT = 61 // { int chroot(char *path); } - SYS_MSYNC = 65 // { int msync(void *addr, size_t len, int flags); } - SYS_VFORK = 66 // { int vfork(void); } - SYS_SBRK = 69 // { int sbrk(int incr); } - SYS_SSTK = 70 // { int sstk(int incr); } -- SYS_OVADVISE = 72 // { int ovadvise(int anom); } vadvise ovadvise_args int - SYS_MUNMAP = 73 // { int munmap(void *addr, size_t len); } -- SYS_MPROTECT = 74 // { int mprotect(const void *addr, size_t len, int prot); } -+ SYS_MPROTECT = 74 // { int mprotect(void *addr, size_t len, int prot); } - SYS_MADVISE = 75 // { int madvise(void *addr, size_t len, int behav); } - SYS_MINCORE = 78 // { int mincore(const void *addr, size_t len, char *vec); } - SYS_GETGROUPS = 79 // { int getgroups(u_int gidsetsize, gid_t *gidset); } -@@ -123,14 +121,10 @@ const ( - SYS_SETGID = 181 // { int setgid(gid_t gid); } - SYS_SETEGID = 182 // { int setegid(gid_t egid); } - SYS_SETEUID = 183 // { int seteuid(uid_t euid); } -- SYS_STAT = 188 // { int stat(char *path, struct stat *ub); } -- SYS_FSTAT = 189 // { int fstat(int fd, struct stat *sb); } -- SYS_LSTAT = 190 // { int lstat(char *path, struct stat *ub); } - SYS_PATHCONF = 191 // { int pathconf(char *path, int name); } - SYS_FPATHCONF = 192 // { int fpathconf(int fd, int name); } - SYS_GETRLIMIT = 194 // { int getrlimit(u_int which, struct rlimit *rlp); } getrlimit __getrlimit_args int - SYS_SETRLIMIT = 195 // { int setrlimit(u_int which, struct rlimit *rlp); } setrlimit __setrlimit_args int -- SYS_GETDIRENTRIES = 196 // { int getdirentries(int fd, char *buf, u_int count, long *basep); } - SYS___SYSCTL = 202 // { int __sysctl(int *name, u_int namelen, void *old, size_t *oldlenp, void *new, size_t newlen); } __sysctl sysctl_args int - SYS_MLOCK = 203 // { int mlock(const void *addr, size_t len); } - SYS_MUNLOCK = 204 // { int munlock(const void *addr, size_t len); } -@@ -142,12 +136,12 @@ const ( - SYS_SEMOP = 222 // { int semop(int semid, struct sembuf *sops, size_t nsops); } - SYS_MSGGET = 225 // { int msgget(key_t key, int msgflg); } - SYS_MSGSND = 226 // { int msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); } -- SYS_MSGRCV = 227 // { int msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); } -+ SYS_MSGRCV = 227 // { ssize_t msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); } - SYS_SHMAT = 228 // { int shmat(int shmid, const void *shmaddr, int shmflg); } - SYS_SHMDT = 230 // { int shmdt(const void *shmaddr); } - SYS_SHMGET = 231 // { int shmget(key_t key, size_t size, int shmflg); } - SYS_CLOCK_GETTIME = 232 // { int clock_gettime(clockid_t clock_id, struct timespec *tp); } -- SYS_CLOCK_SETTIME = 233 // { int clock_settime( clockid_t clock_id, const struct timespec *tp); } -+ SYS_CLOCK_SETTIME = 233 // { int clock_settime(clockid_t clock_id, const struct timespec *tp); } - SYS_CLOCK_GETRES = 234 // { int clock_getres(clockid_t clock_id, struct timespec *tp); } - SYS_KTIMER_CREATE = 235 // { int ktimer_create(clockid_t clock_id, struct sigevent *evp, int *timerid); } - SYS_KTIMER_DELETE = 236 // { int ktimer_delete(int timerid); } -@@ -156,50 +150,44 @@ const ( - SYS_KTIMER_GETOVERRUN = 239 // { int ktimer_getoverrun(int timerid); } - SYS_NANOSLEEP = 240 // { int nanosleep(const struct timespec *rqtp, struct timespec *rmtp); } - SYS_FFCLOCK_GETCOUNTER = 241 // { int ffclock_getcounter(ffcounter *ffcount); } -- SYS_FFCLOCK_SETESTIMATE = 242 // { int ffclock_setestimate( struct ffclock_estimate *cest); } -- SYS_FFCLOCK_GETESTIMATE = 243 // { int ffclock_getestimate( struct ffclock_estimate *cest); } -+ SYS_FFCLOCK_SETESTIMATE = 242 // { int ffclock_setestimate(struct ffclock_estimate *cest); } -+ SYS_FFCLOCK_GETESTIMATE = 243 // { int ffclock_getestimate(struct ffclock_estimate *cest); } - SYS_CLOCK_NANOSLEEP = 244 // { int clock_nanosleep(clockid_t clock_id, int flags, const struct timespec *rqtp, struct timespec *rmtp); } -- SYS_CLOCK_GETCPUCLOCKID2 = 247 // { int clock_getcpuclockid2(id_t id,int which, clockid_t *clock_id); } -+ SYS_CLOCK_GETCPUCLOCKID2 = 247 // { int clock_getcpuclockid2(id_t id, int which, clockid_t *clock_id); } - SYS_NTP_GETTIME = 248 // { int ntp_gettime(struct ntptimeval *ntvp); } - SYS_MINHERIT = 250 // { int minherit(void *addr, size_t len, int inherit); } - SYS_RFORK = 251 // { int rfork(int flags); } -- SYS_OPENBSD_POLL = 252 // { int openbsd_poll(struct pollfd *fds, u_int nfds, int timeout); } - SYS_ISSETUGID = 253 // { int issetugid(void); } - SYS_LCHOWN = 254 // { int lchown(char *path, int uid, int gid); } - SYS_AIO_READ = 255 // { int aio_read(struct aiocb *aiocbp); } - SYS_AIO_WRITE = 256 // { int aio_write(struct aiocb *aiocbp); } -- SYS_LIO_LISTIO = 257 // { int lio_listio(int mode, struct aiocb * const *acb_list, int nent, struct sigevent *sig); } -- SYS_GETDENTS = 272 // { int getdents(int fd, char *buf, size_t count); } -+ SYS_LIO_LISTIO = 257 // { int lio_listio(int mode, struct aiocb* const *acb_list, int nent, struct sigevent *sig); } - SYS_LCHMOD = 274 // { int lchmod(char *path, mode_t mode); } - SYS_LUTIMES = 276 // { int lutimes(char *path, struct timeval *tptr); } -- SYS_NSTAT = 278 // { int nstat(char *path, struct nstat *ub); } -- SYS_NFSTAT = 279 // { int nfstat(int fd, struct nstat *sb); } -- SYS_NLSTAT = 280 // { int nlstat(char *path, struct nstat *ub); } - SYS_PREADV = 289 // { ssize_t preadv(int fd, struct iovec *iovp, u_int iovcnt, off_t offset); } - SYS_PWRITEV = 290 // { ssize_t pwritev(int fd, struct iovec *iovp, u_int iovcnt, off_t offset); } - SYS_FHOPEN = 298 // { int fhopen(const struct fhandle *u_fhp, int flags); } -- SYS_FHSTAT = 299 // { int fhstat(const struct fhandle *u_fhp, struct stat *sb); } - SYS_MODNEXT = 300 // { int modnext(int modid); } -- SYS_MODSTAT = 301 // { int modstat(int modid, struct module_stat *stat); } -+ SYS_MODSTAT = 301 // { int modstat(int modid, struct module_stat* stat); } - SYS_MODFNEXT = 302 // { int modfnext(int modid); } - SYS_MODFIND = 303 // { int modfind(const char *name); } - SYS_KLDLOAD = 304 // { int kldload(const char *file); } - SYS_KLDUNLOAD = 305 // { int kldunload(int fileid); } - SYS_KLDFIND = 306 // { int kldfind(const char *file); } - SYS_KLDNEXT = 307 // { int kldnext(int fileid); } -- SYS_KLDSTAT = 308 // { int kldstat(int fileid, struct kld_file_stat* stat); } -+ SYS_KLDSTAT = 308 // { int kldstat(int fileid, struct kld_file_stat *stat); } - SYS_KLDFIRSTMOD = 309 // { int kldfirstmod(int fileid); } - SYS_GETSID = 310 // { int getsid(pid_t pid); } - SYS_SETRESUID = 311 // { int setresuid(uid_t ruid, uid_t euid, uid_t suid); } - SYS_SETRESGID = 312 // { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); } - SYS_AIO_RETURN = 314 // { ssize_t aio_return(struct aiocb *aiocbp); } -- SYS_AIO_SUSPEND = 315 // { int aio_suspend( struct aiocb * const * aiocbp, int nent, const struct timespec *timeout); } -+ SYS_AIO_SUSPEND = 315 // { int aio_suspend(struct aiocb * const * aiocbp, int nent, const struct timespec *timeout); } - SYS_AIO_CANCEL = 316 // { int aio_cancel(int fd, struct aiocb *aiocbp); } - SYS_AIO_ERROR = 317 // { int aio_error(struct aiocb *aiocbp); } - SYS_YIELD = 321 // { int yield(void); } - SYS_MLOCKALL = 324 // { int mlockall(int how); } - SYS_MUNLOCKALL = 325 // { int munlockall(void); } -- SYS___GETCWD = 326 // { int __getcwd(char *buf, u_int buflen); } -+ SYS___GETCWD = 326 // { int __getcwd(char *buf, size_t buflen); } - SYS_SCHED_SETPARAM = 327 // { int sched_setparam (pid_t pid, const struct sched_param *param); } - SYS_SCHED_GETPARAM = 328 // { int sched_getparam (pid_t pid, struct sched_param *param); } - SYS_SCHED_SETSCHEDULER = 329 // { int sched_setscheduler (pid_t pid, int policy, const struct sched_param *param); } -@@ -225,14 +213,13 @@ const ( - SYS___ACL_ACLCHECK_FILE = 353 // { int __acl_aclcheck_file(const char *path, acl_type_t type, struct acl *aclp); } - SYS___ACL_ACLCHECK_FD = 354 // { int __acl_aclcheck_fd(int filedes, acl_type_t type, struct acl *aclp); } - SYS_EXTATTRCTL = 355 // { int extattrctl(const char *path, int cmd, const char *filename, int attrnamespace, const char *attrname); } -- SYS_EXTATTR_SET_FILE = 356 // { ssize_t extattr_set_file( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -- SYS_EXTATTR_GET_FILE = 357 // { ssize_t extattr_get_file( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -+ SYS_EXTATTR_SET_FILE = 356 // { ssize_t extattr_set_file(const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -+ SYS_EXTATTR_GET_FILE = 357 // { ssize_t extattr_get_file(const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } - SYS_EXTATTR_DELETE_FILE = 358 // { int extattr_delete_file(const char *path, int attrnamespace, const char *attrname); } -- SYS_AIO_WAITCOMPLETE = 359 // { ssize_t aio_waitcomplete( struct aiocb **aiocbp, struct timespec *timeout); } -+ SYS_AIO_WAITCOMPLETE = 359 // { ssize_t aio_waitcomplete(struct aiocb **aiocbp, struct timespec *timeout); } - SYS_GETRESUID = 360 // { int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); } - SYS_GETRESGID = 361 // { int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); } - SYS_KQUEUE = 362 // { int kqueue(void); } -- SYS_KEVENT = 363 // { int kevent(int fd, struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); } - SYS_EXTATTR_SET_FD = 371 // { ssize_t extattr_set_fd(int fd, int attrnamespace, const char *attrname, void *data, size_t nbytes); } - SYS_EXTATTR_GET_FD = 372 // { ssize_t extattr_get_fd(int fd, int attrnamespace, const char *attrname, void *data, size_t nbytes); } - SYS_EXTATTR_DELETE_FD = 373 // { int extattr_delete_fd(int fd, int attrnamespace, const char *attrname); } -@@ -250,10 +237,6 @@ const ( - SYS_UUIDGEN = 392 // { int uuidgen(struct uuid *store, int count); } - SYS_SENDFILE = 393 // { int sendfile(int fd, int s, off_t offset, size_t nbytes, struct sf_hdtr *hdtr, off_t *sbytes, int flags); } - SYS_MAC_SYSCALL = 394 // { int mac_syscall(const char *policy, int call, void *arg); } -- SYS_GETFSSTAT = 395 // { int getfsstat(struct statfs *buf, long bufsize, int mode); } -- SYS_STATFS = 396 // { int statfs(char *path, struct statfs *buf); } -- SYS_FSTATFS = 397 // { int fstatfs(int fd, struct statfs *buf); } -- SYS_FHSTATFS = 398 // { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); } - SYS_KSEM_CLOSE = 400 // { int ksem_close(semid_t id); } - SYS_KSEM_POST = 401 // { int ksem_post(semid_t id); } - SYS_KSEM_WAIT = 402 // { int ksem_wait(semid_t id); } -@@ -266,14 +249,14 @@ const ( - SYS___MAC_GET_PID = 409 // { int __mac_get_pid(pid_t pid, struct mac *mac_p); } - SYS___MAC_GET_LINK = 410 // { int __mac_get_link(const char *path_p, struct mac *mac_p); } - SYS___MAC_SET_LINK = 411 // { int __mac_set_link(const char *path_p, struct mac *mac_p); } -- SYS_EXTATTR_SET_LINK = 412 // { ssize_t extattr_set_link( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -- SYS_EXTATTR_GET_LINK = 413 // { ssize_t extattr_get_link( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -- SYS_EXTATTR_DELETE_LINK = 414 // { int extattr_delete_link( const char *path, int attrnamespace, const char *attrname); } -+ SYS_EXTATTR_SET_LINK = 412 // { ssize_t extattr_set_link(const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -+ SYS_EXTATTR_GET_LINK = 413 // { ssize_t extattr_get_link(const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -+ SYS_EXTATTR_DELETE_LINK = 414 // { int extattr_delete_link(const char *path, int attrnamespace, const char *attrname); } - SYS___MAC_EXECVE = 415 // { int __mac_execve(char *fname, char **argv, char **envv, struct mac *mac_p); } - SYS_SIGACTION = 416 // { int sigaction(int sig, const struct sigaction *act, struct sigaction *oact); } -- SYS_SIGRETURN = 417 // { int sigreturn( const struct __ucontext *sigcntxp); } -+ SYS_SIGRETURN = 417 // { int sigreturn(const struct __ucontext *sigcntxp); } - SYS_GETCONTEXT = 421 // { int getcontext(struct __ucontext *ucp); } -- SYS_SETCONTEXT = 422 // { int setcontext( const struct __ucontext *ucp); } -+ SYS_SETCONTEXT = 422 // { int setcontext(const struct __ucontext *ucp); } - SYS_SWAPCONTEXT = 423 // { int swapcontext(struct __ucontext *oucp, const struct __ucontext *ucp); } - SYS_SWAPOFF = 424 // { int swapoff(const char *name); } - SYS___ACL_GET_LINK = 425 // { int __acl_get_link(const char *path, acl_type_t type, struct acl *aclp); } -@@ -287,10 +270,10 @@ const ( - SYS_THR_KILL = 433 // { int thr_kill(long id, int sig); } - SYS_JAIL_ATTACH = 436 // { int jail_attach(int jid); } - SYS_EXTATTR_LIST_FD = 437 // { ssize_t extattr_list_fd(int fd, int attrnamespace, void *data, size_t nbytes); } -- SYS_EXTATTR_LIST_FILE = 438 // { ssize_t extattr_list_file( const char *path, int attrnamespace, void *data, size_t nbytes); } -- SYS_EXTATTR_LIST_LINK = 439 // { ssize_t extattr_list_link( const char *path, int attrnamespace, void *data, size_t nbytes); } -+ SYS_EXTATTR_LIST_FILE = 438 // { ssize_t extattr_list_file(const char *path, int attrnamespace, void *data, size_t nbytes); } -+ SYS_EXTATTR_LIST_LINK = 439 // { ssize_t extattr_list_link(const char *path, int attrnamespace, void *data, size_t nbytes); } - SYS_KSEM_TIMEDWAIT = 441 // { int ksem_timedwait(semid_t id, const struct timespec *abstime); } -- SYS_THR_SUSPEND = 442 // { int thr_suspend( const struct timespec *timeout); } -+ SYS_THR_SUSPEND = 442 // { int thr_suspend(const struct timespec *timeout); } - SYS_THR_WAKE = 443 // { int thr_wake(long id); } - SYS_KLDUNLOADF = 444 // { int kldunloadf(int fileid, int flags); } - SYS_AUDIT = 445 // { int audit(const void *record, u_int length); } -@@ -299,17 +282,17 @@ const ( - SYS_SETAUID = 448 // { int setauid(uid_t *auid); } - SYS_GETAUDIT = 449 // { int getaudit(struct auditinfo *auditinfo); } - SYS_SETAUDIT = 450 // { int setaudit(struct auditinfo *auditinfo); } -- SYS_GETAUDIT_ADDR = 451 // { int getaudit_addr( struct auditinfo_addr *auditinfo_addr, u_int length); } -- SYS_SETAUDIT_ADDR = 452 // { int setaudit_addr( struct auditinfo_addr *auditinfo_addr, u_int length); } -+ SYS_GETAUDIT_ADDR = 451 // { int getaudit_addr(struct auditinfo_addr *auditinfo_addr, u_int length); } -+ SYS_SETAUDIT_ADDR = 452 // { int setaudit_addr(struct auditinfo_addr *auditinfo_addr, u_int length); } - SYS_AUDITCTL = 453 // { int auditctl(char *path); } - SYS__UMTX_OP = 454 // { int _umtx_op(void *obj, int op, u_long val, void *uaddr1, void *uaddr2); } - SYS_THR_NEW = 455 // { int thr_new(struct thr_param *param, int param_size); } - SYS_SIGQUEUE = 456 // { int sigqueue(pid_t pid, int signum, void *value); } - SYS_KMQ_OPEN = 457 // { int kmq_open(const char *path, int flags, mode_t mode, const struct mq_attr *attr); } -- SYS_KMQ_SETATTR = 458 // { int kmq_setattr(int mqd, const struct mq_attr *attr, struct mq_attr *oattr); } -- SYS_KMQ_TIMEDRECEIVE = 459 // { int kmq_timedreceive(int mqd, char *msg_ptr, size_t msg_len, unsigned *msg_prio, const struct timespec *abs_timeout); } -- SYS_KMQ_TIMEDSEND = 460 // { int kmq_timedsend(int mqd, const char *msg_ptr, size_t msg_len,unsigned msg_prio, const struct timespec *abs_timeout);} -- SYS_KMQ_NOTIFY = 461 // { int kmq_notify(int mqd, const struct sigevent *sigev); } -+ SYS_KMQ_SETATTR = 458 // { int kmq_setattr(int mqd, const struct mq_attr *attr, struct mq_attr *oattr); } -+ SYS_KMQ_TIMEDRECEIVE = 459 // { int kmq_timedreceive(int mqd, char *msg_ptr, size_t msg_len, unsigned *msg_prio, const struct timespec *abs_timeout); } -+ SYS_KMQ_TIMEDSEND = 460 // { int kmq_timedsend(int mqd, const char *msg_ptr, size_t msg_len, unsigned msg_prio, const struct timespec *abs_timeout); } -+ SYS_KMQ_NOTIFY = 461 // { int kmq_notify(int mqd, const struct sigevent *sigev); } - SYS_KMQ_UNLINK = 462 // { int kmq_unlink(const char *path); } - SYS_ABORT2 = 463 // { int abort2(const char *why, int nargs, void **args); } - SYS_THR_SET_NAME = 464 // { int thr_set_name(long id, const char *name); } -@@ -318,7 +301,7 @@ const ( - SYS_SCTP_PEELOFF = 471 // { int sctp_peeloff(int sd, uint32_t name); } - SYS_SCTP_GENERIC_SENDMSG = 472 // { int sctp_generic_sendmsg(int sd, caddr_t msg, int mlen, caddr_t to, __socklen_t tolen, struct sctp_sndrcvinfo *sinfo, int flags); } - SYS_SCTP_GENERIC_SENDMSG_IOV = 473 // { int sctp_generic_sendmsg_iov(int sd, struct iovec *iov, int iovlen, caddr_t to, __socklen_t tolen, struct sctp_sndrcvinfo *sinfo, int flags); } -- SYS_SCTP_GENERIC_RECVMSG = 474 // { int sctp_generic_recvmsg(int sd, struct iovec *iov, int iovlen, struct sockaddr * from, __socklen_t *fromlenaddr, struct sctp_sndrcvinfo *sinfo, int *msg_flags); } -+ SYS_SCTP_GENERIC_RECVMSG = 474 // { int sctp_generic_recvmsg(int sd, struct iovec *iov, int iovlen, struct sockaddr *from, __socklen_t *fromlenaddr, struct sctp_sndrcvinfo *sinfo, int *msg_flags); } - SYS_PREAD = 475 // { ssize_t pread(int fd, void *buf, size_t nbyte, off_t offset); } - SYS_PWRITE = 476 // { ssize_t pwrite(int fd, const void *buf, size_t nbyte, off_t offset); } - SYS_MMAP = 477 // { caddr_t mmap(caddr_t addr, size_t len, int prot, int flags, int fd, off_t pos); } -@@ -337,14 +320,12 @@ const ( - SYS_FCHMODAT = 490 // { int fchmodat(int fd, char *path, mode_t mode, int flag); } - SYS_FCHOWNAT = 491 // { int fchownat(int fd, char *path, uid_t uid, gid_t gid, int flag); } - SYS_FEXECVE = 492 // { int fexecve(int fd, char **argv, char **envv); } -- SYS_FSTATAT = 493 // { int fstatat(int fd, char *path, struct stat *buf, int flag); } - SYS_FUTIMESAT = 494 // { int futimesat(int fd, char *path, struct timeval *times); } - SYS_LINKAT = 495 // { int linkat(int fd1, char *path1, int fd2, char *path2, int flag); } - SYS_MKDIRAT = 496 // { int mkdirat(int fd, char *path, mode_t mode); } - SYS_MKFIFOAT = 497 // { int mkfifoat(int fd, char *path, mode_t mode); } -- SYS_MKNODAT = 498 // { int mknodat(int fd, char *path, mode_t mode, dev_t dev); } - SYS_OPENAT = 499 // { int openat(int fd, char *path, int flag, mode_t mode); } -- SYS_READLINKAT = 500 // { int readlinkat(int fd, char *path, char *buf, size_t bufsize); } -+ SYS_READLINKAT = 500 // { ssize_t readlinkat(int fd, char *path, char *buf, size_t bufsize); } - SYS_RENAMEAT = 501 // { int renameat(int oldfd, char *old, int newfd, char *new); } - SYS_SYMLINKAT = 502 // { int symlinkat(char *path1, int fd, char *path2); } - SYS_UNLINKAT = 503 // { int unlinkat(int fd, char *path, int flag); } -@@ -390,7 +371,24 @@ const ( - SYS_PPOLL = 545 // { int ppoll(struct pollfd *fds, u_int nfds, const struct timespec *ts, const sigset_t *set); } - SYS_FUTIMENS = 546 // { int futimens(int fd, struct timespec *times); } - SYS_UTIMENSAT = 547 // { int utimensat(int fd, char *path, struct timespec *times, int flag); } -- SYS_NUMA_GETAFFINITY = 548 // { int numa_getaffinity(cpuwhich_t which, id_t id, struct vm_domain_policy_entry *policy); } -- SYS_NUMA_SETAFFINITY = 549 // { int numa_setaffinity(cpuwhich_t which, id_t id, const struct vm_domain_policy_entry *policy); } - SYS_FDATASYNC = 550 // { int fdatasync(int fd); } -+ SYS_FSTAT = 551 // { int fstat(int fd, struct stat *sb); } -+ SYS_FSTATAT = 552 // { int fstatat(int fd, char *path, struct stat *buf, int flag); } -+ SYS_FHSTAT = 553 // { int fhstat(const struct fhandle *u_fhp, struct stat *sb); } -+ SYS_GETDIRENTRIES = 554 // { ssize_t getdirentries(int fd, char *buf, size_t count, off_t *basep); } -+ SYS_STATFS = 555 // { int statfs(char *path, struct statfs *buf); } -+ SYS_FSTATFS = 556 // { int fstatfs(int fd, struct statfs *buf); } -+ SYS_GETFSSTAT = 557 // { int getfsstat(struct statfs *buf, long bufsize, int mode); } -+ SYS_FHSTATFS = 558 // { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); } -+ SYS_MKNODAT = 559 // { int mknodat(int fd, char *path, mode_t mode, dev_t dev); } -+ SYS_KEVENT = 560 // { int kevent(int fd, struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); } -+ SYS_CPUSET_GETDOMAIN = 561 // { int cpuset_getdomain(cpulevel_t level, cpuwhich_t which, id_t id, size_t domainsetsize, domainset_t *mask, int *policy); } -+ SYS_CPUSET_SETDOMAIN = 562 // { int cpuset_setdomain(cpulevel_t level, cpuwhich_t which, id_t id, size_t domainsetsize, domainset_t *mask, int policy); } -+ SYS_GETRANDOM = 563 // { int getrandom(void *buf, size_t buflen, unsigned int flags); } -+ SYS_GETFHAT = 564 // { int getfhat(int fd, char *path, struct fhandle *fhp, int flags); } -+ SYS_FHLINK = 565 // { int fhlink(struct fhandle *fhp, const char *to); } -+ SYS_FHLINKAT = 566 // { int fhlinkat(struct fhandle *fhp, int tofd, const char *to,); } -+ SYS_FHREADLINK = 567 // { int fhreadlink(struct fhandle *fhp, char *buf, size_t bufsize); } -+ SYS___SYSCTLBYNAME = 570 // { int __sysctlbyname(const char *name, size_t namelen, void *old, size_t *oldlenp, void *new, size_t newlen); } -+ SYS_CLOSE_RANGE = 575 // { int close_range(u_int lowfd, u_int highfd, int flags); } - ) -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm64.go b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm64.go -index 3e51af8..89dcc42 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm64.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_arm64.go -@@ -1,6 +1,7 @@ --// go run mksysnum.go https://svn.freebsd.org/base/stable/11/sys/kern/syscalls.master -+// go run mksysnum.go https://cgit.freebsd.org/src/plain/sys/kern/syscalls.master?h=stable/12 - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build arm64 && freebsd - // +build arm64,freebsd - - package unix -@@ -18,10 +19,9 @@ const ( - SYS_UNLINK = 10 // { int unlink(char *path); } - SYS_CHDIR = 12 // { int chdir(char *path); } - SYS_FCHDIR = 13 // { int fchdir(int fd); } -- SYS_MKNOD = 14 // { int mknod(char *path, int mode, int dev); } - SYS_CHMOD = 15 // { int chmod(char *path, int mode); } - SYS_CHOWN = 16 // { int chown(char *path, int uid, int gid); } -- SYS_OBREAK = 17 // { int obreak(char *nsize); } break obreak_args int -+ SYS_BREAK = 17 // { caddr_t break(char *nsize); } - SYS_GETPID = 20 // { pid_t getpid(void); } - SYS_MOUNT = 21 // { int mount(char *type, char *path, int flags, caddr_t data); } - SYS_UNMOUNT = 22 // { int unmount(char *path, int flags); } -@@ -42,7 +42,6 @@ const ( - SYS_KILL = 37 // { int kill(int pid, int signum); } - SYS_GETPPID = 39 // { pid_t getppid(void); } - SYS_DUP = 41 // { int dup(u_int fd); } -- SYS_PIPE = 42 // { int pipe(void); } - SYS_GETEGID = 43 // { gid_t getegid(void); } - SYS_PROFIL = 44 // { int profil(caddr_t samples, size_t size, size_t offset, u_int scale); } - SYS_KTRACE = 45 // { int ktrace(const char *fname, int ops, int facs, int pid); } -@@ -57,15 +56,14 @@ const ( - SYS_SYMLINK = 57 // { int symlink(char *path, char *link); } - SYS_READLINK = 58 // { ssize_t readlink(char *path, char *buf, size_t count); } - SYS_EXECVE = 59 // { int execve(char *fname, char **argv, char **envv); } -- SYS_UMASK = 60 // { int umask(int newmask); } umask umask_args int -+ SYS_UMASK = 60 // { int umask(int newmask); } - SYS_CHROOT = 61 // { int chroot(char *path); } - SYS_MSYNC = 65 // { int msync(void *addr, size_t len, int flags); } - SYS_VFORK = 66 // { int vfork(void); } - SYS_SBRK = 69 // { int sbrk(int incr); } - SYS_SSTK = 70 // { int sstk(int incr); } -- SYS_OVADVISE = 72 // { int ovadvise(int anom); } vadvise ovadvise_args int - SYS_MUNMAP = 73 // { int munmap(void *addr, size_t len); } -- SYS_MPROTECT = 74 // { int mprotect(const void *addr, size_t len, int prot); } -+ SYS_MPROTECT = 74 // { int mprotect(void *addr, size_t len, int prot); } - SYS_MADVISE = 75 // { int madvise(void *addr, size_t len, int behav); } - SYS_MINCORE = 78 // { int mincore(const void *addr, size_t len, char *vec); } - SYS_GETGROUPS = 79 // { int getgroups(u_int gidsetsize, gid_t *gidset); } -@@ -123,14 +121,10 @@ const ( - SYS_SETGID = 181 // { int setgid(gid_t gid); } - SYS_SETEGID = 182 // { int setegid(gid_t egid); } - SYS_SETEUID = 183 // { int seteuid(uid_t euid); } -- SYS_STAT = 188 // { int stat(char *path, struct stat *ub); } -- SYS_FSTAT = 189 // { int fstat(int fd, struct stat *sb); } -- SYS_LSTAT = 190 // { int lstat(char *path, struct stat *ub); } - SYS_PATHCONF = 191 // { int pathconf(char *path, int name); } - SYS_FPATHCONF = 192 // { int fpathconf(int fd, int name); } - SYS_GETRLIMIT = 194 // { int getrlimit(u_int which, struct rlimit *rlp); } getrlimit __getrlimit_args int - SYS_SETRLIMIT = 195 // { int setrlimit(u_int which, struct rlimit *rlp); } setrlimit __setrlimit_args int -- SYS_GETDIRENTRIES = 196 // { int getdirentries(int fd, char *buf, u_int count, long *basep); } - SYS___SYSCTL = 202 // { int __sysctl(int *name, u_int namelen, void *old, size_t *oldlenp, void *new, size_t newlen); } __sysctl sysctl_args int - SYS_MLOCK = 203 // { int mlock(const void *addr, size_t len); } - SYS_MUNLOCK = 204 // { int munlock(const void *addr, size_t len); } -@@ -142,12 +136,12 @@ const ( - SYS_SEMOP = 222 // { int semop(int semid, struct sembuf *sops, size_t nsops); } - SYS_MSGGET = 225 // { int msgget(key_t key, int msgflg); } - SYS_MSGSND = 226 // { int msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); } -- SYS_MSGRCV = 227 // { int msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); } -+ SYS_MSGRCV = 227 // { ssize_t msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); } - SYS_SHMAT = 228 // { int shmat(int shmid, const void *shmaddr, int shmflg); } - SYS_SHMDT = 230 // { int shmdt(const void *shmaddr); } - SYS_SHMGET = 231 // { int shmget(key_t key, size_t size, int shmflg); } - SYS_CLOCK_GETTIME = 232 // { int clock_gettime(clockid_t clock_id, struct timespec *tp); } -- SYS_CLOCK_SETTIME = 233 // { int clock_settime( clockid_t clock_id, const struct timespec *tp); } -+ SYS_CLOCK_SETTIME = 233 // { int clock_settime(clockid_t clock_id, const struct timespec *tp); } - SYS_CLOCK_GETRES = 234 // { int clock_getres(clockid_t clock_id, struct timespec *tp); } - SYS_KTIMER_CREATE = 235 // { int ktimer_create(clockid_t clock_id, struct sigevent *evp, int *timerid); } - SYS_KTIMER_DELETE = 236 // { int ktimer_delete(int timerid); } -@@ -156,50 +150,44 @@ const ( - SYS_KTIMER_GETOVERRUN = 239 // { int ktimer_getoverrun(int timerid); } - SYS_NANOSLEEP = 240 // { int nanosleep(const struct timespec *rqtp, struct timespec *rmtp); } - SYS_FFCLOCK_GETCOUNTER = 241 // { int ffclock_getcounter(ffcounter *ffcount); } -- SYS_FFCLOCK_SETESTIMATE = 242 // { int ffclock_setestimate( struct ffclock_estimate *cest); } -- SYS_FFCLOCK_GETESTIMATE = 243 // { int ffclock_getestimate( struct ffclock_estimate *cest); } -+ SYS_FFCLOCK_SETESTIMATE = 242 // { int ffclock_setestimate(struct ffclock_estimate *cest); } -+ SYS_FFCLOCK_GETESTIMATE = 243 // { int ffclock_getestimate(struct ffclock_estimate *cest); } - SYS_CLOCK_NANOSLEEP = 244 // { int clock_nanosleep(clockid_t clock_id, int flags, const struct timespec *rqtp, struct timespec *rmtp); } -- SYS_CLOCK_GETCPUCLOCKID2 = 247 // { int clock_getcpuclockid2(id_t id,int which, clockid_t *clock_id); } -+ SYS_CLOCK_GETCPUCLOCKID2 = 247 // { int clock_getcpuclockid2(id_t id, int which, clockid_t *clock_id); } - SYS_NTP_GETTIME = 248 // { int ntp_gettime(struct ntptimeval *ntvp); } - SYS_MINHERIT = 250 // { int minherit(void *addr, size_t len, int inherit); } - SYS_RFORK = 251 // { int rfork(int flags); } -- SYS_OPENBSD_POLL = 252 // { int openbsd_poll(struct pollfd *fds, u_int nfds, int timeout); } - SYS_ISSETUGID = 253 // { int issetugid(void); } - SYS_LCHOWN = 254 // { int lchown(char *path, int uid, int gid); } - SYS_AIO_READ = 255 // { int aio_read(struct aiocb *aiocbp); } - SYS_AIO_WRITE = 256 // { int aio_write(struct aiocb *aiocbp); } -- SYS_LIO_LISTIO = 257 // { int lio_listio(int mode, struct aiocb * const *acb_list, int nent, struct sigevent *sig); } -- SYS_GETDENTS = 272 // { int getdents(int fd, char *buf, size_t count); } -+ SYS_LIO_LISTIO = 257 // { int lio_listio(int mode, struct aiocb* const *acb_list, int nent, struct sigevent *sig); } - SYS_LCHMOD = 274 // { int lchmod(char *path, mode_t mode); } - SYS_LUTIMES = 276 // { int lutimes(char *path, struct timeval *tptr); } -- SYS_NSTAT = 278 // { int nstat(char *path, struct nstat *ub); } -- SYS_NFSTAT = 279 // { int nfstat(int fd, struct nstat *sb); } -- SYS_NLSTAT = 280 // { int nlstat(char *path, struct nstat *ub); } - SYS_PREADV = 289 // { ssize_t preadv(int fd, struct iovec *iovp, u_int iovcnt, off_t offset); } - SYS_PWRITEV = 290 // { ssize_t pwritev(int fd, struct iovec *iovp, u_int iovcnt, off_t offset); } - SYS_FHOPEN = 298 // { int fhopen(const struct fhandle *u_fhp, int flags); } -- SYS_FHSTAT = 299 // { int fhstat(const struct fhandle *u_fhp, struct stat *sb); } - SYS_MODNEXT = 300 // { int modnext(int modid); } -- SYS_MODSTAT = 301 // { int modstat(int modid, struct module_stat *stat); } -+ SYS_MODSTAT = 301 // { int modstat(int modid, struct module_stat* stat); } - SYS_MODFNEXT = 302 // { int modfnext(int modid); } - SYS_MODFIND = 303 // { int modfind(const char *name); } - SYS_KLDLOAD = 304 // { int kldload(const char *file); } - SYS_KLDUNLOAD = 305 // { int kldunload(int fileid); } - SYS_KLDFIND = 306 // { int kldfind(const char *file); } - SYS_KLDNEXT = 307 // { int kldnext(int fileid); } -- SYS_KLDSTAT = 308 // { int kldstat(int fileid, struct kld_file_stat* stat); } -+ SYS_KLDSTAT = 308 // { int kldstat(int fileid, struct kld_file_stat *stat); } - SYS_KLDFIRSTMOD = 309 // { int kldfirstmod(int fileid); } - SYS_GETSID = 310 // { int getsid(pid_t pid); } - SYS_SETRESUID = 311 // { int setresuid(uid_t ruid, uid_t euid, uid_t suid); } - SYS_SETRESGID = 312 // { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); } - SYS_AIO_RETURN = 314 // { ssize_t aio_return(struct aiocb *aiocbp); } -- SYS_AIO_SUSPEND = 315 // { int aio_suspend( struct aiocb * const * aiocbp, int nent, const struct timespec *timeout); } -+ SYS_AIO_SUSPEND = 315 // { int aio_suspend(struct aiocb * const * aiocbp, int nent, const struct timespec *timeout); } - SYS_AIO_CANCEL = 316 // { int aio_cancel(int fd, struct aiocb *aiocbp); } - SYS_AIO_ERROR = 317 // { int aio_error(struct aiocb *aiocbp); } - SYS_YIELD = 321 // { int yield(void); } - SYS_MLOCKALL = 324 // { int mlockall(int how); } - SYS_MUNLOCKALL = 325 // { int munlockall(void); } -- SYS___GETCWD = 326 // { int __getcwd(char *buf, u_int buflen); } -+ SYS___GETCWD = 326 // { int __getcwd(char *buf, size_t buflen); } - SYS_SCHED_SETPARAM = 327 // { int sched_setparam (pid_t pid, const struct sched_param *param); } - SYS_SCHED_GETPARAM = 328 // { int sched_getparam (pid_t pid, struct sched_param *param); } - SYS_SCHED_SETSCHEDULER = 329 // { int sched_setscheduler (pid_t pid, int policy, const struct sched_param *param); } -@@ -225,14 +213,13 @@ const ( - SYS___ACL_ACLCHECK_FILE = 353 // { int __acl_aclcheck_file(const char *path, acl_type_t type, struct acl *aclp); } - SYS___ACL_ACLCHECK_FD = 354 // { int __acl_aclcheck_fd(int filedes, acl_type_t type, struct acl *aclp); } - SYS_EXTATTRCTL = 355 // { int extattrctl(const char *path, int cmd, const char *filename, int attrnamespace, const char *attrname); } -- SYS_EXTATTR_SET_FILE = 356 // { ssize_t extattr_set_file( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -- SYS_EXTATTR_GET_FILE = 357 // { ssize_t extattr_get_file( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -+ SYS_EXTATTR_SET_FILE = 356 // { ssize_t extattr_set_file(const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -+ SYS_EXTATTR_GET_FILE = 357 // { ssize_t extattr_get_file(const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } - SYS_EXTATTR_DELETE_FILE = 358 // { int extattr_delete_file(const char *path, int attrnamespace, const char *attrname); } -- SYS_AIO_WAITCOMPLETE = 359 // { ssize_t aio_waitcomplete( struct aiocb **aiocbp, struct timespec *timeout); } -+ SYS_AIO_WAITCOMPLETE = 359 // { ssize_t aio_waitcomplete(struct aiocb **aiocbp, struct timespec *timeout); } - SYS_GETRESUID = 360 // { int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); } - SYS_GETRESGID = 361 // { int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); } - SYS_KQUEUE = 362 // { int kqueue(void); } -- SYS_KEVENT = 363 // { int kevent(int fd, struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); } - SYS_EXTATTR_SET_FD = 371 // { ssize_t extattr_set_fd(int fd, int attrnamespace, const char *attrname, void *data, size_t nbytes); } - SYS_EXTATTR_GET_FD = 372 // { ssize_t extattr_get_fd(int fd, int attrnamespace, const char *attrname, void *data, size_t nbytes); } - SYS_EXTATTR_DELETE_FD = 373 // { int extattr_delete_fd(int fd, int attrnamespace, const char *attrname); } -@@ -250,10 +237,6 @@ const ( - SYS_UUIDGEN = 392 // { int uuidgen(struct uuid *store, int count); } - SYS_SENDFILE = 393 // { int sendfile(int fd, int s, off_t offset, size_t nbytes, struct sf_hdtr *hdtr, off_t *sbytes, int flags); } - SYS_MAC_SYSCALL = 394 // { int mac_syscall(const char *policy, int call, void *arg); } -- SYS_GETFSSTAT = 395 // { int getfsstat(struct statfs *buf, long bufsize, int mode); } -- SYS_STATFS = 396 // { int statfs(char *path, struct statfs *buf); } -- SYS_FSTATFS = 397 // { int fstatfs(int fd, struct statfs *buf); } -- SYS_FHSTATFS = 398 // { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); } - SYS_KSEM_CLOSE = 400 // { int ksem_close(semid_t id); } - SYS_KSEM_POST = 401 // { int ksem_post(semid_t id); } - SYS_KSEM_WAIT = 402 // { int ksem_wait(semid_t id); } -@@ -266,14 +249,14 @@ const ( - SYS___MAC_GET_PID = 409 // { int __mac_get_pid(pid_t pid, struct mac *mac_p); } - SYS___MAC_GET_LINK = 410 // { int __mac_get_link(const char *path_p, struct mac *mac_p); } - SYS___MAC_SET_LINK = 411 // { int __mac_set_link(const char *path_p, struct mac *mac_p); } -- SYS_EXTATTR_SET_LINK = 412 // { ssize_t extattr_set_link( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -- SYS_EXTATTR_GET_LINK = 413 // { ssize_t extattr_get_link( const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -- SYS_EXTATTR_DELETE_LINK = 414 // { int extattr_delete_link( const char *path, int attrnamespace, const char *attrname); } -+ SYS_EXTATTR_SET_LINK = 412 // { ssize_t extattr_set_link(const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -+ SYS_EXTATTR_GET_LINK = 413 // { ssize_t extattr_get_link(const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -+ SYS_EXTATTR_DELETE_LINK = 414 // { int extattr_delete_link(const char *path, int attrnamespace, const char *attrname); } - SYS___MAC_EXECVE = 415 // { int __mac_execve(char *fname, char **argv, char **envv, struct mac *mac_p); } - SYS_SIGACTION = 416 // { int sigaction(int sig, const struct sigaction *act, struct sigaction *oact); } -- SYS_SIGRETURN = 417 // { int sigreturn( const struct __ucontext *sigcntxp); } -+ SYS_SIGRETURN = 417 // { int sigreturn(const struct __ucontext *sigcntxp); } - SYS_GETCONTEXT = 421 // { int getcontext(struct __ucontext *ucp); } -- SYS_SETCONTEXT = 422 // { int setcontext( const struct __ucontext *ucp); } -+ SYS_SETCONTEXT = 422 // { int setcontext(const struct __ucontext *ucp); } - SYS_SWAPCONTEXT = 423 // { int swapcontext(struct __ucontext *oucp, const struct __ucontext *ucp); } - SYS_SWAPOFF = 424 // { int swapoff(const char *name); } - SYS___ACL_GET_LINK = 425 // { int __acl_get_link(const char *path, acl_type_t type, struct acl *aclp); } -@@ -287,10 +270,10 @@ const ( - SYS_THR_KILL = 433 // { int thr_kill(long id, int sig); } - SYS_JAIL_ATTACH = 436 // { int jail_attach(int jid); } - SYS_EXTATTR_LIST_FD = 437 // { ssize_t extattr_list_fd(int fd, int attrnamespace, void *data, size_t nbytes); } -- SYS_EXTATTR_LIST_FILE = 438 // { ssize_t extattr_list_file( const char *path, int attrnamespace, void *data, size_t nbytes); } -- SYS_EXTATTR_LIST_LINK = 439 // { ssize_t extattr_list_link( const char *path, int attrnamespace, void *data, size_t nbytes); } -+ SYS_EXTATTR_LIST_FILE = 438 // { ssize_t extattr_list_file(const char *path, int attrnamespace, void *data, size_t nbytes); } -+ SYS_EXTATTR_LIST_LINK = 439 // { ssize_t extattr_list_link(const char *path, int attrnamespace, void *data, size_t nbytes); } - SYS_KSEM_TIMEDWAIT = 441 // { int ksem_timedwait(semid_t id, const struct timespec *abstime); } -- SYS_THR_SUSPEND = 442 // { int thr_suspend( const struct timespec *timeout); } -+ SYS_THR_SUSPEND = 442 // { int thr_suspend(const struct timespec *timeout); } - SYS_THR_WAKE = 443 // { int thr_wake(long id); } - SYS_KLDUNLOADF = 444 // { int kldunloadf(int fileid, int flags); } - SYS_AUDIT = 445 // { int audit(const void *record, u_int length); } -@@ -299,17 +282,17 @@ const ( - SYS_SETAUID = 448 // { int setauid(uid_t *auid); } - SYS_GETAUDIT = 449 // { int getaudit(struct auditinfo *auditinfo); } - SYS_SETAUDIT = 450 // { int setaudit(struct auditinfo *auditinfo); } -- SYS_GETAUDIT_ADDR = 451 // { int getaudit_addr( struct auditinfo_addr *auditinfo_addr, u_int length); } -- SYS_SETAUDIT_ADDR = 452 // { int setaudit_addr( struct auditinfo_addr *auditinfo_addr, u_int length); } -+ SYS_GETAUDIT_ADDR = 451 // { int getaudit_addr(struct auditinfo_addr *auditinfo_addr, u_int length); } -+ SYS_SETAUDIT_ADDR = 452 // { int setaudit_addr(struct auditinfo_addr *auditinfo_addr, u_int length); } - SYS_AUDITCTL = 453 // { int auditctl(char *path); } - SYS__UMTX_OP = 454 // { int _umtx_op(void *obj, int op, u_long val, void *uaddr1, void *uaddr2); } - SYS_THR_NEW = 455 // { int thr_new(struct thr_param *param, int param_size); } - SYS_SIGQUEUE = 456 // { int sigqueue(pid_t pid, int signum, void *value); } - SYS_KMQ_OPEN = 457 // { int kmq_open(const char *path, int flags, mode_t mode, const struct mq_attr *attr); } -- SYS_KMQ_SETATTR = 458 // { int kmq_setattr(int mqd, const struct mq_attr *attr, struct mq_attr *oattr); } -- SYS_KMQ_TIMEDRECEIVE = 459 // { int kmq_timedreceive(int mqd, char *msg_ptr, size_t msg_len, unsigned *msg_prio, const struct timespec *abs_timeout); } -- SYS_KMQ_TIMEDSEND = 460 // { int kmq_timedsend(int mqd, const char *msg_ptr, size_t msg_len,unsigned msg_prio, const struct timespec *abs_timeout);} -- SYS_KMQ_NOTIFY = 461 // { int kmq_notify(int mqd, const struct sigevent *sigev); } -+ SYS_KMQ_SETATTR = 458 // { int kmq_setattr(int mqd, const struct mq_attr *attr, struct mq_attr *oattr); } -+ SYS_KMQ_TIMEDRECEIVE = 459 // { int kmq_timedreceive(int mqd, char *msg_ptr, size_t msg_len, unsigned *msg_prio, const struct timespec *abs_timeout); } -+ SYS_KMQ_TIMEDSEND = 460 // { int kmq_timedsend(int mqd, const char *msg_ptr, size_t msg_len, unsigned msg_prio, const struct timespec *abs_timeout); } -+ SYS_KMQ_NOTIFY = 461 // { int kmq_notify(int mqd, const struct sigevent *sigev); } - SYS_KMQ_UNLINK = 462 // { int kmq_unlink(const char *path); } - SYS_ABORT2 = 463 // { int abort2(const char *why, int nargs, void **args); } - SYS_THR_SET_NAME = 464 // { int thr_set_name(long id, const char *name); } -@@ -318,7 +301,7 @@ const ( - SYS_SCTP_PEELOFF = 471 // { int sctp_peeloff(int sd, uint32_t name); } - SYS_SCTP_GENERIC_SENDMSG = 472 // { int sctp_generic_sendmsg(int sd, caddr_t msg, int mlen, caddr_t to, __socklen_t tolen, struct sctp_sndrcvinfo *sinfo, int flags); } - SYS_SCTP_GENERIC_SENDMSG_IOV = 473 // { int sctp_generic_sendmsg_iov(int sd, struct iovec *iov, int iovlen, caddr_t to, __socklen_t tolen, struct sctp_sndrcvinfo *sinfo, int flags); } -- SYS_SCTP_GENERIC_RECVMSG = 474 // { int sctp_generic_recvmsg(int sd, struct iovec *iov, int iovlen, struct sockaddr * from, __socklen_t *fromlenaddr, struct sctp_sndrcvinfo *sinfo, int *msg_flags); } -+ SYS_SCTP_GENERIC_RECVMSG = 474 // { int sctp_generic_recvmsg(int sd, struct iovec *iov, int iovlen, struct sockaddr *from, __socklen_t *fromlenaddr, struct sctp_sndrcvinfo *sinfo, int *msg_flags); } - SYS_PREAD = 475 // { ssize_t pread(int fd, void *buf, size_t nbyte, off_t offset); } - SYS_PWRITE = 476 // { ssize_t pwrite(int fd, const void *buf, size_t nbyte, off_t offset); } - SYS_MMAP = 477 // { caddr_t mmap(caddr_t addr, size_t len, int prot, int flags, int fd, off_t pos); } -@@ -337,14 +320,12 @@ const ( - SYS_FCHMODAT = 490 // { int fchmodat(int fd, char *path, mode_t mode, int flag); } - SYS_FCHOWNAT = 491 // { int fchownat(int fd, char *path, uid_t uid, gid_t gid, int flag); } - SYS_FEXECVE = 492 // { int fexecve(int fd, char **argv, char **envv); } -- SYS_FSTATAT = 493 // { int fstatat(int fd, char *path, struct stat *buf, int flag); } - SYS_FUTIMESAT = 494 // { int futimesat(int fd, char *path, struct timeval *times); } - SYS_LINKAT = 495 // { int linkat(int fd1, char *path1, int fd2, char *path2, int flag); } - SYS_MKDIRAT = 496 // { int mkdirat(int fd, char *path, mode_t mode); } - SYS_MKFIFOAT = 497 // { int mkfifoat(int fd, char *path, mode_t mode); } -- SYS_MKNODAT = 498 // { int mknodat(int fd, char *path, mode_t mode, dev_t dev); } - SYS_OPENAT = 499 // { int openat(int fd, char *path, int flag, mode_t mode); } -- SYS_READLINKAT = 500 // { int readlinkat(int fd, char *path, char *buf, size_t bufsize); } -+ SYS_READLINKAT = 500 // { ssize_t readlinkat(int fd, char *path, char *buf, size_t bufsize); } - SYS_RENAMEAT = 501 // { int renameat(int oldfd, char *old, int newfd, char *new); } - SYS_SYMLINKAT = 502 // { int symlinkat(char *path1, int fd, char *path2); } - SYS_UNLINKAT = 503 // { int unlinkat(int fd, char *path, int flag); } -@@ -390,7 +371,24 @@ const ( - SYS_PPOLL = 545 // { int ppoll(struct pollfd *fds, u_int nfds, const struct timespec *ts, const sigset_t *set); } - SYS_FUTIMENS = 546 // { int futimens(int fd, struct timespec *times); } - SYS_UTIMENSAT = 547 // { int utimensat(int fd, char *path, struct timespec *times, int flag); } -- SYS_NUMA_GETAFFINITY = 548 // { int numa_getaffinity(cpuwhich_t which, id_t id, struct vm_domain_policy_entry *policy); } -- SYS_NUMA_SETAFFINITY = 549 // { int numa_setaffinity(cpuwhich_t which, id_t id, const struct vm_domain_policy_entry *policy); } - SYS_FDATASYNC = 550 // { int fdatasync(int fd); } -+ SYS_FSTAT = 551 // { int fstat(int fd, struct stat *sb); } -+ SYS_FSTATAT = 552 // { int fstatat(int fd, char *path, struct stat *buf, int flag); } -+ SYS_FHSTAT = 553 // { int fhstat(const struct fhandle *u_fhp, struct stat *sb); } -+ SYS_GETDIRENTRIES = 554 // { ssize_t getdirentries(int fd, char *buf, size_t count, off_t *basep); } -+ SYS_STATFS = 555 // { int statfs(char *path, struct statfs *buf); } -+ SYS_FSTATFS = 556 // { int fstatfs(int fd, struct statfs *buf); } -+ SYS_GETFSSTAT = 557 // { int getfsstat(struct statfs *buf, long bufsize, int mode); } -+ SYS_FHSTATFS = 558 // { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); } -+ SYS_MKNODAT = 559 // { int mknodat(int fd, char *path, mode_t mode, dev_t dev); } -+ SYS_KEVENT = 560 // { int kevent(int fd, struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); } -+ SYS_CPUSET_GETDOMAIN = 561 // { int cpuset_getdomain(cpulevel_t level, cpuwhich_t which, id_t id, size_t domainsetsize, domainset_t *mask, int *policy); } -+ SYS_CPUSET_SETDOMAIN = 562 // { int cpuset_setdomain(cpulevel_t level, cpuwhich_t which, id_t id, size_t domainsetsize, domainset_t *mask, int policy); } -+ SYS_GETRANDOM = 563 // { int getrandom(void *buf, size_t buflen, unsigned int flags); } -+ SYS_GETFHAT = 564 // { int getfhat(int fd, char *path, struct fhandle *fhp, int flags); } -+ SYS_FHLINK = 565 // { int fhlink(struct fhandle *fhp, const char *to); } -+ SYS_FHLINKAT = 566 // { int fhlinkat(struct fhandle *fhp, int tofd, const char *to,); } -+ SYS_FHREADLINK = 567 // { int fhreadlink(struct fhandle *fhp, char *buf, size_t bufsize); } -+ SYS___SYSCTLBYNAME = 570 // { int __sysctlbyname(const char *name, size_t namelen, void *old, size_t *oldlenp, void *new, size_t newlen); } -+ SYS_CLOSE_RANGE = 575 // { int close_range(u_int lowfd, u_int highfd, int flags); } - ) -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_freebsd_riscv64.go b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_riscv64.go -new file mode 100644 -index 0000000..ee37aaa ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/zsysnum_freebsd_riscv64.go -@@ -0,0 +1,394 @@ -+// go run mksysnum.go https://cgit.freebsd.org/src/plain/sys/kern/syscalls.master?h=stable/12 -+// Code generated by the command above; see README.md. DO NOT EDIT. -+ -+//go:build riscv64 && freebsd -+// +build riscv64,freebsd -+ -+package unix -+ -+const ( -+ // SYS_NOSYS = 0; // { int nosys(void); } syscall nosys_args int -+ SYS_EXIT = 1 // { void sys_exit(int rval); } exit sys_exit_args void -+ SYS_FORK = 2 // { int fork(void); } -+ SYS_READ = 3 // { ssize_t read(int fd, void *buf, size_t nbyte); } -+ SYS_WRITE = 4 // { ssize_t write(int fd, const void *buf, size_t nbyte); } -+ SYS_OPEN = 5 // { int open(char *path, int flags, int mode); } -+ SYS_CLOSE = 6 // { int close(int fd); } -+ SYS_WAIT4 = 7 // { int wait4(int pid, int *status, int options, struct rusage *rusage); } -+ SYS_LINK = 9 // { int link(char *path, char *link); } -+ SYS_UNLINK = 10 // { int unlink(char *path); } -+ SYS_CHDIR = 12 // { int chdir(char *path); } -+ SYS_FCHDIR = 13 // { int fchdir(int fd); } -+ SYS_CHMOD = 15 // { int chmod(char *path, int mode); } -+ SYS_CHOWN = 16 // { int chown(char *path, int uid, int gid); } -+ SYS_BREAK = 17 // { caddr_t break(char *nsize); } -+ SYS_GETPID = 20 // { pid_t getpid(void); } -+ SYS_MOUNT = 21 // { int mount(char *type, char *path, int flags, caddr_t data); } -+ SYS_UNMOUNT = 22 // { int unmount(char *path, int flags); } -+ SYS_SETUID = 23 // { int setuid(uid_t uid); } -+ SYS_GETUID = 24 // { uid_t getuid(void); } -+ SYS_GETEUID = 25 // { uid_t geteuid(void); } -+ SYS_PTRACE = 26 // { int ptrace(int req, pid_t pid, caddr_t addr, int data); } -+ SYS_RECVMSG = 27 // { int recvmsg(int s, struct msghdr *msg, int flags); } -+ SYS_SENDMSG = 28 // { int sendmsg(int s, struct msghdr *msg, int flags); } -+ SYS_RECVFROM = 29 // { int recvfrom(int s, caddr_t buf, size_t len, int flags, struct sockaddr * __restrict from, __socklen_t * __restrict fromlenaddr); } -+ SYS_ACCEPT = 30 // { int accept(int s, struct sockaddr * __restrict name, __socklen_t * __restrict anamelen); } -+ SYS_GETPEERNAME = 31 // { int getpeername(int fdes, struct sockaddr * __restrict asa, __socklen_t * __restrict alen); } -+ SYS_GETSOCKNAME = 32 // { int getsockname(int fdes, struct sockaddr * __restrict asa, __socklen_t * __restrict alen); } -+ SYS_ACCESS = 33 // { int access(char *path, int amode); } -+ SYS_CHFLAGS = 34 // { int chflags(const char *path, u_long flags); } -+ SYS_FCHFLAGS = 35 // { int fchflags(int fd, u_long flags); } -+ SYS_SYNC = 36 // { int sync(void); } -+ SYS_KILL = 37 // { int kill(int pid, int signum); } -+ SYS_GETPPID = 39 // { pid_t getppid(void); } -+ SYS_DUP = 41 // { int dup(u_int fd); } -+ SYS_GETEGID = 43 // { gid_t getegid(void); } -+ SYS_PROFIL = 44 // { int profil(caddr_t samples, size_t size, size_t offset, u_int scale); } -+ SYS_KTRACE = 45 // { int ktrace(const char *fname, int ops, int facs, int pid); } -+ SYS_GETGID = 47 // { gid_t getgid(void); } -+ SYS_GETLOGIN = 49 // { int getlogin(char *namebuf, u_int namelen); } -+ SYS_SETLOGIN = 50 // { int setlogin(char *namebuf); } -+ SYS_ACCT = 51 // { int acct(char *path); } -+ SYS_SIGALTSTACK = 53 // { int sigaltstack(stack_t *ss, stack_t *oss); } -+ SYS_IOCTL = 54 // { int ioctl(int fd, u_long com, caddr_t data); } -+ SYS_REBOOT = 55 // { int reboot(int opt); } -+ SYS_REVOKE = 56 // { int revoke(char *path); } -+ SYS_SYMLINK = 57 // { int symlink(char *path, char *link); } -+ SYS_READLINK = 58 // { ssize_t readlink(char *path, char *buf, size_t count); } -+ SYS_EXECVE = 59 // { int execve(char *fname, char **argv, char **envv); } -+ SYS_UMASK = 60 // { int umask(int newmask); } -+ SYS_CHROOT = 61 // { int chroot(char *path); } -+ SYS_MSYNC = 65 // { int msync(void *addr, size_t len, int flags); } -+ SYS_VFORK = 66 // { int vfork(void); } -+ SYS_SBRK = 69 // { int sbrk(int incr); } -+ SYS_SSTK = 70 // { int sstk(int incr); } -+ SYS_MUNMAP = 73 // { int munmap(void *addr, size_t len); } -+ SYS_MPROTECT = 74 // { int mprotect(void *addr, size_t len, int prot); } -+ SYS_MADVISE = 75 // { int madvise(void *addr, size_t len, int behav); } -+ SYS_MINCORE = 78 // { int mincore(const void *addr, size_t len, char *vec); } -+ SYS_GETGROUPS = 79 // { int getgroups(u_int gidsetsize, gid_t *gidset); } -+ SYS_SETGROUPS = 80 // { int setgroups(u_int gidsetsize, gid_t *gidset); } -+ SYS_GETPGRP = 81 // { int getpgrp(void); } -+ SYS_SETPGID = 82 // { int setpgid(int pid, int pgid); } -+ SYS_SETITIMER = 83 // { int setitimer(u_int which, struct itimerval *itv, struct itimerval *oitv); } -+ SYS_SWAPON = 85 // { int swapon(char *name); } -+ SYS_GETITIMER = 86 // { int getitimer(u_int which, struct itimerval *itv); } -+ SYS_GETDTABLESIZE = 89 // { int getdtablesize(void); } -+ SYS_DUP2 = 90 // { int dup2(u_int from, u_int to); } -+ SYS_FCNTL = 92 // { int fcntl(int fd, int cmd, long arg); } -+ SYS_SELECT = 93 // { int select(int nd, fd_set *in, fd_set *ou, fd_set *ex, struct timeval *tv); } -+ SYS_FSYNC = 95 // { int fsync(int fd); } -+ SYS_SETPRIORITY = 96 // { int setpriority(int which, int who, int prio); } -+ SYS_SOCKET = 97 // { int socket(int domain, int type, int protocol); } -+ SYS_CONNECT = 98 // { int connect(int s, caddr_t name, int namelen); } -+ SYS_GETPRIORITY = 100 // { int getpriority(int which, int who); } -+ SYS_BIND = 104 // { int bind(int s, caddr_t name, int namelen); } -+ SYS_SETSOCKOPT = 105 // { int setsockopt(int s, int level, int name, caddr_t val, int valsize); } -+ SYS_LISTEN = 106 // { int listen(int s, int backlog); } -+ SYS_GETTIMEOFDAY = 116 // { int gettimeofday(struct timeval *tp, struct timezone *tzp); } -+ SYS_GETRUSAGE = 117 // { int getrusage(int who, struct rusage *rusage); } -+ SYS_GETSOCKOPT = 118 // { int getsockopt(int s, int level, int name, caddr_t val, int *avalsize); } -+ SYS_READV = 120 // { int readv(int fd, struct iovec *iovp, u_int iovcnt); } -+ SYS_WRITEV = 121 // { int writev(int fd, struct iovec *iovp, u_int iovcnt); } -+ SYS_SETTIMEOFDAY = 122 // { int settimeofday(struct timeval *tv, struct timezone *tzp); } -+ SYS_FCHOWN = 123 // { int fchown(int fd, int uid, int gid); } -+ SYS_FCHMOD = 124 // { int fchmod(int fd, int mode); } -+ SYS_SETREUID = 126 // { int setreuid(int ruid, int euid); } -+ SYS_SETREGID = 127 // { int setregid(int rgid, int egid); } -+ SYS_RENAME = 128 // { int rename(char *from, char *to); } -+ SYS_FLOCK = 131 // { int flock(int fd, int how); } -+ SYS_MKFIFO = 132 // { int mkfifo(char *path, int mode); } -+ SYS_SENDTO = 133 // { int sendto(int s, caddr_t buf, size_t len, int flags, caddr_t to, int tolen); } -+ SYS_SHUTDOWN = 134 // { int shutdown(int s, int how); } -+ SYS_SOCKETPAIR = 135 // { int socketpair(int domain, int type, int protocol, int *rsv); } -+ SYS_MKDIR = 136 // { int mkdir(char *path, int mode); } -+ SYS_RMDIR = 137 // { int rmdir(char *path); } -+ SYS_UTIMES = 138 // { int utimes(char *path, struct timeval *tptr); } -+ SYS_ADJTIME = 140 // { int adjtime(struct timeval *delta, struct timeval *olddelta); } -+ SYS_SETSID = 147 // { int setsid(void); } -+ SYS_QUOTACTL = 148 // { int quotactl(char *path, int cmd, int uid, caddr_t arg); } -+ SYS_NLM_SYSCALL = 154 // { int nlm_syscall(int debug_level, int grace_period, int addr_count, char **addrs); } -+ SYS_NFSSVC = 155 // { int nfssvc(int flag, caddr_t argp); } -+ SYS_LGETFH = 160 // { int lgetfh(char *fname, struct fhandle *fhp); } -+ SYS_GETFH = 161 // { int getfh(char *fname, struct fhandle *fhp); } -+ SYS_SYSARCH = 165 // { int sysarch(int op, char *parms); } -+ SYS_RTPRIO = 166 // { int rtprio(int function, pid_t pid, struct rtprio *rtp); } -+ SYS_SEMSYS = 169 // { int semsys(int which, int a2, int a3, int a4, int a5); } -+ SYS_MSGSYS = 170 // { int msgsys(int which, int a2, int a3, int a4, int a5, int a6); } -+ SYS_SHMSYS = 171 // { int shmsys(int which, int a2, int a3, int a4); } -+ SYS_SETFIB = 175 // { int setfib(int fibnum); } -+ SYS_NTP_ADJTIME = 176 // { int ntp_adjtime(struct timex *tp); } -+ SYS_SETGID = 181 // { int setgid(gid_t gid); } -+ SYS_SETEGID = 182 // { int setegid(gid_t egid); } -+ SYS_SETEUID = 183 // { int seteuid(uid_t euid); } -+ SYS_PATHCONF = 191 // { int pathconf(char *path, int name); } -+ SYS_FPATHCONF = 192 // { int fpathconf(int fd, int name); } -+ SYS_GETRLIMIT = 194 // { int getrlimit(u_int which, struct rlimit *rlp); } getrlimit __getrlimit_args int -+ SYS_SETRLIMIT = 195 // { int setrlimit(u_int which, struct rlimit *rlp); } setrlimit __setrlimit_args int -+ SYS___SYSCTL = 202 // { int __sysctl(int *name, u_int namelen, void *old, size_t *oldlenp, void *new, size_t newlen); } __sysctl sysctl_args int -+ SYS_MLOCK = 203 // { int mlock(const void *addr, size_t len); } -+ SYS_MUNLOCK = 204 // { int munlock(const void *addr, size_t len); } -+ SYS_UNDELETE = 205 // { int undelete(char *path); } -+ SYS_FUTIMES = 206 // { int futimes(int fd, struct timeval *tptr); } -+ SYS_GETPGID = 207 // { int getpgid(pid_t pid); } -+ SYS_POLL = 209 // { int poll(struct pollfd *fds, u_int nfds, int timeout); } -+ SYS_SEMGET = 221 // { int semget(key_t key, int nsems, int semflg); } -+ SYS_SEMOP = 222 // { int semop(int semid, struct sembuf *sops, size_t nsops); } -+ SYS_MSGGET = 225 // { int msgget(key_t key, int msgflg); } -+ SYS_MSGSND = 226 // { int msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); } -+ SYS_MSGRCV = 227 // { ssize_t msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); } -+ SYS_SHMAT = 228 // { int shmat(int shmid, const void *shmaddr, int shmflg); } -+ SYS_SHMDT = 230 // { int shmdt(const void *shmaddr); } -+ SYS_SHMGET = 231 // { int shmget(key_t key, size_t size, int shmflg); } -+ SYS_CLOCK_GETTIME = 232 // { int clock_gettime(clockid_t clock_id, struct timespec *tp); } -+ SYS_CLOCK_SETTIME = 233 // { int clock_settime(clockid_t clock_id, const struct timespec *tp); } -+ SYS_CLOCK_GETRES = 234 // { int clock_getres(clockid_t clock_id, struct timespec *tp); } -+ SYS_KTIMER_CREATE = 235 // { int ktimer_create(clockid_t clock_id, struct sigevent *evp, int *timerid); } -+ SYS_KTIMER_DELETE = 236 // { int ktimer_delete(int timerid); } -+ SYS_KTIMER_SETTIME = 237 // { int ktimer_settime(int timerid, int flags, const struct itimerspec *value, struct itimerspec *ovalue); } -+ SYS_KTIMER_GETTIME = 238 // { int ktimer_gettime(int timerid, struct itimerspec *value); } -+ SYS_KTIMER_GETOVERRUN = 239 // { int ktimer_getoverrun(int timerid); } -+ SYS_NANOSLEEP = 240 // { int nanosleep(const struct timespec *rqtp, struct timespec *rmtp); } -+ SYS_FFCLOCK_GETCOUNTER = 241 // { int ffclock_getcounter(ffcounter *ffcount); } -+ SYS_FFCLOCK_SETESTIMATE = 242 // { int ffclock_setestimate(struct ffclock_estimate *cest); } -+ SYS_FFCLOCK_GETESTIMATE = 243 // { int ffclock_getestimate(struct ffclock_estimate *cest); } -+ SYS_CLOCK_NANOSLEEP = 244 // { int clock_nanosleep(clockid_t clock_id, int flags, const struct timespec *rqtp, struct timespec *rmtp); } -+ SYS_CLOCK_GETCPUCLOCKID2 = 247 // { int clock_getcpuclockid2(id_t id, int which, clockid_t *clock_id); } -+ SYS_NTP_GETTIME = 248 // { int ntp_gettime(struct ntptimeval *ntvp); } -+ SYS_MINHERIT = 250 // { int minherit(void *addr, size_t len, int inherit); } -+ SYS_RFORK = 251 // { int rfork(int flags); } -+ SYS_ISSETUGID = 253 // { int issetugid(void); } -+ SYS_LCHOWN = 254 // { int lchown(char *path, int uid, int gid); } -+ SYS_AIO_READ = 255 // { int aio_read(struct aiocb *aiocbp); } -+ SYS_AIO_WRITE = 256 // { int aio_write(struct aiocb *aiocbp); } -+ SYS_LIO_LISTIO = 257 // { int lio_listio(int mode, struct aiocb* const *acb_list, int nent, struct sigevent *sig); } -+ SYS_LCHMOD = 274 // { int lchmod(char *path, mode_t mode); } -+ SYS_LUTIMES = 276 // { int lutimes(char *path, struct timeval *tptr); } -+ SYS_PREADV = 289 // { ssize_t preadv(int fd, struct iovec *iovp, u_int iovcnt, off_t offset); } -+ SYS_PWRITEV = 290 // { ssize_t pwritev(int fd, struct iovec *iovp, u_int iovcnt, off_t offset); } -+ SYS_FHOPEN = 298 // { int fhopen(const struct fhandle *u_fhp, int flags); } -+ SYS_MODNEXT = 300 // { int modnext(int modid); } -+ SYS_MODSTAT = 301 // { int modstat(int modid, struct module_stat* stat); } -+ SYS_MODFNEXT = 302 // { int modfnext(int modid); } -+ SYS_MODFIND = 303 // { int modfind(const char *name); } -+ SYS_KLDLOAD = 304 // { int kldload(const char *file); } -+ SYS_KLDUNLOAD = 305 // { int kldunload(int fileid); } -+ SYS_KLDFIND = 306 // { int kldfind(const char *file); } -+ SYS_KLDNEXT = 307 // { int kldnext(int fileid); } -+ SYS_KLDSTAT = 308 // { int kldstat(int fileid, struct kld_file_stat *stat); } -+ SYS_KLDFIRSTMOD = 309 // { int kldfirstmod(int fileid); } -+ SYS_GETSID = 310 // { int getsid(pid_t pid); } -+ SYS_SETRESUID = 311 // { int setresuid(uid_t ruid, uid_t euid, uid_t suid); } -+ SYS_SETRESGID = 312 // { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); } -+ SYS_AIO_RETURN = 314 // { ssize_t aio_return(struct aiocb *aiocbp); } -+ SYS_AIO_SUSPEND = 315 // { int aio_suspend(struct aiocb * const * aiocbp, int nent, const struct timespec *timeout); } -+ SYS_AIO_CANCEL = 316 // { int aio_cancel(int fd, struct aiocb *aiocbp); } -+ SYS_AIO_ERROR = 317 // { int aio_error(struct aiocb *aiocbp); } -+ SYS_YIELD = 321 // { int yield(void); } -+ SYS_MLOCKALL = 324 // { int mlockall(int how); } -+ SYS_MUNLOCKALL = 325 // { int munlockall(void); } -+ SYS___GETCWD = 326 // { int __getcwd(char *buf, size_t buflen); } -+ SYS_SCHED_SETPARAM = 327 // { int sched_setparam (pid_t pid, const struct sched_param *param); } -+ SYS_SCHED_GETPARAM = 328 // { int sched_getparam (pid_t pid, struct sched_param *param); } -+ SYS_SCHED_SETSCHEDULER = 329 // { int sched_setscheduler (pid_t pid, int policy, const struct sched_param *param); } -+ SYS_SCHED_GETSCHEDULER = 330 // { int sched_getscheduler (pid_t pid); } -+ SYS_SCHED_YIELD = 331 // { int sched_yield (void); } -+ SYS_SCHED_GET_PRIORITY_MAX = 332 // { int sched_get_priority_max (int policy); } -+ SYS_SCHED_GET_PRIORITY_MIN = 333 // { int sched_get_priority_min (int policy); } -+ SYS_SCHED_RR_GET_INTERVAL = 334 // { int sched_rr_get_interval (pid_t pid, struct timespec *interval); } -+ SYS_UTRACE = 335 // { int utrace(const void *addr, size_t len); } -+ SYS_KLDSYM = 337 // { int kldsym(int fileid, int cmd, void *data); } -+ SYS_JAIL = 338 // { int jail(struct jail *jail); } -+ SYS_SIGPROCMASK = 340 // { int sigprocmask(int how, const sigset_t *set, sigset_t *oset); } -+ SYS_SIGSUSPEND = 341 // { int sigsuspend(const sigset_t *sigmask); } -+ SYS_SIGPENDING = 343 // { int sigpending(sigset_t *set); } -+ SYS_SIGTIMEDWAIT = 345 // { int sigtimedwait(const sigset_t *set, siginfo_t *info, const struct timespec *timeout); } -+ SYS_SIGWAITINFO = 346 // { int sigwaitinfo(const sigset_t *set, siginfo_t *info); } -+ SYS___ACL_GET_FILE = 347 // { int __acl_get_file(const char *path, acl_type_t type, struct acl *aclp); } -+ SYS___ACL_SET_FILE = 348 // { int __acl_set_file(const char *path, acl_type_t type, struct acl *aclp); } -+ SYS___ACL_GET_FD = 349 // { int __acl_get_fd(int filedes, acl_type_t type, struct acl *aclp); } -+ SYS___ACL_SET_FD = 350 // { int __acl_set_fd(int filedes, acl_type_t type, struct acl *aclp); } -+ SYS___ACL_DELETE_FILE = 351 // { int __acl_delete_file(const char *path, acl_type_t type); } -+ SYS___ACL_DELETE_FD = 352 // { int __acl_delete_fd(int filedes, acl_type_t type); } -+ SYS___ACL_ACLCHECK_FILE = 353 // { int __acl_aclcheck_file(const char *path, acl_type_t type, struct acl *aclp); } -+ SYS___ACL_ACLCHECK_FD = 354 // { int __acl_aclcheck_fd(int filedes, acl_type_t type, struct acl *aclp); } -+ SYS_EXTATTRCTL = 355 // { int extattrctl(const char *path, int cmd, const char *filename, int attrnamespace, const char *attrname); } -+ SYS_EXTATTR_SET_FILE = 356 // { ssize_t extattr_set_file(const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -+ SYS_EXTATTR_GET_FILE = 357 // { ssize_t extattr_get_file(const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -+ SYS_EXTATTR_DELETE_FILE = 358 // { int extattr_delete_file(const char *path, int attrnamespace, const char *attrname); } -+ SYS_AIO_WAITCOMPLETE = 359 // { ssize_t aio_waitcomplete(struct aiocb **aiocbp, struct timespec *timeout); } -+ SYS_GETRESUID = 360 // { int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); } -+ SYS_GETRESGID = 361 // { int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); } -+ SYS_KQUEUE = 362 // { int kqueue(void); } -+ SYS_EXTATTR_SET_FD = 371 // { ssize_t extattr_set_fd(int fd, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -+ SYS_EXTATTR_GET_FD = 372 // { ssize_t extattr_get_fd(int fd, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -+ SYS_EXTATTR_DELETE_FD = 373 // { int extattr_delete_fd(int fd, int attrnamespace, const char *attrname); } -+ SYS___SETUGID = 374 // { int __setugid(int flag); } -+ SYS_EACCESS = 376 // { int eaccess(char *path, int amode); } -+ SYS_NMOUNT = 378 // { int nmount(struct iovec *iovp, unsigned int iovcnt, int flags); } -+ SYS___MAC_GET_PROC = 384 // { int __mac_get_proc(struct mac *mac_p); } -+ SYS___MAC_SET_PROC = 385 // { int __mac_set_proc(struct mac *mac_p); } -+ SYS___MAC_GET_FD = 386 // { int __mac_get_fd(int fd, struct mac *mac_p); } -+ SYS___MAC_GET_FILE = 387 // { int __mac_get_file(const char *path_p, struct mac *mac_p); } -+ SYS___MAC_SET_FD = 388 // { int __mac_set_fd(int fd, struct mac *mac_p); } -+ SYS___MAC_SET_FILE = 389 // { int __mac_set_file(const char *path_p, struct mac *mac_p); } -+ SYS_KENV = 390 // { int kenv(int what, const char *name, char *value, int len); } -+ SYS_LCHFLAGS = 391 // { int lchflags(const char *path, u_long flags); } -+ SYS_UUIDGEN = 392 // { int uuidgen(struct uuid *store, int count); } -+ SYS_SENDFILE = 393 // { int sendfile(int fd, int s, off_t offset, size_t nbytes, struct sf_hdtr *hdtr, off_t *sbytes, int flags); } -+ SYS_MAC_SYSCALL = 394 // { int mac_syscall(const char *policy, int call, void *arg); } -+ SYS_KSEM_CLOSE = 400 // { int ksem_close(semid_t id); } -+ SYS_KSEM_POST = 401 // { int ksem_post(semid_t id); } -+ SYS_KSEM_WAIT = 402 // { int ksem_wait(semid_t id); } -+ SYS_KSEM_TRYWAIT = 403 // { int ksem_trywait(semid_t id); } -+ SYS_KSEM_INIT = 404 // { int ksem_init(semid_t *idp, unsigned int value); } -+ SYS_KSEM_OPEN = 405 // { int ksem_open(semid_t *idp, const char *name, int oflag, mode_t mode, unsigned int value); } -+ SYS_KSEM_UNLINK = 406 // { int ksem_unlink(const char *name); } -+ SYS_KSEM_GETVALUE = 407 // { int ksem_getvalue(semid_t id, int *val); } -+ SYS_KSEM_DESTROY = 408 // { int ksem_destroy(semid_t id); } -+ SYS___MAC_GET_PID = 409 // { int __mac_get_pid(pid_t pid, struct mac *mac_p); } -+ SYS___MAC_GET_LINK = 410 // { int __mac_get_link(const char *path_p, struct mac *mac_p); } -+ SYS___MAC_SET_LINK = 411 // { int __mac_set_link(const char *path_p, struct mac *mac_p); } -+ SYS_EXTATTR_SET_LINK = 412 // { ssize_t extattr_set_link(const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -+ SYS_EXTATTR_GET_LINK = 413 // { ssize_t extattr_get_link(const char *path, int attrnamespace, const char *attrname, void *data, size_t nbytes); } -+ SYS_EXTATTR_DELETE_LINK = 414 // { int extattr_delete_link(const char *path, int attrnamespace, const char *attrname); } -+ SYS___MAC_EXECVE = 415 // { int __mac_execve(char *fname, char **argv, char **envv, struct mac *mac_p); } -+ SYS_SIGACTION = 416 // { int sigaction(int sig, const struct sigaction *act, struct sigaction *oact); } -+ SYS_SIGRETURN = 417 // { int sigreturn(const struct __ucontext *sigcntxp); } -+ SYS_GETCONTEXT = 421 // { int getcontext(struct __ucontext *ucp); } -+ SYS_SETCONTEXT = 422 // { int setcontext(const struct __ucontext *ucp); } -+ SYS_SWAPCONTEXT = 423 // { int swapcontext(struct __ucontext *oucp, const struct __ucontext *ucp); } -+ SYS_SWAPOFF = 424 // { int swapoff(const char *name); } -+ SYS___ACL_GET_LINK = 425 // { int __acl_get_link(const char *path, acl_type_t type, struct acl *aclp); } -+ SYS___ACL_SET_LINK = 426 // { int __acl_set_link(const char *path, acl_type_t type, struct acl *aclp); } -+ SYS___ACL_DELETE_LINK = 427 // { int __acl_delete_link(const char *path, acl_type_t type); } -+ SYS___ACL_ACLCHECK_LINK = 428 // { int __acl_aclcheck_link(const char *path, acl_type_t type, struct acl *aclp); } -+ SYS_SIGWAIT = 429 // { int sigwait(const sigset_t *set, int *sig); } -+ SYS_THR_CREATE = 430 // { int thr_create(ucontext_t *ctx, long *id, int flags); } -+ SYS_THR_EXIT = 431 // { void thr_exit(long *state); } -+ SYS_THR_SELF = 432 // { int thr_self(long *id); } -+ SYS_THR_KILL = 433 // { int thr_kill(long id, int sig); } -+ SYS_JAIL_ATTACH = 436 // { int jail_attach(int jid); } -+ SYS_EXTATTR_LIST_FD = 437 // { ssize_t extattr_list_fd(int fd, int attrnamespace, void *data, size_t nbytes); } -+ SYS_EXTATTR_LIST_FILE = 438 // { ssize_t extattr_list_file(const char *path, int attrnamespace, void *data, size_t nbytes); } -+ SYS_EXTATTR_LIST_LINK = 439 // { ssize_t extattr_list_link(const char *path, int attrnamespace, void *data, size_t nbytes); } -+ SYS_KSEM_TIMEDWAIT = 441 // { int ksem_timedwait(semid_t id, const struct timespec *abstime); } -+ SYS_THR_SUSPEND = 442 // { int thr_suspend(const struct timespec *timeout); } -+ SYS_THR_WAKE = 443 // { int thr_wake(long id); } -+ SYS_KLDUNLOADF = 444 // { int kldunloadf(int fileid, int flags); } -+ SYS_AUDIT = 445 // { int audit(const void *record, u_int length); } -+ SYS_AUDITON = 446 // { int auditon(int cmd, void *data, u_int length); } -+ SYS_GETAUID = 447 // { int getauid(uid_t *auid); } -+ SYS_SETAUID = 448 // { int setauid(uid_t *auid); } -+ SYS_GETAUDIT = 449 // { int getaudit(struct auditinfo *auditinfo); } -+ SYS_SETAUDIT = 450 // { int setaudit(struct auditinfo *auditinfo); } -+ SYS_GETAUDIT_ADDR = 451 // { int getaudit_addr(struct auditinfo_addr *auditinfo_addr, u_int length); } -+ SYS_SETAUDIT_ADDR = 452 // { int setaudit_addr(struct auditinfo_addr *auditinfo_addr, u_int length); } -+ SYS_AUDITCTL = 453 // { int auditctl(char *path); } -+ SYS__UMTX_OP = 454 // { int _umtx_op(void *obj, int op, u_long val, void *uaddr1, void *uaddr2); } -+ SYS_THR_NEW = 455 // { int thr_new(struct thr_param *param, int param_size); } -+ SYS_SIGQUEUE = 456 // { int sigqueue(pid_t pid, int signum, void *value); } -+ SYS_KMQ_OPEN = 457 // { int kmq_open(const char *path, int flags, mode_t mode, const struct mq_attr *attr); } -+ SYS_KMQ_SETATTR = 458 // { int kmq_setattr(int mqd, const struct mq_attr *attr, struct mq_attr *oattr); } -+ SYS_KMQ_TIMEDRECEIVE = 459 // { int kmq_timedreceive(int mqd, char *msg_ptr, size_t msg_len, unsigned *msg_prio, const struct timespec *abs_timeout); } -+ SYS_KMQ_TIMEDSEND = 460 // { int kmq_timedsend(int mqd, const char *msg_ptr, size_t msg_len, unsigned msg_prio, const struct timespec *abs_timeout); } -+ SYS_KMQ_NOTIFY = 461 // { int kmq_notify(int mqd, const struct sigevent *sigev); } -+ SYS_KMQ_UNLINK = 462 // { int kmq_unlink(const char *path); } -+ SYS_ABORT2 = 463 // { int abort2(const char *why, int nargs, void **args); } -+ SYS_THR_SET_NAME = 464 // { int thr_set_name(long id, const char *name); } -+ SYS_AIO_FSYNC = 465 // { int aio_fsync(int op, struct aiocb *aiocbp); } -+ SYS_RTPRIO_THREAD = 466 // { int rtprio_thread(int function, lwpid_t lwpid, struct rtprio *rtp); } -+ SYS_SCTP_PEELOFF = 471 // { int sctp_peeloff(int sd, uint32_t name); } -+ SYS_SCTP_GENERIC_SENDMSG = 472 // { int sctp_generic_sendmsg(int sd, caddr_t msg, int mlen, caddr_t to, __socklen_t tolen, struct sctp_sndrcvinfo *sinfo, int flags); } -+ SYS_SCTP_GENERIC_SENDMSG_IOV = 473 // { int sctp_generic_sendmsg_iov(int sd, struct iovec *iov, int iovlen, caddr_t to, __socklen_t tolen, struct sctp_sndrcvinfo *sinfo, int flags); } -+ SYS_SCTP_GENERIC_RECVMSG = 474 // { int sctp_generic_recvmsg(int sd, struct iovec *iov, int iovlen, struct sockaddr *from, __socklen_t *fromlenaddr, struct sctp_sndrcvinfo *sinfo, int *msg_flags); } -+ SYS_PREAD = 475 // { ssize_t pread(int fd, void *buf, size_t nbyte, off_t offset); } -+ SYS_PWRITE = 476 // { ssize_t pwrite(int fd, const void *buf, size_t nbyte, off_t offset); } -+ SYS_MMAP = 477 // { caddr_t mmap(caddr_t addr, size_t len, int prot, int flags, int fd, off_t pos); } -+ SYS_LSEEK = 478 // { off_t lseek(int fd, off_t offset, int whence); } -+ SYS_TRUNCATE = 479 // { int truncate(char *path, off_t length); } -+ SYS_FTRUNCATE = 480 // { int ftruncate(int fd, off_t length); } -+ SYS_THR_KILL2 = 481 // { int thr_kill2(pid_t pid, long id, int sig); } -+ SYS_SHM_OPEN = 482 // { int shm_open(const char *path, int flags, mode_t mode); } -+ SYS_SHM_UNLINK = 483 // { int shm_unlink(const char *path); } -+ SYS_CPUSET = 484 // { int cpuset(cpusetid_t *setid); } -+ SYS_CPUSET_SETID = 485 // { int cpuset_setid(cpuwhich_t which, id_t id, cpusetid_t setid); } -+ SYS_CPUSET_GETID = 486 // { int cpuset_getid(cpulevel_t level, cpuwhich_t which, id_t id, cpusetid_t *setid); } -+ SYS_CPUSET_GETAFFINITY = 487 // { int cpuset_getaffinity(cpulevel_t level, cpuwhich_t which, id_t id, size_t cpusetsize, cpuset_t *mask); } -+ SYS_CPUSET_SETAFFINITY = 488 // { int cpuset_setaffinity(cpulevel_t level, cpuwhich_t which, id_t id, size_t cpusetsize, const cpuset_t *mask); } -+ SYS_FACCESSAT = 489 // { int faccessat(int fd, char *path, int amode, int flag); } -+ SYS_FCHMODAT = 490 // { int fchmodat(int fd, char *path, mode_t mode, int flag); } -+ SYS_FCHOWNAT = 491 // { int fchownat(int fd, char *path, uid_t uid, gid_t gid, int flag); } -+ SYS_FEXECVE = 492 // { int fexecve(int fd, char **argv, char **envv); } -+ SYS_FUTIMESAT = 494 // { int futimesat(int fd, char *path, struct timeval *times); } -+ SYS_LINKAT = 495 // { int linkat(int fd1, char *path1, int fd2, char *path2, int flag); } -+ SYS_MKDIRAT = 496 // { int mkdirat(int fd, char *path, mode_t mode); } -+ SYS_MKFIFOAT = 497 // { int mkfifoat(int fd, char *path, mode_t mode); } -+ SYS_OPENAT = 499 // { int openat(int fd, char *path, int flag, mode_t mode); } -+ SYS_READLINKAT = 500 // { ssize_t readlinkat(int fd, char *path, char *buf, size_t bufsize); } -+ SYS_RENAMEAT = 501 // { int renameat(int oldfd, char *old, int newfd, char *new); } -+ SYS_SYMLINKAT = 502 // { int symlinkat(char *path1, int fd, char *path2); } -+ SYS_UNLINKAT = 503 // { int unlinkat(int fd, char *path, int flag); } -+ SYS_POSIX_OPENPT = 504 // { int posix_openpt(int flags); } -+ SYS_GSSD_SYSCALL = 505 // { int gssd_syscall(char *path); } -+ SYS_JAIL_GET = 506 // { int jail_get(struct iovec *iovp, unsigned int iovcnt, int flags); } -+ SYS_JAIL_SET = 507 // { int jail_set(struct iovec *iovp, unsigned int iovcnt, int flags); } -+ SYS_JAIL_REMOVE = 508 // { int jail_remove(int jid); } -+ SYS_CLOSEFROM = 509 // { int closefrom(int lowfd); } -+ SYS___SEMCTL = 510 // { int __semctl(int semid, int semnum, int cmd, union semun *arg); } -+ SYS_MSGCTL = 511 // { int msgctl(int msqid, int cmd, struct msqid_ds *buf); } -+ SYS_SHMCTL = 512 // { int shmctl(int shmid, int cmd, struct shmid_ds *buf); } -+ SYS_LPATHCONF = 513 // { int lpathconf(char *path, int name); } -+ SYS___CAP_RIGHTS_GET = 515 // { int __cap_rights_get(int version, int fd, cap_rights_t *rightsp); } -+ SYS_CAP_ENTER = 516 // { int cap_enter(void); } -+ SYS_CAP_GETMODE = 517 // { int cap_getmode(u_int *modep); } -+ SYS_PDFORK = 518 // { int pdfork(int *fdp, int flags); } -+ SYS_PDKILL = 519 // { int pdkill(int fd, int signum); } -+ SYS_PDGETPID = 520 // { int pdgetpid(int fd, pid_t *pidp); } -+ SYS_PSELECT = 522 // { int pselect(int nd, fd_set *in, fd_set *ou, fd_set *ex, const struct timespec *ts, const sigset_t *sm); } -+ SYS_GETLOGINCLASS = 523 // { int getloginclass(char *namebuf, size_t namelen); } -+ SYS_SETLOGINCLASS = 524 // { int setloginclass(const char *namebuf); } -+ SYS_RCTL_GET_RACCT = 525 // { int rctl_get_racct(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); } -+ SYS_RCTL_GET_RULES = 526 // { int rctl_get_rules(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); } -+ SYS_RCTL_GET_LIMITS = 527 // { int rctl_get_limits(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); } -+ SYS_RCTL_ADD_RULE = 528 // { int rctl_add_rule(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); } -+ SYS_RCTL_REMOVE_RULE = 529 // { int rctl_remove_rule(const void *inbufp, size_t inbuflen, void *outbufp, size_t outbuflen); } -+ SYS_POSIX_FALLOCATE = 530 // { int posix_fallocate(int fd, off_t offset, off_t len); } -+ SYS_POSIX_FADVISE = 531 // { int posix_fadvise(int fd, off_t offset, off_t len, int advice); } -+ SYS_WAIT6 = 532 // { int wait6(idtype_t idtype, id_t id, int *status, int options, struct __wrusage *wrusage, siginfo_t *info); } -+ SYS_CAP_RIGHTS_LIMIT = 533 // { int cap_rights_limit(int fd, cap_rights_t *rightsp); } -+ SYS_CAP_IOCTLS_LIMIT = 534 // { int cap_ioctls_limit(int fd, const u_long *cmds, size_t ncmds); } -+ SYS_CAP_IOCTLS_GET = 535 // { ssize_t cap_ioctls_get(int fd, u_long *cmds, size_t maxcmds); } -+ SYS_CAP_FCNTLS_LIMIT = 536 // { int cap_fcntls_limit(int fd, uint32_t fcntlrights); } -+ SYS_CAP_FCNTLS_GET = 537 // { int cap_fcntls_get(int fd, uint32_t *fcntlrightsp); } -+ SYS_BINDAT = 538 // { int bindat(int fd, int s, caddr_t name, int namelen); } -+ SYS_CONNECTAT = 539 // { int connectat(int fd, int s, caddr_t name, int namelen); } -+ SYS_CHFLAGSAT = 540 // { int chflagsat(int fd, const char *path, u_long flags, int atflag); } -+ SYS_ACCEPT4 = 541 // { int accept4(int s, struct sockaddr * __restrict name, __socklen_t * __restrict anamelen, int flags); } -+ SYS_PIPE2 = 542 // { int pipe2(int *fildes, int flags); } -+ SYS_AIO_MLOCK = 543 // { int aio_mlock(struct aiocb *aiocbp); } -+ SYS_PROCCTL = 544 // { int procctl(idtype_t idtype, id_t id, int com, void *data); } -+ SYS_PPOLL = 545 // { int ppoll(struct pollfd *fds, u_int nfds, const struct timespec *ts, const sigset_t *set); } -+ SYS_FUTIMENS = 546 // { int futimens(int fd, struct timespec *times); } -+ SYS_UTIMENSAT = 547 // { int utimensat(int fd, char *path, struct timespec *times, int flag); } -+ SYS_FDATASYNC = 550 // { int fdatasync(int fd); } -+ SYS_FSTAT = 551 // { int fstat(int fd, struct stat *sb); } -+ SYS_FSTATAT = 552 // { int fstatat(int fd, char *path, struct stat *buf, int flag); } -+ SYS_FHSTAT = 553 // { int fhstat(const struct fhandle *u_fhp, struct stat *sb); } -+ SYS_GETDIRENTRIES = 554 // { ssize_t getdirentries(int fd, char *buf, size_t count, off_t *basep); } -+ SYS_STATFS = 555 // { int statfs(char *path, struct statfs *buf); } -+ SYS_FSTATFS = 556 // { int fstatfs(int fd, struct statfs *buf); } -+ SYS_GETFSSTAT = 557 // { int getfsstat(struct statfs *buf, long bufsize, int mode); } -+ SYS_FHSTATFS = 558 // { int fhstatfs(const struct fhandle *u_fhp, struct statfs *buf); } -+ SYS_MKNODAT = 559 // { int mknodat(int fd, char *path, mode_t mode, dev_t dev); } -+ SYS_KEVENT = 560 // { int kevent(int fd, struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); } -+ SYS_CPUSET_GETDOMAIN = 561 // { int cpuset_getdomain(cpulevel_t level, cpuwhich_t which, id_t id, size_t domainsetsize, domainset_t *mask, int *policy); } -+ SYS_CPUSET_SETDOMAIN = 562 // { int cpuset_setdomain(cpulevel_t level, cpuwhich_t which, id_t id, size_t domainsetsize, domainset_t *mask, int policy); } -+ SYS_GETRANDOM = 563 // { int getrandom(void *buf, size_t buflen, unsigned int flags); } -+ SYS_GETFHAT = 564 // { int getfhat(int fd, char *path, struct fhandle *fhp, int flags); } -+ SYS_FHLINK = 565 // { int fhlink(struct fhandle *fhp, const char *to); } -+ SYS_FHLINKAT = 566 // { int fhlinkat(struct fhandle *fhp, int tofd, const char *to,); } -+ SYS_FHREADLINK = 567 // { int fhreadlink(struct fhandle *fhp, char *buf, size_t bufsize); } -+ SYS___SYSCTLBYNAME = 570 // { int __sysctlbyname(const char *name, size_t namelen, void *old, size_t *oldlenp, void *new, size_t newlen); } -+ SYS_CLOSE_RANGE = 575 // { int close_range(u_int lowfd, u_int highfd, int flags); } -+) -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go -index 54559a8..c9c4ad0 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_386.go -@@ -1,6 +1,7 @@ --// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include -m32 /tmp/include/asm/unistd.h -+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/386/include -m32 /tmp/386/include/asm/unistd.h - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build 386 && linux - // +build 386,linux - - package unix -@@ -431,6 +432,19 @@ const ( - SYS_FSPICK = 433 - SYS_PIDFD_OPEN = 434 - SYS_CLONE3 = 435 -+ SYS_CLOSE_RANGE = 436 - SYS_OPENAT2 = 437 - SYS_PIDFD_GETFD = 438 -+ SYS_FACCESSAT2 = 439 -+ SYS_PROCESS_MADVISE = 440 -+ SYS_EPOLL_PWAIT2 = 441 -+ SYS_MOUNT_SETATTR = 442 -+ SYS_QUOTACTL_FD = 443 -+ SYS_LANDLOCK_CREATE_RULESET = 444 -+ SYS_LANDLOCK_ADD_RULE = 445 -+ SYS_LANDLOCK_RESTRICT_SELF = 446 -+ SYS_MEMFD_SECRET = 447 -+ SYS_PROCESS_MRELEASE = 448 -+ SYS_FUTEX_WAITV = 449 -+ SYS_SET_MEMPOLICY_HOME_NODE = 450 - ) -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go -index 054a741..12ff341 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go -@@ -1,358 +1,372 @@ --// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include -m64 /tmp/include/asm/unistd.h -+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/amd64/include -m64 /tmp/amd64/include/asm/unistd.h - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build amd64 && linux - // +build amd64,linux - - package unix - - const ( -- SYS_READ = 0 -- SYS_WRITE = 1 -- SYS_OPEN = 2 -- SYS_CLOSE = 3 -- SYS_STAT = 4 -- SYS_FSTAT = 5 -- SYS_LSTAT = 6 -- SYS_POLL = 7 -- SYS_LSEEK = 8 -- SYS_MMAP = 9 -- SYS_MPROTECT = 10 -- SYS_MUNMAP = 11 -- SYS_BRK = 12 -- SYS_RT_SIGACTION = 13 -- SYS_RT_SIGPROCMASK = 14 -- SYS_RT_SIGRETURN = 15 -- SYS_IOCTL = 16 -- SYS_PREAD64 = 17 -- SYS_PWRITE64 = 18 -- SYS_READV = 19 -- SYS_WRITEV = 20 -- SYS_ACCESS = 21 -- SYS_PIPE = 22 -- SYS_SELECT = 23 -- SYS_SCHED_YIELD = 24 -- SYS_MREMAP = 25 -- SYS_MSYNC = 26 -- SYS_MINCORE = 27 -- SYS_MADVISE = 28 -- SYS_SHMGET = 29 -- SYS_SHMAT = 30 -- SYS_SHMCTL = 31 -- SYS_DUP = 32 -- SYS_DUP2 = 33 -- SYS_PAUSE = 34 -- SYS_NANOSLEEP = 35 -- SYS_GETITIMER = 36 -- SYS_ALARM = 37 -- SYS_SETITIMER = 38 -- SYS_GETPID = 39 -- SYS_SENDFILE = 40 -- SYS_SOCKET = 41 -- SYS_CONNECT = 42 -- SYS_ACCEPT = 43 -- SYS_SENDTO = 44 -- SYS_RECVFROM = 45 -- SYS_SENDMSG = 46 -- SYS_RECVMSG = 47 -- SYS_SHUTDOWN = 48 -- SYS_BIND = 49 -- SYS_LISTEN = 50 -- SYS_GETSOCKNAME = 51 -- SYS_GETPEERNAME = 52 -- SYS_SOCKETPAIR = 53 -- SYS_SETSOCKOPT = 54 -- SYS_GETSOCKOPT = 55 -- SYS_CLONE = 56 -- SYS_FORK = 57 -- SYS_VFORK = 58 -- SYS_EXECVE = 59 -- SYS_EXIT = 60 -- SYS_WAIT4 = 61 -- SYS_KILL = 62 -- SYS_UNAME = 63 -- SYS_SEMGET = 64 -- SYS_SEMOP = 65 -- SYS_SEMCTL = 66 -- SYS_SHMDT = 67 -- SYS_MSGGET = 68 -- SYS_MSGSND = 69 -- SYS_MSGRCV = 70 -- SYS_MSGCTL = 71 -- SYS_FCNTL = 72 -- SYS_FLOCK = 73 -- SYS_FSYNC = 74 -- SYS_FDATASYNC = 75 -- SYS_TRUNCATE = 76 -- SYS_FTRUNCATE = 77 -- SYS_GETDENTS = 78 -- SYS_GETCWD = 79 -- SYS_CHDIR = 80 -- SYS_FCHDIR = 81 -- SYS_RENAME = 82 -- SYS_MKDIR = 83 -- SYS_RMDIR = 84 -- SYS_CREAT = 85 -- SYS_LINK = 86 -- SYS_UNLINK = 87 -- SYS_SYMLINK = 88 -- SYS_READLINK = 89 -- SYS_CHMOD = 90 -- SYS_FCHMOD = 91 -- SYS_CHOWN = 92 -- SYS_FCHOWN = 93 -- SYS_LCHOWN = 94 -- SYS_UMASK = 95 -- SYS_GETTIMEOFDAY = 96 -- SYS_GETRLIMIT = 97 -- SYS_GETRUSAGE = 98 -- SYS_SYSINFO = 99 -- SYS_TIMES = 100 -- SYS_PTRACE = 101 -- SYS_GETUID = 102 -- SYS_SYSLOG = 103 -- SYS_GETGID = 104 -- SYS_SETUID = 105 -- SYS_SETGID = 106 -- SYS_GETEUID = 107 -- SYS_GETEGID = 108 -- SYS_SETPGID = 109 -- SYS_GETPPID = 110 -- SYS_GETPGRP = 111 -- SYS_SETSID = 112 -- SYS_SETREUID = 113 -- SYS_SETREGID = 114 -- SYS_GETGROUPS = 115 -- SYS_SETGROUPS = 116 -- SYS_SETRESUID = 117 -- SYS_GETRESUID = 118 -- SYS_SETRESGID = 119 -- SYS_GETRESGID = 120 -- SYS_GETPGID = 121 -- SYS_SETFSUID = 122 -- SYS_SETFSGID = 123 -- SYS_GETSID = 124 -- SYS_CAPGET = 125 -- SYS_CAPSET = 126 -- SYS_RT_SIGPENDING = 127 -- SYS_RT_SIGTIMEDWAIT = 128 -- SYS_RT_SIGQUEUEINFO = 129 -- SYS_RT_SIGSUSPEND = 130 -- SYS_SIGALTSTACK = 131 -- SYS_UTIME = 132 -- SYS_MKNOD = 133 -- SYS_USELIB = 134 -- SYS_PERSONALITY = 135 -- SYS_USTAT = 136 -- SYS_STATFS = 137 -- SYS_FSTATFS = 138 -- SYS_SYSFS = 139 -- SYS_GETPRIORITY = 140 -- SYS_SETPRIORITY = 141 -- SYS_SCHED_SETPARAM = 142 -- SYS_SCHED_GETPARAM = 143 -- SYS_SCHED_SETSCHEDULER = 144 -- SYS_SCHED_GETSCHEDULER = 145 -- SYS_SCHED_GET_PRIORITY_MAX = 146 -- SYS_SCHED_GET_PRIORITY_MIN = 147 -- SYS_SCHED_RR_GET_INTERVAL = 148 -- SYS_MLOCK = 149 -- SYS_MUNLOCK = 150 -- SYS_MLOCKALL = 151 -- SYS_MUNLOCKALL = 152 -- SYS_VHANGUP = 153 -- SYS_MODIFY_LDT = 154 -- SYS_PIVOT_ROOT = 155 -- SYS__SYSCTL = 156 -- SYS_PRCTL = 157 -- SYS_ARCH_PRCTL = 158 -- SYS_ADJTIMEX = 159 -- SYS_SETRLIMIT = 160 -- SYS_CHROOT = 161 -- SYS_SYNC = 162 -- SYS_ACCT = 163 -- SYS_SETTIMEOFDAY = 164 -- SYS_MOUNT = 165 -- SYS_UMOUNT2 = 166 -- SYS_SWAPON = 167 -- SYS_SWAPOFF = 168 -- SYS_REBOOT = 169 -- SYS_SETHOSTNAME = 170 -- SYS_SETDOMAINNAME = 171 -- SYS_IOPL = 172 -- SYS_IOPERM = 173 -- SYS_CREATE_MODULE = 174 -- SYS_INIT_MODULE = 175 -- SYS_DELETE_MODULE = 176 -- SYS_GET_KERNEL_SYMS = 177 -- SYS_QUERY_MODULE = 178 -- SYS_QUOTACTL = 179 -- SYS_NFSSERVCTL = 180 -- SYS_GETPMSG = 181 -- SYS_PUTPMSG = 182 -- SYS_AFS_SYSCALL = 183 -- SYS_TUXCALL = 184 -- SYS_SECURITY = 185 -- SYS_GETTID = 186 -- SYS_READAHEAD = 187 -- SYS_SETXATTR = 188 -- SYS_LSETXATTR = 189 -- SYS_FSETXATTR = 190 -- SYS_GETXATTR = 191 -- SYS_LGETXATTR = 192 -- SYS_FGETXATTR = 193 -- SYS_LISTXATTR = 194 -- SYS_LLISTXATTR = 195 -- SYS_FLISTXATTR = 196 -- SYS_REMOVEXATTR = 197 -- SYS_LREMOVEXATTR = 198 -- SYS_FREMOVEXATTR = 199 -- SYS_TKILL = 200 -- SYS_TIME = 201 -- SYS_FUTEX = 202 -- SYS_SCHED_SETAFFINITY = 203 -- SYS_SCHED_GETAFFINITY = 204 -- SYS_SET_THREAD_AREA = 205 -- SYS_IO_SETUP = 206 -- SYS_IO_DESTROY = 207 -- SYS_IO_GETEVENTS = 208 -- SYS_IO_SUBMIT = 209 -- SYS_IO_CANCEL = 210 -- SYS_GET_THREAD_AREA = 211 -- SYS_LOOKUP_DCOOKIE = 212 -- SYS_EPOLL_CREATE = 213 -- SYS_EPOLL_CTL_OLD = 214 -- SYS_EPOLL_WAIT_OLD = 215 -- SYS_REMAP_FILE_PAGES = 216 -- SYS_GETDENTS64 = 217 -- SYS_SET_TID_ADDRESS = 218 -- SYS_RESTART_SYSCALL = 219 -- SYS_SEMTIMEDOP = 220 -- SYS_FADVISE64 = 221 -- SYS_TIMER_CREATE = 222 -- SYS_TIMER_SETTIME = 223 -- SYS_TIMER_GETTIME = 224 -- SYS_TIMER_GETOVERRUN = 225 -- SYS_TIMER_DELETE = 226 -- SYS_CLOCK_SETTIME = 227 -- SYS_CLOCK_GETTIME = 228 -- SYS_CLOCK_GETRES = 229 -- SYS_CLOCK_NANOSLEEP = 230 -- SYS_EXIT_GROUP = 231 -- SYS_EPOLL_WAIT = 232 -- SYS_EPOLL_CTL = 233 -- SYS_TGKILL = 234 -- SYS_UTIMES = 235 -- SYS_VSERVER = 236 -- SYS_MBIND = 237 -- SYS_SET_MEMPOLICY = 238 -- SYS_GET_MEMPOLICY = 239 -- SYS_MQ_OPEN = 240 -- SYS_MQ_UNLINK = 241 -- SYS_MQ_TIMEDSEND = 242 -- SYS_MQ_TIMEDRECEIVE = 243 -- SYS_MQ_NOTIFY = 244 -- SYS_MQ_GETSETATTR = 245 -- SYS_KEXEC_LOAD = 246 -- SYS_WAITID = 247 -- SYS_ADD_KEY = 248 -- SYS_REQUEST_KEY = 249 -- SYS_KEYCTL = 250 -- SYS_IOPRIO_SET = 251 -- SYS_IOPRIO_GET = 252 -- SYS_INOTIFY_INIT = 253 -- SYS_INOTIFY_ADD_WATCH = 254 -- SYS_INOTIFY_RM_WATCH = 255 -- SYS_MIGRATE_PAGES = 256 -- SYS_OPENAT = 257 -- SYS_MKDIRAT = 258 -- SYS_MKNODAT = 259 -- SYS_FCHOWNAT = 260 -- SYS_FUTIMESAT = 261 -- SYS_NEWFSTATAT = 262 -- SYS_UNLINKAT = 263 -- SYS_RENAMEAT = 264 -- SYS_LINKAT = 265 -- SYS_SYMLINKAT = 266 -- SYS_READLINKAT = 267 -- SYS_FCHMODAT = 268 -- SYS_FACCESSAT = 269 -- SYS_PSELECT6 = 270 -- SYS_PPOLL = 271 -- SYS_UNSHARE = 272 -- SYS_SET_ROBUST_LIST = 273 -- SYS_GET_ROBUST_LIST = 274 -- SYS_SPLICE = 275 -- SYS_TEE = 276 -- SYS_SYNC_FILE_RANGE = 277 -- SYS_VMSPLICE = 278 -- SYS_MOVE_PAGES = 279 -- SYS_UTIMENSAT = 280 -- SYS_EPOLL_PWAIT = 281 -- SYS_SIGNALFD = 282 -- SYS_TIMERFD_CREATE = 283 -- SYS_EVENTFD = 284 -- SYS_FALLOCATE = 285 -- SYS_TIMERFD_SETTIME = 286 -- SYS_TIMERFD_GETTIME = 287 -- SYS_ACCEPT4 = 288 -- SYS_SIGNALFD4 = 289 -- SYS_EVENTFD2 = 290 -- SYS_EPOLL_CREATE1 = 291 -- SYS_DUP3 = 292 -- SYS_PIPE2 = 293 -- SYS_INOTIFY_INIT1 = 294 -- SYS_PREADV = 295 -- SYS_PWRITEV = 296 -- SYS_RT_TGSIGQUEUEINFO = 297 -- SYS_PERF_EVENT_OPEN = 298 -- SYS_RECVMMSG = 299 -- SYS_FANOTIFY_INIT = 300 -- SYS_FANOTIFY_MARK = 301 -- SYS_PRLIMIT64 = 302 -- SYS_NAME_TO_HANDLE_AT = 303 -- SYS_OPEN_BY_HANDLE_AT = 304 -- SYS_CLOCK_ADJTIME = 305 -- SYS_SYNCFS = 306 -- SYS_SENDMMSG = 307 -- SYS_SETNS = 308 -- SYS_GETCPU = 309 -- SYS_PROCESS_VM_READV = 310 -- SYS_PROCESS_VM_WRITEV = 311 -- SYS_KCMP = 312 -- SYS_FINIT_MODULE = 313 -- SYS_SCHED_SETATTR = 314 -- SYS_SCHED_GETATTR = 315 -- SYS_RENAMEAT2 = 316 -- SYS_SECCOMP = 317 -- SYS_GETRANDOM = 318 -- SYS_MEMFD_CREATE = 319 -- SYS_KEXEC_FILE_LOAD = 320 -- SYS_BPF = 321 -- SYS_EXECVEAT = 322 -- SYS_USERFAULTFD = 323 -- SYS_MEMBARRIER = 324 -- SYS_MLOCK2 = 325 -- SYS_COPY_FILE_RANGE = 326 -- SYS_PREADV2 = 327 -- SYS_PWRITEV2 = 328 -- SYS_PKEY_MPROTECT = 329 -- SYS_PKEY_ALLOC = 330 -- SYS_PKEY_FREE = 331 -- SYS_STATX = 332 -- SYS_IO_PGETEVENTS = 333 -- SYS_RSEQ = 334 -- SYS_PIDFD_SEND_SIGNAL = 424 -- SYS_IO_URING_SETUP = 425 -- SYS_IO_URING_ENTER = 426 -- SYS_IO_URING_REGISTER = 427 -- SYS_OPEN_TREE = 428 -- SYS_MOVE_MOUNT = 429 -- SYS_FSOPEN = 430 -- SYS_FSCONFIG = 431 -- SYS_FSMOUNT = 432 -- SYS_FSPICK = 433 -- SYS_PIDFD_OPEN = 434 -- SYS_CLONE3 = 435 -- SYS_OPENAT2 = 437 -- SYS_PIDFD_GETFD = 438 -+ SYS_READ = 0 -+ SYS_WRITE = 1 -+ SYS_OPEN = 2 -+ SYS_CLOSE = 3 -+ SYS_STAT = 4 -+ SYS_FSTAT = 5 -+ SYS_LSTAT = 6 -+ SYS_POLL = 7 -+ SYS_LSEEK = 8 -+ SYS_MMAP = 9 -+ SYS_MPROTECT = 10 -+ SYS_MUNMAP = 11 -+ SYS_BRK = 12 -+ SYS_RT_SIGACTION = 13 -+ SYS_RT_SIGPROCMASK = 14 -+ SYS_RT_SIGRETURN = 15 -+ SYS_IOCTL = 16 -+ SYS_PREAD64 = 17 -+ SYS_PWRITE64 = 18 -+ SYS_READV = 19 -+ SYS_WRITEV = 20 -+ SYS_ACCESS = 21 -+ SYS_PIPE = 22 -+ SYS_SELECT = 23 -+ SYS_SCHED_YIELD = 24 -+ SYS_MREMAP = 25 -+ SYS_MSYNC = 26 -+ SYS_MINCORE = 27 -+ SYS_MADVISE = 28 -+ SYS_SHMGET = 29 -+ SYS_SHMAT = 30 -+ SYS_SHMCTL = 31 -+ SYS_DUP = 32 -+ SYS_DUP2 = 33 -+ SYS_PAUSE = 34 -+ SYS_NANOSLEEP = 35 -+ SYS_GETITIMER = 36 -+ SYS_ALARM = 37 -+ SYS_SETITIMER = 38 -+ SYS_GETPID = 39 -+ SYS_SENDFILE = 40 -+ SYS_SOCKET = 41 -+ SYS_CONNECT = 42 -+ SYS_ACCEPT = 43 -+ SYS_SENDTO = 44 -+ SYS_RECVFROM = 45 -+ SYS_SENDMSG = 46 -+ SYS_RECVMSG = 47 -+ SYS_SHUTDOWN = 48 -+ SYS_BIND = 49 -+ SYS_LISTEN = 50 -+ SYS_GETSOCKNAME = 51 -+ SYS_GETPEERNAME = 52 -+ SYS_SOCKETPAIR = 53 -+ SYS_SETSOCKOPT = 54 -+ SYS_GETSOCKOPT = 55 -+ SYS_CLONE = 56 -+ SYS_FORK = 57 -+ SYS_VFORK = 58 -+ SYS_EXECVE = 59 -+ SYS_EXIT = 60 -+ SYS_WAIT4 = 61 -+ SYS_KILL = 62 -+ SYS_UNAME = 63 -+ SYS_SEMGET = 64 -+ SYS_SEMOP = 65 -+ SYS_SEMCTL = 66 -+ SYS_SHMDT = 67 -+ SYS_MSGGET = 68 -+ SYS_MSGSND = 69 -+ SYS_MSGRCV = 70 -+ SYS_MSGCTL = 71 -+ SYS_FCNTL = 72 -+ SYS_FLOCK = 73 -+ SYS_FSYNC = 74 -+ SYS_FDATASYNC = 75 -+ SYS_TRUNCATE = 76 -+ SYS_FTRUNCATE = 77 -+ SYS_GETDENTS = 78 -+ SYS_GETCWD = 79 -+ SYS_CHDIR = 80 -+ SYS_FCHDIR = 81 -+ SYS_RENAME = 82 -+ SYS_MKDIR = 83 -+ SYS_RMDIR = 84 -+ SYS_CREAT = 85 -+ SYS_LINK = 86 -+ SYS_UNLINK = 87 -+ SYS_SYMLINK = 88 -+ SYS_READLINK = 89 -+ SYS_CHMOD = 90 -+ SYS_FCHMOD = 91 -+ SYS_CHOWN = 92 -+ SYS_FCHOWN = 93 -+ SYS_LCHOWN = 94 -+ SYS_UMASK = 95 -+ SYS_GETTIMEOFDAY = 96 -+ SYS_GETRLIMIT = 97 -+ SYS_GETRUSAGE = 98 -+ SYS_SYSINFO = 99 -+ SYS_TIMES = 100 -+ SYS_PTRACE = 101 -+ SYS_GETUID = 102 -+ SYS_SYSLOG = 103 -+ SYS_GETGID = 104 -+ SYS_SETUID = 105 -+ SYS_SETGID = 106 -+ SYS_GETEUID = 107 -+ SYS_GETEGID = 108 -+ SYS_SETPGID = 109 -+ SYS_GETPPID = 110 -+ SYS_GETPGRP = 111 -+ SYS_SETSID = 112 -+ SYS_SETREUID = 113 -+ SYS_SETREGID = 114 -+ SYS_GETGROUPS = 115 -+ SYS_SETGROUPS = 116 -+ SYS_SETRESUID = 117 -+ SYS_GETRESUID = 118 -+ SYS_SETRESGID = 119 -+ SYS_GETRESGID = 120 -+ SYS_GETPGID = 121 -+ SYS_SETFSUID = 122 -+ SYS_SETFSGID = 123 -+ SYS_GETSID = 124 -+ SYS_CAPGET = 125 -+ SYS_CAPSET = 126 -+ SYS_RT_SIGPENDING = 127 -+ SYS_RT_SIGTIMEDWAIT = 128 -+ SYS_RT_SIGQUEUEINFO = 129 -+ SYS_RT_SIGSUSPEND = 130 -+ SYS_SIGALTSTACK = 131 -+ SYS_UTIME = 132 -+ SYS_MKNOD = 133 -+ SYS_USELIB = 134 -+ SYS_PERSONALITY = 135 -+ SYS_USTAT = 136 -+ SYS_STATFS = 137 -+ SYS_FSTATFS = 138 -+ SYS_SYSFS = 139 -+ SYS_GETPRIORITY = 140 -+ SYS_SETPRIORITY = 141 -+ SYS_SCHED_SETPARAM = 142 -+ SYS_SCHED_GETPARAM = 143 -+ SYS_SCHED_SETSCHEDULER = 144 -+ SYS_SCHED_GETSCHEDULER = 145 -+ SYS_SCHED_GET_PRIORITY_MAX = 146 -+ SYS_SCHED_GET_PRIORITY_MIN = 147 -+ SYS_SCHED_RR_GET_INTERVAL = 148 -+ SYS_MLOCK = 149 -+ SYS_MUNLOCK = 150 -+ SYS_MLOCKALL = 151 -+ SYS_MUNLOCKALL = 152 -+ SYS_VHANGUP = 153 -+ SYS_MODIFY_LDT = 154 -+ SYS_PIVOT_ROOT = 155 -+ SYS__SYSCTL = 156 -+ SYS_PRCTL = 157 -+ SYS_ARCH_PRCTL = 158 -+ SYS_ADJTIMEX = 159 -+ SYS_SETRLIMIT = 160 -+ SYS_CHROOT = 161 -+ SYS_SYNC = 162 -+ SYS_ACCT = 163 -+ SYS_SETTIMEOFDAY = 164 -+ SYS_MOUNT = 165 -+ SYS_UMOUNT2 = 166 -+ SYS_SWAPON = 167 -+ SYS_SWAPOFF = 168 -+ SYS_REBOOT = 169 -+ SYS_SETHOSTNAME = 170 -+ SYS_SETDOMAINNAME = 171 -+ SYS_IOPL = 172 -+ SYS_IOPERM = 173 -+ SYS_CREATE_MODULE = 174 -+ SYS_INIT_MODULE = 175 -+ SYS_DELETE_MODULE = 176 -+ SYS_GET_KERNEL_SYMS = 177 -+ SYS_QUERY_MODULE = 178 -+ SYS_QUOTACTL = 179 -+ SYS_NFSSERVCTL = 180 -+ SYS_GETPMSG = 181 -+ SYS_PUTPMSG = 182 -+ SYS_AFS_SYSCALL = 183 -+ SYS_TUXCALL = 184 -+ SYS_SECURITY = 185 -+ SYS_GETTID = 186 -+ SYS_READAHEAD = 187 -+ SYS_SETXATTR = 188 -+ SYS_LSETXATTR = 189 -+ SYS_FSETXATTR = 190 -+ SYS_GETXATTR = 191 -+ SYS_LGETXATTR = 192 -+ SYS_FGETXATTR = 193 -+ SYS_LISTXATTR = 194 -+ SYS_LLISTXATTR = 195 -+ SYS_FLISTXATTR = 196 -+ SYS_REMOVEXATTR = 197 -+ SYS_LREMOVEXATTR = 198 -+ SYS_FREMOVEXATTR = 199 -+ SYS_TKILL = 200 -+ SYS_TIME = 201 -+ SYS_FUTEX = 202 -+ SYS_SCHED_SETAFFINITY = 203 -+ SYS_SCHED_GETAFFINITY = 204 -+ SYS_SET_THREAD_AREA = 205 -+ SYS_IO_SETUP = 206 -+ SYS_IO_DESTROY = 207 -+ SYS_IO_GETEVENTS = 208 -+ SYS_IO_SUBMIT = 209 -+ SYS_IO_CANCEL = 210 -+ SYS_GET_THREAD_AREA = 211 -+ SYS_LOOKUP_DCOOKIE = 212 -+ SYS_EPOLL_CREATE = 213 -+ SYS_EPOLL_CTL_OLD = 214 -+ SYS_EPOLL_WAIT_OLD = 215 -+ SYS_REMAP_FILE_PAGES = 216 -+ SYS_GETDENTS64 = 217 -+ SYS_SET_TID_ADDRESS = 218 -+ SYS_RESTART_SYSCALL = 219 -+ SYS_SEMTIMEDOP = 220 -+ SYS_FADVISE64 = 221 -+ SYS_TIMER_CREATE = 222 -+ SYS_TIMER_SETTIME = 223 -+ SYS_TIMER_GETTIME = 224 -+ SYS_TIMER_GETOVERRUN = 225 -+ SYS_TIMER_DELETE = 226 -+ SYS_CLOCK_SETTIME = 227 -+ SYS_CLOCK_GETTIME = 228 -+ SYS_CLOCK_GETRES = 229 -+ SYS_CLOCK_NANOSLEEP = 230 -+ SYS_EXIT_GROUP = 231 -+ SYS_EPOLL_WAIT = 232 -+ SYS_EPOLL_CTL = 233 -+ SYS_TGKILL = 234 -+ SYS_UTIMES = 235 -+ SYS_VSERVER = 236 -+ SYS_MBIND = 237 -+ SYS_SET_MEMPOLICY = 238 -+ SYS_GET_MEMPOLICY = 239 -+ SYS_MQ_OPEN = 240 -+ SYS_MQ_UNLINK = 241 -+ SYS_MQ_TIMEDSEND = 242 -+ SYS_MQ_TIMEDRECEIVE = 243 -+ SYS_MQ_NOTIFY = 244 -+ SYS_MQ_GETSETATTR = 245 -+ SYS_KEXEC_LOAD = 246 -+ SYS_WAITID = 247 -+ SYS_ADD_KEY = 248 -+ SYS_REQUEST_KEY = 249 -+ SYS_KEYCTL = 250 -+ SYS_IOPRIO_SET = 251 -+ SYS_IOPRIO_GET = 252 -+ SYS_INOTIFY_INIT = 253 -+ SYS_INOTIFY_ADD_WATCH = 254 -+ SYS_INOTIFY_RM_WATCH = 255 -+ SYS_MIGRATE_PAGES = 256 -+ SYS_OPENAT = 257 -+ SYS_MKDIRAT = 258 -+ SYS_MKNODAT = 259 -+ SYS_FCHOWNAT = 260 -+ SYS_FUTIMESAT = 261 -+ SYS_NEWFSTATAT = 262 -+ SYS_UNLINKAT = 263 -+ SYS_RENAMEAT = 264 -+ SYS_LINKAT = 265 -+ SYS_SYMLINKAT = 266 -+ SYS_READLINKAT = 267 -+ SYS_FCHMODAT = 268 -+ SYS_FACCESSAT = 269 -+ SYS_PSELECT6 = 270 -+ SYS_PPOLL = 271 -+ SYS_UNSHARE = 272 -+ SYS_SET_ROBUST_LIST = 273 -+ SYS_GET_ROBUST_LIST = 274 -+ SYS_SPLICE = 275 -+ SYS_TEE = 276 -+ SYS_SYNC_FILE_RANGE = 277 -+ SYS_VMSPLICE = 278 -+ SYS_MOVE_PAGES = 279 -+ SYS_UTIMENSAT = 280 -+ SYS_EPOLL_PWAIT = 281 -+ SYS_SIGNALFD = 282 -+ SYS_TIMERFD_CREATE = 283 -+ SYS_EVENTFD = 284 -+ SYS_FALLOCATE = 285 -+ SYS_TIMERFD_SETTIME = 286 -+ SYS_TIMERFD_GETTIME = 287 -+ SYS_ACCEPT4 = 288 -+ SYS_SIGNALFD4 = 289 -+ SYS_EVENTFD2 = 290 -+ SYS_EPOLL_CREATE1 = 291 -+ SYS_DUP3 = 292 -+ SYS_PIPE2 = 293 -+ SYS_INOTIFY_INIT1 = 294 -+ SYS_PREADV = 295 -+ SYS_PWRITEV = 296 -+ SYS_RT_TGSIGQUEUEINFO = 297 -+ SYS_PERF_EVENT_OPEN = 298 -+ SYS_RECVMMSG = 299 -+ SYS_FANOTIFY_INIT = 300 -+ SYS_FANOTIFY_MARK = 301 -+ SYS_PRLIMIT64 = 302 -+ SYS_NAME_TO_HANDLE_AT = 303 -+ SYS_OPEN_BY_HANDLE_AT = 304 -+ SYS_CLOCK_ADJTIME = 305 -+ SYS_SYNCFS = 306 -+ SYS_SENDMMSG = 307 -+ SYS_SETNS = 308 -+ SYS_GETCPU = 309 -+ SYS_PROCESS_VM_READV = 310 -+ SYS_PROCESS_VM_WRITEV = 311 -+ SYS_KCMP = 312 -+ SYS_FINIT_MODULE = 313 -+ SYS_SCHED_SETATTR = 314 -+ SYS_SCHED_GETATTR = 315 -+ SYS_RENAMEAT2 = 316 -+ SYS_SECCOMP = 317 -+ SYS_GETRANDOM = 318 -+ SYS_MEMFD_CREATE = 319 -+ SYS_KEXEC_FILE_LOAD = 320 -+ SYS_BPF = 321 -+ SYS_EXECVEAT = 322 -+ SYS_USERFAULTFD = 323 -+ SYS_MEMBARRIER = 324 -+ SYS_MLOCK2 = 325 -+ SYS_COPY_FILE_RANGE = 326 -+ SYS_PREADV2 = 327 -+ SYS_PWRITEV2 = 328 -+ SYS_PKEY_MPROTECT = 329 -+ SYS_PKEY_ALLOC = 330 -+ SYS_PKEY_FREE = 331 -+ SYS_STATX = 332 -+ SYS_IO_PGETEVENTS = 333 -+ SYS_RSEQ = 334 -+ SYS_PIDFD_SEND_SIGNAL = 424 -+ SYS_IO_URING_SETUP = 425 -+ SYS_IO_URING_ENTER = 426 -+ SYS_IO_URING_REGISTER = 427 -+ SYS_OPEN_TREE = 428 -+ SYS_MOVE_MOUNT = 429 -+ SYS_FSOPEN = 430 -+ SYS_FSCONFIG = 431 -+ SYS_FSMOUNT = 432 -+ SYS_FSPICK = 433 -+ SYS_PIDFD_OPEN = 434 -+ SYS_CLONE3 = 435 -+ SYS_CLOSE_RANGE = 436 -+ SYS_OPENAT2 = 437 -+ SYS_PIDFD_GETFD = 438 -+ SYS_FACCESSAT2 = 439 -+ SYS_PROCESS_MADVISE = 440 -+ SYS_EPOLL_PWAIT2 = 441 -+ SYS_MOUNT_SETATTR = 442 -+ SYS_QUOTACTL_FD = 443 -+ SYS_LANDLOCK_CREATE_RULESET = 444 -+ SYS_LANDLOCK_ADD_RULE = 445 -+ SYS_LANDLOCK_RESTRICT_SELF = 446 -+ SYS_MEMFD_SECRET = 447 -+ SYS_PROCESS_MRELEASE = 448 -+ SYS_FUTEX_WAITV = 449 -+ SYS_SET_MEMPOLICY_HOME_NODE = 450 - ) -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go -index 307f2ba..c3fb5e7 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_arm.go -@@ -1,11 +1,13 @@ --// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h -+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/arm/include /tmp/arm/include/asm/unistd.h - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build arm && linux - // +build arm,linux - - package unix - - const ( -+ SYS_SYSCALL_MASK = 0 - SYS_RESTART_SYSCALL = 0 - SYS_EXIT = 1 - SYS_FORK = 2 -@@ -395,6 +397,18 @@ const ( - SYS_FSPICK = 433 - SYS_PIDFD_OPEN = 434 - SYS_CLONE3 = 435 -+ SYS_CLOSE_RANGE = 436 - SYS_OPENAT2 = 437 - SYS_PIDFD_GETFD = 438 -+ SYS_FACCESSAT2 = 439 -+ SYS_PROCESS_MADVISE = 440 -+ SYS_EPOLL_PWAIT2 = 441 -+ SYS_MOUNT_SETATTR = 442 -+ SYS_QUOTACTL_FD = 443 -+ SYS_LANDLOCK_CREATE_RULESET = 444 -+ SYS_LANDLOCK_ADD_RULE = 445 -+ SYS_LANDLOCK_RESTRICT_SELF = 446 -+ SYS_PROCESS_MRELEASE = 448 -+ SYS_FUTEX_WAITV = 449 -+ SYS_SET_MEMPOLICY_HOME_NODE = 450 - ) -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go -index e9404dd..358c847 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go -@@ -1,303 +1,317 @@ --// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include -fsigned-char /tmp/include/asm/unistd.h -+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/arm64/include -fsigned-char /tmp/arm64/include/asm/unistd.h - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build arm64 && linux - // +build arm64,linux - - package unix - - const ( -- SYS_IO_SETUP = 0 -- SYS_IO_DESTROY = 1 -- SYS_IO_SUBMIT = 2 -- SYS_IO_CANCEL = 3 -- SYS_IO_GETEVENTS = 4 -- SYS_SETXATTR = 5 -- SYS_LSETXATTR = 6 -- SYS_FSETXATTR = 7 -- SYS_GETXATTR = 8 -- SYS_LGETXATTR = 9 -- SYS_FGETXATTR = 10 -- SYS_LISTXATTR = 11 -- SYS_LLISTXATTR = 12 -- SYS_FLISTXATTR = 13 -- SYS_REMOVEXATTR = 14 -- SYS_LREMOVEXATTR = 15 -- SYS_FREMOVEXATTR = 16 -- SYS_GETCWD = 17 -- SYS_LOOKUP_DCOOKIE = 18 -- SYS_EVENTFD2 = 19 -- SYS_EPOLL_CREATE1 = 20 -- SYS_EPOLL_CTL = 21 -- SYS_EPOLL_PWAIT = 22 -- SYS_DUP = 23 -- SYS_DUP3 = 24 -- SYS_FCNTL = 25 -- SYS_INOTIFY_INIT1 = 26 -- SYS_INOTIFY_ADD_WATCH = 27 -- SYS_INOTIFY_RM_WATCH = 28 -- SYS_IOCTL = 29 -- SYS_IOPRIO_SET = 30 -- SYS_IOPRIO_GET = 31 -- SYS_FLOCK = 32 -- SYS_MKNODAT = 33 -- SYS_MKDIRAT = 34 -- SYS_UNLINKAT = 35 -- SYS_SYMLINKAT = 36 -- SYS_LINKAT = 37 -- SYS_RENAMEAT = 38 -- SYS_UMOUNT2 = 39 -- SYS_MOUNT = 40 -- SYS_PIVOT_ROOT = 41 -- SYS_NFSSERVCTL = 42 -- SYS_STATFS = 43 -- SYS_FSTATFS = 44 -- SYS_TRUNCATE = 45 -- SYS_FTRUNCATE = 46 -- SYS_FALLOCATE = 47 -- SYS_FACCESSAT = 48 -- SYS_CHDIR = 49 -- SYS_FCHDIR = 50 -- SYS_CHROOT = 51 -- SYS_FCHMOD = 52 -- SYS_FCHMODAT = 53 -- SYS_FCHOWNAT = 54 -- SYS_FCHOWN = 55 -- SYS_OPENAT = 56 -- SYS_CLOSE = 57 -- SYS_VHANGUP = 58 -- SYS_PIPE2 = 59 -- SYS_QUOTACTL = 60 -- SYS_GETDENTS64 = 61 -- SYS_LSEEK = 62 -- SYS_READ = 63 -- SYS_WRITE = 64 -- SYS_READV = 65 -- SYS_WRITEV = 66 -- SYS_PREAD64 = 67 -- SYS_PWRITE64 = 68 -- SYS_PREADV = 69 -- SYS_PWRITEV = 70 -- SYS_SENDFILE = 71 -- SYS_PSELECT6 = 72 -- SYS_PPOLL = 73 -- SYS_SIGNALFD4 = 74 -- SYS_VMSPLICE = 75 -- SYS_SPLICE = 76 -- SYS_TEE = 77 -- SYS_READLINKAT = 78 -- SYS_FSTATAT = 79 -- SYS_FSTAT = 80 -- SYS_SYNC = 81 -- SYS_FSYNC = 82 -- SYS_FDATASYNC = 83 -- SYS_SYNC_FILE_RANGE = 84 -- SYS_TIMERFD_CREATE = 85 -- SYS_TIMERFD_SETTIME = 86 -- SYS_TIMERFD_GETTIME = 87 -- SYS_UTIMENSAT = 88 -- SYS_ACCT = 89 -- SYS_CAPGET = 90 -- SYS_CAPSET = 91 -- SYS_PERSONALITY = 92 -- SYS_EXIT = 93 -- SYS_EXIT_GROUP = 94 -- SYS_WAITID = 95 -- SYS_SET_TID_ADDRESS = 96 -- SYS_UNSHARE = 97 -- SYS_FUTEX = 98 -- SYS_SET_ROBUST_LIST = 99 -- SYS_GET_ROBUST_LIST = 100 -- SYS_NANOSLEEP = 101 -- SYS_GETITIMER = 102 -- SYS_SETITIMER = 103 -- SYS_KEXEC_LOAD = 104 -- SYS_INIT_MODULE = 105 -- SYS_DELETE_MODULE = 106 -- SYS_TIMER_CREATE = 107 -- SYS_TIMER_GETTIME = 108 -- SYS_TIMER_GETOVERRUN = 109 -- SYS_TIMER_SETTIME = 110 -- SYS_TIMER_DELETE = 111 -- SYS_CLOCK_SETTIME = 112 -- SYS_CLOCK_GETTIME = 113 -- SYS_CLOCK_GETRES = 114 -- SYS_CLOCK_NANOSLEEP = 115 -- SYS_SYSLOG = 116 -- SYS_PTRACE = 117 -- SYS_SCHED_SETPARAM = 118 -- SYS_SCHED_SETSCHEDULER = 119 -- SYS_SCHED_GETSCHEDULER = 120 -- SYS_SCHED_GETPARAM = 121 -- SYS_SCHED_SETAFFINITY = 122 -- SYS_SCHED_GETAFFINITY = 123 -- SYS_SCHED_YIELD = 124 -- SYS_SCHED_GET_PRIORITY_MAX = 125 -- SYS_SCHED_GET_PRIORITY_MIN = 126 -- SYS_SCHED_RR_GET_INTERVAL = 127 -- SYS_RESTART_SYSCALL = 128 -- SYS_KILL = 129 -- SYS_TKILL = 130 -- SYS_TGKILL = 131 -- SYS_SIGALTSTACK = 132 -- SYS_RT_SIGSUSPEND = 133 -- SYS_RT_SIGACTION = 134 -- SYS_RT_SIGPROCMASK = 135 -- SYS_RT_SIGPENDING = 136 -- SYS_RT_SIGTIMEDWAIT = 137 -- SYS_RT_SIGQUEUEINFO = 138 -- SYS_RT_SIGRETURN = 139 -- SYS_SETPRIORITY = 140 -- SYS_GETPRIORITY = 141 -- SYS_REBOOT = 142 -- SYS_SETREGID = 143 -- SYS_SETGID = 144 -- SYS_SETREUID = 145 -- SYS_SETUID = 146 -- SYS_SETRESUID = 147 -- SYS_GETRESUID = 148 -- SYS_SETRESGID = 149 -- SYS_GETRESGID = 150 -- SYS_SETFSUID = 151 -- SYS_SETFSGID = 152 -- SYS_TIMES = 153 -- SYS_SETPGID = 154 -- SYS_GETPGID = 155 -- SYS_GETSID = 156 -- SYS_SETSID = 157 -- SYS_GETGROUPS = 158 -- SYS_SETGROUPS = 159 -- SYS_UNAME = 160 -- SYS_SETHOSTNAME = 161 -- SYS_SETDOMAINNAME = 162 -- SYS_GETRLIMIT = 163 -- SYS_SETRLIMIT = 164 -- SYS_GETRUSAGE = 165 -- SYS_UMASK = 166 -- SYS_PRCTL = 167 -- SYS_GETCPU = 168 -- SYS_GETTIMEOFDAY = 169 -- SYS_SETTIMEOFDAY = 170 -- SYS_ADJTIMEX = 171 -- SYS_GETPID = 172 -- SYS_GETPPID = 173 -- SYS_GETUID = 174 -- SYS_GETEUID = 175 -- SYS_GETGID = 176 -- SYS_GETEGID = 177 -- SYS_GETTID = 178 -- SYS_SYSINFO = 179 -- SYS_MQ_OPEN = 180 -- SYS_MQ_UNLINK = 181 -- SYS_MQ_TIMEDSEND = 182 -- SYS_MQ_TIMEDRECEIVE = 183 -- SYS_MQ_NOTIFY = 184 -- SYS_MQ_GETSETATTR = 185 -- SYS_MSGGET = 186 -- SYS_MSGCTL = 187 -- SYS_MSGRCV = 188 -- SYS_MSGSND = 189 -- SYS_SEMGET = 190 -- SYS_SEMCTL = 191 -- SYS_SEMTIMEDOP = 192 -- SYS_SEMOP = 193 -- SYS_SHMGET = 194 -- SYS_SHMCTL = 195 -- SYS_SHMAT = 196 -- SYS_SHMDT = 197 -- SYS_SOCKET = 198 -- SYS_SOCKETPAIR = 199 -- SYS_BIND = 200 -- SYS_LISTEN = 201 -- SYS_ACCEPT = 202 -- SYS_CONNECT = 203 -- SYS_GETSOCKNAME = 204 -- SYS_GETPEERNAME = 205 -- SYS_SENDTO = 206 -- SYS_RECVFROM = 207 -- SYS_SETSOCKOPT = 208 -- SYS_GETSOCKOPT = 209 -- SYS_SHUTDOWN = 210 -- SYS_SENDMSG = 211 -- SYS_RECVMSG = 212 -- SYS_READAHEAD = 213 -- SYS_BRK = 214 -- SYS_MUNMAP = 215 -- SYS_MREMAP = 216 -- SYS_ADD_KEY = 217 -- SYS_REQUEST_KEY = 218 -- SYS_KEYCTL = 219 -- SYS_CLONE = 220 -- SYS_EXECVE = 221 -- SYS_MMAP = 222 -- SYS_FADVISE64 = 223 -- SYS_SWAPON = 224 -- SYS_SWAPOFF = 225 -- SYS_MPROTECT = 226 -- SYS_MSYNC = 227 -- SYS_MLOCK = 228 -- SYS_MUNLOCK = 229 -- SYS_MLOCKALL = 230 -- SYS_MUNLOCKALL = 231 -- SYS_MINCORE = 232 -- SYS_MADVISE = 233 -- SYS_REMAP_FILE_PAGES = 234 -- SYS_MBIND = 235 -- SYS_GET_MEMPOLICY = 236 -- SYS_SET_MEMPOLICY = 237 -- SYS_MIGRATE_PAGES = 238 -- SYS_MOVE_PAGES = 239 -- SYS_RT_TGSIGQUEUEINFO = 240 -- SYS_PERF_EVENT_OPEN = 241 -- SYS_ACCEPT4 = 242 -- SYS_RECVMMSG = 243 -- SYS_ARCH_SPECIFIC_SYSCALL = 244 -- SYS_WAIT4 = 260 -- SYS_PRLIMIT64 = 261 -- SYS_FANOTIFY_INIT = 262 -- SYS_FANOTIFY_MARK = 263 -- SYS_NAME_TO_HANDLE_AT = 264 -- SYS_OPEN_BY_HANDLE_AT = 265 -- SYS_CLOCK_ADJTIME = 266 -- SYS_SYNCFS = 267 -- SYS_SETNS = 268 -- SYS_SENDMMSG = 269 -- SYS_PROCESS_VM_READV = 270 -- SYS_PROCESS_VM_WRITEV = 271 -- SYS_KCMP = 272 -- SYS_FINIT_MODULE = 273 -- SYS_SCHED_SETATTR = 274 -- SYS_SCHED_GETATTR = 275 -- SYS_RENAMEAT2 = 276 -- SYS_SECCOMP = 277 -- SYS_GETRANDOM = 278 -- SYS_MEMFD_CREATE = 279 -- SYS_BPF = 280 -- SYS_EXECVEAT = 281 -- SYS_USERFAULTFD = 282 -- SYS_MEMBARRIER = 283 -- SYS_MLOCK2 = 284 -- SYS_COPY_FILE_RANGE = 285 -- SYS_PREADV2 = 286 -- SYS_PWRITEV2 = 287 -- SYS_PKEY_MPROTECT = 288 -- SYS_PKEY_ALLOC = 289 -- SYS_PKEY_FREE = 290 -- SYS_STATX = 291 -- SYS_IO_PGETEVENTS = 292 -- SYS_RSEQ = 293 -- SYS_KEXEC_FILE_LOAD = 294 -- SYS_PIDFD_SEND_SIGNAL = 424 -- SYS_IO_URING_SETUP = 425 -- SYS_IO_URING_ENTER = 426 -- SYS_IO_URING_REGISTER = 427 -- SYS_OPEN_TREE = 428 -- SYS_MOVE_MOUNT = 429 -- SYS_FSOPEN = 430 -- SYS_FSCONFIG = 431 -- SYS_FSMOUNT = 432 -- SYS_FSPICK = 433 -- SYS_PIDFD_OPEN = 434 -- SYS_CLONE3 = 435 -- SYS_OPENAT2 = 437 -- SYS_PIDFD_GETFD = 438 -+ SYS_IO_SETUP = 0 -+ SYS_IO_DESTROY = 1 -+ SYS_IO_SUBMIT = 2 -+ SYS_IO_CANCEL = 3 -+ SYS_IO_GETEVENTS = 4 -+ SYS_SETXATTR = 5 -+ SYS_LSETXATTR = 6 -+ SYS_FSETXATTR = 7 -+ SYS_GETXATTR = 8 -+ SYS_LGETXATTR = 9 -+ SYS_FGETXATTR = 10 -+ SYS_LISTXATTR = 11 -+ SYS_LLISTXATTR = 12 -+ SYS_FLISTXATTR = 13 -+ SYS_REMOVEXATTR = 14 -+ SYS_LREMOVEXATTR = 15 -+ SYS_FREMOVEXATTR = 16 -+ SYS_GETCWD = 17 -+ SYS_LOOKUP_DCOOKIE = 18 -+ SYS_EVENTFD2 = 19 -+ SYS_EPOLL_CREATE1 = 20 -+ SYS_EPOLL_CTL = 21 -+ SYS_EPOLL_PWAIT = 22 -+ SYS_DUP = 23 -+ SYS_DUP3 = 24 -+ SYS_FCNTL = 25 -+ SYS_INOTIFY_INIT1 = 26 -+ SYS_INOTIFY_ADD_WATCH = 27 -+ SYS_INOTIFY_RM_WATCH = 28 -+ SYS_IOCTL = 29 -+ SYS_IOPRIO_SET = 30 -+ SYS_IOPRIO_GET = 31 -+ SYS_FLOCK = 32 -+ SYS_MKNODAT = 33 -+ SYS_MKDIRAT = 34 -+ SYS_UNLINKAT = 35 -+ SYS_SYMLINKAT = 36 -+ SYS_LINKAT = 37 -+ SYS_RENAMEAT = 38 -+ SYS_UMOUNT2 = 39 -+ SYS_MOUNT = 40 -+ SYS_PIVOT_ROOT = 41 -+ SYS_NFSSERVCTL = 42 -+ SYS_STATFS = 43 -+ SYS_FSTATFS = 44 -+ SYS_TRUNCATE = 45 -+ SYS_FTRUNCATE = 46 -+ SYS_FALLOCATE = 47 -+ SYS_FACCESSAT = 48 -+ SYS_CHDIR = 49 -+ SYS_FCHDIR = 50 -+ SYS_CHROOT = 51 -+ SYS_FCHMOD = 52 -+ SYS_FCHMODAT = 53 -+ SYS_FCHOWNAT = 54 -+ SYS_FCHOWN = 55 -+ SYS_OPENAT = 56 -+ SYS_CLOSE = 57 -+ SYS_VHANGUP = 58 -+ SYS_PIPE2 = 59 -+ SYS_QUOTACTL = 60 -+ SYS_GETDENTS64 = 61 -+ SYS_LSEEK = 62 -+ SYS_READ = 63 -+ SYS_WRITE = 64 -+ SYS_READV = 65 -+ SYS_WRITEV = 66 -+ SYS_PREAD64 = 67 -+ SYS_PWRITE64 = 68 -+ SYS_PREADV = 69 -+ SYS_PWRITEV = 70 -+ SYS_SENDFILE = 71 -+ SYS_PSELECT6 = 72 -+ SYS_PPOLL = 73 -+ SYS_SIGNALFD4 = 74 -+ SYS_VMSPLICE = 75 -+ SYS_SPLICE = 76 -+ SYS_TEE = 77 -+ SYS_READLINKAT = 78 -+ SYS_FSTATAT = 79 -+ SYS_FSTAT = 80 -+ SYS_SYNC = 81 -+ SYS_FSYNC = 82 -+ SYS_FDATASYNC = 83 -+ SYS_SYNC_FILE_RANGE = 84 -+ SYS_TIMERFD_CREATE = 85 -+ SYS_TIMERFD_SETTIME = 86 -+ SYS_TIMERFD_GETTIME = 87 -+ SYS_UTIMENSAT = 88 -+ SYS_ACCT = 89 -+ SYS_CAPGET = 90 -+ SYS_CAPSET = 91 -+ SYS_PERSONALITY = 92 -+ SYS_EXIT = 93 -+ SYS_EXIT_GROUP = 94 -+ SYS_WAITID = 95 -+ SYS_SET_TID_ADDRESS = 96 -+ SYS_UNSHARE = 97 -+ SYS_FUTEX = 98 -+ SYS_SET_ROBUST_LIST = 99 -+ SYS_GET_ROBUST_LIST = 100 -+ SYS_NANOSLEEP = 101 -+ SYS_GETITIMER = 102 -+ SYS_SETITIMER = 103 -+ SYS_KEXEC_LOAD = 104 -+ SYS_INIT_MODULE = 105 -+ SYS_DELETE_MODULE = 106 -+ SYS_TIMER_CREATE = 107 -+ SYS_TIMER_GETTIME = 108 -+ SYS_TIMER_GETOVERRUN = 109 -+ SYS_TIMER_SETTIME = 110 -+ SYS_TIMER_DELETE = 111 -+ SYS_CLOCK_SETTIME = 112 -+ SYS_CLOCK_GETTIME = 113 -+ SYS_CLOCK_GETRES = 114 -+ SYS_CLOCK_NANOSLEEP = 115 -+ SYS_SYSLOG = 116 -+ SYS_PTRACE = 117 -+ SYS_SCHED_SETPARAM = 118 -+ SYS_SCHED_SETSCHEDULER = 119 -+ SYS_SCHED_GETSCHEDULER = 120 -+ SYS_SCHED_GETPARAM = 121 -+ SYS_SCHED_SETAFFINITY = 122 -+ SYS_SCHED_GETAFFINITY = 123 -+ SYS_SCHED_YIELD = 124 -+ SYS_SCHED_GET_PRIORITY_MAX = 125 -+ SYS_SCHED_GET_PRIORITY_MIN = 126 -+ SYS_SCHED_RR_GET_INTERVAL = 127 -+ SYS_RESTART_SYSCALL = 128 -+ SYS_KILL = 129 -+ SYS_TKILL = 130 -+ SYS_TGKILL = 131 -+ SYS_SIGALTSTACK = 132 -+ SYS_RT_SIGSUSPEND = 133 -+ SYS_RT_SIGACTION = 134 -+ SYS_RT_SIGPROCMASK = 135 -+ SYS_RT_SIGPENDING = 136 -+ SYS_RT_SIGTIMEDWAIT = 137 -+ SYS_RT_SIGQUEUEINFO = 138 -+ SYS_RT_SIGRETURN = 139 -+ SYS_SETPRIORITY = 140 -+ SYS_GETPRIORITY = 141 -+ SYS_REBOOT = 142 -+ SYS_SETREGID = 143 -+ SYS_SETGID = 144 -+ SYS_SETREUID = 145 -+ SYS_SETUID = 146 -+ SYS_SETRESUID = 147 -+ SYS_GETRESUID = 148 -+ SYS_SETRESGID = 149 -+ SYS_GETRESGID = 150 -+ SYS_SETFSUID = 151 -+ SYS_SETFSGID = 152 -+ SYS_TIMES = 153 -+ SYS_SETPGID = 154 -+ SYS_GETPGID = 155 -+ SYS_GETSID = 156 -+ SYS_SETSID = 157 -+ SYS_GETGROUPS = 158 -+ SYS_SETGROUPS = 159 -+ SYS_UNAME = 160 -+ SYS_SETHOSTNAME = 161 -+ SYS_SETDOMAINNAME = 162 -+ SYS_GETRLIMIT = 163 -+ SYS_SETRLIMIT = 164 -+ SYS_GETRUSAGE = 165 -+ SYS_UMASK = 166 -+ SYS_PRCTL = 167 -+ SYS_GETCPU = 168 -+ SYS_GETTIMEOFDAY = 169 -+ SYS_SETTIMEOFDAY = 170 -+ SYS_ADJTIMEX = 171 -+ SYS_GETPID = 172 -+ SYS_GETPPID = 173 -+ SYS_GETUID = 174 -+ SYS_GETEUID = 175 -+ SYS_GETGID = 176 -+ SYS_GETEGID = 177 -+ SYS_GETTID = 178 -+ SYS_SYSINFO = 179 -+ SYS_MQ_OPEN = 180 -+ SYS_MQ_UNLINK = 181 -+ SYS_MQ_TIMEDSEND = 182 -+ SYS_MQ_TIMEDRECEIVE = 183 -+ SYS_MQ_NOTIFY = 184 -+ SYS_MQ_GETSETATTR = 185 -+ SYS_MSGGET = 186 -+ SYS_MSGCTL = 187 -+ SYS_MSGRCV = 188 -+ SYS_MSGSND = 189 -+ SYS_SEMGET = 190 -+ SYS_SEMCTL = 191 -+ SYS_SEMTIMEDOP = 192 -+ SYS_SEMOP = 193 -+ SYS_SHMGET = 194 -+ SYS_SHMCTL = 195 -+ SYS_SHMAT = 196 -+ SYS_SHMDT = 197 -+ SYS_SOCKET = 198 -+ SYS_SOCKETPAIR = 199 -+ SYS_BIND = 200 -+ SYS_LISTEN = 201 -+ SYS_ACCEPT = 202 -+ SYS_CONNECT = 203 -+ SYS_GETSOCKNAME = 204 -+ SYS_GETPEERNAME = 205 -+ SYS_SENDTO = 206 -+ SYS_RECVFROM = 207 -+ SYS_SETSOCKOPT = 208 -+ SYS_GETSOCKOPT = 209 -+ SYS_SHUTDOWN = 210 -+ SYS_SENDMSG = 211 -+ SYS_RECVMSG = 212 -+ SYS_READAHEAD = 213 -+ SYS_BRK = 214 -+ SYS_MUNMAP = 215 -+ SYS_MREMAP = 216 -+ SYS_ADD_KEY = 217 -+ SYS_REQUEST_KEY = 218 -+ SYS_KEYCTL = 219 -+ SYS_CLONE = 220 -+ SYS_EXECVE = 221 -+ SYS_MMAP = 222 -+ SYS_FADVISE64 = 223 -+ SYS_SWAPON = 224 -+ SYS_SWAPOFF = 225 -+ SYS_MPROTECT = 226 -+ SYS_MSYNC = 227 -+ SYS_MLOCK = 228 -+ SYS_MUNLOCK = 229 -+ SYS_MLOCKALL = 230 -+ SYS_MUNLOCKALL = 231 -+ SYS_MINCORE = 232 -+ SYS_MADVISE = 233 -+ SYS_REMAP_FILE_PAGES = 234 -+ SYS_MBIND = 235 -+ SYS_GET_MEMPOLICY = 236 -+ SYS_SET_MEMPOLICY = 237 -+ SYS_MIGRATE_PAGES = 238 -+ SYS_MOVE_PAGES = 239 -+ SYS_RT_TGSIGQUEUEINFO = 240 -+ SYS_PERF_EVENT_OPEN = 241 -+ SYS_ACCEPT4 = 242 -+ SYS_RECVMMSG = 243 -+ SYS_ARCH_SPECIFIC_SYSCALL = 244 -+ SYS_WAIT4 = 260 -+ SYS_PRLIMIT64 = 261 -+ SYS_FANOTIFY_INIT = 262 -+ SYS_FANOTIFY_MARK = 263 -+ SYS_NAME_TO_HANDLE_AT = 264 -+ SYS_OPEN_BY_HANDLE_AT = 265 -+ SYS_CLOCK_ADJTIME = 266 -+ SYS_SYNCFS = 267 -+ SYS_SETNS = 268 -+ SYS_SENDMMSG = 269 -+ SYS_PROCESS_VM_READV = 270 -+ SYS_PROCESS_VM_WRITEV = 271 -+ SYS_KCMP = 272 -+ SYS_FINIT_MODULE = 273 -+ SYS_SCHED_SETATTR = 274 -+ SYS_SCHED_GETATTR = 275 -+ SYS_RENAMEAT2 = 276 -+ SYS_SECCOMP = 277 -+ SYS_GETRANDOM = 278 -+ SYS_MEMFD_CREATE = 279 -+ SYS_BPF = 280 -+ SYS_EXECVEAT = 281 -+ SYS_USERFAULTFD = 282 -+ SYS_MEMBARRIER = 283 -+ SYS_MLOCK2 = 284 -+ SYS_COPY_FILE_RANGE = 285 -+ SYS_PREADV2 = 286 -+ SYS_PWRITEV2 = 287 -+ SYS_PKEY_MPROTECT = 288 -+ SYS_PKEY_ALLOC = 289 -+ SYS_PKEY_FREE = 290 -+ SYS_STATX = 291 -+ SYS_IO_PGETEVENTS = 292 -+ SYS_RSEQ = 293 -+ SYS_KEXEC_FILE_LOAD = 294 -+ SYS_PIDFD_SEND_SIGNAL = 424 -+ SYS_IO_URING_SETUP = 425 -+ SYS_IO_URING_ENTER = 426 -+ SYS_IO_URING_REGISTER = 427 -+ SYS_OPEN_TREE = 428 -+ SYS_MOVE_MOUNT = 429 -+ SYS_FSOPEN = 430 -+ SYS_FSCONFIG = 431 -+ SYS_FSMOUNT = 432 -+ SYS_FSPICK = 433 -+ SYS_PIDFD_OPEN = 434 -+ SYS_CLONE3 = 435 -+ SYS_CLOSE_RANGE = 436 -+ SYS_OPENAT2 = 437 -+ SYS_PIDFD_GETFD = 438 -+ SYS_FACCESSAT2 = 439 -+ SYS_PROCESS_MADVISE = 440 -+ SYS_EPOLL_PWAIT2 = 441 -+ SYS_MOUNT_SETATTR = 442 -+ SYS_QUOTACTL_FD = 443 -+ SYS_LANDLOCK_CREATE_RULESET = 444 -+ SYS_LANDLOCK_ADD_RULE = 445 -+ SYS_LANDLOCK_RESTRICT_SELF = 446 -+ SYS_MEMFD_SECRET = 447 -+ SYS_PROCESS_MRELEASE = 448 -+ SYS_FUTEX_WAITV = 449 -+ SYS_SET_MEMPOLICY_HOME_NODE = 450 - ) -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_loong64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_loong64.go -new file mode 100644 -index 0000000..81c4849 ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_loong64.go -@@ -0,0 +1,311 @@ -+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/loong64/include /tmp/loong64/include/asm/unistd.h -+// Code generated by the command above; see README.md. DO NOT EDIT. -+ -+//go:build loong64 && linux -+// +build loong64,linux -+ -+package unix -+ -+const ( -+ SYS_IO_SETUP = 0 -+ SYS_IO_DESTROY = 1 -+ SYS_IO_SUBMIT = 2 -+ SYS_IO_CANCEL = 3 -+ SYS_IO_GETEVENTS = 4 -+ SYS_SETXATTR = 5 -+ SYS_LSETXATTR = 6 -+ SYS_FSETXATTR = 7 -+ SYS_GETXATTR = 8 -+ SYS_LGETXATTR = 9 -+ SYS_FGETXATTR = 10 -+ SYS_LISTXATTR = 11 -+ SYS_LLISTXATTR = 12 -+ SYS_FLISTXATTR = 13 -+ SYS_REMOVEXATTR = 14 -+ SYS_LREMOVEXATTR = 15 -+ SYS_FREMOVEXATTR = 16 -+ SYS_GETCWD = 17 -+ SYS_LOOKUP_DCOOKIE = 18 -+ SYS_EVENTFD2 = 19 -+ SYS_EPOLL_CREATE1 = 20 -+ SYS_EPOLL_CTL = 21 -+ SYS_EPOLL_PWAIT = 22 -+ SYS_DUP = 23 -+ SYS_DUP3 = 24 -+ SYS_FCNTL = 25 -+ SYS_INOTIFY_INIT1 = 26 -+ SYS_INOTIFY_ADD_WATCH = 27 -+ SYS_INOTIFY_RM_WATCH = 28 -+ SYS_IOCTL = 29 -+ SYS_IOPRIO_SET = 30 -+ SYS_IOPRIO_GET = 31 -+ SYS_FLOCK = 32 -+ SYS_MKNODAT = 33 -+ SYS_MKDIRAT = 34 -+ SYS_UNLINKAT = 35 -+ SYS_SYMLINKAT = 36 -+ SYS_LINKAT = 37 -+ SYS_UMOUNT2 = 39 -+ SYS_MOUNT = 40 -+ SYS_PIVOT_ROOT = 41 -+ SYS_NFSSERVCTL = 42 -+ SYS_STATFS = 43 -+ SYS_FSTATFS = 44 -+ SYS_TRUNCATE = 45 -+ SYS_FTRUNCATE = 46 -+ SYS_FALLOCATE = 47 -+ SYS_FACCESSAT = 48 -+ SYS_CHDIR = 49 -+ SYS_FCHDIR = 50 -+ SYS_CHROOT = 51 -+ SYS_FCHMOD = 52 -+ SYS_FCHMODAT = 53 -+ SYS_FCHOWNAT = 54 -+ SYS_FCHOWN = 55 -+ SYS_OPENAT = 56 -+ SYS_CLOSE = 57 -+ SYS_VHANGUP = 58 -+ SYS_PIPE2 = 59 -+ SYS_QUOTACTL = 60 -+ SYS_GETDENTS64 = 61 -+ SYS_LSEEK = 62 -+ SYS_READ = 63 -+ SYS_WRITE = 64 -+ SYS_READV = 65 -+ SYS_WRITEV = 66 -+ SYS_PREAD64 = 67 -+ SYS_PWRITE64 = 68 -+ SYS_PREADV = 69 -+ SYS_PWRITEV = 70 -+ SYS_SENDFILE = 71 -+ SYS_PSELECT6 = 72 -+ SYS_PPOLL = 73 -+ SYS_SIGNALFD4 = 74 -+ SYS_VMSPLICE = 75 -+ SYS_SPLICE = 76 -+ SYS_TEE = 77 -+ SYS_READLINKAT = 78 -+ SYS_SYNC = 81 -+ SYS_FSYNC = 82 -+ SYS_FDATASYNC = 83 -+ SYS_SYNC_FILE_RANGE = 84 -+ SYS_TIMERFD_CREATE = 85 -+ SYS_TIMERFD_SETTIME = 86 -+ SYS_TIMERFD_GETTIME = 87 -+ SYS_UTIMENSAT = 88 -+ SYS_ACCT = 89 -+ SYS_CAPGET = 90 -+ SYS_CAPSET = 91 -+ SYS_PERSONALITY = 92 -+ SYS_EXIT = 93 -+ SYS_EXIT_GROUP = 94 -+ SYS_WAITID = 95 -+ SYS_SET_TID_ADDRESS = 96 -+ SYS_UNSHARE = 97 -+ SYS_FUTEX = 98 -+ SYS_SET_ROBUST_LIST = 99 -+ SYS_GET_ROBUST_LIST = 100 -+ SYS_NANOSLEEP = 101 -+ SYS_GETITIMER = 102 -+ SYS_SETITIMER = 103 -+ SYS_KEXEC_LOAD = 104 -+ SYS_INIT_MODULE = 105 -+ SYS_DELETE_MODULE = 106 -+ SYS_TIMER_CREATE = 107 -+ SYS_TIMER_GETTIME = 108 -+ SYS_TIMER_GETOVERRUN = 109 -+ SYS_TIMER_SETTIME = 110 -+ SYS_TIMER_DELETE = 111 -+ SYS_CLOCK_SETTIME = 112 -+ SYS_CLOCK_GETTIME = 113 -+ SYS_CLOCK_GETRES = 114 -+ SYS_CLOCK_NANOSLEEP = 115 -+ SYS_SYSLOG = 116 -+ SYS_PTRACE = 117 -+ SYS_SCHED_SETPARAM = 118 -+ SYS_SCHED_SETSCHEDULER = 119 -+ SYS_SCHED_GETSCHEDULER = 120 -+ SYS_SCHED_GETPARAM = 121 -+ SYS_SCHED_SETAFFINITY = 122 -+ SYS_SCHED_GETAFFINITY = 123 -+ SYS_SCHED_YIELD = 124 -+ SYS_SCHED_GET_PRIORITY_MAX = 125 -+ SYS_SCHED_GET_PRIORITY_MIN = 126 -+ SYS_SCHED_RR_GET_INTERVAL = 127 -+ SYS_RESTART_SYSCALL = 128 -+ SYS_KILL = 129 -+ SYS_TKILL = 130 -+ SYS_TGKILL = 131 -+ SYS_SIGALTSTACK = 132 -+ SYS_RT_SIGSUSPEND = 133 -+ SYS_RT_SIGACTION = 134 -+ SYS_RT_SIGPROCMASK = 135 -+ SYS_RT_SIGPENDING = 136 -+ SYS_RT_SIGTIMEDWAIT = 137 -+ SYS_RT_SIGQUEUEINFO = 138 -+ SYS_RT_SIGRETURN = 139 -+ SYS_SETPRIORITY = 140 -+ SYS_GETPRIORITY = 141 -+ SYS_REBOOT = 142 -+ SYS_SETREGID = 143 -+ SYS_SETGID = 144 -+ SYS_SETREUID = 145 -+ SYS_SETUID = 146 -+ SYS_SETRESUID = 147 -+ SYS_GETRESUID = 148 -+ SYS_SETRESGID = 149 -+ SYS_GETRESGID = 150 -+ SYS_SETFSUID = 151 -+ SYS_SETFSGID = 152 -+ SYS_TIMES = 153 -+ SYS_SETPGID = 154 -+ SYS_GETPGID = 155 -+ SYS_GETSID = 156 -+ SYS_SETSID = 157 -+ SYS_GETGROUPS = 158 -+ SYS_SETGROUPS = 159 -+ SYS_UNAME = 160 -+ SYS_SETHOSTNAME = 161 -+ SYS_SETDOMAINNAME = 162 -+ SYS_GETRUSAGE = 165 -+ SYS_UMASK = 166 -+ SYS_PRCTL = 167 -+ SYS_GETCPU = 168 -+ SYS_GETTIMEOFDAY = 169 -+ SYS_SETTIMEOFDAY = 170 -+ SYS_ADJTIMEX = 171 -+ SYS_GETPID = 172 -+ SYS_GETPPID = 173 -+ SYS_GETUID = 174 -+ SYS_GETEUID = 175 -+ SYS_GETGID = 176 -+ SYS_GETEGID = 177 -+ SYS_GETTID = 178 -+ SYS_SYSINFO = 179 -+ SYS_MQ_OPEN = 180 -+ SYS_MQ_UNLINK = 181 -+ SYS_MQ_TIMEDSEND = 182 -+ SYS_MQ_TIMEDRECEIVE = 183 -+ SYS_MQ_NOTIFY = 184 -+ SYS_MQ_GETSETATTR = 185 -+ SYS_MSGGET = 186 -+ SYS_MSGCTL = 187 -+ SYS_MSGRCV = 188 -+ SYS_MSGSND = 189 -+ SYS_SEMGET = 190 -+ SYS_SEMCTL = 191 -+ SYS_SEMTIMEDOP = 192 -+ SYS_SEMOP = 193 -+ SYS_SHMGET = 194 -+ SYS_SHMCTL = 195 -+ SYS_SHMAT = 196 -+ SYS_SHMDT = 197 -+ SYS_SOCKET = 198 -+ SYS_SOCKETPAIR = 199 -+ SYS_BIND = 200 -+ SYS_LISTEN = 201 -+ SYS_ACCEPT = 202 -+ SYS_CONNECT = 203 -+ SYS_GETSOCKNAME = 204 -+ SYS_GETPEERNAME = 205 -+ SYS_SENDTO = 206 -+ SYS_RECVFROM = 207 -+ SYS_SETSOCKOPT = 208 -+ SYS_GETSOCKOPT = 209 -+ SYS_SHUTDOWN = 210 -+ SYS_SENDMSG = 211 -+ SYS_RECVMSG = 212 -+ SYS_READAHEAD = 213 -+ SYS_BRK = 214 -+ SYS_MUNMAP = 215 -+ SYS_MREMAP = 216 -+ SYS_ADD_KEY = 217 -+ SYS_REQUEST_KEY = 218 -+ SYS_KEYCTL = 219 -+ SYS_CLONE = 220 -+ SYS_EXECVE = 221 -+ SYS_MMAP = 222 -+ SYS_FADVISE64 = 223 -+ SYS_SWAPON = 224 -+ SYS_SWAPOFF = 225 -+ SYS_MPROTECT = 226 -+ SYS_MSYNC = 227 -+ SYS_MLOCK = 228 -+ SYS_MUNLOCK = 229 -+ SYS_MLOCKALL = 230 -+ SYS_MUNLOCKALL = 231 -+ SYS_MINCORE = 232 -+ SYS_MADVISE = 233 -+ SYS_REMAP_FILE_PAGES = 234 -+ SYS_MBIND = 235 -+ SYS_GET_MEMPOLICY = 236 -+ SYS_SET_MEMPOLICY = 237 -+ SYS_MIGRATE_PAGES = 238 -+ SYS_MOVE_PAGES = 239 -+ SYS_RT_TGSIGQUEUEINFO = 240 -+ SYS_PERF_EVENT_OPEN = 241 -+ SYS_ACCEPT4 = 242 -+ SYS_RECVMMSG = 243 -+ SYS_ARCH_SPECIFIC_SYSCALL = 244 -+ SYS_WAIT4 = 260 -+ SYS_PRLIMIT64 = 261 -+ SYS_FANOTIFY_INIT = 262 -+ SYS_FANOTIFY_MARK = 263 -+ SYS_NAME_TO_HANDLE_AT = 264 -+ SYS_OPEN_BY_HANDLE_AT = 265 -+ SYS_CLOCK_ADJTIME = 266 -+ SYS_SYNCFS = 267 -+ SYS_SETNS = 268 -+ SYS_SENDMMSG = 269 -+ SYS_PROCESS_VM_READV = 270 -+ SYS_PROCESS_VM_WRITEV = 271 -+ SYS_KCMP = 272 -+ SYS_FINIT_MODULE = 273 -+ SYS_SCHED_SETATTR = 274 -+ SYS_SCHED_GETATTR = 275 -+ SYS_RENAMEAT2 = 276 -+ SYS_SECCOMP = 277 -+ SYS_GETRANDOM = 278 -+ SYS_MEMFD_CREATE = 279 -+ SYS_BPF = 280 -+ SYS_EXECVEAT = 281 -+ SYS_USERFAULTFD = 282 -+ SYS_MEMBARRIER = 283 -+ SYS_MLOCK2 = 284 -+ SYS_COPY_FILE_RANGE = 285 -+ SYS_PREADV2 = 286 -+ SYS_PWRITEV2 = 287 -+ SYS_PKEY_MPROTECT = 288 -+ SYS_PKEY_ALLOC = 289 -+ SYS_PKEY_FREE = 290 -+ SYS_STATX = 291 -+ SYS_IO_PGETEVENTS = 292 -+ SYS_RSEQ = 293 -+ SYS_KEXEC_FILE_LOAD = 294 -+ SYS_PIDFD_SEND_SIGNAL = 424 -+ SYS_IO_URING_SETUP = 425 -+ SYS_IO_URING_ENTER = 426 -+ SYS_IO_URING_REGISTER = 427 -+ SYS_OPEN_TREE = 428 -+ SYS_MOVE_MOUNT = 429 -+ SYS_FSOPEN = 430 -+ SYS_FSCONFIG = 431 -+ SYS_FSMOUNT = 432 -+ SYS_FSPICK = 433 -+ SYS_PIDFD_OPEN = 434 -+ SYS_CLONE3 = 435 -+ SYS_CLOSE_RANGE = 436 -+ SYS_OPENAT2 = 437 -+ SYS_PIDFD_GETFD = 438 -+ SYS_FACCESSAT2 = 439 -+ SYS_PROCESS_MADVISE = 440 -+ SYS_EPOLL_PWAIT2 = 441 -+ SYS_MOUNT_SETATTR = 442 -+ SYS_QUOTACTL_FD = 443 -+ SYS_LANDLOCK_CREATE_RULESET = 444 -+ SYS_LANDLOCK_ADD_RULE = 445 -+ SYS_LANDLOCK_RESTRICT_SELF = 446 -+ SYS_PROCESS_MRELEASE = 448 -+ SYS_FUTEX_WAITV = 449 -+ SYS_SET_MEMPOLICY_HOME_NODE = 450 -+) -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go -index 68bb6d2..202a57e 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips.go -@@ -1,6 +1,7 @@ --// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h -+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/mips/include /tmp/mips/include/asm/unistd.h - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build mips && linux - // +build mips,linux - - package unix -@@ -416,6 +417,18 @@ const ( - SYS_FSPICK = 4433 - SYS_PIDFD_OPEN = 4434 - SYS_CLONE3 = 4435 -+ SYS_CLOSE_RANGE = 4436 - SYS_OPENAT2 = 4437 - SYS_PIDFD_GETFD = 4438 -+ SYS_FACCESSAT2 = 4439 -+ SYS_PROCESS_MADVISE = 4440 -+ SYS_EPOLL_PWAIT2 = 4441 -+ SYS_MOUNT_SETATTR = 4442 -+ SYS_QUOTACTL_FD = 4443 -+ SYS_LANDLOCK_CREATE_RULESET = 4444 -+ SYS_LANDLOCK_ADD_RULE = 4445 -+ SYS_LANDLOCK_RESTRICT_SELF = 4446 -+ SYS_PROCESS_MRELEASE = 4448 -+ SYS_FUTEX_WAITV = 4449 -+ SYS_SET_MEMPOLICY_HOME_NODE = 4450 - ) -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go -index 4e52511..1fbceb5 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go -@@ -1,351 +1,364 @@ --// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h -+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/mips64/include /tmp/mips64/include/asm/unistd.h - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build mips64 && linux - // +build mips64,linux - - package unix - - const ( -- SYS_READ = 5000 -- SYS_WRITE = 5001 -- SYS_OPEN = 5002 -- SYS_CLOSE = 5003 -- SYS_STAT = 5004 -- SYS_FSTAT = 5005 -- SYS_LSTAT = 5006 -- SYS_POLL = 5007 -- SYS_LSEEK = 5008 -- SYS_MMAP = 5009 -- SYS_MPROTECT = 5010 -- SYS_MUNMAP = 5011 -- SYS_BRK = 5012 -- SYS_RT_SIGACTION = 5013 -- SYS_RT_SIGPROCMASK = 5014 -- SYS_IOCTL = 5015 -- SYS_PREAD64 = 5016 -- SYS_PWRITE64 = 5017 -- SYS_READV = 5018 -- SYS_WRITEV = 5019 -- SYS_ACCESS = 5020 -- SYS_PIPE = 5021 -- SYS__NEWSELECT = 5022 -- SYS_SCHED_YIELD = 5023 -- SYS_MREMAP = 5024 -- SYS_MSYNC = 5025 -- SYS_MINCORE = 5026 -- SYS_MADVISE = 5027 -- SYS_SHMGET = 5028 -- SYS_SHMAT = 5029 -- SYS_SHMCTL = 5030 -- SYS_DUP = 5031 -- SYS_DUP2 = 5032 -- SYS_PAUSE = 5033 -- SYS_NANOSLEEP = 5034 -- SYS_GETITIMER = 5035 -- SYS_SETITIMER = 5036 -- SYS_ALARM = 5037 -- SYS_GETPID = 5038 -- SYS_SENDFILE = 5039 -- SYS_SOCKET = 5040 -- SYS_CONNECT = 5041 -- SYS_ACCEPT = 5042 -- SYS_SENDTO = 5043 -- SYS_RECVFROM = 5044 -- SYS_SENDMSG = 5045 -- SYS_RECVMSG = 5046 -- SYS_SHUTDOWN = 5047 -- SYS_BIND = 5048 -- SYS_LISTEN = 5049 -- SYS_GETSOCKNAME = 5050 -- SYS_GETPEERNAME = 5051 -- SYS_SOCKETPAIR = 5052 -- SYS_SETSOCKOPT = 5053 -- SYS_GETSOCKOPT = 5054 -- SYS_CLONE = 5055 -- SYS_FORK = 5056 -- SYS_EXECVE = 5057 -- SYS_EXIT = 5058 -- SYS_WAIT4 = 5059 -- SYS_KILL = 5060 -- SYS_UNAME = 5061 -- SYS_SEMGET = 5062 -- SYS_SEMOP = 5063 -- SYS_SEMCTL = 5064 -- SYS_SHMDT = 5065 -- SYS_MSGGET = 5066 -- SYS_MSGSND = 5067 -- SYS_MSGRCV = 5068 -- SYS_MSGCTL = 5069 -- SYS_FCNTL = 5070 -- SYS_FLOCK = 5071 -- SYS_FSYNC = 5072 -- SYS_FDATASYNC = 5073 -- SYS_TRUNCATE = 5074 -- SYS_FTRUNCATE = 5075 -- SYS_GETDENTS = 5076 -- SYS_GETCWD = 5077 -- SYS_CHDIR = 5078 -- SYS_FCHDIR = 5079 -- SYS_RENAME = 5080 -- SYS_MKDIR = 5081 -- SYS_RMDIR = 5082 -- SYS_CREAT = 5083 -- SYS_LINK = 5084 -- SYS_UNLINK = 5085 -- SYS_SYMLINK = 5086 -- SYS_READLINK = 5087 -- SYS_CHMOD = 5088 -- SYS_FCHMOD = 5089 -- SYS_CHOWN = 5090 -- SYS_FCHOWN = 5091 -- SYS_LCHOWN = 5092 -- SYS_UMASK = 5093 -- SYS_GETTIMEOFDAY = 5094 -- SYS_GETRLIMIT = 5095 -- SYS_GETRUSAGE = 5096 -- SYS_SYSINFO = 5097 -- SYS_TIMES = 5098 -- SYS_PTRACE = 5099 -- SYS_GETUID = 5100 -- SYS_SYSLOG = 5101 -- SYS_GETGID = 5102 -- SYS_SETUID = 5103 -- SYS_SETGID = 5104 -- SYS_GETEUID = 5105 -- SYS_GETEGID = 5106 -- SYS_SETPGID = 5107 -- SYS_GETPPID = 5108 -- SYS_GETPGRP = 5109 -- SYS_SETSID = 5110 -- SYS_SETREUID = 5111 -- SYS_SETREGID = 5112 -- SYS_GETGROUPS = 5113 -- SYS_SETGROUPS = 5114 -- SYS_SETRESUID = 5115 -- SYS_GETRESUID = 5116 -- SYS_SETRESGID = 5117 -- SYS_GETRESGID = 5118 -- SYS_GETPGID = 5119 -- SYS_SETFSUID = 5120 -- SYS_SETFSGID = 5121 -- SYS_GETSID = 5122 -- SYS_CAPGET = 5123 -- SYS_CAPSET = 5124 -- SYS_RT_SIGPENDING = 5125 -- SYS_RT_SIGTIMEDWAIT = 5126 -- SYS_RT_SIGQUEUEINFO = 5127 -- SYS_RT_SIGSUSPEND = 5128 -- SYS_SIGALTSTACK = 5129 -- SYS_UTIME = 5130 -- SYS_MKNOD = 5131 -- SYS_PERSONALITY = 5132 -- SYS_USTAT = 5133 -- SYS_STATFS = 5134 -- SYS_FSTATFS = 5135 -- SYS_SYSFS = 5136 -- SYS_GETPRIORITY = 5137 -- SYS_SETPRIORITY = 5138 -- SYS_SCHED_SETPARAM = 5139 -- SYS_SCHED_GETPARAM = 5140 -- SYS_SCHED_SETSCHEDULER = 5141 -- SYS_SCHED_GETSCHEDULER = 5142 -- SYS_SCHED_GET_PRIORITY_MAX = 5143 -- SYS_SCHED_GET_PRIORITY_MIN = 5144 -- SYS_SCHED_RR_GET_INTERVAL = 5145 -- SYS_MLOCK = 5146 -- SYS_MUNLOCK = 5147 -- SYS_MLOCKALL = 5148 -- SYS_MUNLOCKALL = 5149 -- SYS_VHANGUP = 5150 -- SYS_PIVOT_ROOT = 5151 -- SYS__SYSCTL = 5152 -- SYS_PRCTL = 5153 -- SYS_ADJTIMEX = 5154 -- SYS_SETRLIMIT = 5155 -- SYS_CHROOT = 5156 -- SYS_SYNC = 5157 -- SYS_ACCT = 5158 -- SYS_SETTIMEOFDAY = 5159 -- SYS_MOUNT = 5160 -- SYS_UMOUNT2 = 5161 -- SYS_SWAPON = 5162 -- SYS_SWAPOFF = 5163 -- SYS_REBOOT = 5164 -- SYS_SETHOSTNAME = 5165 -- SYS_SETDOMAINNAME = 5166 -- SYS_CREATE_MODULE = 5167 -- SYS_INIT_MODULE = 5168 -- SYS_DELETE_MODULE = 5169 -- SYS_GET_KERNEL_SYMS = 5170 -- SYS_QUERY_MODULE = 5171 -- SYS_QUOTACTL = 5172 -- SYS_NFSSERVCTL = 5173 -- SYS_GETPMSG = 5174 -- SYS_PUTPMSG = 5175 -- SYS_AFS_SYSCALL = 5176 -- SYS_RESERVED177 = 5177 -- SYS_GETTID = 5178 -- SYS_READAHEAD = 5179 -- SYS_SETXATTR = 5180 -- SYS_LSETXATTR = 5181 -- SYS_FSETXATTR = 5182 -- SYS_GETXATTR = 5183 -- SYS_LGETXATTR = 5184 -- SYS_FGETXATTR = 5185 -- SYS_LISTXATTR = 5186 -- SYS_LLISTXATTR = 5187 -- SYS_FLISTXATTR = 5188 -- SYS_REMOVEXATTR = 5189 -- SYS_LREMOVEXATTR = 5190 -- SYS_FREMOVEXATTR = 5191 -- SYS_TKILL = 5192 -- SYS_RESERVED193 = 5193 -- SYS_FUTEX = 5194 -- SYS_SCHED_SETAFFINITY = 5195 -- SYS_SCHED_GETAFFINITY = 5196 -- SYS_CACHEFLUSH = 5197 -- SYS_CACHECTL = 5198 -- SYS_SYSMIPS = 5199 -- SYS_IO_SETUP = 5200 -- SYS_IO_DESTROY = 5201 -- SYS_IO_GETEVENTS = 5202 -- SYS_IO_SUBMIT = 5203 -- SYS_IO_CANCEL = 5204 -- SYS_EXIT_GROUP = 5205 -- SYS_LOOKUP_DCOOKIE = 5206 -- SYS_EPOLL_CREATE = 5207 -- SYS_EPOLL_CTL = 5208 -- SYS_EPOLL_WAIT = 5209 -- SYS_REMAP_FILE_PAGES = 5210 -- SYS_RT_SIGRETURN = 5211 -- SYS_SET_TID_ADDRESS = 5212 -- SYS_RESTART_SYSCALL = 5213 -- SYS_SEMTIMEDOP = 5214 -- SYS_FADVISE64 = 5215 -- SYS_TIMER_CREATE = 5216 -- SYS_TIMER_SETTIME = 5217 -- SYS_TIMER_GETTIME = 5218 -- SYS_TIMER_GETOVERRUN = 5219 -- SYS_TIMER_DELETE = 5220 -- SYS_CLOCK_SETTIME = 5221 -- SYS_CLOCK_GETTIME = 5222 -- SYS_CLOCK_GETRES = 5223 -- SYS_CLOCK_NANOSLEEP = 5224 -- SYS_TGKILL = 5225 -- SYS_UTIMES = 5226 -- SYS_MBIND = 5227 -- SYS_GET_MEMPOLICY = 5228 -- SYS_SET_MEMPOLICY = 5229 -- SYS_MQ_OPEN = 5230 -- SYS_MQ_UNLINK = 5231 -- SYS_MQ_TIMEDSEND = 5232 -- SYS_MQ_TIMEDRECEIVE = 5233 -- SYS_MQ_NOTIFY = 5234 -- SYS_MQ_GETSETATTR = 5235 -- SYS_VSERVER = 5236 -- SYS_WAITID = 5237 -- SYS_ADD_KEY = 5239 -- SYS_REQUEST_KEY = 5240 -- SYS_KEYCTL = 5241 -- SYS_SET_THREAD_AREA = 5242 -- SYS_INOTIFY_INIT = 5243 -- SYS_INOTIFY_ADD_WATCH = 5244 -- SYS_INOTIFY_RM_WATCH = 5245 -- SYS_MIGRATE_PAGES = 5246 -- SYS_OPENAT = 5247 -- SYS_MKDIRAT = 5248 -- SYS_MKNODAT = 5249 -- SYS_FCHOWNAT = 5250 -- SYS_FUTIMESAT = 5251 -- SYS_NEWFSTATAT = 5252 -- SYS_UNLINKAT = 5253 -- SYS_RENAMEAT = 5254 -- SYS_LINKAT = 5255 -- SYS_SYMLINKAT = 5256 -- SYS_READLINKAT = 5257 -- SYS_FCHMODAT = 5258 -- SYS_FACCESSAT = 5259 -- SYS_PSELECT6 = 5260 -- SYS_PPOLL = 5261 -- SYS_UNSHARE = 5262 -- SYS_SPLICE = 5263 -- SYS_SYNC_FILE_RANGE = 5264 -- SYS_TEE = 5265 -- SYS_VMSPLICE = 5266 -- SYS_MOVE_PAGES = 5267 -- SYS_SET_ROBUST_LIST = 5268 -- SYS_GET_ROBUST_LIST = 5269 -- SYS_KEXEC_LOAD = 5270 -- SYS_GETCPU = 5271 -- SYS_EPOLL_PWAIT = 5272 -- SYS_IOPRIO_SET = 5273 -- SYS_IOPRIO_GET = 5274 -- SYS_UTIMENSAT = 5275 -- SYS_SIGNALFD = 5276 -- SYS_TIMERFD = 5277 -- SYS_EVENTFD = 5278 -- SYS_FALLOCATE = 5279 -- SYS_TIMERFD_CREATE = 5280 -- SYS_TIMERFD_GETTIME = 5281 -- SYS_TIMERFD_SETTIME = 5282 -- SYS_SIGNALFD4 = 5283 -- SYS_EVENTFD2 = 5284 -- SYS_EPOLL_CREATE1 = 5285 -- SYS_DUP3 = 5286 -- SYS_PIPE2 = 5287 -- SYS_INOTIFY_INIT1 = 5288 -- SYS_PREADV = 5289 -- SYS_PWRITEV = 5290 -- SYS_RT_TGSIGQUEUEINFO = 5291 -- SYS_PERF_EVENT_OPEN = 5292 -- SYS_ACCEPT4 = 5293 -- SYS_RECVMMSG = 5294 -- SYS_FANOTIFY_INIT = 5295 -- SYS_FANOTIFY_MARK = 5296 -- SYS_PRLIMIT64 = 5297 -- SYS_NAME_TO_HANDLE_AT = 5298 -- SYS_OPEN_BY_HANDLE_AT = 5299 -- SYS_CLOCK_ADJTIME = 5300 -- SYS_SYNCFS = 5301 -- SYS_SENDMMSG = 5302 -- SYS_SETNS = 5303 -- SYS_PROCESS_VM_READV = 5304 -- SYS_PROCESS_VM_WRITEV = 5305 -- SYS_KCMP = 5306 -- SYS_FINIT_MODULE = 5307 -- SYS_GETDENTS64 = 5308 -- SYS_SCHED_SETATTR = 5309 -- SYS_SCHED_GETATTR = 5310 -- SYS_RENAMEAT2 = 5311 -- SYS_SECCOMP = 5312 -- SYS_GETRANDOM = 5313 -- SYS_MEMFD_CREATE = 5314 -- SYS_BPF = 5315 -- SYS_EXECVEAT = 5316 -- SYS_USERFAULTFD = 5317 -- SYS_MEMBARRIER = 5318 -- SYS_MLOCK2 = 5319 -- SYS_COPY_FILE_RANGE = 5320 -- SYS_PREADV2 = 5321 -- SYS_PWRITEV2 = 5322 -- SYS_PKEY_MPROTECT = 5323 -- SYS_PKEY_ALLOC = 5324 -- SYS_PKEY_FREE = 5325 -- SYS_STATX = 5326 -- SYS_RSEQ = 5327 -- SYS_IO_PGETEVENTS = 5328 -- SYS_PIDFD_SEND_SIGNAL = 5424 -- SYS_IO_URING_SETUP = 5425 -- SYS_IO_URING_ENTER = 5426 -- SYS_IO_URING_REGISTER = 5427 -- SYS_OPEN_TREE = 5428 -- SYS_MOVE_MOUNT = 5429 -- SYS_FSOPEN = 5430 -- SYS_FSCONFIG = 5431 -- SYS_FSMOUNT = 5432 -- SYS_FSPICK = 5433 -- SYS_PIDFD_OPEN = 5434 -- SYS_CLONE3 = 5435 -- SYS_OPENAT2 = 5437 -- SYS_PIDFD_GETFD = 5438 -+ SYS_READ = 5000 -+ SYS_WRITE = 5001 -+ SYS_OPEN = 5002 -+ SYS_CLOSE = 5003 -+ SYS_STAT = 5004 -+ SYS_FSTAT = 5005 -+ SYS_LSTAT = 5006 -+ SYS_POLL = 5007 -+ SYS_LSEEK = 5008 -+ SYS_MMAP = 5009 -+ SYS_MPROTECT = 5010 -+ SYS_MUNMAP = 5011 -+ SYS_BRK = 5012 -+ SYS_RT_SIGACTION = 5013 -+ SYS_RT_SIGPROCMASK = 5014 -+ SYS_IOCTL = 5015 -+ SYS_PREAD64 = 5016 -+ SYS_PWRITE64 = 5017 -+ SYS_READV = 5018 -+ SYS_WRITEV = 5019 -+ SYS_ACCESS = 5020 -+ SYS_PIPE = 5021 -+ SYS__NEWSELECT = 5022 -+ SYS_SCHED_YIELD = 5023 -+ SYS_MREMAP = 5024 -+ SYS_MSYNC = 5025 -+ SYS_MINCORE = 5026 -+ SYS_MADVISE = 5027 -+ SYS_SHMGET = 5028 -+ SYS_SHMAT = 5029 -+ SYS_SHMCTL = 5030 -+ SYS_DUP = 5031 -+ SYS_DUP2 = 5032 -+ SYS_PAUSE = 5033 -+ SYS_NANOSLEEP = 5034 -+ SYS_GETITIMER = 5035 -+ SYS_SETITIMER = 5036 -+ SYS_ALARM = 5037 -+ SYS_GETPID = 5038 -+ SYS_SENDFILE = 5039 -+ SYS_SOCKET = 5040 -+ SYS_CONNECT = 5041 -+ SYS_ACCEPT = 5042 -+ SYS_SENDTO = 5043 -+ SYS_RECVFROM = 5044 -+ SYS_SENDMSG = 5045 -+ SYS_RECVMSG = 5046 -+ SYS_SHUTDOWN = 5047 -+ SYS_BIND = 5048 -+ SYS_LISTEN = 5049 -+ SYS_GETSOCKNAME = 5050 -+ SYS_GETPEERNAME = 5051 -+ SYS_SOCKETPAIR = 5052 -+ SYS_SETSOCKOPT = 5053 -+ SYS_GETSOCKOPT = 5054 -+ SYS_CLONE = 5055 -+ SYS_FORK = 5056 -+ SYS_EXECVE = 5057 -+ SYS_EXIT = 5058 -+ SYS_WAIT4 = 5059 -+ SYS_KILL = 5060 -+ SYS_UNAME = 5061 -+ SYS_SEMGET = 5062 -+ SYS_SEMOP = 5063 -+ SYS_SEMCTL = 5064 -+ SYS_SHMDT = 5065 -+ SYS_MSGGET = 5066 -+ SYS_MSGSND = 5067 -+ SYS_MSGRCV = 5068 -+ SYS_MSGCTL = 5069 -+ SYS_FCNTL = 5070 -+ SYS_FLOCK = 5071 -+ SYS_FSYNC = 5072 -+ SYS_FDATASYNC = 5073 -+ SYS_TRUNCATE = 5074 -+ SYS_FTRUNCATE = 5075 -+ SYS_GETDENTS = 5076 -+ SYS_GETCWD = 5077 -+ SYS_CHDIR = 5078 -+ SYS_FCHDIR = 5079 -+ SYS_RENAME = 5080 -+ SYS_MKDIR = 5081 -+ SYS_RMDIR = 5082 -+ SYS_CREAT = 5083 -+ SYS_LINK = 5084 -+ SYS_UNLINK = 5085 -+ SYS_SYMLINK = 5086 -+ SYS_READLINK = 5087 -+ SYS_CHMOD = 5088 -+ SYS_FCHMOD = 5089 -+ SYS_CHOWN = 5090 -+ SYS_FCHOWN = 5091 -+ SYS_LCHOWN = 5092 -+ SYS_UMASK = 5093 -+ SYS_GETTIMEOFDAY = 5094 -+ SYS_GETRLIMIT = 5095 -+ SYS_GETRUSAGE = 5096 -+ SYS_SYSINFO = 5097 -+ SYS_TIMES = 5098 -+ SYS_PTRACE = 5099 -+ SYS_GETUID = 5100 -+ SYS_SYSLOG = 5101 -+ SYS_GETGID = 5102 -+ SYS_SETUID = 5103 -+ SYS_SETGID = 5104 -+ SYS_GETEUID = 5105 -+ SYS_GETEGID = 5106 -+ SYS_SETPGID = 5107 -+ SYS_GETPPID = 5108 -+ SYS_GETPGRP = 5109 -+ SYS_SETSID = 5110 -+ SYS_SETREUID = 5111 -+ SYS_SETREGID = 5112 -+ SYS_GETGROUPS = 5113 -+ SYS_SETGROUPS = 5114 -+ SYS_SETRESUID = 5115 -+ SYS_GETRESUID = 5116 -+ SYS_SETRESGID = 5117 -+ SYS_GETRESGID = 5118 -+ SYS_GETPGID = 5119 -+ SYS_SETFSUID = 5120 -+ SYS_SETFSGID = 5121 -+ SYS_GETSID = 5122 -+ SYS_CAPGET = 5123 -+ SYS_CAPSET = 5124 -+ SYS_RT_SIGPENDING = 5125 -+ SYS_RT_SIGTIMEDWAIT = 5126 -+ SYS_RT_SIGQUEUEINFO = 5127 -+ SYS_RT_SIGSUSPEND = 5128 -+ SYS_SIGALTSTACK = 5129 -+ SYS_UTIME = 5130 -+ SYS_MKNOD = 5131 -+ SYS_PERSONALITY = 5132 -+ SYS_USTAT = 5133 -+ SYS_STATFS = 5134 -+ SYS_FSTATFS = 5135 -+ SYS_SYSFS = 5136 -+ SYS_GETPRIORITY = 5137 -+ SYS_SETPRIORITY = 5138 -+ SYS_SCHED_SETPARAM = 5139 -+ SYS_SCHED_GETPARAM = 5140 -+ SYS_SCHED_SETSCHEDULER = 5141 -+ SYS_SCHED_GETSCHEDULER = 5142 -+ SYS_SCHED_GET_PRIORITY_MAX = 5143 -+ SYS_SCHED_GET_PRIORITY_MIN = 5144 -+ SYS_SCHED_RR_GET_INTERVAL = 5145 -+ SYS_MLOCK = 5146 -+ SYS_MUNLOCK = 5147 -+ SYS_MLOCKALL = 5148 -+ SYS_MUNLOCKALL = 5149 -+ SYS_VHANGUP = 5150 -+ SYS_PIVOT_ROOT = 5151 -+ SYS__SYSCTL = 5152 -+ SYS_PRCTL = 5153 -+ SYS_ADJTIMEX = 5154 -+ SYS_SETRLIMIT = 5155 -+ SYS_CHROOT = 5156 -+ SYS_SYNC = 5157 -+ SYS_ACCT = 5158 -+ SYS_SETTIMEOFDAY = 5159 -+ SYS_MOUNT = 5160 -+ SYS_UMOUNT2 = 5161 -+ SYS_SWAPON = 5162 -+ SYS_SWAPOFF = 5163 -+ SYS_REBOOT = 5164 -+ SYS_SETHOSTNAME = 5165 -+ SYS_SETDOMAINNAME = 5166 -+ SYS_CREATE_MODULE = 5167 -+ SYS_INIT_MODULE = 5168 -+ SYS_DELETE_MODULE = 5169 -+ SYS_GET_KERNEL_SYMS = 5170 -+ SYS_QUERY_MODULE = 5171 -+ SYS_QUOTACTL = 5172 -+ SYS_NFSSERVCTL = 5173 -+ SYS_GETPMSG = 5174 -+ SYS_PUTPMSG = 5175 -+ SYS_AFS_SYSCALL = 5176 -+ SYS_RESERVED177 = 5177 -+ SYS_GETTID = 5178 -+ SYS_READAHEAD = 5179 -+ SYS_SETXATTR = 5180 -+ SYS_LSETXATTR = 5181 -+ SYS_FSETXATTR = 5182 -+ SYS_GETXATTR = 5183 -+ SYS_LGETXATTR = 5184 -+ SYS_FGETXATTR = 5185 -+ SYS_LISTXATTR = 5186 -+ SYS_LLISTXATTR = 5187 -+ SYS_FLISTXATTR = 5188 -+ SYS_REMOVEXATTR = 5189 -+ SYS_LREMOVEXATTR = 5190 -+ SYS_FREMOVEXATTR = 5191 -+ SYS_TKILL = 5192 -+ SYS_RESERVED193 = 5193 -+ SYS_FUTEX = 5194 -+ SYS_SCHED_SETAFFINITY = 5195 -+ SYS_SCHED_GETAFFINITY = 5196 -+ SYS_CACHEFLUSH = 5197 -+ SYS_CACHECTL = 5198 -+ SYS_SYSMIPS = 5199 -+ SYS_IO_SETUP = 5200 -+ SYS_IO_DESTROY = 5201 -+ SYS_IO_GETEVENTS = 5202 -+ SYS_IO_SUBMIT = 5203 -+ SYS_IO_CANCEL = 5204 -+ SYS_EXIT_GROUP = 5205 -+ SYS_LOOKUP_DCOOKIE = 5206 -+ SYS_EPOLL_CREATE = 5207 -+ SYS_EPOLL_CTL = 5208 -+ SYS_EPOLL_WAIT = 5209 -+ SYS_REMAP_FILE_PAGES = 5210 -+ SYS_RT_SIGRETURN = 5211 -+ SYS_SET_TID_ADDRESS = 5212 -+ SYS_RESTART_SYSCALL = 5213 -+ SYS_SEMTIMEDOP = 5214 -+ SYS_FADVISE64 = 5215 -+ SYS_TIMER_CREATE = 5216 -+ SYS_TIMER_SETTIME = 5217 -+ SYS_TIMER_GETTIME = 5218 -+ SYS_TIMER_GETOVERRUN = 5219 -+ SYS_TIMER_DELETE = 5220 -+ SYS_CLOCK_SETTIME = 5221 -+ SYS_CLOCK_GETTIME = 5222 -+ SYS_CLOCK_GETRES = 5223 -+ SYS_CLOCK_NANOSLEEP = 5224 -+ SYS_TGKILL = 5225 -+ SYS_UTIMES = 5226 -+ SYS_MBIND = 5227 -+ SYS_GET_MEMPOLICY = 5228 -+ SYS_SET_MEMPOLICY = 5229 -+ SYS_MQ_OPEN = 5230 -+ SYS_MQ_UNLINK = 5231 -+ SYS_MQ_TIMEDSEND = 5232 -+ SYS_MQ_TIMEDRECEIVE = 5233 -+ SYS_MQ_NOTIFY = 5234 -+ SYS_MQ_GETSETATTR = 5235 -+ SYS_VSERVER = 5236 -+ SYS_WAITID = 5237 -+ SYS_ADD_KEY = 5239 -+ SYS_REQUEST_KEY = 5240 -+ SYS_KEYCTL = 5241 -+ SYS_SET_THREAD_AREA = 5242 -+ SYS_INOTIFY_INIT = 5243 -+ SYS_INOTIFY_ADD_WATCH = 5244 -+ SYS_INOTIFY_RM_WATCH = 5245 -+ SYS_MIGRATE_PAGES = 5246 -+ SYS_OPENAT = 5247 -+ SYS_MKDIRAT = 5248 -+ SYS_MKNODAT = 5249 -+ SYS_FCHOWNAT = 5250 -+ SYS_FUTIMESAT = 5251 -+ SYS_NEWFSTATAT = 5252 -+ SYS_UNLINKAT = 5253 -+ SYS_RENAMEAT = 5254 -+ SYS_LINKAT = 5255 -+ SYS_SYMLINKAT = 5256 -+ SYS_READLINKAT = 5257 -+ SYS_FCHMODAT = 5258 -+ SYS_FACCESSAT = 5259 -+ SYS_PSELECT6 = 5260 -+ SYS_PPOLL = 5261 -+ SYS_UNSHARE = 5262 -+ SYS_SPLICE = 5263 -+ SYS_SYNC_FILE_RANGE = 5264 -+ SYS_TEE = 5265 -+ SYS_VMSPLICE = 5266 -+ SYS_MOVE_PAGES = 5267 -+ SYS_SET_ROBUST_LIST = 5268 -+ SYS_GET_ROBUST_LIST = 5269 -+ SYS_KEXEC_LOAD = 5270 -+ SYS_GETCPU = 5271 -+ SYS_EPOLL_PWAIT = 5272 -+ SYS_IOPRIO_SET = 5273 -+ SYS_IOPRIO_GET = 5274 -+ SYS_UTIMENSAT = 5275 -+ SYS_SIGNALFD = 5276 -+ SYS_TIMERFD = 5277 -+ SYS_EVENTFD = 5278 -+ SYS_FALLOCATE = 5279 -+ SYS_TIMERFD_CREATE = 5280 -+ SYS_TIMERFD_GETTIME = 5281 -+ SYS_TIMERFD_SETTIME = 5282 -+ SYS_SIGNALFD4 = 5283 -+ SYS_EVENTFD2 = 5284 -+ SYS_EPOLL_CREATE1 = 5285 -+ SYS_DUP3 = 5286 -+ SYS_PIPE2 = 5287 -+ SYS_INOTIFY_INIT1 = 5288 -+ SYS_PREADV = 5289 -+ SYS_PWRITEV = 5290 -+ SYS_RT_TGSIGQUEUEINFO = 5291 -+ SYS_PERF_EVENT_OPEN = 5292 -+ SYS_ACCEPT4 = 5293 -+ SYS_RECVMMSG = 5294 -+ SYS_FANOTIFY_INIT = 5295 -+ SYS_FANOTIFY_MARK = 5296 -+ SYS_PRLIMIT64 = 5297 -+ SYS_NAME_TO_HANDLE_AT = 5298 -+ SYS_OPEN_BY_HANDLE_AT = 5299 -+ SYS_CLOCK_ADJTIME = 5300 -+ SYS_SYNCFS = 5301 -+ SYS_SENDMMSG = 5302 -+ SYS_SETNS = 5303 -+ SYS_PROCESS_VM_READV = 5304 -+ SYS_PROCESS_VM_WRITEV = 5305 -+ SYS_KCMP = 5306 -+ SYS_FINIT_MODULE = 5307 -+ SYS_GETDENTS64 = 5308 -+ SYS_SCHED_SETATTR = 5309 -+ SYS_SCHED_GETATTR = 5310 -+ SYS_RENAMEAT2 = 5311 -+ SYS_SECCOMP = 5312 -+ SYS_GETRANDOM = 5313 -+ SYS_MEMFD_CREATE = 5314 -+ SYS_BPF = 5315 -+ SYS_EXECVEAT = 5316 -+ SYS_USERFAULTFD = 5317 -+ SYS_MEMBARRIER = 5318 -+ SYS_MLOCK2 = 5319 -+ SYS_COPY_FILE_RANGE = 5320 -+ SYS_PREADV2 = 5321 -+ SYS_PWRITEV2 = 5322 -+ SYS_PKEY_MPROTECT = 5323 -+ SYS_PKEY_ALLOC = 5324 -+ SYS_PKEY_FREE = 5325 -+ SYS_STATX = 5326 -+ SYS_RSEQ = 5327 -+ SYS_IO_PGETEVENTS = 5328 -+ SYS_PIDFD_SEND_SIGNAL = 5424 -+ SYS_IO_URING_SETUP = 5425 -+ SYS_IO_URING_ENTER = 5426 -+ SYS_IO_URING_REGISTER = 5427 -+ SYS_OPEN_TREE = 5428 -+ SYS_MOVE_MOUNT = 5429 -+ SYS_FSOPEN = 5430 -+ SYS_FSCONFIG = 5431 -+ SYS_FSMOUNT = 5432 -+ SYS_FSPICK = 5433 -+ SYS_PIDFD_OPEN = 5434 -+ SYS_CLONE3 = 5435 -+ SYS_CLOSE_RANGE = 5436 -+ SYS_OPENAT2 = 5437 -+ SYS_PIDFD_GETFD = 5438 -+ SYS_FACCESSAT2 = 5439 -+ SYS_PROCESS_MADVISE = 5440 -+ SYS_EPOLL_PWAIT2 = 5441 -+ SYS_MOUNT_SETATTR = 5442 -+ SYS_QUOTACTL_FD = 5443 -+ SYS_LANDLOCK_CREATE_RULESET = 5444 -+ SYS_LANDLOCK_ADD_RULE = 5445 -+ SYS_LANDLOCK_RESTRICT_SELF = 5446 -+ SYS_PROCESS_MRELEASE = 5448 -+ SYS_FUTEX_WAITV = 5449 -+ SYS_SET_MEMPOLICY_HOME_NODE = 5450 - ) -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go -index 4d9aa30..b4ffb7a 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go -@@ -1,351 +1,364 @@ --// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h -+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/mips64le/include /tmp/mips64le/include/asm/unistd.h - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build mips64le && linux - // +build mips64le,linux - - package unix - - const ( -- SYS_READ = 5000 -- SYS_WRITE = 5001 -- SYS_OPEN = 5002 -- SYS_CLOSE = 5003 -- SYS_STAT = 5004 -- SYS_FSTAT = 5005 -- SYS_LSTAT = 5006 -- SYS_POLL = 5007 -- SYS_LSEEK = 5008 -- SYS_MMAP = 5009 -- SYS_MPROTECT = 5010 -- SYS_MUNMAP = 5011 -- SYS_BRK = 5012 -- SYS_RT_SIGACTION = 5013 -- SYS_RT_SIGPROCMASK = 5014 -- SYS_IOCTL = 5015 -- SYS_PREAD64 = 5016 -- SYS_PWRITE64 = 5017 -- SYS_READV = 5018 -- SYS_WRITEV = 5019 -- SYS_ACCESS = 5020 -- SYS_PIPE = 5021 -- SYS__NEWSELECT = 5022 -- SYS_SCHED_YIELD = 5023 -- SYS_MREMAP = 5024 -- SYS_MSYNC = 5025 -- SYS_MINCORE = 5026 -- SYS_MADVISE = 5027 -- SYS_SHMGET = 5028 -- SYS_SHMAT = 5029 -- SYS_SHMCTL = 5030 -- SYS_DUP = 5031 -- SYS_DUP2 = 5032 -- SYS_PAUSE = 5033 -- SYS_NANOSLEEP = 5034 -- SYS_GETITIMER = 5035 -- SYS_SETITIMER = 5036 -- SYS_ALARM = 5037 -- SYS_GETPID = 5038 -- SYS_SENDFILE = 5039 -- SYS_SOCKET = 5040 -- SYS_CONNECT = 5041 -- SYS_ACCEPT = 5042 -- SYS_SENDTO = 5043 -- SYS_RECVFROM = 5044 -- SYS_SENDMSG = 5045 -- SYS_RECVMSG = 5046 -- SYS_SHUTDOWN = 5047 -- SYS_BIND = 5048 -- SYS_LISTEN = 5049 -- SYS_GETSOCKNAME = 5050 -- SYS_GETPEERNAME = 5051 -- SYS_SOCKETPAIR = 5052 -- SYS_SETSOCKOPT = 5053 -- SYS_GETSOCKOPT = 5054 -- SYS_CLONE = 5055 -- SYS_FORK = 5056 -- SYS_EXECVE = 5057 -- SYS_EXIT = 5058 -- SYS_WAIT4 = 5059 -- SYS_KILL = 5060 -- SYS_UNAME = 5061 -- SYS_SEMGET = 5062 -- SYS_SEMOP = 5063 -- SYS_SEMCTL = 5064 -- SYS_SHMDT = 5065 -- SYS_MSGGET = 5066 -- SYS_MSGSND = 5067 -- SYS_MSGRCV = 5068 -- SYS_MSGCTL = 5069 -- SYS_FCNTL = 5070 -- SYS_FLOCK = 5071 -- SYS_FSYNC = 5072 -- SYS_FDATASYNC = 5073 -- SYS_TRUNCATE = 5074 -- SYS_FTRUNCATE = 5075 -- SYS_GETDENTS = 5076 -- SYS_GETCWD = 5077 -- SYS_CHDIR = 5078 -- SYS_FCHDIR = 5079 -- SYS_RENAME = 5080 -- SYS_MKDIR = 5081 -- SYS_RMDIR = 5082 -- SYS_CREAT = 5083 -- SYS_LINK = 5084 -- SYS_UNLINK = 5085 -- SYS_SYMLINK = 5086 -- SYS_READLINK = 5087 -- SYS_CHMOD = 5088 -- SYS_FCHMOD = 5089 -- SYS_CHOWN = 5090 -- SYS_FCHOWN = 5091 -- SYS_LCHOWN = 5092 -- SYS_UMASK = 5093 -- SYS_GETTIMEOFDAY = 5094 -- SYS_GETRLIMIT = 5095 -- SYS_GETRUSAGE = 5096 -- SYS_SYSINFO = 5097 -- SYS_TIMES = 5098 -- SYS_PTRACE = 5099 -- SYS_GETUID = 5100 -- SYS_SYSLOG = 5101 -- SYS_GETGID = 5102 -- SYS_SETUID = 5103 -- SYS_SETGID = 5104 -- SYS_GETEUID = 5105 -- SYS_GETEGID = 5106 -- SYS_SETPGID = 5107 -- SYS_GETPPID = 5108 -- SYS_GETPGRP = 5109 -- SYS_SETSID = 5110 -- SYS_SETREUID = 5111 -- SYS_SETREGID = 5112 -- SYS_GETGROUPS = 5113 -- SYS_SETGROUPS = 5114 -- SYS_SETRESUID = 5115 -- SYS_GETRESUID = 5116 -- SYS_SETRESGID = 5117 -- SYS_GETRESGID = 5118 -- SYS_GETPGID = 5119 -- SYS_SETFSUID = 5120 -- SYS_SETFSGID = 5121 -- SYS_GETSID = 5122 -- SYS_CAPGET = 5123 -- SYS_CAPSET = 5124 -- SYS_RT_SIGPENDING = 5125 -- SYS_RT_SIGTIMEDWAIT = 5126 -- SYS_RT_SIGQUEUEINFO = 5127 -- SYS_RT_SIGSUSPEND = 5128 -- SYS_SIGALTSTACK = 5129 -- SYS_UTIME = 5130 -- SYS_MKNOD = 5131 -- SYS_PERSONALITY = 5132 -- SYS_USTAT = 5133 -- SYS_STATFS = 5134 -- SYS_FSTATFS = 5135 -- SYS_SYSFS = 5136 -- SYS_GETPRIORITY = 5137 -- SYS_SETPRIORITY = 5138 -- SYS_SCHED_SETPARAM = 5139 -- SYS_SCHED_GETPARAM = 5140 -- SYS_SCHED_SETSCHEDULER = 5141 -- SYS_SCHED_GETSCHEDULER = 5142 -- SYS_SCHED_GET_PRIORITY_MAX = 5143 -- SYS_SCHED_GET_PRIORITY_MIN = 5144 -- SYS_SCHED_RR_GET_INTERVAL = 5145 -- SYS_MLOCK = 5146 -- SYS_MUNLOCK = 5147 -- SYS_MLOCKALL = 5148 -- SYS_MUNLOCKALL = 5149 -- SYS_VHANGUP = 5150 -- SYS_PIVOT_ROOT = 5151 -- SYS__SYSCTL = 5152 -- SYS_PRCTL = 5153 -- SYS_ADJTIMEX = 5154 -- SYS_SETRLIMIT = 5155 -- SYS_CHROOT = 5156 -- SYS_SYNC = 5157 -- SYS_ACCT = 5158 -- SYS_SETTIMEOFDAY = 5159 -- SYS_MOUNT = 5160 -- SYS_UMOUNT2 = 5161 -- SYS_SWAPON = 5162 -- SYS_SWAPOFF = 5163 -- SYS_REBOOT = 5164 -- SYS_SETHOSTNAME = 5165 -- SYS_SETDOMAINNAME = 5166 -- SYS_CREATE_MODULE = 5167 -- SYS_INIT_MODULE = 5168 -- SYS_DELETE_MODULE = 5169 -- SYS_GET_KERNEL_SYMS = 5170 -- SYS_QUERY_MODULE = 5171 -- SYS_QUOTACTL = 5172 -- SYS_NFSSERVCTL = 5173 -- SYS_GETPMSG = 5174 -- SYS_PUTPMSG = 5175 -- SYS_AFS_SYSCALL = 5176 -- SYS_RESERVED177 = 5177 -- SYS_GETTID = 5178 -- SYS_READAHEAD = 5179 -- SYS_SETXATTR = 5180 -- SYS_LSETXATTR = 5181 -- SYS_FSETXATTR = 5182 -- SYS_GETXATTR = 5183 -- SYS_LGETXATTR = 5184 -- SYS_FGETXATTR = 5185 -- SYS_LISTXATTR = 5186 -- SYS_LLISTXATTR = 5187 -- SYS_FLISTXATTR = 5188 -- SYS_REMOVEXATTR = 5189 -- SYS_LREMOVEXATTR = 5190 -- SYS_FREMOVEXATTR = 5191 -- SYS_TKILL = 5192 -- SYS_RESERVED193 = 5193 -- SYS_FUTEX = 5194 -- SYS_SCHED_SETAFFINITY = 5195 -- SYS_SCHED_GETAFFINITY = 5196 -- SYS_CACHEFLUSH = 5197 -- SYS_CACHECTL = 5198 -- SYS_SYSMIPS = 5199 -- SYS_IO_SETUP = 5200 -- SYS_IO_DESTROY = 5201 -- SYS_IO_GETEVENTS = 5202 -- SYS_IO_SUBMIT = 5203 -- SYS_IO_CANCEL = 5204 -- SYS_EXIT_GROUP = 5205 -- SYS_LOOKUP_DCOOKIE = 5206 -- SYS_EPOLL_CREATE = 5207 -- SYS_EPOLL_CTL = 5208 -- SYS_EPOLL_WAIT = 5209 -- SYS_REMAP_FILE_PAGES = 5210 -- SYS_RT_SIGRETURN = 5211 -- SYS_SET_TID_ADDRESS = 5212 -- SYS_RESTART_SYSCALL = 5213 -- SYS_SEMTIMEDOP = 5214 -- SYS_FADVISE64 = 5215 -- SYS_TIMER_CREATE = 5216 -- SYS_TIMER_SETTIME = 5217 -- SYS_TIMER_GETTIME = 5218 -- SYS_TIMER_GETOVERRUN = 5219 -- SYS_TIMER_DELETE = 5220 -- SYS_CLOCK_SETTIME = 5221 -- SYS_CLOCK_GETTIME = 5222 -- SYS_CLOCK_GETRES = 5223 -- SYS_CLOCK_NANOSLEEP = 5224 -- SYS_TGKILL = 5225 -- SYS_UTIMES = 5226 -- SYS_MBIND = 5227 -- SYS_GET_MEMPOLICY = 5228 -- SYS_SET_MEMPOLICY = 5229 -- SYS_MQ_OPEN = 5230 -- SYS_MQ_UNLINK = 5231 -- SYS_MQ_TIMEDSEND = 5232 -- SYS_MQ_TIMEDRECEIVE = 5233 -- SYS_MQ_NOTIFY = 5234 -- SYS_MQ_GETSETATTR = 5235 -- SYS_VSERVER = 5236 -- SYS_WAITID = 5237 -- SYS_ADD_KEY = 5239 -- SYS_REQUEST_KEY = 5240 -- SYS_KEYCTL = 5241 -- SYS_SET_THREAD_AREA = 5242 -- SYS_INOTIFY_INIT = 5243 -- SYS_INOTIFY_ADD_WATCH = 5244 -- SYS_INOTIFY_RM_WATCH = 5245 -- SYS_MIGRATE_PAGES = 5246 -- SYS_OPENAT = 5247 -- SYS_MKDIRAT = 5248 -- SYS_MKNODAT = 5249 -- SYS_FCHOWNAT = 5250 -- SYS_FUTIMESAT = 5251 -- SYS_NEWFSTATAT = 5252 -- SYS_UNLINKAT = 5253 -- SYS_RENAMEAT = 5254 -- SYS_LINKAT = 5255 -- SYS_SYMLINKAT = 5256 -- SYS_READLINKAT = 5257 -- SYS_FCHMODAT = 5258 -- SYS_FACCESSAT = 5259 -- SYS_PSELECT6 = 5260 -- SYS_PPOLL = 5261 -- SYS_UNSHARE = 5262 -- SYS_SPLICE = 5263 -- SYS_SYNC_FILE_RANGE = 5264 -- SYS_TEE = 5265 -- SYS_VMSPLICE = 5266 -- SYS_MOVE_PAGES = 5267 -- SYS_SET_ROBUST_LIST = 5268 -- SYS_GET_ROBUST_LIST = 5269 -- SYS_KEXEC_LOAD = 5270 -- SYS_GETCPU = 5271 -- SYS_EPOLL_PWAIT = 5272 -- SYS_IOPRIO_SET = 5273 -- SYS_IOPRIO_GET = 5274 -- SYS_UTIMENSAT = 5275 -- SYS_SIGNALFD = 5276 -- SYS_TIMERFD = 5277 -- SYS_EVENTFD = 5278 -- SYS_FALLOCATE = 5279 -- SYS_TIMERFD_CREATE = 5280 -- SYS_TIMERFD_GETTIME = 5281 -- SYS_TIMERFD_SETTIME = 5282 -- SYS_SIGNALFD4 = 5283 -- SYS_EVENTFD2 = 5284 -- SYS_EPOLL_CREATE1 = 5285 -- SYS_DUP3 = 5286 -- SYS_PIPE2 = 5287 -- SYS_INOTIFY_INIT1 = 5288 -- SYS_PREADV = 5289 -- SYS_PWRITEV = 5290 -- SYS_RT_TGSIGQUEUEINFO = 5291 -- SYS_PERF_EVENT_OPEN = 5292 -- SYS_ACCEPT4 = 5293 -- SYS_RECVMMSG = 5294 -- SYS_FANOTIFY_INIT = 5295 -- SYS_FANOTIFY_MARK = 5296 -- SYS_PRLIMIT64 = 5297 -- SYS_NAME_TO_HANDLE_AT = 5298 -- SYS_OPEN_BY_HANDLE_AT = 5299 -- SYS_CLOCK_ADJTIME = 5300 -- SYS_SYNCFS = 5301 -- SYS_SENDMMSG = 5302 -- SYS_SETNS = 5303 -- SYS_PROCESS_VM_READV = 5304 -- SYS_PROCESS_VM_WRITEV = 5305 -- SYS_KCMP = 5306 -- SYS_FINIT_MODULE = 5307 -- SYS_GETDENTS64 = 5308 -- SYS_SCHED_SETATTR = 5309 -- SYS_SCHED_GETATTR = 5310 -- SYS_RENAMEAT2 = 5311 -- SYS_SECCOMP = 5312 -- SYS_GETRANDOM = 5313 -- SYS_MEMFD_CREATE = 5314 -- SYS_BPF = 5315 -- SYS_EXECVEAT = 5316 -- SYS_USERFAULTFD = 5317 -- SYS_MEMBARRIER = 5318 -- SYS_MLOCK2 = 5319 -- SYS_COPY_FILE_RANGE = 5320 -- SYS_PREADV2 = 5321 -- SYS_PWRITEV2 = 5322 -- SYS_PKEY_MPROTECT = 5323 -- SYS_PKEY_ALLOC = 5324 -- SYS_PKEY_FREE = 5325 -- SYS_STATX = 5326 -- SYS_RSEQ = 5327 -- SYS_IO_PGETEVENTS = 5328 -- SYS_PIDFD_SEND_SIGNAL = 5424 -- SYS_IO_URING_SETUP = 5425 -- SYS_IO_URING_ENTER = 5426 -- SYS_IO_URING_REGISTER = 5427 -- SYS_OPEN_TREE = 5428 -- SYS_MOVE_MOUNT = 5429 -- SYS_FSOPEN = 5430 -- SYS_FSCONFIG = 5431 -- SYS_FSMOUNT = 5432 -- SYS_FSPICK = 5433 -- SYS_PIDFD_OPEN = 5434 -- SYS_CLONE3 = 5435 -- SYS_OPENAT2 = 5437 -- SYS_PIDFD_GETFD = 5438 -+ SYS_READ = 5000 -+ SYS_WRITE = 5001 -+ SYS_OPEN = 5002 -+ SYS_CLOSE = 5003 -+ SYS_STAT = 5004 -+ SYS_FSTAT = 5005 -+ SYS_LSTAT = 5006 -+ SYS_POLL = 5007 -+ SYS_LSEEK = 5008 -+ SYS_MMAP = 5009 -+ SYS_MPROTECT = 5010 -+ SYS_MUNMAP = 5011 -+ SYS_BRK = 5012 -+ SYS_RT_SIGACTION = 5013 -+ SYS_RT_SIGPROCMASK = 5014 -+ SYS_IOCTL = 5015 -+ SYS_PREAD64 = 5016 -+ SYS_PWRITE64 = 5017 -+ SYS_READV = 5018 -+ SYS_WRITEV = 5019 -+ SYS_ACCESS = 5020 -+ SYS_PIPE = 5021 -+ SYS__NEWSELECT = 5022 -+ SYS_SCHED_YIELD = 5023 -+ SYS_MREMAP = 5024 -+ SYS_MSYNC = 5025 -+ SYS_MINCORE = 5026 -+ SYS_MADVISE = 5027 -+ SYS_SHMGET = 5028 -+ SYS_SHMAT = 5029 -+ SYS_SHMCTL = 5030 -+ SYS_DUP = 5031 -+ SYS_DUP2 = 5032 -+ SYS_PAUSE = 5033 -+ SYS_NANOSLEEP = 5034 -+ SYS_GETITIMER = 5035 -+ SYS_SETITIMER = 5036 -+ SYS_ALARM = 5037 -+ SYS_GETPID = 5038 -+ SYS_SENDFILE = 5039 -+ SYS_SOCKET = 5040 -+ SYS_CONNECT = 5041 -+ SYS_ACCEPT = 5042 -+ SYS_SENDTO = 5043 -+ SYS_RECVFROM = 5044 -+ SYS_SENDMSG = 5045 -+ SYS_RECVMSG = 5046 -+ SYS_SHUTDOWN = 5047 -+ SYS_BIND = 5048 -+ SYS_LISTEN = 5049 -+ SYS_GETSOCKNAME = 5050 -+ SYS_GETPEERNAME = 5051 -+ SYS_SOCKETPAIR = 5052 -+ SYS_SETSOCKOPT = 5053 -+ SYS_GETSOCKOPT = 5054 -+ SYS_CLONE = 5055 -+ SYS_FORK = 5056 -+ SYS_EXECVE = 5057 -+ SYS_EXIT = 5058 -+ SYS_WAIT4 = 5059 -+ SYS_KILL = 5060 -+ SYS_UNAME = 5061 -+ SYS_SEMGET = 5062 -+ SYS_SEMOP = 5063 -+ SYS_SEMCTL = 5064 -+ SYS_SHMDT = 5065 -+ SYS_MSGGET = 5066 -+ SYS_MSGSND = 5067 -+ SYS_MSGRCV = 5068 -+ SYS_MSGCTL = 5069 -+ SYS_FCNTL = 5070 -+ SYS_FLOCK = 5071 -+ SYS_FSYNC = 5072 -+ SYS_FDATASYNC = 5073 -+ SYS_TRUNCATE = 5074 -+ SYS_FTRUNCATE = 5075 -+ SYS_GETDENTS = 5076 -+ SYS_GETCWD = 5077 -+ SYS_CHDIR = 5078 -+ SYS_FCHDIR = 5079 -+ SYS_RENAME = 5080 -+ SYS_MKDIR = 5081 -+ SYS_RMDIR = 5082 -+ SYS_CREAT = 5083 -+ SYS_LINK = 5084 -+ SYS_UNLINK = 5085 -+ SYS_SYMLINK = 5086 -+ SYS_READLINK = 5087 -+ SYS_CHMOD = 5088 -+ SYS_FCHMOD = 5089 -+ SYS_CHOWN = 5090 -+ SYS_FCHOWN = 5091 -+ SYS_LCHOWN = 5092 -+ SYS_UMASK = 5093 -+ SYS_GETTIMEOFDAY = 5094 -+ SYS_GETRLIMIT = 5095 -+ SYS_GETRUSAGE = 5096 -+ SYS_SYSINFO = 5097 -+ SYS_TIMES = 5098 -+ SYS_PTRACE = 5099 -+ SYS_GETUID = 5100 -+ SYS_SYSLOG = 5101 -+ SYS_GETGID = 5102 -+ SYS_SETUID = 5103 -+ SYS_SETGID = 5104 -+ SYS_GETEUID = 5105 -+ SYS_GETEGID = 5106 -+ SYS_SETPGID = 5107 -+ SYS_GETPPID = 5108 -+ SYS_GETPGRP = 5109 -+ SYS_SETSID = 5110 -+ SYS_SETREUID = 5111 -+ SYS_SETREGID = 5112 -+ SYS_GETGROUPS = 5113 -+ SYS_SETGROUPS = 5114 -+ SYS_SETRESUID = 5115 -+ SYS_GETRESUID = 5116 -+ SYS_SETRESGID = 5117 -+ SYS_GETRESGID = 5118 -+ SYS_GETPGID = 5119 -+ SYS_SETFSUID = 5120 -+ SYS_SETFSGID = 5121 -+ SYS_GETSID = 5122 -+ SYS_CAPGET = 5123 -+ SYS_CAPSET = 5124 -+ SYS_RT_SIGPENDING = 5125 -+ SYS_RT_SIGTIMEDWAIT = 5126 -+ SYS_RT_SIGQUEUEINFO = 5127 -+ SYS_RT_SIGSUSPEND = 5128 -+ SYS_SIGALTSTACK = 5129 -+ SYS_UTIME = 5130 -+ SYS_MKNOD = 5131 -+ SYS_PERSONALITY = 5132 -+ SYS_USTAT = 5133 -+ SYS_STATFS = 5134 -+ SYS_FSTATFS = 5135 -+ SYS_SYSFS = 5136 -+ SYS_GETPRIORITY = 5137 -+ SYS_SETPRIORITY = 5138 -+ SYS_SCHED_SETPARAM = 5139 -+ SYS_SCHED_GETPARAM = 5140 -+ SYS_SCHED_SETSCHEDULER = 5141 -+ SYS_SCHED_GETSCHEDULER = 5142 -+ SYS_SCHED_GET_PRIORITY_MAX = 5143 -+ SYS_SCHED_GET_PRIORITY_MIN = 5144 -+ SYS_SCHED_RR_GET_INTERVAL = 5145 -+ SYS_MLOCK = 5146 -+ SYS_MUNLOCK = 5147 -+ SYS_MLOCKALL = 5148 -+ SYS_MUNLOCKALL = 5149 -+ SYS_VHANGUP = 5150 -+ SYS_PIVOT_ROOT = 5151 -+ SYS__SYSCTL = 5152 -+ SYS_PRCTL = 5153 -+ SYS_ADJTIMEX = 5154 -+ SYS_SETRLIMIT = 5155 -+ SYS_CHROOT = 5156 -+ SYS_SYNC = 5157 -+ SYS_ACCT = 5158 -+ SYS_SETTIMEOFDAY = 5159 -+ SYS_MOUNT = 5160 -+ SYS_UMOUNT2 = 5161 -+ SYS_SWAPON = 5162 -+ SYS_SWAPOFF = 5163 -+ SYS_REBOOT = 5164 -+ SYS_SETHOSTNAME = 5165 -+ SYS_SETDOMAINNAME = 5166 -+ SYS_CREATE_MODULE = 5167 -+ SYS_INIT_MODULE = 5168 -+ SYS_DELETE_MODULE = 5169 -+ SYS_GET_KERNEL_SYMS = 5170 -+ SYS_QUERY_MODULE = 5171 -+ SYS_QUOTACTL = 5172 -+ SYS_NFSSERVCTL = 5173 -+ SYS_GETPMSG = 5174 -+ SYS_PUTPMSG = 5175 -+ SYS_AFS_SYSCALL = 5176 -+ SYS_RESERVED177 = 5177 -+ SYS_GETTID = 5178 -+ SYS_READAHEAD = 5179 -+ SYS_SETXATTR = 5180 -+ SYS_LSETXATTR = 5181 -+ SYS_FSETXATTR = 5182 -+ SYS_GETXATTR = 5183 -+ SYS_LGETXATTR = 5184 -+ SYS_FGETXATTR = 5185 -+ SYS_LISTXATTR = 5186 -+ SYS_LLISTXATTR = 5187 -+ SYS_FLISTXATTR = 5188 -+ SYS_REMOVEXATTR = 5189 -+ SYS_LREMOVEXATTR = 5190 -+ SYS_FREMOVEXATTR = 5191 -+ SYS_TKILL = 5192 -+ SYS_RESERVED193 = 5193 -+ SYS_FUTEX = 5194 -+ SYS_SCHED_SETAFFINITY = 5195 -+ SYS_SCHED_GETAFFINITY = 5196 -+ SYS_CACHEFLUSH = 5197 -+ SYS_CACHECTL = 5198 -+ SYS_SYSMIPS = 5199 -+ SYS_IO_SETUP = 5200 -+ SYS_IO_DESTROY = 5201 -+ SYS_IO_GETEVENTS = 5202 -+ SYS_IO_SUBMIT = 5203 -+ SYS_IO_CANCEL = 5204 -+ SYS_EXIT_GROUP = 5205 -+ SYS_LOOKUP_DCOOKIE = 5206 -+ SYS_EPOLL_CREATE = 5207 -+ SYS_EPOLL_CTL = 5208 -+ SYS_EPOLL_WAIT = 5209 -+ SYS_REMAP_FILE_PAGES = 5210 -+ SYS_RT_SIGRETURN = 5211 -+ SYS_SET_TID_ADDRESS = 5212 -+ SYS_RESTART_SYSCALL = 5213 -+ SYS_SEMTIMEDOP = 5214 -+ SYS_FADVISE64 = 5215 -+ SYS_TIMER_CREATE = 5216 -+ SYS_TIMER_SETTIME = 5217 -+ SYS_TIMER_GETTIME = 5218 -+ SYS_TIMER_GETOVERRUN = 5219 -+ SYS_TIMER_DELETE = 5220 -+ SYS_CLOCK_SETTIME = 5221 -+ SYS_CLOCK_GETTIME = 5222 -+ SYS_CLOCK_GETRES = 5223 -+ SYS_CLOCK_NANOSLEEP = 5224 -+ SYS_TGKILL = 5225 -+ SYS_UTIMES = 5226 -+ SYS_MBIND = 5227 -+ SYS_GET_MEMPOLICY = 5228 -+ SYS_SET_MEMPOLICY = 5229 -+ SYS_MQ_OPEN = 5230 -+ SYS_MQ_UNLINK = 5231 -+ SYS_MQ_TIMEDSEND = 5232 -+ SYS_MQ_TIMEDRECEIVE = 5233 -+ SYS_MQ_NOTIFY = 5234 -+ SYS_MQ_GETSETATTR = 5235 -+ SYS_VSERVER = 5236 -+ SYS_WAITID = 5237 -+ SYS_ADD_KEY = 5239 -+ SYS_REQUEST_KEY = 5240 -+ SYS_KEYCTL = 5241 -+ SYS_SET_THREAD_AREA = 5242 -+ SYS_INOTIFY_INIT = 5243 -+ SYS_INOTIFY_ADD_WATCH = 5244 -+ SYS_INOTIFY_RM_WATCH = 5245 -+ SYS_MIGRATE_PAGES = 5246 -+ SYS_OPENAT = 5247 -+ SYS_MKDIRAT = 5248 -+ SYS_MKNODAT = 5249 -+ SYS_FCHOWNAT = 5250 -+ SYS_FUTIMESAT = 5251 -+ SYS_NEWFSTATAT = 5252 -+ SYS_UNLINKAT = 5253 -+ SYS_RENAMEAT = 5254 -+ SYS_LINKAT = 5255 -+ SYS_SYMLINKAT = 5256 -+ SYS_READLINKAT = 5257 -+ SYS_FCHMODAT = 5258 -+ SYS_FACCESSAT = 5259 -+ SYS_PSELECT6 = 5260 -+ SYS_PPOLL = 5261 -+ SYS_UNSHARE = 5262 -+ SYS_SPLICE = 5263 -+ SYS_SYNC_FILE_RANGE = 5264 -+ SYS_TEE = 5265 -+ SYS_VMSPLICE = 5266 -+ SYS_MOVE_PAGES = 5267 -+ SYS_SET_ROBUST_LIST = 5268 -+ SYS_GET_ROBUST_LIST = 5269 -+ SYS_KEXEC_LOAD = 5270 -+ SYS_GETCPU = 5271 -+ SYS_EPOLL_PWAIT = 5272 -+ SYS_IOPRIO_SET = 5273 -+ SYS_IOPRIO_GET = 5274 -+ SYS_UTIMENSAT = 5275 -+ SYS_SIGNALFD = 5276 -+ SYS_TIMERFD = 5277 -+ SYS_EVENTFD = 5278 -+ SYS_FALLOCATE = 5279 -+ SYS_TIMERFD_CREATE = 5280 -+ SYS_TIMERFD_GETTIME = 5281 -+ SYS_TIMERFD_SETTIME = 5282 -+ SYS_SIGNALFD4 = 5283 -+ SYS_EVENTFD2 = 5284 -+ SYS_EPOLL_CREATE1 = 5285 -+ SYS_DUP3 = 5286 -+ SYS_PIPE2 = 5287 -+ SYS_INOTIFY_INIT1 = 5288 -+ SYS_PREADV = 5289 -+ SYS_PWRITEV = 5290 -+ SYS_RT_TGSIGQUEUEINFO = 5291 -+ SYS_PERF_EVENT_OPEN = 5292 -+ SYS_ACCEPT4 = 5293 -+ SYS_RECVMMSG = 5294 -+ SYS_FANOTIFY_INIT = 5295 -+ SYS_FANOTIFY_MARK = 5296 -+ SYS_PRLIMIT64 = 5297 -+ SYS_NAME_TO_HANDLE_AT = 5298 -+ SYS_OPEN_BY_HANDLE_AT = 5299 -+ SYS_CLOCK_ADJTIME = 5300 -+ SYS_SYNCFS = 5301 -+ SYS_SENDMMSG = 5302 -+ SYS_SETNS = 5303 -+ SYS_PROCESS_VM_READV = 5304 -+ SYS_PROCESS_VM_WRITEV = 5305 -+ SYS_KCMP = 5306 -+ SYS_FINIT_MODULE = 5307 -+ SYS_GETDENTS64 = 5308 -+ SYS_SCHED_SETATTR = 5309 -+ SYS_SCHED_GETATTR = 5310 -+ SYS_RENAMEAT2 = 5311 -+ SYS_SECCOMP = 5312 -+ SYS_GETRANDOM = 5313 -+ SYS_MEMFD_CREATE = 5314 -+ SYS_BPF = 5315 -+ SYS_EXECVEAT = 5316 -+ SYS_USERFAULTFD = 5317 -+ SYS_MEMBARRIER = 5318 -+ SYS_MLOCK2 = 5319 -+ SYS_COPY_FILE_RANGE = 5320 -+ SYS_PREADV2 = 5321 -+ SYS_PWRITEV2 = 5322 -+ SYS_PKEY_MPROTECT = 5323 -+ SYS_PKEY_ALLOC = 5324 -+ SYS_PKEY_FREE = 5325 -+ SYS_STATX = 5326 -+ SYS_RSEQ = 5327 -+ SYS_IO_PGETEVENTS = 5328 -+ SYS_PIDFD_SEND_SIGNAL = 5424 -+ SYS_IO_URING_SETUP = 5425 -+ SYS_IO_URING_ENTER = 5426 -+ SYS_IO_URING_REGISTER = 5427 -+ SYS_OPEN_TREE = 5428 -+ SYS_MOVE_MOUNT = 5429 -+ SYS_FSOPEN = 5430 -+ SYS_FSCONFIG = 5431 -+ SYS_FSMOUNT = 5432 -+ SYS_FSPICK = 5433 -+ SYS_PIDFD_OPEN = 5434 -+ SYS_CLONE3 = 5435 -+ SYS_CLOSE_RANGE = 5436 -+ SYS_OPENAT2 = 5437 -+ SYS_PIDFD_GETFD = 5438 -+ SYS_FACCESSAT2 = 5439 -+ SYS_PROCESS_MADVISE = 5440 -+ SYS_EPOLL_PWAIT2 = 5441 -+ SYS_MOUNT_SETATTR = 5442 -+ SYS_QUOTACTL_FD = 5443 -+ SYS_LANDLOCK_CREATE_RULESET = 5444 -+ SYS_LANDLOCK_ADD_RULE = 5445 -+ SYS_LANDLOCK_RESTRICT_SELF = 5446 -+ SYS_PROCESS_MRELEASE = 5448 -+ SYS_FUTEX_WAITV = 5449 -+ SYS_SET_MEMPOLICY_HOME_NODE = 5450 - ) -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go -index 64af070..867985f 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go -@@ -1,6 +1,7 @@ --// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h -+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/mipsle/include /tmp/mipsle/include/asm/unistd.h - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build mipsle && linux - // +build mipsle,linux - - package unix -@@ -416,6 +417,18 @@ const ( - SYS_FSPICK = 4433 - SYS_PIDFD_OPEN = 4434 - SYS_CLONE3 = 4435 -+ SYS_CLOSE_RANGE = 4436 - SYS_OPENAT2 = 4437 - SYS_PIDFD_GETFD = 4438 -+ SYS_FACCESSAT2 = 4439 -+ SYS_PROCESS_MADVISE = 4440 -+ SYS_EPOLL_PWAIT2 = 4441 -+ SYS_MOUNT_SETATTR = 4442 -+ SYS_QUOTACTL_FD = 4443 -+ SYS_LANDLOCK_CREATE_RULESET = 4444 -+ SYS_LANDLOCK_ADD_RULE = 4445 -+ SYS_LANDLOCK_RESTRICT_SELF = 4446 -+ SYS_PROCESS_MRELEASE = 4448 -+ SYS_FUTEX_WAITV = 4449 -+ SYS_SET_MEMPOLICY_HOME_NODE = 4450 - ) -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc.go -new file mode 100644 -index 0000000..a8cce69 ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc.go -@@ -0,0 +1,441 @@ -+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/ppc/include /tmp/ppc/include/asm/unistd.h -+// Code generated by the command above; see README.md. DO NOT EDIT. -+ -+//go:build ppc && linux -+// +build ppc,linux -+ -+package unix -+ -+const ( -+ SYS_RESTART_SYSCALL = 0 -+ SYS_EXIT = 1 -+ SYS_FORK = 2 -+ SYS_READ = 3 -+ SYS_WRITE = 4 -+ SYS_OPEN = 5 -+ SYS_CLOSE = 6 -+ SYS_WAITPID = 7 -+ SYS_CREAT = 8 -+ SYS_LINK = 9 -+ SYS_UNLINK = 10 -+ SYS_EXECVE = 11 -+ SYS_CHDIR = 12 -+ SYS_TIME = 13 -+ SYS_MKNOD = 14 -+ SYS_CHMOD = 15 -+ SYS_LCHOWN = 16 -+ SYS_BREAK = 17 -+ SYS_OLDSTAT = 18 -+ SYS_LSEEK = 19 -+ SYS_GETPID = 20 -+ SYS_MOUNT = 21 -+ SYS_UMOUNT = 22 -+ SYS_SETUID = 23 -+ SYS_GETUID = 24 -+ SYS_STIME = 25 -+ SYS_PTRACE = 26 -+ SYS_ALARM = 27 -+ SYS_OLDFSTAT = 28 -+ SYS_PAUSE = 29 -+ SYS_UTIME = 30 -+ SYS_STTY = 31 -+ SYS_GTTY = 32 -+ SYS_ACCESS = 33 -+ SYS_NICE = 34 -+ SYS_FTIME = 35 -+ SYS_SYNC = 36 -+ SYS_KILL = 37 -+ SYS_RENAME = 38 -+ SYS_MKDIR = 39 -+ SYS_RMDIR = 40 -+ SYS_DUP = 41 -+ SYS_PIPE = 42 -+ SYS_TIMES = 43 -+ SYS_PROF = 44 -+ SYS_BRK = 45 -+ SYS_SETGID = 46 -+ SYS_GETGID = 47 -+ SYS_SIGNAL = 48 -+ SYS_GETEUID = 49 -+ SYS_GETEGID = 50 -+ SYS_ACCT = 51 -+ SYS_UMOUNT2 = 52 -+ SYS_LOCK = 53 -+ SYS_IOCTL = 54 -+ SYS_FCNTL = 55 -+ SYS_MPX = 56 -+ SYS_SETPGID = 57 -+ SYS_ULIMIT = 58 -+ SYS_OLDOLDUNAME = 59 -+ SYS_UMASK = 60 -+ SYS_CHROOT = 61 -+ SYS_USTAT = 62 -+ SYS_DUP2 = 63 -+ SYS_GETPPID = 64 -+ SYS_GETPGRP = 65 -+ SYS_SETSID = 66 -+ SYS_SIGACTION = 67 -+ SYS_SGETMASK = 68 -+ SYS_SSETMASK = 69 -+ SYS_SETREUID = 70 -+ SYS_SETREGID = 71 -+ SYS_SIGSUSPEND = 72 -+ SYS_SIGPENDING = 73 -+ SYS_SETHOSTNAME = 74 -+ SYS_SETRLIMIT = 75 -+ SYS_GETRLIMIT = 76 -+ SYS_GETRUSAGE = 77 -+ SYS_GETTIMEOFDAY = 78 -+ SYS_SETTIMEOFDAY = 79 -+ SYS_GETGROUPS = 80 -+ SYS_SETGROUPS = 81 -+ SYS_SELECT = 82 -+ SYS_SYMLINK = 83 -+ SYS_OLDLSTAT = 84 -+ SYS_READLINK = 85 -+ SYS_USELIB = 86 -+ SYS_SWAPON = 87 -+ SYS_REBOOT = 88 -+ SYS_READDIR = 89 -+ SYS_MMAP = 90 -+ SYS_MUNMAP = 91 -+ SYS_TRUNCATE = 92 -+ SYS_FTRUNCATE = 93 -+ SYS_FCHMOD = 94 -+ SYS_FCHOWN = 95 -+ SYS_GETPRIORITY = 96 -+ SYS_SETPRIORITY = 97 -+ SYS_PROFIL = 98 -+ SYS_STATFS = 99 -+ SYS_FSTATFS = 100 -+ SYS_IOPERM = 101 -+ SYS_SOCKETCALL = 102 -+ SYS_SYSLOG = 103 -+ SYS_SETITIMER = 104 -+ SYS_GETITIMER = 105 -+ SYS_STAT = 106 -+ SYS_LSTAT = 107 -+ SYS_FSTAT = 108 -+ SYS_OLDUNAME = 109 -+ SYS_IOPL = 110 -+ SYS_VHANGUP = 111 -+ SYS_IDLE = 112 -+ SYS_VM86 = 113 -+ SYS_WAIT4 = 114 -+ SYS_SWAPOFF = 115 -+ SYS_SYSINFO = 116 -+ SYS_IPC = 117 -+ SYS_FSYNC = 118 -+ SYS_SIGRETURN = 119 -+ SYS_CLONE = 120 -+ SYS_SETDOMAINNAME = 121 -+ SYS_UNAME = 122 -+ SYS_MODIFY_LDT = 123 -+ SYS_ADJTIMEX = 124 -+ SYS_MPROTECT = 125 -+ SYS_SIGPROCMASK = 126 -+ SYS_CREATE_MODULE = 127 -+ SYS_INIT_MODULE = 128 -+ SYS_DELETE_MODULE = 129 -+ SYS_GET_KERNEL_SYMS = 130 -+ SYS_QUOTACTL = 131 -+ SYS_GETPGID = 132 -+ SYS_FCHDIR = 133 -+ SYS_BDFLUSH = 134 -+ SYS_SYSFS = 135 -+ SYS_PERSONALITY = 136 -+ SYS_AFS_SYSCALL = 137 -+ SYS_SETFSUID = 138 -+ SYS_SETFSGID = 139 -+ SYS__LLSEEK = 140 -+ SYS_GETDENTS = 141 -+ SYS__NEWSELECT = 142 -+ SYS_FLOCK = 143 -+ SYS_MSYNC = 144 -+ SYS_READV = 145 -+ SYS_WRITEV = 146 -+ SYS_GETSID = 147 -+ SYS_FDATASYNC = 148 -+ SYS__SYSCTL = 149 -+ SYS_MLOCK = 150 -+ SYS_MUNLOCK = 151 -+ SYS_MLOCKALL = 152 -+ SYS_MUNLOCKALL = 153 -+ SYS_SCHED_SETPARAM = 154 -+ SYS_SCHED_GETPARAM = 155 -+ SYS_SCHED_SETSCHEDULER = 156 -+ SYS_SCHED_GETSCHEDULER = 157 -+ SYS_SCHED_YIELD = 158 -+ SYS_SCHED_GET_PRIORITY_MAX = 159 -+ SYS_SCHED_GET_PRIORITY_MIN = 160 -+ SYS_SCHED_RR_GET_INTERVAL = 161 -+ SYS_NANOSLEEP = 162 -+ SYS_MREMAP = 163 -+ SYS_SETRESUID = 164 -+ SYS_GETRESUID = 165 -+ SYS_QUERY_MODULE = 166 -+ SYS_POLL = 167 -+ SYS_NFSSERVCTL = 168 -+ SYS_SETRESGID = 169 -+ SYS_GETRESGID = 170 -+ SYS_PRCTL = 171 -+ SYS_RT_SIGRETURN = 172 -+ SYS_RT_SIGACTION = 173 -+ SYS_RT_SIGPROCMASK = 174 -+ SYS_RT_SIGPENDING = 175 -+ SYS_RT_SIGTIMEDWAIT = 176 -+ SYS_RT_SIGQUEUEINFO = 177 -+ SYS_RT_SIGSUSPEND = 178 -+ SYS_PREAD64 = 179 -+ SYS_PWRITE64 = 180 -+ SYS_CHOWN = 181 -+ SYS_GETCWD = 182 -+ SYS_CAPGET = 183 -+ SYS_CAPSET = 184 -+ SYS_SIGALTSTACK = 185 -+ SYS_SENDFILE = 186 -+ SYS_GETPMSG = 187 -+ SYS_PUTPMSG = 188 -+ SYS_VFORK = 189 -+ SYS_UGETRLIMIT = 190 -+ SYS_READAHEAD = 191 -+ SYS_MMAP2 = 192 -+ SYS_TRUNCATE64 = 193 -+ SYS_FTRUNCATE64 = 194 -+ SYS_STAT64 = 195 -+ SYS_LSTAT64 = 196 -+ SYS_FSTAT64 = 197 -+ SYS_PCICONFIG_READ = 198 -+ SYS_PCICONFIG_WRITE = 199 -+ SYS_PCICONFIG_IOBASE = 200 -+ SYS_MULTIPLEXER = 201 -+ SYS_GETDENTS64 = 202 -+ SYS_PIVOT_ROOT = 203 -+ SYS_FCNTL64 = 204 -+ SYS_MADVISE = 205 -+ SYS_MINCORE = 206 -+ SYS_GETTID = 207 -+ SYS_TKILL = 208 -+ SYS_SETXATTR = 209 -+ SYS_LSETXATTR = 210 -+ SYS_FSETXATTR = 211 -+ SYS_GETXATTR = 212 -+ SYS_LGETXATTR = 213 -+ SYS_FGETXATTR = 214 -+ SYS_LISTXATTR = 215 -+ SYS_LLISTXATTR = 216 -+ SYS_FLISTXATTR = 217 -+ SYS_REMOVEXATTR = 218 -+ SYS_LREMOVEXATTR = 219 -+ SYS_FREMOVEXATTR = 220 -+ SYS_FUTEX = 221 -+ SYS_SCHED_SETAFFINITY = 222 -+ SYS_SCHED_GETAFFINITY = 223 -+ SYS_TUXCALL = 225 -+ SYS_SENDFILE64 = 226 -+ SYS_IO_SETUP = 227 -+ SYS_IO_DESTROY = 228 -+ SYS_IO_GETEVENTS = 229 -+ SYS_IO_SUBMIT = 230 -+ SYS_IO_CANCEL = 231 -+ SYS_SET_TID_ADDRESS = 232 -+ SYS_FADVISE64 = 233 -+ SYS_EXIT_GROUP = 234 -+ SYS_LOOKUP_DCOOKIE = 235 -+ SYS_EPOLL_CREATE = 236 -+ SYS_EPOLL_CTL = 237 -+ SYS_EPOLL_WAIT = 238 -+ SYS_REMAP_FILE_PAGES = 239 -+ SYS_TIMER_CREATE = 240 -+ SYS_TIMER_SETTIME = 241 -+ SYS_TIMER_GETTIME = 242 -+ SYS_TIMER_GETOVERRUN = 243 -+ SYS_TIMER_DELETE = 244 -+ SYS_CLOCK_SETTIME = 245 -+ SYS_CLOCK_GETTIME = 246 -+ SYS_CLOCK_GETRES = 247 -+ SYS_CLOCK_NANOSLEEP = 248 -+ SYS_SWAPCONTEXT = 249 -+ SYS_TGKILL = 250 -+ SYS_UTIMES = 251 -+ SYS_STATFS64 = 252 -+ SYS_FSTATFS64 = 253 -+ SYS_FADVISE64_64 = 254 -+ SYS_RTAS = 255 -+ SYS_SYS_DEBUG_SETCONTEXT = 256 -+ SYS_MIGRATE_PAGES = 258 -+ SYS_MBIND = 259 -+ SYS_GET_MEMPOLICY = 260 -+ SYS_SET_MEMPOLICY = 261 -+ SYS_MQ_OPEN = 262 -+ SYS_MQ_UNLINK = 263 -+ SYS_MQ_TIMEDSEND = 264 -+ SYS_MQ_TIMEDRECEIVE = 265 -+ SYS_MQ_NOTIFY = 266 -+ SYS_MQ_GETSETATTR = 267 -+ SYS_KEXEC_LOAD = 268 -+ SYS_ADD_KEY = 269 -+ SYS_REQUEST_KEY = 270 -+ SYS_KEYCTL = 271 -+ SYS_WAITID = 272 -+ SYS_IOPRIO_SET = 273 -+ SYS_IOPRIO_GET = 274 -+ SYS_INOTIFY_INIT = 275 -+ SYS_INOTIFY_ADD_WATCH = 276 -+ SYS_INOTIFY_RM_WATCH = 277 -+ SYS_SPU_RUN = 278 -+ SYS_SPU_CREATE = 279 -+ SYS_PSELECT6 = 280 -+ SYS_PPOLL = 281 -+ SYS_UNSHARE = 282 -+ SYS_SPLICE = 283 -+ SYS_TEE = 284 -+ SYS_VMSPLICE = 285 -+ SYS_OPENAT = 286 -+ SYS_MKDIRAT = 287 -+ SYS_MKNODAT = 288 -+ SYS_FCHOWNAT = 289 -+ SYS_FUTIMESAT = 290 -+ SYS_FSTATAT64 = 291 -+ SYS_UNLINKAT = 292 -+ SYS_RENAMEAT = 293 -+ SYS_LINKAT = 294 -+ SYS_SYMLINKAT = 295 -+ SYS_READLINKAT = 296 -+ SYS_FCHMODAT = 297 -+ SYS_FACCESSAT = 298 -+ SYS_GET_ROBUST_LIST = 299 -+ SYS_SET_ROBUST_LIST = 300 -+ SYS_MOVE_PAGES = 301 -+ SYS_GETCPU = 302 -+ SYS_EPOLL_PWAIT = 303 -+ SYS_UTIMENSAT = 304 -+ SYS_SIGNALFD = 305 -+ SYS_TIMERFD_CREATE = 306 -+ SYS_EVENTFD = 307 -+ SYS_SYNC_FILE_RANGE2 = 308 -+ SYS_FALLOCATE = 309 -+ SYS_SUBPAGE_PROT = 310 -+ SYS_TIMERFD_SETTIME = 311 -+ SYS_TIMERFD_GETTIME = 312 -+ SYS_SIGNALFD4 = 313 -+ SYS_EVENTFD2 = 314 -+ SYS_EPOLL_CREATE1 = 315 -+ SYS_DUP3 = 316 -+ SYS_PIPE2 = 317 -+ SYS_INOTIFY_INIT1 = 318 -+ SYS_PERF_EVENT_OPEN = 319 -+ SYS_PREADV = 320 -+ SYS_PWRITEV = 321 -+ SYS_RT_TGSIGQUEUEINFO = 322 -+ SYS_FANOTIFY_INIT = 323 -+ SYS_FANOTIFY_MARK = 324 -+ SYS_PRLIMIT64 = 325 -+ SYS_SOCKET = 326 -+ SYS_BIND = 327 -+ SYS_CONNECT = 328 -+ SYS_LISTEN = 329 -+ SYS_ACCEPT = 330 -+ SYS_GETSOCKNAME = 331 -+ SYS_GETPEERNAME = 332 -+ SYS_SOCKETPAIR = 333 -+ SYS_SEND = 334 -+ SYS_SENDTO = 335 -+ SYS_RECV = 336 -+ SYS_RECVFROM = 337 -+ SYS_SHUTDOWN = 338 -+ SYS_SETSOCKOPT = 339 -+ SYS_GETSOCKOPT = 340 -+ SYS_SENDMSG = 341 -+ SYS_RECVMSG = 342 -+ SYS_RECVMMSG = 343 -+ SYS_ACCEPT4 = 344 -+ SYS_NAME_TO_HANDLE_AT = 345 -+ SYS_OPEN_BY_HANDLE_AT = 346 -+ SYS_CLOCK_ADJTIME = 347 -+ SYS_SYNCFS = 348 -+ SYS_SENDMMSG = 349 -+ SYS_SETNS = 350 -+ SYS_PROCESS_VM_READV = 351 -+ SYS_PROCESS_VM_WRITEV = 352 -+ SYS_FINIT_MODULE = 353 -+ SYS_KCMP = 354 -+ SYS_SCHED_SETATTR = 355 -+ SYS_SCHED_GETATTR = 356 -+ SYS_RENAMEAT2 = 357 -+ SYS_SECCOMP = 358 -+ SYS_GETRANDOM = 359 -+ SYS_MEMFD_CREATE = 360 -+ SYS_BPF = 361 -+ SYS_EXECVEAT = 362 -+ SYS_SWITCH_ENDIAN = 363 -+ SYS_USERFAULTFD = 364 -+ SYS_MEMBARRIER = 365 -+ SYS_MLOCK2 = 378 -+ SYS_COPY_FILE_RANGE = 379 -+ SYS_PREADV2 = 380 -+ SYS_PWRITEV2 = 381 -+ SYS_KEXEC_FILE_LOAD = 382 -+ SYS_STATX = 383 -+ SYS_PKEY_ALLOC = 384 -+ SYS_PKEY_FREE = 385 -+ SYS_PKEY_MPROTECT = 386 -+ SYS_RSEQ = 387 -+ SYS_IO_PGETEVENTS = 388 -+ SYS_SEMGET = 393 -+ SYS_SEMCTL = 394 -+ SYS_SHMGET = 395 -+ SYS_SHMCTL = 396 -+ SYS_SHMAT = 397 -+ SYS_SHMDT = 398 -+ SYS_MSGGET = 399 -+ SYS_MSGSND = 400 -+ SYS_MSGRCV = 401 -+ SYS_MSGCTL = 402 -+ SYS_CLOCK_GETTIME64 = 403 -+ SYS_CLOCK_SETTIME64 = 404 -+ SYS_CLOCK_ADJTIME64 = 405 -+ SYS_CLOCK_GETRES_TIME64 = 406 -+ SYS_CLOCK_NANOSLEEP_TIME64 = 407 -+ SYS_TIMER_GETTIME64 = 408 -+ SYS_TIMER_SETTIME64 = 409 -+ SYS_TIMERFD_GETTIME64 = 410 -+ SYS_TIMERFD_SETTIME64 = 411 -+ SYS_UTIMENSAT_TIME64 = 412 -+ SYS_PSELECT6_TIME64 = 413 -+ SYS_PPOLL_TIME64 = 414 -+ SYS_IO_PGETEVENTS_TIME64 = 416 -+ SYS_RECVMMSG_TIME64 = 417 -+ SYS_MQ_TIMEDSEND_TIME64 = 418 -+ SYS_MQ_TIMEDRECEIVE_TIME64 = 419 -+ SYS_SEMTIMEDOP_TIME64 = 420 -+ SYS_RT_SIGTIMEDWAIT_TIME64 = 421 -+ SYS_FUTEX_TIME64 = 422 -+ SYS_SCHED_RR_GET_INTERVAL_TIME64 = 423 -+ SYS_PIDFD_SEND_SIGNAL = 424 -+ SYS_IO_URING_SETUP = 425 -+ SYS_IO_URING_ENTER = 426 -+ SYS_IO_URING_REGISTER = 427 -+ SYS_OPEN_TREE = 428 -+ SYS_MOVE_MOUNT = 429 -+ SYS_FSOPEN = 430 -+ SYS_FSCONFIG = 431 -+ SYS_FSMOUNT = 432 -+ SYS_FSPICK = 433 -+ SYS_PIDFD_OPEN = 434 -+ SYS_CLONE3 = 435 -+ SYS_CLOSE_RANGE = 436 -+ SYS_OPENAT2 = 437 -+ SYS_PIDFD_GETFD = 438 -+ SYS_FACCESSAT2 = 439 -+ SYS_PROCESS_MADVISE = 440 -+ SYS_EPOLL_PWAIT2 = 441 -+ SYS_MOUNT_SETATTR = 442 -+ SYS_QUOTACTL_FD = 443 -+ SYS_LANDLOCK_CREATE_RULESET = 444 -+ SYS_LANDLOCK_ADD_RULE = 445 -+ SYS_LANDLOCK_RESTRICT_SELF = 446 -+ SYS_PROCESS_MRELEASE = 448 -+ SYS_FUTEX_WAITV = 449 -+ SYS_SET_MEMPOLICY_HOME_NODE = 450 -+) -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go -index cc3c067..d44c5b3 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go -@@ -1,400 +1,413 @@ --// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h -+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/ppc64/include /tmp/ppc64/include/asm/unistd.h - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build ppc64 && linux - // +build ppc64,linux - - package unix - - const ( -- SYS_RESTART_SYSCALL = 0 -- SYS_EXIT = 1 -- SYS_FORK = 2 -- SYS_READ = 3 -- SYS_WRITE = 4 -- SYS_OPEN = 5 -- SYS_CLOSE = 6 -- SYS_WAITPID = 7 -- SYS_CREAT = 8 -- SYS_LINK = 9 -- SYS_UNLINK = 10 -- SYS_EXECVE = 11 -- SYS_CHDIR = 12 -- SYS_TIME = 13 -- SYS_MKNOD = 14 -- SYS_CHMOD = 15 -- SYS_LCHOWN = 16 -- SYS_BREAK = 17 -- SYS_OLDSTAT = 18 -- SYS_LSEEK = 19 -- SYS_GETPID = 20 -- SYS_MOUNT = 21 -- SYS_UMOUNT = 22 -- SYS_SETUID = 23 -- SYS_GETUID = 24 -- SYS_STIME = 25 -- SYS_PTRACE = 26 -- SYS_ALARM = 27 -- SYS_OLDFSTAT = 28 -- SYS_PAUSE = 29 -- SYS_UTIME = 30 -- SYS_STTY = 31 -- SYS_GTTY = 32 -- SYS_ACCESS = 33 -- SYS_NICE = 34 -- SYS_FTIME = 35 -- SYS_SYNC = 36 -- SYS_KILL = 37 -- SYS_RENAME = 38 -- SYS_MKDIR = 39 -- SYS_RMDIR = 40 -- SYS_DUP = 41 -- SYS_PIPE = 42 -- SYS_TIMES = 43 -- SYS_PROF = 44 -- SYS_BRK = 45 -- SYS_SETGID = 46 -- SYS_GETGID = 47 -- SYS_SIGNAL = 48 -- SYS_GETEUID = 49 -- SYS_GETEGID = 50 -- SYS_ACCT = 51 -- SYS_UMOUNT2 = 52 -- SYS_LOCK = 53 -- SYS_IOCTL = 54 -- SYS_FCNTL = 55 -- SYS_MPX = 56 -- SYS_SETPGID = 57 -- SYS_ULIMIT = 58 -- SYS_OLDOLDUNAME = 59 -- SYS_UMASK = 60 -- SYS_CHROOT = 61 -- SYS_USTAT = 62 -- SYS_DUP2 = 63 -- SYS_GETPPID = 64 -- SYS_GETPGRP = 65 -- SYS_SETSID = 66 -- SYS_SIGACTION = 67 -- SYS_SGETMASK = 68 -- SYS_SSETMASK = 69 -- SYS_SETREUID = 70 -- SYS_SETREGID = 71 -- SYS_SIGSUSPEND = 72 -- SYS_SIGPENDING = 73 -- SYS_SETHOSTNAME = 74 -- SYS_SETRLIMIT = 75 -- SYS_GETRLIMIT = 76 -- SYS_GETRUSAGE = 77 -- SYS_GETTIMEOFDAY = 78 -- SYS_SETTIMEOFDAY = 79 -- SYS_GETGROUPS = 80 -- SYS_SETGROUPS = 81 -- SYS_SELECT = 82 -- SYS_SYMLINK = 83 -- SYS_OLDLSTAT = 84 -- SYS_READLINK = 85 -- SYS_USELIB = 86 -- SYS_SWAPON = 87 -- SYS_REBOOT = 88 -- SYS_READDIR = 89 -- SYS_MMAP = 90 -- SYS_MUNMAP = 91 -- SYS_TRUNCATE = 92 -- SYS_FTRUNCATE = 93 -- SYS_FCHMOD = 94 -- SYS_FCHOWN = 95 -- SYS_GETPRIORITY = 96 -- SYS_SETPRIORITY = 97 -- SYS_PROFIL = 98 -- SYS_STATFS = 99 -- SYS_FSTATFS = 100 -- SYS_IOPERM = 101 -- SYS_SOCKETCALL = 102 -- SYS_SYSLOG = 103 -- SYS_SETITIMER = 104 -- SYS_GETITIMER = 105 -- SYS_STAT = 106 -- SYS_LSTAT = 107 -- SYS_FSTAT = 108 -- SYS_OLDUNAME = 109 -- SYS_IOPL = 110 -- SYS_VHANGUP = 111 -- SYS_IDLE = 112 -- SYS_VM86 = 113 -- SYS_WAIT4 = 114 -- SYS_SWAPOFF = 115 -- SYS_SYSINFO = 116 -- SYS_IPC = 117 -- SYS_FSYNC = 118 -- SYS_SIGRETURN = 119 -- SYS_CLONE = 120 -- SYS_SETDOMAINNAME = 121 -- SYS_UNAME = 122 -- SYS_MODIFY_LDT = 123 -- SYS_ADJTIMEX = 124 -- SYS_MPROTECT = 125 -- SYS_SIGPROCMASK = 126 -- SYS_CREATE_MODULE = 127 -- SYS_INIT_MODULE = 128 -- SYS_DELETE_MODULE = 129 -- SYS_GET_KERNEL_SYMS = 130 -- SYS_QUOTACTL = 131 -- SYS_GETPGID = 132 -- SYS_FCHDIR = 133 -- SYS_BDFLUSH = 134 -- SYS_SYSFS = 135 -- SYS_PERSONALITY = 136 -- SYS_AFS_SYSCALL = 137 -- SYS_SETFSUID = 138 -- SYS_SETFSGID = 139 -- SYS__LLSEEK = 140 -- SYS_GETDENTS = 141 -- SYS__NEWSELECT = 142 -- SYS_FLOCK = 143 -- SYS_MSYNC = 144 -- SYS_READV = 145 -- SYS_WRITEV = 146 -- SYS_GETSID = 147 -- SYS_FDATASYNC = 148 -- SYS__SYSCTL = 149 -- SYS_MLOCK = 150 -- SYS_MUNLOCK = 151 -- SYS_MLOCKALL = 152 -- SYS_MUNLOCKALL = 153 -- SYS_SCHED_SETPARAM = 154 -- SYS_SCHED_GETPARAM = 155 -- SYS_SCHED_SETSCHEDULER = 156 -- SYS_SCHED_GETSCHEDULER = 157 -- SYS_SCHED_YIELD = 158 -- SYS_SCHED_GET_PRIORITY_MAX = 159 -- SYS_SCHED_GET_PRIORITY_MIN = 160 -- SYS_SCHED_RR_GET_INTERVAL = 161 -- SYS_NANOSLEEP = 162 -- SYS_MREMAP = 163 -- SYS_SETRESUID = 164 -- SYS_GETRESUID = 165 -- SYS_QUERY_MODULE = 166 -- SYS_POLL = 167 -- SYS_NFSSERVCTL = 168 -- SYS_SETRESGID = 169 -- SYS_GETRESGID = 170 -- SYS_PRCTL = 171 -- SYS_RT_SIGRETURN = 172 -- SYS_RT_SIGACTION = 173 -- SYS_RT_SIGPROCMASK = 174 -- SYS_RT_SIGPENDING = 175 -- SYS_RT_SIGTIMEDWAIT = 176 -- SYS_RT_SIGQUEUEINFO = 177 -- SYS_RT_SIGSUSPEND = 178 -- SYS_PREAD64 = 179 -- SYS_PWRITE64 = 180 -- SYS_CHOWN = 181 -- SYS_GETCWD = 182 -- SYS_CAPGET = 183 -- SYS_CAPSET = 184 -- SYS_SIGALTSTACK = 185 -- SYS_SENDFILE = 186 -- SYS_GETPMSG = 187 -- SYS_PUTPMSG = 188 -- SYS_VFORK = 189 -- SYS_UGETRLIMIT = 190 -- SYS_READAHEAD = 191 -- SYS_PCICONFIG_READ = 198 -- SYS_PCICONFIG_WRITE = 199 -- SYS_PCICONFIG_IOBASE = 200 -- SYS_MULTIPLEXER = 201 -- SYS_GETDENTS64 = 202 -- SYS_PIVOT_ROOT = 203 -- SYS_MADVISE = 205 -- SYS_MINCORE = 206 -- SYS_GETTID = 207 -- SYS_TKILL = 208 -- SYS_SETXATTR = 209 -- SYS_LSETXATTR = 210 -- SYS_FSETXATTR = 211 -- SYS_GETXATTR = 212 -- SYS_LGETXATTR = 213 -- SYS_FGETXATTR = 214 -- SYS_LISTXATTR = 215 -- SYS_LLISTXATTR = 216 -- SYS_FLISTXATTR = 217 -- SYS_REMOVEXATTR = 218 -- SYS_LREMOVEXATTR = 219 -- SYS_FREMOVEXATTR = 220 -- SYS_FUTEX = 221 -- SYS_SCHED_SETAFFINITY = 222 -- SYS_SCHED_GETAFFINITY = 223 -- SYS_TUXCALL = 225 -- SYS_IO_SETUP = 227 -- SYS_IO_DESTROY = 228 -- SYS_IO_GETEVENTS = 229 -- SYS_IO_SUBMIT = 230 -- SYS_IO_CANCEL = 231 -- SYS_SET_TID_ADDRESS = 232 -- SYS_FADVISE64 = 233 -- SYS_EXIT_GROUP = 234 -- SYS_LOOKUP_DCOOKIE = 235 -- SYS_EPOLL_CREATE = 236 -- SYS_EPOLL_CTL = 237 -- SYS_EPOLL_WAIT = 238 -- SYS_REMAP_FILE_PAGES = 239 -- SYS_TIMER_CREATE = 240 -- SYS_TIMER_SETTIME = 241 -- SYS_TIMER_GETTIME = 242 -- SYS_TIMER_GETOVERRUN = 243 -- SYS_TIMER_DELETE = 244 -- SYS_CLOCK_SETTIME = 245 -- SYS_CLOCK_GETTIME = 246 -- SYS_CLOCK_GETRES = 247 -- SYS_CLOCK_NANOSLEEP = 248 -- SYS_SWAPCONTEXT = 249 -- SYS_TGKILL = 250 -- SYS_UTIMES = 251 -- SYS_STATFS64 = 252 -- SYS_FSTATFS64 = 253 -- SYS_RTAS = 255 -- SYS_SYS_DEBUG_SETCONTEXT = 256 -- SYS_MIGRATE_PAGES = 258 -- SYS_MBIND = 259 -- SYS_GET_MEMPOLICY = 260 -- SYS_SET_MEMPOLICY = 261 -- SYS_MQ_OPEN = 262 -- SYS_MQ_UNLINK = 263 -- SYS_MQ_TIMEDSEND = 264 -- SYS_MQ_TIMEDRECEIVE = 265 -- SYS_MQ_NOTIFY = 266 -- SYS_MQ_GETSETATTR = 267 -- SYS_KEXEC_LOAD = 268 -- SYS_ADD_KEY = 269 -- SYS_REQUEST_KEY = 270 -- SYS_KEYCTL = 271 -- SYS_WAITID = 272 -- SYS_IOPRIO_SET = 273 -- SYS_IOPRIO_GET = 274 -- SYS_INOTIFY_INIT = 275 -- SYS_INOTIFY_ADD_WATCH = 276 -- SYS_INOTIFY_RM_WATCH = 277 -- SYS_SPU_RUN = 278 -- SYS_SPU_CREATE = 279 -- SYS_PSELECT6 = 280 -- SYS_PPOLL = 281 -- SYS_UNSHARE = 282 -- SYS_SPLICE = 283 -- SYS_TEE = 284 -- SYS_VMSPLICE = 285 -- SYS_OPENAT = 286 -- SYS_MKDIRAT = 287 -- SYS_MKNODAT = 288 -- SYS_FCHOWNAT = 289 -- SYS_FUTIMESAT = 290 -- SYS_NEWFSTATAT = 291 -- SYS_UNLINKAT = 292 -- SYS_RENAMEAT = 293 -- SYS_LINKAT = 294 -- SYS_SYMLINKAT = 295 -- SYS_READLINKAT = 296 -- SYS_FCHMODAT = 297 -- SYS_FACCESSAT = 298 -- SYS_GET_ROBUST_LIST = 299 -- SYS_SET_ROBUST_LIST = 300 -- SYS_MOVE_PAGES = 301 -- SYS_GETCPU = 302 -- SYS_EPOLL_PWAIT = 303 -- SYS_UTIMENSAT = 304 -- SYS_SIGNALFD = 305 -- SYS_TIMERFD_CREATE = 306 -- SYS_EVENTFD = 307 -- SYS_SYNC_FILE_RANGE2 = 308 -- SYS_FALLOCATE = 309 -- SYS_SUBPAGE_PROT = 310 -- SYS_TIMERFD_SETTIME = 311 -- SYS_TIMERFD_GETTIME = 312 -- SYS_SIGNALFD4 = 313 -- SYS_EVENTFD2 = 314 -- SYS_EPOLL_CREATE1 = 315 -- SYS_DUP3 = 316 -- SYS_PIPE2 = 317 -- SYS_INOTIFY_INIT1 = 318 -- SYS_PERF_EVENT_OPEN = 319 -- SYS_PREADV = 320 -- SYS_PWRITEV = 321 -- SYS_RT_TGSIGQUEUEINFO = 322 -- SYS_FANOTIFY_INIT = 323 -- SYS_FANOTIFY_MARK = 324 -- SYS_PRLIMIT64 = 325 -- SYS_SOCKET = 326 -- SYS_BIND = 327 -- SYS_CONNECT = 328 -- SYS_LISTEN = 329 -- SYS_ACCEPT = 330 -- SYS_GETSOCKNAME = 331 -- SYS_GETPEERNAME = 332 -- SYS_SOCKETPAIR = 333 -- SYS_SEND = 334 -- SYS_SENDTO = 335 -- SYS_RECV = 336 -- SYS_RECVFROM = 337 -- SYS_SHUTDOWN = 338 -- SYS_SETSOCKOPT = 339 -- SYS_GETSOCKOPT = 340 -- SYS_SENDMSG = 341 -- SYS_RECVMSG = 342 -- SYS_RECVMMSG = 343 -- SYS_ACCEPT4 = 344 -- SYS_NAME_TO_HANDLE_AT = 345 -- SYS_OPEN_BY_HANDLE_AT = 346 -- SYS_CLOCK_ADJTIME = 347 -- SYS_SYNCFS = 348 -- SYS_SENDMMSG = 349 -- SYS_SETNS = 350 -- SYS_PROCESS_VM_READV = 351 -- SYS_PROCESS_VM_WRITEV = 352 -- SYS_FINIT_MODULE = 353 -- SYS_KCMP = 354 -- SYS_SCHED_SETATTR = 355 -- SYS_SCHED_GETATTR = 356 -- SYS_RENAMEAT2 = 357 -- SYS_SECCOMP = 358 -- SYS_GETRANDOM = 359 -- SYS_MEMFD_CREATE = 360 -- SYS_BPF = 361 -- SYS_EXECVEAT = 362 -- SYS_SWITCH_ENDIAN = 363 -- SYS_USERFAULTFD = 364 -- SYS_MEMBARRIER = 365 -- SYS_MLOCK2 = 378 -- SYS_COPY_FILE_RANGE = 379 -- SYS_PREADV2 = 380 -- SYS_PWRITEV2 = 381 -- SYS_KEXEC_FILE_LOAD = 382 -- SYS_STATX = 383 -- SYS_PKEY_ALLOC = 384 -- SYS_PKEY_FREE = 385 -- SYS_PKEY_MPROTECT = 386 -- SYS_RSEQ = 387 -- SYS_IO_PGETEVENTS = 388 -- SYS_SEMTIMEDOP = 392 -- SYS_SEMGET = 393 -- SYS_SEMCTL = 394 -- SYS_SHMGET = 395 -- SYS_SHMCTL = 396 -- SYS_SHMAT = 397 -- SYS_SHMDT = 398 -- SYS_MSGGET = 399 -- SYS_MSGSND = 400 -- SYS_MSGRCV = 401 -- SYS_MSGCTL = 402 -- SYS_PIDFD_SEND_SIGNAL = 424 -- SYS_IO_URING_SETUP = 425 -- SYS_IO_URING_ENTER = 426 -- SYS_IO_URING_REGISTER = 427 -- SYS_OPEN_TREE = 428 -- SYS_MOVE_MOUNT = 429 -- SYS_FSOPEN = 430 -- SYS_FSCONFIG = 431 -- SYS_FSMOUNT = 432 -- SYS_FSPICK = 433 -- SYS_PIDFD_OPEN = 434 -- SYS_CLONE3 = 435 -- SYS_OPENAT2 = 437 -- SYS_PIDFD_GETFD = 438 -+ SYS_RESTART_SYSCALL = 0 -+ SYS_EXIT = 1 -+ SYS_FORK = 2 -+ SYS_READ = 3 -+ SYS_WRITE = 4 -+ SYS_OPEN = 5 -+ SYS_CLOSE = 6 -+ SYS_WAITPID = 7 -+ SYS_CREAT = 8 -+ SYS_LINK = 9 -+ SYS_UNLINK = 10 -+ SYS_EXECVE = 11 -+ SYS_CHDIR = 12 -+ SYS_TIME = 13 -+ SYS_MKNOD = 14 -+ SYS_CHMOD = 15 -+ SYS_LCHOWN = 16 -+ SYS_BREAK = 17 -+ SYS_OLDSTAT = 18 -+ SYS_LSEEK = 19 -+ SYS_GETPID = 20 -+ SYS_MOUNT = 21 -+ SYS_UMOUNT = 22 -+ SYS_SETUID = 23 -+ SYS_GETUID = 24 -+ SYS_STIME = 25 -+ SYS_PTRACE = 26 -+ SYS_ALARM = 27 -+ SYS_OLDFSTAT = 28 -+ SYS_PAUSE = 29 -+ SYS_UTIME = 30 -+ SYS_STTY = 31 -+ SYS_GTTY = 32 -+ SYS_ACCESS = 33 -+ SYS_NICE = 34 -+ SYS_FTIME = 35 -+ SYS_SYNC = 36 -+ SYS_KILL = 37 -+ SYS_RENAME = 38 -+ SYS_MKDIR = 39 -+ SYS_RMDIR = 40 -+ SYS_DUP = 41 -+ SYS_PIPE = 42 -+ SYS_TIMES = 43 -+ SYS_PROF = 44 -+ SYS_BRK = 45 -+ SYS_SETGID = 46 -+ SYS_GETGID = 47 -+ SYS_SIGNAL = 48 -+ SYS_GETEUID = 49 -+ SYS_GETEGID = 50 -+ SYS_ACCT = 51 -+ SYS_UMOUNT2 = 52 -+ SYS_LOCK = 53 -+ SYS_IOCTL = 54 -+ SYS_FCNTL = 55 -+ SYS_MPX = 56 -+ SYS_SETPGID = 57 -+ SYS_ULIMIT = 58 -+ SYS_OLDOLDUNAME = 59 -+ SYS_UMASK = 60 -+ SYS_CHROOT = 61 -+ SYS_USTAT = 62 -+ SYS_DUP2 = 63 -+ SYS_GETPPID = 64 -+ SYS_GETPGRP = 65 -+ SYS_SETSID = 66 -+ SYS_SIGACTION = 67 -+ SYS_SGETMASK = 68 -+ SYS_SSETMASK = 69 -+ SYS_SETREUID = 70 -+ SYS_SETREGID = 71 -+ SYS_SIGSUSPEND = 72 -+ SYS_SIGPENDING = 73 -+ SYS_SETHOSTNAME = 74 -+ SYS_SETRLIMIT = 75 -+ SYS_GETRLIMIT = 76 -+ SYS_GETRUSAGE = 77 -+ SYS_GETTIMEOFDAY = 78 -+ SYS_SETTIMEOFDAY = 79 -+ SYS_GETGROUPS = 80 -+ SYS_SETGROUPS = 81 -+ SYS_SELECT = 82 -+ SYS_SYMLINK = 83 -+ SYS_OLDLSTAT = 84 -+ SYS_READLINK = 85 -+ SYS_USELIB = 86 -+ SYS_SWAPON = 87 -+ SYS_REBOOT = 88 -+ SYS_READDIR = 89 -+ SYS_MMAP = 90 -+ SYS_MUNMAP = 91 -+ SYS_TRUNCATE = 92 -+ SYS_FTRUNCATE = 93 -+ SYS_FCHMOD = 94 -+ SYS_FCHOWN = 95 -+ SYS_GETPRIORITY = 96 -+ SYS_SETPRIORITY = 97 -+ SYS_PROFIL = 98 -+ SYS_STATFS = 99 -+ SYS_FSTATFS = 100 -+ SYS_IOPERM = 101 -+ SYS_SOCKETCALL = 102 -+ SYS_SYSLOG = 103 -+ SYS_SETITIMER = 104 -+ SYS_GETITIMER = 105 -+ SYS_STAT = 106 -+ SYS_LSTAT = 107 -+ SYS_FSTAT = 108 -+ SYS_OLDUNAME = 109 -+ SYS_IOPL = 110 -+ SYS_VHANGUP = 111 -+ SYS_IDLE = 112 -+ SYS_VM86 = 113 -+ SYS_WAIT4 = 114 -+ SYS_SWAPOFF = 115 -+ SYS_SYSINFO = 116 -+ SYS_IPC = 117 -+ SYS_FSYNC = 118 -+ SYS_SIGRETURN = 119 -+ SYS_CLONE = 120 -+ SYS_SETDOMAINNAME = 121 -+ SYS_UNAME = 122 -+ SYS_MODIFY_LDT = 123 -+ SYS_ADJTIMEX = 124 -+ SYS_MPROTECT = 125 -+ SYS_SIGPROCMASK = 126 -+ SYS_CREATE_MODULE = 127 -+ SYS_INIT_MODULE = 128 -+ SYS_DELETE_MODULE = 129 -+ SYS_GET_KERNEL_SYMS = 130 -+ SYS_QUOTACTL = 131 -+ SYS_GETPGID = 132 -+ SYS_FCHDIR = 133 -+ SYS_BDFLUSH = 134 -+ SYS_SYSFS = 135 -+ SYS_PERSONALITY = 136 -+ SYS_AFS_SYSCALL = 137 -+ SYS_SETFSUID = 138 -+ SYS_SETFSGID = 139 -+ SYS__LLSEEK = 140 -+ SYS_GETDENTS = 141 -+ SYS__NEWSELECT = 142 -+ SYS_FLOCK = 143 -+ SYS_MSYNC = 144 -+ SYS_READV = 145 -+ SYS_WRITEV = 146 -+ SYS_GETSID = 147 -+ SYS_FDATASYNC = 148 -+ SYS__SYSCTL = 149 -+ SYS_MLOCK = 150 -+ SYS_MUNLOCK = 151 -+ SYS_MLOCKALL = 152 -+ SYS_MUNLOCKALL = 153 -+ SYS_SCHED_SETPARAM = 154 -+ SYS_SCHED_GETPARAM = 155 -+ SYS_SCHED_SETSCHEDULER = 156 -+ SYS_SCHED_GETSCHEDULER = 157 -+ SYS_SCHED_YIELD = 158 -+ SYS_SCHED_GET_PRIORITY_MAX = 159 -+ SYS_SCHED_GET_PRIORITY_MIN = 160 -+ SYS_SCHED_RR_GET_INTERVAL = 161 -+ SYS_NANOSLEEP = 162 -+ SYS_MREMAP = 163 -+ SYS_SETRESUID = 164 -+ SYS_GETRESUID = 165 -+ SYS_QUERY_MODULE = 166 -+ SYS_POLL = 167 -+ SYS_NFSSERVCTL = 168 -+ SYS_SETRESGID = 169 -+ SYS_GETRESGID = 170 -+ SYS_PRCTL = 171 -+ SYS_RT_SIGRETURN = 172 -+ SYS_RT_SIGACTION = 173 -+ SYS_RT_SIGPROCMASK = 174 -+ SYS_RT_SIGPENDING = 175 -+ SYS_RT_SIGTIMEDWAIT = 176 -+ SYS_RT_SIGQUEUEINFO = 177 -+ SYS_RT_SIGSUSPEND = 178 -+ SYS_PREAD64 = 179 -+ SYS_PWRITE64 = 180 -+ SYS_CHOWN = 181 -+ SYS_GETCWD = 182 -+ SYS_CAPGET = 183 -+ SYS_CAPSET = 184 -+ SYS_SIGALTSTACK = 185 -+ SYS_SENDFILE = 186 -+ SYS_GETPMSG = 187 -+ SYS_PUTPMSG = 188 -+ SYS_VFORK = 189 -+ SYS_UGETRLIMIT = 190 -+ SYS_READAHEAD = 191 -+ SYS_PCICONFIG_READ = 198 -+ SYS_PCICONFIG_WRITE = 199 -+ SYS_PCICONFIG_IOBASE = 200 -+ SYS_MULTIPLEXER = 201 -+ SYS_GETDENTS64 = 202 -+ SYS_PIVOT_ROOT = 203 -+ SYS_MADVISE = 205 -+ SYS_MINCORE = 206 -+ SYS_GETTID = 207 -+ SYS_TKILL = 208 -+ SYS_SETXATTR = 209 -+ SYS_LSETXATTR = 210 -+ SYS_FSETXATTR = 211 -+ SYS_GETXATTR = 212 -+ SYS_LGETXATTR = 213 -+ SYS_FGETXATTR = 214 -+ SYS_LISTXATTR = 215 -+ SYS_LLISTXATTR = 216 -+ SYS_FLISTXATTR = 217 -+ SYS_REMOVEXATTR = 218 -+ SYS_LREMOVEXATTR = 219 -+ SYS_FREMOVEXATTR = 220 -+ SYS_FUTEX = 221 -+ SYS_SCHED_SETAFFINITY = 222 -+ SYS_SCHED_GETAFFINITY = 223 -+ SYS_TUXCALL = 225 -+ SYS_IO_SETUP = 227 -+ SYS_IO_DESTROY = 228 -+ SYS_IO_GETEVENTS = 229 -+ SYS_IO_SUBMIT = 230 -+ SYS_IO_CANCEL = 231 -+ SYS_SET_TID_ADDRESS = 232 -+ SYS_FADVISE64 = 233 -+ SYS_EXIT_GROUP = 234 -+ SYS_LOOKUP_DCOOKIE = 235 -+ SYS_EPOLL_CREATE = 236 -+ SYS_EPOLL_CTL = 237 -+ SYS_EPOLL_WAIT = 238 -+ SYS_REMAP_FILE_PAGES = 239 -+ SYS_TIMER_CREATE = 240 -+ SYS_TIMER_SETTIME = 241 -+ SYS_TIMER_GETTIME = 242 -+ SYS_TIMER_GETOVERRUN = 243 -+ SYS_TIMER_DELETE = 244 -+ SYS_CLOCK_SETTIME = 245 -+ SYS_CLOCK_GETTIME = 246 -+ SYS_CLOCK_GETRES = 247 -+ SYS_CLOCK_NANOSLEEP = 248 -+ SYS_SWAPCONTEXT = 249 -+ SYS_TGKILL = 250 -+ SYS_UTIMES = 251 -+ SYS_STATFS64 = 252 -+ SYS_FSTATFS64 = 253 -+ SYS_RTAS = 255 -+ SYS_SYS_DEBUG_SETCONTEXT = 256 -+ SYS_MIGRATE_PAGES = 258 -+ SYS_MBIND = 259 -+ SYS_GET_MEMPOLICY = 260 -+ SYS_SET_MEMPOLICY = 261 -+ SYS_MQ_OPEN = 262 -+ SYS_MQ_UNLINK = 263 -+ SYS_MQ_TIMEDSEND = 264 -+ SYS_MQ_TIMEDRECEIVE = 265 -+ SYS_MQ_NOTIFY = 266 -+ SYS_MQ_GETSETATTR = 267 -+ SYS_KEXEC_LOAD = 268 -+ SYS_ADD_KEY = 269 -+ SYS_REQUEST_KEY = 270 -+ SYS_KEYCTL = 271 -+ SYS_WAITID = 272 -+ SYS_IOPRIO_SET = 273 -+ SYS_IOPRIO_GET = 274 -+ SYS_INOTIFY_INIT = 275 -+ SYS_INOTIFY_ADD_WATCH = 276 -+ SYS_INOTIFY_RM_WATCH = 277 -+ SYS_SPU_RUN = 278 -+ SYS_SPU_CREATE = 279 -+ SYS_PSELECT6 = 280 -+ SYS_PPOLL = 281 -+ SYS_UNSHARE = 282 -+ SYS_SPLICE = 283 -+ SYS_TEE = 284 -+ SYS_VMSPLICE = 285 -+ SYS_OPENAT = 286 -+ SYS_MKDIRAT = 287 -+ SYS_MKNODAT = 288 -+ SYS_FCHOWNAT = 289 -+ SYS_FUTIMESAT = 290 -+ SYS_NEWFSTATAT = 291 -+ SYS_UNLINKAT = 292 -+ SYS_RENAMEAT = 293 -+ SYS_LINKAT = 294 -+ SYS_SYMLINKAT = 295 -+ SYS_READLINKAT = 296 -+ SYS_FCHMODAT = 297 -+ SYS_FACCESSAT = 298 -+ SYS_GET_ROBUST_LIST = 299 -+ SYS_SET_ROBUST_LIST = 300 -+ SYS_MOVE_PAGES = 301 -+ SYS_GETCPU = 302 -+ SYS_EPOLL_PWAIT = 303 -+ SYS_UTIMENSAT = 304 -+ SYS_SIGNALFD = 305 -+ SYS_TIMERFD_CREATE = 306 -+ SYS_EVENTFD = 307 -+ SYS_SYNC_FILE_RANGE2 = 308 -+ SYS_FALLOCATE = 309 -+ SYS_SUBPAGE_PROT = 310 -+ SYS_TIMERFD_SETTIME = 311 -+ SYS_TIMERFD_GETTIME = 312 -+ SYS_SIGNALFD4 = 313 -+ SYS_EVENTFD2 = 314 -+ SYS_EPOLL_CREATE1 = 315 -+ SYS_DUP3 = 316 -+ SYS_PIPE2 = 317 -+ SYS_INOTIFY_INIT1 = 318 -+ SYS_PERF_EVENT_OPEN = 319 -+ SYS_PREADV = 320 -+ SYS_PWRITEV = 321 -+ SYS_RT_TGSIGQUEUEINFO = 322 -+ SYS_FANOTIFY_INIT = 323 -+ SYS_FANOTIFY_MARK = 324 -+ SYS_PRLIMIT64 = 325 -+ SYS_SOCKET = 326 -+ SYS_BIND = 327 -+ SYS_CONNECT = 328 -+ SYS_LISTEN = 329 -+ SYS_ACCEPT = 330 -+ SYS_GETSOCKNAME = 331 -+ SYS_GETPEERNAME = 332 -+ SYS_SOCKETPAIR = 333 -+ SYS_SEND = 334 -+ SYS_SENDTO = 335 -+ SYS_RECV = 336 -+ SYS_RECVFROM = 337 -+ SYS_SHUTDOWN = 338 -+ SYS_SETSOCKOPT = 339 -+ SYS_GETSOCKOPT = 340 -+ SYS_SENDMSG = 341 -+ SYS_RECVMSG = 342 -+ SYS_RECVMMSG = 343 -+ SYS_ACCEPT4 = 344 -+ SYS_NAME_TO_HANDLE_AT = 345 -+ SYS_OPEN_BY_HANDLE_AT = 346 -+ SYS_CLOCK_ADJTIME = 347 -+ SYS_SYNCFS = 348 -+ SYS_SENDMMSG = 349 -+ SYS_SETNS = 350 -+ SYS_PROCESS_VM_READV = 351 -+ SYS_PROCESS_VM_WRITEV = 352 -+ SYS_FINIT_MODULE = 353 -+ SYS_KCMP = 354 -+ SYS_SCHED_SETATTR = 355 -+ SYS_SCHED_GETATTR = 356 -+ SYS_RENAMEAT2 = 357 -+ SYS_SECCOMP = 358 -+ SYS_GETRANDOM = 359 -+ SYS_MEMFD_CREATE = 360 -+ SYS_BPF = 361 -+ SYS_EXECVEAT = 362 -+ SYS_SWITCH_ENDIAN = 363 -+ SYS_USERFAULTFD = 364 -+ SYS_MEMBARRIER = 365 -+ SYS_MLOCK2 = 378 -+ SYS_COPY_FILE_RANGE = 379 -+ SYS_PREADV2 = 380 -+ SYS_PWRITEV2 = 381 -+ SYS_KEXEC_FILE_LOAD = 382 -+ SYS_STATX = 383 -+ SYS_PKEY_ALLOC = 384 -+ SYS_PKEY_FREE = 385 -+ SYS_PKEY_MPROTECT = 386 -+ SYS_RSEQ = 387 -+ SYS_IO_PGETEVENTS = 388 -+ SYS_SEMTIMEDOP = 392 -+ SYS_SEMGET = 393 -+ SYS_SEMCTL = 394 -+ SYS_SHMGET = 395 -+ SYS_SHMCTL = 396 -+ SYS_SHMAT = 397 -+ SYS_SHMDT = 398 -+ SYS_MSGGET = 399 -+ SYS_MSGSND = 400 -+ SYS_MSGRCV = 401 -+ SYS_MSGCTL = 402 -+ SYS_PIDFD_SEND_SIGNAL = 424 -+ SYS_IO_URING_SETUP = 425 -+ SYS_IO_URING_ENTER = 426 -+ SYS_IO_URING_REGISTER = 427 -+ SYS_OPEN_TREE = 428 -+ SYS_MOVE_MOUNT = 429 -+ SYS_FSOPEN = 430 -+ SYS_FSCONFIG = 431 -+ SYS_FSMOUNT = 432 -+ SYS_FSPICK = 433 -+ SYS_PIDFD_OPEN = 434 -+ SYS_CLONE3 = 435 -+ SYS_CLOSE_RANGE = 436 -+ SYS_OPENAT2 = 437 -+ SYS_PIDFD_GETFD = 438 -+ SYS_FACCESSAT2 = 439 -+ SYS_PROCESS_MADVISE = 440 -+ SYS_EPOLL_PWAIT2 = 441 -+ SYS_MOUNT_SETATTR = 442 -+ SYS_QUOTACTL_FD = 443 -+ SYS_LANDLOCK_CREATE_RULESET = 444 -+ SYS_LANDLOCK_ADD_RULE = 445 -+ SYS_LANDLOCK_RESTRICT_SELF = 446 -+ SYS_PROCESS_MRELEASE = 448 -+ SYS_FUTEX_WAITV = 449 -+ SYS_SET_MEMPOLICY_HOME_NODE = 450 - ) -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go -index 4050ff9..4214dd9 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go -@@ -1,400 +1,413 @@ --// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h -+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/ppc64le/include /tmp/ppc64le/include/asm/unistd.h - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build ppc64le && linux - // +build ppc64le,linux - - package unix - - const ( -- SYS_RESTART_SYSCALL = 0 -- SYS_EXIT = 1 -- SYS_FORK = 2 -- SYS_READ = 3 -- SYS_WRITE = 4 -- SYS_OPEN = 5 -- SYS_CLOSE = 6 -- SYS_WAITPID = 7 -- SYS_CREAT = 8 -- SYS_LINK = 9 -- SYS_UNLINK = 10 -- SYS_EXECVE = 11 -- SYS_CHDIR = 12 -- SYS_TIME = 13 -- SYS_MKNOD = 14 -- SYS_CHMOD = 15 -- SYS_LCHOWN = 16 -- SYS_BREAK = 17 -- SYS_OLDSTAT = 18 -- SYS_LSEEK = 19 -- SYS_GETPID = 20 -- SYS_MOUNT = 21 -- SYS_UMOUNT = 22 -- SYS_SETUID = 23 -- SYS_GETUID = 24 -- SYS_STIME = 25 -- SYS_PTRACE = 26 -- SYS_ALARM = 27 -- SYS_OLDFSTAT = 28 -- SYS_PAUSE = 29 -- SYS_UTIME = 30 -- SYS_STTY = 31 -- SYS_GTTY = 32 -- SYS_ACCESS = 33 -- SYS_NICE = 34 -- SYS_FTIME = 35 -- SYS_SYNC = 36 -- SYS_KILL = 37 -- SYS_RENAME = 38 -- SYS_MKDIR = 39 -- SYS_RMDIR = 40 -- SYS_DUP = 41 -- SYS_PIPE = 42 -- SYS_TIMES = 43 -- SYS_PROF = 44 -- SYS_BRK = 45 -- SYS_SETGID = 46 -- SYS_GETGID = 47 -- SYS_SIGNAL = 48 -- SYS_GETEUID = 49 -- SYS_GETEGID = 50 -- SYS_ACCT = 51 -- SYS_UMOUNT2 = 52 -- SYS_LOCK = 53 -- SYS_IOCTL = 54 -- SYS_FCNTL = 55 -- SYS_MPX = 56 -- SYS_SETPGID = 57 -- SYS_ULIMIT = 58 -- SYS_OLDOLDUNAME = 59 -- SYS_UMASK = 60 -- SYS_CHROOT = 61 -- SYS_USTAT = 62 -- SYS_DUP2 = 63 -- SYS_GETPPID = 64 -- SYS_GETPGRP = 65 -- SYS_SETSID = 66 -- SYS_SIGACTION = 67 -- SYS_SGETMASK = 68 -- SYS_SSETMASK = 69 -- SYS_SETREUID = 70 -- SYS_SETREGID = 71 -- SYS_SIGSUSPEND = 72 -- SYS_SIGPENDING = 73 -- SYS_SETHOSTNAME = 74 -- SYS_SETRLIMIT = 75 -- SYS_GETRLIMIT = 76 -- SYS_GETRUSAGE = 77 -- SYS_GETTIMEOFDAY = 78 -- SYS_SETTIMEOFDAY = 79 -- SYS_GETGROUPS = 80 -- SYS_SETGROUPS = 81 -- SYS_SELECT = 82 -- SYS_SYMLINK = 83 -- SYS_OLDLSTAT = 84 -- SYS_READLINK = 85 -- SYS_USELIB = 86 -- SYS_SWAPON = 87 -- SYS_REBOOT = 88 -- SYS_READDIR = 89 -- SYS_MMAP = 90 -- SYS_MUNMAP = 91 -- SYS_TRUNCATE = 92 -- SYS_FTRUNCATE = 93 -- SYS_FCHMOD = 94 -- SYS_FCHOWN = 95 -- SYS_GETPRIORITY = 96 -- SYS_SETPRIORITY = 97 -- SYS_PROFIL = 98 -- SYS_STATFS = 99 -- SYS_FSTATFS = 100 -- SYS_IOPERM = 101 -- SYS_SOCKETCALL = 102 -- SYS_SYSLOG = 103 -- SYS_SETITIMER = 104 -- SYS_GETITIMER = 105 -- SYS_STAT = 106 -- SYS_LSTAT = 107 -- SYS_FSTAT = 108 -- SYS_OLDUNAME = 109 -- SYS_IOPL = 110 -- SYS_VHANGUP = 111 -- SYS_IDLE = 112 -- SYS_VM86 = 113 -- SYS_WAIT4 = 114 -- SYS_SWAPOFF = 115 -- SYS_SYSINFO = 116 -- SYS_IPC = 117 -- SYS_FSYNC = 118 -- SYS_SIGRETURN = 119 -- SYS_CLONE = 120 -- SYS_SETDOMAINNAME = 121 -- SYS_UNAME = 122 -- SYS_MODIFY_LDT = 123 -- SYS_ADJTIMEX = 124 -- SYS_MPROTECT = 125 -- SYS_SIGPROCMASK = 126 -- SYS_CREATE_MODULE = 127 -- SYS_INIT_MODULE = 128 -- SYS_DELETE_MODULE = 129 -- SYS_GET_KERNEL_SYMS = 130 -- SYS_QUOTACTL = 131 -- SYS_GETPGID = 132 -- SYS_FCHDIR = 133 -- SYS_BDFLUSH = 134 -- SYS_SYSFS = 135 -- SYS_PERSONALITY = 136 -- SYS_AFS_SYSCALL = 137 -- SYS_SETFSUID = 138 -- SYS_SETFSGID = 139 -- SYS__LLSEEK = 140 -- SYS_GETDENTS = 141 -- SYS__NEWSELECT = 142 -- SYS_FLOCK = 143 -- SYS_MSYNC = 144 -- SYS_READV = 145 -- SYS_WRITEV = 146 -- SYS_GETSID = 147 -- SYS_FDATASYNC = 148 -- SYS__SYSCTL = 149 -- SYS_MLOCK = 150 -- SYS_MUNLOCK = 151 -- SYS_MLOCKALL = 152 -- SYS_MUNLOCKALL = 153 -- SYS_SCHED_SETPARAM = 154 -- SYS_SCHED_GETPARAM = 155 -- SYS_SCHED_SETSCHEDULER = 156 -- SYS_SCHED_GETSCHEDULER = 157 -- SYS_SCHED_YIELD = 158 -- SYS_SCHED_GET_PRIORITY_MAX = 159 -- SYS_SCHED_GET_PRIORITY_MIN = 160 -- SYS_SCHED_RR_GET_INTERVAL = 161 -- SYS_NANOSLEEP = 162 -- SYS_MREMAP = 163 -- SYS_SETRESUID = 164 -- SYS_GETRESUID = 165 -- SYS_QUERY_MODULE = 166 -- SYS_POLL = 167 -- SYS_NFSSERVCTL = 168 -- SYS_SETRESGID = 169 -- SYS_GETRESGID = 170 -- SYS_PRCTL = 171 -- SYS_RT_SIGRETURN = 172 -- SYS_RT_SIGACTION = 173 -- SYS_RT_SIGPROCMASK = 174 -- SYS_RT_SIGPENDING = 175 -- SYS_RT_SIGTIMEDWAIT = 176 -- SYS_RT_SIGQUEUEINFO = 177 -- SYS_RT_SIGSUSPEND = 178 -- SYS_PREAD64 = 179 -- SYS_PWRITE64 = 180 -- SYS_CHOWN = 181 -- SYS_GETCWD = 182 -- SYS_CAPGET = 183 -- SYS_CAPSET = 184 -- SYS_SIGALTSTACK = 185 -- SYS_SENDFILE = 186 -- SYS_GETPMSG = 187 -- SYS_PUTPMSG = 188 -- SYS_VFORK = 189 -- SYS_UGETRLIMIT = 190 -- SYS_READAHEAD = 191 -- SYS_PCICONFIG_READ = 198 -- SYS_PCICONFIG_WRITE = 199 -- SYS_PCICONFIG_IOBASE = 200 -- SYS_MULTIPLEXER = 201 -- SYS_GETDENTS64 = 202 -- SYS_PIVOT_ROOT = 203 -- SYS_MADVISE = 205 -- SYS_MINCORE = 206 -- SYS_GETTID = 207 -- SYS_TKILL = 208 -- SYS_SETXATTR = 209 -- SYS_LSETXATTR = 210 -- SYS_FSETXATTR = 211 -- SYS_GETXATTR = 212 -- SYS_LGETXATTR = 213 -- SYS_FGETXATTR = 214 -- SYS_LISTXATTR = 215 -- SYS_LLISTXATTR = 216 -- SYS_FLISTXATTR = 217 -- SYS_REMOVEXATTR = 218 -- SYS_LREMOVEXATTR = 219 -- SYS_FREMOVEXATTR = 220 -- SYS_FUTEX = 221 -- SYS_SCHED_SETAFFINITY = 222 -- SYS_SCHED_GETAFFINITY = 223 -- SYS_TUXCALL = 225 -- SYS_IO_SETUP = 227 -- SYS_IO_DESTROY = 228 -- SYS_IO_GETEVENTS = 229 -- SYS_IO_SUBMIT = 230 -- SYS_IO_CANCEL = 231 -- SYS_SET_TID_ADDRESS = 232 -- SYS_FADVISE64 = 233 -- SYS_EXIT_GROUP = 234 -- SYS_LOOKUP_DCOOKIE = 235 -- SYS_EPOLL_CREATE = 236 -- SYS_EPOLL_CTL = 237 -- SYS_EPOLL_WAIT = 238 -- SYS_REMAP_FILE_PAGES = 239 -- SYS_TIMER_CREATE = 240 -- SYS_TIMER_SETTIME = 241 -- SYS_TIMER_GETTIME = 242 -- SYS_TIMER_GETOVERRUN = 243 -- SYS_TIMER_DELETE = 244 -- SYS_CLOCK_SETTIME = 245 -- SYS_CLOCK_GETTIME = 246 -- SYS_CLOCK_GETRES = 247 -- SYS_CLOCK_NANOSLEEP = 248 -- SYS_SWAPCONTEXT = 249 -- SYS_TGKILL = 250 -- SYS_UTIMES = 251 -- SYS_STATFS64 = 252 -- SYS_FSTATFS64 = 253 -- SYS_RTAS = 255 -- SYS_SYS_DEBUG_SETCONTEXT = 256 -- SYS_MIGRATE_PAGES = 258 -- SYS_MBIND = 259 -- SYS_GET_MEMPOLICY = 260 -- SYS_SET_MEMPOLICY = 261 -- SYS_MQ_OPEN = 262 -- SYS_MQ_UNLINK = 263 -- SYS_MQ_TIMEDSEND = 264 -- SYS_MQ_TIMEDRECEIVE = 265 -- SYS_MQ_NOTIFY = 266 -- SYS_MQ_GETSETATTR = 267 -- SYS_KEXEC_LOAD = 268 -- SYS_ADD_KEY = 269 -- SYS_REQUEST_KEY = 270 -- SYS_KEYCTL = 271 -- SYS_WAITID = 272 -- SYS_IOPRIO_SET = 273 -- SYS_IOPRIO_GET = 274 -- SYS_INOTIFY_INIT = 275 -- SYS_INOTIFY_ADD_WATCH = 276 -- SYS_INOTIFY_RM_WATCH = 277 -- SYS_SPU_RUN = 278 -- SYS_SPU_CREATE = 279 -- SYS_PSELECT6 = 280 -- SYS_PPOLL = 281 -- SYS_UNSHARE = 282 -- SYS_SPLICE = 283 -- SYS_TEE = 284 -- SYS_VMSPLICE = 285 -- SYS_OPENAT = 286 -- SYS_MKDIRAT = 287 -- SYS_MKNODAT = 288 -- SYS_FCHOWNAT = 289 -- SYS_FUTIMESAT = 290 -- SYS_NEWFSTATAT = 291 -- SYS_UNLINKAT = 292 -- SYS_RENAMEAT = 293 -- SYS_LINKAT = 294 -- SYS_SYMLINKAT = 295 -- SYS_READLINKAT = 296 -- SYS_FCHMODAT = 297 -- SYS_FACCESSAT = 298 -- SYS_GET_ROBUST_LIST = 299 -- SYS_SET_ROBUST_LIST = 300 -- SYS_MOVE_PAGES = 301 -- SYS_GETCPU = 302 -- SYS_EPOLL_PWAIT = 303 -- SYS_UTIMENSAT = 304 -- SYS_SIGNALFD = 305 -- SYS_TIMERFD_CREATE = 306 -- SYS_EVENTFD = 307 -- SYS_SYNC_FILE_RANGE2 = 308 -- SYS_FALLOCATE = 309 -- SYS_SUBPAGE_PROT = 310 -- SYS_TIMERFD_SETTIME = 311 -- SYS_TIMERFD_GETTIME = 312 -- SYS_SIGNALFD4 = 313 -- SYS_EVENTFD2 = 314 -- SYS_EPOLL_CREATE1 = 315 -- SYS_DUP3 = 316 -- SYS_PIPE2 = 317 -- SYS_INOTIFY_INIT1 = 318 -- SYS_PERF_EVENT_OPEN = 319 -- SYS_PREADV = 320 -- SYS_PWRITEV = 321 -- SYS_RT_TGSIGQUEUEINFO = 322 -- SYS_FANOTIFY_INIT = 323 -- SYS_FANOTIFY_MARK = 324 -- SYS_PRLIMIT64 = 325 -- SYS_SOCKET = 326 -- SYS_BIND = 327 -- SYS_CONNECT = 328 -- SYS_LISTEN = 329 -- SYS_ACCEPT = 330 -- SYS_GETSOCKNAME = 331 -- SYS_GETPEERNAME = 332 -- SYS_SOCKETPAIR = 333 -- SYS_SEND = 334 -- SYS_SENDTO = 335 -- SYS_RECV = 336 -- SYS_RECVFROM = 337 -- SYS_SHUTDOWN = 338 -- SYS_SETSOCKOPT = 339 -- SYS_GETSOCKOPT = 340 -- SYS_SENDMSG = 341 -- SYS_RECVMSG = 342 -- SYS_RECVMMSG = 343 -- SYS_ACCEPT4 = 344 -- SYS_NAME_TO_HANDLE_AT = 345 -- SYS_OPEN_BY_HANDLE_AT = 346 -- SYS_CLOCK_ADJTIME = 347 -- SYS_SYNCFS = 348 -- SYS_SENDMMSG = 349 -- SYS_SETNS = 350 -- SYS_PROCESS_VM_READV = 351 -- SYS_PROCESS_VM_WRITEV = 352 -- SYS_FINIT_MODULE = 353 -- SYS_KCMP = 354 -- SYS_SCHED_SETATTR = 355 -- SYS_SCHED_GETATTR = 356 -- SYS_RENAMEAT2 = 357 -- SYS_SECCOMP = 358 -- SYS_GETRANDOM = 359 -- SYS_MEMFD_CREATE = 360 -- SYS_BPF = 361 -- SYS_EXECVEAT = 362 -- SYS_SWITCH_ENDIAN = 363 -- SYS_USERFAULTFD = 364 -- SYS_MEMBARRIER = 365 -- SYS_MLOCK2 = 378 -- SYS_COPY_FILE_RANGE = 379 -- SYS_PREADV2 = 380 -- SYS_PWRITEV2 = 381 -- SYS_KEXEC_FILE_LOAD = 382 -- SYS_STATX = 383 -- SYS_PKEY_ALLOC = 384 -- SYS_PKEY_FREE = 385 -- SYS_PKEY_MPROTECT = 386 -- SYS_RSEQ = 387 -- SYS_IO_PGETEVENTS = 388 -- SYS_SEMTIMEDOP = 392 -- SYS_SEMGET = 393 -- SYS_SEMCTL = 394 -- SYS_SHMGET = 395 -- SYS_SHMCTL = 396 -- SYS_SHMAT = 397 -- SYS_SHMDT = 398 -- SYS_MSGGET = 399 -- SYS_MSGSND = 400 -- SYS_MSGRCV = 401 -- SYS_MSGCTL = 402 -- SYS_PIDFD_SEND_SIGNAL = 424 -- SYS_IO_URING_SETUP = 425 -- SYS_IO_URING_ENTER = 426 -- SYS_IO_URING_REGISTER = 427 -- SYS_OPEN_TREE = 428 -- SYS_MOVE_MOUNT = 429 -- SYS_FSOPEN = 430 -- SYS_FSCONFIG = 431 -- SYS_FSMOUNT = 432 -- SYS_FSPICK = 433 -- SYS_PIDFD_OPEN = 434 -- SYS_CLONE3 = 435 -- SYS_OPENAT2 = 437 -- SYS_PIDFD_GETFD = 438 -+ SYS_RESTART_SYSCALL = 0 -+ SYS_EXIT = 1 -+ SYS_FORK = 2 -+ SYS_READ = 3 -+ SYS_WRITE = 4 -+ SYS_OPEN = 5 -+ SYS_CLOSE = 6 -+ SYS_WAITPID = 7 -+ SYS_CREAT = 8 -+ SYS_LINK = 9 -+ SYS_UNLINK = 10 -+ SYS_EXECVE = 11 -+ SYS_CHDIR = 12 -+ SYS_TIME = 13 -+ SYS_MKNOD = 14 -+ SYS_CHMOD = 15 -+ SYS_LCHOWN = 16 -+ SYS_BREAK = 17 -+ SYS_OLDSTAT = 18 -+ SYS_LSEEK = 19 -+ SYS_GETPID = 20 -+ SYS_MOUNT = 21 -+ SYS_UMOUNT = 22 -+ SYS_SETUID = 23 -+ SYS_GETUID = 24 -+ SYS_STIME = 25 -+ SYS_PTRACE = 26 -+ SYS_ALARM = 27 -+ SYS_OLDFSTAT = 28 -+ SYS_PAUSE = 29 -+ SYS_UTIME = 30 -+ SYS_STTY = 31 -+ SYS_GTTY = 32 -+ SYS_ACCESS = 33 -+ SYS_NICE = 34 -+ SYS_FTIME = 35 -+ SYS_SYNC = 36 -+ SYS_KILL = 37 -+ SYS_RENAME = 38 -+ SYS_MKDIR = 39 -+ SYS_RMDIR = 40 -+ SYS_DUP = 41 -+ SYS_PIPE = 42 -+ SYS_TIMES = 43 -+ SYS_PROF = 44 -+ SYS_BRK = 45 -+ SYS_SETGID = 46 -+ SYS_GETGID = 47 -+ SYS_SIGNAL = 48 -+ SYS_GETEUID = 49 -+ SYS_GETEGID = 50 -+ SYS_ACCT = 51 -+ SYS_UMOUNT2 = 52 -+ SYS_LOCK = 53 -+ SYS_IOCTL = 54 -+ SYS_FCNTL = 55 -+ SYS_MPX = 56 -+ SYS_SETPGID = 57 -+ SYS_ULIMIT = 58 -+ SYS_OLDOLDUNAME = 59 -+ SYS_UMASK = 60 -+ SYS_CHROOT = 61 -+ SYS_USTAT = 62 -+ SYS_DUP2 = 63 -+ SYS_GETPPID = 64 -+ SYS_GETPGRP = 65 -+ SYS_SETSID = 66 -+ SYS_SIGACTION = 67 -+ SYS_SGETMASK = 68 -+ SYS_SSETMASK = 69 -+ SYS_SETREUID = 70 -+ SYS_SETREGID = 71 -+ SYS_SIGSUSPEND = 72 -+ SYS_SIGPENDING = 73 -+ SYS_SETHOSTNAME = 74 -+ SYS_SETRLIMIT = 75 -+ SYS_GETRLIMIT = 76 -+ SYS_GETRUSAGE = 77 -+ SYS_GETTIMEOFDAY = 78 -+ SYS_SETTIMEOFDAY = 79 -+ SYS_GETGROUPS = 80 -+ SYS_SETGROUPS = 81 -+ SYS_SELECT = 82 -+ SYS_SYMLINK = 83 -+ SYS_OLDLSTAT = 84 -+ SYS_READLINK = 85 -+ SYS_USELIB = 86 -+ SYS_SWAPON = 87 -+ SYS_REBOOT = 88 -+ SYS_READDIR = 89 -+ SYS_MMAP = 90 -+ SYS_MUNMAP = 91 -+ SYS_TRUNCATE = 92 -+ SYS_FTRUNCATE = 93 -+ SYS_FCHMOD = 94 -+ SYS_FCHOWN = 95 -+ SYS_GETPRIORITY = 96 -+ SYS_SETPRIORITY = 97 -+ SYS_PROFIL = 98 -+ SYS_STATFS = 99 -+ SYS_FSTATFS = 100 -+ SYS_IOPERM = 101 -+ SYS_SOCKETCALL = 102 -+ SYS_SYSLOG = 103 -+ SYS_SETITIMER = 104 -+ SYS_GETITIMER = 105 -+ SYS_STAT = 106 -+ SYS_LSTAT = 107 -+ SYS_FSTAT = 108 -+ SYS_OLDUNAME = 109 -+ SYS_IOPL = 110 -+ SYS_VHANGUP = 111 -+ SYS_IDLE = 112 -+ SYS_VM86 = 113 -+ SYS_WAIT4 = 114 -+ SYS_SWAPOFF = 115 -+ SYS_SYSINFO = 116 -+ SYS_IPC = 117 -+ SYS_FSYNC = 118 -+ SYS_SIGRETURN = 119 -+ SYS_CLONE = 120 -+ SYS_SETDOMAINNAME = 121 -+ SYS_UNAME = 122 -+ SYS_MODIFY_LDT = 123 -+ SYS_ADJTIMEX = 124 -+ SYS_MPROTECT = 125 -+ SYS_SIGPROCMASK = 126 -+ SYS_CREATE_MODULE = 127 -+ SYS_INIT_MODULE = 128 -+ SYS_DELETE_MODULE = 129 -+ SYS_GET_KERNEL_SYMS = 130 -+ SYS_QUOTACTL = 131 -+ SYS_GETPGID = 132 -+ SYS_FCHDIR = 133 -+ SYS_BDFLUSH = 134 -+ SYS_SYSFS = 135 -+ SYS_PERSONALITY = 136 -+ SYS_AFS_SYSCALL = 137 -+ SYS_SETFSUID = 138 -+ SYS_SETFSGID = 139 -+ SYS__LLSEEK = 140 -+ SYS_GETDENTS = 141 -+ SYS__NEWSELECT = 142 -+ SYS_FLOCK = 143 -+ SYS_MSYNC = 144 -+ SYS_READV = 145 -+ SYS_WRITEV = 146 -+ SYS_GETSID = 147 -+ SYS_FDATASYNC = 148 -+ SYS__SYSCTL = 149 -+ SYS_MLOCK = 150 -+ SYS_MUNLOCK = 151 -+ SYS_MLOCKALL = 152 -+ SYS_MUNLOCKALL = 153 -+ SYS_SCHED_SETPARAM = 154 -+ SYS_SCHED_GETPARAM = 155 -+ SYS_SCHED_SETSCHEDULER = 156 -+ SYS_SCHED_GETSCHEDULER = 157 -+ SYS_SCHED_YIELD = 158 -+ SYS_SCHED_GET_PRIORITY_MAX = 159 -+ SYS_SCHED_GET_PRIORITY_MIN = 160 -+ SYS_SCHED_RR_GET_INTERVAL = 161 -+ SYS_NANOSLEEP = 162 -+ SYS_MREMAP = 163 -+ SYS_SETRESUID = 164 -+ SYS_GETRESUID = 165 -+ SYS_QUERY_MODULE = 166 -+ SYS_POLL = 167 -+ SYS_NFSSERVCTL = 168 -+ SYS_SETRESGID = 169 -+ SYS_GETRESGID = 170 -+ SYS_PRCTL = 171 -+ SYS_RT_SIGRETURN = 172 -+ SYS_RT_SIGACTION = 173 -+ SYS_RT_SIGPROCMASK = 174 -+ SYS_RT_SIGPENDING = 175 -+ SYS_RT_SIGTIMEDWAIT = 176 -+ SYS_RT_SIGQUEUEINFO = 177 -+ SYS_RT_SIGSUSPEND = 178 -+ SYS_PREAD64 = 179 -+ SYS_PWRITE64 = 180 -+ SYS_CHOWN = 181 -+ SYS_GETCWD = 182 -+ SYS_CAPGET = 183 -+ SYS_CAPSET = 184 -+ SYS_SIGALTSTACK = 185 -+ SYS_SENDFILE = 186 -+ SYS_GETPMSG = 187 -+ SYS_PUTPMSG = 188 -+ SYS_VFORK = 189 -+ SYS_UGETRLIMIT = 190 -+ SYS_READAHEAD = 191 -+ SYS_PCICONFIG_READ = 198 -+ SYS_PCICONFIG_WRITE = 199 -+ SYS_PCICONFIG_IOBASE = 200 -+ SYS_MULTIPLEXER = 201 -+ SYS_GETDENTS64 = 202 -+ SYS_PIVOT_ROOT = 203 -+ SYS_MADVISE = 205 -+ SYS_MINCORE = 206 -+ SYS_GETTID = 207 -+ SYS_TKILL = 208 -+ SYS_SETXATTR = 209 -+ SYS_LSETXATTR = 210 -+ SYS_FSETXATTR = 211 -+ SYS_GETXATTR = 212 -+ SYS_LGETXATTR = 213 -+ SYS_FGETXATTR = 214 -+ SYS_LISTXATTR = 215 -+ SYS_LLISTXATTR = 216 -+ SYS_FLISTXATTR = 217 -+ SYS_REMOVEXATTR = 218 -+ SYS_LREMOVEXATTR = 219 -+ SYS_FREMOVEXATTR = 220 -+ SYS_FUTEX = 221 -+ SYS_SCHED_SETAFFINITY = 222 -+ SYS_SCHED_GETAFFINITY = 223 -+ SYS_TUXCALL = 225 -+ SYS_IO_SETUP = 227 -+ SYS_IO_DESTROY = 228 -+ SYS_IO_GETEVENTS = 229 -+ SYS_IO_SUBMIT = 230 -+ SYS_IO_CANCEL = 231 -+ SYS_SET_TID_ADDRESS = 232 -+ SYS_FADVISE64 = 233 -+ SYS_EXIT_GROUP = 234 -+ SYS_LOOKUP_DCOOKIE = 235 -+ SYS_EPOLL_CREATE = 236 -+ SYS_EPOLL_CTL = 237 -+ SYS_EPOLL_WAIT = 238 -+ SYS_REMAP_FILE_PAGES = 239 -+ SYS_TIMER_CREATE = 240 -+ SYS_TIMER_SETTIME = 241 -+ SYS_TIMER_GETTIME = 242 -+ SYS_TIMER_GETOVERRUN = 243 -+ SYS_TIMER_DELETE = 244 -+ SYS_CLOCK_SETTIME = 245 -+ SYS_CLOCK_GETTIME = 246 -+ SYS_CLOCK_GETRES = 247 -+ SYS_CLOCK_NANOSLEEP = 248 -+ SYS_SWAPCONTEXT = 249 -+ SYS_TGKILL = 250 -+ SYS_UTIMES = 251 -+ SYS_STATFS64 = 252 -+ SYS_FSTATFS64 = 253 -+ SYS_RTAS = 255 -+ SYS_SYS_DEBUG_SETCONTEXT = 256 -+ SYS_MIGRATE_PAGES = 258 -+ SYS_MBIND = 259 -+ SYS_GET_MEMPOLICY = 260 -+ SYS_SET_MEMPOLICY = 261 -+ SYS_MQ_OPEN = 262 -+ SYS_MQ_UNLINK = 263 -+ SYS_MQ_TIMEDSEND = 264 -+ SYS_MQ_TIMEDRECEIVE = 265 -+ SYS_MQ_NOTIFY = 266 -+ SYS_MQ_GETSETATTR = 267 -+ SYS_KEXEC_LOAD = 268 -+ SYS_ADD_KEY = 269 -+ SYS_REQUEST_KEY = 270 -+ SYS_KEYCTL = 271 -+ SYS_WAITID = 272 -+ SYS_IOPRIO_SET = 273 -+ SYS_IOPRIO_GET = 274 -+ SYS_INOTIFY_INIT = 275 -+ SYS_INOTIFY_ADD_WATCH = 276 -+ SYS_INOTIFY_RM_WATCH = 277 -+ SYS_SPU_RUN = 278 -+ SYS_SPU_CREATE = 279 -+ SYS_PSELECT6 = 280 -+ SYS_PPOLL = 281 -+ SYS_UNSHARE = 282 -+ SYS_SPLICE = 283 -+ SYS_TEE = 284 -+ SYS_VMSPLICE = 285 -+ SYS_OPENAT = 286 -+ SYS_MKDIRAT = 287 -+ SYS_MKNODAT = 288 -+ SYS_FCHOWNAT = 289 -+ SYS_FUTIMESAT = 290 -+ SYS_NEWFSTATAT = 291 -+ SYS_UNLINKAT = 292 -+ SYS_RENAMEAT = 293 -+ SYS_LINKAT = 294 -+ SYS_SYMLINKAT = 295 -+ SYS_READLINKAT = 296 -+ SYS_FCHMODAT = 297 -+ SYS_FACCESSAT = 298 -+ SYS_GET_ROBUST_LIST = 299 -+ SYS_SET_ROBUST_LIST = 300 -+ SYS_MOVE_PAGES = 301 -+ SYS_GETCPU = 302 -+ SYS_EPOLL_PWAIT = 303 -+ SYS_UTIMENSAT = 304 -+ SYS_SIGNALFD = 305 -+ SYS_TIMERFD_CREATE = 306 -+ SYS_EVENTFD = 307 -+ SYS_SYNC_FILE_RANGE2 = 308 -+ SYS_FALLOCATE = 309 -+ SYS_SUBPAGE_PROT = 310 -+ SYS_TIMERFD_SETTIME = 311 -+ SYS_TIMERFD_GETTIME = 312 -+ SYS_SIGNALFD4 = 313 -+ SYS_EVENTFD2 = 314 -+ SYS_EPOLL_CREATE1 = 315 -+ SYS_DUP3 = 316 -+ SYS_PIPE2 = 317 -+ SYS_INOTIFY_INIT1 = 318 -+ SYS_PERF_EVENT_OPEN = 319 -+ SYS_PREADV = 320 -+ SYS_PWRITEV = 321 -+ SYS_RT_TGSIGQUEUEINFO = 322 -+ SYS_FANOTIFY_INIT = 323 -+ SYS_FANOTIFY_MARK = 324 -+ SYS_PRLIMIT64 = 325 -+ SYS_SOCKET = 326 -+ SYS_BIND = 327 -+ SYS_CONNECT = 328 -+ SYS_LISTEN = 329 -+ SYS_ACCEPT = 330 -+ SYS_GETSOCKNAME = 331 -+ SYS_GETPEERNAME = 332 -+ SYS_SOCKETPAIR = 333 -+ SYS_SEND = 334 -+ SYS_SENDTO = 335 -+ SYS_RECV = 336 -+ SYS_RECVFROM = 337 -+ SYS_SHUTDOWN = 338 -+ SYS_SETSOCKOPT = 339 -+ SYS_GETSOCKOPT = 340 -+ SYS_SENDMSG = 341 -+ SYS_RECVMSG = 342 -+ SYS_RECVMMSG = 343 -+ SYS_ACCEPT4 = 344 -+ SYS_NAME_TO_HANDLE_AT = 345 -+ SYS_OPEN_BY_HANDLE_AT = 346 -+ SYS_CLOCK_ADJTIME = 347 -+ SYS_SYNCFS = 348 -+ SYS_SENDMMSG = 349 -+ SYS_SETNS = 350 -+ SYS_PROCESS_VM_READV = 351 -+ SYS_PROCESS_VM_WRITEV = 352 -+ SYS_FINIT_MODULE = 353 -+ SYS_KCMP = 354 -+ SYS_SCHED_SETATTR = 355 -+ SYS_SCHED_GETATTR = 356 -+ SYS_RENAMEAT2 = 357 -+ SYS_SECCOMP = 358 -+ SYS_GETRANDOM = 359 -+ SYS_MEMFD_CREATE = 360 -+ SYS_BPF = 361 -+ SYS_EXECVEAT = 362 -+ SYS_SWITCH_ENDIAN = 363 -+ SYS_USERFAULTFD = 364 -+ SYS_MEMBARRIER = 365 -+ SYS_MLOCK2 = 378 -+ SYS_COPY_FILE_RANGE = 379 -+ SYS_PREADV2 = 380 -+ SYS_PWRITEV2 = 381 -+ SYS_KEXEC_FILE_LOAD = 382 -+ SYS_STATX = 383 -+ SYS_PKEY_ALLOC = 384 -+ SYS_PKEY_FREE = 385 -+ SYS_PKEY_MPROTECT = 386 -+ SYS_RSEQ = 387 -+ SYS_IO_PGETEVENTS = 388 -+ SYS_SEMTIMEDOP = 392 -+ SYS_SEMGET = 393 -+ SYS_SEMCTL = 394 -+ SYS_SHMGET = 395 -+ SYS_SHMCTL = 396 -+ SYS_SHMAT = 397 -+ SYS_SHMDT = 398 -+ SYS_MSGGET = 399 -+ SYS_MSGSND = 400 -+ SYS_MSGRCV = 401 -+ SYS_MSGCTL = 402 -+ SYS_PIDFD_SEND_SIGNAL = 424 -+ SYS_IO_URING_SETUP = 425 -+ SYS_IO_URING_ENTER = 426 -+ SYS_IO_URING_REGISTER = 427 -+ SYS_OPEN_TREE = 428 -+ SYS_MOVE_MOUNT = 429 -+ SYS_FSOPEN = 430 -+ SYS_FSCONFIG = 431 -+ SYS_FSMOUNT = 432 -+ SYS_FSPICK = 433 -+ SYS_PIDFD_OPEN = 434 -+ SYS_CLONE3 = 435 -+ SYS_CLOSE_RANGE = 436 -+ SYS_OPENAT2 = 437 -+ SYS_PIDFD_GETFD = 438 -+ SYS_FACCESSAT2 = 439 -+ SYS_PROCESS_MADVISE = 440 -+ SYS_EPOLL_PWAIT2 = 441 -+ SYS_MOUNT_SETATTR = 442 -+ SYS_QUOTACTL_FD = 443 -+ SYS_LANDLOCK_CREATE_RULESET = 444 -+ SYS_LANDLOCK_ADD_RULE = 445 -+ SYS_LANDLOCK_RESTRICT_SELF = 446 -+ SYS_PROCESS_MRELEASE = 448 -+ SYS_FUTEX_WAITV = 449 -+ SYS_SET_MEMPOLICY_HOME_NODE = 450 - ) -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go -index 529abb6..3e594a8 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go -@@ -1,302 +1,316 @@ --// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h -+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/riscv64/include /tmp/riscv64/include/asm/unistd.h - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build riscv64 && linux - // +build riscv64,linux - - package unix - - const ( -- SYS_IO_SETUP = 0 -- SYS_IO_DESTROY = 1 -- SYS_IO_SUBMIT = 2 -- SYS_IO_CANCEL = 3 -- SYS_IO_GETEVENTS = 4 -- SYS_SETXATTR = 5 -- SYS_LSETXATTR = 6 -- SYS_FSETXATTR = 7 -- SYS_GETXATTR = 8 -- SYS_LGETXATTR = 9 -- SYS_FGETXATTR = 10 -- SYS_LISTXATTR = 11 -- SYS_LLISTXATTR = 12 -- SYS_FLISTXATTR = 13 -- SYS_REMOVEXATTR = 14 -- SYS_LREMOVEXATTR = 15 -- SYS_FREMOVEXATTR = 16 -- SYS_GETCWD = 17 -- SYS_LOOKUP_DCOOKIE = 18 -- SYS_EVENTFD2 = 19 -- SYS_EPOLL_CREATE1 = 20 -- SYS_EPOLL_CTL = 21 -- SYS_EPOLL_PWAIT = 22 -- SYS_DUP = 23 -- SYS_DUP3 = 24 -- SYS_FCNTL = 25 -- SYS_INOTIFY_INIT1 = 26 -- SYS_INOTIFY_ADD_WATCH = 27 -- SYS_INOTIFY_RM_WATCH = 28 -- SYS_IOCTL = 29 -- SYS_IOPRIO_SET = 30 -- SYS_IOPRIO_GET = 31 -- SYS_FLOCK = 32 -- SYS_MKNODAT = 33 -- SYS_MKDIRAT = 34 -- SYS_UNLINKAT = 35 -- SYS_SYMLINKAT = 36 -- SYS_LINKAT = 37 -- SYS_UMOUNT2 = 39 -- SYS_MOUNT = 40 -- SYS_PIVOT_ROOT = 41 -- SYS_NFSSERVCTL = 42 -- SYS_STATFS = 43 -- SYS_FSTATFS = 44 -- SYS_TRUNCATE = 45 -- SYS_FTRUNCATE = 46 -- SYS_FALLOCATE = 47 -- SYS_FACCESSAT = 48 -- SYS_CHDIR = 49 -- SYS_FCHDIR = 50 -- SYS_CHROOT = 51 -- SYS_FCHMOD = 52 -- SYS_FCHMODAT = 53 -- SYS_FCHOWNAT = 54 -- SYS_FCHOWN = 55 -- SYS_OPENAT = 56 -- SYS_CLOSE = 57 -- SYS_VHANGUP = 58 -- SYS_PIPE2 = 59 -- SYS_QUOTACTL = 60 -- SYS_GETDENTS64 = 61 -- SYS_LSEEK = 62 -- SYS_READ = 63 -- SYS_WRITE = 64 -- SYS_READV = 65 -- SYS_WRITEV = 66 -- SYS_PREAD64 = 67 -- SYS_PWRITE64 = 68 -- SYS_PREADV = 69 -- SYS_PWRITEV = 70 -- SYS_SENDFILE = 71 -- SYS_PSELECT6 = 72 -- SYS_PPOLL = 73 -- SYS_SIGNALFD4 = 74 -- SYS_VMSPLICE = 75 -- SYS_SPLICE = 76 -- SYS_TEE = 77 -- SYS_READLINKAT = 78 -- SYS_FSTATAT = 79 -- SYS_FSTAT = 80 -- SYS_SYNC = 81 -- SYS_FSYNC = 82 -- SYS_FDATASYNC = 83 -- SYS_SYNC_FILE_RANGE = 84 -- SYS_TIMERFD_CREATE = 85 -- SYS_TIMERFD_SETTIME = 86 -- SYS_TIMERFD_GETTIME = 87 -- SYS_UTIMENSAT = 88 -- SYS_ACCT = 89 -- SYS_CAPGET = 90 -- SYS_CAPSET = 91 -- SYS_PERSONALITY = 92 -- SYS_EXIT = 93 -- SYS_EXIT_GROUP = 94 -- SYS_WAITID = 95 -- SYS_SET_TID_ADDRESS = 96 -- SYS_UNSHARE = 97 -- SYS_FUTEX = 98 -- SYS_SET_ROBUST_LIST = 99 -- SYS_GET_ROBUST_LIST = 100 -- SYS_NANOSLEEP = 101 -- SYS_GETITIMER = 102 -- SYS_SETITIMER = 103 -- SYS_KEXEC_LOAD = 104 -- SYS_INIT_MODULE = 105 -- SYS_DELETE_MODULE = 106 -- SYS_TIMER_CREATE = 107 -- SYS_TIMER_GETTIME = 108 -- SYS_TIMER_GETOVERRUN = 109 -- SYS_TIMER_SETTIME = 110 -- SYS_TIMER_DELETE = 111 -- SYS_CLOCK_SETTIME = 112 -- SYS_CLOCK_GETTIME = 113 -- SYS_CLOCK_GETRES = 114 -- SYS_CLOCK_NANOSLEEP = 115 -- SYS_SYSLOG = 116 -- SYS_PTRACE = 117 -- SYS_SCHED_SETPARAM = 118 -- SYS_SCHED_SETSCHEDULER = 119 -- SYS_SCHED_GETSCHEDULER = 120 -- SYS_SCHED_GETPARAM = 121 -- SYS_SCHED_SETAFFINITY = 122 -- SYS_SCHED_GETAFFINITY = 123 -- SYS_SCHED_YIELD = 124 -- SYS_SCHED_GET_PRIORITY_MAX = 125 -- SYS_SCHED_GET_PRIORITY_MIN = 126 -- SYS_SCHED_RR_GET_INTERVAL = 127 -- SYS_RESTART_SYSCALL = 128 -- SYS_KILL = 129 -- SYS_TKILL = 130 -- SYS_TGKILL = 131 -- SYS_SIGALTSTACK = 132 -- SYS_RT_SIGSUSPEND = 133 -- SYS_RT_SIGACTION = 134 -- SYS_RT_SIGPROCMASK = 135 -- SYS_RT_SIGPENDING = 136 -- SYS_RT_SIGTIMEDWAIT = 137 -- SYS_RT_SIGQUEUEINFO = 138 -- SYS_RT_SIGRETURN = 139 -- SYS_SETPRIORITY = 140 -- SYS_GETPRIORITY = 141 -- SYS_REBOOT = 142 -- SYS_SETREGID = 143 -- SYS_SETGID = 144 -- SYS_SETREUID = 145 -- SYS_SETUID = 146 -- SYS_SETRESUID = 147 -- SYS_GETRESUID = 148 -- SYS_SETRESGID = 149 -- SYS_GETRESGID = 150 -- SYS_SETFSUID = 151 -- SYS_SETFSGID = 152 -- SYS_TIMES = 153 -- SYS_SETPGID = 154 -- SYS_GETPGID = 155 -- SYS_GETSID = 156 -- SYS_SETSID = 157 -- SYS_GETGROUPS = 158 -- SYS_SETGROUPS = 159 -- SYS_UNAME = 160 -- SYS_SETHOSTNAME = 161 -- SYS_SETDOMAINNAME = 162 -- SYS_GETRLIMIT = 163 -- SYS_SETRLIMIT = 164 -- SYS_GETRUSAGE = 165 -- SYS_UMASK = 166 -- SYS_PRCTL = 167 -- SYS_GETCPU = 168 -- SYS_GETTIMEOFDAY = 169 -- SYS_SETTIMEOFDAY = 170 -- SYS_ADJTIMEX = 171 -- SYS_GETPID = 172 -- SYS_GETPPID = 173 -- SYS_GETUID = 174 -- SYS_GETEUID = 175 -- SYS_GETGID = 176 -- SYS_GETEGID = 177 -- SYS_GETTID = 178 -- SYS_SYSINFO = 179 -- SYS_MQ_OPEN = 180 -- SYS_MQ_UNLINK = 181 -- SYS_MQ_TIMEDSEND = 182 -- SYS_MQ_TIMEDRECEIVE = 183 -- SYS_MQ_NOTIFY = 184 -- SYS_MQ_GETSETATTR = 185 -- SYS_MSGGET = 186 -- SYS_MSGCTL = 187 -- SYS_MSGRCV = 188 -- SYS_MSGSND = 189 -- SYS_SEMGET = 190 -- SYS_SEMCTL = 191 -- SYS_SEMTIMEDOP = 192 -- SYS_SEMOP = 193 -- SYS_SHMGET = 194 -- SYS_SHMCTL = 195 -- SYS_SHMAT = 196 -- SYS_SHMDT = 197 -- SYS_SOCKET = 198 -- SYS_SOCKETPAIR = 199 -- SYS_BIND = 200 -- SYS_LISTEN = 201 -- SYS_ACCEPT = 202 -- SYS_CONNECT = 203 -- SYS_GETSOCKNAME = 204 -- SYS_GETPEERNAME = 205 -- SYS_SENDTO = 206 -- SYS_RECVFROM = 207 -- SYS_SETSOCKOPT = 208 -- SYS_GETSOCKOPT = 209 -- SYS_SHUTDOWN = 210 -- SYS_SENDMSG = 211 -- SYS_RECVMSG = 212 -- SYS_READAHEAD = 213 -- SYS_BRK = 214 -- SYS_MUNMAP = 215 -- SYS_MREMAP = 216 -- SYS_ADD_KEY = 217 -- SYS_REQUEST_KEY = 218 -- SYS_KEYCTL = 219 -- SYS_CLONE = 220 -- SYS_EXECVE = 221 -- SYS_MMAP = 222 -- SYS_FADVISE64 = 223 -- SYS_SWAPON = 224 -- SYS_SWAPOFF = 225 -- SYS_MPROTECT = 226 -- SYS_MSYNC = 227 -- SYS_MLOCK = 228 -- SYS_MUNLOCK = 229 -- SYS_MLOCKALL = 230 -- SYS_MUNLOCKALL = 231 -- SYS_MINCORE = 232 -- SYS_MADVISE = 233 -- SYS_REMAP_FILE_PAGES = 234 -- SYS_MBIND = 235 -- SYS_GET_MEMPOLICY = 236 -- SYS_SET_MEMPOLICY = 237 -- SYS_MIGRATE_PAGES = 238 -- SYS_MOVE_PAGES = 239 -- SYS_RT_TGSIGQUEUEINFO = 240 -- SYS_PERF_EVENT_OPEN = 241 -- SYS_ACCEPT4 = 242 -- SYS_RECVMMSG = 243 -- SYS_ARCH_SPECIFIC_SYSCALL = 244 -- SYS_WAIT4 = 260 -- SYS_PRLIMIT64 = 261 -- SYS_FANOTIFY_INIT = 262 -- SYS_FANOTIFY_MARK = 263 -- SYS_NAME_TO_HANDLE_AT = 264 -- SYS_OPEN_BY_HANDLE_AT = 265 -- SYS_CLOCK_ADJTIME = 266 -- SYS_SYNCFS = 267 -- SYS_SETNS = 268 -- SYS_SENDMMSG = 269 -- SYS_PROCESS_VM_READV = 270 -- SYS_PROCESS_VM_WRITEV = 271 -- SYS_KCMP = 272 -- SYS_FINIT_MODULE = 273 -- SYS_SCHED_SETATTR = 274 -- SYS_SCHED_GETATTR = 275 -- SYS_RENAMEAT2 = 276 -- SYS_SECCOMP = 277 -- SYS_GETRANDOM = 278 -- SYS_MEMFD_CREATE = 279 -- SYS_BPF = 280 -- SYS_EXECVEAT = 281 -- SYS_USERFAULTFD = 282 -- SYS_MEMBARRIER = 283 -- SYS_MLOCK2 = 284 -- SYS_COPY_FILE_RANGE = 285 -- SYS_PREADV2 = 286 -- SYS_PWRITEV2 = 287 -- SYS_PKEY_MPROTECT = 288 -- SYS_PKEY_ALLOC = 289 -- SYS_PKEY_FREE = 290 -- SYS_STATX = 291 -- SYS_IO_PGETEVENTS = 292 -- SYS_RSEQ = 293 -- SYS_KEXEC_FILE_LOAD = 294 -- SYS_PIDFD_SEND_SIGNAL = 424 -- SYS_IO_URING_SETUP = 425 -- SYS_IO_URING_ENTER = 426 -- SYS_IO_URING_REGISTER = 427 -- SYS_OPEN_TREE = 428 -- SYS_MOVE_MOUNT = 429 -- SYS_FSOPEN = 430 -- SYS_FSCONFIG = 431 -- SYS_FSMOUNT = 432 -- SYS_FSPICK = 433 -- SYS_PIDFD_OPEN = 434 -- SYS_CLONE3 = 435 -- SYS_OPENAT2 = 437 -- SYS_PIDFD_GETFD = 438 -+ SYS_IO_SETUP = 0 -+ SYS_IO_DESTROY = 1 -+ SYS_IO_SUBMIT = 2 -+ SYS_IO_CANCEL = 3 -+ SYS_IO_GETEVENTS = 4 -+ SYS_SETXATTR = 5 -+ SYS_LSETXATTR = 6 -+ SYS_FSETXATTR = 7 -+ SYS_GETXATTR = 8 -+ SYS_LGETXATTR = 9 -+ SYS_FGETXATTR = 10 -+ SYS_LISTXATTR = 11 -+ SYS_LLISTXATTR = 12 -+ SYS_FLISTXATTR = 13 -+ SYS_REMOVEXATTR = 14 -+ SYS_LREMOVEXATTR = 15 -+ SYS_FREMOVEXATTR = 16 -+ SYS_GETCWD = 17 -+ SYS_LOOKUP_DCOOKIE = 18 -+ SYS_EVENTFD2 = 19 -+ SYS_EPOLL_CREATE1 = 20 -+ SYS_EPOLL_CTL = 21 -+ SYS_EPOLL_PWAIT = 22 -+ SYS_DUP = 23 -+ SYS_DUP3 = 24 -+ SYS_FCNTL = 25 -+ SYS_INOTIFY_INIT1 = 26 -+ SYS_INOTIFY_ADD_WATCH = 27 -+ SYS_INOTIFY_RM_WATCH = 28 -+ SYS_IOCTL = 29 -+ SYS_IOPRIO_SET = 30 -+ SYS_IOPRIO_GET = 31 -+ SYS_FLOCK = 32 -+ SYS_MKNODAT = 33 -+ SYS_MKDIRAT = 34 -+ SYS_UNLINKAT = 35 -+ SYS_SYMLINKAT = 36 -+ SYS_LINKAT = 37 -+ SYS_UMOUNT2 = 39 -+ SYS_MOUNT = 40 -+ SYS_PIVOT_ROOT = 41 -+ SYS_NFSSERVCTL = 42 -+ SYS_STATFS = 43 -+ SYS_FSTATFS = 44 -+ SYS_TRUNCATE = 45 -+ SYS_FTRUNCATE = 46 -+ SYS_FALLOCATE = 47 -+ SYS_FACCESSAT = 48 -+ SYS_CHDIR = 49 -+ SYS_FCHDIR = 50 -+ SYS_CHROOT = 51 -+ SYS_FCHMOD = 52 -+ SYS_FCHMODAT = 53 -+ SYS_FCHOWNAT = 54 -+ SYS_FCHOWN = 55 -+ SYS_OPENAT = 56 -+ SYS_CLOSE = 57 -+ SYS_VHANGUP = 58 -+ SYS_PIPE2 = 59 -+ SYS_QUOTACTL = 60 -+ SYS_GETDENTS64 = 61 -+ SYS_LSEEK = 62 -+ SYS_READ = 63 -+ SYS_WRITE = 64 -+ SYS_READV = 65 -+ SYS_WRITEV = 66 -+ SYS_PREAD64 = 67 -+ SYS_PWRITE64 = 68 -+ SYS_PREADV = 69 -+ SYS_PWRITEV = 70 -+ SYS_SENDFILE = 71 -+ SYS_PSELECT6 = 72 -+ SYS_PPOLL = 73 -+ SYS_SIGNALFD4 = 74 -+ SYS_VMSPLICE = 75 -+ SYS_SPLICE = 76 -+ SYS_TEE = 77 -+ SYS_READLINKAT = 78 -+ SYS_FSTATAT = 79 -+ SYS_FSTAT = 80 -+ SYS_SYNC = 81 -+ SYS_FSYNC = 82 -+ SYS_FDATASYNC = 83 -+ SYS_SYNC_FILE_RANGE = 84 -+ SYS_TIMERFD_CREATE = 85 -+ SYS_TIMERFD_SETTIME = 86 -+ SYS_TIMERFD_GETTIME = 87 -+ SYS_UTIMENSAT = 88 -+ SYS_ACCT = 89 -+ SYS_CAPGET = 90 -+ SYS_CAPSET = 91 -+ SYS_PERSONALITY = 92 -+ SYS_EXIT = 93 -+ SYS_EXIT_GROUP = 94 -+ SYS_WAITID = 95 -+ SYS_SET_TID_ADDRESS = 96 -+ SYS_UNSHARE = 97 -+ SYS_FUTEX = 98 -+ SYS_SET_ROBUST_LIST = 99 -+ SYS_GET_ROBUST_LIST = 100 -+ SYS_NANOSLEEP = 101 -+ SYS_GETITIMER = 102 -+ SYS_SETITIMER = 103 -+ SYS_KEXEC_LOAD = 104 -+ SYS_INIT_MODULE = 105 -+ SYS_DELETE_MODULE = 106 -+ SYS_TIMER_CREATE = 107 -+ SYS_TIMER_GETTIME = 108 -+ SYS_TIMER_GETOVERRUN = 109 -+ SYS_TIMER_SETTIME = 110 -+ SYS_TIMER_DELETE = 111 -+ SYS_CLOCK_SETTIME = 112 -+ SYS_CLOCK_GETTIME = 113 -+ SYS_CLOCK_GETRES = 114 -+ SYS_CLOCK_NANOSLEEP = 115 -+ SYS_SYSLOG = 116 -+ SYS_PTRACE = 117 -+ SYS_SCHED_SETPARAM = 118 -+ SYS_SCHED_SETSCHEDULER = 119 -+ SYS_SCHED_GETSCHEDULER = 120 -+ SYS_SCHED_GETPARAM = 121 -+ SYS_SCHED_SETAFFINITY = 122 -+ SYS_SCHED_GETAFFINITY = 123 -+ SYS_SCHED_YIELD = 124 -+ SYS_SCHED_GET_PRIORITY_MAX = 125 -+ SYS_SCHED_GET_PRIORITY_MIN = 126 -+ SYS_SCHED_RR_GET_INTERVAL = 127 -+ SYS_RESTART_SYSCALL = 128 -+ SYS_KILL = 129 -+ SYS_TKILL = 130 -+ SYS_TGKILL = 131 -+ SYS_SIGALTSTACK = 132 -+ SYS_RT_SIGSUSPEND = 133 -+ SYS_RT_SIGACTION = 134 -+ SYS_RT_SIGPROCMASK = 135 -+ SYS_RT_SIGPENDING = 136 -+ SYS_RT_SIGTIMEDWAIT = 137 -+ SYS_RT_SIGQUEUEINFO = 138 -+ SYS_RT_SIGRETURN = 139 -+ SYS_SETPRIORITY = 140 -+ SYS_GETPRIORITY = 141 -+ SYS_REBOOT = 142 -+ SYS_SETREGID = 143 -+ SYS_SETGID = 144 -+ SYS_SETREUID = 145 -+ SYS_SETUID = 146 -+ SYS_SETRESUID = 147 -+ SYS_GETRESUID = 148 -+ SYS_SETRESGID = 149 -+ SYS_GETRESGID = 150 -+ SYS_SETFSUID = 151 -+ SYS_SETFSGID = 152 -+ SYS_TIMES = 153 -+ SYS_SETPGID = 154 -+ SYS_GETPGID = 155 -+ SYS_GETSID = 156 -+ SYS_SETSID = 157 -+ SYS_GETGROUPS = 158 -+ SYS_SETGROUPS = 159 -+ SYS_UNAME = 160 -+ SYS_SETHOSTNAME = 161 -+ SYS_SETDOMAINNAME = 162 -+ SYS_GETRLIMIT = 163 -+ SYS_SETRLIMIT = 164 -+ SYS_GETRUSAGE = 165 -+ SYS_UMASK = 166 -+ SYS_PRCTL = 167 -+ SYS_GETCPU = 168 -+ SYS_GETTIMEOFDAY = 169 -+ SYS_SETTIMEOFDAY = 170 -+ SYS_ADJTIMEX = 171 -+ SYS_GETPID = 172 -+ SYS_GETPPID = 173 -+ SYS_GETUID = 174 -+ SYS_GETEUID = 175 -+ SYS_GETGID = 176 -+ SYS_GETEGID = 177 -+ SYS_GETTID = 178 -+ SYS_SYSINFO = 179 -+ SYS_MQ_OPEN = 180 -+ SYS_MQ_UNLINK = 181 -+ SYS_MQ_TIMEDSEND = 182 -+ SYS_MQ_TIMEDRECEIVE = 183 -+ SYS_MQ_NOTIFY = 184 -+ SYS_MQ_GETSETATTR = 185 -+ SYS_MSGGET = 186 -+ SYS_MSGCTL = 187 -+ SYS_MSGRCV = 188 -+ SYS_MSGSND = 189 -+ SYS_SEMGET = 190 -+ SYS_SEMCTL = 191 -+ SYS_SEMTIMEDOP = 192 -+ SYS_SEMOP = 193 -+ SYS_SHMGET = 194 -+ SYS_SHMCTL = 195 -+ SYS_SHMAT = 196 -+ SYS_SHMDT = 197 -+ SYS_SOCKET = 198 -+ SYS_SOCKETPAIR = 199 -+ SYS_BIND = 200 -+ SYS_LISTEN = 201 -+ SYS_ACCEPT = 202 -+ SYS_CONNECT = 203 -+ SYS_GETSOCKNAME = 204 -+ SYS_GETPEERNAME = 205 -+ SYS_SENDTO = 206 -+ SYS_RECVFROM = 207 -+ SYS_SETSOCKOPT = 208 -+ SYS_GETSOCKOPT = 209 -+ SYS_SHUTDOWN = 210 -+ SYS_SENDMSG = 211 -+ SYS_RECVMSG = 212 -+ SYS_READAHEAD = 213 -+ SYS_BRK = 214 -+ SYS_MUNMAP = 215 -+ SYS_MREMAP = 216 -+ SYS_ADD_KEY = 217 -+ SYS_REQUEST_KEY = 218 -+ SYS_KEYCTL = 219 -+ SYS_CLONE = 220 -+ SYS_EXECVE = 221 -+ SYS_MMAP = 222 -+ SYS_FADVISE64 = 223 -+ SYS_SWAPON = 224 -+ SYS_SWAPOFF = 225 -+ SYS_MPROTECT = 226 -+ SYS_MSYNC = 227 -+ SYS_MLOCK = 228 -+ SYS_MUNLOCK = 229 -+ SYS_MLOCKALL = 230 -+ SYS_MUNLOCKALL = 231 -+ SYS_MINCORE = 232 -+ SYS_MADVISE = 233 -+ SYS_REMAP_FILE_PAGES = 234 -+ SYS_MBIND = 235 -+ SYS_GET_MEMPOLICY = 236 -+ SYS_SET_MEMPOLICY = 237 -+ SYS_MIGRATE_PAGES = 238 -+ SYS_MOVE_PAGES = 239 -+ SYS_RT_TGSIGQUEUEINFO = 240 -+ SYS_PERF_EVENT_OPEN = 241 -+ SYS_ACCEPT4 = 242 -+ SYS_RECVMMSG = 243 -+ SYS_ARCH_SPECIFIC_SYSCALL = 244 -+ SYS_WAIT4 = 260 -+ SYS_PRLIMIT64 = 261 -+ SYS_FANOTIFY_INIT = 262 -+ SYS_FANOTIFY_MARK = 263 -+ SYS_NAME_TO_HANDLE_AT = 264 -+ SYS_OPEN_BY_HANDLE_AT = 265 -+ SYS_CLOCK_ADJTIME = 266 -+ SYS_SYNCFS = 267 -+ SYS_SETNS = 268 -+ SYS_SENDMMSG = 269 -+ SYS_PROCESS_VM_READV = 270 -+ SYS_PROCESS_VM_WRITEV = 271 -+ SYS_KCMP = 272 -+ SYS_FINIT_MODULE = 273 -+ SYS_SCHED_SETATTR = 274 -+ SYS_SCHED_GETATTR = 275 -+ SYS_RENAMEAT2 = 276 -+ SYS_SECCOMP = 277 -+ SYS_GETRANDOM = 278 -+ SYS_MEMFD_CREATE = 279 -+ SYS_BPF = 280 -+ SYS_EXECVEAT = 281 -+ SYS_USERFAULTFD = 282 -+ SYS_MEMBARRIER = 283 -+ SYS_MLOCK2 = 284 -+ SYS_COPY_FILE_RANGE = 285 -+ SYS_PREADV2 = 286 -+ SYS_PWRITEV2 = 287 -+ SYS_PKEY_MPROTECT = 288 -+ SYS_PKEY_ALLOC = 289 -+ SYS_PKEY_FREE = 290 -+ SYS_STATX = 291 -+ SYS_IO_PGETEVENTS = 292 -+ SYS_RSEQ = 293 -+ SYS_KEXEC_FILE_LOAD = 294 -+ SYS_PIDFD_SEND_SIGNAL = 424 -+ SYS_IO_URING_SETUP = 425 -+ SYS_IO_URING_ENTER = 426 -+ SYS_IO_URING_REGISTER = 427 -+ SYS_OPEN_TREE = 428 -+ SYS_MOVE_MOUNT = 429 -+ SYS_FSOPEN = 430 -+ SYS_FSCONFIG = 431 -+ SYS_FSMOUNT = 432 -+ SYS_FSPICK = 433 -+ SYS_PIDFD_OPEN = 434 -+ SYS_CLONE3 = 435 -+ SYS_CLOSE_RANGE = 436 -+ SYS_OPENAT2 = 437 -+ SYS_PIDFD_GETFD = 438 -+ SYS_FACCESSAT2 = 439 -+ SYS_PROCESS_MADVISE = 440 -+ SYS_EPOLL_PWAIT2 = 441 -+ SYS_MOUNT_SETATTR = 442 -+ SYS_QUOTACTL_FD = 443 -+ SYS_LANDLOCK_CREATE_RULESET = 444 -+ SYS_LANDLOCK_ADD_RULE = 445 -+ SYS_LANDLOCK_RESTRICT_SELF = 446 -+ SYS_MEMFD_SECRET = 447 -+ SYS_PROCESS_MRELEASE = 448 -+ SYS_FUTEX_WAITV = 449 -+ SYS_SET_MEMPOLICY_HOME_NODE = 450 - ) -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go -index 2766500..7ea4652 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go -@@ -1,365 +1,378 @@ --// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include -fsigned-char /tmp/include/asm/unistd.h -+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/s390x/include -fsigned-char /tmp/s390x/include/asm/unistd.h - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build s390x && linux - // +build s390x,linux - - package unix - - const ( -- SYS_EXIT = 1 -- SYS_FORK = 2 -- SYS_READ = 3 -- SYS_WRITE = 4 -- SYS_OPEN = 5 -- SYS_CLOSE = 6 -- SYS_RESTART_SYSCALL = 7 -- SYS_CREAT = 8 -- SYS_LINK = 9 -- SYS_UNLINK = 10 -- SYS_EXECVE = 11 -- SYS_CHDIR = 12 -- SYS_MKNOD = 14 -- SYS_CHMOD = 15 -- SYS_LSEEK = 19 -- SYS_GETPID = 20 -- SYS_MOUNT = 21 -- SYS_UMOUNT = 22 -- SYS_PTRACE = 26 -- SYS_ALARM = 27 -- SYS_PAUSE = 29 -- SYS_UTIME = 30 -- SYS_ACCESS = 33 -- SYS_NICE = 34 -- SYS_SYNC = 36 -- SYS_KILL = 37 -- SYS_RENAME = 38 -- SYS_MKDIR = 39 -- SYS_RMDIR = 40 -- SYS_DUP = 41 -- SYS_PIPE = 42 -- SYS_TIMES = 43 -- SYS_BRK = 45 -- SYS_SIGNAL = 48 -- SYS_ACCT = 51 -- SYS_UMOUNT2 = 52 -- SYS_IOCTL = 54 -- SYS_FCNTL = 55 -- SYS_SETPGID = 57 -- SYS_UMASK = 60 -- SYS_CHROOT = 61 -- SYS_USTAT = 62 -- SYS_DUP2 = 63 -- SYS_GETPPID = 64 -- SYS_GETPGRP = 65 -- SYS_SETSID = 66 -- SYS_SIGACTION = 67 -- SYS_SIGSUSPEND = 72 -- SYS_SIGPENDING = 73 -- SYS_SETHOSTNAME = 74 -- SYS_SETRLIMIT = 75 -- SYS_GETRUSAGE = 77 -- SYS_GETTIMEOFDAY = 78 -- SYS_SETTIMEOFDAY = 79 -- SYS_SYMLINK = 83 -- SYS_READLINK = 85 -- SYS_USELIB = 86 -- SYS_SWAPON = 87 -- SYS_REBOOT = 88 -- SYS_READDIR = 89 -- SYS_MMAP = 90 -- SYS_MUNMAP = 91 -- SYS_TRUNCATE = 92 -- SYS_FTRUNCATE = 93 -- SYS_FCHMOD = 94 -- SYS_GETPRIORITY = 96 -- SYS_SETPRIORITY = 97 -- SYS_STATFS = 99 -- SYS_FSTATFS = 100 -- SYS_SOCKETCALL = 102 -- SYS_SYSLOG = 103 -- SYS_SETITIMER = 104 -- SYS_GETITIMER = 105 -- SYS_STAT = 106 -- SYS_LSTAT = 107 -- SYS_FSTAT = 108 -- SYS_LOOKUP_DCOOKIE = 110 -- SYS_VHANGUP = 111 -- SYS_IDLE = 112 -- SYS_WAIT4 = 114 -- SYS_SWAPOFF = 115 -- SYS_SYSINFO = 116 -- SYS_IPC = 117 -- SYS_FSYNC = 118 -- SYS_SIGRETURN = 119 -- SYS_CLONE = 120 -- SYS_SETDOMAINNAME = 121 -- SYS_UNAME = 122 -- SYS_ADJTIMEX = 124 -- SYS_MPROTECT = 125 -- SYS_SIGPROCMASK = 126 -- SYS_CREATE_MODULE = 127 -- SYS_INIT_MODULE = 128 -- SYS_DELETE_MODULE = 129 -- SYS_GET_KERNEL_SYMS = 130 -- SYS_QUOTACTL = 131 -- SYS_GETPGID = 132 -- SYS_FCHDIR = 133 -- SYS_BDFLUSH = 134 -- SYS_SYSFS = 135 -- SYS_PERSONALITY = 136 -- SYS_AFS_SYSCALL = 137 -- SYS_GETDENTS = 141 -- SYS_SELECT = 142 -- SYS_FLOCK = 143 -- SYS_MSYNC = 144 -- SYS_READV = 145 -- SYS_WRITEV = 146 -- SYS_GETSID = 147 -- SYS_FDATASYNC = 148 -- SYS__SYSCTL = 149 -- SYS_MLOCK = 150 -- SYS_MUNLOCK = 151 -- SYS_MLOCKALL = 152 -- SYS_MUNLOCKALL = 153 -- SYS_SCHED_SETPARAM = 154 -- SYS_SCHED_GETPARAM = 155 -- SYS_SCHED_SETSCHEDULER = 156 -- SYS_SCHED_GETSCHEDULER = 157 -- SYS_SCHED_YIELD = 158 -- SYS_SCHED_GET_PRIORITY_MAX = 159 -- SYS_SCHED_GET_PRIORITY_MIN = 160 -- SYS_SCHED_RR_GET_INTERVAL = 161 -- SYS_NANOSLEEP = 162 -- SYS_MREMAP = 163 -- SYS_QUERY_MODULE = 167 -- SYS_POLL = 168 -- SYS_NFSSERVCTL = 169 -- SYS_PRCTL = 172 -- SYS_RT_SIGRETURN = 173 -- SYS_RT_SIGACTION = 174 -- SYS_RT_SIGPROCMASK = 175 -- SYS_RT_SIGPENDING = 176 -- SYS_RT_SIGTIMEDWAIT = 177 -- SYS_RT_SIGQUEUEINFO = 178 -- SYS_RT_SIGSUSPEND = 179 -- SYS_PREAD64 = 180 -- SYS_PWRITE64 = 181 -- SYS_GETCWD = 183 -- SYS_CAPGET = 184 -- SYS_CAPSET = 185 -- SYS_SIGALTSTACK = 186 -- SYS_SENDFILE = 187 -- SYS_GETPMSG = 188 -- SYS_PUTPMSG = 189 -- SYS_VFORK = 190 -- SYS_GETRLIMIT = 191 -- SYS_LCHOWN = 198 -- SYS_GETUID = 199 -- SYS_GETGID = 200 -- SYS_GETEUID = 201 -- SYS_GETEGID = 202 -- SYS_SETREUID = 203 -- SYS_SETREGID = 204 -- SYS_GETGROUPS = 205 -- SYS_SETGROUPS = 206 -- SYS_FCHOWN = 207 -- SYS_SETRESUID = 208 -- SYS_GETRESUID = 209 -- SYS_SETRESGID = 210 -- SYS_GETRESGID = 211 -- SYS_CHOWN = 212 -- SYS_SETUID = 213 -- SYS_SETGID = 214 -- SYS_SETFSUID = 215 -- SYS_SETFSGID = 216 -- SYS_PIVOT_ROOT = 217 -- SYS_MINCORE = 218 -- SYS_MADVISE = 219 -- SYS_GETDENTS64 = 220 -- SYS_READAHEAD = 222 -- SYS_SETXATTR = 224 -- SYS_LSETXATTR = 225 -- SYS_FSETXATTR = 226 -- SYS_GETXATTR = 227 -- SYS_LGETXATTR = 228 -- SYS_FGETXATTR = 229 -- SYS_LISTXATTR = 230 -- SYS_LLISTXATTR = 231 -- SYS_FLISTXATTR = 232 -- SYS_REMOVEXATTR = 233 -- SYS_LREMOVEXATTR = 234 -- SYS_FREMOVEXATTR = 235 -- SYS_GETTID = 236 -- SYS_TKILL = 237 -- SYS_FUTEX = 238 -- SYS_SCHED_SETAFFINITY = 239 -- SYS_SCHED_GETAFFINITY = 240 -- SYS_TGKILL = 241 -- SYS_IO_SETUP = 243 -- SYS_IO_DESTROY = 244 -- SYS_IO_GETEVENTS = 245 -- SYS_IO_SUBMIT = 246 -- SYS_IO_CANCEL = 247 -- SYS_EXIT_GROUP = 248 -- SYS_EPOLL_CREATE = 249 -- SYS_EPOLL_CTL = 250 -- SYS_EPOLL_WAIT = 251 -- SYS_SET_TID_ADDRESS = 252 -- SYS_FADVISE64 = 253 -- SYS_TIMER_CREATE = 254 -- SYS_TIMER_SETTIME = 255 -- SYS_TIMER_GETTIME = 256 -- SYS_TIMER_GETOVERRUN = 257 -- SYS_TIMER_DELETE = 258 -- SYS_CLOCK_SETTIME = 259 -- SYS_CLOCK_GETTIME = 260 -- SYS_CLOCK_GETRES = 261 -- SYS_CLOCK_NANOSLEEP = 262 -- SYS_STATFS64 = 265 -- SYS_FSTATFS64 = 266 -- SYS_REMAP_FILE_PAGES = 267 -- SYS_MBIND = 268 -- SYS_GET_MEMPOLICY = 269 -- SYS_SET_MEMPOLICY = 270 -- SYS_MQ_OPEN = 271 -- SYS_MQ_UNLINK = 272 -- SYS_MQ_TIMEDSEND = 273 -- SYS_MQ_TIMEDRECEIVE = 274 -- SYS_MQ_NOTIFY = 275 -- SYS_MQ_GETSETATTR = 276 -- SYS_KEXEC_LOAD = 277 -- SYS_ADD_KEY = 278 -- SYS_REQUEST_KEY = 279 -- SYS_KEYCTL = 280 -- SYS_WAITID = 281 -- SYS_IOPRIO_SET = 282 -- SYS_IOPRIO_GET = 283 -- SYS_INOTIFY_INIT = 284 -- SYS_INOTIFY_ADD_WATCH = 285 -- SYS_INOTIFY_RM_WATCH = 286 -- SYS_MIGRATE_PAGES = 287 -- SYS_OPENAT = 288 -- SYS_MKDIRAT = 289 -- SYS_MKNODAT = 290 -- SYS_FCHOWNAT = 291 -- SYS_FUTIMESAT = 292 -- SYS_NEWFSTATAT = 293 -- SYS_UNLINKAT = 294 -- SYS_RENAMEAT = 295 -- SYS_LINKAT = 296 -- SYS_SYMLINKAT = 297 -- SYS_READLINKAT = 298 -- SYS_FCHMODAT = 299 -- SYS_FACCESSAT = 300 -- SYS_PSELECT6 = 301 -- SYS_PPOLL = 302 -- SYS_UNSHARE = 303 -- SYS_SET_ROBUST_LIST = 304 -- SYS_GET_ROBUST_LIST = 305 -- SYS_SPLICE = 306 -- SYS_SYNC_FILE_RANGE = 307 -- SYS_TEE = 308 -- SYS_VMSPLICE = 309 -- SYS_MOVE_PAGES = 310 -- SYS_GETCPU = 311 -- SYS_EPOLL_PWAIT = 312 -- SYS_UTIMES = 313 -- SYS_FALLOCATE = 314 -- SYS_UTIMENSAT = 315 -- SYS_SIGNALFD = 316 -- SYS_TIMERFD = 317 -- SYS_EVENTFD = 318 -- SYS_TIMERFD_CREATE = 319 -- SYS_TIMERFD_SETTIME = 320 -- SYS_TIMERFD_GETTIME = 321 -- SYS_SIGNALFD4 = 322 -- SYS_EVENTFD2 = 323 -- SYS_INOTIFY_INIT1 = 324 -- SYS_PIPE2 = 325 -- SYS_DUP3 = 326 -- SYS_EPOLL_CREATE1 = 327 -- SYS_PREADV = 328 -- SYS_PWRITEV = 329 -- SYS_RT_TGSIGQUEUEINFO = 330 -- SYS_PERF_EVENT_OPEN = 331 -- SYS_FANOTIFY_INIT = 332 -- SYS_FANOTIFY_MARK = 333 -- SYS_PRLIMIT64 = 334 -- SYS_NAME_TO_HANDLE_AT = 335 -- SYS_OPEN_BY_HANDLE_AT = 336 -- SYS_CLOCK_ADJTIME = 337 -- SYS_SYNCFS = 338 -- SYS_SETNS = 339 -- SYS_PROCESS_VM_READV = 340 -- SYS_PROCESS_VM_WRITEV = 341 -- SYS_S390_RUNTIME_INSTR = 342 -- SYS_KCMP = 343 -- SYS_FINIT_MODULE = 344 -- SYS_SCHED_SETATTR = 345 -- SYS_SCHED_GETATTR = 346 -- SYS_RENAMEAT2 = 347 -- SYS_SECCOMP = 348 -- SYS_GETRANDOM = 349 -- SYS_MEMFD_CREATE = 350 -- SYS_BPF = 351 -- SYS_S390_PCI_MMIO_WRITE = 352 -- SYS_S390_PCI_MMIO_READ = 353 -- SYS_EXECVEAT = 354 -- SYS_USERFAULTFD = 355 -- SYS_MEMBARRIER = 356 -- SYS_RECVMMSG = 357 -- SYS_SENDMMSG = 358 -- SYS_SOCKET = 359 -- SYS_SOCKETPAIR = 360 -- SYS_BIND = 361 -- SYS_CONNECT = 362 -- SYS_LISTEN = 363 -- SYS_ACCEPT4 = 364 -- SYS_GETSOCKOPT = 365 -- SYS_SETSOCKOPT = 366 -- SYS_GETSOCKNAME = 367 -- SYS_GETPEERNAME = 368 -- SYS_SENDTO = 369 -- SYS_SENDMSG = 370 -- SYS_RECVFROM = 371 -- SYS_RECVMSG = 372 -- SYS_SHUTDOWN = 373 -- SYS_MLOCK2 = 374 -- SYS_COPY_FILE_RANGE = 375 -- SYS_PREADV2 = 376 -- SYS_PWRITEV2 = 377 -- SYS_S390_GUARDED_STORAGE = 378 -- SYS_STATX = 379 -- SYS_S390_STHYI = 380 -- SYS_KEXEC_FILE_LOAD = 381 -- SYS_IO_PGETEVENTS = 382 -- SYS_RSEQ = 383 -- SYS_PKEY_MPROTECT = 384 -- SYS_PKEY_ALLOC = 385 -- SYS_PKEY_FREE = 386 -- SYS_SEMTIMEDOP = 392 -- SYS_SEMGET = 393 -- SYS_SEMCTL = 394 -- SYS_SHMGET = 395 -- SYS_SHMCTL = 396 -- SYS_SHMAT = 397 -- SYS_SHMDT = 398 -- SYS_MSGGET = 399 -- SYS_MSGSND = 400 -- SYS_MSGRCV = 401 -- SYS_MSGCTL = 402 -- SYS_PIDFD_SEND_SIGNAL = 424 -- SYS_IO_URING_SETUP = 425 -- SYS_IO_URING_ENTER = 426 -- SYS_IO_URING_REGISTER = 427 -- SYS_OPEN_TREE = 428 -- SYS_MOVE_MOUNT = 429 -- SYS_FSOPEN = 430 -- SYS_FSCONFIG = 431 -- SYS_FSMOUNT = 432 -- SYS_FSPICK = 433 -- SYS_PIDFD_OPEN = 434 -- SYS_CLONE3 = 435 -- SYS_OPENAT2 = 437 -- SYS_PIDFD_GETFD = 438 -+ SYS_EXIT = 1 -+ SYS_FORK = 2 -+ SYS_READ = 3 -+ SYS_WRITE = 4 -+ SYS_OPEN = 5 -+ SYS_CLOSE = 6 -+ SYS_RESTART_SYSCALL = 7 -+ SYS_CREAT = 8 -+ SYS_LINK = 9 -+ SYS_UNLINK = 10 -+ SYS_EXECVE = 11 -+ SYS_CHDIR = 12 -+ SYS_MKNOD = 14 -+ SYS_CHMOD = 15 -+ SYS_LSEEK = 19 -+ SYS_GETPID = 20 -+ SYS_MOUNT = 21 -+ SYS_UMOUNT = 22 -+ SYS_PTRACE = 26 -+ SYS_ALARM = 27 -+ SYS_PAUSE = 29 -+ SYS_UTIME = 30 -+ SYS_ACCESS = 33 -+ SYS_NICE = 34 -+ SYS_SYNC = 36 -+ SYS_KILL = 37 -+ SYS_RENAME = 38 -+ SYS_MKDIR = 39 -+ SYS_RMDIR = 40 -+ SYS_DUP = 41 -+ SYS_PIPE = 42 -+ SYS_TIMES = 43 -+ SYS_BRK = 45 -+ SYS_SIGNAL = 48 -+ SYS_ACCT = 51 -+ SYS_UMOUNT2 = 52 -+ SYS_IOCTL = 54 -+ SYS_FCNTL = 55 -+ SYS_SETPGID = 57 -+ SYS_UMASK = 60 -+ SYS_CHROOT = 61 -+ SYS_USTAT = 62 -+ SYS_DUP2 = 63 -+ SYS_GETPPID = 64 -+ SYS_GETPGRP = 65 -+ SYS_SETSID = 66 -+ SYS_SIGACTION = 67 -+ SYS_SIGSUSPEND = 72 -+ SYS_SIGPENDING = 73 -+ SYS_SETHOSTNAME = 74 -+ SYS_SETRLIMIT = 75 -+ SYS_GETRUSAGE = 77 -+ SYS_GETTIMEOFDAY = 78 -+ SYS_SETTIMEOFDAY = 79 -+ SYS_SYMLINK = 83 -+ SYS_READLINK = 85 -+ SYS_USELIB = 86 -+ SYS_SWAPON = 87 -+ SYS_REBOOT = 88 -+ SYS_READDIR = 89 -+ SYS_MMAP = 90 -+ SYS_MUNMAP = 91 -+ SYS_TRUNCATE = 92 -+ SYS_FTRUNCATE = 93 -+ SYS_FCHMOD = 94 -+ SYS_GETPRIORITY = 96 -+ SYS_SETPRIORITY = 97 -+ SYS_STATFS = 99 -+ SYS_FSTATFS = 100 -+ SYS_SOCKETCALL = 102 -+ SYS_SYSLOG = 103 -+ SYS_SETITIMER = 104 -+ SYS_GETITIMER = 105 -+ SYS_STAT = 106 -+ SYS_LSTAT = 107 -+ SYS_FSTAT = 108 -+ SYS_LOOKUP_DCOOKIE = 110 -+ SYS_VHANGUP = 111 -+ SYS_IDLE = 112 -+ SYS_WAIT4 = 114 -+ SYS_SWAPOFF = 115 -+ SYS_SYSINFO = 116 -+ SYS_IPC = 117 -+ SYS_FSYNC = 118 -+ SYS_SIGRETURN = 119 -+ SYS_CLONE = 120 -+ SYS_SETDOMAINNAME = 121 -+ SYS_UNAME = 122 -+ SYS_ADJTIMEX = 124 -+ SYS_MPROTECT = 125 -+ SYS_SIGPROCMASK = 126 -+ SYS_CREATE_MODULE = 127 -+ SYS_INIT_MODULE = 128 -+ SYS_DELETE_MODULE = 129 -+ SYS_GET_KERNEL_SYMS = 130 -+ SYS_QUOTACTL = 131 -+ SYS_GETPGID = 132 -+ SYS_FCHDIR = 133 -+ SYS_BDFLUSH = 134 -+ SYS_SYSFS = 135 -+ SYS_PERSONALITY = 136 -+ SYS_AFS_SYSCALL = 137 -+ SYS_GETDENTS = 141 -+ SYS_SELECT = 142 -+ SYS_FLOCK = 143 -+ SYS_MSYNC = 144 -+ SYS_READV = 145 -+ SYS_WRITEV = 146 -+ SYS_GETSID = 147 -+ SYS_FDATASYNC = 148 -+ SYS__SYSCTL = 149 -+ SYS_MLOCK = 150 -+ SYS_MUNLOCK = 151 -+ SYS_MLOCKALL = 152 -+ SYS_MUNLOCKALL = 153 -+ SYS_SCHED_SETPARAM = 154 -+ SYS_SCHED_GETPARAM = 155 -+ SYS_SCHED_SETSCHEDULER = 156 -+ SYS_SCHED_GETSCHEDULER = 157 -+ SYS_SCHED_YIELD = 158 -+ SYS_SCHED_GET_PRIORITY_MAX = 159 -+ SYS_SCHED_GET_PRIORITY_MIN = 160 -+ SYS_SCHED_RR_GET_INTERVAL = 161 -+ SYS_NANOSLEEP = 162 -+ SYS_MREMAP = 163 -+ SYS_QUERY_MODULE = 167 -+ SYS_POLL = 168 -+ SYS_NFSSERVCTL = 169 -+ SYS_PRCTL = 172 -+ SYS_RT_SIGRETURN = 173 -+ SYS_RT_SIGACTION = 174 -+ SYS_RT_SIGPROCMASK = 175 -+ SYS_RT_SIGPENDING = 176 -+ SYS_RT_SIGTIMEDWAIT = 177 -+ SYS_RT_SIGQUEUEINFO = 178 -+ SYS_RT_SIGSUSPEND = 179 -+ SYS_PREAD64 = 180 -+ SYS_PWRITE64 = 181 -+ SYS_GETCWD = 183 -+ SYS_CAPGET = 184 -+ SYS_CAPSET = 185 -+ SYS_SIGALTSTACK = 186 -+ SYS_SENDFILE = 187 -+ SYS_GETPMSG = 188 -+ SYS_PUTPMSG = 189 -+ SYS_VFORK = 190 -+ SYS_GETRLIMIT = 191 -+ SYS_LCHOWN = 198 -+ SYS_GETUID = 199 -+ SYS_GETGID = 200 -+ SYS_GETEUID = 201 -+ SYS_GETEGID = 202 -+ SYS_SETREUID = 203 -+ SYS_SETREGID = 204 -+ SYS_GETGROUPS = 205 -+ SYS_SETGROUPS = 206 -+ SYS_FCHOWN = 207 -+ SYS_SETRESUID = 208 -+ SYS_GETRESUID = 209 -+ SYS_SETRESGID = 210 -+ SYS_GETRESGID = 211 -+ SYS_CHOWN = 212 -+ SYS_SETUID = 213 -+ SYS_SETGID = 214 -+ SYS_SETFSUID = 215 -+ SYS_SETFSGID = 216 -+ SYS_PIVOT_ROOT = 217 -+ SYS_MINCORE = 218 -+ SYS_MADVISE = 219 -+ SYS_GETDENTS64 = 220 -+ SYS_READAHEAD = 222 -+ SYS_SETXATTR = 224 -+ SYS_LSETXATTR = 225 -+ SYS_FSETXATTR = 226 -+ SYS_GETXATTR = 227 -+ SYS_LGETXATTR = 228 -+ SYS_FGETXATTR = 229 -+ SYS_LISTXATTR = 230 -+ SYS_LLISTXATTR = 231 -+ SYS_FLISTXATTR = 232 -+ SYS_REMOVEXATTR = 233 -+ SYS_LREMOVEXATTR = 234 -+ SYS_FREMOVEXATTR = 235 -+ SYS_GETTID = 236 -+ SYS_TKILL = 237 -+ SYS_FUTEX = 238 -+ SYS_SCHED_SETAFFINITY = 239 -+ SYS_SCHED_GETAFFINITY = 240 -+ SYS_TGKILL = 241 -+ SYS_IO_SETUP = 243 -+ SYS_IO_DESTROY = 244 -+ SYS_IO_GETEVENTS = 245 -+ SYS_IO_SUBMIT = 246 -+ SYS_IO_CANCEL = 247 -+ SYS_EXIT_GROUP = 248 -+ SYS_EPOLL_CREATE = 249 -+ SYS_EPOLL_CTL = 250 -+ SYS_EPOLL_WAIT = 251 -+ SYS_SET_TID_ADDRESS = 252 -+ SYS_FADVISE64 = 253 -+ SYS_TIMER_CREATE = 254 -+ SYS_TIMER_SETTIME = 255 -+ SYS_TIMER_GETTIME = 256 -+ SYS_TIMER_GETOVERRUN = 257 -+ SYS_TIMER_DELETE = 258 -+ SYS_CLOCK_SETTIME = 259 -+ SYS_CLOCK_GETTIME = 260 -+ SYS_CLOCK_GETRES = 261 -+ SYS_CLOCK_NANOSLEEP = 262 -+ SYS_STATFS64 = 265 -+ SYS_FSTATFS64 = 266 -+ SYS_REMAP_FILE_PAGES = 267 -+ SYS_MBIND = 268 -+ SYS_GET_MEMPOLICY = 269 -+ SYS_SET_MEMPOLICY = 270 -+ SYS_MQ_OPEN = 271 -+ SYS_MQ_UNLINK = 272 -+ SYS_MQ_TIMEDSEND = 273 -+ SYS_MQ_TIMEDRECEIVE = 274 -+ SYS_MQ_NOTIFY = 275 -+ SYS_MQ_GETSETATTR = 276 -+ SYS_KEXEC_LOAD = 277 -+ SYS_ADD_KEY = 278 -+ SYS_REQUEST_KEY = 279 -+ SYS_KEYCTL = 280 -+ SYS_WAITID = 281 -+ SYS_IOPRIO_SET = 282 -+ SYS_IOPRIO_GET = 283 -+ SYS_INOTIFY_INIT = 284 -+ SYS_INOTIFY_ADD_WATCH = 285 -+ SYS_INOTIFY_RM_WATCH = 286 -+ SYS_MIGRATE_PAGES = 287 -+ SYS_OPENAT = 288 -+ SYS_MKDIRAT = 289 -+ SYS_MKNODAT = 290 -+ SYS_FCHOWNAT = 291 -+ SYS_FUTIMESAT = 292 -+ SYS_NEWFSTATAT = 293 -+ SYS_UNLINKAT = 294 -+ SYS_RENAMEAT = 295 -+ SYS_LINKAT = 296 -+ SYS_SYMLINKAT = 297 -+ SYS_READLINKAT = 298 -+ SYS_FCHMODAT = 299 -+ SYS_FACCESSAT = 300 -+ SYS_PSELECT6 = 301 -+ SYS_PPOLL = 302 -+ SYS_UNSHARE = 303 -+ SYS_SET_ROBUST_LIST = 304 -+ SYS_GET_ROBUST_LIST = 305 -+ SYS_SPLICE = 306 -+ SYS_SYNC_FILE_RANGE = 307 -+ SYS_TEE = 308 -+ SYS_VMSPLICE = 309 -+ SYS_MOVE_PAGES = 310 -+ SYS_GETCPU = 311 -+ SYS_EPOLL_PWAIT = 312 -+ SYS_UTIMES = 313 -+ SYS_FALLOCATE = 314 -+ SYS_UTIMENSAT = 315 -+ SYS_SIGNALFD = 316 -+ SYS_TIMERFD = 317 -+ SYS_EVENTFD = 318 -+ SYS_TIMERFD_CREATE = 319 -+ SYS_TIMERFD_SETTIME = 320 -+ SYS_TIMERFD_GETTIME = 321 -+ SYS_SIGNALFD4 = 322 -+ SYS_EVENTFD2 = 323 -+ SYS_INOTIFY_INIT1 = 324 -+ SYS_PIPE2 = 325 -+ SYS_DUP3 = 326 -+ SYS_EPOLL_CREATE1 = 327 -+ SYS_PREADV = 328 -+ SYS_PWRITEV = 329 -+ SYS_RT_TGSIGQUEUEINFO = 330 -+ SYS_PERF_EVENT_OPEN = 331 -+ SYS_FANOTIFY_INIT = 332 -+ SYS_FANOTIFY_MARK = 333 -+ SYS_PRLIMIT64 = 334 -+ SYS_NAME_TO_HANDLE_AT = 335 -+ SYS_OPEN_BY_HANDLE_AT = 336 -+ SYS_CLOCK_ADJTIME = 337 -+ SYS_SYNCFS = 338 -+ SYS_SETNS = 339 -+ SYS_PROCESS_VM_READV = 340 -+ SYS_PROCESS_VM_WRITEV = 341 -+ SYS_S390_RUNTIME_INSTR = 342 -+ SYS_KCMP = 343 -+ SYS_FINIT_MODULE = 344 -+ SYS_SCHED_SETATTR = 345 -+ SYS_SCHED_GETATTR = 346 -+ SYS_RENAMEAT2 = 347 -+ SYS_SECCOMP = 348 -+ SYS_GETRANDOM = 349 -+ SYS_MEMFD_CREATE = 350 -+ SYS_BPF = 351 -+ SYS_S390_PCI_MMIO_WRITE = 352 -+ SYS_S390_PCI_MMIO_READ = 353 -+ SYS_EXECVEAT = 354 -+ SYS_USERFAULTFD = 355 -+ SYS_MEMBARRIER = 356 -+ SYS_RECVMMSG = 357 -+ SYS_SENDMMSG = 358 -+ SYS_SOCKET = 359 -+ SYS_SOCKETPAIR = 360 -+ SYS_BIND = 361 -+ SYS_CONNECT = 362 -+ SYS_LISTEN = 363 -+ SYS_ACCEPT4 = 364 -+ SYS_GETSOCKOPT = 365 -+ SYS_SETSOCKOPT = 366 -+ SYS_GETSOCKNAME = 367 -+ SYS_GETPEERNAME = 368 -+ SYS_SENDTO = 369 -+ SYS_SENDMSG = 370 -+ SYS_RECVFROM = 371 -+ SYS_RECVMSG = 372 -+ SYS_SHUTDOWN = 373 -+ SYS_MLOCK2 = 374 -+ SYS_COPY_FILE_RANGE = 375 -+ SYS_PREADV2 = 376 -+ SYS_PWRITEV2 = 377 -+ SYS_S390_GUARDED_STORAGE = 378 -+ SYS_STATX = 379 -+ SYS_S390_STHYI = 380 -+ SYS_KEXEC_FILE_LOAD = 381 -+ SYS_IO_PGETEVENTS = 382 -+ SYS_RSEQ = 383 -+ SYS_PKEY_MPROTECT = 384 -+ SYS_PKEY_ALLOC = 385 -+ SYS_PKEY_FREE = 386 -+ SYS_SEMTIMEDOP = 392 -+ SYS_SEMGET = 393 -+ SYS_SEMCTL = 394 -+ SYS_SHMGET = 395 -+ SYS_SHMCTL = 396 -+ SYS_SHMAT = 397 -+ SYS_SHMDT = 398 -+ SYS_MSGGET = 399 -+ SYS_MSGSND = 400 -+ SYS_MSGRCV = 401 -+ SYS_MSGCTL = 402 -+ SYS_PIDFD_SEND_SIGNAL = 424 -+ SYS_IO_URING_SETUP = 425 -+ SYS_IO_URING_ENTER = 426 -+ SYS_IO_URING_REGISTER = 427 -+ SYS_OPEN_TREE = 428 -+ SYS_MOVE_MOUNT = 429 -+ SYS_FSOPEN = 430 -+ SYS_FSCONFIG = 431 -+ SYS_FSMOUNT = 432 -+ SYS_FSPICK = 433 -+ SYS_PIDFD_OPEN = 434 -+ SYS_CLONE3 = 435 -+ SYS_CLOSE_RANGE = 436 -+ SYS_OPENAT2 = 437 -+ SYS_PIDFD_GETFD = 438 -+ SYS_FACCESSAT2 = 439 -+ SYS_PROCESS_MADVISE = 440 -+ SYS_EPOLL_PWAIT2 = 441 -+ SYS_MOUNT_SETATTR = 442 -+ SYS_QUOTACTL_FD = 443 -+ SYS_LANDLOCK_CREATE_RULESET = 444 -+ SYS_LANDLOCK_ADD_RULE = 445 -+ SYS_LANDLOCK_RESTRICT_SELF = 446 -+ SYS_PROCESS_MRELEASE = 448 -+ SYS_FUTEX_WAITV = 449 -+ SYS_SET_MEMPOLICY_HOME_NODE = 450 - ) -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go b/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go -index 4dc82bb..92f628e 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go -@@ -1,379 +1,392 @@ --// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/include /tmp/include/asm/unistd.h -+// go run linux/mksysnum.go -Wall -Werror -static -I/tmp/sparc64/include /tmp/sparc64/include/asm/unistd.h - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build sparc64 && linux - // +build sparc64,linux - - package unix - - const ( -- SYS_RESTART_SYSCALL = 0 -- SYS_EXIT = 1 -- SYS_FORK = 2 -- SYS_READ = 3 -- SYS_WRITE = 4 -- SYS_OPEN = 5 -- SYS_CLOSE = 6 -- SYS_WAIT4 = 7 -- SYS_CREAT = 8 -- SYS_LINK = 9 -- SYS_UNLINK = 10 -- SYS_EXECV = 11 -- SYS_CHDIR = 12 -- SYS_CHOWN = 13 -- SYS_MKNOD = 14 -- SYS_CHMOD = 15 -- SYS_LCHOWN = 16 -- SYS_BRK = 17 -- SYS_PERFCTR = 18 -- SYS_LSEEK = 19 -- SYS_GETPID = 20 -- SYS_CAPGET = 21 -- SYS_CAPSET = 22 -- SYS_SETUID = 23 -- SYS_GETUID = 24 -- SYS_VMSPLICE = 25 -- SYS_PTRACE = 26 -- SYS_ALARM = 27 -- SYS_SIGALTSTACK = 28 -- SYS_PAUSE = 29 -- SYS_UTIME = 30 -- SYS_ACCESS = 33 -- SYS_NICE = 34 -- SYS_SYNC = 36 -- SYS_KILL = 37 -- SYS_STAT = 38 -- SYS_SENDFILE = 39 -- SYS_LSTAT = 40 -- SYS_DUP = 41 -- SYS_PIPE = 42 -- SYS_TIMES = 43 -- SYS_UMOUNT2 = 45 -- SYS_SETGID = 46 -- SYS_GETGID = 47 -- SYS_SIGNAL = 48 -- SYS_GETEUID = 49 -- SYS_GETEGID = 50 -- SYS_ACCT = 51 -- SYS_MEMORY_ORDERING = 52 -- SYS_IOCTL = 54 -- SYS_REBOOT = 55 -- SYS_SYMLINK = 57 -- SYS_READLINK = 58 -- SYS_EXECVE = 59 -- SYS_UMASK = 60 -- SYS_CHROOT = 61 -- SYS_FSTAT = 62 -- SYS_FSTAT64 = 63 -- SYS_GETPAGESIZE = 64 -- SYS_MSYNC = 65 -- SYS_VFORK = 66 -- SYS_PREAD64 = 67 -- SYS_PWRITE64 = 68 -- SYS_MMAP = 71 -- SYS_MUNMAP = 73 -- SYS_MPROTECT = 74 -- SYS_MADVISE = 75 -- SYS_VHANGUP = 76 -- SYS_MINCORE = 78 -- SYS_GETGROUPS = 79 -- SYS_SETGROUPS = 80 -- SYS_GETPGRP = 81 -- SYS_SETITIMER = 83 -- SYS_SWAPON = 85 -- SYS_GETITIMER = 86 -- SYS_SETHOSTNAME = 88 -- SYS_DUP2 = 90 -- SYS_FCNTL = 92 -- SYS_SELECT = 93 -- SYS_FSYNC = 95 -- SYS_SETPRIORITY = 96 -- SYS_SOCKET = 97 -- SYS_CONNECT = 98 -- SYS_ACCEPT = 99 -- SYS_GETPRIORITY = 100 -- SYS_RT_SIGRETURN = 101 -- SYS_RT_SIGACTION = 102 -- SYS_RT_SIGPROCMASK = 103 -- SYS_RT_SIGPENDING = 104 -- SYS_RT_SIGTIMEDWAIT = 105 -- SYS_RT_SIGQUEUEINFO = 106 -- SYS_RT_SIGSUSPEND = 107 -- SYS_SETRESUID = 108 -- SYS_GETRESUID = 109 -- SYS_SETRESGID = 110 -- SYS_GETRESGID = 111 -- SYS_RECVMSG = 113 -- SYS_SENDMSG = 114 -- SYS_GETTIMEOFDAY = 116 -- SYS_GETRUSAGE = 117 -- SYS_GETSOCKOPT = 118 -- SYS_GETCWD = 119 -- SYS_READV = 120 -- SYS_WRITEV = 121 -- SYS_SETTIMEOFDAY = 122 -- SYS_FCHOWN = 123 -- SYS_FCHMOD = 124 -- SYS_RECVFROM = 125 -- SYS_SETREUID = 126 -- SYS_SETREGID = 127 -- SYS_RENAME = 128 -- SYS_TRUNCATE = 129 -- SYS_FTRUNCATE = 130 -- SYS_FLOCK = 131 -- SYS_LSTAT64 = 132 -- SYS_SENDTO = 133 -- SYS_SHUTDOWN = 134 -- SYS_SOCKETPAIR = 135 -- SYS_MKDIR = 136 -- SYS_RMDIR = 137 -- SYS_UTIMES = 138 -- SYS_STAT64 = 139 -- SYS_SENDFILE64 = 140 -- SYS_GETPEERNAME = 141 -- SYS_FUTEX = 142 -- SYS_GETTID = 143 -- SYS_GETRLIMIT = 144 -- SYS_SETRLIMIT = 145 -- SYS_PIVOT_ROOT = 146 -- SYS_PRCTL = 147 -- SYS_PCICONFIG_READ = 148 -- SYS_PCICONFIG_WRITE = 149 -- SYS_GETSOCKNAME = 150 -- SYS_INOTIFY_INIT = 151 -- SYS_INOTIFY_ADD_WATCH = 152 -- SYS_POLL = 153 -- SYS_GETDENTS64 = 154 -- SYS_INOTIFY_RM_WATCH = 156 -- SYS_STATFS = 157 -- SYS_FSTATFS = 158 -- SYS_UMOUNT = 159 -- SYS_SCHED_SET_AFFINITY = 160 -- SYS_SCHED_GET_AFFINITY = 161 -- SYS_GETDOMAINNAME = 162 -- SYS_SETDOMAINNAME = 163 -- SYS_UTRAP_INSTALL = 164 -- SYS_QUOTACTL = 165 -- SYS_SET_TID_ADDRESS = 166 -- SYS_MOUNT = 167 -- SYS_USTAT = 168 -- SYS_SETXATTR = 169 -- SYS_LSETXATTR = 170 -- SYS_FSETXATTR = 171 -- SYS_GETXATTR = 172 -- SYS_LGETXATTR = 173 -- SYS_GETDENTS = 174 -- SYS_SETSID = 175 -- SYS_FCHDIR = 176 -- SYS_FGETXATTR = 177 -- SYS_LISTXATTR = 178 -- SYS_LLISTXATTR = 179 -- SYS_FLISTXATTR = 180 -- SYS_REMOVEXATTR = 181 -- SYS_LREMOVEXATTR = 182 -- SYS_SIGPENDING = 183 -- SYS_QUERY_MODULE = 184 -- SYS_SETPGID = 185 -- SYS_FREMOVEXATTR = 186 -- SYS_TKILL = 187 -- SYS_EXIT_GROUP = 188 -- SYS_UNAME = 189 -- SYS_INIT_MODULE = 190 -- SYS_PERSONALITY = 191 -- SYS_REMAP_FILE_PAGES = 192 -- SYS_EPOLL_CREATE = 193 -- SYS_EPOLL_CTL = 194 -- SYS_EPOLL_WAIT = 195 -- SYS_IOPRIO_SET = 196 -- SYS_GETPPID = 197 -- SYS_SIGACTION = 198 -- SYS_SGETMASK = 199 -- SYS_SSETMASK = 200 -- SYS_SIGSUSPEND = 201 -- SYS_OLDLSTAT = 202 -- SYS_USELIB = 203 -- SYS_READDIR = 204 -- SYS_READAHEAD = 205 -- SYS_SOCKETCALL = 206 -- SYS_SYSLOG = 207 -- SYS_LOOKUP_DCOOKIE = 208 -- SYS_FADVISE64 = 209 -- SYS_FADVISE64_64 = 210 -- SYS_TGKILL = 211 -- SYS_WAITPID = 212 -- SYS_SWAPOFF = 213 -- SYS_SYSINFO = 214 -- SYS_IPC = 215 -- SYS_SIGRETURN = 216 -- SYS_CLONE = 217 -- SYS_IOPRIO_GET = 218 -- SYS_ADJTIMEX = 219 -- SYS_SIGPROCMASK = 220 -- SYS_CREATE_MODULE = 221 -- SYS_DELETE_MODULE = 222 -- SYS_GET_KERNEL_SYMS = 223 -- SYS_GETPGID = 224 -- SYS_BDFLUSH = 225 -- SYS_SYSFS = 226 -- SYS_AFS_SYSCALL = 227 -- SYS_SETFSUID = 228 -- SYS_SETFSGID = 229 -- SYS__NEWSELECT = 230 -- SYS_SPLICE = 232 -- SYS_STIME = 233 -- SYS_STATFS64 = 234 -- SYS_FSTATFS64 = 235 -- SYS__LLSEEK = 236 -- SYS_MLOCK = 237 -- SYS_MUNLOCK = 238 -- SYS_MLOCKALL = 239 -- SYS_MUNLOCKALL = 240 -- SYS_SCHED_SETPARAM = 241 -- SYS_SCHED_GETPARAM = 242 -- SYS_SCHED_SETSCHEDULER = 243 -- SYS_SCHED_GETSCHEDULER = 244 -- SYS_SCHED_YIELD = 245 -- SYS_SCHED_GET_PRIORITY_MAX = 246 -- SYS_SCHED_GET_PRIORITY_MIN = 247 -- SYS_SCHED_RR_GET_INTERVAL = 248 -- SYS_NANOSLEEP = 249 -- SYS_MREMAP = 250 -- SYS__SYSCTL = 251 -- SYS_GETSID = 252 -- SYS_FDATASYNC = 253 -- SYS_NFSSERVCTL = 254 -- SYS_SYNC_FILE_RANGE = 255 -- SYS_CLOCK_SETTIME = 256 -- SYS_CLOCK_GETTIME = 257 -- SYS_CLOCK_GETRES = 258 -- SYS_CLOCK_NANOSLEEP = 259 -- SYS_SCHED_GETAFFINITY = 260 -- SYS_SCHED_SETAFFINITY = 261 -- SYS_TIMER_SETTIME = 262 -- SYS_TIMER_GETTIME = 263 -- SYS_TIMER_GETOVERRUN = 264 -- SYS_TIMER_DELETE = 265 -- SYS_TIMER_CREATE = 266 -- SYS_VSERVER = 267 -- SYS_IO_SETUP = 268 -- SYS_IO_DESTROY = 269 -- SYS_IO_SUBMIT = 270 -- SYS_IO_CANCEL = 271 -- SYS_IO_GETEVENTS = 272 -- SYS_MQ_OPEN = 273 -- SYS_MQ_UNLINK = 274 -- SYS_MQ_TIMEDSEND = 275 -- SYS_MQ_TIMEDRECEIVE = 276 -- SYS_MQ_NOTIFY = 277 -- SYS_MQ_GETSETATTR = 278 -- SYS_WAITID = 279 -- SYS_TEE = 280 -- SYS_ADD_KEY = 281 -- SYS_REQUEST_KEY = 282 -- SYS_KEYCTL = 283 -- SYS_OPENAT = 284 -- SYS_MKDIRAT = 285 -- SYS_MKNODAT = 286 -- SYS_FCHOWNAT = 287 -- SYS_FUTIMESAT = 288 -- SYS_FSTATAT64 = 289 -- SYS_UNLINKAT = 290 -- SYS_RENAMEAT = 291 -- SYS_LINKAT = 292 -- SYS_SYMLINKAT = 293 -- SYS_READLINKAT = 294 -- SYS_FCHMODAT = 295 -- SYS_FACCESSAT = 296 -- SYS_PSELECT6 = 297 -- SYS_PPOLL = 298 -- SYS_UNSHARE = 299 -- SYS_SET_ROBUST_LIST = 300 -- SYS_GET_ROBUST_LIST = 301 -- SYS_MIGRATE_PAGES = 302 -- SYS_MBIND = 303 -- SYS_GET_MEMPOLICY = 304 -- SYS_SET_MEMPOLICY = 305 -- SYS_KEXEC_LOAD = 306 -- SYS_MOVE_PAGES = 307 -- SYS_GETCPU = 308 -- SYS_EPOLL_PWAIT = 309 -- SYS_UTIMENSAT = 310 -- SYS_SIGNALFD = 311 -- SYS_TIMERFD_CREATE = 312 -- SYS_EVENTFD = 313 -- SYS_FALLOCATE = 314 -- SYS_TIMERFD_SETTIME = 315 -- SYS_TIMERFD_GETTIME = 316 -- SYS_SIGNALFD4 = 317 -- SYS_EVENTFD2 = 318 -- SYS_EPOLL_CREATE1 = 319 -- SYS_DUP3 = 320 -- SYS_PIPE2 = 321 -- SYS_INOTIFY_INIT1 = 322 -- SYS_ACCEPT4 = 323 -- SYS_PREADV = 324 -- SYS_PWRITEV = 325 -- SYS_RT_TGSIGQUEUEINFO = 326 -- SYS_PERF_EVENT_OPEN = 327 -- SYS_RECVMMSG = 328 -- SYS_FANOTIFY_INIT = 329 -- SYS_FANOTIFY_MARK = 330 -- SYS_PRLIMIT64 = 331 -- SYS_NAME_TO_HANDLE_AT = 332 -- SYS_OPEN_BY_HANDLE_AT = 333 -- SYS_CLOCK_ADJTIME = 334 -- SYS_SYNCFS = 335 -- SYS_SENDMMSG = 336 -- SYS_SETNS = 337 -- SYS_PROCESS_VM_READV = 338 -- SYS_PROCESS_VM_WRITEV = 339 -- SYS_KERN_FEATURES = 340 -- SYS_KCMP = 341 -- SYS_FINIT_MODULE = 342 -- SYS_SCHED_SETATTR = 343 -- SYS_SCHED_GETATTR = 344 -- SYS_RENAMEAT2 = 345 -- SYS_SECCOMP = 346 -- SYS_GETRANDOM = 347 -- SYS_MEMFD_CREATE = 348 -- SYS_BPF = 349 -- SYS_EXECVEAT = 350 -- SYS_MEMBARRIER = 351 -- SYS_USERFAULTFD = 352 -- SYS_BIND = 353 -- SYS_LISTEN = 354 -- SYS_SETSOCKOPT = 355 -- SYS_MLOCK2 = 356 -- SYS_COPY_FILE_RANGE = 357 -- SYS_PREADV2 = 358 -- SYS_PWRITEV2 = 359 -- SYS_STATX = 360 -- SYS_IO_PGETEVENTS = 361 -- SYS_PKEY_MPROTECT = 362 -- SYS_PKEY_ALLOC = 363 -- SYS_PKEY_FREE = 364 -- SYS_RSEQ = 365 -- SYS_SEMTIMEDOP = 392 -- SYS_SEMGET = 393 -- SYS_SEMCTL = 394 -- SYS_SHMGET = 395 -- SYS_SHMCTL = 396 -- SYS_SHMAT = 397 -- SYS_SHMDT = 398 -- SYS_MSGGET = 399 -- SYS_MSGSND = 400 -- SYS_MSGRCV = 401 -- SYS_MSGCTL = 402 -- SYS_PIDFD_SEND_SIGNAL = 424 -- SYS_IO_URING_SETUP = 425 -- SYS_IO_URING_ENTER = 426 -- SYS_IO_URING_REGISTER = 427 -- SYS_OPEN_TREE = 428 -- SYS_MOVE_MOUNT = 429 -- SYS_FSOPEN = 430 -- SYS_FSCONFIG = 431 -- SYS_FSMOUNT = 432 -- SYS_FSPICK = 433 -- SYS_PIDFD_OPEN = 434 -- SYS_OPENAT2 = 437 -- SYS_PIDFD_GETFD = 438 -+ SYS_RESTART_SYSCALL = 0 -+ SYS_EXIT = 1 -+ SYS_FORK = 2 -+ SYS_READ = 3 -+ SYS_WRITE = 4 -+ SYS_OPEN = 5 -+ SYS_CLOSE = 6 -+ SYS_WAIT4 = 7 -+ SYS_CREAT = 8 -+ SYS_LINK = 9 -+ SYS_UNLINK = 10 -+ SYS_EXECV = 11 -+ SYS_CHDIR = 12 -+ SYS_CHOWN = 13 -+ SYS_MKNOD = 14 -+ SYS_CHMOD = 15 -+ SYS_LCHOWN = 16 -+ SYS_BRK = 17 -+ SYS_PERFCTR = 18 -+ SYS_LSEEK = 19 -+ SYS_GETPID = 20 -+ SYS_CAPGET = 21 -+ SYS_CAPSET = 22 -+ SYS_SETUID = 23 -+ SYS_GETUID = 24 -+ SYS_VMSPLICE = 25 -+ SYS_PTRACE = 26 -+ SYS_ALARM = 27 -+ SYS_SIGALTSTACK = 28 -+ SYS_PAUSE = 29 -+ SYS_UTIME = 30 -+ SYS_ACCESS = 33 -+ SYS_NICE = 34 -+ SYS_SYNC = 36 -+ SYS_KILL = 37 -+ SYS_STAT = 38 -+ SYS_SENDFILE = 39 -+ SYS_LSTAT = 40 -+ SYS_DUP = 41 -+ SYS_PIPE = 42 -+ SYS_TIMES = 43 -+ SYS_UMOUNT2 = 45 -+ SYS_SETGID = 46 -+ SYS_GETGID = 47 -+ SYS_SIGNAL = 48 -+ SYS_GETEUID = 49 -+ SYS_GETEGID = 50 -+ SYS_ACCT = 51 -+ SYS_MEMORY_ORDERING = 52 -+ SYS_IOCTL = 54 -+ SYS_REBOOT = 55 -+ SYS_SYMLINK = 57 -+ SYS_READLINK = 58 -+ SYS_EXECVE = 59 -+ SYS_UMASK = 60 -+ SYS_CHROOT = 61 -+ SYS_FSTAT = 62 -+ SYS_FSTAT64 = 63 -+ SYS_GETPAGESIZE = 64 -+ SYS_MSYNC = 65 -+ SYS_VFORK = 66 -+ SYS_PREAD64 = 67 -+ SYS_PWRITE64 = 68 -+ SYS_MMAP = 71 -+ SYS_MUNMAP = 73 -+ SYS_MPROTECT = 74 -+ SYS_MADVISE = 75 -+ SYS_VHANGUP = 76 -+ SYS_MINCORE = 78 -+ SYS_GETGROUPS = 79 -+ SYS_SETGROUPS = 80 -+ SYS_GETPGRP = 81 -+ SYS_SETITIMER = 83 -+ SYS_SWAPON = 85 -+ SYS_GETITIMER = 86 -+ SYS_SETHOSTNAME = 88 -+ SYS_DUP2 = 90 -+ SYS_FCNTL = 92 -+ SYS_SELECT = 93 -+ SYS_FSYNC = 95 -+ SYS_SETPRIORITY = 96 -+ SYS_SOCKET = 97 -+ SYS_CONNECT = 98 -+ SYS_ACCEPT = 99 -+ SYS_GETPRIORITY = 100 -+ SYS_RT_SIGRETURN = 101 -+ SYS_RT_SIGACTION = 102 -+ SYS_RT_SIGPROCMASK = 103 -+ SYS_RT_SIGPENDING = 104 -+ SYS_RT_SIGTIMEDWAIT = 105 -+ SYS_RT_SIGQUEUEINFO = 106 -+ SYS_RT_SIGSUSPEND = 107 -+ SYS_SETRESUID = 108 -+ SYS_GETRESUID = 109 -+ SYS_SETRESGID = 110 -+ SYS_GETRESGID = 111 -+ SYS_RECVMSG = 113 -+ SYS_SENDMSG = 114 -+ SYS_GETTIMEOFDAY = 116 -+ SYS_GETRUSAGE = 117 -+ SYS_GETSOCKOPT = 118 -+ SYS_GETCWD = 119 -+ SYS_READV = 120 -+ SYS_WRITEV = 121 -+ SYS_SETTIMEOFDAY = 122 -+ SYS_FCHOWN = 123 -+ SYS_FCHMOD = 124 -+ SYS_RECVFROM = 125 -+ SYS_SETREUID = 126 -+ SYS_SETREGID = 127 -+ SYS_RENAME = 128 -+ SYS_TRUNCATE = 129 -+ SYS_FTRUNCATE = 130 -+ SYS_FLOCK = 131 -+ SYS_LSTAT64 = 132 -+ SYS_SENDTO = 133 -+ SYS_SHUTDOWN = 134 -+ SYS_SOCKETPAIR = 135 -+ SYS_MKDIR = 136 -+ SYS_RMDIR = 137 -+ SYS_UTIMES = 138 -+ SYS_STAT64 = 139 -+ SYS_SENDFILE64 = 140 -+ SYS_GETPEERNAME = 141 -+ SYS_FUTEX = 142 -+ SYS_GETTID = 143 -+ SYS_GETRLIMIT = 144 -+ SYS_SETRLIMIT = 145 -+ SYS_PIVOT_ROOT = 146 -+ SYS_PRCTL = 147 -+ SYS_PCICONFIG_READ = 148 -+ SYS_PCICONFIG_WRITE = 149 -+ SYS_GETSOCKNAME = 150 -+ SYS_INOTIFY_INIT = 151 -+ SYS_INOTIFY_ADD_WATCH = 152 -+ SYS_POLL = 153 -+ SYS_GETDENTS64 = 154 -+ SYS_INOTIFY_RM_WATCH = 156 -+ SYS_STATFS = 157 -+ SYS_FSTATFS = 158 -+ SYS_UMOUNT = 159 -+ SYS_SCHED_SET_AFFINITY = 160 -+ SYS_SCHED_GET_AFFINITY = 161 -+ SYS_GETDOMAINNAME = 162 -+ SYS_SETDOMAINNAME = 163 -+ SYS_UTRAP_INSTALL = 164 -+ SYS_QUOTACTL = 165 -+ SYS_SET_TID_ADDRESS = 166 -+ SYS_MOUNT = 167 -+ SYS_USTAT = 168 -+ SYS_SETXATTR = 169 -+ SYS_LSETXATTR = 170 -+ SYS_FSETXATTR = 171 -+ SYS_GETXATTR = 172 -+ SYS_LGETXATTR = 173 -+ SYS_GETDENTS = 174 -+ SYS_SETSID = 175 -+ SYS_FCHDIR = 176 -+ SYS_FGETXATTR = 177 -+ SYS_LISTXATTR = 178 -+ SYS_LLISTXATTR = 179 -+ SYS_FLISTXATTR = 180 -+ SYS_REMOVEXATTR = 181 -+ SYS_LREMOVEXATTR = 182 -+ SYS_SIGPENDING = 183 -+ SYS_QUERY_MODULE = 184 -+ SYS_SETPGID = 185 -+ SYS_FREMOVEXATTR = 186 -+ SYS_TKILL = 187 -+ SYS_EXIT_GROUP = 188 -+ SYS_UNAME = 189 -+ SYS_INIT_MODULE = 190 -+ SYS_PERSONALITY = 191 -+ SYS_REMAP_FILE_PAGES = 192 -+ SYS_EPOLL_CREATE = 193 -+ SYS_EPOLL_CTL = 194 -+ SYS_EPOLL_WAIT = 195 -+ SYS_IOPRIO_SET = 196 -+ SYS_GETPPID = 197 -+ SYS_SIGACTION = 198 -+ SYS_SGETMASK = 199 -+ SYS_SSETMASK = 200 -+ SYS_SIGSUSPEND = 201 -+ SYS_OLDLSTAT = 202 -+ SYS_USELIB = 203 -+ SYS_READDIR = 204 -+ SYS_READAHEAD = 205 -+ SYS_SOCKETCALL = 206 -+ SYS_SYSLOG = 207 -+ SYS_LOOKUP_DCOOKIE = 208 -+ SYS_FADVISE64 = 209 -+ SYS_FADVISE64_64 = 210 -+ SYS_TGKILL = 211 -+ SYS_WAITPID = 212 -+ SYS_SWAPOFF = 213 -+ SYS_SYSINFO = 214 -+ SYS_IPC = 215 -+ SYS_SIGRETURN = 216 -+ SYS_CLONE = 217 -+ SYS_IOPRIO_GET = 218 -+ SYS_ADJTIMEX = 219 -+ SYS_SIGPROCMASK = 220 -+ SYS_CREATE_MODULE = 221 -+ SYS_DELETE_MODULE = 222 -+ SYS_GET_KERNEL_SYMS = 223 -+ SYS_GETPGID = 224 -+ SYS_BDFLUSH = 225 -+ SYS_SYSFS = 226 -+ SYS_AFS_SYSCALL = 227 -+ SYS_SETFSUID = 228 -+ SYS_SETFSGID = 229 -+ SYS__NEWSELECT = 230 -+ SYS_SPLICE = 232 -+ SYS_STIME = 233 -+ SYS_STATFS64 = 234 -+ SYS_FSTATFS64 = 235 -+ SYS__LLSEEK = 236 -+ SYS_MLOCK = 237 -+ SYS_MUNLOCK = 238 -+ SYS_MLOCKALL = 239 -+ SYS_MUNLOCKALL = 240 -+ SYS_SCHED_SETPARAM = 241 -+ SYS_SCHED_GETPARAM = 242 -+ SYS_SCHED_SETSCHEDULER = 243 -+ SYS_SCHED_GETSCHEDULER = 244 -+ SYS_SCHED_YIELD = 245 -+ SYS_SCHED_GET_PRIORITY_MAX = 246 -+ SYS_SCHED_GET_PRIORITY_MIN = 247 -+ SYS_SCHED_RR_GET_INTERVAL = 248 -+ SYS_NANOSLEEP = 249 -+ SYS_MREMAP = 250 -+ SYS__SYSCTL = 251 -+ SYS_GETSID = 252 -+ SYS_FDATASYNC = 253 -+ SYS_NFSSERVCTL = 254 -+ SYS_SYNC_FILE_RANGE = 255 -+ SYS_CLOCK_SETTIME = 256 -+ SYS_CLOCK_GETTIME = 257 -+ SYS_CLOCK_GETRES = 258 -+ SYS_CLOCK_NANOSLEEP = 259 -+ SYS_SCHED_GETAFFINITY = 260 -+ SYS_SCHED_SETAFFINITY = 261 -+ SYS_TIMER_SETTIME = 262 -+ SYS_TIMER_GETTIME = 263 -+ SYS_TIMER_GETOVERRUN = 264 -+ SYS_TIMER_DELETE = 265 -+ SYS_TIMER_CREATE = 266 -+ SYS_VSERVER = 267 -+ SYS_IO_SETUP = 268 -+ SYS_IO_DESTROY = 269 -+ SYS_IO_SUBMIT = 270 -+ SYS_IO_CANCEL = 271 -+ SYS_IO_GETEVENTS = 272 -+ SYS_MQ_OPEN = 273 -+ SYS_MQ_UNLINK = 274 -+ SYS_MQ_TIMEDSEND = 275 -+ SYS_MQ_TIMEDRECEIVE = 276 -+ SYS_MQ_NOTIFY = 277 -+ SYS_MQ_GETSETATTR = 278 -+ SYS_WAITID = 279 -+ SYS_TEE = 280 -+ SYS_ADD_KEY = 281 -+ SYS_REQUEST_KEY = 282 -+ SYS_KEYCTL = 283 -+ SYS_OPENAT = 284 -+ SYS_MKDIRAT = 285 -+ SYS_MKNODAT = 286 -+ SYS_FCHOWNAT = 287 -+ SYS_FUTIMESAT = 288 -+ SYS_FSTATAT64 = 289 -+ SYS_UNLINKAT = 290 -+ SYS_RENAMEAT = 291 -+ SYS_LINKAT = 292 -+ SYS_SYMLINKAT = 293 -+ SYS_READLINKAT = 294 -+ SYS_FCHMODAT = 295 -+ SYS_FACCESSAT = 296 -+ SYS_PSELECT6 = 297 -+ SYS_PPOLL = 298 -+ SYS_UNSHARE = 299 -+ SYS_SET_ROBUST_LIST = 300 -+ SYS_GET_ROBUST_LIST = 301 -+ SYS_MIGRATE_PAGES = 302 -+ SYS_MBIND = 303 -+ SYS_GET_MEMPOLICY = 304 -+ SYS_SET_MEMPOLICY = 305 -+ SYS_KEXEC_LOAD = 306 -+ SYS_MOVE_PAGES = 307 -+ SYS_GETCPU = 308 -+ SYS_EPOLL_PWAIT = 309 -+ SYS_UTIMENSAT = 310 -+ SYS_SIGNALFD = 311 -+ SYS_TIMERFD_CREATE = 312 -+ SYS_EVENTFD = 313 -+ SYS_FALLOCATE = 314 -+ SYS_TIMERFD_SETTIME = 315 -+ SYS_TIMERFD_GETTIME = 316 -+ SYS_SIGNALFD4 = 317 -+ SYS_EVENTFD2 = 318 -+ SYS_EPOLL_CREATE1 = 319 -+ SYS_DUP3 = 320 -+ SYS_PIPE2 = 321 -+ SYS_INOTIFY_INIT1 = 322 -+ SYS_ACCEPT4 = 323 -+ SYS_PREADV = 324 -+ SYS_PWRITEV = 325 -+ SYS_RT_TGSIGQUEUEINFO = 326 -+ SYS_PERF_EVENT_OPEN = 327 -+ SYS_RECVMMSG = 328 -+ SYS_FANOTIFY_INIT = 329 -+ SYS_FANOTIFY_MARK = 330 -+ SYS_PRLIMIT64 = 331 -+ SYS_NAME_TO_HANDLE_AT = 332 -+ SYS_OPEN_BY_HANDLE_AT = 333 -+ SYS_CLOCK_ADJTIME = 334 -+ SYS_SYNCFS = 335 -+ SYS_SENDMMSG = 336 -+ SYS_SETNS = 337 -+ SYS_PROCESS_VM_READV = 338 -+ SYS_PROCESS_VM_WRITEV = 339 -+ SYS_KERN_FEATURES = 340 -+ SYS_KCMP = 341 -+ SYS_FINIT_MODULE = 342 -+ SYS_SCHED_SETATTR = 343 -+ SYS_SCHED_GETATTR = 344 -+ SYS_RENAMEAT2 = 345 -+ SYS_SECCOMP = 346 -+ SYS_GETRANDOM = 347 -+ SYS_MEMFD_CREATE = 348 -+ SYS_BPF = 349 -+ SYS_EXECVEAT = 350 -+ SYS_MEMBARRIER = 351 -+ SYS_USERFAULTFD = 352 -+ SYS_BIND = 353 -+ SYS_LISTEN = 354 -+ SYS_SETSOCKOPT = 355 -+ SYS_MLOCK2 = 356 -+ SYS_COPY_FILE_RANGE = 357 -+ SYS_PREADV2 = 358 -+ SYS_PWRITEV2 = 359 -+ SYS_STATX = 360 -+ SYS_IO_PGETEVENTS = 361 -+ SYS_PKEY_MPROTECT = 362 -+ SYS_PKEY_ALLOC = 363 -+ SYS_PKEY_FREE = 364 -+ SYS_RSEQ = 365 -+ SYS_SEMTIMEDOP = 392 -+ SYS_SEMGET = 393 -+ SYS_SEMCTL = 394 -+ SYS_SHMGET = 395 -+ SYS_SHMCTL = 396 -+ SYS_SHMAT = 397 -+ SYS_SHMDT = 398 -+ SYS_MSGGET = 399 -+ SYS_MSGSND = 400 -+ SYS_MSGRCV = 401 -+ SYS_MSGCTL = 402 -+ SYS_PIDFD_SEND_SIGNAL = 424 -+ SYS_IO_URING_SETUP = 425 -+ SYS_IO_URING_ENTER = 426 -+ SYS_IO_URING_REGISTER = 427 -+ SYS_OPEN_TREE = 428 -+ SYS_MOVE_MOUNT = 429 -+ SYS_FSOPEN = 430 -+ SYS_FSCONFIG = 431 -+ SYS_FSMOUNT = 432 -+ SYS_FSPICK = 433 -+ SYS_PIDFD_OPEN = 434 -+ SYS_CLOSE_RANGE = 436 -+ SYS_OPENAT2 = 437 -+ SYS_PIDFD_GETFD = 438 -+ SYS_FACCESSAT2 = 439 -+ SYS_PROCESS_MADVISE = 440 -+ SYS_EPOLL_PWAIT2 = 441 -+ SYS_MOUNT_SETATTR = 442 -+ SYS_QUOTACTL_FD = 443 -+ SYS_LANDLOCK_CREATE_RULESET = 444 -+ SYS_LANDLOCK_ADD_RULE = 445 -+ SYS_LANDLOCK_RESTRICT_SELF = 446 -+ SYS_PROCESS_MRELEASE = 448 -+ SYS_FUTEX_WAITV = 449 -+ SYS_SET_MEMPOLICY_HOME_NODE = 450 - ) -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go b/vendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go -index e66a8c9..3a6699e 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go -@@ -1,6 +1,7 @@ - // go run mksysnum.go http://cvsweb.netbsd.org/bsdweb.cgi/~checkout~/src/sys/kern/syscalls.master - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build 386 && netbsd - // +build 386,netbsd - - package unix -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_netbsd_amd64.go -index 42c788f..5677cd4 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_netbsd_amd64.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_netbsd_amd64.go -@@ -1,6 +1,7 @@ - // go run mksysnum.go http://cvsweb.netbsd.org/bsdweb.cgi/~checkout~/src/sys/kern/syscalls.master - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build amd64 && netbsd - // +build amd64,netbsd - - package unix -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm.go b/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm.go -index 0a07571..e784cb6 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm.go -@@ -1,6 +1,7 @@ - // go run mksysnum.go http://cvsweb.netbsd.org/bsdweb.cgi/~checkout~/src/sys/kern/syscalls.master - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build arm && netbsd - // +build arm,netbsd - - package unix -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm64.go b/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm64.go -index 0291c09..bd4952e 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm64.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_netbsd_arm64.go -@@ -1,6 +1,7 @@ - // go run mksysnum.go http://cvsweb.netbsd.org/bsdweb.cgi/~checkout~/src/sys/kern/syscalls.master - // Code generated by the command above; DO NOT EDIT. - -+//go:build arm64 && netbsd - // +build arm64,netbsd - - package unix -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_openbsd_386.go b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_386.go -index b0207d1..5977338 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_openbsd_386.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_386.go -@@ -1,10 +1,12 @@ - // go run mksysnum.go https://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build 386 && openbsd - // +build 386,openbsd - - package unix - -+// Deprecated: Use libc wrappers instead of direct syscalls. - const ( - SYS_EXIT = 1 // { void sys_exit(int rval); } - SYS_FORK = 2 // { int sys_fork(void); } -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go -index f0dec6f..16af291 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go -@@ -1,10 +1,12 @@ - // go run mksysnum.go https://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build amd64 && openbsd - // +build amd64,openbsd - - package unix - -+// Deprecated: Use libc wrappers instead of direct syscalls. - const ( - SYS_EXIT = 1 // { void sys_exit(int rval); } - SYS_FORK = 2 // { int sys_fork(void); } -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go -index 33d1dc5..f59b18a 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go -@@ -1,10 +1,12 @@ - // go run mksysnum.go https://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build arm && openbsd - // +build arm,openbsd - - package unix - -+// Deprecated: Use libc wrappers instead of direct syscalls. - const ( - SYS_EXIT = 1 // { void sys_exit(int rval); } - SYS_FORK = 2 // { int sys_fork(void); } -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm64.go b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm64.go -index fe2b689..721ef59 100644 ---- a/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm64.go -+++ b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_arm64.go -@@ -1,10 +1,12 @@ - // go run mksysnum.go https://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build arm64 && openbsd - // +build arm64,openbsd - - package unix - -+// Deprecated: Use libc wrappers instead of direct syscalls. - const ( - SYS_EXIT = 1 // { void sys_exit(int rval); } - SYS_FORK = 2 // { int sys_fork(void); } -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_openbsd_mips64.go b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_mips64.go -new file mode 100644 -index 0000000..a37f773 ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/zsysnum_openbsd_mips64.go -@@ -0,0 +1,221 @@ -+// go run mksysnum.go https://cvsweb.openbsd.org/cgi-bin/cvsweb/~checkout~/src/sys/kern/syscalls.master -+// Code generated by the command above; see README.md. DO NOT EDIT. -+ -+//go:build mips64 && openbsd -+// +build mips64,openbsd -+ -+package unix -+ -+const ( -+ SYS_EXIT = 1 // { void sys_exit(int rval); } -+ SYS_FORK = 2 // { int sys_fork(void); } -+ SYS_READ = 3 // { ssize_t sys_read(int fd, void *buf, size_t nbyte); } -+ SYS_WRITE = 4 // { ssize_t sys_write(int fd, const void *buf, size_t nbyte); } -+ SYS_OPEN = 5 // { int sys_open(const char *path, int flags, ... mode_t mode); } -+ SYS_CLOSE = 6 // { int sys_close(int fd); } -+ SYS_GETENTROPY = 7 // { int sys_getentropy(void *buf, size_t nbyte); } -+ SYS___TFORK = 8 // { int sys___tfork(const struct __tfork *param, size_t psize); } -+ SYS_LINK = 9 // { int sys_link(const char *path, const char *link); } -+ SYS_UNLINK = 10 // { int sys_unlink(const char *path); } -+ SYS_WAIT4 = 11 // { pid_t sys_wait4(pid_t pid, int *status, int options, struct rusage *rusage); } -+ SYS_CHDIR = 12 // { int sys_chdir(const char *path); } -+ SYS_FCHDIR = 13 // { int sys_fchdir(int fd); } -+ SYS_MKNOD = 14 // { int sys_mknod(const char *path, mode_t mode, dev_t dev); } -+ SYS_CHMOD = 15 // { int sys_chmod(const char *path, mode_t mode); } -+ SYS_CHOWN = 16 // { int sys_chown(const char *path, uid_t uid, gid_t gid); } -+ SYS_OBREAK = 17 // { int sys_obreak(char *nsize); } break -+ SYS_GETDTABLECOUNT = 18 // { int sys_getdtablecount(void); } -+ SYS_GETRUSAGE = 19 // { int sys_getrusage(int who, struct rusage *rusage); } -+ SYS_GETPID = 20 // { pid_t sys_getpid(void); } -+ SYS_MOUNT = 21 // { int sys_mount(const char *type, const char *path, int flags, void *data); } -+ SYS_UNMOUNT = 22 // { int sys_unmount(const char *path, int flags); } -+ SYS_SETUID = 23 // { int sys_setuid(uid_t uid); } -+ SYS_GETUID = 24 // { uid_t sys_getuid(void); } -+ SYS_GETEUID = 25 // { uid_t sys_geteuid(void); } -+ SYS_PTRACE = 26 // { int sys_ptrace(int req, pid_t pid, caddr_t addr, int data); } -+ SYS_RECVMSG = 27 // { ssize_t sys_recvmsg(int s, struct msghdr *msg, int flags); } -+ SYS_SENDMSG = 28 // { ssize_t sys_sendmsg(int s, const struct msghdr *msg, int flags); } -+ SYS_RECVFROM = 29 // { ssize_t sys_recvfrom(int s, void *buf, size_t len, int flags, struct sockaddr *from, socklen_t *fromlenaddr); } -+ SYS_ACCEPT = 30 // { int sys_accept(int s, struct sockaddr *name, socklen_t *anamelen); } -+ SYS_GETPEERNAME = 31 // { int sys_getpeername(int fdes, struct sockaddr *asa, socklen_t *alen); } -+ SYS_GETSOCKNAME = 32 // { int sys_getsockname(int fdes, struct sockaddr *asa, socklen_t *alen); } -+ SYS_ACCESS = 33 // { int sys_access(const char *path, int amode); } -+ SYS_CHFLAGS = 34 // { int sys_chflags(const char *path, u_int flags); } -+ SYS_FCHFLAGS = 35 // { int sys_fchflags(int fd, u_int flags); } -+ SYS_SYNC = 36 // { void sys_sync(void); } -+ SYS_MSYSCALL = 37 // { int sys_msyscall(void *addr, size_t len); } -+ SYS_STAT = 38 // { int sys_stat(const char *path, struct stat *ub); } -+ SYS_GETPPID = 39 // { pid_t sys_getppid(void); } -+ SYS_LSTAT = 40 // { int sys_lstat(const char *path, struct stat *ub); } -+ SYS_DUP = 41 // { int sys_dup(int fd); } -+ SYS_FSTATAT = 42 // { int sys_fstatat(int fd, const char *path, struct stat *buf, int flag); } -+ SYS_GETEGID = 43 // { gid_t sys_getegid(void); } -+ SYS_PROFIL = 44 // { int sys_profil(caddr_t samples, size_t size, u_long offset, u_int scale); } -+ SYS_KTRACE = 45 // { int sys_ktrace(const char *fname, int ops, int facs, pid_t pid); } -+ SYS_SIGACTION = 46 // { int sys_sigaction(int signum, const struct sigaction *nsa, struct sigaction *osa); } -+ SYS_GETGID = 47 // { gid_t sys_getgid(void); } -+ SYS_SIGPROCMASK = 48 // { int sys_sigprocmask(int how, sigset_t mask); } -+ SYS_SETLOGIN = 50 // { int sys_setlogin(const char *namebuf); } -+ SYS_ACCT = 51 // { int sys_acct(const char *path); } -+ SYS_SIGPENDING = 52 // { int sys_sigpending(void); } -+ SYS_FSTAT = 53 // { int sys_fstat(int fd, struct stat *sb); } -+ SYS_IOCTL = 54 // { int sys_ioctl(int fd, u_long com, ... void *data); } -+ SYS_REBOOT = 55 // { int sys_reboot(int opt); } -+ SYS_REVOKE = 56 // { int sys_revoke(const char *path); } -+ SYS_SYMLINK = 57 // { int sys_symlink(const char *path, const char *link); } -+ SYS_READLINK = 58 // { ssize_t sys_readlink(const char *path, char *buf, size_t count); } -+ SYS_EXECVE = 59 // { int sys_execve(const char *path, char * const *argp, char * const *envp); } -+ SYS_UMASK = 60 // { mode_t sys_umask(mode_t newmask); } -+ SYS_CHROOT = 61 // { int sys_chroot(const char *path); } -+ SYS_GETFSSTAT = 62 // { int sys_getfsstat(struct statfs *buf, size_t bufsize, int flags); } -+ SYS_STATFS = 63 // { int sys_statfs(const char *path, struct statfs *buf); } -+ SYS_FSTATFS = 64 // { int sys_fstatfs(int fd, struct statfs *buf); } -+ SYS_FHSTATFS = 65 // { int sys_fhstatfs(const fhandle_t *fhp, struct statfs *buf); } -+ SYS_VFORK = 66 // { int sys_vfork(void); } -+ SYS_GETTIMEOFDAY = 67 // { int sys_gettimeofday(struct timeval *tp, struct timezone *tzp); } -+ SYS_SETTIMEOFDAY = 68 // { int sys_settimeofday(const struct timeval *tv, const struct timezone *tzp); } -+ SYS_SETITIMER = 69 // { int sys_setitimer(int which, const struct itimerval *itv, struct itimerval *oitv); } -+ SYS_GETITIMER = 70 // { int sys_getitimer(int which, struct itimerval *itv); } -+ SYS_SELECT = 71 // { int sys_select(int nd, fd_set *in, fd_set *ou, fd_set *ex, struct timeval *tv); } -+ SYS_KEVENT = 72 // { int sys_kevent(int fd, const struct kevent *changelist, int nchanges, struct kevent *eventlist, int nevents, const struct timespec *timeout); } -+ SYS_MUNMAP = 73 // { int sys_munmap(void *addr, size_t len); } -+ SYS_MPROTECT = 74 // { int sys_mprotect(void *addr, size_t len, int prot); } -+ SYS_MADVISE = 75 // { int sys_madvise(void *addr, size_t len, int behav); } -+ SYS_UTIMES = 76 // { int sys_utimes(const char *path, const struct timeval *tptr); } -+ SYS_FUTIMES = 77 // { int sys_futimes(int fd, const struct timeval *tptr); } -+ SYS_GETGROUPS = 79 // { int sys_getgroups(int gidsetsize, gid_t *gidset); } -+ SYS_SETGROUPS = 80 // { int sys_setgroups(int gidsetsize, const gid_t *gidset); } -+ SYS_GETPGRP = 81 // { int sys_getpgrp(void); } -+ SYS_SETPGID = 82 // { int sys_setpgid(pid_t pid, pid_t pgid); } -+ SYS_FUTEX = 83 // { int sys_futex(uint32_t *f, int op, int val, const struct timespec *timeout, uint32_t *g); } -+ SYS_UTIMENSAT = 84 // { int sys_utimensat(int fd, const char *path, const struct timespec *times, int flag); } -+ SYS_FUTIMENS = 85 // { int sys_futimens(int fd, const struct timespec *times); } -+ SYS_KBIND = 86 // { int sys_kbind(const struct __kbind *param, size_t psize, int64_t proc_cookie); } -+ SYS_CLOCK_GETTIME = 87 // { int sys_clock_gettime(clockid_t clock_id, struct timespec *tp); } -+ SYS_CLOCK_SETTIME = 88 // { int sys_clock_settime(clockid_t clock_id, const struct timespec *tp); } -+ SYS_CLOCK_GETRES = 89 // { int sys_clock_getres(clockid_t clock_id, struct timespec *tp); } -+ SYS_DUP2 = 90 // { int sys_dup2(int from, int to); } -+ SYS_NANOSLEEP = 91 // { int sys_nanosleep(const struct timespec *rqtp, struct timespec *rmtp); } -+ SYS_FCNTL = 92 // { int sys_fcntl(int fd, int cmd, ... void *arg); } -+ SYS_ACCEPT4 = 93 // { int sys_accept4(int s, struct sockaddr *name, socklen_t *anamelen, int flags); } -+ SYS___THRSLEEP = 94 // { int sys___thrsleep(const volatile void *ident, clockid_t clock_id, const struct timespec *tp, void *lock, const int *abort); } -+ SYS_FSYNC = 95 // { int sys_fsync(int fd); } -+ SYS_SETPRIORITY = 96 // { int sys_setpriority(int which, id_t who, int prio); } -+ SYS_SOCKET = 97 // { int sys_socket(int domain, int type, int protocol); } -+ SYS_CONNECT = 98 // { int sys_connect(int s, const struct sockaddr *name, socklen_t namelen); } -+ SYS_GETDENTS = 99 // { int sys_getdents(int fd, void *buf, size_t buflen); } -+ SYS_GETPRIORITY = 100 // { int sys_getpriority(int which, id_t who); } -+ SYS_PIPE2 = 101 // { int sys_pipe2(int *fdp, int flags); } -+ SYS_DUP3 = 102 // { int sys_dup3(int from, int to, int flags); } -+ SYS_SIGRETURN = 103 // { int sys_sigreturn(struct sigcontext *sigcntxp); } -+ SYS_BIND = 104 // { int sys_bind(int s, const struct sockaddr *name, socklen_t namelen); } -+ SYS_SETSOCKOPT = 105 // { int sys_setsockopt(int s, int level, int name, const void *val, socklen_t valsize); } -+ SYS_LISTEN = 106 // { int sys_listen(int s, int backlog); } -+ SYS_CHFLAGSAT = 107 // { int sys_chflagsat(int fd, const char *path, u_int flags, int atflags); } -+ SYS_PLEDGE = 108 // { int sys_pledge(const char *promises, const char *execpromises); } -+ SYS_PPOLL = 109 // { int sys_ppoll(struct pollfd *fds, u_int nfds, const struct timespec *ts, const sigset_t *mask); } -+ SYS_PSELECT = 110 // { int sys_pselect(int nd, fd_set *in, fd_set *ou, fd_set *ex, const struct timespec *ts, const sigset_t *mask); } -+ SYS_SIGSUSPEND = 111 // { int sys_sigsuspend(int mask); } -+ SYS_SENDSYSLOG = 112 // { int sys_sendsyslog(const char *buf, size_t nbyte, int flags); } -+ SYS_UNVEIL = 114 // { int sys_unveil(const char *path, const char *permissions); } -+ SYS___REALPATH = 115 // { int sys___realpath(const char *pathname, char *resolved); } -+ SYS_GETSOCKOPT = 118 // { int sys_getsockopt(int s, int level, int name, void *val, socklen_t *avalsize); } -+ SYS_THRKILL = 119 // { int sys_thrkill(pid_t tid, int signum, void *tcb); } -+ SYS_READV = 120 // { ssize_t sys_readv(int fd, const struct iovec *iovp, int iovcnt); } -+ SYS_WRITEV = 121 // { ssize_t sys_writev(int fd, const struct iovec *iovp, int iovcnt); } -+ SYS_KILL = 122 // { int sys_kill(int pid, int signum); } -+ SYS_FCHOWN = 123 // { int sys_fchown(int fd, uid_t uid, gid_t gid); } -+ SYS_FCHMOD = 124 // { int sys_fchmod(int fd, mode_t mode); } -+ SYS_SETREUID = 126 // { int sys_setreuid(uid_t ruid, uid_t euid); } -+ SYS_SETREGID = 127 // { int sys_setregid(gid_t rgid, gid_t egid); } -+ SYS_RENAME = 128 // { int sys_rename(const char *from, const char *to); } -+ SYS_FLOCK = 131 // { int sys_flock(int fd, int how); } -+ SYS_MKFIFO = 132 // { int sys_mkfifo(const char *path, mode_t mode); } -+ SYS_SENDTO = 133 // { ssize_t sys_sendto(int s, const void *buf, size_t len, int flags, const struct sockaddr *to, socklen_t tolen); } -+ SYS_SHUTDOWN = 134 // { int sys_shutdown(int s, int how); } -+ SYS_SOCKETPAIR = 135 // { int sys_socketpair(int domain, int type, int protocol, int *rsv); } -+ SYS_MKDIR = 136 // { int sys_mkdir(const char *path, mode_t mode); } -+ SYS_RMDIR = 137 // { int sys_rmdir(const char *path); } -+ SYS_ADJTIME = 140 // { int sys_adjtime(const struct timeval *delta, struct timeval *olddelta); } -+ SYS_GETLOGIN_R = 141 // { int sys_getlogin_r(char *namebuf, u_int namelen); } -+ SYS_SETSID = 147 // { int sys_setsid(void); } -+ SYS_QUOTACTL = 148 // { int sys_quotactl(const char *path, int cmd, int uid, char *arg); } -+ SYS_NFSSVC = 155 // { int sys_nfssvc(int flag, void *argp); } -+ SYS_GETFH = 161 // { int sys_getfh(const char *fname, fhandle_t *fhp); } -+ SYS___TMPFD = 164 // { int sys___tmpfd(int flags); } -+ SYS_SYSARCH = 165 // { int sys_sysarch(int op, void *parms); } -+ SYS_PREAD = 173 // { ssize_t sys_pread(int fd, void *buf, size_t nbyte, int pad, off_t offset); } -+ SYS_PWRITE = 174 // { ssize_t sys_pwrite(int fd, const void *buf, size_t nbyte, int pad, off_t offset); } -+ SYS_SETGID = 181 // { int sys_setgid(gid_t gid); } -+ SYS_SETEGID = 182 // { int sys_setegid(gid_t egid); } -+ SYS_SETEUID = 183 // { int sys_seteuid(uid_t euid); } -+ SYS_PATHCONF = 191 // { long sys_pathconf(const char *path, int name); } -+ SYS_FPATHCONF = 192 // { long sys_fpathconf(int fd, int name); } -+ SYS_SWAPCTL = 193 // { int sys_swapctl(int cmd, const void *arg, int misc); } -+ SYS_GETRLIMIT = 194 // { int sys_getrlimit(int which, struct rlimit *rlp); } -+ SYS_SETRLIMIT = 195 // { int sys_setrlimit(int which, const struct rlimit *rlp); } -+ SYS_MMAP = 197 // { void *sys_mmap(void *addr, size_t len, int prot, int flags, int fd, long pad, off_t pos); } -+ SYS_LSEEK = 199 // { off_t sys_lseek(int fd, int pad, off_t offset, int whence); } -+ SYS_TRUNCATE = 200 // { int sys_truncate(const char *path, int pad, off_t length); } -+ SYS_FTRUNCATE = 201 // { int sys_ftruncate(int fd, int pad, off_t length); } -+ SYS_SYSCTL = 202 // { int sys_sysctl(const int *name, u_int namelen, void *old, size_t *oldlenp, void *new, size_t newlen); } -+ SYS_MLOCK = 203 // { int sys_mlock(const void *addr, size_t len); } -+ SYS_MUNLOCK = 204 // { int sys_munlock(const void *addr, size_t len); } -+ SYS_GETPGID = 207 // { pid_t sys_getpgid(pid_t pid); } -+ SYS_UTRACE = 209 // { int sys_utrace(const char *label, const void *addr, size_t len); } -+ SYS_SEMGET = 221 // { int sys_semget(key_t key, int nsems, int semflg); } -+ SYS_MSGGET = 225 // { int sys_msgget(key_t key, int msgflg); } -+ SYS_MSGSND = 226 // { int sys_msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg); } -+ SYS_MSGRCV = 227 // { int sys_msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp, int msgflg); } -+ SYS_SHMAT = 228 // { void *sys_shmat(int shmid, const void *shmaddr, int shmflg); } -+ SYS_SHMDT = 230 // { int sys_shmdt(const void *shmaddr); } -+ SYS_MINHERIT = 250 // { int sys_minherit(void *addr, size_t len, int inherit); } -+ SYS_POLL = 252 // { int sys_poll(struct pollfd *fds, u_int nfds, int timeout); } -+ SYS_ISSETUGID = 253 // { int sys_issetugid(void); } -+ SYS_LCHOWN = 254 // { int sys_lchown(const char *path, uid_t uid, gid_t gid); } -+ SYS_GETSID = 255 // { pid_t sys_getsid(pid_t pid); } -+ SYS_MSYNC = 256 // { int sys_msync(void *addr, size_t len, int flags); } -+ SYS_PIPE = 263 // { int sys_pipe(int *fdp); } -+ SYS_FHOPEN = 264 // { int sys_fhopen(const fhandle_t *fhp, int flags); } -+ SYS_PREADV = 267 // { ssize_t sys_preadv(int fd, const struct iovec *iovp, int iovcnt, int pad, off_t offset); } -+ SYS_PWRITEV = 268 // { ssize_t sys_pwritev(int fd, const struct iovec *iovp, int iovcnt, int pad, off_t offset); } -+ SYS_KQUEUE = 269 // { int sys_kqueue(void); } -+ SYS_MLOCKALL = 271 // { int sys_mlockall(int flags); } -+ SYS_MUNLOCKALL = 272 // { int sys_munlockall(void); } -+ SYS_GETRESUID = 281 // { int sys_getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); } -+ SYS_SETRESUID = 282 // { int sys_setresuid(uid_t ruid, uid_t euid, uid_t suid); } -+ SYS_GETRESGID = 283 // { int sys_getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); } -+ SYS_SETRESGID = 284 // { int sys_setresgid(gid_t rgid, gid_t egid, gid_t sgid); } -+ SYS_MQUERY = 286 // { void *sys_mquery(void *addr, size_t len, int prot, int flags, int fd, long pad, off_t pos); } -+ SYS_CLOSEFROM = 287 // { int sys_closefrom(int fd); } -+ SYS_SIGALTSTACK = 288 // { int sys_sigaltstack(const struct sigaltstack *nss, struct sigaltstack *oss); } -+ SYS_SHMGET = 289 // { int sys_shmget(key_t key, size_t size, int shmflg); } -+ SYS_SEMOP = 290 // { int sys_semop(int semid, struct sembuf *sops, size_t nsops); } -+ SYS_FHSTAT = 294 // { int sys_fhstat(const fhandle_t *fhp, struct stat *sb); } -+ SYS___SEMCTL = 295 // { int sys___semctl(int semid, int semnum, int cmd, union semun *arg); } -+ SYS_SHMCTL = 296 // { int sys_shmctl(int shmid, int cmd, struct shmid_ds *buf); } -+ SYS_MSGCTL = 297 // { int sys_msgctl(int msqid, int cmd, struct msqid_ds *buf); } -+ SYS_SCHED_YIELD = 298 // { int sys_sched_yield(void); } -+ SYS_GETTHRID = 299 // { pid_t sys_getthrid(void); } -+ SYS___THRWAKEUP = 301 // { int sys___thrwakeup(const volatile void *ident, int n); } -+ SYS___THREXIT = 302 // { void sys___threxit(pid_t *notdead); } -+ SYS___THRSIGDIVERT = 303 // { int sys___thrsigdivert(sigset_t sigmask, siginfo_t *info, const struct timespec *timeout); } -+ SYS___GETCWD = 304 // { int sys___getcwd(char *buf, size_t len); } -+ SYS_ADJFREQ = 305 // { int sys_adjfreq(const int64_t *freq, int64_t *oldfreq); } -+ SYS_SETRTABLE = 310 // { int sys_setrtable(int rtableid); } -+ SYS_GETRTABLE = 311 // { int sys_getrtable(void); } -+ SYS_FACCESSAT = 313 // { int sys_faccessat(int fd, const char *path, int amode, int flag); } -+ SYS_FCHMODAT = 314 // { int sys_fchmodat(int fd, const char *path, mode_t mode, int flag); } -+ SYS_FCHOWNAT = 315 // { int sys_fchownat(int fd, const char *path, uid_t uid, gid_t gid, int flag); } -+ SYS_LINKAT = 317 // { int sys_linkat(int fd1, const char *path1, int fd2, const char *path2, int flag); } -+ SYS_MKDIRAT = 318 // { int sys_mkdirat(int fd, const char *path, mode_t mode); } -+ SYS_MKFIFOAT = 319 // { int sys_mkfifoat(int fd, const char *path, mode_t mode); } -+ SYS_MKNODAT = 320 // { int sys_mknodat(int fd, const char *path, mode_t mode, dev_t dev); } -+ SYS_OPENAT = 321 // { int sys_openat(int fd, const char *path, int flags, ... mode_t mode); } -+ SYS_READLINKAT = 322 // { ssize_t sys_readlinkat(int fd, const char *path, char *buf, size_t count); } -+ SYS_RENAMEAT = 323 // { int sys_renameat(int fromfd, const char *from, int tofd, const char *to); } -+ SYS_SYMLINKAT = 324 // { int sys_symlinkat(const char *path, int fd, const char *link); } -+ SYS_UNLINKAT = 325 // { int sys_unlinkat(int fd, const char *path, int flag); } -+ SYS___SET_TCB = 329 // { void sys___set_tcb(void *tcb); } -+ SYS___GET_TCB = 330 // { void *sys___get_tcb(void); } -+) -diff --git a/vendor/golang.org/x/sys/unix/zsysnum_zos_s390x.go b/vendor/golang.org/x/sys/unix/zsysnum_zos_s390x.go -new file mode 100644 -index 0000000..073daad ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/zsysnum_zos_s390x.go -@@ -0,0 +1,2670 @@ -+// Copyright 2020 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build zos && s390x -+// +build zos,s390x -+ -+package unix -+ -+// TODO: auto-generate. -+ -+const ( -+ SYS_ACOSD128 = 0xB80 -+ SYS_ACOSD32 = 0xB7E -+ SYS_ACOSD64 = 0xB7F -+ SYS_ACOSHD128 = 0xB83 -+ SYS_ACOSHD32 = 0xB81 -+ SYS_ACOSHD64 = 0xB82 -+ SYS_AIO_FSYNC = 0xC69 -+ SYS_ASCTIME = 0x0AE -+ SYS_ASCTIME64 = 0xCD7 -+ SYS_ASCTIME64_R = 0xCD8 -+ SYS_ASIND128 = 0xB86 -+ SYS_ASIND32 = 0xB84 -+ SYS_ASIND64 = 0xB85 -+ SYS_ASINHD128 = 0xB89 -+ SYS_ASINHD32 = 0xB87 -+ SYS_ASINHD64 = 0xB88 -+ SYS_ATAN2D128 = 0xB8F -+ SYS_ATAN2D32 = 0xB8D -+ SYS_ATAN2D64 = 0xB8E -+ SYS_ATAND128 = 0xB8C -+ SYS_ATAND32 = 0xB8A -+ SYS_ATAND64 = 0xB8B -+ SYS_ATANHD128 = 0xB92 -+ SYS_ATANHD32 = 0xB90 -+ SYS_ATANHD64 = 0xB91 -+ SYS_BIND2ADDRSEL = 0xD59 -+ SYS_C16RTOMB = 0xD40 -+ SYS_C32RTOMB = 0xD41 -+ SYS_CBRTD128 = 0xB95 -+ SYS_CBRTD32 = 0xB93 -+ SYS_CBRTD64 = 0xB94 -+ SYS_CEILD128 = 0xB98 -+ SYS_CEILD32 = 0xB96 -+ SYS_CEILD64 = 0xB97 -+ SYS_CLEARENV = 0x0C9 -+ SYS_CLEARERR_UNLOCKED = 0xCA1 -+ SYS_CLOCK = 0x0AA -+ SYS_CLOGL = 0xA00 -+ SYS_CLRMEMF = 0x0BD -+ SYS_CONJ = 0xA03 -+ SYS_CONJF = 0xA06 -+ SYS_CONJL = 0xA09 -+ SYS_COPYSIGND128 = 0xB9E -+ SYS_COPYSIGND32 = 0xB9C -+ SYS_COPYSIGND64 = 0xB9D -+ SYS_COSD128 = 0xBA1 -+ SYS_COSD32 = 0xB9F -+ SYS_COSD64 = 0xBA0 -+ SYS_COSHD128 = 0xBA4 -+ SYS_COSHD32 = 0xBA2 -+ SYS_COSHD64 = 0xBA3 -+ SYS_CPOW = 0xA0C -+ SYS_CPOWF = 0xA0F -+ SYS_CPOWL = 0xA12 -+ SYS_CPROJ = 0xA15 -+ SYS_CPROJF = 0xA18 -+ SYS_CPROJL = 0xA1B -+ SYS_CREAL = 0xA1E -+ SYS_CREALF = 0xA21 -+ SYS_CREALL = 0xA24 -+ SYS_CSIN = 0xA27 -+ SYS_CSINF = 0xA2A -+ SYS_CSINH = 0xA30 -+ SYS_CSINHF = 0xA33 -+ SYS_CSINHL = 0xA36 -+ SYS_CSINL = 0xA2D -+ SYS_CSNAP = 0x0C5 -+ SYS_CSQRT = 0xA39 -+ SYS_CSQRTF = 0xA3C -+ SYS_CSQRTL = 0xA3F -+ SYS_CTAN = 0xA42 -+ SYS_CTANF = 0xA45 -+ SYS_CTANH = 0xA4B -+ SYS_CTANHF = 0xA4E -+ SYS_CTANHL = 0xA51 -+ SYS_CTANL = 0xA48 -+ SYS_CTIME = 0x0AB -+ SYS_CTIME64 = 0xCD9 -+ SYS_CTIME64_R = 0xCDA -+ SYS_CTRACE = 0x0C6 -+ SYS_DIFFTIME = 0x0A7 -+ SYS_DIFFTIME64 = 0xCDB -+ SYS_DLADDR = 0xC82 -+ SYS_DYNALLOC = 0x0C3 -+ SYS_DYNFREE = 0x0C2 -+ SYS_ERFCD128 = 0xBAA -+ SYS_ERFCD32 = 0xBA8 -+ SYS_ERFCD64 = 0xBA9 -+ SYS_ERFD128 = 0xBA7 -+ SYS_ERFD32 = 0xBA5 -+ SYS_ERFD64 = 0xBA6 -+ SYS_EXP2D128 = 0xBB0 -+ SYS_EXP2D32 = 0xBAE -+ SYS_EXP2D64 = 0xBAF -+ SYS_EXPD128 = 0xBAD -+ SYS_EXPD32 = 0xBAB -+ SYS_EXPD64 = 0xBAC -+ SYS_EXPM1D128 = 0xBB3 -+ SYS_EXPM1D32 = 0xBB1 -+ SYS_EXPM1D64 = 0xBB2 -+ SYS_FABSD128 = 0xBB6 -+ SYS_FABSD32 = 0xBB4 -+ SYS_FABSD64 = 0xBB5 -+ SYS_FDELREC_UNLOCKED = 0xCA2 -+ SYS_FDIMD128 = 0xBB9 -+ SYS_FDIMD32 = 0xBB7 -+ SYS_FDIMD64 = 0xBB8 -+ SYS_FDOPEN_UNLOCKED = 0xCFC -+ SYS_FECLEAREXCEPT = 0xAEA -+ SYS_FEGETENV = 0xAEB -+ SYS_FEGETEXCEPTFLAG = 0xAEC -+ SYS_FEGETROUND = 0xAED -+ SYS_FEHOLDEXCEPT = 0xAEE -+ SYS_FEOF_UNLOCKED = 0xCA3 -+ SYS_FERAISEEXCEPT = 0xAEF -+ SYS_FERROR_UNLOCKED = 0xCA4 -+ SYS_FESETENV = 0xAF0 -+ SYS_FESETEXCEPTFLAG = 0xAF1 -+ SYS_FESETROUND = 0xAF2 -+ SYS_FETCHEP = 0x0BF -+ SYS_FETESTEXCEPT = 0xAF3 -+ SYS_FEUPDATEENV = 0xAF4 -+ SYS_FE_DEC_GETROUND = 0xBBA -+ SYS_FE_DEC_SETROUND = 0xBBB -+ SYS_FFLUSH_UNLOCKED = 0xCA5 -+ SYS_FGETC_UNLOCKED = 0xC80 -+ SYS_FGETPOS64 = 0xCEE -+ SYS_FGETPOS64_UNLOCKED = 0xCF4 -+ SYS_FGETPOS_UNLOCKED = 0xCA6 -+ SYS_FGETS_UNLOCKED = 0xC7C -+ SYS_FGETWC_UNLOCKED = 0xCA7 -+ SYS_FGETWS_UNLOCKED = 0xCA8 -+ SYS_FILENO_UNLOCKED = 0xCA9 -+ SYS_FLDATA = 0x0C1 -+ SYS_FLDATA_UNLOCKED = 0xCAA -+ SYS_FLOCATE_UNLOCKED = 0xCAB -+ SYS_FLOORD128 = 0xBBE -+ SYS_FLOORD32 = 0xBBC -+ SYS_FLOORD64 = 0xBBD -+ SYS_FMA = 0xA63 -+ SYS_FMAD128 = 0xBC1 -+ SYS_FMAD32 = 0xBBF -+ SYS_FMAD64 = 0xBC0 -+ SYS_FMAF = 0xA66 -+ SYS_FMAL = 0xA69 -+ SYS_FMAX = 0xA6C -+ SYS_FMAXD128 = 0xBC4 -+ SYS_FMAXD32 = 0xBC2 -+ SYS_FMAXD64 = 0xBC3 -+ SYS_FMAXF = 0xA6F -+ SYS_FMAXL = 0xA72 -+ SYS_FMIN = 0xA75 -+ SYS_FMIND128 = 0xBC7 -+ SYS_FMIND32 = 0xBC5 -+ SYS_FMIND64 = 0xBC6 -+ SYS_FMINF = 0xA78 -+ SYS_FMINL = 0xA7B -+ SYS_FMODD128 = 0xBCA -+ SYS_FMODD32 = 0xBC8 -+ SYS_FMODD64 = 0xBC9 -+ SYS_FOPEN64 = 0xD49 -+ SYS_FOPEN64_UNLOCKED = 0xD4A -+ SYS_FOPEN_UNLOCKED = 0xCFA -+ SYS_FPRINTF_UNLOCKED = 0xCAC -+ SYS_FPUTC_UNLOCKED = 0xC81 -+ SYS_FPUTS_UNLOCKED = 0xC7E -+ SYS_FPUTWC_UNLOCKED = 0xCAD -+ SYS_FPUTWS_UNLOCKED = 0xCAE -+ SYS_FREAD_NOUPDATE = 0xCEC -+ SYS_FREAD_NOUPDATE_UNLOCKED = 0xCED -+ SYS_FREAD_UNLOCKED = 0xC7B -+ SYS_FREEIFADDRS = 0xCE6 -+ SYS_FREOPEN64 = 0xD4B -+ SYS_FREOPEN64_UNLOCKED = 0xD4C -+ SYS_FREOPEN_UNLOCKED = 0xCFB -+ SYS_FREXPD128 = 0xBCE -+ SYS_FREXPD32 = 0xBCC -+ SYS_FREXPD64 = 0xBCD -+ SYS_FSCANF_UNLOCKED = 0xCAF -+ SYS_FSEEK64 = 0xCEF -+ SYS_FSEEK64_UNLOCKED = 0xCF5 -+ SYS_FSEEKO64 = 0xCF0 -+ SYS_FSEEKO64_UNLOCKED = 0xCF6 -+ SYS_FSEEKO_UNLOCKED = 0xCB1 -+ SYS_FSEEK_UNLOCKED = 0xCB0 -+ SYS_FSETPOS64 = 0xCF1 -+ SYS_FSETPOS64_UNLOCKED = 0xCF7 -+ SYS_FSETPOS_UNLOCKED = 0xCB3 -+ SYS_FTELL64 = 0xCF2 -+ SYS_FTELL64_UNLOCKED = 0xCF8 -+ SYS_FTELLO64 = 0xCF3 -+ SYS_FTELLO64_UNLOCKED = 0xCF9 -+ SYS_FTELLO_UNLOCKED = 0xCB5 -+ SYS_FTELL_UNLOCKED = 0xCB4 -+ SYS_FUPDATE = 0x0B5 -+ SYS_FUPDATE_UNLOCKED = 0xCB7 -+ SYS_FWIDE_UNLOCKED = 0xCB8 -+ SYS_FWPRINTF_UNLOCKED = 0xCB9 -+ SYS_FWRITE_UNLOCKED = 0xC7A -+ SYS_FWSCANF_UNLOCKED = 0xCBA -+ SYS_GETDATE64 = 0xD4F -+ SYS_GETIFADDRS = 0xCE7 -+ SYS_GETIPV4SOURCEFILTER = 0xC77 -+ SYS_GETSOURCEFILTER = 0xC79 -+ SYS_GETSYNTX = 0x0FD -+ SYS_GETS_UNLOCKED = 0xC7D -+ SYS_GETTIMEOFDAY64 = 0xD50 -+ SYS_GETWCHAR_UNLOCKED = 0xCBC -+ SYS_GETWC_UNLOCKED = 0xCBB -+ SYS_GMTIME = 0x0B0 -+ SYS_GMTIME64 = 0xCDC -+ SYS_GMTIME64_R = 0xCDD -+ SYS_HYPOTD128 = 0xBD1 -+ SYS_HYPOTD32 = 0xBCF -+ SYS_HYPOTD64 = 0xBD0 -+ SYS_ILOGBD128 = 0xBD4 -+ SYS_ILOGBD32 = 0xBD2 -+ SYS_ILOGBD64 = 0xBD3 -+ SYS_ILOGBF = 0xA7E -+ SYS_ILOGBL = 0xA81 -+ SYS_INET6_IS_SRCADDR = 0xD5A -+ SYS_ISBLANK = 0x0FE -+ SYS_ISWALNUM = 0x0FF -+ SYS_LDEXPD128 = 0xBD7 -+ SYS_LDEXPD32 = 0xBD5 -+ SYS_LDEXPD64 = 0xBD6 -+ SYS_LGAMMAD128 = 0xBDA -+ SYS_LGAMMAD32 = 0xBD8 -+ SYS_LGAMMAD64 = 0xBD9 -+ SYS_LIO_LISTIO = 0xC6A -+ SYS_LLRINT = 0xA84 -+ SYS_LLRINTD128 = 0xBDD -+ SYS_LLRINTD32 = 0xBDB -+ SYS_LLRINTD64 = 0xBDC -+ SYS_LLRINTF = 0xA87 -+ SYS_LLRINTL = 0xA8A -+ SYS_LLROUND = 0xA8D -+ SYS_LLROUNDD128 = 0xBE0 -+ SYS_LLROUNDD32 = 0xBDE -+ SYS_LLROUNDD64 = 0xBDF -+ SYS_LLROUNDF = 0xA90 -+ SYS_LLROUNDL = 0xA93 -+ SYS_LOCALTIM = 0x0B1 -+ SYS_LOCALTIME = 0x0B1 -+ SYS_LOCALTIME64 = 0xCDE -+ SYS_LOCALTIME64_R = 0xCDF -+ SYS_LOG10D128 = 0xBE6 -+ SYS_LOG10D32 = 0xBE4 -+ SYS_LOG10D64 = 0xBE5 -+ SYS_LOG1PD128 = 0xBE9 -+ SYS_LOG1PD32 = 0xBE7 -+ SYS_LOG1PD64 = 0xBE8 -+ SYS_LOG2D128 = 0xBEC -+ SYS_LOG2D32 = 0xBEA -+ SYS_LOG2D64 = 0xBEB -+ SYS_LOGBD128 = 0xBEF -+ SYS_LOGBD32 = 0xBED -+ SYS_LOGBD64 = 0xBEE -+ SYS_LOGBF = 0xA96 -+ SYS_LOGBL = 0xA99 -+ SYS_LOGD128 = 0xBE3 -+ SYS_LOGD32 = 0xBE1 -+ SYS_LOGD64 = 0xBE2 -+ SYS_LRINT = 0xA9C -+ SYS_LRINTD128 = 0xBF2 -+ SYS_LRINTD32 = 0xBF0 -+ SYS_LRINTD64 = 0xBF1 -+ SYS_LRINTF = 0xA9F -+ SYS_LRINTL = 0xAA2 -+ SYS_LROUNDD128 = 0xBF5 -+ SYS_LROUNDD32 = 0xBF3 -+ SYS_LROUNDD64 = 0xBF4 -+ SYS_LROUNDL = 0xAA5 -+ SYS_MBLEN = 0x0AF -+ SYS_MBRTOC16 = 0xD42 -+ SYS_MBRTOC32 = 0xD43 -+ SYS_MEMSET = 0x0A3 -+ SYS_MKTIME = 0x0AC -+ SYS_MKTIME64 = 0xCE0 -+ SYS_MODFD128 = 0xBF8 -+ SYS_MODFD32 = 0xBF6 -+ SYS_MODFD64 = 0xBF7 -+ SYS_NAN = 0xAA8 -+ SYS_NAND128 = 0xBFB -+ SYS_NAND32 = 0xBF9 -+ SYS_NAND64 = 0xBFA -+ SYS_NANF = 0xAAA -+ SYS_NANL = 0xAAC -+ SYS_NEARBYINT = 0xAAE -+ SYS_NEARBYINTD128 = 0xBFE -+ SYS_NEARBYINTD32 = 0xBFC -+ SYS_NEARBYINTD64 = 0xBFD -+ SYS_NEARBYINTF = 0xAB1 -+ SYS_NEARBYINTL = 0xAB4 -+ SYS_NEXTAFTERD128 = 0xC01 -+ SYS_NEXTAFTERD32 = 0xBFF -+ SYS_NEXTAFTERD64 = 0xC00 -+ SYS_NEXTAFTERF = 0xAB7 -+ SYS_NEXTAFTERL = 0xABA -+ SYS_NEXTTOWARD = 0xABD -+ SYS_NEXTTOWARDD128 = 0xC04 -+ SYS_NEXTTOWARDD32 = 0xC02 -+ SYS_NEXTTOWARDD64 = 0xC03 -+ SYS_NEXTTOWARDF = 0xAC0 -+ SYS_NEXTTOWARDL = 0xAC3 -+ SYS_NL_LANGINFO = 0x0FC -+ SYS_PERROR_UNLOCKED = 0xCBD -+ SYS_POSIX_FALLOCATE = 0xCE8 -+ SYS_POSIX_MEMALIGN = 0xCE9 -+ SYS_POSIX_OPENPT = 0xC66 -+ SYS_POWD128 = 0xC07 -+ SYS_POWD32 = 0xC05 -+ SYS_POWD64 = 0xC06 -+ SYS_PRINTF_UNLOCKED = 0xCBE -+ SYS_PSELECT = 0xC67 -+ SYS_PTHREAD_ATTR_GETSTACK = 0xB3E -+ SYS_PTHREAD_ATTR_SETSTACK = 0xB3F -+ SYS_PTHREAD_SECURITY_APPLID_NP = 0xCE4 -+ SYS_PUTS_UNLOCKED = 0xC7F -+ SYS_PUTWCHAR_UNLOCKED = 0xCC0 -+ SYS_PUTWC_UNLOCKED = 0xCBF -+ SYS_QUANTEXPD128 = 0xD46 -+ SYS_QUANTEXPD32 = 0xD44 -+ SYS_QUANTEXPD64 = 0xD45 -+ SYS_QUANTIZED128 = 0xC0A -+ SYS_QUANTIZED32 = 0xC08 -+ SYS_QUANTIZED64 = 0xC09 -+ SYS_REMAINDERD128 = 0xC0D -+ SYS_REMAINDERD32 = 0xC0B -+ SYS_REMAINDERD64 = 0xC0C -+ SYS_RESIZE_ALLOC = 0xCEB -+ SYS_REWIND_UNLOCKED = 0xCC1 -+ SYS_RINTD128 = 0xC13 -+ SYS_RINTD32 = 0xC11 -+ SYS_RINTD64 = 0xC12 -+ SYS_RINTF = 0xACB -+ SYS_RINTL = 0xACD -+ SYS_ROUND = 0xACF -+ SYS_ROUNDD128 = 0xC16 -+ SYS_ROUNDD32 = 0xC14 -+ SYS_ROUNDD64 = 0xC15 -+ SYS_ROUNDF = 0xAD2 -+ SYS_ROUNDL = 0xAD5 -+ SYS_SAMEQUANTUMD128 = 0xC19 -+ SYS_SAMEQUANTUMD32 = 0xC17 -+ SYS_SAMEQUANTUMD64 = 0xC18 -+ SYS_SCALBLN = 0xAD8 -+ SYS_SCALBLND128 = 0xC1C -+ SYS_SCALBLND32 = 0xC1A -+ SYS_SCALBLND64 = 0xC1B -+ SYS_SCALBLNF = 0xADB -+ SYS_SCALBLNL = 0xADE -+ SYS_SCALBND128 = 0xC1F -+ SYS_SCALBND32 = 0xC1D -+ SYS_SCALBND64 = 0xC1E -+ SYS_SCALBNF = 0xAE3 -+ SYS_SCALBNL = 0xAE6 -+ SYS_SCANF_UNLOCKED = 0xCC2 -+ SYS_SCHED_YIELD = 0xB32 -+ SYS_SETENV = 0x0C8 -+ SYS_SETIPV4SOURCEFILTER = 0xC76 -+ SYS_SETSOURCEFILTER = 0xC78 -+ SYS_SHM_OPEN = 0xC8C -+ SYS_SHM_UNLINK = 0xC8D -+ SYS_SIND128 = 0xC22 -+ SYS_SIND32 = 0xC20 -+ SYS_SIND64 = 0xC21 -+ SYS_SINHD128 = 0xC25 -+ SYS_SINHD32 = 0xC23 -+ SYS_SINHD64 = 0xC24 -+ SYS_SIZEOF_ALLOC = 0xCEA -+ SYS_SOCKATMARK = 0xC68 -+ SYS_SQRTD128 = 0xC28 -+ SYS_SQRTD32 = 0xC26 -+ SYS_SQRTD64 = 0xC27 -+ SYS_STRCHR = 0x0A0 -+ SYS_STRCSPN = 0x0A1 -+ SYS_STRERROR = 0x0A8 -+ SYS_STRERROR_R = 0xB33 -+ SYS_STRFTIME = 0x0B2 -+ SYS_STRLEN = 0x0A9 -+ SYS_STRPBRK = 0x0A2 -+ SYS_STRSPN = 0x0A4 -+ SYS_STRSTR = 0x0A5 -+ SYS_STRTOD128 = 0xC2B -+ SYS_STRTOD32 = 0xC29 -+ SYS_STRTOD64 = 0xC2A -+ SYS_STRTOK = 0x0A6 -+ SYS_TAND128 = 0xC2E -+ SYS_TAND32 = 0xC2C -+ SYS_TAND64 = 0xC2D -+ SYS_TANHD128 = 0xC31 -+ SYS_TANHD32 = 0xC2F -+ SYS_TANHD64 = 0xC30 -+ SYS_TGAMMAD128 = 0xC34 -+ SYS_TGAMMAD32 = 0xC32 -+ SYS_TGAMMAD64 = 0xC33 -+ SYS_TIME = 0x0AD -+ SYS_TIME64 = 0xCE1 -+ SYS_TMPFILE64 = 0xD4D -+ SYS_TMPFILE64_UNLOCKED = 0xD4E -+ SYS_TMPFILE_UNLOCKED = 0xCFD -+ SYS_TRUNCD128 = 0xC40 -+ SYS_TRUNCD32 = 0xC3E -+ SYS_TRUNCD64 = 0xC3F -+ SYS_UNGETC_UNLOCKED = 0xCC3 -+ SYS_UNGETWC_UNLOCKED = 0xCC4 -+ SYS_UNSETENV = 0xB34 -+ SYS_VFPRINTF_UNLOCKED = 0xCC5 -+ SYS_VFSCANF_UNLOCKED = 0xCC7 -+ SYS_VFWPRINTF_UNLOCKED = 0xCC9 -+ SYS_VFWSCANF_UNLOCKED = 0xCCB -+ SYS_VPRINTF_UNLOCKED = 0xCCD -+ SYS_VSCANF_UNLOCKED = 0xCCF -+ SYS_VWPRINTF_UNLOCKED = 0xCD1 -+ SYS_VWSCANF_UNLOCKED = 0xCD3 -+ SYS_WCSTOD128 = 0xC43 -+ SYS_WCSTOD32 = 0xC41 -+ SYS_WCSTOD64 = 0xC42 -+ SYS_WPRINTF_UNLOCKED = 0xCD5 -+ SYS_WSCANF_UNLOCKED = 0xCD6 -+ SYS__FLUSHLBF = 0xD68 -+ SYS__FLUSHLBF_UNLOCKED = 0xD6F -+ SYS___ACOSHF_H = 0xA54 -+ SYS___ACOSHL_H = 0xA55 -+ SYS___ASINHF_H = 0xA56 -+ SYS___ASINHL_H = 0xA57 -+ SYS___ATANPID128 = 0xC6D -+ SYS___ATANPID32 = 0xC6B -+ SYS___ATANPID64 = 0xC6C -+ SYS___CBRTF_H = 0xA58 -+ SYS___CBRTL_H = 0xA59 -+ SYS___CDUMP = 0x0C4 -+ SYS___CLASS = 0xAFA -+ SYS___CLASS2 = 0xB99 -+ SYS___CLASS2D128 = 0xC99 -+ SYS___CLASS2D32 = 0xC97 -+ SYS___CLASS2D64 = 0xC98 -+ SYS___CLASS2F = 0xC91 -+ SYS___CLASS2F_B = 0xC93 -+ SYS___CLASS2F_H = 0xC94 -+ SYS___CLASS2L = 0xC92 -+ SYS___CLASS2L_B = 0xC95 -+ SYS___CLASS2L_H = 0xC96 -+ SYS___CLASS2_B = 0xB9A -+ SYS___CLASS2_H = 0xB9B -+ SYS___CLASS_B = 0xAFB -+ SYS___CLASS_H = 0xAFC -+ SYS___CLOGL_B = 0xA01 -+ SYS___CLOGL_H = 0xA02 -+ SYS___CLRENV = 0x0C9 -+ SYS___CLRMF = 0x0BD -+ SYS___CODEPAGE_INFO = 0xC64 -+ SYS___CONJF_B = 0xA07 -+ SYS___CONJF_H = 0xA08 -+ SYS___CONJL_B = 0xA0A -+ SYS___CONJL_H = 0xA0B -+ SYS___CONJ_B = 0xA04 -+ SYS___CONJ_H = 0xA05 -+ SYS___COPYSIGN_B = 0xA5A -+ SYS___COPYSIGN_H = 0xAF5 -+ SYS___COSPID128 = 0xC70 -+ SYS___COSPID32 = 0xC6E -+ SYS___COSPID64 = 0xC6F -+ SYS___CPOWF_B = 0xA10 -+ SYS___CPOWF_H = 0xA11 -+ SYS___CPOWL_B = 0xA13 -+ SYS___CPOWL_H = 0xA14 -+ SYS___CPOW_B = 0xA0D -+ SYS___CPOW_H = 0xA0E -+ SYS___CPROJF_B = 0xA19 -+ SYS___CPROJF_H = 0xA1A -+ SYS___CPROJL_B = 0xA1C -+ SYS___CPROJL_H = 0xA1D -+ SYS___CPROJ_B = 0xA16 -+ SYS___CPROJ_H = 0xA17 -+ SYS___CREALF_B = 0xA22 -+ SYS___CREALF_H = 0xA23 -+ SYS___CREALL_B = 0xA25 -+ SYS___CREALL_H = 0xA26 -+ SYS___CREAL_B = 0xA1F -+ SYS___CREAL_H = 0xA20 -+ SYS___CSINF_B = 0xA2B -+ SYS___CSINF_H = 0xA2C -+ SYS___CSINHF_B = 0xA34 -+ SYS___CSINHF_H = 0xA35 -+ SYS___CSINHL_B = 0xA37 -+ SYS___CSINHL_H = 0xA38 -+ SYS___CSINH_B = 0xA31 -+ SYS___CSINH_H = 0xA32 -+ SYS___CSINL_B = 0xA2E -+ SYS___CSINL_H = 0xA2F -+ SYS___CSIN_B = 0xA28 -+ SYS___CSIN_H = 0xA29 -+ SYS___CSNAP = 0x0C5 -+ SYS___CSQRTF_B = 0xA3D -+ SYS___CSQRTF_H = 0xA3E -+ SYS___CSQRTL_B = 0xA40 -+ SYS___CSQRTL_H = 0xA41 -+ SYS___CSQRT_B = 0xA3A -+ SYS___CSQRT_H = 0xA3B -+ SYS___CTANF_B = 0xA46 -+ SYS___CTANF_H = 0xA47 -+ SYS___CTANHF_B = 0xA4F -+ SYS___CTANHF_H = 0xA50 -+ SYS___CTANHL_B = 0xA52 -+ SYS___CTANHL_H = 0xA53 -+ SYS___CTANH_B = 0xA4C -+ SYS___CTANH_H = 0xA4D -+ SYS___CTANL_B = 0xA49 -+ SYS___CTANL_H = 0xA4A -+ SYS___CTAN_B = 0xA43 -+ SYS___CTAN_H = 0xA44 -+ SYS___CTEST = 0x0C7 -+ SYS___CTRACE = 0x0C6 -+ SYS___D1TOP = 0xC9B -+ SYS___D2TOP = 0xC9C -+ SYS___D4TOP = 0xC9D -+ SYS___DYNALL = 0x0C3 -+ SYS___DYNFRE = 0x0C2 -+ SYS___EXP2F_H = 0xA5E -+ SYS___EXP2L_H = 0xA5F -+ SYS___EXP2_H = 0xA5D -+ SYS___EXPM1F_H = 0xA5B -+ SYS___EXPM1L_H = 0xA5C -+ SYS___FBUFSIZE = 0xD60 -+ SYS___FLBF = 0xD62 -+ SYS___FLDATA = 0x0C1 -+ SYS___FMAF_B = 0xA67 -+ SYS___FMAF_H = 0xA68 -+ SYS___FMAL_B = 0xA6A -+ SYS___FMAL_H = 0xA6B -+ SYS___FMAXF_B = 0xA70 -+ SYS___FMAXF_H = 0xA71 -+ SYS___FMAXL_B = 0xA73 -+ SYS___FMAXL_H = 0xA74 -+ SYS___FMAX_B = 0xA6D -+ SYS___FMAX_H = 0xA6E -+ SYS___FMA_B = 0xA64 -+ SYS___FMA_H = 0xA65 -+ SYS___FMINF_B = 0xA79 -+ SYS___FMINF_H = 0xA7A -+ SYS___FMINL_B = 0xA7C -+ SYS___FMINL_H = 0xA7D -+ SYS___FMIN_B = 0xA76 -+ SYS___FMIN_H = 0xA77 -+ SYS___FPENDING = 0xD61 -+ SYS___FPENDING_UNLOCKED = 0xD6C -+ SYS___FPURGE = 0xD69 -+ SYS___FPURGE_UNLOCKED = 0xD70 -+ SYS___FP_CAST_D = 0xBCB -+ SYS___FREADABLE = 0xD63 -+ SYS___FREADAHEAD = 0xD6A -+ SYS___FREADAHEAD_UNLOCKED = 0xD71 -+ SYS___FREADING = 0xD65 -+ SYS___FREADING_UNLOCKED = 0xD6D -+ SYS___FSEEK2 = 0xB3C -+ SYS___FSETERR = 0xD6B -+ SYS___FSETLOCKING = 0xD67 -+ SYS___FTCHEP = 0x0BF -+ SYS___FTELL2 = 0xB3B -+ SYS___FUPDT = 0x0B5 -+ SYS___FWRITABLE = 0xD64 -+ SYS___FWRITING = 0xD66 -+ SYS___FWRITING_UNLOCKED = 0xD6E -+ SYS___GETCB = 0x0B4 -+ SYS___GETGRGID1 = 0xD5B -+ SYS___GETGRNAM1 = 0xD5C -+ SYS___GETTHENT = 0xCE5 -+ SYS___GETTOD = 0xD3E -+ SYS___HYPOTF_H = 0xAF6 -+ SYS___HYPOTL_H = 0xAF7 -+ SYS___ILOGBF_B = 0xA7F -+ SYS___ILOGBF_H = 0xA80 -+ SYS___ILOGBL_B = 0xA82 -+ SYS___ILOGBL_H = 0xA83 -+ SYS___ISBLANK_A = 0xB2E -+ SYS___ISBLNK = 0x0FE -+ SYS___ISWBLANK_A = 0xB2F -+ SYS___LE_CEEGTJS = 0xD72 -+ SYS___LE_TRACEBACK = 0xB7A -+ SYS___LGAMMAL_H = 0xA62 -+ SYS___LGAMMA_B_C99 = 0xB39 -+ SYS___LGAMMA_H_C99 = 0xB38 -+ SYS___LGAMMA_R_C99 = 0xB3A -+ SYS___LLRINTF_B = 0xA88 -+ SYS___LLRINTF_H = 0xA89 -+ SYS___LLRINTL_B = 0xA8B -+ SYS___LLRINTL_H = 0xA8C -+ SYS___LLRINT_B = 0xA85 -+ SYS___LLRINT_H = 0xA86 -+ SYS___LLROUNDF_B = 0xA91 -+ SYS___LLROUNDF_H = 0xA92 -+ SYS___LLROUNDL_B = 0xA94 -+ SYS___LLROUNDL_H = 0xA95 -+ SYS___LLROUND_B = 0xA8E -+ SYS___LLROUND_H = 0xA8F -+ SYS___LOCALE_CTL = 0xD47 -+ SYS___LOG1PF_H = 0xA60 -+ SYS___LOG1PL_H = 0xA61 -+ SYS___LOGBF_B = 0xA97 -+ SYS___LOGBF_H = 0xA98 -+ SYS___LOGBL_B = 0xA9A -+ SYS___LOGBL_H = 0xA9B -+ SYS___LOGIN_APPLID = 0xCE2 -+ SYS___LRINTF_B = 0xAA0 -+ SYS___LRINTF_H = 0xAA1 -+ SYS___LRINTL_B = 0xAA3 -+ SYS___LRINTL_H = 0xAA4 -+ SYS___LRINT_B = 0xA9D -+ SYS___LRINT_H = 0xA9E -+ SYS___LROUNDF_FIXUP = 0xB31 -+ SYS___LROUNDL_B = 0xAA6 -+ SYS___LROUNDL_H = 0xAA7 -+ SYS___LROUND_FIXUP = 0xB30 -+ SYS___MOSERVICES = 0xD3D -+ SYS___MUST_STAY_CLEAN = 0xB7C -+ SYS___NANF_B = 0xAAB -+ SYS___NANL_B = 0xAAD -+ SYS___NAN_B = 0xAA9 -+ SYS___NEARBYINTF_B = 0xAB2 -+ SYS___NEARBYINTF_H = 0xAB3 -+ SYS___NEARBYINTL_B = 0xAB5 -+ SYS___NEARBYINTL_H = 0xAB6 -+ SYS___NEARBYINT_B = 0xAAF -+ SYS___NEARBYINT_H = 0xAB0 -+ SYS___NEXTAFTERF_B = 0xAB8 -+ SYS___NEXTAFTERF_H = 0xAB9 -+ SYS___NEXTAFTERL_B = 0xABB -+ SYS___NEXTAFTERL_H = 0xABC -+ SYS___NEXTTOWARDF_B = 0xAC1 -+ SYS___NEXTTOWARDF_H = 0xAC2 -+ SYS___NEXTTOWARDL_B = 0xAC4 -+ SYS___NEXTTOWARDL_H = 0xAC5 -+ SYS___NEXTTOWARD_B = 0xABE -+ SYS___NEXTTOWARD_H = 0xABF -+ SYS___O_ENV = 0xB7D -+ SYS___PASSWD_APPLID = 0xCE3 -+ SYS___PTOD1 = 0xC9E -+ SYS___PTOD2 = 0xC9F -+ SYS___PTOD4 = 0xCA0 -+ SYS___REGCOMP_STD = 0x0EA -+ SYS___REMAINDERF_H = 0xAC6 -+ SYS___REMAINDERL_H = 0xAC7 -+ SYS___REMQUOD128 = 0xC10 -+ SYS___REMQUOD32 = 0xC0E -+ SYS___REMQUOD64 = 0xC0F -+ SYS___REMQUOF_H = 0xAC9 -+ SYS___REMQUOL_H = 0xACA -+ SYS___REMQUO_H = 0xAC8 -+ SYS___RINTF_B = 0xACC -+ SYS___RINTL_B = 0xACE -+ SYS___ROUNDF_B = 0xAD3 -+ SYS___ROUNDF_H = 0xAD4 -+ SYS___ROUNDL_B = 0xAD6 -+ SYS___ROUNDL_H = 0xAD7 -+ SYS___ROUND_B = 0xAD0 -+ SYS___ROUND_H = 0xAD1 -+ SYS___SCALBLNF_B = 0xADC -+ SYS___SCALBLNF_H = 0xADD -+ SYS___SCALBLNL_B = 0xADF -+ SYS___SCALBLNL_H = 0xAE0 -+ SYS___SCALBLN_B = 0xAD9 -+ SYS___SCALBLN_H = 0xADA -+ SYS___SCALBNF_B = 0xAE4 -+ SYS___SCALBNF_H = 0xAE5 -+ SYS___SCALBNL_B = 0xAE7 -+ SYS___SCALBNL_H = 0xAE8 -+ SYS___SCALBN_B = 0xAE1 -+ SYS___SCALBN_H = 0xAE2 -+ SYS___SETENV = 0x0C8 -+ SYS___SINPID128 = 0xC73 -+ SYS___SINPID32 = 0xC71 -+ SYS___SINPID64 = 0xC72 -+ SYS___SMF_RECORD2 = 0xD48 -+ SYS___STATIC_REINIT = 0xB3D -+ SYS___TGAMMAF_H_C99 = 0xB79 -+ SYS___TGAMMAL_H = 0xAE9 -+ SYS___TGAMMA_H_C99 = 0xB78 -+ SYS___TOCSNAME2 = 0xC9A -+ SYS_CEIL = 0x01F -+ SYS_CHAUDIT = 0x1E0 -+ SYS_EXP = 0x01A -+ SYS_FCHAUDIT = 0x1E1 -+ SYS_FREXP = 0x01D -+ SYS_GETGROUPSBYNAME = 0x1E2 -+ SYS_GETPWUID = 0x1A0 -+ SYS_GETUID = 0x1A1 -+ SYS_ISATTY = 0x1A3 -+ SYS_KILL = 0x1A4 -+ SYS_LDEXP = 0x01E -+ SYS_LINK = 0x1A5 -+ SYS_LOG10 = 0x01C -+ SYS_LSEEK = 0x1A6 -+ SYS_LSTAT = 0x1A7 -+ SYS_MKDIR = 0x1A8 -+ SYS_MKFIFO = 0x1A9 -+ SYS_MKNOD = 0x1AA -+ SYS_MODF = 0x01B -+ SYS_MOUNT = 0x1AB -+ SYS_OPEN = 0x1AC -+ SYS_OPENDIR = 0x1AD -+ SYS_PATHCONF = 0x1AE -+ SYS_PAUSE = 0x1AF -+ SYS_PIPE = 0x1B0 -+ SYS_PTHREAD_ATTR_DESTROY = 0x1E7 -+ SYS_PTHREAD_ATTR_GETDETACHSTATE = 0x1EB -+ SYS_PTHREAD_ATTR_GETSTACKSIZE = 0x1E9 -+ SYS_PTHREAD_ATTR_GETWEIGHT_NP = 0x1ED -+ SYS_PTHREAD_ATTR_INIT = 0x1E6 -+ SYS_PTHREAD_ATTR_SETDETACHSTATE = 0x1EA -+ SYS_PTHREAD_ATTR_SETSTACKSIZE = 0x1E8 -+ SYS_PTHREAD_ATTR_SETWEIGHT_NP = 0x1EC -+ SYS_PTHREAD_CANCEL = 0x1EE -+ SYS_PTHREAD_CLEANUP_POP = 0x1F0 -+ SYS_PTHREAD_CLEANUP_PUSH = 0x1EF -+ SYS_PTHREAD_CONDATTR_DESTROY = 0x1F2 -+ SYS_PTHREAD_CONDATTR_INIT = 0x1F1 -+ SYS_PTHREAD_COND_BROADCAST = 0x1F6 -+ SYS_PTHREAD_COND_DESTROY = 0x1F4 -+ SYS_PTHREAD_COND_INIT = 0x1F3 -+ SYS_PTHREAD_COND_SIGNAL = 0x1F5 -+ SYS_PTHREAD_COND_TIMEDWAIT = 0x1F8 -+ SYS_PTHREAD_COND_WAIT = 0x1F7 -+ SYS_PTHREAD_CREATE = 0x1F9 -+ SYS_PTHREAD_DETACH = 0x1FA -+ SYS_PTHREAD_EQUAL = 0x1FB -+ SYS_PTHREAD_EXIT = 0x1E4 -+ SYS_PTHREAD_GETSPECIFIC = 0x1FC -+ SYS_PTHREAD_JOIN = 0x1FD -+ SYS_PTHREAD_KEY_CREATE = 0x1FE -+ SYS_PTHREAD_KILL = 0x1E5 -+ SYS_PTHREAD_MUTEXATTR_INIT = 0x1FF -+ SYS_READ = 0x1B2 -+ SYS_READDIR = 0x1B3 -+ SYS_READLINK = 0x1B4 -+ SYS_REWINDDIR = 0x1B5 -+ SYS_RMDIR = 0x1B6 -+ SYS_SETEGID = 0x1B7 -+ SYS_SETEUID = 0x1B8 -+ SYS_SETGID = 0x1B9 -+ SYS_SETPGID = 0x1BA -+ SYS_SETSID = 0x1BB -+ SYS_SETUID = 0x1BC -+ SYS_SIGACTION = 0x1BD -+ SYS_SIGADDSET = 0x1BE -+ SYS_SIGDELSET = 0x1BF -+ SYS_SIGEMPTYSET = 0x1C0 -+ SYS_SIGFILLSET = 0x1C1 -+ SYS_SIGISMEMBER = 0x1C2 -+ SYS_SIGLONGJMP = 0x1C3 -+ SYS_SIGPENDING = 0x1C4 -+ SYS_SIGPROCMASK = 0x1C5 -+ SYS_SIGSETJMP = 0x1C6 -+ SYS_SIGSUSPEND = 0x1C7 -+ SYS_SIGWAIT = 0x1E3 -+ SYS_SLEEP = 0x1C8 -+ SYS_STAT = 0x1C9 -+ SYS_SYMLINK = 0x1CB -+ SYS_SYSCONF = 0x1CC -+ SYS_TCDRAIN = 0x1CD -+ SYS_TCFLOW = 0x1CE -+ SYS_TCFLUSH = 0x1CF -+ SYS_TCGETATTR = 0x1D0 -+ SYS_TCGETPGRP = 0x1D1 -+ SYS_TCSENDBREAK = 0x1D2 -+ SYS_TCSETATTR = 0x1D3 -+ SYS_TCSETPGRP = 0x1D4 -+ SYS_TIMES = 0x1D5 -+ SYS_TTYNAME = 0x1D6 -+ SYS_TZSET = 0x1D7 -+ SYS_UMASK = 0x1D8 -+ SYS_UMOUNT = 0x1D9 -+ SYS_UNAME = 0x1DA -+ SYS_UNLINK = 0x1DB -+ SYS_UTIME = 0x1DC -+ SYS_WAIT = 0x1DD -+ SYS_WAITPID = 0x1DE -+ SYS_WRITE = 0x1DF -+ SYS_W_GETPSENT = 0x1B1 -+ SYS_W_IOCTL = 0x1A2 -+ SYS_W_STATFS = 0x1CA -+ SYS_A64L = 0x2EF -+ SYS_BCMP = 0x2B9 -+ SYS_BCOPY = 0x2BA -+ SYS_BZERO = 0x2BB -+ SYS_CATCLOSE = 0x2B6 -+ SYS_CATGETS = 0x2B7 -+ SYS_CATOPEN = 0x2B8 -+ SYS_CRYPT = 0x2AC -+ SYS_DBM_CLEARERR = 0x2F7 -+ SYS_DBM_CLOSE = 0x2F8 -+ SYS_DBM_DELETE = 0x2F9 -+ SYS_DBM_ERROR = 0x2FA -+ SYS_DBM_FETCH = 0x2FB -+ SYS_DBM_FIRSTKEY = 0x2FC -+ SYS_DBM_NEXTKEY = 0x2FD -+ SYS_DBM_OPEN = 0x2FE -+ SYS_DBM_STORE = 0x2FF -+ SYS_DRAND48 = 0x2B2 -+ SYS_ENCRYPT = 0x2AD -+ SYS_ENDUTXENT = 0x2E1 -+ SYS_ERAND48 = 0x2B3 -+ SYS_ERF = 0x02C -+ SYS_ERFC = 0x02D -+ SYS_FCHDIR = 0x2D9 -+ SYS_FFS = 0x2BC -+ SYS_FMTMSG = 0x2E5 -+ SYS_FSTATVFS = 0x2B4 -+ SYS_FTIME = 0x2F5 -+ SYS_GAMMA = 0x02E -+ SYS_GETDATE = 0x2A6 -+ SYS_GETPAGESIZE = 0x2D8 -+ SYS_GETTIMEOFDAY = 0x2F6 -+ SYS_GETUTXENT = 0x2E0 -+ SYS_GETUTXID = 0x2E2 -+ SYS_GETUTXLINE = 0x2E3 -+ SYS_HCREATE = 0x2C6 -+ SYS_HDESTROY = 0x2C7 -+ SYS_HSEARCH = 0x2C8 -+ SYS_HYPOT = 0x02B -+ SYS_INDEX = 0x2BD -+ SYS_INITSTATE = 0x2C2 -+ SYS_INSQUE = 0x2CF -+ SYS_ISASCII = 0x2ED -+ SYS_JRAND48 = 0x2E6 -+ SYS_L64A = 0x2F0 -+ SYS_LCONG48 = 0x2EA -+ SYS_LFIND = 0x2C9 -+ SYS_LRAND48 = 0x2E7 -+ SYS_LSEARCH = 0x2CA -+ SYS_MEMCCPY = 0x2D4 -+ SYS_MRAND48 = 0x2E8 -+ SYS_NRAND48 = 0x2E9 -+ SYS_PCLOSE = 0x2D2 -+ SYS_POPEN = 0x2D1 -+ SYS_PUTUTXLINE = 0x2E4 -+ SYS_RANDOM = 0x2C4 -+ SYS_REMQUE = 0x2D0 -+ SYS_RINDEX = 0x2BE -+ SYS_SEED48 = 0x2EC -+ SYS_SETKEY = 0x2AE -+ SYS_SETSTATE = 0x2C3 -+ SYS_SETUTXENT = 0x2DF -+ SYS_SRAND48 = 0x2EB -+ SYS_SRANDOM = 0x2C5 -+ SYS_STATVFS = 0x2B5 -+ SYS_STRCASECMP = 0x2BF -+ SYS_STRDUP = 0x2C0 -+ SYS_STRNCASECMP = 0x2C1 -+ SYS_SWAB = 0x2D3 -+ SYS_TDELETE = 0x2CB -+ SYS_TFIND = 0x2CC -+ SYS_TOASCII = 0x2EE -+ SYS_TSEARCH = 0x2CD -+ SYS_TWALK = 0x2CE -+ SYS_UALARM = 0x2F1 -+ SYS_USLEEP = 0x2F2 -+ SYS_WAIT3 = 0x2A7 -+ SYS_WAITID = 0x2A8 -+ SYS_Y1 = 0x02A -+ SYS___ATOE = 0x2DB -+ SYS___ATOE_L = 0x2DC -+ SYS___CATTRM = 0x2A9 -+ SYS___CNVBLK = 0x2AF -+ SYS___CRYTRM = 0x2B0 -+ SYS___DLGHT = 0x2A1 -+ SYS___ECRTRM = 0x2B1 -+ SYS___ETOA = 0x2DD -+ SYS___ETOA_L = 0x2DE -+ SYS___GDTRM = 0x2AA -+ SYS___OCLCK = 0x2DA -+ SYS___OPARGF = 0x2A2 -+ SYS___OPERRF = 0x2A5 -+ SYS___OPINDF = 0x2A4 -+ SYS___OPOPTF = 0x2A3 -+ SYS___RNDTRM = 0x2AB -+ SYS___SRCTRM = 0x2F4 -+ SYS___TZONE = 0x2A0 -+ SYS___UTXTRM = 0x2F3 -+ SYS_ASIN = 0x03E -+ SYS_ISXDIGIT = 0x03B -+ SYS_SETLOCAL = 0x03A -+ SYS_SETLOCALE = 0x03A -+ SYS_SIN = 0x03F -+ SYS_TOLOWER = 0x03C -+ SYS_TOUPPER = 0x03D -+ SYS_ACCEPT_AND_RECV = 0x4F7 -+ SYS_ATOL = 0x04E -+ SYS_CHECKSCH = 0x4BC -+ SYS_CHECKSCHENV = 0x4BC -+ SYS_CLEARERR = 0x04C -+ SYS_CONNECTS = 0x4B5 -+ SYS_CONNECTSERVER = 0x4B5 -+ SYS_CONNECTW = 0x4B4 -+ SYS_CONNECTWORKMGR = 0x4B4 -+ SYS_CONTINUE = 0x4B3 -+ SYS_CONTINUEWORKUNIT = 0x4B3 -+ SYS_COPYSIGN = 0x4C2 -+ SYS_CREATEWO = 0x4B2 -+ SYS_CREATEWORKUNIT = 0x4B2 -+ SYS_DELETEWO = 0x4B9 -+ SYS_DELETEWORKUNIT = 0x4B9 -+ SYS_DISCONNE = 0x4B6 -+ SYS_DISCONNECTSERVER = 0x4B6 -+ SYS_FEOF = 0x04D -+ SYS_FERROR = 0x04A -+ SYS_FINITE = 0x4C8 -+ SYS_GAMMA_R = 0x4E2 -+ SYS_JOINWORK = 0x4B7 -+ SYS_JOINWORKUNIT = 0x4B7 -+ SYS_LEAVEWOR = 0x4B8 -+ SYS_LEAVEWORKUNIT = 0x4B8 -+ SYS_LGAMMA_R = 0x4EB -+ SYS_MATHERR = 0x4D0 -+ SYS_PERROR = 0x04F -+ SYS_QUERYMET = 0x4BA -+ SYS_QUERYMETRICS = 0x4BA -+ SYS_QUERYSCH = 0x4BB -+ SYS_QUERYSCHENV = 0x4BB -+ SYS_REWIND = 0x04B -+ SYS_SCALBN = 0x4D4 -+ SYS_SIGNIFIC = 0x4D5 -+ SYS_SIGNIFICAND = 0x4D5 -+ SYS___ACOSH_B = 0x4DA -+ SYS___ACOS_B = 0x4D9 -+ SYS___ASINH_B = 0x4BE -+ SYS___ASIN_B = 0x4DB -+ SYS___ATAN2_B = 0x4DC -+ SYS___ATANH_B = 0x4DD -+ SYS___ATAN_B = 0x4BF -+ SYS___CBRT_B = 0x4C0 -+ SYS___CEIL_B = 0x4C1 -+ SYS___COSH_B = 0x4DE -+ SYS___COS_B = 0x4C3 -+ SYS___DGHT = 0x4A8 -+ SYS___ENVN = 0x4B0 -+ SYS___ERFC_B = 0x4C5 -+ SYS___ERF_B = 0x4C4 -+ SYS___EXPM1_B = 0x4C6 -+ SYS___EXP_B = 0x4DF -+ SYS___FABS_B = 0x4C7 -+ SYS___FLOOR_B = 0x4C9 -+ SYS___FMOD_B = 0x4E0 -+ SYS___FP_SETMODE = 0x4F8 -+ SYS___FREXP_B = 0x4CA -+ SYS___GAMMA_B = 0x4E1 -+ SYS___GDRR = 0x4A1 -+ SYS___HRRNO = 0x4A2 -+ SYS___HYPOT_B = 0x4E3 -+ SYS___ILOGB_B = 0x4CB -+ SYS___ISNAN_B = 0x4CC -+ SYS___J0_B = 0x4E4 -+ SYS___J1_B = 0x4E6 -+ SYS___JN_B = 0x4E8 -+ SYS___LDEXP_B = 0x4CD -+ SYS___LGAMMA_B = 0x4EA -+ SYS___LOG10_B = 0x4ED -+ SYS___LOG1P_B = 0x4CE -+ SYS___LOGB_B = 0x4CF -+ SYS___LOGIN = 0x4F5 -+ SYS___LOG_B = 0x4EC -+ SYS___MLOCKALL = 0x4B1 -+ SYS___MODF_B = 0x4D1 -+ SYS___NEXTAFTER_B = 0x4D2 -+ SYS___OPENDIR2 = 0x4F3 -+ SYS___OPEN_STAT = 0x4F6 -+ SYS___OPND = 0x4A5 -+ SYS___OPPT = 0x4A6 -+ SYS___OPRG = 0x4A3 -+ SYS___OPRR = 0x4A4 -+ SYS___PID_AFFINITY = 0x4BD -+ SYS___POW_B = 0x4EE -+ SYS___READDIR2 = 0x4F4 -+ SYS___REMAINDER_B = 0x4EF -+ SYS___RINT_B = 0x4D3 -+ SYS___SCALB_B = 0x4F0 -+ SYS___SIGACTIONSET = 0x4FB -+ SYS___SIGGM = 0x4A7 -+ SYS___SINH_B = 0x4F1 -+ SYS___SIN_B = 0x4D6 -+ SYS___SQRT_B = 0x4F2 -+ SYS___TANH_B = 0x4D8 -+ SYS___TAN_B = 0x4D7 -+ SYS___TRRNO = 0x4AF -+ SYS___TZNE = 0x4A9 -+ SYS___TZZN = 0x4AA -+ SYS___UCREATE = 0x4FC -+ SYS___UFREE = 0x4FE -+ SYS___UHEAPREPORT = 0x4FF -+ SYS___UMALLOC = 0x4FD -+ SYS___Y0_B = 0x4E5 -+ SYS___Y1_B = 0x4E7 -+ SYS___YN_B = 0x4E9 -+ SYS_ABORT = 0x05C -+ SYS_ASCTIME_R = 0x5E0 -+ SYS_ATEXIT = 0x05D -+ SYS_CONNECTE = 0x5AE -+ SYS_CONNECTEXPORTIMPORT = 0x5AE -+ SYS_CTIME_R = 0x5E1 -+ SYS_DN_COMP = 0x5DF -+ SYS_DN_EXPAND = 0x5DD -+ SYS_DN_SKIPNAME = 0x5DE -+ SYS_EXIT = 0x05A -+ SYS_EXPORTWO = 0x5A1 -+ SYS_EXPORTWORKUNIT = 0x5A1 -+ SYS_EXTRACTW = 0x5A5 -+ SYS_EXTRACTWORKUNIT = 0x5A5 -+ SYS_FSEEKO = 0x5C9 -+ SYS_FTELLO = 0x5C8 -+ SYS_GETGRGID_R = 0x5E7 -+ SYS_GETGRNAM_R = 0x5E8 -+ SYS_GETLOGIN_R = 0x5E9 -+ SYS_GETPWNAM_R = 0x5EA -+ SYS_GETPWUID_R = 0x5EB -+ SYS_GMTIME_R = 0x5E2 -+ SYS_IMPORTWO = 0x5A3 -+ SYS_IMPORTWORKUNIT = 0x5A3 -+ SYS_INET_NTOP = 0x5D3 -+ SYS_INET_PTON = 0x5D4 -+ SYS_LLABS = 0x5CE -+ SYS_LLDIV = 0x5CB -+ SYS_LOCALTIME_R = 0x5E3 -+ SYS_PTHREAD_ATFORK = 0x5ED -+ SYS_PTHREAD_ATTR_GETDETACHSTATE_U98 = 0x5FB -+ SYS_PTHREAD_ATTR_GETGUARDSIZE = 0x5EE -+ SYS_PTHREAD_ATTR_GETSCHEDPARAM = 0x5F9 -+ SYS_PTHREAD_ATTR_GETSTACKADDR = 0x5EF -+ SYS_PTHREAD_ATTR_SETDETACHSTATE_U98 = 0x5FC -+ SYS_PTHREAD_ATTR_SETGUARDSIZE = 0x5F0 -+ SYS_PTHREAD_ATTR_SETSCHEDPARAM = 0x5FA -+ SYS_PTHREAD_ATTR_SETSTACKADDR = 0x5F1 -+ SYS_PTHREAD_CONDATTR_GETPSHARED = 0x5F2 -+ SYS_PTHREAD_CONDATTR_SETPSHARED = 0x5F3 -+ SYS_PTHREAD_DETACH_U98 = 0x5FD -+ SYS_PTHREAD_GETCONCURRENCY = 0x5F4 -+ SYS_PTHREAD_GETSPECIFIC_U98 = 0x5FE -+ SYS_PTHREAD_KEY_DELETE = 0x5F5 -+ SYS_PTHREAD_SETCANCELSTATE = 0x5FF -+ SYS_PTHREAD_SETCONCURRENCY = 0x5F6 -+ SYS_PTHREAD_SIGMASK = 0x5F7 -+ SYS_QUERYENC = 0x5AD -+ SYS_QUERYWORKUNITCLASSIFICATION = 0x5AD -+ SYS_RAISE = 0x05E -+ SYS_RAND_R = 0x5E4 -+ SYS_READDIR_R = 0x5E6 -+ SYS_REALLOC = 0x05B -+ SYS_RES_INIT = 0x5D8 -+ SYS_RES_MKQUERY = 0x5D7 -+ SYS_RES_QUERY = 0x5D9 -+ SYS_RES_QUERYDOMAIN = 0x5DC -+ SYS_RES_SEARCH = 0x5DA -+ SYS_RES_SEND = 0x5DB -+ SYS_SETJMP = 0x05F -+ SYS_SIGQUEUE = 0x5A9 -+ SYS_STRTOK_R = 0x5E5 -+ SYS_STRTOLL = 0x5B0 -+ SYS_STRTOULL = 0x5B1 -+ SYS_TTYNAME_R = 0x5EC -+ SYS_UNDOEXPO = 0x5A2 -+ SYS_UNDOEXPORTWORKUNIT = 0x5A2 -+ SYS_UNDOIMPO = 0x5A4 -+ SYS_UNDOIMPORTWORKUNIT = 0x5A4 -+ SYS_WCSTOLL = 0x5CC -+ SYS_WCSTOULL = 0x5CD -+ SYS___ABORT = 0x05C -+ SYS___CONSOLE2 = 0x5D2 -+ SYS___CPL = 0x5A6 -+ SYS___DISCARDDATA = 0x5F8 -+ SYS___DSA_PREV = 0x5B2 -+ SYS___EP_FIND = 0x5B3 -+ SYS___FP_SWAPMODE = 0x5AF -+ SYS___GETUSERID = 0x5AB -+ SYS___GET_CPUID = 0x5B9 -+ SYS___GET_SYSTEM_SETTINGS = 0x5BA -+ SYS___IPDOMAINNAME = 0x5AC -+ SYS___MAP_INIT = 0x5A7 -+ SYS___MAP_SERVICE = 0x5A8 -+ SYS___MOUNT = 0x5AA -+ SYS___MSGRCV_TIMED = 0x5B7 -+ SYS___RES = 0x5D6 -+ SYS___SEMOP_TIMED = 0x5B8 -+ SYS___SERVER_THREADS_QUERY = 0x5B4 -+ SYS_FPRINTF = 0x06D -+ SYS_FSCANF = 0x06A -+ SYS_PRINTF = 0x06F -+ SYS_SETBUF = 0x06B -+ SYS_SETVBUF = 0x06C -+ SYS_SSCANF = 0x06E -+ SYS___CATGETS_A = 0x6C0 -+ SYS___CHAUDIT_A = 0x6F4 -+ SYS___CHMOD_A = 0x6E8 -+ SYS___COLLATE_INIT_A = 0x6AC -+ SYS___CREAT_A = 0x6F6 -+ SYS___CTYPE_INIT_A = 0x6AF -+ SYS___DLLLOAD_A = 0x6DF -+ SYS___DLLQUERYFN_A = 0x6E0 -+ SYS___DLLQUERYVAR_A = 0x6E1 -+ SYS___E2A_L = 0x6E3 -+ SYS___EXECLE_A = 0x6A0 -+ SYS___EXECLP_A = 0x6A4 -+ SYS___EXECVE_A = 0x6C1 -+ SYS___EXECVP_A = 0x6C2 -+ SYS___EXECV_A = 0x6B1 -+ SYS___FPRINTF_A = 0x6FA -+ SYS___GETADDRINFO_A = 0x6BF -+ SYS___GETNAMEINFO_A = 0x6C4 -+ SYS___GET_WCTYPE_STD_A = 0x6AE -+ SYS___ICONV_OPEN_A = 0x6DE -+ SYS___IF_INDEXTONAME_A = 0x6DC -+ SYS___IF_NAMETOINDEX_A = 0x6DB -+ SYS___ISWCTYPE_A = 0x6B0 -+ SYS___IS_WCTYPE_STD_A = 0x6B2 -+ SYS___LOCALECONV_A = 0x6B8 -+ SYS___LOCALECONV_STD_A = 0x6B9 -+ SYS___LOCALE_INIT_A = 0x6B7 -+ SYS___LSTAT_A = 0x6EE -+ SYS___LSTAT_O_A = 0x6EF -+ SYS___MKDIR_A = 0x6E9 -+ SYS___MKFIFO_A = 0x6EC -+ SYS___MKNOD_A = 0x6F0 -+ SYS___MONETARY_INIT_A = 0x6BC -+ SYS___MOUNT_A = 0x6F1 -+ SYS___NL_CSINFO_A = 0x6D6 -+ SYS___NL_LANGINFO_A = 0x6BA -+ SYS___NL_LNAGINFO_STD_A = 0x6BB -+ SYS___NL_MONINFO_A = 0x6D7 -+ SYS___NL_NUMINFO_A = 0x6D8 -+ SYS___NL_RESPINFO_A = 0x6D9 -+ SYS___NL_TIMINFO_A = 0x6DA -+ SYS___NUMERIC_INIT_A = 0x6C6 -+ SYS___OPEN_A = 0x6F7 -+ SYS___PRINTF_A = 0x6DD -+ SYS___RESP_INIT_A = 0x6C7 -+ SYS___RPMATCH_A = 0x6C8 -+ SYS___RPMATCH_C_A = 0x6C9 -+ SYS___RPMATCH_STD_A = 0x6CA -+ SYS___SETLOCALE_A = 0x6F9 -+ SYS___SPAWNP_A = 0x6C5 -+ SYS___SPAWN_A = 0x6C3 -+ SYS___SPRINTF_A = 0x6FB -+ SYS___STAT_A = 0x6EA -+ SYS___STAT_O_A = 0x6EB -+ SYS___STRCOLL_STD_A = 0x6A1 -+ SYS___STRFMON_A = 0x6BD -+ SYS___STRFMON_STD_A = 0x6BE -+ SYS___STRFTIME_A = 0x6CC -+ SYS___STRFTIME_STD_A = 0x6CD -+ SYS___STRPTIME_A = 0x6CE -+ SYS___STRPTIME_STD_A = 0x6CF -+ SYS___STRXFRM_A = 0x6A2 -+ SYS___STRXFRM_C_A = 0x6A3 -+ SYS___STRXFRM_STD_A = 0x6A5 -+ SYS___SYNTAX_INIT_A = 0x6D4 -+ SYS___TIME_INIT_A = 0x6CB -+ SYS___TOD_INIT_A = 0x6D5 -+ SYS___TOWLOWER_A = 0x6B3 -+ SYS___TOWLOWER_STD_A = 0x6B4 -+ SYS___TOWUPPER_A = 0x6B5 -+ SYS___TOWUPPER_STD_A = 0x6B6 -+ SYS___UMOUNT_A = 0x6F2 -+ SYS___VFPRINTF_A = 0x6FC -+ SYS___VPRINTF_A = 0x6FD -+ SYS___VSPRINTF_A = 0x6FE -+ SYS___VSWPRINTF_A = 0x6FF -+ SYS___WCSCOLL_A = 0x6A6 -+ SYS___WCSCOLL_C_A = 0x6A7 -+ SYS___WCSCOLL_STD_A = 0x6A8 -+ SYS___WCSFTIME_A = 0x6D0 -+ SYS___WCSFTIME_STD_A = 0x6D1 -+ SYS___WCSXFRM_A = 0x6A9 -+ SYS___WCSXFRM_C_A = 0x6AA -+ SYS___WCSXFRM_STD_A = 0x6AB -+ SYS___WCTYPE_A = 0x6AD -+ SYS___W_GETMNTENT_A = 0x6F5 -+ SYS_____CCSIDTYPE_A = 0x6E6 -+ SYS_____CHATTR_A = 0x6E2 -+ SYS_____CSNAMETYPE_A = 0x6E7 -+ SYS_____OPEN_STAT_A = 0x6ED -+ SYS_____SPAWN2_A = 0x6D2 -+ SYS_____SPAWNP2_A = 0x6D3 -+ SYS_____TOCCSID_A = 0x6E4 -+ SYS_____TOCSNAME_A = 0x6E5 -+ SYS_ACL_FREE = 0x7FF -+ SYS_ACL_INIT = 0x7FE -+ SYS_FWIDE = 0x7DF -+ SYS_FWPRINTF = 0x7D1 -+ SYS_FWRITE = 0x07E -+ SYS_FWSCANF = 0x7D5 -+ SYS_GETCHAR = 0x07B -+ SYS_GETS = 0x07C -+ SYS_M_CREATE_LAYOUT = 0x7C9 -+ SYS_M_DESTROY_LAYOUT = 0x7CA -+ SYS_M_GETVALUES_LAYOUT = 0x7CB -+ SYS_M_SETVALUES_LAYOUT = 0x7CC -+ SYS_M_TRANSFORM_LAYOUT = 0x7CD -+ SYS_M_WTRANSFORM_LAYOUT = 0x7CE -+ SYS_PREAD = 0x7C7 -+ SYS_PUTC = 0x07D -+ SYS_PUTCHAR = 0x07A -+ SYS_PUTS = 0x07F -+ SYS_PWRITE = 0x7C8 -+ SYS_TOWCTRAN = 0x7D8 -+ SYS_TOWCTRANS = 0x7D8 -+ SYS_UNATEXIT = 0x7B5 -+ SYS_VFWPRINT = 0x7D3 -+ SYS_VFWPRINTF = 0x7D3 -+ SYS_VWPRINTF = 0x7D4 -+ SYS_WCTRANS = 0x7D7 -+ SYS_WPRINTF = 0x7D2 -+ SYS_WSCANF = 0x7D6 -+ SYS___ASCTIME_R_A = 0x7A1 -+ SYS___BASENAME_A = 0x7DC -+ SYS___BTOWC_A = 0x7E4 -+ SYS___CDUMP_A = 0x7B7 -+ SYS___CEE3DMP_A = 0x7B6 -+ SYS___CEILF_H = 0x7F4 -+ SYS___CEILL_H = 0x7F5 -+ SYS___CEIL_H = 0x7EA -+ SYS___CRYPT_A = 0x7BE -+ SYS___CSNAP_A = 0x7B8 -+ SYS___CTEST_A = 0x7B9 -+ SYS___CTIME_R_A = 0x7A2 -+ SYS___CTRACE_A = 0x7BA -+ SYS___DBM_OPEN_A = 0x7E6 -+ SYS___DIRNAME_A = 0x7DD -+ SYS___FABSF_H = 0x7FA -+ SYS___FABSL_H = 0x7FB -+ SYS___FABS_H = 0x7ED -+ SYS___FGETWC_A = 0x7AA -+ SYS___FGETWS_A = 0x7AD -+ SYS___FLOORF_H = 0x7F6 -+ SYS___FLOORL_H = 0x7F7 -+ SYS___FLOOR_H = 0x7EB -+ SYS___FPUTWC_A = 0x7A5 -+ SYS___FPUTWS_A = 0x7A8 -+ SYS___GETTIMEOFDAY_A = 0x7AE -+ SYS___GETWCHAR_A = 0x7AC -+ SYS___GETWC_A = 0x7AB -+ SYS___GLOB_A = 0x7DE -+ SYS___GMTIME_A = 0x7AF -+ SYS___GMTIME_R_A = 0x7B0 -+ SYS___INET_PTON_A = 0x7BC -+ SYS___J0_H = 0x7EE -+ SYS___J1_H = 0x7EF -+ SYS___JN_H = 0x7F0 -+ SYS___LOCALTIME_A = 0x7B1 -+ SYS___LOCALTIME_R_A = 0x7B2 -+ SYS___MALLOC24 = 0x7FC -+ SYS___MALLOC31 = 0x7FD -+ SYS___MKTIME_A = 0x7B3 -+ SYS___MODFF_H = 0x7F8 -+ SYS___MODFL_H = 0x7F9 -+ SYS___MODF_H = 0x7EC -+ SYS___OPENDIR_A = 0x7C2 -+ SYS___OSNAME = 0x7E0 -+ SYS___PUTWCHAR_A = 0x7A7 -+ SYS___PUTWC_A = 0x7A6 -+ SYS___READDIR_A = 0x7C3 -+ SYS___STRTOLL_A = 0x7A3 -+ SYS___STRTOULL_A = 0x7A4 -+ SYS___SYSLOG_A = 0x7BD -+ SYS___TZZNA = 0x7B4 -+ SYS___UNGETWC_A = 0x7A9 -+ SYS___UTIME_A = 0x7A0 -+ SYS___VFPRINTF2_A = 0x7E7 -+ SYS___VPRINTF2_A = 0x7E8 -+ SYS___VSPRINTF2_A = 0x7E9 -+ SYS___VSWPRNTF2_A = 0x7BB -+ SYS___WCSTOD_A = 0x7D9 -+ SYS___WCSTOL_A = 0x7DA -+ SYS___WCSTOUL_A = 0x7DB -+ SYS___WCTOB_A = 0x7E5 -+ SYS___Y0_H = 0x7F1 -+ SYS___Y1_H = 0x7F2 -+ SYS___YN_H = 0x7F3 -+ SYS_____OPENDIR2_A = 0x7BF -+ SYS_____OSNAME_A = 0x7E1 -+ SYS_____READDIR2_A = 0x7C0 -+ SYS_DLCLOSE = 0x8DF -+ SYS_DLERROR = 0x8E0 -+ SYS_DLOPEN = 0x8DD -+ SYS_DLSYM = 0x8DE -+ SYS_FLOCKFILE = 0x8D3 -+ SYS_FTRYLOCKFILE = 0x8D4 -+ SYS_FUNLOCKFILE = 0x8D5 -+ SYS_GETCHAR_UNLOCKED = 0x8D7 -+ SYS_GETC_UNLOCKED = 0x8D6 -+ SYS_PUTCHAR_UNLOCKED = 0x8D9 -+ SYS_PUTC_UNLOCKED = 0x8D8 -+ SYS_SNPRINTF = 0x8DA -+ SYS_VSNPRINTF = 0x8DB -+ SYS_WCSCSPN = 0x08B -+ SYS_WCSLEN = 0x08C -+ SYS_WCSNCAT = 0x08D -+ SYS_WCSNCMP = 0x08A -+ SYS_WCSNCPY = 0x08F -+ SYS_WCSSPN = 0x08E -+ SYS___ABSF_H = 0x8E7 -+ SYS___ABSL_H = 0x8E8 -+ SYS___ABS_H = 0x8E6 -+ SYS___ACOSF_H = 0x8EA -+ SYS___ACOSH_H = 0x8EC -+ SYS___ACOSL_H = 0x8EB -+ SYS___ACOS_H = 0x8E9 -+ SYS___ASINF_H = 0x8EE -+ SYS___ASINH_H = 0x8F0 -+ SYS___ASINL_H = 0x8EF -+ SYS___ASIN_H = 0x8ED -+ SYS___ATAN2F_H = 0x8F8 -+ SYS___ATAN2L_H = 0x8F9 -+ SYS___ATAN2_H = 0x8F7 -+ SYS___ATANF_H = 0x8F2 -+ SYS___ATANHF_H = 0x8F5 -+ SYS___ATANHL_H = 0x8F6 -+ SYS___ATANH_H = 0x8F4 -+ SYS___ATANL_H = 0x8F3 -+ SYS___ATAN_H = 0x8F1 -+ SYS___CBRT_H = 0x8FA -+ SYS___COPYSIGNF_H = 0x8FB -+ SYS___COPYSIGNL_H = 0x8FC -+ SYS___COSF_H = 0x8FE -+ SYS___COSL_H = 0x8FF -+ SYS___COS_H = 0x8FD -+ SYS___DLERROR_A = 0x8D2 -+ SYS___DLOPEN_A = 0x8D0 -+ SYS___DLSYM_A = 0x8D1 -+ SYS___GETUTXENT_A = 0x8C6 -+ SYS___GETUTXID_A = 0x8C7 -+ SYS___GETUTXLINE_A = 0x8C8 -+ SYS___ITOA = 0x8AA -+ SYS___ITOA_A = 0x8B0 -+ SYS___LE_CONDITION_TOKEN_BUILD = 0x8A5 -+ SYS___LE_MSG_ADD_INSERT = 0x8A6 -+ SYS___LE_MSG_GET = 0x8A7 -+ SYS___LE_MSG_GET_AND_WRITE = 0x8A8 -+ SYS___LE_MSG_WRITE = 0x8A9 -+ SYS___LLTOA = 0x8AE -+ SYS___LLTOA_A = 0x8B4 -+ SYS___LTOA = 0x8AC -+ SYS___LTOA_A = 0x8B2 -+ SYS___PUTCHAR_UNLOCKED_A = 0x8CC -+ SYS___PUTC_UNLOCKED_A = 0x8CB -+ SYS___PUTUTXLINE_A = 0x8C9 -+ SYS___RESET_EXCEPTION_HANDLER = 0x8E3 -+ SYS___REXEC_A = 0x8C4 -+ SYS___REXEC_AF_A = 0x8C5 -+ SYS___SET_EXCEPTION_HANDLER = 0x8E2 -+ SYS___SNPRINTF_A = 0x8CD -+ SYS___SUPERKILL = 0x8A4 -+ SYS___TCGETATTR_A = 0x8A1 -+ SYS___TCSETATTR_A = 0x8A2 -+ SYS___ULLTOA = 0x8AF -+ SYS___ULLTOA_A = 0x8B5 -+ SYS___ULTOA = 0x8AD -+ SYS___ULTOA_A = 0x8B3 -+ SYS___UTOA = 0x8AB -+ SYS___UTOA_A = 0x8B1 -+ SYS___VHM_EVENT = 0x8E4 -+ SYS___VSNPRINTF_A = 0x8CE -+ SYS_____GETENV_A = 0x8C3 -+ SYS_____UTMPXNAME_A = 0x8CA -+ SYS_CACOSH = 0x9A0 -+ SYS_CACOSHF = 0x9A3 -+ SYS_CACOSHL = 0x9A6 -+ SYS_CARG = 0x9A9 -+ SYS_CARGF = 0x9AC -+ SYS_CARGL = 0x9AF -+ SYS_CASIN = 0x9B2 -+ SYS_CASINF = 0x9B5 -+ SYS_CASINH = 0x9BB -+ SYS_CASINHF = 0x9BE -+ SYS_CASINHL = 0x9C1 -+ SYS_CASINL = 0x9B8 -+ SYS_CATAN = 0x9C4 -+ SYS_CATANF = 0x9C7 -+ SYS_CATANH = 0x9CD -+ SYS_CATANHF = 0x9D0 -+ SYS_CATANHL = 0x9D3 -+ SYS_CATANL = 0x9CA -+ SYS_CCOS = 0x9D6 -+ SYS_CCOSF = 0x9D9 -+ SYS_CCOSH = 0x9DF -+ SYS_CCOSHF = 0x9E2 -+ SYS_CCOSHL = 0x9E5 -+ SYS_CCOSL = 0x9DC -+ SYS_CEXP = 0x9E8 -+ SYS_CEXPF = 0x9EB -+ SYS_CEXPL = 0x9EE -+ SYS_CIMAG = 0x9F1 -+ SYS_CIMAGF = 0x9F4 -+ SYS_CIMAGL = 0x9F7 -+ SYS_CLOGF = 0x9FD -+ SYS_MEMCHR = 0x09B -+ SYS_MEMCMP = 0x09A -+ SYS_STRCOLL = 0x09C -+ SYS_STRNCMP = 0x09D -+ SYS_STRRCHR = 0x09F -+ SYS_STRXFRM = 0x09E -+ SYS___CACOSHF_B = 0x9A4 -+ SYS___CACOSHF_H = 0x9A5 -+ SYS___CACOSHL_B = 0x9A7 -+ SYS___CACOSHL_H = 0x9A8 -+ SYS___CACOSH_B = 0x9A1 -+ SYS___CACOSH_H = 0x9A2 -+ SYS___CARGF_B = 0x9AD -+ SYS___CARGF_H = 0x9AE -+ SYS___CARGL_B = 0x9B0 -+ SYS___CARGL_H = 0x9B1 -+ SYS___CARG_B = 0x9AA -+ SYS___CARG_H = 0x9AB -+ SYS___CASINF_B = 0x9B6 -+ SYS___CASINF_H = 0x9B7 -+ SYS___CASINHF_B = 0x9BF -+ SYS___CASINHF_H = 0x9C0 -+ SYS___CASINHL_B = 0x9C2 -+ SYS___CASINHL_H = 0x9C3 -+ SYS___CASINH_B = 0x9BC -+ SYS___CASINH_H = 0x9BD -+ SYS___CASINL_B = 0x9B9 -+ SYS___CASINL_H = 0x9BA -+ SYS___CASIN_B = 0x9B3 -+ SYS___CASIN_H = 0x9B4 -+ SYS___CATANF_B = 0x9C8 -+ SYS___CATANF_H = 0x9C9 -+ SYS___CATANHF_B = 0x9D1 -+ SYS___CATANHF_H = 0x9D2 -+ SYS___CATANHL_B = 0x9D4 -+ SYS___CATANHL_H = 0x9D5 -+ SYS___CATANH_B = 0x9CE -+ SYS___CATANH_H = 0x9CF -+ SYS___CATANL_B = 0x9CB -+ SYS___CATANL_H = 0x9CC -+ SYS___CATAN_B = 0x9C5 -+ SYS___CATAN_H = 0x9C6 -+ SYS___CCOSF_B = 0x9DA -+ SYS___CCOSF_H = 0x9DB -+ SYS___CCOSHF_B = 0x9E3 -+ SYS___CCOSHF_H = 0x9E4 -+ SYS___CCOSHL_B = 0x9E6 -+ SYS___CCOSHL_H = 0x9E7 -+ SYS___CCOSH_B = 0x9E0 -+ SYS___CCOSH_H = 0x9E1 -+ SYS___CCOSL_B = 0x9DD -+ SYS___CCOSL_H = 0x9DE -+ SYS___CCOS_B = 0x9D7 -+ SYS___CCOS_H = 0x9D8 -+ SYS___CEXPF_B = 0x9EC -+ SYS___CEXPF_H = 0x9ED -+ SYS___CEXPL_B = 0x9EF -+ SYS___CEXPL_H = 0x9F0 -+ SYS___CEXP_B = 0x9E9 -+ SYS___CEXP_H = 0x9EA -+ SYS___CIMAGF_B = 0x9F5 -+ SYS___CIMAGF_H = 0x9F6 -+ SYS___CIMAGL_B = 0x9F8 -+ SYS___CIMAGL_H = 0x9F9 -+ SYS___CIMAG_B = 0x9F2 -+ SYS___CIMAG_H = 0x9F3 -+ SYS___CLOG = 0x9FA -+ SYS___CLOGF_B = 0x9FE -+ SYS___CLOGF_H = 0x9FF -+ SYS___CLOG_B = 0x9FB -+ SYS___CLOG_H = 0x9FC -+ SYS_ISWCTYPE = 0x10C -+ SYS_ISWXDIGI = 0x10A -+ SYS_ISWXDIGIT = 0x10A -+ SYS_MBSINIT = 0x10F -+ SYS_TOWLOWER = 0x10D -+ SYS_TOWUPPER = 0x10E -+ SYS_WCTYPE = 0x10B -+ SYS_WCSSTR = 0x11B -+ SYS___RPMTCH = 0x11A -+ SYS_WCSTOD = 0x12E -+ SYS_WCSTOK = 0x12C -+ SYS_WCSTOL = 0x12D -+ SYS_WCSTOUL = 0x12F -+ SYS_FGETWC = 0x13C -+ SYS_FGETWS = 0x13D -+ SYS_FPUTWC = 0x13E -+ SYS_FPUTWS = 0x13F -+ SYS_REGERROR = 0x13B -+ SYS_REGFREE = 0x13A -+ SYS_COLLEQUIV = 0x14F -+ SYS_COLLTOSTR = 0x14E -+ SYS_ISMCCOLLEL = 0x14C -+ SYS_STRTOCOLL = 0x14D -+ SYS_DLLFREE = 0x16F -+ SYS_DLLQUERYFN = 0x16D -+ SYS_DLLQUERYVAR = 0x16E -+ SYS_GETMCCOLL = 0x16A -+ SYS_GETWMCCOLL = 0x16B -+ SYS___ERR2AD = 0x16C -+ SYS_CFSETOSPEED = 0x17A -+ SYS_CHDIR = 0x17B -+ SYS_CHMOD = 0x17C -+ SYS_CHOWN = 0x17D -+ SYS_CLOSE = 0x17E -+ SYS_CLOSEDIR = 0x17F -+ SYS_LOG = 0x017 -+ SYS_COSH = 0x018 -+ SYS_FCHMOD = 0x18A -+ SYS_FCHOWN = 0x18B -+ SYS_FCNTL = 0x18C -+ SYS_FILENO = 0x18D -+ SYS_FORK = 0x18E -+ SYS_FPATHCONF = 0x18F -+ SYS_GETLOGIN = 0x19A -+ SYS_GETPGRP = 0x19C -+ SYS_GETPID = 0x19D -+ SYS_GETPPID = 0x19E -+ SYS_GETPWNAM = 0x19F -+ SYS_TANH = 0x019 -+ SYS_W_GETMNTENT = 0x19B -+ SYS_POW = 0x020 -+ SYS_PTHREAD_SELF = 0x20A -+ SYS_PTHREAD_SETINTR = 0x20B -+ SYS_PTHREAD_SETINTRTYPE = 0x20C -+ SYS_PTHREAD_SETSPECIFIC = 0x20D -+ SYS_PTHREAD_TESTINTR = 0x20E -+ SYS_PTHREAD_YIELD = 0x20F -+ SYS_SQRT = 0x021 -+ SYS_FLOOR = 0x022 -+ SYS_J1 = 0x023 -+ SYS_WCSPBRK = 0x23F -+ SYS_BSEARCH = 0x24C -+ SYS_FABS = 0x024 -+ SYS_GETENV = 0x24A -+ SYS_LDIV = 0x24D -+ SYS_SYSTEM = 0x24B -+ SYS_FMOD = 0x025 -+ SYS___RETHROW = 0x25F -+ SYS___THROW = 0x25E -+ SYS_J0 = 0x026 -+ SYS_PUTENV = 0x26A -+ SYS___GETENV = 0x26F -+ SYS_SEMCTL = 0x27A -+ SYS_SEMGET = 0x27B -+ SYS_SEMOP = 0x27C -+ SYS_SHMAT = 0x27D -+ SYS_SHMCTL = 0x27E -+ SYS_SHMDT = 0x27F -+ SYS_YN = 0x027 -+ SYS_JN = 0x028 -+ SYS_SIGALTSTACK = 0x28A -+ SYS_SIGHOLD = 0x28B -+ SYS_SIGIGNORE = 0x28C -+ SYS_SIGINTERRUPT = 0x28D -+ SYS_SIGPAUSE = 0x28E -+ SYS_SIGRELSE = 0x28F -+ SYS_GETOPT = 0x29A -+ SYS_GETSUBOPT = 0x29D -+ SYS_LCHOWN = 0x29B -+ SYS_SETPGRP = 0x29E -+ SYS_TRUNCATE = 0x29C -+ SYS_Y0 = 0x029 -+ SYS___GDERR = 0x29F -+ SYS_ISALPHA = 0x030 -+ SYS_VFORK = 0x30F -+ SYS__LONGJMP = 0x30D -+ SYS__SETJMP = 0x30E -+ SYS_GLOB = 0x31A -+ SYS_GLOBFREE = 0x31B -+ SYS_ISALNUM = 0x031 -+ SYS_PUTW = 0x31C -+ SYS_SEEKDIR = 0x31D -+ SYS_TELLDIR = 0x31E -+ SYS_TEMPNAM = 0x31F -+ SYS_GETTIMEOFDAY_R = 0x32E -+ SYS_ISLOWER = 0x032 -+ SYS_LGAMMA = 0x32C -+ SYS_REMAINDER = 0x32A -+ SYS_SCALB = 0x32B -+ SYS_SYNC = 0x32F -+ SYS_TTYSLOT = 0x32D -+ SYS_ENDPROTOENT = 0x33A -+ SYS_ENDSERVENT = 0x33B -+ SYS_GETHOSTBYADDR = 0x33D -+ SYS_GETHOSTBYADDR_R = 0x33C -+ SYS_GETHOSTBYNAME = 0x33F -+ SYS_GETHOSTBYNAME_R = 0x33E -+ SYS_ISCNTRL = 0x033 -+ SYS_GETSERVBYNAME = 0x34A -+ SYS_GETSERVBYPORT = 0x34B -+ SYS_GETSERVENT = 0x34C -+ SYS_GETSOCKNAME = 0x34D -+ SYS_GETSOCKOPT = 0x34E -+ SYS_INET_ADDR = 0x34F -+ SYS_ISDIGIT = 0x034 -+ SYS_ISGRAPH = 0x035 -+ SYS_SELECT = 0x35B -+ SYS_SELECTEX = 0x35C -+ SYS_SEND = 0x35D -+ SYS_SENDTO = 0x35F -+ SYS_CHROOT = 0x36A -+ SYS_ISNAN = 0x36D -+ SYS_ISUPPER = 0x036 -+ SYS_ULIMIT = 0x36C -+ SYS_UTIMES = 0x36E -+ SYS_W_STATVFS = 0x36B -+ SYS___H_ERRNO = 0x36F -+ SYS_GRANTPT = 0x37A -+ SYS_ISPRINT = 0x037 -+ SYS_TCGETSID = 0x37C -+ SYS_UNLOCKPT = 0x37B -+ SYS___TCGETCP = 0x37D -+ SYS___TCSETCP = 0x37E -+ SYS___TCSETTABLES = 0x37F -+ SYS_ISPUNCT = 0x038 -+ SYS_NLIST = 0x38C -+ SYS___IPDBCS = 0x38D -+ SYS___IPDSPX = 0x38E -+ SYS___IPMSGC = 0x38F -+ SYS___STHOSTENT = 0x38B -+ SYS___STSERVENT = 0x38A -+ SYS_ISSPACE = 0x039 -+ SYS_COS = 0x040 -+ SYS_T_ALLOC = 0x40A -+ SYS_T_BIND = 0x40B -+ SYS_T_CLOSE = 0x40C -+ SYS_T_CONNECT = 0x40D -+ SYS_T_ERROR = 0x40E -+ SYS_T_FREE = 0x40F -+ SYS_TAN = 0x041 -+ SYS_T_RCVREL = 0x41A -+ SYS_T_RCVUDATA = 0x41B -+ SYS_T_RCVUDERR = 0x41C -+ SYS_T_SND = 0x41D -+ SYS_T_SNDDIS = 0x41E -+ SYS_T_SNDREL = 0x41F -+ SYS_GETPMSG = 0x42A -+ SYS_ISASTREAM = 0x42B -+ SYS_PUTMSG = 0x42C -+ SYS_PUTPMSG = 0x42D -+ SYS_SINH = 0x042 -+ SYS___ISPOSIXON = 0x42E -+ SYS___OPENMVSREL = 0x42F -+ SYS_ACOS = 0x043 -+ SYS_ATAN = 0x044 -+ SYS_ATAN2 = 0x045 -+ SYS_FTELL = 0x046 -+ SYS_FGETPOS = 0x047 -+ SYS_SOCK_DEBUG = 0x47A -+ SYS_SOCK_DO_TESTSTOR = 0x47D -+ SYS_TAKESOCKET = 0x47E -+ SYS___SERVER_INIT = 0x47F -+ SYS_FSEEK = 0x048 -+ SYS___IPHOST = 0x48B -+ SYS___IPNODE = 0x48C -+ SYS___SERVER_CLASSIFY_CREATE = 0x48D -+ SYS___SERVER_CLASSIFY_DESTROY = 0x48E -+ SYS___SERVER_CLASSIFY_RESET = 0x48F -+ SYS___SMF_RECORD = 0x48A -+ SYS_FSETPOS = 0x049 -+ SYS___FNWSA = 0x49B -+ SYS___SPAWN2 = 0x49D -+ SYS___SPAWNP2 = 0x49E -+ SYS_ATOF = 0x050 -+ SYS_PTHREAD_MUTEXATTR_GETPSHARED = 0x50A -+ SYS_PTHREAD_MUTEXATTR_SETPSHARED = 0x50B -+ SYS_PTHREAD_RWLOCK_DESTROY = 0x50C -+ SYS_PTHREAD_RWLOCK_INIT = 0x50D -+ SYS_PTHREAD_RWLOCK_RDLOCK = 0x50E -+ SYS_PTHREAD_RWLOCK_TRYRDLOCK = 0x50F -+ SYS_ATOI = 0x051 -+ SYS___FP_CLASS = 0x51D -+ SYS___FP_CLR_FLAG = 0x51A -+ SYS___FP_FINITE = 0x51E -+ SYS___FP_ISNAN = 0x51F -+ SYS___FP_RAISE_XCP = 0x51C -+ SYS___FP_READ_FLAG = 0x51B -+ SYS_RAND = 0x052 -+ SYS_SIGTIMEDWAIT = 0x52D -+ SYS_SIGWAITINFO = 0x52E -+ SYS___CHKBFP = 0x52F -+ SYS___FPC_RS = 0x52C -+ SYS___FPC_RW = 0x52A -+ SYS___FPC_SM = 0x52B -+ SYS_STRTOD = 0x053 -+ SYS_STRTOL = 0x054 -+ SYS_STRTOUL = 0x055 -+ SYS_MALLOC = 0x056 -+ SYS_SRAND = 0x057 -+ SYS_CALLOC = 0x058 -+ SYS_FREE = 0x059 -+ SYS___OSENV = 0x59F -+ SYS___W_PIOCTL = 0x59E -+ SYS_LONGJMP = 0x060 -+ SYS___FLOORF_B = 0x60A -+ SYS___FLOORL_B = 0x60B -+ SYS___FREXPF_B = 0x60C -+ SYS___FREXPL_B = 0x60D -+ SYS___LDEXPF_B = 0x60E -+ SYS___LDEXPL_B = 0x60F -+ SYS_SIGNAL = 0x061 -+ SYS___ATAN2F_B = 0x61A -+ SYS___ATAN2L_B = 0x61B -+ SYS___COSHF_B = 0x61C -+ SYS___COSHL_B = 0x61D -+ SYS___EXPF_B = 0x61E -+ SYS___EXPL_B = 0x61F -+ SYS_TMPNAM = 0x062 -+ SYS___ABSF_B = 0x62A -+ SYS___ABSL_B = 0x62C -+ SYS___ABS_B = 0x62B -+ SYS___FMODF_B = 0x62D -+ SYS___FMODL_B = 0x62E -+ SYS___MODFF_B = 0x62F -+ SYS_ATANL = 0x63A -+ SYS_CEILF = 0x63B -+ SYS_CEILL = 0x63C -+ SYS_COSF = 0x63D -+ SYS_COSHF = 0x63F -+ SYS_COSL = 0x63E -+ SYS_REMOVE = 0x063 -+ SYS_POWL = 0x64A -+ SYS_RENAME = 0x064 -+ SYS_SINF = 0x64B -+ SYS_SINHF = 0x64F -+ SYS_SINL = 0x64C -+ SYS_SQRTF = 0x64D -+ SYS_SQRTL = 0x64E -+ SYS_BTOWC = 0x65F -+ SYS_FREXPL = 0x65A -+ SYS_LDEXPF = 0x65B -+ SYS_LDEXPL = 0x65C -+ SYS_MODFF = 0x65D -+ SYS_MODFL = 0x65E -+ SYS_TMPFILE = 0x065 -+ SYS_FREOPEN = 0x066 -+ SYS___CHARMAP_INIT_A = 0x66E -+ SYS___GETHOSTBYADDR_R_A = 0x66C -+ SYS___GETHOSTBYNAME_A = 0x66A -+ SYS___GETHOSTBYNAME_R_A = 0x66D -+ SYS___MBLEN_A = 0x66F -+ SYS___RES_INIT_A = 0x66B -+ SYS_FCLOSE = 0x067 -+ SYS___GETGRGID_R_A = 0x67D -+ SYS___WCSTOMBS_A = 0x67A -+ SYS___WCSTOMBS_STD_A = 0x67B -+ SYS___WCSWIDTH_A = 0x67C -+ SYS___WCSWIDTH_ASIA = 0x67F -+ SYS___WCSWIDTH_STD_A = 0x67E -+ SYS_FFLUSH = 0x068 -+ SYS___GETLOGIN_R_A = 0x68E -+ SYS___GETPWNAM_R_A = 0x68C -+ SYS___GETPWUID_R_A = 0x68D -+ SYS___TTYNAME_R_A = 0x68F -+ SYS___WCWIDTH_ASIA = 0x68B -+ SYS___WCWIDTH_STD_A = 0x68A -+ SYS_FOPEN = 0x069 -+ SYS___REGEXEC_A = 0x69A -+ SYS___REGEXEC_STD_A = 0x69B -+ SYS___REGFREE_A = 0x69C -+ SYS___REGFREE_STD_A = 0x69D -+ SYS___STRCOLL_A = 0x69E -+ SYS___STRCOLL_C_A = 0x69F -+ SYS_SCANF = 0x070 -+ SYS___A64L_A = 0x70C -+ SYS___ECVT_A = 0x70D -+ SYS___FCVT_A = 0x70E -+ SYS___GCVT_A = 0x70F -+ SYS___STRTOUL_A = 0x70A -+ SYS_____AE_CORRESTBL_QUERY_A = 0x70B -+ SYS_SPRINTF = 0x071 -+ SYS___ACCESS_A = 0x71F -+ SYS___CATOPEN_A = 0x71E -+ SYS___GETOPT_A = 0x71D -+ SYS___REALPATH_A = 0x71A -+ SYS___SETENV_A = 0x71B -+ SYS___SYSTEM_A = 0x71C -+ SYS_FGETC = 0x072 -+ SYS___GAI_STRERROR_A = 0x72F -+ SYS___RMDIR_A = 0x72A -+ SYS___STATVFS_A = 0x72B -+ SYS___SYMLINK_A = 0x72C -+ SYS___TRUNCATE_A = 0x72D -+ SYS___UNLINK_A = 0x72E -+ SYS_VFPRINTF = 0x073 -+ SYS___ISSPACE_A = 0x73A -+ SYS___ISUPPER_A = 0x73B -+ SYS___ISWALNUM_A = 0x73F -+ SYS___ISXDIGIT_A = 0x73C -+ SYS___TOLOWER_A = 0x73D -+ SYS___TOUPPER_A = 0x73E -+ SYS_VPRINTF = 0x074 -+ SYS___CONFSTR_A = 0x74B -+ SYS___FDOPEN_A = 0x74E -+ SYS___FLDATA_A = 0x74F -+ SYS___FTOK_A = 0x74C -+ SYS___ISWXDIGIT_A = 0x74A -+ SYS___MKTEMP_A = 0x74D -+ SYS_VSPRINTF = 0x075 -+ SYS___GETGRGID_A = 0x75A -+ SYS___GETGRNAM_A = 0x75B -+ SYS___GETGROUPSBYNAME_A = 0x75C -+ SYS___GETHOSTENT_A = 0x75D -+ SYS___GETHOSTNAME_A = 0x75E -+ SYS___GETLOGIN_A = 0x75F -+ SYS_GETC = 0x076 -+ SYS___CREATEWORKUNIT_A = 0x76A -+ SYS___CTERMID_A = 0x76B -+ SYS___FMTMSG_A = 0x76C -+ SYS___INITGROUPS_A = 0x76D -+ SYS___MSGRCV_A = 0x76F -+ SYS_____LOGIN_A = 0x76E -+ SYS_FGETS = 0x077 -+ SYS___STRCASECMP_A = 0x77B -+ SYS___STRNCASECMP_A = 0x77C -+ SYS___TTYNAME_A = 0x77D -+ SYS___UNAME_A = 0x77E -+ SYS___UTIMES_A = 0x77F -+ SYS_____SERVER_PWU_A = 0x77A -+ SYS_FPUTC = 0x078 -+ SYS___CREAT_O_A = 0x78E -+ SYS___ENVNA = 0x78F -+ SYS___FREAD_A = 0x78A -+ SYS___FWRITE_A = 0x78B -+ SYS___ISASCII = 0x78D -+ SYS___OPEN_O_A = 0x78C -+ SYS_FPUTS = 0x079 -+ SYS___ASCTIME_A = 0x79C -+ SYS___CTIME_A = 0x79D -+ SYS___GETDATE_A = 0x79E -+ SYS___GETSERVBYPORT_A = 0x79A -+ SYS___GETSERVENT_A = 0x79B -+ SYS___TZSET_A = 0x79F -+ SYS_ACL_FROM_TEXT = 0x80C -+ SYS_ACL_SET_FD = 0x80A -+ SYS_ACL_SET_FILE = 0x80B -+ SYS_ACL_SORT = 0x80E -+ SYS_ACL_TO_TEXT = 0x80D -+ SYS_UNGETC = 0x080 -+ SYS___SHUTDOWN_REGISTRATION = 0x80F -+ SYS_FREAD = 0x081 -+ SYS_FREEADDRINFO = 0x81A -+ SYS_GAI_STRERROR = 0x81B -+ SYS_REXEC_AF = 0x81C -+ SYS___DYNALLOC_A = 0x81F -+ SYS___POE = 0x81D -+ SYS_WCSTOMBS = 0x082 -+ SYS___INET_ADDR_A = 0x82F -+ SYS___NLIST_A = 0x82A -+ SYS_____TCGETCP_A = 0x82B -+ SYS_____TCSETCP_A = 0x82C -+ SYS_____W_PIOCTL_A = 0x82E -+ SYS_MBTOWC = 0x083 -+ SYS___CABEND = 0x83D -+ SYS___LE_CIB_GET = 0x83E -+ SYS___RECVMSG_A = 0x83B -+ SYS___SENDMSG_A = 0x83A -+ SYS___SET_LAA_FOR_JIT = 0x83F -+ SYS_____LCHATTR_A = 0x83C -+ SYS_WCTOMB = 0x084 -+ SYS___CBRTL_B = 0x84A -+ SYS___COPYSIGNF_B = 0x84B -+ SYS___COPYSIGNL_B = 0x84C -+ SYS___COTANF_B = 0x84D -+ SYS___COTANL_B = 0x84F -+ SYS___COTAN_B = 0x84E -+ SYS_MBSTOWCS = 0x085 -+ SYS___LOG1PL_B = 0x85A -+ SYS___LOG2F_B = 0x85B -+ SYS___LOG2L_B = 0x85D -+ SYS___LOG2_B = 0x85C -+ SYS___REMAINDERF_B = 0x85E -+ SYS___REMAINDERL_B = 0x85F -+ SYS_ACOSHF = 0x86E -+ SYS_ACOSHL = 0x86F -+ SYS_WCSCPY = 0x086 -+ SYS___ERFCF_B = 0x86D -+ SYS___ERFF_B = 0x86C -+ SYS___LROUNDF_B = 0x86A -+ SYS___LROUND_B = 0x86B -+ SYS_COTANL = 0x87A -+ SYS_EXP2F = 0x87B -+ SYS_EXP2L = 0x87C -+ SYS_EXPM1F = 0x87D -+ SYS_EXPM1L = 0x87E -+ SYS_FDIMF = 0x87F -+ SYS_WCSCAT = 0x087 -+ SYS___COTANL = 0x87A -+ SYS_REMAINDERF = 0x88A -+ SYS_REMAINDERL = 0x88B -+ SYS_REMAINDF = 0x88A -+ SYS_REMAINDL = 0x88B -+ SYS_REMQUO = 0x88D -+ SYS_REMQUOF = 0x88C -+ SYS_REMQUOL = 0x88E -+ SYS_TGAMMAF = 0x88F -+ SYS_WCSCHR = 0x088 -+ SYS_ERFCF = 0x89B -+ SYS_ERFCL = 0x89C -+ SYS_ERFL = 0x89A -+ SYS_EXP2 = 0x89E -+ SYS_WCSCMP = 0x089 -+ SYS___EXP2_B = 0x89D -+ SYS___FAR_JUMP = 0x89F -+ SYS_ABS = 0x090 -+ SYS___ERFCL_H = 0x90A -+ SYS___EXPF_H = 0x90C -+ SYS___EXPL_H = 0x90D -+ SYS___EXPM1_H = 0x90E -+ SYS___EXP_H = 0x90B -+ SYS___FDIM_H = 0x90F -+ SYS_DIV = 0x091 -+ SYS___LOG2F_H = 0x91F -+ SYS___LOG2_H = 0x91E -+ SYS___LOGB_H = 0x91D -+ SYS___LOGF_H = 0x91B -+ SYS___LOGL_H = 0x91C -+ SYS___LOG_H = 0x91A -+ SYS_LABS = 0x092 -+ SYS___POWL_H = 0x92A -+ SYS___REMAINDER_H = 0x92B -+ SYS___RINT_H = 0x92C -+ SYS___SCALB_H = 0x92D -+ SYS___SINF_H = 0x92F -+ SYS___SIN_H = 0x92E -+ SYS_STRNCPY = 0x093 -+ SYS___TANHF_H = 0x93B -+ SYS___TANHL_H = 0x93C -+ SYS___TANH_H = 0x93A -+ SYS___TGAMMAF_H = 0x93E -+ SYS___TGAMMA_H = 0x93D -+ SYS___TRUNC_H = 0x93F -+ SYS_MEMCPY = 0x094 -+ SYS_VFWSCANF = 0x94A -+ SYS_VSWSCANF = 0x94E -+ SYS_VWSCANF = 0x94C -+ SYS_INET6_RTH_ADD = 0x95D -+ SYS_INET6_RTH_INIT = 0x95C -+ SYS_INET6_RTH_REVERSE = 0x95E -+ SYS_INET6_RTH_SEGMENTS = 0x95F -+ SYS_INET6_RTH_SPACE = 0x95B -+ SYS_MEMMOVE = 0x095 -+ SYS_WCSTOLD = 0x95A -+ SYS_STRCPY = 0x096 -+ SYS_STRCMP = 0x097 -+ SYS_CABS = 0x98E -+ SYS_STRCAT = 0x098 -+ SYS___CABS_B = 0x98F -+ SYS___POW_II = 0x98A -+ SYS___POW_II_B = 0x98B -+ SYS___POW_II_H = 0x98C -+ SYS_CACOSF = 0x99A -+ SYS_CACOSL = 0x99D -+ SYS_STRNCAT = 0x099 -+ SYS___CACOSF_B = 0x99B -+ SYS___CACOSF_H = 0x99C -+ SYS___CACOSL_B = 0x99E -+ SYS___CACOSL_H = 0x99F -+ SYS_ISWALPHA = 0x100 -+ SYS_ISWBLANK = 0x101 -+ SYS___ISWBLK = 0x101 -+ SYS_ISWCNTRL = 0x102 -+ SYS_ISWDIGIT = 0x103 -+ SYS_ISWGRAPH = 0x104 -+ SYS_ISWLOWER = 0x105 -+ SYS_ISWPRINT = 0x106 -+ SYS_ISWPUNCT = 0x107 -+ SYS_ISWSPACE = 0x108 -+ SYS_ISWUPPER = 0x109 -+ SYS_WCTOB = 0x110 -+ SYS_MBRLEN = 0x111 -+ SYS_MBRTOWC = 0x112 -+ SYS_MBSRTOWC = 0x113 -+ SYS_MBSRTOWCS = 0x113 -+ SYS_WCRTOMB = 0x114 -+ SYS_WCSRTOMB = 0x115 -+ SYS_WCSRTOMBS = 0x115 -+ SYS___CSID = 0x116 -+ SYS___WCSID = 0x117 -+ SYS_STRPTIME = 0x118 -+ SYS___STRPTM = 0x118 -+ SYS_STRFMON = 0x119 -+ SYS_WCSCOLL = 0x130 -+ SYS_WCSXFRM = 0x131 -+ SYS_WCSWIDTH = 0x132 -+ SYS_WCWIDTH = 0x133 -+ SYS_WCSFTIME = 0x134 -+ SYS_SWPRINTF = 0x135 -+ SYS_VSWPRINT = 0x136 -+ SYS_VSWPRINTF = 0x136 -+ SYS_SWSCANF = 0x137 -+ SYS_REGCOMP = 0x138 -+ SYS_REGEXEC = 0x139 -+ SYS_GETWC = 0x140 -+ SYS_GETWCHAR = 0x141 -+ SYS_PUTWC = 0x142 -+ SYS_PUTWCHAR = 0x143 -+ SYS_UNGETWC = 0x144 -+ SYS_ICONV_OPEN = 0x145 -+ SYS_ICONV = 0x146 -+ SYS_ICONV_CLOSE = 0x147 -+ SYS_COLLRANGE = 0x150 -+ SYS_CCLASS = 0x151 -+ SYS_COLLORDER = 0x152 -+ SYS___DEMANGLE = 0x154 -+ SYS_FDOPEN = 0x155 -+ SYS___ERRNO = 0x156 -+ SYS___ERRNO2 = 0x157 -+ SYS___TERROR = 0x158 -+ SYS_MAXCOLL = 0x169 -+ SYS_DLLLOAD = 0x170 -+ SYS__EXIT = 0x174 -+ SYS_ACCESS = 0x175 -+ SYS_ALARM = 0x176 -+ SYS_CFGETISPEED = 0x177 -+ SYS_CFGETOSPEED = 0x178 -+ SYS_CFSETISPEED = 0x179 -+ SYS_CREAT = 0x180 -+ SYS_CTERMID = 0x181 -+ SYS_DUP = 0x182 -+ SYS_DUP2 = 0x183 -+ SYS_EXECL = 0x184 -+ SYS_EXECLE = 0x185 -+ SYS_EXECLP = 0x186 -+ SYS_EXECV = 0x187 -+ SYS_EXECVE = 0x188 -+ SYS_EXECVP = 0x189 -+ SYS_FSTAT = 0x190 -+ SYS_FSYNC = 0x191 -+ SYS_FTRUNCATE = 0x192 -+ SYS_GETCWD = 0x193 -+ SYS_GETEGID = 0x194 -+ SYS_GETEUID = 0x195 -+ SYS_GETGID = 0x196 -+ SYS_GETGRGID = 0x197 -+ SYS_GETGRNAM = 0x198 -+ SYS_GETGROUPS = 0x199 -+ SYS_PTHREAD_MUTEXATTR_DESTROY = 0x200 -+ SYS_PTHREAD_MUTEXATTR_SETKIND_NP = 0x201 -+ SYS_PTHREAD_MUTEXATTR_GETKIND_NP = 0x202 -+ SYS_PTHREAD_MUTEX_INIT = 0x203 -+ SYS_PTHREAD_MUTEX_DESTROY = 0x204 -+ SYS_PTHREAD_MUTEX_LOCK = 0x205 -+ SYS_PTHREAD_MUTEX_TRYLOCK = 0x206 -+ SYS_PTHREAD_MUTEX_UNLOCK = 0x207 -+ SYS_PTHREAD_ONCE = 0x209 -+ SYS_TW_OPEN = 0x210 -+ SYS_TW_FCNTL = 0x211 -+ SYS_PTHREAD_JOIN_D4_NP = 0x212 -+ SYS_PTHREAD_CONDATTR_SETKIND_NP = 0x213 -+ SYS_PTHREAD_CONDATTR_GETKIND_NP = 0x214 -+ SYS_EXTLINK_NP = 0x215 -+ SYS___PASSWD = 0x216 -+ SYS_SETGROUPS = 0x217 -+ SYS_INITGROUPS = 0x218 -+ SYS_WCSRCHR = 0x240 -+ SYS_SVC99 = 0x241 -+ SYS___SVC99 = 0x241 -+ SYS_WCSWCS = 0x242 -+ SYS_LOCALECO = 0x243 -+ SYS_LOCALECONV = 0x243 -+ SYS___LIBREL = 0x244 -+ SYS_RELEASE = 0x245 -+ SYS___RLSE = 0x245 -+ SYS_FLOCATE = 0x246 -+ SYS___FLOCT = 0x246 -+ SYS_FDELREC = 0x247 -+ SYS___FDLREC = 0x247 -+ SYS_FETCH = 0x248 -+ SYS___FETCH = 0x248 -+ SYS_QSORT = 0x249 -+ SYS___CLEANUPCATCH = 0x260 -+ SYS___CATCHMATCH = 0x261 -+ SYS___CLEAN2UPCATCH = 0x262 -+ SYS_GETPRIORITY = 0x270 -+ SYS_NICE = 0x271 -+ SYS_SETPRIORITY = 0x272 -+ SYS_GETITIMER = 0x273 -+ SYS_SETITIMER = 0x274 -+ SYS_MSGCTL = 0x275 -+ SYS_MSGGET = 0x276 -+ SYS_MSGRCV = 0x277 -+ SYS_MSGSND = 0x278 -+ SYS_MSGXRCV = 0x279 -+ SYS___MSGXR = 0x279 -+ SYS_SHMGET = 0x280 -+ SYS___GETIPC = 0x281 -+ SYS_SETGRENT = 0x282 -+ SYS_GETGRENT = 0x283 -+ SYS_ENDGRENT = 0x284 -+ SYS_SETPWENT = 0x285 -+ SYS_GETPWENT = 0x286 -+ SYS_ENDPWENT = 0x287 -+ SYS_BSD_SIGNAL = 0x288 -+ SYS_KILLPG = 0x289 -+ SYS_SIGSET = 0x290 -+ SYS_SIGSTACK = 0x291 -+ SYS_GETRLIMIT = 0x292 -+ SYS_SETRLIMIT = 0x293 -+ SYS_GETRUSAGE = 0x294 -+ SYS_MMAP = 0x295 -+ SYS_MPROTECT = 0x296 -+ SYS_MSYNC = 0x297 -+ SYS_MUNMAP = 0x298 -+ SYS_CONFSTR = 0x299 -+ SYS___NDMTRM = 0x300 -+ SYS_FTOK = 0x301 -+ SYS_BASENAME = 0x302 -+ SYS_DIRNAME = 0x303 -+ SYS_GETDTABLESIZE = 0x304 -+ SYS_MKSTEMP = 0x305 -+ SYS_MKTEMP = 0x306 -+ SYS_NFTW = 0x307 -+ SYS_GETWD = 0x308 -+ SYS_LOCKF = 0x309 -+ SYS_WORDEXP = 0x310 -+ SYS_WORDFREE = 0x311 -+ SYS_GETPGID = 0x312 -+ SYS_GETSID = 0x313 -+ SYS___UTMPXNAME = 0x314 -+ SYS_CUSERID = 0x315 -+ SYS_GETPASS = 0x316 -+ SYS_FNMATCH = 0x317 -+ SYS_FTW = 0x318 -+ SYS_GETW = 0x319 -+ SYS_ACOSH = 0x320 -+ SYS_ASINH = 0x321 -+ SYS_ATANH = 0x322 -+ SYS_CBRT = 0x323 -+ SYS_EXPM1 = 0x324 -+ SYS_ILOGB = 0x325 -+ SYS_LOGB = 0x326 -+ SYS_LOG1P = 0x327 -+ SYS_NEXTAFTER = 0x328 -+ SYS_RINT = 0x329 -+ SYS_SPAWN = 0x330 -+ SYS_SPAWNP = 0x331 -+ SYS_GETLOGIN_UU = 0x332 -+ SYS_ECVT = 0x333 -+ SYS_FCVT = 0x334 -+ SYS_GCVT = 0x335 -+ SYS_ACCEPT = 0x336 -+ SYS_BIND = 0x337 -+ SYS_CONNECT = 0x338 -+ SYS_ENDHOSTENT = 0x339 -+ SYS_GETHOSTENT = 0x340 -+ SYS_GETHOSTID = 0x341 -+ SYS_GETHOSTNAME = 0x342 -+ SYS_GETNETBYADDR = 0x343 -+ SYS_GETNETBYNAME = 0x344 -+ SYS_GETNETENT = 0x345 -+ SYS_GETPEERNAME = 0x346 -+ SYS_GETPROTOBYNAME = 0x347 -+ SYS_GETPROTOBYNUMBER = 0x348 -+ SYS_GETPROTOENT = 0x349 -+ SYS_INET_LNAOF = 0x350 -+ SYS_INET_MAKEADDR = 0x351 -+ SYS_INET_NETOF = 0x352 -+ SYS_INET_NETWORK = 0x353 -+ SYS_INET_NTOA = 0x354 -+ SYS_IOCTL = 0x355 -+ SYS_LISTEN = 0x356 -+ SYS_READV = 0x357 -+ SYS_RECV = 0x358 -+ SYS_RECVFROM = 0x359 -+ SYS_SETHOSTENT = 0x360 -+ SYS_SETNETENT = 0x361 -+ SYS_SETPEER = 0x362 -+ SYS_SETPROTOENT = 0x363 -+ SYS_SETSERVENT = 0x364 -+ SYS_SETSOCKOPT = 0x365 -+ SYS_SHUTDOWN = 0x366 -+ SYS_SOCKET = 0x367 -+ SYS_SOCKETPAIR = 0x368 -+ SYS_WRITEV = 0x369 -+ SYS_ENDNETENT = 0x370 -+ SYS_CLOSELOG = 0x371 -+ SYS_OPENLOG = 0x372 -+ SYS_SETLOGMASK = 0x373 -+ SYS_SYSLOG = 0x374 -+ SYS_PTSNAME = 0x375 -+ SYS_SETREUID = 0x376 -+ SYS_SETREGID = 0x377 -+ SYS_REALPATH = 0x378 -+ SYS___SIGNGAM = 0x379 -+ SYS_POLL = 0x380 -+ SYS_REXEC = 0x381 -+ SYS___ISASCII2 = 0x382 -+ SYS___TOASCII2 = 0x383 -+ SYS_CHPRIORITY = 0x384 -+ SYS_PTHREAD_ATTR_SETSYNCTYPE_NP = 0x385 -+ SYS_PTHREAD_ATTR_GETSYNCTYPE_NP = 0x386 -+ SYS_PTHREAD_SET_LIMIT_NP = 0x387 -+ SYS___STNETENT = 0x388 -+ SYS___STPROTOENT = 0x389 -+ SYS___SELECT1 = 0x390 -+ SYS_PTHREAD_SECURITY_NP = 0x391 -+ SYS___CHECK_RESOURCE_AUTH_NP = 0x392 -+ SYS___CONVERT_ID_NP = 0x393 -+ SYS___OPENVMREL = 0x394 -+ SYS_WMEMCHR = 0x395 -+ SYS_WMEMCMP = 0x396 -+ SYS_WMEMCPY = 0x397 -+ SYS_WMEMMOVE = 0x398 -+ SYS_WMEMSET = 0x399 -+ SYS___FPUTWC = 0x400 -+ SYS___PUTWC = 0x401 -+ SYS___PWCHAR = 0x402 -+ SYS___WCSFTM = 0x403 -+ SYS___WCSTOK = 0x404 -+ SYS___WCWDTH = 0x405 -+ SYS_T_ACCEPT = 0x409 -+ SYS_T_GETINFO = 0x410 -+ SYS_T_GETPROTADDR = 0x411 -+ SYS_T_GETSTATE = 0x412 -+ SYS_T_LISTEN = 0x413 -+ SYS_T_LOOK = 0x414 -+ SYS_T_OPEN = 0x415 -+ SYS_T_OPTMGMT = 0x416 -+ SYS_T_RCV = 0x417 -+ SYS_T_RCVCONNECT = 0x418 -+ SYS_T_RCVDIS = 0x419 -+ SYS_T_SNDUDATA = 0x420 -+ SYS_T_STRERROR = 0x421 -+ SYS_T_SYNC = 0x422 -+ SYS_T_UNBIND = 0x423 -+ SYS___T_ERRNO = 0x424 -+ SYS___RECVMSG2 = 0x425 -+ SYS___SENDMSG2 = 0x426 -+ SYS_FATTACH = 0x427 -+ SYS_FDETACH = 0x428 -+ SYS_GETMSG = 0x429 -+ SYS_GETCONTEXT = 0x430 -+ SYS_SETCONTEXT = 0x431 -+ SYS_MAKECONTEXT = 0x432 -+ SYS_SWAPCONTEXT = 0x433 -+ SYS_PTHREAD_GETSPECIFIC_D8_NP = 0x434 -+ SYS_GETCLIENTID = 0x470 -+ SYS___GETCLIENTID = 0x471 -+ SYS_GETSTABLESIZE = 0x472 -+ SYS_GETIBMOPT = 0x473 -+ SYS_GETIBMSOCKOPT = 0x474 -+ SYS_GIVESOCKET = 0x475 -+ SYS_IBMSFLUSH = 0x476 -+ SYS_MAXDESC = 0x477 -+ SYS_SETIBMOPT = 0x478 -+ SYS_SETIBMSOCKOPT = 0x479 -+ SYS___SERVER_PWU = 0x480 -+ SYS_PTHREAD_TAG_NP = 0x481 -+ SYS___CONSOLE = 0x482 -+ SYS___WSINIT = 0x483 -+ SYS___IPTCPN = 0x489 -+ SYS___SERVER_CLASSIFY = 0x490 -+ SYS___HEAPRPT = 0x496 -+ SYS___ISBFP = 0x500 -+ SYS___FP_CAST = 0x501 -+ SYS___CERTIFICATE = 0x502 -+ SYS_SEND_FILE = 0x503 -+ SYS_AIO_CANCEL = 0x504 -+ SYS_AIO_ERROR = 0x505 -+ SYS_AIO_READ = 0x506 -+ SYS_AIO_RETURN = 0x507 -+ SYS_AIO_SUSPEND = 0x508 -+ SYS_AIO_WRITE = 0x509 -+ SYS_PTHREAD_RWLOCK_TRYWRLOCK = 0x510 -+ SYS_PTHREAD_RWLOCK_UNLOCK = 0x511 -+ SYS_PTHREAD_RWLOCK_WRLOCK = 0x512 -+ SYS_PTHREAD_RWLOCKATTR_GETPSHARED = 0x513 -+ SYS_PTHREAD_RWLOCKATTR_SETPSHARED = 0x514 -+ SYS_PTHREAD_RWLOCKATTR_INIT = 0x515 -+ SYS_PTHREAD_RWLOCKATTR_DESTROY = 0x516 -+ SYS___CTTBL = 0x517 -+ SYS_PTHREAD_MUTEXATTR_SETTYPE = 0x518 -+ SYS_PTHREAD_MUTEXATTR_GETTYPE = 0x519 -+ SYS___FP_UNORDERED = 0x520 -+ SYS___FP_READ_RND = 0x521 -+ SYS___FP_READ_RND_B = 0x522 -+ SYS___FP_SWAP_RND = 0x523 -+ SYS___FP_SWAP_RND_B = 0x524 -+ SYS___FP_LEVEL = 0x525 -+ SYS___FP_BTOH = 0x526 -+ SYS___FP_HTOB = 0x527 -+ SYS___FPC_RD = 0x528 -+ SYS___FPC_WR = 0x529 -+ SYS_PTHREAD_SETCANCELTYPE = 0x600 -+ SYS_PTHREAD_TESTCANCEL = 0x601 -+ SYS___ATANF_B = 0x602 -+ SYS___ATANL_B = 0x603 -+ SYS___CEILF_B = 0x604 -+ SYS___CEILL_B = 0x605 -+ SYS___COSF_B = 0x606 -+ SYS___COSL_B = 0x607 -+ SYS___FABSF_B = 0x608 -+ SYS___FABSL_B = 0x609 -+ SYS___SINF_B = 0x610 -+ SYS___SINL_B = 0x611 -+ SYS___TANF_B = 0x612 -+ SYS___TANL_B = 0x613 -+ SYS___TANHF_B = 0x614 -+ SYS___TANHL_B = 0x615 -+ SYS___ACOSF_B = 0x616 -+ SYS___ACOSL_B = 0x617 -+ SYS___ASINF_B = 0x618 -+ SYS___ASINL_B = 0x619 -+ SYS___LOGF_B = 0x620 -+ SYS___LOGL_B = 0x621 -+ SYS___LOG10F_B = 0x622 -+ SYS___LOG10L_B = 0x623 -+ SYS___POWF_B = 0x624 -+ SYS___POWL_B = 0x625 -+ SYS___SINHF_B = 0x626 -+ SYS___SINHL_B = 0x627 -+ SYS___SQRTF_B = 0x628 -+ SYS___SQRTL_B = 0x629 -+ SYS___MODFL_B = 0x630 -+ SYS_ABSF = 0x631 -+ SYS_ABSL = 0x632 -+ SYS_ACOSF = 0x633 -+ SYS_ACOSL = 0x634 -+ SYS_ASINF = 0x635 -+ SYS_ASINL = 0x636 -+ SYS_ATAN2F = 0x637 -+ SYS_ATAN2L = 0x638 -+ SYS_ATANF = 0x639 -+ SYS_COSHL = 0x640 -+ SYS_EXPF = 0x641 -+ SYS_EXPL = 0x642 -+ SYS_TANHF = 0x643 -+ SYS_TANHL = 0x644 -+ SYS_LOG10F = 0x645 -+ SYS_LOG10L = 0x646 -+ SYS_LOGF = 0x647 -+ SYS_LOGL = 0x648 -+ SYS_POWF = 0x649 -+ SYS_SINHL = 0x650 -+ SYS_TANF = 0x651 -+ SYS_TANL = 0x652 -+ SYS_FABSF = 0x653 -+ SYS_FABSL = 0x654 -+ SYS_FLOORF = 0x655 -+ SYS_FLOORL = 0x656 -+ SYS_FMODF = 0x657 -+ SYS_FMODL = 0x658 -+ SYS_FREXPF = 0x659 -+ SYS___CHATTR = 0x660 -+ SYS___FCHATTR = 0x661 -+ SYS___TOCCSID = 0x662 -+ SYS___CSNAMETYPE = 0x663 -+ SYS___TOCSNAME = 0x664 -+ SYS___CCSIDTYPE = 0x665 -+ SYS___AE_CORRESTBL_QUERY = 0x666 -+ SYS___AE_AUTOCONVERT_STATE = 0x667 -+ SYS_DN_FIND = 0x668 -+ SYS___GETHOSTBYADDR_A = 0x669 -+ SYS___MBLEN_SB_A = 0x670 -+ SYS___MBLEN_STD_A = 0x671 -+ SYS___MBLEN_UTF = 0x672 -+ SYS___MBSTOWCS_A = 0x673 -+ SYS___MBSTOWCS_STD_A = 0x674 -+ SYS___MBTOWC_A = 0x675 -+ SYS___MBTOWC_ISO1 = 0x676 -+ SYS___MBTOWC_SBCS = 0x677 -+ SYS___MBTOWC_MBCS = 0x678 -+ SYS___MBTOWC_UTF = 0x679 -+ SYS___CSID_A = 0x680 -+ SYS___CSID_STD_A = 0x681 -+ SYS___WCSID_A = 0x682 -+ SYS___WCSID_STD_A = 0x683 -+ SYS___WCTOMB_A = 0x684 -+ SYS___WCTOMB_ISO1 = 0x685 -+ SYS___WCTOMB_STD_A = 0x686 -+ SYS___WCTOMB_UTF = 0x687 -+ SYS___WCWIDTH_A = 0x688 -+ SYS___GETGRNAM_R_A = 0x689 -+ SYS___READDIR_R_A = 0x690 -+ SYS___E2A_S = 0x691 -+ SYS___FNMATCH_A = 0x692 -+ SYS___FNMATCH_C_A = 0x693 -+ SYS___EXECL_A = 0x694 -+ SYS___FNMATCH_STD_A = 0x695 -+ SYS___REGCOMP_A = 0x696 -+ SYS___REGCOMP_STD_A = 0x697 -+ SYS___REGERROR_A = 0x698 -+ SYS___REGERROR_STD_A = 0x699 -+ SYS___SWPRINTF_A = 0x700 -+ SYS___FSCANF_A = 0x701 -+ SYS___SCANF_A = 0x702 -+ SYS___SSCANF_A = 0x703 -+ SYS___SWSCANF_A = 0x704 -+ SYS___ATOF_A = 0x705 -+ SYS___ATOI_A = 0x706 -+ SYS___ATOL_A = 0x707 -+ SYS___STRTOD_A = 0x708 -+ SYS___STRTOL_A = 0x709 -+ SYS___L64A_A = 0x710 -+ SYS___STRERROR_A = 0x711 -+ SYS___PERROR_A = 0x712 -+ SYS___FETCH_A = 0x713 -+ SYS___GETENV_A = 0x714 -+ SYS___MKSTEMP_A = 0x717 -+ SYS___PTSNAME_A = 0x718 -+ SYS___PUTENV_A = 0x719 -+ SYS___CHDIR_A = 0x720 -+ SYS___CHOWN_A = 0x721 -+ SYS___CHROOT_A = 0x722 -+ SYS___GETCWD_A = 0x723 -+ SYS___GETWD_A = 0x724 -+ SYS___LCHOWN_A = 0x725 -+ SYS___LINK_A = 0x726 -+ SYS___PATHCONF_A = 0x727 -+ SYS___IF_NAMEINDEX_A = 0x728 -+ SYS___READLINK_A = 0x729 -+ SYS___EXTLINK_NP_A = 0x730 -+ SYS___ISALNUM_A = 0x731 -+ SYS___ISALPHA_A = 0x732 -+ SYS___A2E_S = 0x733 -+ SYS___ISCNTRL_A = 0x734 -+ SYS___ISDIGIT_A = 0x735 -+ SYS___ISGRAPH_A = 0x736 -+ SYS___ISLOWER_A = 0x737 -+ SYS___ISPRINT_A = 0x738 -+ SYS___ISPUNCT_A = 0x739 -+ SYS___ISWALPHA_A = 0x740 -+ SYS___A2E_L = 0x741 -+ SYS___ISWCNTRL_A = 0x742 -+ SYS___ISWDIGIT_A = 0x743 -+ SYS___ISWGRAPH_A = 0x744 -+ SYS___ISWLOWER_A = 0x745 -+ SYS___ISWPRINT_A = 0x746 -+ SYS___ISWPUNCT_A = 0x747 -+ SYS___ISWSPACE_A = 0x748 -+ SYS___ISWUPPER_A = 0x749 -+ SYS___REMOVE_A = 0x750 -+ SYS___RENAME_A = 0x751 -+ SYS___TMPNAM_A = 0x752 -+ SYS___FOPEN_A = 0x753 -+ SYS___FREOPEN_A = 0x754 -+ SYS___CUSERID_A = 0x755 -+ SYS___POPEN_A = 0x756 -+ SYS___TEMPNAM_A = 0x757 -+ SYS___FTW_A = 0x758 -+ SYS___GETGRENT_A = 0x759 -+ SYS___INET_NTOP_A = 0x760 -+ SYS___GETPASS_A = 0x761 -+ SYS___GETPWENT_A = 0x762 -+ SYS___GETPWNAM_A = 0x763 -+ SYS___GETPWUID_A = 0x764 -+ SYS_____CHECK_RESOURCE_AUTH_NP_A = 0x765 -+ SYS___CHECKSCHENV_A = 0x766 -+ SYS___CONNECTSERVER_A = 0x767 -+ SYS___CONNECTWORKMGR_A = 0x768 -+ SYS_____CONSOLE_A = 0x769 -+ SYS___MSGSND_A = 0x770 -+ SYS___MSGXRCV_A = 0x771 -+ SYS___NFTW_A = 0x772 -+ SYS_____PASSWD_A = 0x773 -+ SYS___PTHREAD_SECURITY_NP_A = 0x774 -+ SYS___QUERYMETRICS_A = 0x775 -+ SYS___QUERYSCHENV = 0x776 -+ SYS___READV_A = 0x777 -+ SYS_____SERVER_CLASSIFY_A = 0x778 -+ SYS_____SERVER_INIT_A = 0x779 -+ SYS___W_GETPSENT_A = 0x780 -+ SYS___WRITEV_A = 0x781 -+ SYS___W_STATFS_A = 0x782 -+ SYS___W_STATVFS_A = 0x783 -+ SYS___FPUTC_A = 0x784 -+ SYS___PUTCHAR_A = 0x785 -+ SYS___PUTS_A = 0x786 -+ SYS___FGETS_A = 0x787 -+ SYS___GETS_A = 0x788 -+ SYS___FPUTS_A = 0x789 -+ SYS___PUTC_A = 0x790 -+ SYS___AE_THREAD_SETMODE = 0x791 -+ SYS___AE_THREAD_SWAPMODE = 0x792 -+ SYS___GETNETBYADDR_A = 0x793 -+ SYS___GETNETBYNAME_A = 0x794 -+ SYS___GETNETENT_A = 0x795 -+ SYS___GETPROTOBYNAME_A = 0x796 -+ SYS___GETPROTOBYNUMBER_A = 0x797 -+ SYS___GETPROTOENT_A = 0x798 -+ SYS___GETSERVBYNAME_A = 0x799 -+ SYS_ACL_FIRST_ENTRY = 0x800 -+ SYS_ACL_GET_ENTRY = 0x801 -+ SYS_ACL_VALID = 0x802 -+ SYS_ACL_CREATE_ENTRY = 0x803 -+ SYS_ACL_DELETE_ENTRY = 0x804 -+ SYS_ACL_UPDATE_ENTRY = 0x805 -+ SYS_ACL_DELETE_FD = 0x806 -+ SYS_ACL_DELETE_FILE = 0x807 -+ SYS_ACL_GET_FD = 0x808 -+ SYS_ACL_GET_FILE = 0x809 -+ SYS___ERFL_B = 0x810 -+ SYS___ERFCL_B = 0x811 -+ SYS___LGAMMAL_B = 0x812 -+ SYS___SETHOOKEVENTS = 0x813 -+ SYS_IF_NAMETOINDEX = 0x814 -+ SYS_IF_INDEXTONAME = 0x815 -+ SYS_IF_NAMEINDEX = 0x816 -+ SYS_IF_FREENAMEINDEX = 0x817 -+ SYS_GETADDRINFO = 0x818 -+ SYS_GETNAMEINFO = 0x819 -+ SYS___DYNFREE_A = 0x820 -+ SYS___RES_QUERY_A = 0x821 -+ SYS___RES_SEARCH_A = 0x822 -+ SYS___RES_QUERYDOMAIN_A = 0x823 -+ SYS___RES_MKQUERY_A = 0x824 -+ SYS___RES_SEND_A = 0x825 -+ SYS___DN_EXPAND_A = 0x826 -+ SYS___DN_SKIPNAME_A = 0x827 -+ SYS___DN_COMP_A = 0x828 -+ SYS___DN_FIND_A = 0x829 -+ SYS___INET_NTOA_A = 0x830 -+ SYS___INET_NETWORK_A = 0x831 -+ SYS___ACCEPT_A = 0x832 -+ SYS___ACCEPT_AND_RECV_A = 0x833 -+ SYS___BIND_A = 0x834 -+ SYS___CONNECT_A = 0x835 -+ SYS___GETPEERNAME_A = 0x836 -+ SYS___GETSOCKNAME_A = 0x837 -+ SYS___RECVFROM_A = 0x838 -+ SYS___SENDTO_A = 0x839 -+ SYS___LCHATTR = 0x840 -+ SYS___WRITEDOWN = 0x841 -+ SYS_PTHREAD_MUTEX_INIT2 = 0x842 -+ SYS___ACOSHF_B = 0x843 -+ SYS___ACOSHL_B = 0x844 -+ SYS___ASINHF_B = 0x845 -+ SYS___ASINHL_B = 0x846 -+ SYS___ATANHF_B = 0x847 -+ SYS___ATANHL_B = 0x848 -+ SYS___CBRTF_B = 0x849 -+ SYS___EXP2F_B = 0x850 -+ SYS___EXP2L_B = 0x851 -+ SYS___EXPM1F_B = 0x852 -+ SYS___EXPM1L_B = 0x853 -+ SYS___FDIMF_B = 0x854 -+ SYS___FDIM_B = 0x855 -+ SYS___FDIML_B = 0x856 -+ SYS___HYPOTF_B = 0x857 -+ SYS___HYPOTL_B = 0x858 -+ SYS___LOG1PF_B = 0x859 -+ SYS___REMQUOF_B = 0x860 -+ SYS___REMQUO_B = 0x861 -+ SYS___REMQUOL_B = 0x862 -+ SYS___TGAMMAF_B = 0x863 -+ SYS___TGAMMA_B = 0x864 -+ SYS___TGAMMAL_B = 0x865 -+ SYS___TRUNCF_B = 0x866 -+ SYS___TRUNC_B = 0x867 -+ SYS___TRUNCL_B = 0x868 -+ SYS___LGAMMAF_B = 0x869 -+ SYS_ASINHF = 0x870 -+ SYS_ASINHL = 0x871 -+ SYS_ATANHF = 0x872 -+ SYS_ATANHL = 0x873 -+ SYS_CBRTF = 0x874 -+ SYS_CBRTL = 0x875 -+ SYS_COPYSIGNF = 0x876 -+ SYS_CPYSIGNF = 0x876 -+ SYS_COPYSIGNL = 0x877 -+ SYS_CPYSIGNL = 0x877 -+ SYS_COTANF = 0x878 -+ SYS___COTANF = 0x878 -+ SYS_COTAN = 0x879 -+ SYS___COTAN = 0x879 -+ SYS_FDIM = 0x881 -+ SYS_FDIML = 0x882 -+ SYS_HYPOTF = 0x883 -+ SYS_HYPOTL = 0x884 -+ SYS_LOG1PF = 0x885 -+ SYS_LOG1PL = 0x886 -+ SYS_LOG2F = 0x887 -+ SYS_LOG2 = 0x888 -+ SYS_LOG2L = 0x889 -+ SYS_TGAMMA = 0x890 -+ SYS_TGAMMAL = 0x891 -+ SYS_TRUNCF = 0x892 -+ SYS_TRUNC = 0x893 -+ SYS_TRUNCL = 0x894 -+ SYS_LGAMMAF = 0x895 -+ SYS_LGAMMAL = 0x896 -+ SYS_LROUNDF = 0x897 -+ SYS_LROUND = 0x898 -+ SYS_ERFF = 0x899 -+ SYS___COSHF_H = 0x900 -+ SYS___COSHL_H = 0x901 -+ SYS___COTAN_H = 0x902 -+ SYS___COTANF_H = 0x903 -+ SYS___COTANL_H = 0x904 -+ SYS___ERF_H = 0x905 -+ SYS___ERFF_H = 0x906 -+ SYS___ERFL_H = 0x907 -+ SYS___ERFC_H = 0x908 -+ SYS___ERFCF_H = 0x909 -+ SYS___FDIMF_H = 0x910 -+ SYS___FDIML_H = 0x911 -+ SYS___FMOD_H = 0x912 -+ SYS___FMODF_H = 0x913 -+ SYS___FMODL_H = 0x914 -+ SYS___GAMMA_H = 0x915 -+ SYS___HYPOT_H = 0x916 -+ SYS___ILOGB_H = 0x917 -+ SYS___LGAMMA_H = 0x918 -+ SYS___LGAMMAF_H = 0x919 -+ SYS___LOG2L_H = 0x920 -+ SYS___LOG1P_H = 0x921 -+ SYS___LOG10_H = 0x922 -+ SYS___LOG10F_H = 0x923 -+ SYS___LOG10L_H = 0x924 -+ SYS___LROUND_H = 0x925 -+ SYS___LROUNDF_H = 0x926 -+ SYS___NEXTAFTER_H = 0x927 -+ SYS___POW_H = 0x928 -+ SYS___POWF_H = 0x929 -+ SYS___SINL_H = 0x930 -+ SYS___SINH_H = 0x931 -+ SYS___SINHF_H = 0x932 -+ SYS___SINHL_H = 0x933 -+ SYS___SQRT_H = 0x934 -+ SYS___SQRTF_H = 0x935 -+ SYS___SQRTL_H = 0x936 -+ SYS___TAN_H = 0x937 -+ SYS___TANF_H = 0x938 -+ SYS___TANL_H = 0x939 -+ SYS___TRUNCF_H = 0x940 -+ SYS___TRUNCL_H = 0x941 -+ SYS___COSH_H = 0x942 -+ SYS___LE_DEBUG_SET_RESUME_MCH = 0x943 -+ SYS_VFSCANF = 0x944 -+ SYS_VSCANF = 0x946 -+ SYS_VSSCANF = 0x948 -+ SYS_IMAXABS = 0x950 -+ SYS_IMAXDIV = 0x951 -+ SYS_STRTOIMAX = 0x952 -+ SYS_STRTOUMAX = 0x953 -+ SYS_WCSTOIMAX = 0x954 -+ SYS_WCSTOUMAX = 0x955 -+ SYS_ATOLL = 0x956 -+ SYS_STRTOF = 0x957 -+ SYS_STRTOLD = 0x958 -+ SYS_WCSTOF = 0x959 -+ SYS_INET6_RTH_GETADDR = 0x960 -+ SYS_INET6_OPT_INIT = 0x961 -+ SYS_INET6_OPT_APPEND = 0x962 -+ SYS_INET6_OPT_FINISH = 0x963 -+ SYS_INET6_OPT_SET_VAL = 0x964 -+ SYS_INET6_OPT_NEXT = 0x965 -+ SYS_INET6_OPT_FIND = 0x966 -+ SYS_INET6_OPT_GET_VAL = 0x967 -+ SYS___POW_I = 0x987 -+ SYS___POW_I_B = 0x988 -+ SYS___POW_I_H = 0x989 -+ SYS___CABS_H = 0x990 -+ SYS_CABSF = 0x991 -+ SYS___CABSF_B = 0x992 -+ SYS___CABSF_H = 0x993 -+ SYS_CABSL = 0x994 -+ SYS___CABSL_B = 0x995 -+ SYS___CABSL_H = 0x996 -+ SYS_CACOS = 0x997 -+ SYS___CACOS_B = 0x998 -+ SYS___CACOS_H = 0x999 -+) -diff --git a/vendor/golang.org/x/sys/unix/ztypes_aix_ppc.go b/vendor/golang.org/x/sys/unix/ztypes_aix_ppc.go -index 2c1f815..7a8161c 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_aix_ppc.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_aix_ppc.go -@@ -1,6 +1,7 @@ - // cgo -godefs types_aix.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build ppc && aix - // +build ppc,aix - - package unix -@@ -219,6 +220,7 @@ const ( - SizeofSockaddrUnix = 0x401 - SizeofSockaddrDatalink = 0x80 - SizeofLinger = 0x8 -+ SizeofIovec = 0x8 - SizeofIPMreq = 0x8 - SizeofIPv6Mreq = 0x14 - SizeofIPv6MTUInfo = 0x20 -diff --git a/vendor/golang.org/x/sys/unix/ztypes_aix_ppc64.go b/vendor/golang.org/x/sys/unix/ztypes_aix_ppc64.go -index b4a069e..07ed733 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_aix_ppc64.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_aix_ppc64.go -@@ -1,6 +1,7 @@ - // cgo -godefs types_aix.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build ppc64 && aix - // +build ppc64,aix - - package unix -@@ -223,6 +224,7 @@ const ( - SizeofSockaddrUnix = 0x401 - SizeofSockaddrDatalink = 0x80 - SizeofLinger = 0x8 -+ SizeofIovec = 0x10 - SizeofIPMreq = 0x8 - SizeofIPv6Mreq = 0x14 - SizeofIPv6MTUInfo = 0x20 -diff --git a/vendor/golang.org/x/sys/unix/ztypes_darwin_386.go b/vendor/golang.org/x/sys/unix/ztypes_darwin_386.go -deleted file mode 100644 -index 9f47b87..0000000 ---- a/vendor/golang.org/x/sys/unix/ztypes_darwin_386.go -+++ /dev/null -@@ -1,499 +0,0 @@ --// cgo -godefs types_darwin.go | go run mkpost.go --// Code generated by the command above; see README.md. DO NOT EDIT. -- --// +build 386,darwin -- --package unix -- --const ( -- SizeofPtr = 0x4 -- SizeofShort = 0x2 -- SizeofInt = 0x4 -- SizeofLong = 0x4 -- SizeofLongLong = 0x8 --) -- --type ( -- _C_short int16 -- _C_int int32 -- _C_long int32 -- _C_long_long int64 --) -- --type Timespec struct { -- Sec int32 -- Nsec int32 --} -- --type Timeval struct { -- Sec int32 -- Usec int32 --} -- --type Timeval32 struct{} -- --type Rusage struct { -- Utime Timeval -- Stime Timeval -- Maxrss int32 -- Ixrss int32 -- Idrss int32 -- Isrss int32 -- Minflt int32 -- Majflt int32 -- Nswap int32 -- Inblock int32 -- Oublock int32 -- Msgsnd int32 -- Msgrcv int32 -- Nsignals int32 -- Nvcsw int32 -- Nivcsw int32 --} -- --type Rlimit struct { -- Cur uint64 -- Max uint64 --} -- --type _Gid_t uint32 -- --type Stat_t struct { -- Dev int32 -- Mode uint16 -- Nlink uint16 -- Ino uint64 -- Uid uint32 -- Gid uint32 -- Rdev int32 -- Atim Timespec -- Mtim Timespec -- Ctim Timespec -- Btim Timespec -- Size int64 -- Blocks int64 -- Blksize int32 -- Flags uint32 -- Gen uint32 -- Lspare int32 -- Qspare [2]int64 --} -- --type Statfs_t struct { -- Bsize uint32 -- Iosize int32 -- Blocks uint64 -- Bfree uint64 -- Bavail uint64 -- Files uint64 -- Ffree uint64 -- Fsid Fsid -- Owner uint32 -- Type uint32 -- Flags uint32 -- Fssubtype uint32 -- Fstypename [16]int8 -- Mntonname [1024]int8 -- Mntfromname [1024]int8 -- Reserved [8]uint32 --} -- --type Flock_t struct { -- Start int64 -- Len int64 -- Pid int32 -- Type int16 -- Whence int16 --} -- --type Fstore_t struct { -- Flags uint32 -- Posmode int32 -- Offset int64 -- Length int64 -- Bytesalloc int64 --} -- --type Radvisory_t struct { -- Offset int64 -- Count int32 --} -- --type Fbootstraptransfer_t struct { -- Offset int64 -- Length uint32 -- Buffer *byte --} -- --type Log2phys_t struct { -- Flags uint32 -- Contigbytes int64 -- Devoffset int64 --} -- --type Fsid struct { -- Val [2]int32 --} -- --type Dirent struct { -- Ino uint64 -- Seekoff uint64 -- Reclen uint16 -- Namlen uint16 -- Type uint8 -- Name [1024]int8 -- _ [3]byte --} -- --type RawSockaddrInet4 struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Addr [4]byte /* in_addr */ -- Zero [8]int8 --} -- --type RawSockaddrInet6 struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- --type RawSockaddrUnix struct { -- Len uint8 -- Family uint8 -- Path [104]int8 --} -- --type RawSockaddrDatalink struct { -- Len uint8 -- Family uint8 -- Index uint16 -- Type uint8 -- Nlen uint8 -- Alen uint8 -- Slen uint8 -- Data [12]int8 --} -- --type RawSockaddr struct { -- Len uint8 -- Family uint8 -- Data [14]int8 --} -- --type RawSockaddrAny struct { -- Addr RawSockaddr -- Pad [92]int8 --} -- --type _Socklen uint32 -- --type Linger struct { -- Onoff int32 -- Linger int32 --} -- --type Iovec struct { -- Base *byte -- Len uint32 --} -- --type IPMreq struct { -- Multiaddr [4]byte /* in_addr */ -- Interface [4]byte /* in_addr */ --} -- --type IPv6Mreq struct { -- Multiaddr [16]byte /* in6_addr */ -- Interface uint32 --} -- --type Msghdr struct { -- Name *byte -- Namelen uint32 -- Iov *Iovec -- Iovlen int32 -- Control *byte -- Controllen uint32 -- Flags int32 --} -- --type Cmsghdr struct { -- Len uint32 -- Level int32 -- Type int32 --} -- --type Inet4Pktinfo struct { -- Ifindex uint32 -- Spec_dst [4]byte /* in_addr */ -- Addr [4]byte /* in_addr */ --} -- --type Inet6Pktinfo struct { -- Addr [16]byte /* in6_addr */ -- Ifindex uint32 --} -- --type IPv6MTUInfo struct { -- Addr RawSockaddrInet6 -- Mtu uint32 --} -- --type ICMPv6Filter struct { -- Filt [8]uint32 --} -- --const ( -- SizeofSockaddrInet4 = 0x10 -- SizeofSockaddrInet6 = 0x1c -- SizeofSockaddrAny = 0x6c -- SizeofSockaddrUnix = 0x6a -- SizeofSockaddrDatalink = 0x14 -- SizeofLinger = 0x8 -- SizeofIPMreq = 0x8 -- SizeofIPv6Mreq = 0x14 -- SizeofMsghdr = 0x1c -- SizeofCmsghdr = 0xc -- SizeofInet4Pktinfo = 0xc -- SizeofInet6Pktinfo = 0x14 -- SizeofIPv6MTUInfo = 0x20 -- SizeofICMPv6Filter = 0x20 --) -- --const ( -- PTRACE_TRACEME = 0x0 -- PTRACE_CONT = 0x7 -- PTRACE_KILL = 0x8 --) -- --type Kevent_t struct { -- Ident uint32 -- Filter int16 -- Flags uint16 -- Fflags uint32 -- Data int32 -- Udata *byte --} -- --type FdSet struct { -- Bits [32]int32 --} -- --const ( -- SizeofIfMsghdr = 0x70 -- SizeofIfData = 0x60 -- SizeofIfaMsghdr = 0x14 -- SizeofIfmaMsghdr = 0x10 -- SizeofIfmaMsghdr2 = 0x14 -- SizeofRtMsghdr = 0x5c -- SizeofRtMetrics = 0x38 --) -- --type IfMsghdr struct { -- Msglen uint16 -- Version uint8 -- Type uint8 -- Addrs int32 -- Flags int32 -- Index uint16 -- _ [2]byte -- Data IfData --} -- --type IfData struct { -- Type uint8 -- Typelen uint8 -- Physical uint8 -- Addrlen uint8 -- Hdrlen uint8 -- Recvquota uint8 -- Xmitquota uint8 -- Unused1 uint8 -- Mtu uint32 -- Metric uint32 -- Baudrate uint32 -- Ipackets uint32 -- Ierrors uint32 -- Opackets uint32 -- Oerrors uint32 -- Collisions uint32 -- Ibytes uint32 -- Obytes uint32 -- Imcasts uint32 -- Omcasts uint32 -- Iqdrops uint32 -- Noproto uint32 -- Recvtiming uint32 -- Xmittiming uint32 -- Lastchange Timeval -- Unused2 uint32 -- Hwassist uint32 -- Reserved1 uint32 -- Reserved2 uint32 --} -- --type IfaMsghdr struct { -- Msglen uint16 -- Version uint8 -- Type uint8 -- Addrs int32 -- Flags int32 -- Index uint16 -- _ [2]byte -- Metric int32 --} -- --type IfmaMsghdr struct { -- Msglen uint16 -- Version uint8 -- Type uint8 -- Addrs int32 -- Flags int32 -- Index uint16 -- _ [2]byte --} -- --type IfmaMsghdr2 struct { -- Msglen uint16 -- Version uint8 -- Type uint8 -- Addrs int32 -- Flags int32 -- Index uint16 -- _ [2]byte -- Refcount int32 --} -- --type RtMsghdr struct { -- Msglen uint16 -- Version uint8 -- Type uint8 -- Index uint16 -- _ [2]byte -- Flags int32 -- Addrs int32 -- Pid int32 -- Seq int32 -- Errno int32 -- Use int32 -- Inits uint32 -- Rmx RtMetrics --} -- --type RtMetrics struct { -- Locks uint32 -- Mtu uint32 -- Hopcount uint32 -- Expire int32 -- Recvpipe uint32 -- Sendpipe uint32 -- Ssthresh uint32 -- Rtt uint32 -- Rttvar uint32 -- Pksent uint32 -- Filler [4]uint32 --} -- --const ( -- SizeofBpfVersion = 0x4 -- SizeofBpfStat = 0x8 -- SizeofBpfProgram = 0x8 -- SizeofBpfInsn = 0x8 -- SizeofBpfHdr = 0x14 --) -- --type BpfVersion struct { -- Major uint16 -- Minor uint16 --} -- --type BpfStat struct { -- Recv uint32 -- Drop uint32 --} -- --type BpfProgram struct { -- Len uint32 -- Insns *BpfInsn --} -- --type BpfInsn struct { -- Code uint16 -- Jt uint8 -- Jf uint8 -- K uint32 --} -- --type BpfHdr struct { -- Tstamp Timeval -- Caplen uint32 -- Datalen uint32 -- Hdrlen uint16 -- _ [2]byte --} -- --type Termios struct { -- Iflag uint32 -- Oflag uint32 -- Cflag uint32 -- Lflag uint32 -- Cc [20]uint8 -- Ispeed uint32 -- Ospeed uint32 --} -- --type Winsize struct { -- Row uint16 -- Col uint16 -- Xpixel uint16 -- Ypixel uint16 --} -- --const ( -- AT_FDCWD = -0x2 -- AT_REMOVEDIR = 0x80 -- AT_SYMLINK_FOLLOW = 0x40 -- AT_SYMLINK_NOFOLLOW = 0x20 --) -- --type PollFd struct { -- Fd int32 -- Events int16 -- Revents int16 --} -- --const ( -- POLLERR = 0x8 -- POLLHUP = 0x10 -- POLLIN = 0x1 -- POLLNVAL = 0x20 -- POLLOUT = 0x4 -- POLLPRI = 0x2 -- POLLRDBAND = 0x80 -- POLLRDNORM = 0x40 -- POLLWRBAND = 0x100 -- POLLWRNORM = 0x4 --) -- --type Utsname struct { -- Sysname [256]byte -- Nodename [256]byte -- Release [256]byte -- Version [256]byte -- Machine [256]byte --} -- --const SizeofClockinfo = 0x14 -- --type Clockinfo struct { -- Hz int32 -- Tick int32 -- Tickadj int32 -- Stathz int32 -- Profhz int32 --} -diff --git a/vendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go -index 966798a..e2a64f0 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go -@@ -1,6 +1,7 @@ - // cgo -godefs types_darwin.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build amd64 && darwin - // +build amd64,darwin - - package unix -@@ -70,7 +71,6 @@ type Stat_t struct { - Uid uint32 - Gid uint32 - Rdev int32 -- _ [4]byte - Atim Timespec - Mtim Timespec - Ctim Timespec -@@ -97,10 +97,11 @@ type Statfs_t struct { - Type uint32 - Flags uint32 - Fssubtype uint32 -- Fstypename [16]int8 -- Mntonname [1024]int8 -- Mntfromname [1024]int8 -- Reserved [8]uint32 -+ Fstypename [16]byte -+ Mntonname [1024]byte -+ Mntfromname [1024]byte -+ Flags_ext uint32 -+ Reserved [7]uint32 - } - - type Flock_t struct { -@@ -133,8 +134,7 @@ type Fbootstraptransfer_t struct { - - type Log2phys_t struct { - Flags uint32 -- _ [8]byte -- _ [8]byte -+ _ [16]byte - } - - type Fsid struct { -@@ -151,6 +151,10 @@ type Dirent struct { - _ [3]byte - } - -+const ( -+ PathMax = 0x400 -+) -+ - type RawSockaddrInet4 struct { - Len uint8 - Family uint8 -@@ -196,8 +200,110 @@ type RawSockaddrAny struct { - Pad [92]int8 - } - -+type RawSockaddrCtl struct { -+ Sc_len uint8 -+ Sc_family uint8 -+ Ss_sysaddr uint16 -+ Sc_id uint32 -+ Sc_unit uint32 -+ Sc_reserved [5]uint32 -+} -+ -+type RawSockaddrVM struct { -+ Len uint8 -+ Family uint8 -+ Reserved1 uint16 -+ Port uint32 -+ Cid uint32 -+} -+ -+type XVSockPCB struct { -+ Xv_len uint32 -+ Xv_vsockpp uint64 -+ Xvp_local_cid uint32 -+ Xvp_local_port uint32 -+ Xvp_remote_cid uint32 -+ Xvp_remote_port uint32 -+ Xvp_rxcnt uint32 -+ Xvp_txcnt uint32 -+ Xvp_peer_rxhiwat uint32 -+ Xvp_peer_rxcnt uint32 -+ Xvp_last_pid int32 -+ Xvp_gencnt uint64 -+ Xv_socket XSocket -+ _ [4]byte -+} -+ -+type XSocket struct { -+ Xso_len uint32 -+ Xso_so uint32 -+ So_type int16 -+ So_options int16 -+ So_linger int16 -+ So_state int16 -+ So_pcb uint32 -+ Xso_protocol int32 -+ Xso_family int32 -+ So_qlen int16 -+ So_incqlen int16 -+ So_qlimit int16 -+ So_timeo int16 -+ So_error uint16 -+ So_pgid int32 -+ So_oobmark uint32 -+ So_rcv XSockbuf -+ So_snd XSockbuf -+ So_uid uint32 -+} -+ -+type XSocket64 struct { -+ Xso_len uint32 -+ _ [8]byte -+ So_type int16 -+ So_options int16 -+ So_linger int16 -+ So_state int16 -+ _ [8]byte -+ Xso_protocol int32 -+ Xso_family int32 -+ So_qlen int16 -+ So_incqlen int16 -+ So_qlimit int16 -+ So_timeo int16 -+ So_error uint16 -+ So_pgid int32 -+ So_oobmark uint32 -+ So_rcv XSockbuf -+ So_snd XSockbuf -+ So_uid uint32 -+} -+ -+type XSockbuf struct { -+ Cc uint32 -+ Hiwat uint32 -+ Mbcnt uint32 -+ Mbmax uint32 -+ Lowat int32 -+ Flags int16 -+ Timeo int16 -+} -+ -+type XVSockPgen struct { -+ Len uint32 -+ Count uint64 -+ Gen uint64 -+ Sogen uint64 -+} -+ - type _Socklen uint32 - -+type Xucred struct { -+ Version uint32 -+ Uid uint32 -+ Ngroups int16 -+ Groups [16]uint32 -+} -+ - type Linger struct { - Onoff int32 - Linger int32 -@@ -213,6 +319,12 @@ type IPMreq struct { - Interface [4]byte /* in_addr */ - } - -+type IPMreqn struct { -+ Multiaddr [4]byte /* in_addr */ -+ Address [4]byte /* in_addr */ -+ Ifindex int32 -+} -+ - type IPv6Mreq struct { - Multiaddr [16]byte /* in6_addr */ - Interface uint32 -@@ -221,10 +333,8 @@ type IPv6Mreq struct { - type Msghdr struct { - Name *byte - Namelen uint32 -- _ [4]byte - Iov *Iovec - Iovlen int32 -- _ [4]byte - Control *byte - Controllen uint32 - Flags int32 -@@ -256,21 +366,57 @@ type ICMPv6Filter struct { - Filt [8]uint32 - } - -+type TCPConnectionInfo struct { -+ State uint8 -+ Snd_wscale uint8 -+ Rcv_wscale uint8 -+ _ uint8 -+ Options uint32 -+ Flags uint32 -+ Rto uint32 -+ Maxseg uint32 -+ Snd_ssthresh uint32 -+ Snd_cwnd uint32 -+ Snd_wnd uint32 -+ Snd_sbbytes uint32 -+ Rcv_wnd uint32 -+ Rttcur uint32 -+ Srtt uint32 -+ Rttvar uint32 -+ Txpackets uint64 -+ Txbytes uint64 -+ Txretransmitbytes uint64 -+ Rxpackets uint64 -+ Rxbytes uint64 -+ Rxoutoforderbytes uint64 -+ Txretransmitpackets uint64 -+} -+ - const ( -- SizeofSockaddrInet4 = 0x10 -- SizeofSockaddrInet6 = 0x1c -- SizeofSockaddrAny = 0x6c -- SizeofSockaddrUnix = 0x6a -- SizeofSockaddrDatalink = 0x14 -- SizeofLinger = 0x8 -- SizeofIPMreq = 0x8 -- SizeofIPv6Mreq = 0x14 -- SizeofMsghdr = 0x30 -- SizeofCmsghdr = 0xc -- SizeofInet4Pktinfo = 0xc -- SizeofInet6Pktinfo = 0x14 -- SizeofIPv6MTUInfo = 0x20 -- SizeofICMPv6Filter = 0x20 -+ SizeofSockaddrInet4 = 0x10 -+ SizeofSockaddrInet6 = 0x1c -+ SizeofSockaddrAny = 0x6c -+ SizeofSockaddrUnix = 0x6a -+ SizeofSockaddrDatalink = 0x14 -+ SizeofSockaddrCtl = 0x20 -+ SizeofSockaddrVM = 0xc -+ SizeofXvsockpcb = 0xa8 -+ SizeofXSocket = 0x64 -+ SizeofXSockbuf = 0x18 -+ SizeofXVSockPgen = 0x20 -+ SizeofXucred = 0x4c -+ SizeofLinger = 0x8 -+ SizeofIovec = 0x10 -+ SizeofIPMreq = 0x8 -+ SizeofIPMreqn = 0xc -+ SizeofIPv6Mreq = 0x14 -+ SizeofMsghdr = 0x30 -+ SizeofCmsghdr = 0xc -+ SizeofInet4Pktinfo = 0xc -+ SizeofInet6Pktinfo = 0x14 -+ SizeofIPv6MTUInfo = 0x20 -+ SizeofICMPv6Filter = 0x20 -+ SizeofTCPConnectionInfo = 0x70 - ) - - const ( -@@ -309,7 +455,6 @@ type IfMsghdr struct { - Addrs int32 - Flags int32 - Index uint16 -- _ [2]byte - Data IfData - } - -@@ -352,7 +497,6 @@ type IfaMsghdr struct { - Addrs int32 - Flags int32 - Index uint16 -- _ [2]byte - Metric int32 - } - -@@ -373,7 +517,6 @@ type IfmaMsghdr2 struct { - Addrs int32 - Flags int32 - Index uint16 -- _ [2]byte - Refcount int32 - } - -@@ -382,7 +525,6 @@ type RtMsghdr struct { - Version uint8 - Type uint8 - Index uint16 -- _ [2]byte - Flags int32 - Addrs int32 - Pid int32 -@@ -404,7 +546,8 @@ type RtMetrics struct { - Rtt uint32 - Rttvar uint32 - Pksent uint32 -- Filler [4]uint32 -+ State uint32 -+ Filler [3]uint32 - } - - const ( -@@ -427,7 +570,6 @@ type BpfStat struct { - - type BpfProgram struct { - Len uint32 -- _ [4]byte - Insns *BpfInsn - } - -@@ -452,7 +594,6 @@ type Termios struct { - Cflag uint64 - Lflag uint64 - Cc [20]uint8 -- _ [4]byte - Ispeed uint64 - Ospeed uint64 - } -@@ -507,3 +648,148 @@ type Clockinfo struct { - Stathz int32 - Profhz int32 - } -+ -+type CtlInfo struct { -+ Id uint32 -+ Name [96]byte -+} -+ -+const SizeofKinfoProc = 0x288 -+ -+type Eproc struct { -+ Paddr uintptr -+ Sess uintptr -+ Pcred Pcred -+ Ucred Ucred -+ Vm Vmspace -+ Ppid int32 -+ Pgid int32 -+ Jobc int16 -+ Tdev int32 -+ Tpgid int32 -+ Tsess uintptr -+ Wmesg [8]byte -+ Xsize int32 -+ Xrssize int16 -+ Xccount int16 -+ Xswrss int16 -+ Flag int32 -+ Login [12]byte -+ Spare [4]int32 -+ _ [4]byte -+} -+ -+type ExternProc struct { -+ P_starttime Timeval -+ P_vmspace *Vmspace -+ P_sigacts uintptr -+ P_flag int32 -+ P_stat int8 -+ P_pid int32 -+ P_oppid int32 -+ P_dupfd int32 -+ User_stack *int8 -+ Exit_thread *byte -+ P_debugger int32 -+ Sigwait int32 -+ P_estcpu uint32 -+ P_cpticks int32 -+ P_pctcpu uint32 -+ P_wchan *byte -+ P_wmesg *int8 -+ P_swtime uint32 -+ P_slptime uint32 -+ P_realtimer Itimerval -+ P_rtime Timeval -+ P_uticks uint64 -+ P_sticks uint64 -+ P_iticks uint64 -+ P_traceflag int32 -+ P_tracep uintptr -+ P_siglist int32 -+ P_textvp uintptr -+ P_holdcnt int32 -+ P_sigmask uint32 -+ P_sigignore uint32 -+ P_sigcatch uint32 -+ P_priority uint8 -+ P_usrpri uint8 -+ P_nice int8 -+ P_comm [17]byte -+ P_pgrp uintptr -+ P_addr uintptr -+ P_xstat uint16 -+ P_acflag uint16 -+ P_ru *Rusage -+} -+ -+type Itimerval struct { -+ Interval Timeval -+ Value Timeval -+} -+ -+type KinfoProc struct { -+ Proc ExternProc -+ Eproc Eproc -+} -+ -+type Vmspace struct { -+ Dummy int32 -+ Dummy2 *int8 -+ Dummy3 [5]int32 -+ Dummy4 [3]*int8 -+} -+ -+type Pcred struct { -+ Pc_lock [72]int8 -+ Pc_ucred uintptr -+ P_ruid uint32 -+ P_svuid uint32 -+ P_rgid uint32 -+ P_svgid uint32 -+ P_refcnt int32 -+ _ [4]byte -+} -+ -+type Ucred struct { -+ Ref int32 -+ Uid uint32 -+ Ngroups int16 -+ Groups [16]uint32 -+} -+ -+type SysvIpcPerm struct { -+ Uid uint32 -+ Gid uint32 -+ Cuid uint32 -+ Cgid uint32 -+ Mode uint16 -+ _ uint16 -+ _ int32 -+} -+type SysvShmDesc struct { -+ Perm SysvIpcPerm -+ Segsz uint64 -+ Lpid int32 -+ Cpid int32 -+ Nattch uint16 -+ _ [34]byte -+} -+ -+const ( -+ IPC_CREAT = 0x200 -+ IPC_EXCL = 0x400 -+ IPC_NOWAIT = 0x800 -+ IPC_PRIVATE = 0x0 -+) -+ -+const ( -+ IPC_RMID = 0x0 -+ IPC_SET = 0x1 -+ IPC_STAT = 0x2 -+) -+ -+const ( -+ SHM_RDONLY = 0x1000 -+ SHM_RND = 0x2000 -+) -diff --git a/vendor/golang.org/x/sys/unix/ztypes_darwin_arm.go b/vendor/golang.org/x/sys/unix/ztypes_darwin_arm.go -deleted file mode 100644 -index 4fe4c9c..0000000 ---- a/vendor/golang.org/x/sys/unix/ztypes_darwin_arm.go -+++ /dev/null -@@ -1,500 +0,0 @@ --// NOTE: cgo can't generate struct Stat_t and struct Statfs_t yet --// Created by cgo -godefs - DO NOT EDIT --// cgo -godefs types_darwin.go -- --// +build arm,darwin -- --package unix -- --const ( -- SizeofPtr = 0x4 -- SizeofShort = 0x2 -- SizeofInt = 0x4 -- SizeofLong = 0x4 -- SizeofLongLong = 0x8 --) -- --type ( -- _C_short int16 -- _C_int int32 -- _C_long int32 -- _C_long_long int64 --) -- --type Timespec struct { -- Sec int32 -- Nsec int32 --} -- --type Timeval struct { -- Sec int32 -- Usec int32 --} -- --type Timeval32 [0]byte -- --type Rusage struct { -- Utime Timeval -- Stime Timeval -- Maxrss int32 -- Ixrss int32 -- Idrss int32 -- Isrss int32 -- Minflt int32 -- Majflt int32 -- Nswap int32 -- Inblock int32 -- Oublock int32 -- Msgsnd int32 -- Msgrcv int32 -- Nsignals int32 -- Nvcsw int32 -- Nivcsw int32 --} -- --type Rlimit struct { -- Cur uint64 -- Max uint64 --} -- --type _Gid_t uint32 -- --type Stat_t struct { -- Dev int32 -- Mode uint16 -- Nlink uint16 -- Ino uint64 -- Uid uint32 -- Gid uint32 -- Rdev int32 -- Atim Timespec -- Mtim Timespec -- Ctim Timespec -- Btim Timespec -- Size int64 -- Blocks int64 -- Blksize int32 -- Flags uint32 -- Gen uint32 -- Lspare int32 -- Qspare [2]int64 --} -- --type Statfs_t struct { -- Bsize uint32 -- Iosize int32 -- Blocks uint64 -- Bfree uint64 -- Bavail uint64 -- Files uint64 -- Ffree uint64 -- Fsid Fsid -- Owner uint32 -- Type uint32 -- Flags uint32 -- Fssubtype uint32 -- Fstypename [16]int8 -- Mntonname [1024]int8 -- Mntfromname [1024]int8 -- Reserved [8]uint32 --} -- --type Flock_t struct { -- Start int64 -- Len int64 -- Pid int32 -- Type int16 -- Whence int16 --} -- --type Fstore_t struct { -- Flags uint32 -- Posmode int32 -- Offset int64 -- Length int64 -- Bytesalloc int64 --} -- --type Radvisory_t struct { -- Offset int64 -- Count int32 --} -- --type Fbootstraptransfer_t struct { -- Offset int64 -- Length uint32 -- Buffer *byte --} -- --type Log2phys_t struct { -- Flags uint32 -- Contigbytes int64 -- Devoffset int64 --} -- --type Fsid struct { -- Val [2]int32 --} -- --type Dirent struct { -- Ino uint64 -- Seekoff uint64 -- Reclen uint16 -- Namlen uint16 -- Type uint8 -- Name [1024]int8 -- _ [3]byte --} -- --type RawSockaddrInet4 struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Addr [4]byte /* in_addr */ -- Zero [8]int8 --} -- --type RawSockaddrInet6 struct { -- Len uint8 -- Family uint8 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 --} -- --type RawSockaddrUnix struct { -- Len uint8 -- Family uint8 -- Path [104]int8 --} -- --type RawSockaddrDatalink struct { -- Len uint8 -- Family uint8 -- Index uint16 -- Type uint8 -- Nlen uint8 -- Alen uint8 -- Slen uint8 -- Data [12]int8 --} -- --type RawSockaddr struct { -- Len uint8 -- Family uint8 -- Data [14]int8 --} -- --type RawSockaddrAny struct { -- Addr RawSockaddr -- Pad [92]int8 --} -- --type _Socklen uint32 -- --type Linger struct { -- Onoff int32 -- Linger int32 --} -- --type Iovec struct { -- Base *byte -- Len uint32 --} -- --type IPMreq struct { -- Multiaddr [4]byte /* in_addr */ -- Interface [4]byte /* in_addr */ --} -- --type IPv6Mreq struct { -- Multiaddr [16]byte /* in6_addr */ -- Interface uint32 --} -- --type Msghdr struct { -- Name *byte -- Namelen uint32 -- Iov *Iovec -- Iovlen int32 -- Control *byte -- Controllen uint32 -- Flags int32 --} -- --type Cmsghdr struct { -- Len uint32 -- Level int32 -- Type int32 --} -- --type Inet4Pktinfo struct { -- Ifindex uint32 -- Spec_dst [4]byte /* in_addr */ -- Addr [4]byte /* in_addr */ --} -- --type Inet6Pktinfo struct { -- Addr [16]byte /* in6_addr */ -- Ifindex uint32 --} -- --type IPv6MTUInfo struct { -- Addr RawSockaddrInet6 -- Mtu uint32 --} -- --type ICMPv6Filter struct { -- Filt [8]uint32 --} -- --const ( -- SizeofSockaddrInet4 = 0x10 -- SizeofSockaddrInet6 = 0x1c -- SizeofSockaddrAny = 0x6c -- SizeofSockaddrUnix = 0x6a -- SizeofSockaddrDatalink = 0x14 -- SizeofLinger = 0x8 -- SizeofIPMreq = 0x8 -- SizeofIPv6Mreq = 0x14 -- SizeofMsghdr = 0x1c -- SizeofCmsghdr = 0xc -- SizeofInet4Pktinfo = 0xc -- SizeofInet6Pktinfo = 0x14 -- SizeofIPv6MTUInfo = 0x20 -- SizeofICMPv6Filter = 0x20 --) -- --const ( -- PTRACE_TRACEME = 0x0 -- PTRACE_CONT = 0x7 -- PTRACE_KILL = 0x8 --) -- --type Kevent_t struct { -- Ident uint32 -- Filter int16 -- Flags uint16 -- Fflags uint32 -- Data int32 -- Udata *byte --} -- --type FdSet struct { -- Bits [32]int32 --} -- --const ( -- SizeofIfMsghdr = 0x70 -- SizeofIfData = 0x60 -- SizeofIfaMsghdr = 0x14 -- SizeofIfmaMsghdr = 0x10 -- SizeofIfmaMsghdr2 = 0x14 -- SizeofRtMsghdr = 0x5c -- SizeofRtMetrics = 0x38 --) -- --type IfMsghdr struct { -- Msglen uint16 -- Version uint8 -- Type uint8 -- Addrs int32 -- Flags int32 -- Index uint16 -- _ [2]byte -- Data IfData --} -- --type IfData struct { -- Type uint8 -- Typelen uint8 -- Physical uint8 -- Addrlen uint8 -- Hdrlen uint8 -- Recvquota uint8 -- Xmitquota uint8 -- Unused1 uint8 -- Mtu uint32 -- Metric uint32 -- Baudrate uint32 -- Ipackets uint32 -- Ierrors uint32 -- Opackets uint32 -- Oerrors uint32 -- Collisions uint32 -- Ibytes uint32 -- Obytes uint32 -- Imcasts uint32 -- Omcasts uint32 -- Iqdrops uint32 -- Noproto uint32 -- Recvtiming uint32 -- Xmittiming uint32 -- Lastchange Timeval -- Unused2 uint32 -- Hwassist uint32 -- Reserved1 uint32 -- Reserved2 uint32 --} -- --type IfaMsghdr struct { -- Msglen uint16 -- Version uint8 -- Type uint8 -- Addrs int32 -- Flags int32 -- Index uint16 -- _ [2]byte -- Metric int32 --} -- --type IfmaMsghdr struct { -- Msglen uint16 -- Version uint8 -- Type uint8 -- Addrs int32 -- Flags int32 -- Index uint16 -- _ [2]byte --} -- --type IfmaMsghdr2 struct { -- Msglen uint16 -- Version uint8 -- Type uint8 -- Addrs int32 -- Flags int32 -- Index uint16 -- _ [2]byte -- Refcount int32 --} -- --type RtMsghdr struct { -- Msglen uint16 -- Version uint8 -- Type uint8 -- Index uint16 -- _ [2]byte -- Flags int32 -- Addrs int32 -- Pid int32 -- Seq int32 -- Errno int32 -- Use int32 -- Inits uint32 -- Rmx RtMetrics --} -- --type RtMetrics struct { -- Locks uint32 -- Mtu uint32 -- Hopcount uint32 -- Expire int32 -- Recvpipe uint32 -- Sendpipe uint32 -- Ssthresh uint32 -- Rtt uint32 -- Rttvar uint32 -- Pksent uint32 -- Filler [4]uint32 --} -- --const ( -- SizeofBpfVersion = 0x4 -- SizeofBpfStat = 0x8 -- SizeofBpfProgram = 0x8 -- SizeofBpfInsn = 0x8 -- SizeofBpfHdr = 0x14 --) -- --type BpfVersion struct { -- Major uint16 -- Minor uint16 --} -- --type BpfStat struct { -- Recv uint32 -- Drop uint32 --} -- --type BpfProgram struct { -- Len uint32 -- Insns *BpfInsn --} -- --type BpfInsn struct { -- Code uint16 -- Jt uint8 -- Jf uint8 -- K uint32 --} -- --type BpfHdr struct { -- Tstamp Timeval -- Caplen uint32 -- Datalen uint32 -- Hdrlen uint16 -- _ [2]byte --} -- --type Termios struct { -- Iflag uint32 -- Oflag uint32 -- Cflag uint32 -- Lflag uint32 -- Cc [20]uint8 -- Ispeed uint32 -- Ospeed uint32 --} -- --type Winsize struct { -- Row uint16 -- Col uint16 -- Xpixel uint16 -- Ypixel uint16 --} -- --const ( -- AT_FDCWD = -0x2 -- AT_REMOVEDIR = 0x80 -- AT_SYMLINK_FOLLOW = 0x40 -- AT_SYMLINK_NOFOLLOW = 0x20 --) -- --type PollFd struct { -- Fd int32 -- Events int16 -- Revents int16 --} -- --const ( -- POLLERR = 0x8 -- POLLHUP = 0x10 -- POLLIN = 0x1 -- POLLNVAL = 0x20 -- POLLOUT = 0x4 -- POLLPRI = 0x2 -- POLLRDBAND = 0x80 -- POLLRDNORM = 0x40 -- POLLWRBAND = 0x100 -- POLLWRNORM = 0x4 --) -- --type Utsname struct { -- Sysname [256]byte -- Nodename [256]byte -- Release [256]byte -- Version [256]byte -- Machine [256]byte --} -- --const SizeofClockinfo = 0x14 -- --type Clockinfo struct { -- Hz int32 -- Tick int32 -- Tickadj int32 -- Stathz int32 -- Profhz int32 --} -diff --git a/vendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go b/vendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go -index 21999e4..34aa775 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go -@@ -1,6 +1,7 @@ - // cgo -godefs types_darwin.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build arm64 && darwin - // +build arm64,darwin - - package unix -@@ -70,7 +71,6 @@ type Stat_t struct { - Uid uint32 - Gid uint32 - Rdev int32 -- _ [4]byte - Atim Timespec - Mtim Timespec - Ctim Timespec -@@ -97,10 +97,11 @@ type Statfs_t struct { - Type uint32 - Flags uint32 - Fssubtype uint32 -- Fstypename [16]int8 -- Mntonname [1024]int8 -- Mntfromname [1024]int8 -- Reserved [8]uint32 -+ Fstypename [16]byte -+ Mntonname [1024]byte -+ Mntfromname [1024]byte -+ Flags_ext uint32 -+ Reserved [7]uint32 - } - - type Flock_t struct { -@@ -133,8 +134,7 @@ type Fbootstraptransfer_t struct { - - type Log2phys_t struct { - Flags uint32 -- _ [8]byte -- _ [8]byte -+ _ [16]byte - } - - type Fsid struct { -@@ -151,6 +151,10 @@ type Dirent struct { - _ [3]byte - } - -+const ( -+ PathMax = 0x400 -+) -+ - type RawSockaddrInet4 struct { - Len uint8 - Family uint8 -@@ -196,8 +200,110 @@ type RawSockaddrAny struct { - Pad [92]int8 - } - -+type RawSockaddrCtl struct { -+ Sc_len uint8 -+ Sc_family uint8 -+ Ss_sysaddr uint16 -+ Sc_id uint32 -+ Sc_unit uint32 -+ Sc_reserved [5]uint32 -+} -+ -+type RawSockaddrVM struct { -+ Len uint8 -+ Family uint8 -+ Reserved1 uint16 -+ Port uint32 -+ Cid uint32 -+} -+ -+type XVSockPCB struct { -+ Xv_len uint32 -+ Xv_vsockpp uint64 -+ Xvp_local_cid uint32 -+ Xvp_local_port uint32 -+ Xvp_remote_cid uint32 -+ Xvp_remote_port uint32 -+ Xvp_rxcnt uint32 -+ Xvp_txcnt uint32 -+ Xvp_peer_rxhiwat uint32 -+ Xvp_peer_rxcnt uint32 -+ Xvp_last_pid int32 -+ Xvp_gencnt uint64 -+ Xv_socket XSocket -+ _ [4]byte -+} -+ -+type XSocket struct { -+ Xso_len uint32 -+ Xso_so uint32 -+ So_type int16 -+ So_options int16 -+ So_linger int16 -+ So_state int16 -+ So_pcb uint32 -+ Xso_protocol int32 -+ Xso_family int32 -+ So_qlen int16 -+ So_incqlen int16 -+ So_qlimit int16 -+ So_timeo int16 -+ So_error uint16 -+ So_pgid int32 -+ So_oobmark uint32 -+ So_rcv XSockbuf -+ So_snd XSockbuf -+ So_uid uint32 -+} -+ -+type XSocket64 struct { -+ Xso_len uint32 -+ _ [8]byte -+ So_type int16 -+ So_options int16 -+ So_linger int16 -+ So_state int16 -+ _ [8]byte -+ Xso_protocol int32 -+ Xso_family int32 -+ So_qlen int16 -+ So_incqlen int16 -+ So_qlimit int16 -+ So_timeo int16 -+ So_error uint16 -+ So_pgid int32 -+ So_oobmark uint32 -+ So_rcv XSockbuf -+ So_snd XSockbuf -+ So_uid uint32 -+} -+ -+type XSockbuf struct { -+ Cc uint32 -+ Hiwat uint32 -+ Mbcnt uint32 -+ Mbmax uint32 -+ Lowat int32 -+ Flags int16 -+ Timeo int16 -+} -+ -+type XVSockPgen struct { -+ Len uint32 -+ Count uint64 -+ Gen uint64 -+ Sogen uint64 -+} -+ - type _Socklen uint32 - -+type Xucred struct { -+ Version uint32 -+ Uid uint32 -+ Ngroups int16 -+ Groups [16]uint32 -+} -+ - type Linger struct { - Onoff int32 - Linger int32 -@@ -213,6 +319,12 @@ type IPMreq struct { - Interface [4]byte /* in_addr */ - } - -+type IPMreqn struct { -+ Multiaddr [4]byte /* in_addr */ -+ Address [4]byte /* in_addr */ -+ Ifindex int32 -+} -+ - type IPv6Mreq struct { - Multiaddr [16]byte /* in6_addr */ - Interface uint32 -@@ -221,10 +333,8 @@ type IPv6Mreq struct { - type Msghdr struct { - Name *byte - Namelen uint32 -- _ [4]byte - Iov *Iovec - Iovlen int32 -- _ [4]byte - Control *byte - Controllen uint32 - Flags int32 -@@ -256,21 +366,57 @@ type ICMPv6Filter struct { - Filt [8]uint32 - } - -+type TCPConnectionInfo struct { -+ State uint8 -+ Snd_wscale uint8 -+ Rcv_wscale uint8 -+ _ uint8 -+ Options uint32 -+ Flags uint32 -+ Rto uint32 -+ Maxseg uint32 -+ Snd_ssthresh uint32 -+ Snd_cwnd uint32 -+ Snd_wnd uint32 -+ Snd_sbbytes uint32 -+ Rcv_wnd uint32 -+ Rttcur uint32 -+ Srtt uint32 -+ Rttvar uint32 -+ Txpackets uint64 -+ Txbytes uint64 -+ Txretransmitbytes uint64 -+ Rxpackets uint64 -+ Rxbytes uint64 -+ Rxoutoforderbytes uint64 -+ Txretransmitpackets uint64 -+} -+ - const ( -- SizeofSockaddrInet4 = 0x10 -- SizeofSockaddrInet6 = 0x1c -- SizeofSockaddrAny = 0x6c -- SizeofSockaddrUnix = 0x6a -- SizeofSockaddrDatalink = 0x14 -- SizeofLinger = 0x8 -- SizeofIPMreq = 0x8 -- SizeofIPv6Mreq = 0x14 -- SizeofMsghdr = 0x30 -- SizeofCmsghdr = 0xc -- SizeofInet4Pktinfo = 0xc -- SizeofInet6Pktinfo = 0x14 -- SizeofIPv6MTUInfo = 0x20 -- SizeofICMPv6Filter = 0x20 -+ SizeofSockaddrInet4 = 0x10 -+ SizeofSockaddrInet6 = 0x1c -+ SizeofSockaddrAny = 0x6c -+ SizeofSockaddrUnix = 0x6a -+ SizeofSockaddrDatalink = 0x14 -+ SizeofSockaddrCtl = 0x20 -+ SizeofSockaddrVM = 0xc -+ SizeofXvsockpcb = 0xa8 -+ SizeofXSocket = 0x64 -+ SizeofXSockbuf = 0x18 -+ SizeofXVSockPgen = 0x20 -+ SizeofXucred = 0x4c -+ SizeofLinger = 0x8 -+ SizeofIovec = 0x10 -+ SizeofIPMreq = 0x8 -+ SizeofIPMreqn = 0xc -+ SizeofIPv6Mreq = 0x14 -+ SizeofMsghdr = 0x30 -+ SizeofCmsghdr = 0xc -+ SizeofInet4Pktinfo = 0xc -+ SizeofInet6Pktinfo = 0x14 -+ SizeofIPv6MTUInfo = 0x20 -+ SizeofICMPv6Filter = 0x20 -+ SizeofTCPConnectionInfo = 0x70 - ) - - const ( -@@ -309,7 +455,6 @@ type IfMsghdr struct { - Addrs int32 - Flags int32 - Index uint16 -- _ [2]byte - Data IfData - } - -@@ -352,7 +497,6 @@ type IfaMsghdr struct { - Addrs int32 - Flags int32 - Index uint16 -- _ [2]byte - Metric int32 - } - -@@ -373,7 +517,6 @@ type IfmaMsghdr2 struct { - Addrs int32 - Flags int32 - Index uint16 -- _ [2]byte - Refcount int32 - } - -@@ -382,7 +525,6 @@ type RtMsghdr struct { - Version uint8 - Type uint8 - Index uint16 -- _ [2]byte - Flags int32 - Addrs int32 - Pid int32 -@@ -404,7 +546,8 @@ type RtMetrics struct { - Rtt uint32 - Rttvar uint32 - Pksent uint32 -- Filler [4]uint32 -+ State uint32 -+ Filler [3]uint32 - } - - const ( -@@ -427,7 +570,6 @@ type BpfStat struct { - - type BpfProgram struct { - Len uint32 -- _ [4]byte - Insns *BpfInsn - } - -@@ -452,7 +594,6 @@ type Termios struct { - Cflag uint64 - Lflag uint64 - Cc [20]uint8 -- _ [4]byte - Ispeed uint64 - Ospeed uint64 - } -@@ -507,3 +648,148 @@ type Clockinfo struct { - Stathz int32 - Profhz int32 - } -+ -+type CtlInfo struct { -+ Id uint32 -+ Name [96]byte -+} -+ -+const SizeofKinfoProc = 0x288 -+ -+type Eproc struct { -+ Paddr uintptr -+ Sess uintptr -+ Pcred Pcred -+ Ucred Ucred -+ Vm Vmspace -+ Ppid int32 -+ Pgid int32 -+ Jobc int16 -+ Tdev int32 -+ Tpgid int32 -+ Tsess uintptr -+ Wmesg [8]byte -+ Xsize int32 -+ Xrssize int16 -+ Xccount int16 -+ Xswrss int16 -+ Flag int32 -+ Login [12]byte -+ Spare [4]int32 -+ _ [4]byte -+} -+ -+type ExternProc struct { -+ P_starttime Timeval -+ P_vmspace *Vmspace -+ P_sigacts uintptr -+ P_flag int32 -+ P_stat int8 -+ P_pid int32 -+ P_oppid int32 -+ P_dupfd int32 -+ User_stack *int8 -+ Exit_thread *byte -+ P_debugger int32 -+ Sigwait int32 -+ P_estcpu uint32 -+ P_cpticks int32 -+ P_pctcpu uint32 -+ P_wchan *byte -+ P_wmesg *int8 -+ P_swtime uint32 -+ P_slptime uint32 -+ P_realtimer Itimerval -+ P_rtime Timeval -+ P_uticks uint64 -+ P_sticks uint64 -+ P_iticks uint64 -+ P_traceflag int32 -+ P_tracep uintptr -+ P_siglist int32 -+ P_textvp uintptr -+ P_holdcnt int32 -+ P_sigmask uint32 -+ P_sigignore uint32 -+ P_sigcatch uint32 -+ P_priority uint8 -+ P_usrpri uint8 -+ P_nice int8 -+ P_comm [17]byte -+ P_pgrp uintptr -+ P_addr uintptr -+ P_xstat uint16 -+ P_acflag uint16 -+ P_ru *Rusage -+} -+ -+type Itimerval struct { -+ Interval Timeval -+ Value Timeval -+} -+ -+type KinfoProc struct { -+ Proc ExternProc -+ Eproc Eproc -+} -+ -+type Vmspace struct { -+ Dummy int32 -+ Dummy2 *int8 -+ Dummy3 [5]int32 -+ Dummy4 [3]*int8 -+} -+ -+type Pcred struct { -+ Pc_lock [72]int8 -+ Pc_ucred uintptr -+ P_ruid uint32 -+ P_svuid uint32 -+ P_rgid uint32 -+ P_svgid uint32 -+ P_refcnt int32 -+ _ [4]byte -+} -+ -+type Ucred struct { -+ Ref int32 -+ Uid uint32 -+ Ngroups int16 -+ Groups [16]uint32 -+} -+ -+type SysvIpcPerm struct { -+ Uid uint32 -+ Gid uint32 -+ Cuid uint32 -+ Cgid uint32 -+ Mode uint16 -+ _ uint16 -+ _ int32 -+} -+type SysvShmDesc struct { -+ Perm SysvIpcPerm -+ Segsz uint64 -+ Lpid int32 -+ Cpid int32 -+ Nattch uint16 -+ _ [34]byte -+} -+ -+const ( -+ IPC_CREAT = 0x200 -+ IPC_EXCL = 0x400 -+ IPC_NOWAIT = 0x800 -+ IPC_PRIVATE = 0x0 -+) -+ -+const ( -+ IPC_RMID = 0x0 -+ IPC_SET = 0x1 -+ IPC_STAT = 0x2 -+) -+ -+const ( -+ SHM_RDONLY = 0x1000 -+ SHM_RND = 0x2000 -+) -diff --git a/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go -index 71ea1d6..d0ba8e9 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go -@@ -1,6 +1,7 @@ - // cgo -godefs types_dragonfly.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build amd64 && dragonfly - // +build amd64,dragonfly - - package unix -@@ -70,11 +71,11 @@ type Stat_t struct { - Ctim Timespec - Size int64 - Blocks int64 -- Blksize uint32 -+ _ uint32 - Flags uint32 - Gen uint32 - Lspare int32 -- Qspare1 int64 -+ Blksize int64 - Qspare2 int64 - } - -@@ -91,17 +92,15 @@ type Statfs_t struct { - Owner uint32 - Type int32 - Flags int32 -- _ [4]byte - Syncwrites int64 - Asyncwrites int64 -- Fstypename [16]int8 -- Mntonname [80]int8 -+ Fstypename [16]byte -+ Mntonname [80]byte - Syncreads int64 - Asyncreads int64 - Spares1 int16 -- Mntfromname [80]int8 -+ Mntfromname [80]byte - Spares2 int16 -- _ [4]byte - Spare [2]int64 - } - -@@ -202,10 +201,8 @@ type IPv6Mreq struct { - type Msghdr struct { - Name *byte - Namelen uint32 -- _ [4]byte - Iov *Iovec - Iovlen int32 -- _ [4]byte - Control *byte - Controllen uint32 - Flags int32 -@@ -238,6 +235,7 @@ const ( - SizeofSockaddrUnix = 0x6a - SizeofSockaddrDatalink = 0x36 - SizeofLinger = 0x8 -+ SizeofIovec = 0x10 - SizeofIPMreq = 0x8 - SizeofIPv6Mreq = 0x14 - SizeofMsghdr = 0x30 -@@ -269,7 +267,7 @@ type FdSet struct { - const ( - SizeofIfMsghdr = 0xb0 - SizeofIfData = 0xa0 -- SizeofIfaMsghdr = 0x14 -+ SizeofIfaMsghdr = 0x18 - SizeofIfmaMsghdr = 0x10 - SizeofIfAnnounceMsghdr = 0x18 - SizeofRtMsghdr = 0x98 -@@ -280,10 +278,9 @@ type IfMsghdr struct { - Msglen uint16 - Version uint8 - Type uint8 -- Addrs int32 -- Flags int32 - Index uint16 -- _ [2]byte -+ Flags int32 -+ Addrs int32 - Data IfData - } - -@@ -294,7 +291,6 @@ type IfData struct { - Hdrlen uint8 - Recvquota uint8 - Xmitquota uint8 -- _ [2]byte - Mtu uint64 - Metric uint64 - Link_state uint64 -@@ -316,24 +312,23 @@ type IfData struct { - } - - type IfaMsghdr struct { -- Msglen uint16 -- Version uint8 -- Type uint8 -- Addrs int32 -- Flags int32 -- Index uint16 -- _ [2]byte -- Metric int32 -+ Msglen uint16 -+ Version uint8 -+ Type uint8 -+ Index uint16 -+ Flags int32 -+ Addrs int32 -+ Addrflags int32 -+ Metric int32 - } - - type IfmaMsghdr struct { - Msglen uint16 - Version uint8 - Type uint8 -- Addrs int32 -- Flags int32 - Index uint16 -- _ [2]byte -+ Flags int32 -+ Addrs int32 - } - - type IfAnnounceMsghdr struct { -@@ -350,7 +345,6 @@ type RtMsghdr struct { - Version uint8 - Type uint8 - Index uint16 -- _ [2]byte - Flags int32 - Addrs int32 - Pid int32 -@@ -374,7 +368,6 @@ type RtMetrics struct { - Hopcount uint64 - Mssopt uint16 - Pad uint16 -- _ [4]byte - Msl uint64 - Iwmaxsegs uint64 - Iwcapsegs uint64 -@@ -400,7 +393,6 @@ type BpfStat struct { - - type BpfProgram struct { - Len uint32 -- _ [4]byte - Insns *BpfInsn - } - -@@ -439,6 +431,9 @@ type Winsize struct { - const ( - AT_FDCWD = 0xfffafdcd - AT_SYMLINK_NOFOLLOW = 0x1 -+ AT_REMOVEDIR = 0x2 -+ AT_EACCESS = 0x4 -+ AT_SYMLINK_FOLLOW = 0x8 - ) - - type PollFd struct { -diff --git a/vendor/golang.org/x/sys/unix/ztypes_freebsd_386.go b/vendor/golang.org/x/sys/unix/ztypes_freebsd_386.go -index 2a3ec61..d9c78cd 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_freebsd_386.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_freebsd_386.go -@@ -1,6 +1,7 @@ - // cgo -godefs types_freebsd.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build 386 && freebsd - // +build 386,freebsd - - package unix -@@ -30,6 +31,8 @@ type Timeval struct { - Usec int32 - } - -+type Time_t int32 -+ - type Rusage struct { - Utime Timeval - Stime Timeval -@@ -87,27 +90,6 @@ type Stat_t struct { - Spare [10]uint64 - } - --type stat_freebsd11_t struct { -- Dev uint32 -- Ino uint32 -- Mode uint16 -- Nlink uint16 -- Uid uint32 -- Gid uint32 -- Rdev uint32 -- Atim Timespec -- Mtim Timespec -- Ctim Timespec -- Size int64 -- Blocks int64 -- Blksize int32 -- Flags uint32 -- Gen uint32 -- Lspare int32 -- Btim Timespec -- _ [8]byte --} -- - type Statfs_t struct { - Version uint32 - Type uint32 -@@ -133,31 +115,6 @@ type Statfs_t struct { - Mntonname [1024]byte - } - --type statfs_freebsd11_t struct { -- Version uint32 -- Type uint32 -- Flags uint64 -- Bsize uint64 -- Iosize uint64 -- Blocks uint64 -- Bfree uint64 -- Bavail int64 -- Files uint64 -- Ffree int64 -- Syncwrites uint64 -- Asyncwrites uint64 -- Syncreads uint64 -- Asyncreads uint64 -- Spare [10]uint64 -- Namemax uint32 -- Owner uint32 -- Fsid Fsid -- Charspare [80]int8 -- Fstypename [16]byte -- Mntfromname [88]byte -- Mntonname [88]byte --} -- - type Flock_t struct { - Start int64 - Len int64 -@@ -178,14 +135,6 @@ type Dirent struct { - Name [256]int8 - } - --type dirent_freebsd11 struct { -- Fileno uint32 -- Reclen uint16 -- Type uint8 -- Namlen uint8 -- Name [256]int8 --} -- - type Fsid struct { - Val [2]int32 - } -@@ -250,6 +199,14 @@ type RawSockaddrAny struct { - - type _Socklen uint32 - -+type Xucred struct { -+ Version uint32 -+ Uid uint32 -+ Ngroups int16 -+ Groups [16]uint32 -+ _ *byte -+} -+ - type Linger struct { - Onoff int32 - Linger int32 -@@ -312,7 +269,9 @@ const ( - SizeofSockaddrAny = 0x6c - SizeofSockaddrUnix = 0x6a - SizeofSockaddrDatalink = 0x36 -+ SizeofXucred = 0x50 - SizeofLinger = 0x8 -+ SizeofIovec = 0x8 - SizeofIPMreq = 0x8 - SizeofIPMreqn = 0xc - SizeofIPv6Mreq = 0x14 -@@ -324,41 +283,9 @@ const ( - ) - - const ( -- PTRACE_ATTACH = 0xa -- PTRACE_CONT = 0x7 -- PTRACE_DETACH = 0xb -- PTRACE_GETFPREGS = 0x23 -- PTRACE_GETFSBASE = 0x47 -- PTRACE_GETLWPLIST = 0xf -- PTRACE_GETNUMLWPS = 0xe -- PTRACE_GETREGS = 0x21 -- PTRACE_GETXSTATE = 0x45 -- PTRACE_IO = 0xc -- PTRACE_KILL = 0x8 -- PTRACE_LWPEVENTS = 0x18 -- PTRACE_LWPINFO = 0xd -- PTRACE_SETFPREGS = 0x24 -- PTRACE_SETREGS = 0x22 -- PTRACE_SINGLESTEP = 0x9 -- PTRACE_TRACEME = 0x0 --) -- --const ( -- PIOD_READ_D = 0x1 -- PIOD_WRITE_D = 0x2 -- PIOD_READ_I = 0x3 -- PIOD_WRITE_I = 0x4 --) -- --const ( -- PL_FLAG_BORN = 0x100 -- PL_FLAG_EXITED = 0x200 -- PL_FLAG_SI = 0x20 --) -- --const ( -- TRAP_BRKPT = 0x1 -- TRAP_TRACE = 0x2 -+ PTRACE_TRACEME = 0x0 -+ PTRACE_CONT = 0x7 -+ PTRACE_KILL = 0x8 - ) - - type PtraceLwpInfoStruct struct { -@@ -367,7 +294,7 @@ type PtraceLwpInfoStruct struct { - Flags int32 - Sigmask Sigset_t - Siglist Sigset_t -- Siginfo __Siginfo -+ Siginfo __PtraceSiginfo - Tdname [20]int8 - Child_pid int32 - Syscall_code uint32 -@@ -385,6 +312,17 @@ type __Siginfo struct { - Value [4]byte - _ [32]byte - } -+type __PtraceSiginfo struct { -+ Signo int32 -+ Errno int32 -+ Code int32 -+ Pid int32 -+ Uid uint32 -+ Status int32 -+ Addr uintptr -+ Value [4]byte -+ _ [32]byte -+} - - type Sigset_t struct { - Val [4]uint32 -@@ -419,10 +357,12 @@ type FpReg struct { - Pad [64]uint8 - } - -+type FpExtendedPrecision struct{} -+ - type PtraceIoDesc struct { - Op int32 -- Offs *byte -- Addr *byte -+ Offs uintptr -+ Addr uintptr - Len uint32 - } - -@@ -431,8 +371,9 @@ type Kevent_t struct { - Filter int16 - Flags uint16 - Fflags uint32 -- Data int32 -+ Data int64 - Udata *byte -+ Ext [4]uint64 - } - - type FdSet struct { -@@ -661,9 +602,10 @@ type Winsize struct { - - const ( - AT_FDCWD = -0x64 -- AT_REMOVEDIR = 0x800 -- AT_SYMLINK_FOLLOW = 0x400 -+ AT_EACCESS = 0x100 - AT_SYMLINK_NOFOLLOW = 0x200 -+ AT_SYMLINK_FOLLOW = 0x400 -+ AT_REMOVEDIR = 0x800 - ) - - type PollFd struct { -diff --git a/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go -index e11e954..26991b1 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go -@@ -1,6 +1,7 @@ - // cgo -godefs types_freebsd.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build amd64 && freebsd - // +build amd64,freebsd - - package unix -@@ -30,6 +31,8 @@ type Timeval struct { - Usec int64 - } - -+type Time_t int64 -+ - type Rusage struct { - Utime Timeval - Stime Timeval -@@ -83,26 +86,6 @@ type Stat_t struct { - Spare [10]uint64 - } - --type stat_freebsd11_t struct { -- Dev uint32 -- Ino uint32 -- Mode uint16 -- Nlink uint16 -- Uid uint32 -- Gid uint32 -- Rdev uint32 -- Atim Timespec -- Mtim Timespec -- Ctim Timespec -- Size int64 -- Blocks int64 -- Blksize int32 -- Flags uint32 -- Gen uint32 -- Lspare int32 -- Btim Timespec --} -- - type Statfs_t struct { - Version uint32 - Type uint32 -@@ -128,31 +111,6 @@ type Statfs_t struct { - Mntonname [1024]byte - } - --type statfs_freebsd11_t struct { -- Version uint32 -- Type uint32 -- Flags uint64 -- Bsize uint64 -- Iosize uint64 -- Blocks uint64 -- Bfree uint64 -- Bavail int64 -- Files uint64 -- Ffree int64 -- Syncwrites uint64 -- Asyncwrites uint64 -- Syncreads uint64 -- Asyncreads uint64 -- Spare [10]uint64 -- Namemax uint32 -- Owner uint32 -- Fsid Fsid -- Charspare [80]int8 -- Fstypename [16]byte -- Mntfromname [88]byte -- Mntonname [88]byte --} -- - type Flock_t struct { - Start int64 - Len int64 -@@ -174,14 +132,6 @@ type Dirent struct { - Name [256]int8 - } - --type dirent_freebsd11 struct { -- Fileno uint32 -- Reclen uint16 -- Type uint8 -- Namlen uint8 -- Name [256]int8 --} -- - type Fsid struct { - Val [2]int32 - } -@@ -246,6 +196,14 @@ type RawSockaddrAny struct { - - type _Socklen uint32 - -+type Xucred struct { -+ Version uint32 -+ Uid uint32 -+ Ngroups int16 -+ Groups [16]uint32 -+ _ *byte -+} -+ - type Linger struct { - Onoff int32 - Linger int32 -@@ -308,7 +266,9 @@ const ( - SizeofSockaddrAny = 0x6c - SizeofSockaddrUnix = 0x6a - SizeofSockaddrDatalink = 0x36 -+ SizeofXucred = 0x58 - SizeofLinger = 0x8 -+ SizeofIovec = 0x10 - SizeofIPMreq = 0x8 - SizeofIPMreqn = 0xc - SizeofIPv6Mreq = 0x14 -@@ -320,41 +280,9 @@ const ( - ) - - const ( -- PTRACE_ATTACH = 0xa -- PTRACE_CONT = 0x7 -- PTRACE_DETACH = 0xb -- PTRACE_GETFPREGS = 0x23 -- PTRACE_GETFSBASE = 0x47 -- PTRACE_GETLWPLIST = 0xf -- PTRACE_GETNUMLWPS = 0xe -- PTRACE_GETREGS = 0x21 -- PTRACE_GETXSTATE = 0x45 -- PTRACE_IO = 0xc -- PTRACE_KILL = 0x8 -- PTRACE_LWPEVENTS = 0x18 -- PTRACE_LWPINFO = 0xd -- PTRACE_SETFPREGS = 0x24 -- PTRACE_SETREGS = 0x22 -- PTRACE_SINGLESTEP = 0x9 -- PTRACE_TRACEME = 0x0 --) -- --const ( -- PIOD_READ_D = 0x1 -- PIOD_WRITE_D = 0x2 -- PIOD_READ_I = 0x3 -- PIOD_WRITE_I = 0x4 --) -- --const ( -- PL_FLAG_BORN = 0x100 -- PL_FLAG_EXITED = 0x200 -- PL_FLAG_SI = 0x20 --) -- --const ( -- TRAP_BRKPT = 0x1 -- TRAP_TRACE = 0x2 -+ PTRACE_TRACEME = 0x0 -+ PTRACE_CONT = 0x7 -+ PTRACE_KILL = 0x8 - ) - - type PtraceLwpInfoStruct struct { -@@ -363,7 +291,7 @@ type PtraceLwpInfoStruct struct { - Flags int32 - Sigmask Sigset_t - Siglist Sigset_t -- Siginfo __Siginfo -+ Siginfo __PtraceSiginfo - Tdname [20]int8 - Child_pid int32 - Syscall_code uint32 -@@ -382,6 +310,18 @@ type __Siginfo struct { - _ [40]byte - } - -+type __PtraceSiginfo struct { -+ Signo int32 -+ Errno int32 -+ Code int32 -+ Pid int32 -+ Uid uint32 -+ Status int32 -+ Addr uintptr -+ Value [8]byte -+ _ [40]byte -+} -+ - type Sigset_t struct { - Val [4]uint32 - } -@@ -422,10 +362,12 @@ type FpReg struct { - Spare [12]uint64 - } - -+type FpExtendedPrecision struct{} -+ - type PtraceIoDesc struct { - Op int32 -- Offs *byte -- Addr *byte -+ Offs uintptr -+ Addr uintptr - Len uint64 - } - -@@ -436,6 +378,7 @@ type Kevent_t struct { - Fflags uint32 - Data int64 - Udata *byte -+ Ext [4]uint64 - } - - type FdSet struct { -@@ -664,9 +607,10 @@ type Winsize struct { - - const ( - AT_FDCWD = -0x64 -- AT_REMOVEDIR = 0x800 -- AT_SYMLINK_FOLLOW = 0x400 -+ AT_EACCESS = 0x100 - AT_SYMLINK_NOFOLLOW = 0x200 -+ AT_SYMLINK_FOLLOW = 0x400 -+ AT_REMOVEDIR = 0x800 - ) - - type PollFd struct { -diff --git a/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go b/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go -index 6f79227..f8324e7 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go -@@ -1,6 +1,7 @@ - // cgo -godefs -- -fsigned-char types_freebsd.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build arm && freebsd - // +build arm,freebsd - - package unix -@@ -32,6 +33,8 @@ type Timeval struct { - _ [4]byte - } - -+type Time_t int64 -+ - type Rusage struct { - Utime Timeval - Stime Timeval -@@ -85,26 +88,6 @@ type Stat_t struct { - Spare [10]uint64 - } - --type stat_freebsd11_t struct { -- Dev uint32 -- Ino uint32 -- Mode uint16 -- Nlink uint16 -- Uid uint32 -- Gid uint32 -- Rdev uint32 -- Atim Timespec -- Mtim Timespec -- Ctim Timespec -- Size int64 -- Blocks int64 -- Blksize int32 -- Flags uint32 -- Gen uint32 -- Lspare int32 -- Btim Timespec --} -- - type Statfs_t struct { - Version uint32 - Type uint32 -@@ -125,34 +108,9 @@ type Statfs_t struct { - Owner uint32 - Fsid Fsid - Charspare [80]int8 -- Fstypename [16]int8 -- Mntfromname [1024]int8 -- Mntonname [1024]int8 --} -- --type statfs_freebsd11_t struct { -- Version uint32 -- Type uint32 -- Flags uint64 -- Bsize uint64 -- Iosize uint64 -- Blocks uint64 -- Bfree uint64 -- Bavail int64 -- Files uint64 -- Ffree int64 -- Syncwrites uint64 -- Asyncwrites uint64 -- Syncreads uint64 -- Asyncreads uint64 -- Spare [10]uint64 -- Namemax uint32 -- Owner uint32 -- Fsid Fsid -- Charspare [80]int8 -- Fstypename [16]int8 -- Mntfromname [88]int8 -- Mntonname [88]int8 -+ Fstypename [16]byte -+ Mntfromname [1024]byte -+ Mntonname [1024]byte - } - - type Flock_t struct { -@@ -176,14 +134,6 @@ type Dirent struct { - Name [256]int8 - } - --type dirent_freebsd11 struct { -- Fileno uint32 -- Reclen uint16 -- Type uint8 -- Namlen uint8 -- Name [256]int8 --} -- - type Fsid struct { - Val [2]int32 - } -@@ -248,6 +198,14 @@ type RawSockaddrAny struct { - - type _Socklen uint32 - -+type Xucred struct { -+ Version uint32 -+ Uid uint32 -+ Ngroups int16 -+ Groups [16]uint32 -+ _ *byte -+} -+ - type Linger struct { - Onoff int32 - Linger int32 -@@ -310,7 +268,9 @@ const ( - SizeofSockaddrAny = 0x6c - SizeofSockaddrUnix = 0x6a - SizeofSockaddrDatalink = 0x36 -+ SizeofXucred = 0x50 - SizeofLinger = 0x8 -+ SizeofIovec = 0x8 - SizeofIPMreq = 0x8 - SizeofIPMreqn = 0xc - SizeofIPv6Mreq = 0x14 -@@ -322,41 +282,9 @@ const ( - ) - - const ( -- PTRACE_ATTACH = 0xa -- PTRACE_CONT = 0x7 -- PTRACE_DETACH = 0xb -- PTRACE_GETFPREGS = 0x23 -- PTRACE_GETFSBASE = 0x47 -- PTRACE_GETLWPLIST = 0xf -- PTRACE_GETNUMLWPS = 0xe -- PTRACE_GETREGS = 0x21 -- PTRACE_GETXSTATE = 0x45 -- PTRACE_IO = 0xc -- PTRACE_KILL = 0x8 -- PTRACE_LWPEVENTS = 0x18 -- PTRACE_LWPINFO = 0xd -- PTRACE_SETFPREGS = 0x24 -- PTRACE_SETREGS = 0x22 -- PTRACE_SINGLESTEP = 0x9 -- PTRACE_TRACEME = 0x0 --) -- --const ( -- PIOD_READ_D = 0x1 -- PIOD_WRITE_D = 0x2 -- PIOD_READ_I = 0x3 -- PIOD_WRITE_I = 0x4 --) -- --const ( -- PL_FLAG_BORN = 0x100 -- PL_FLAG_EXITED = 0x200 -- PL_FLAG_SI = 0x20 --) -- --const ( -- TRAP_BRKPT = 0x1 -- TRAP_TRACE = 0x2 -+ PTRACE_TRACEME = 0x0 -+ PTRACE_CONT = 0x7 -+ PTRACE_KILL = 0x8 - ) - - type PtraceLwpInfoStruct struct { -@@ -365,7 +293,7 @@ type PtraceLwpInfoStruct struct { - Flags int32 - Sigmask Sigset_t - Siglist Sigset_t -- Siginfo __Siginfo -+ Siginfo __PtraceSiginfo - Tdname [20]int8 - Child_pid int32 - Syscall_code uint32 -@@ -373,15 +301,27 @@ type PtraceLwpInfoStruct struct { - } - - type __Siginfo struct { -- Signo int32 -- Errno int32 -- Code int32 -- Pid int32 -- Uid uint32 -- Status int32 -- Addr *byte -- Value [4]byte -- X_reason [32]byte -+ Signo int32 -+ Errno int32 -+ Code int32 -+ Pid int32 -+ Uid uint32 -+ Status int32 -+ Addr *byte -+ Value [4]byte -+ _ [32]byte -+} -+ -+type __PtraceSiginfo struct { -+ Signo int32 -+ Errno int32 -+ Code int32 -+ Pid int32 -+ Uid uint32 -+ Status int32 -+ Addr uintptr -+ Value [4]byte -+ _ [32]byte - } - - type Sigset_t struct { -@@ -389,22 +329,28 @@ type Sigset_t struct { - } - - type Reg struct { -- R [13]uint32 -- R_sp uint32 -- R_lr uint32 -- R_pc uint32 -- R_cpsr uint32 -+ R [13]uint32 -+ Sp uint32 -+ Lr uint32 -+ Pc uint32 -+ Cpsr uint32 - } - - type FpReg struct { -- Fpr_fpsr uint32 -- Fpr [8][3]uint32 -+ Fpsr uint32 -+ Fpr [8]FpExtendedPrecision -+} -+ -+type FpExtendedPrecision struct { -+ Exponent uint32 -+ Mantissa_hi uint32 -+ Mantissa_lo uint32 - } - - type PtraceIoDesc struct { - Op int32 -- Offs *byte -- Addr *byte -+ Offs uintptr -+ Addr uintptr - Len uint32 - } - -@@ -413,8 +359,11 @@ type Kevent_t struct { - Filter int16 - Flags uint16 - Fflags uint32 -- Data int32 -+ _ [4]byte -+ Data int64 - Udata *byte -+ _ [4]byte -+ Ext [4]uint64 - } - - type FdSet struct { -@@ -440,7 +389,7 @@ type ifMsghdr struct { - Addrs int32 - Flags int32 - Index uint16 -- _ [2]byte -+ _ uint16 - Data ifData - } - -@@ -451,7 +400,6 @@ type IfMsghdr struct { - Addrs int32 - Flags int32 - Index uint16 -- _ [2]byte - Data IfData - } - -@@ -519,7 +467,7 @@ type IfaMsghdr struct { - Addrs int32 - Flags int32 - Index uint16 -- _ [2]byte -+ _ uint16 - Metric int32 - } - -@@ -530,7 +478,7 @@ type IfmaMsghdr struct { - Addrs int32 - Flags int32 - Index uint16 -- _ [2]byte -+ _ uint16 - } - - type IfAnnounceMsghdr struct { -@@ -547,7 +495,7 @@ type RtMsghdr struct { - Version uint8 - Type uint8 - Index uint16 -- _ [2]byte -+ _ uint16 - Flags int32 - Addrs int32 - Pid int32 -@@ -645,9 +593,10 @@ type Winsize struct { - - const ( - AT_FDCWD = -0x64 -- AT_REMOVEDIR = 0x800 -- AT_SYMLINK_FOLLOW = 0x400 -+ AT_EACCESS = 0x100 - AT_SYMLINK_NOFOLLOW = 0x200 -+ AT_SYMLINK_FOLLOW = 0x400 -+ AT_REMOVEDIR = 0x800 - ) - - type PollFd struct { -diff --git a/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm64.go b/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm64.go -index c6fe1d0..4220411 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm64.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_freebsd_arm64.go -@@ -1,6 +1,7 @@ - // cgo -godefs -- -fsigned-char types_freebsd.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build arm64 && freebsd - // +build arm64,freebsd - - package unix -@@ -30,6 +31,8 @@ type Timeval struct { - Usec int64 - } - -+type Time_t int64 -+ - type Rusage struct { - Utime Timeval - Stime Timeval -@@ -83,26 +86,6 @@ type Stat_t struct { - Spare [10]uint64 - } - --type stat_freebsd11_t struct { -- Dev uint32 -- Ino uint32 -- Mode uint16 -- Nlink uint16 -- Uid uint32 -- Gid uint32 -- Rdev uint32 -- Atim Timespec -- Mtim Timespec -- Ctim Timespec -- Size int64 -- Blocks int64 -- Blksize int32 -- Flags uint32 -- Gen uint32 -- Lspare int32 -- Btim Timespec --} -- - type Statfs_t struct { - Version uint32 - Type uint32 -@@ -128,31 +111,6 @@ type Statfs_t struct { - Mntonname [1024]byte - } - --type statfs_freebsd11_t struct { -- Version uint32 -- Type uint32 -- Flags uint64 -- Bsize uint64 -- Iosize uint64 -- Blocks uint64 -- Bfree uint64 -- Bavail int64 -- Files uint64 -- Ffree int64 -- Syncwrites uint64 -- Asyncwrites uint64 -- Syncreads uint64 -- Asyncreads uint64 -- Spare [10]uint64 -- Namemax uint32 -- Owner uint32 -- Fsid Fsid -- Charspare [80]int8 -- Fstypename [16]byte -- Mntfromname [88]byte -- Mntonname [88]byte --} -- - type Flock_t struct { - Start int64 - Len int64 -@@ -174,14 +132,6 @@ type Dirent struct { - Name [256]int8 - } - --type dirent_freebsd11 struct { -- Fileno uint32 -- Reclen uint16 -- Type uint8 -- Namlen uint8 -- Name [256]int8 --} -- - type Fsid struct { - Val [2]int32 - } -@@ -246,6 +196,14 @@ type RawSockaddrAny struct { - - type _Socklen uint32 - -+type Xucred struct { -+ Version uint32 -+ Uid uint32 -+ Ngroups int16 -+ Groups [16]uint32 -+ _ *byte -+} -+ - type Linger struct { - Onoff int32 - Linger int32 -@@ -308,7 +266,9 @@ const ( - SizeofSockaddrAny = 0x6c - SizeofSockaddrUnix = 0x6a - SizeofSockaddrDatalink = 0x36 -+ SizeofXucred = 0x58 - SizeofLinger = 0x8 -+ SizeofIovec = 0x10 - SizeofIPMreq = 0x8 - SizeofIPMreqn = 0xc - SizeofIPv6Mreq = 0x14 -@@ -320,39 +280,9 @@ const ( - ) - - const ( -- PTRACE_ATTACH = 0xa -- PTRACE_CONT = 0x7 -- PTRACE_DETACH = 0xb -- PTRACE_GETFPREGS = 0x23 -- PTRACE_GETLWPLIST = 0xf -- PTRACE_GETNUMLWPS = 0xe -- PTRACE_GETREGS = 0x21 -- PTRACE_IO = 0xc -- PTRACE_KILL = 0x8 -- PTRACE_LWPEVENTS = 0x18 -- PTRACE_LWPINFO = 0xd -- PTRACE_SETFPREGS = 0x24 -- PTRACE_SETREGS = 0x22 -- PTRACE_SINGLESTEP = 0x9 -- PTRACE_TRACEME = 0x0 --) -- --const ( -- PIOD_READ_D = 0x1 -- PIOD_WRITE_D = 0x2 -- PIOD_READ_I = 0x3 -- PIOD_WRITE_I = 0x4 --) -- --const ( -- PL_FLAG_BORN = 0x100 -- PL_FLAG_EXITED = 0x200 -- PL_FLAG_SI = 0x20 --) -- --const ( -- TRAP_BRKPT = 0x1 -- TRAP_TRACE = 0x2 -+ PTRACE_TRACEME = 0x0 -+ PTRACE_CONT = 0x7 -+ PTRACE_KILL = 0x8 - ) - - type PtraceLwpInfoStruct struct { -@@ -361,7 +291,7 @@ type PtraceLwpInfoStruct struct { - Flags int32 - Sigmask Sigset_t - Siglist Sigset_t -- Siginfo __Siginfo -+ Siginfo __PtraceSiginfo - Tdname [20]int8 - Child_pid int32 - Syscall_code uint32 -@@ -380,6 +310,18 @@ type __Siginfo struct { - _ [40]byte - } - -+type __PtraceSiginfo struct { -+ Signo int32 -+ Errno int32 -+ Code int32 -+ Pid int32 -+ Uid uint32 -+ Status int32 -+ Addr uintptr -+ Value [8]byte -+ _ [40]byte -+} -+ - type Sigset_t struct { - Val [4]uint32 - } -@@ -400,10 +342,12 @@ type FpReg struct { - _ [8]byte - } - -+type FpExtendedPrecision struct{} -+ - type PtraceIoDesc struct { - Op int32 -- Offs *byte -- Addr *byte -+ Offs uintptr -+ Addr uintptr - Len uint64 - } - -@@ -414,6 +358,7 @@ type Kevent_t struct { - Fflags uint32 - Data int64 - Udata *byte -+ Ext [4]uint64 - } - - type FdSet struct { -@@ -642,9 +587,10 @@ type Winsize struct { - - const ( - AT_FDCWD = -0x64 -- AT_REMOVEDIR = 0x800 -- AT_SYMLINK_FOLLOW = 0x400 -+ AT_EACCESS = 0x100 - AT_SYMLINK_NOFOLLOW = 0x200 -+ AT_SYMLINK_FOLLOW = 0x400 -+ AT_REMOVEDIR = 0x800 - ) - - type PollFd struct { -diff --git a/vendor/golang.org/x/sys/unix/ztypes_freebsd_riscv64.go b/vendor/golang.org/x/sys/unix/ztypes_freebsd_riscv64.go -new file mode 100644 -index 0000000..0660fd4 ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/ztypes_freebsd_riscv64.go -@@ -0,0 +1,638 @@ -+// cgo -godefs -- -fsigned-char types_freebsd.go | go run mkpost.go -+// Code generated by the command above; see README.md. DO NOT EDIT. -+ -+//go:build riscv64 && freebsd -+// +build riscv64,freebsd -+ -+package unix -+ -+const ( -+ SizeofPtr = 0x8 -+ SizeofShort = 0x2 -+ SizeofInt = 0x4 -+ SizeofLong = 0x8 -+ SizeofLongLong = 0x8 -+) -+ -+type ( -+ _C_short int16 -+ _C_int int32 -+ _C_long int64 -+ _C_long_long int64 -+) -+ -+type Timespec struct { -+ Sec int64 -+ Nsec int64 -+} -+ -+type Timeval struct { -+ Sec int64 -+ Usec int64 -+} -+ -+type Time_t int64 -+ -+type Rusage struct { -+ Utime Timeval -+ Stime Timeval -+ Maxrss int64 -+ Ixrss int64 -+ Idrss int64 -+ Isrss int64 -+ Minflt int64 -+ Majflt int64 -+ Nswap int64 -+ Inblock int64 -+ Oublock int64 -+ Msgsnd int64 -+ Msgrcv int64 -+ Nsignals int64 -+ Nvcsw int64 -+ Nivcsw int64 -+} -+ -+type Rlimit struct { -+ Cur int64 -+ Max int64 -+} -+ -+type _Gid_t uint32 -+ -+const ( -+ _statfsVersion = 0x20140518 -+ _dirblksiz = 0x400 -+) -+ -+type Stat_t struct { -+ Dev uint64 -+ Ino uint64 -+ Nlink uint64 -+ Mode uint16 -+ _0 int16 -+ Uid uint32 -+ Gid uint32 -+ _1 int32 -+ Rdev uint64 -+ Atim Timespec -+ Mtim Timespec -+ Ctim Timespec -+ Btim Timespec -+ Size int64 -+ Blocks int64 -+ Blksize int32 -+ Flags uint32 -+ Gen uint64 -+ Spare [10]uint64 -+} -+ -+type Statfs_t struct { -+ Version uint32 -+ Type uint32 -+ Flags uint64 -+ Bsize uint64 -+ Iosize uint64 -+ Blocks uint64 -+ Bfree uint64 -+ Bavail int64 -+ Files uint64 -+ Ffree int64 -+ Syncwrites uint64 -+ Asyncwrites uint64 -+ Syncreads uint64 -+ Asyncreads uint64 -+ Spare [10]uint64 -+ Namemax uint32 -+ Owner uint32 -+ Fsid Fsid -+ Charspare [80]int8 -+ Fstypename [16]byte -+ Mntfromname [1024]byte -+ Mntonname [1024]byte -+} -+ -+type Flock_t struct { -+ Start int64 -+ Len int64 -+ Pid int32 -+ Type int16 -+ Whence int16 -+ Sysid int32 -+ _ [4]byte -+} -+ -+type Dirent struct { -+ Fileno uint64 -+ Off int64 -+ Reclen uint16 -+ Type uint8 -+ Pad0 uint8 -+ Namlen uint16 -+ Pad1 uint16 -+ Name [256]int8 -+} -+ -+type Fsid struct { -+ Val [2]int32 -+} -+ -+const ( -+ PathMax = 0x400 -+) -+ -+const ( -+ FADV_NORMAL = 0x0 -+ FADV_RANDOM = 0x1 -+ FADV_SEQUENTIAL = 0x2 -+ FADV_WILLNEED = 0x3 -+ FADV_DONTNEED = 0x4 -+ FADV_NOREUSE = 0x5 -+) -+ -+type RawSockaddrInet4 struct { -+ Len uint8 -+ Family uint8 -+ Port uint16 -+ Addr [4]byte /* in_addr */ -+ Zero [8]int8 -+} -+ -+type RawSockaddrInet6 struct { -+ Len uint8 -+ Family uint8 -+ Port uint16 -+ Flowinfo uint32 -+ Addr [16]byte /* in6_addr */ -+ Scope_id uint32 -+} -+ -+type RawSockaddrUnix struct { -+ Len uint8 -+ Family uint8 -+ Path [104]int8 -+} -+ -+type RawSockaddrDatalink struct { -+ Len uint8 -+ Family uint8 -+ Index uint16 -+ Type uint8 -+ Nlen uint8 -+ Alen uint8 -+ Slen uint8 -+ Data [46]int8 -+} -+ -+type RawSockaddr struct { -+ Len uint8 -+ Family uint8 -+ Data [14]int8 -+} -+ -+type RawSockaddrAny struct { -+ Addr RawSockaddr -+ Pad [92]int8 -+} -+ -+type _Socklen uint32 -+ -+type Xucred struct { -+ Version uint32 -+ Uid uint32 -+ Ngroups int16 -+ Groups [16]uint32 -+ _ *byte -+} -+ -+type Linger struct { -+ Onoff int32 -+ Linger int32 -+} -+ -+type Iovec struct { -+ Base *byte -+ Len uint64 -+} -+ -+type IPMreq struct { -+ Multiaddr [4]byte /* in_addr */ -+ Interface [4]byte /* in_addr */ -+} -+ -+type IPMreqn struct { -+ Multiaddr [4]byte /* in_addr */ -+ Address [4]byte /* in_addr */ -+ Ifindex int32 -+} -+ -+type IPv6Mreq struct { -+ Multiaddr [16]byte /* in6_addr */ -+ Interface uint32 -+} -+ -+type Msghdr struct { -+ Name *byte -+ Namelen uint32 -+ Iov *Iovec -+ Iovlen int32 -+ Control *byte -+ Controllen uint32 -+ Flags int32 -+} -+ -+type Cmsghdr struct { -+ Len uint32 -+ Level int32 -+ Type int32 -+} -+ -+type Inet6Pktinfo struct { -+ Addr [16]byte /* in6_addr */ -+ Ifindex uint32 -+} -+ -+type IPv6MTUInfo struct { -+ Addr RawSockaddrInet6 -+ Mtu uint32 -+} -+ -+type ICMPv6Filter struct { -+ Filt [8]uint32 -+} -+ -+const ( -+ SizeofSockaddrInet4 = 0x10 -+ SizeofSockaddrInet6 = 0x1c -+ SizeofSockaddrAny = 0x6c -+ SizeofSockaddrUnix = 0x6a -+ SizeofSockaddrDatalink = 0x36 -+ SizeofXucred = 0x58 -+ SizeofLinger = 0x8 -+ SizeofIovec = 0x10 -+ SizeofIPMreq = 0x8 -+ SizeofIPMreqn = 0xc -+ SizeofIPv6Mreq = 0x14 -+ SizeofMsghdr = 0x30 -+ SizeofCmsghdr = 0xc -+ SizeofInet6Pktinfo = 0x14 -+ SizeofIPv6MTUInfo = 0x20 -+ SizeofICMPv6Filter = 0x20 -+) -+ -+const ( -+ PTRACE_TRACEME = 0x0 -+ PTRACE_CONT = 0x7 -+ PTRACE_KILL = 0x8 -+) -+ -+type PtraceLwpInfoStruct struct { -+ Lwpid int32 -+ Event int32 -+ Flags int32 -+ Sigmask Sigset_t -+ Siglist Sigset_t -+ Siginfo __PtraceSiginfo -+ Tdname [20]int8 -+ Child_pid int32 -+ Syscall_code uint32 -+ Syscall_narg uint32 -+} -+ -+type __Siginfo struct { -+ Signo int32 -+ Errno int32 -+ Code int32 -+ Pid int32 -+ Uid uint32 -+ Status int32 -+ Addr *byte -+ Value [8]byte -+ _ [40]byte -+} -+ -+type __PtraceSiginfo struct { -+ Signo int32 -+ Errno int32 -+ Code int32 -+ Pid int32 -+ Uid uint32 -+ Status int32 -+ Addr uintptr -+ Value [8]byte -+ _ [40]byte -+} -+ -+type Sigset_t struct { -+ Val [4]uint32 -+} -+ -+type Reg struct { -+ Ra uint64 -+ Sp uint64 -+ Gp uint64 -+ Tp uint64 -+ T [7]uint64 -+ S [12]uint64 -+ A [8]uint64 -+ Sepc uint64 -+ Sstatus uint64 -+} -+ -+type FpReg struct { -+ X [32][2]uint64 -+ Fcsr uint64 -+} -+ -+type FpExtendedPrecision struct{} -+ -+type PtraceIoDesc struct { -+ Op int32 -+ Offs uintptr -+ Addr uintptr -+ Len uint64 -+} -+ -+type Kevent_t struct { -+ Ident uint64 -+ Filter int16 -+ Flags uint16 -+ Fflags uint32 -+ Data int64 -+ Udata *byte -+ Ext [4]uint64 -+} -+ -+type FdSet struct { -+ Bits [16]uint64 -+} -+ -+const ( -+ sizeofIfMsghdr = 0xa8 -+ SizeofIfMsghdr = 0xa8 -+ sizeofIfData = 0x98 -+ SizeofIfData = 0x98 -+ SizeofIfaMsghdr = 0x14 -+ SizeofIfmaMsghdr = 0x10 -+ SizeofIfAnnounceMsghdr = 0x18 -+ SizeofRtMsghdr = 0x98 -+ SizeofRtMetrics = 0x70 -+) -+ -+type ifMsghdr struct { -+ Msglen uint16 -+ Version uint8 -+ Type uint8 -+ Addrs int32 -+ Flags int32 -+ Index uint16 -+ _ uint16 -+ Data ifData -+} -+ -+type IfMsghdr struct { -+ Msglen uint16 -+ Version uint8 -+ Type uint8 -+ Addrs int32 -+ Flags int32 -+ Index uint16 -+ Data IfData -+} -+ -+type ifData struct { -+ Type uint8 -+ Physical uint8 -+ Addrlen uint8 -+ Hdrlen uint8 -+ Link_state uint8 -+ Vhid uint8 -+ Datalen uint16 -+ Mtu uint32 -+ Metric uint32 -+ Baudrate uint64 -+ Ipackets uint64 -+ Ierrors uint64 -+ Opackets uint64 -+ Oerrors uint64 -+ Collisions uint64 -+ Ibytes uint64 -+ Obytes uint64 -+ Imcasts uint64 -+ Omcasts uint64 -+ Iqdrops uint64 -+ Oqdrops uint64 -+ Noproto uint64 -+ Hwassist uint64 -+ _ [8]byte -+ _ [16]byte -+} -+ -+type IfData struct { -+ Type uint8 -+ Physical uint8 -+ Addrlen uint8 -+ Hdrlen uint8 -+ Link_state uint8 -+ Spare_char1 uint8 -+ Spare_char2 uint8 -+ Datalen uint8 -+ Mtu uint64 -+ Metric uint64 -+ Baudrate uint64 -+ Ipackets uint64 -+ Ierrors uint64 -+ Opackets uint64 -+ Oerrors uint64 -+ Collisions uint64 -+ Ibytes uint64 -+ Obytes uint64 -+ Imcasts uint64 -+ Omcasts uint64 -+ Iqdrops uint64 -+ Noproto uint64 -+ Hwassist uint64 -+ Epoch int64 -+ Lastchange Timeval -+} -+ -+type IfaMsghdr struct { -+ Msglen uint16 -+ Version uint8 -+ Type uint8 -+ Addrs int32 -+ Flags int32 -+ Index uint16 -+ _ uint16 -+ Metric int32 -+} -+ -+type IfmaMsghdr struct { -+ Msglen uint16 -+ Version uint8 -+ Type uint8 -+ Addrs int32 -+ Flags int32 -+ Index uint16 -+ _ uint16 -+} -+ -+type IfAnnounceMsghdr struct { -+ Msglen uint16 -+ Version uint8 -+ Type uint8 -+ Index uint16 -+ Name [16]int8 -+ What uint16 -+} -+ -+type RtMsghdr struct { -+ Msglen uint16 -+ Version uint8 -+ Type uint8 -+ Index uint16 -+ _ uint16 -+ Flags int32 -+ Addrs int32 -+ Pid int32 -+ Seq int32 -+ Errno int32 -+ Fmask int32 -+ Inits uint64 -+ Rmx RtMetrics -+} -+ -+type RtMetrics struct { -+ Locks uint64 -+ Mtu uint64 -+ Hopcount uint64 -+ Expire uint64 -+ Recvpipe uint64 -+ Sendpipe uint64 -+ Ssthresh uint64 -+ Rtt uint64 -+ Rttvar uint64 -+ Pksent uint64 -+ Weight uint64 -+ Nhidx uint64 -+ Filler [2]uint64 -+} -+ -+const ( -+ SizeofBpfVersion = 0x4 -+ SizeofBpfStat = 0x8 -+ SizeofBpfZbuf = 0x18 -+ SizeofBpfProgram = 0x10 -+ SizeofBpfInsn = 0x8 -+ SizeofBpfHdr = 0x20 -+ SizeofBpfZbufHeader = 0x20 -+) -+ -+type BpfVersion struct { -+ Major uint16 -+ Minor uint16 -+} -+ -+type BpfStat struct { -+ Recv uint32 -+ Drop uint32 -+} -+ -+type BpfZbuf struct { -+ Bufa *byte -+ Bufb *byte -+ Buflen uint64 -+} -+ -+type BpfProgram struct { -+ Len uint32 -+ Insns *BpfInsn -+} -+ -+type BpfInsn struct { -+ Code uint16 -+ Jt uint8 -+ Jf uint8 -+ K uint32 -+} -+ -+type BpfHdr struct { -+ Tstamp Timeval -+ Caplen uint32 -+ Datalen uint32 -+ Hdrlen uint16 -+ _ [6]byte -+} -+ -+type BpfZbufHeader struct { -+ Kernel_gen uint32 -+ Kernel_len uint32 -+ User_gen uint32 -+ _ [5]uint32 -+} -+ -+type Termios struct { -+ Iflag uint32 -+ Oflag uint32 -+ Cflag uint32 -+ Lflag uint32 -+ Cc [20]uint8 -+ Ispeed uint32 -+ Ospeed uint32 -+} -+ -+type Winsize struct { -+ Row uint16 -+ Col uint16 -+ Xpixel uint16 -+ Ypixel uint16 -+} -+ -+const ( -+ AT_FDCWD = -0x64 -+ AT_EACCESS = 0x100 -+ AT_SYMLINK_NOFOLLOW = 0x200 -+ AT_SYMLINK_FOLLOW = 0x400 -+ AT_REMOVEDIR = 0x800 -+) -+ -+type PollFd struct { -+ Fd int32 -+ Events int16 -+ Revents int16 -+} -+ -+const ( -+ POLLERR = 0x8 -+ POLLHUP = 0x10 -+ POLLIN = 0x1 -+ POLLINIGNEOF = 0x2000 -+ POLLNVAL = 0x20 -+ POLLOUT = 0x4 -+ POLLPRI = 0x2 -+ POLLRDBAND = 0x80 -+ POLLRDNORM = 0x40 -+ POLLWRBAND = 0x100 -+ POLLWRNORM = 0x4 -+) -+ -+type CapRights struct { -+ Rights [2]uint64 -+} -+ -+type Utsname struct { -+ Sysname [256]byte -+ Nodename [256]byte -+ Release [256]byte -+ Version [256]byte -+ Machine [256]byte -+} -+ -+const SizeofClockinfo = 0x14 -+ -+type Clockinfo struct { -+ Hz int32 -+ Tick int32 -+ Spare int32 -+ Stathz int32 -+ Profhz int32 -+} -diff --git a/vendor/golang.org/x/sys/unix/ztypes_illumos_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_illumos_amd64.go -new file mode 100644 -index 0000000..4c48526 ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/ztypes_illumos_amd64.go -@@ -0,0 +1,42 @@ -+// cgo -godefs types_illumos.go | go run mkpost.go -+// Code generated by the command above; see README.md. DO NOT EDIT. -+ -+//go:build amd64 && illumos -+// +build amd64,illumos -+ -+package unix -+ -+const ( -+ TUNNEWPPA = 0x540001 -+ TUNSETPPA = 0x540002 -+ -+ I_STR = 0x5308 -+ I_POP = 0x5303 -+ I_PUSH = 0x5302 -+ I_LINK = 0x530c -+ I_UNLINK = 0x530d -+ I_PLINK = 0x5316 -+ I_PUNLINK = 0x5317 -+ -+ IF_UNITSEL = -0x7ffb8cca -+) -+ -+type strbuf struct { -+ Maxlen int32 -+ Len int32 -+ Buf *int8 -+} -+ -+type Strioctl struct { -+ Cmd int32 -+ Timout int32 -+ Len int32 -+ Dp *int8 -+} -+ -+type Lifreq struct { -+ Name [32]int8 -+ Lifru1 [4]byte -+ Type uint32 -+ Lifru [336]byte -+} -diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux.go b/vendor/golang.org/x/sys/unix/ztypes_linux.go -index af5ab45..ff68811 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_linux.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_linux.go -@@ -1,5 +1,6 @@ --// Code generated by mkmerge.go; DO NOT EDIT. -+// Code generated by mkmerge; DO NOT EDIT. - -+//go:build linux - // +build linux - - package unix -@@ -18,6 +19,16 @@ type ( - _C_long_long int64 - ) - -+type ItimerSpec struct { -+ Interval Timespec -+ Value Timespec -+} -+ -+type Itimerval struct { -+ Interval Timeval -+ Value Timeval -+} -+ - const ( - TIME_OK = 0x0 - TIME_INS = 0x1 -@@ -62,13 +73,45 @@ type Statx_t struct { - Rdev_minor uint32 - Dev_major uint32 - Dev_minor uint32 -- _ [14]uint64 -+ Mnt_id uint64 -+ _ uint64 -+ _ [12]uint64 - } - - type Fsid struct { - Val [2]int32 - } - -+type FileCloneRange struct { -+ Src_fd int64 -+ Src_offset uint64 -+ Src_length uint64 -+ Dest_offset uint64 -+} -+ -+type RawFileDedupeRange struct { -+ Src_offset uint64 -+ Src_length uint64 -+ Dest_count uint16 -+ Reserved1 uint16 -+ Reserved2 uint32 -+} -+ -+type RawFileDedupeRangeInfo struct { -+ Dest_fd int64 -+ Dest_offset uint64 -+ Bytes_deduped uint64 -+ Status int32 -+ Reserved uint32 -+} -+ -+const ( -+ SizeofRawFileDedupeRange = 0x18 -+ SizeofRawFileDedupeRangeInfo = 0x20 -+ FILE_DEDUPE_RANGE_SAME = 0x0 -+ FILE_DEDUPE_RANGE_DIFFERS = 0x1 -+) -+ - type FscryptPolicy struct { - Version uint8 - Contents_encryption_mode uint8 -@@ -133,6 +176,48 @@ type FscryptGetKeyStatusArg struct { - _ [13]uint32 - } - -+type DmIoctl struct { -+ Version [3]uint32 -+ Data_size uint32 -+ Data_start uint32 -+ Target_count uint32 -+ Open_count int32 -+ Flags uint32 -+ Event_nr uint32 -+ _ uint32 -+ Dev uint64 -+ Name [128]byte -+ Uuid [129]byte -+ Data [7]byte -+} -+ -+type DmTargetSpec struct { -+ Sector_start uint64 -+ Length uint64 -+ Status int32 -+ Next uint32 -+ Target_type [16]byte -+} -+ -+type DmTargetDeps struct { -+ Count uint32 -+ _ uint32 -+} -+ -+type DmTargetVersions struct { -+ Next uint32 -+ Version [3]uint32 -+} -+ -+type DmTargetMsg struct { -+ Sector uint64 -+} -+ -+const ( -+ SizeofDmIoctl = 0x138 -+ SizeofDmTargetSpec = 0x28 -+) -+ - type KeyctlDHParams struct { - Private int32 - Prime int32 -@@ -224,7 +309,8 @@ type RawSockaddrVM struct { - Reserved1 uint16 - Port uint32 - Cid uint32 -- Zero [4]uint8 -+ Flags uint8 -+ Zero [3]uint8 - } - - type RawSockaddrXDP struct { -@@ -261,6 +347,22 @@ type RawSockaddrL2TPIP6 struct { - Conn_id uint32 - } - -+type RawSockaddrIUCV struct { -+ Family uint16 -+ Port uint16 -+ Addr uint32 -+ Nodeid [8]int8 -+ User_id [8]int8 -+ Name [8]int8 -+} -+ -+type RawSockaddrNFC struct { -+ Sa_family uint16 -+ Dev_idx uint32 -+ Target_idx uint32 -+ Nfc_protocol uint32 -+} -+ - type _Socklen uint32 - - type Linger struct { -@@ -355,6 +457,11 @@ type CanFilter struct { - Mask uint32 - } - -+type TCPRepairOpt struct { -+ Code uint32 -+ Val uint32 -+} -+ - const ( - SizeofSockaddrInet4 = 0x10 - SizeofSockaddrInet6 = 0x1c -@@ -373,6 +480,8 @@ const ( - SizeofSockaddrTIPC = 0x10 - SizeofSockaddrL2TPIP = 0x10 - SizeofSockaddrL2TPIP6 = 0x20 -+ SizeofSockaddrIUCV = 0x20 -+ SizeofSockaddrNFC = 0x10 - SizeofLinger = 0x8 - SizeofIPMreq = 0x8 - SizeofIPMreqn = 0xc -@@ -385,169 +494,111 @@ const ( - SizeofUcred = 0xc - SizeofTCPInfo = 0x68 - SizeofCanFilter = 0x8 -+ SizeofTCPRepairOpt = 0x8 - ) - - const ( -- NDA_UNSPEC = 0x0 -- NDA_DST = 0x1 -- NDA_LLADDR = 0x2 -- NDA_CACHEINFO = 0x3 -- NDA_PROBES = 0x4 -- NDA_VLAN = 0x5 -- NDA_PORT = 0x6 -- NDA_VNI = 0x7 -- NDA_IFINDEX = 0x8 -- NDA_MASTER = 0x9 -- NDA_LINK_NETNSID = 0xa -- NDA_SRC_VNI = 0xb -- NTF_USE = 0x1 -- NTF_SELF = 0x2 -- NTF_MASTER = 0x4 -- NTF_PROXY = 0x8 -- NTF_EXT_LEARNED = 0x10 -- NTF_OFFLOADED = 0x20 -- NTF_ROUTER = 0x80 -- NUD_INCOMPLETE = 0x1 -- NUD_REACHABLE = 0x2 -- NUD_STALE = 0x4 -- NUD_DELAY = 0x8 -- NUD_PROBE = 0x10 -- NUD_FAILED = 0x20 -- NUD_NOARP = 0x40 -- NUD_PERMANENT = 0x80 -- NUD_NONE = 0x0 -- IFA_UNSPEC = 0x0 -- IFA_ADDRESS = 0x1 -- IFA_LOCAL = 0x2 -- IFA_LABEL = 0x3 -- IFA_BROADCAST = 0x4 -- IFA_ANYCAST = 0x5 -- IFA_CACHEINFO = 0x6 -- IFA_MULTICAST = 0x7 -- IFA_FLAGS = 0x8 -- IFA_RT_PRIORITY = 0x9 -- IFA_TARGET_NETNSID = 0xa -- IFLA_UNSPEC = 0x0 -- IFLA_ADDRESS = 0x1 -- IFLA_BROADCAST = 0x2 -- IFLA_IFNAME = 0x3 -- IFLA_MTU = 0x4 -- IFLA_LINK = 0x5 -- IFLA_QDISC = 0x6 -- IFLA_STATS = 0x7 -- IFLA_COST = 0x8 -- IFLA_PRIORITY = 0x9 -- IFLA_MASTER = 0xa -- IFLA_WIRELESS = 0xb -- IFLA_PROTINFO = 0xc -- IFLA_TXQLEN = 0xd -- IFLA_MAP = 0xe -- IFLA_WEIGHT = 0xf -- IFLA_OPERSTATE = 0x10 -- IFLA_LINKMODE = 0x11 -- IFLA_LINKINFO = 0x12 -- IFLA_NET_NS_PID = 0x13 -- IFLA_IFALIAS = 0x14 -- IFLA_NUM_VF = 0x15 -- IFLA_VFINFO_LIST = 0x16 -- IFLA_STATS64 = 0x17 -- IFLA_VF_PORTS = 0x18 -- IFLA_PORT_SELF = 0x19 -- IFLA_AF_SPEC = 0x1a -- IFLA_GROUP = 0x1b -- IFLA_NET_NS_FD = 0x1c -- IFLA_EXT_MASK = 0x1d -- IFLA_PROMISCUITY = 0x1e -- IFLA_NUM_TX_QUEUES = 0x1f -- IFLA_NUM_RX_QUEUES = 0x20 -- IFLA_CARRIER = 0x21 -- IFLA_PHYS_PORT_ID = 0x22 -- IFLA_CARRIER_CHANGES = 0x23 -- IFLA_PHYS_SWITCH_ID = 0x24 -- IFLA_LINK_NETNSID = 0x25 -- IFLA_PHYS_PORT_NAME = 0x26 -- IFLA_PROTO_DOWN = 0x27 -- IFLA_GSO_MAX_SEGS = 0x28 -- IFLA_GSO_MAX_SIZE = 0x29 -- IFLA_PAD = 0x2a -- IFLA_XDP = 0x2b -- IFLA_EVENT = 0x2c -- IFLA_NEW_NETNSID = 0x2d -- IFLA_IF_NETNSID = 0x2e -- IFLA_TARGET_NETNSID = 0x2e -- IFLA_CARRIER_UP_COUNT = 0x2f -- IFLA_CARRIER_DOWN_COUNT = 0x30 -- IFLA_NEW_IFINDEX = 0x31 -- IFLA_MIN_MTU = 0x32 -- IFLA_MAX_MTU = 0x33 -- IFLA_MAX = 0x36 -- IFLA_INFO_KIND = 0x1 -- IFLA_INFO_DATA = 0x2 -- IFLA_INFO_XSTATS = 0x3 -- IFLA_INFO_SLAVE_KIND = 0x4 -- IFLA_INFO_SLAVE_DATA = 0x5 -- RT_SCOPE_UNIVERSE = 0x0 -- RT_SCOPE_SITE = 0xc8 -- RT_SCOPE_LINK = 0xfd -- RT_SCOPE_HOST = 0xfe -- RT_SCOPE_NOWHERE = 0xff -- RT_TABLE_UNSPEC = 0x0 -- RT_TABLE_COMPAT = 0xfc -- RT_TABLE_DEFAULT = 0xfd -- RT_TABLE_MAIN = 0xfe -- RT_TABLE_LOCAL = 0xff -- RT_TABLE_MAX = 0xffffffff -- RTA_UNSPEC = 0x0 -- RTA_DST = 0x1 -- RTA_SRC = 0x2 -- RTA_IIF = 0x3 -- RTA_OIF = 0x4 -- RTA_GATEWAY = 0x5 -- RTA_PRIORITY = 0x6 -- RTA_PREFSRC = 0x7 -- RTA_METRICS = 0x8 -- RTA_MULTIPATH = 0x9 -- RTA_FLOW = 0xb -- RTA_CACHEINFO = 0xc -- RTA_TABLE = 0xf -- RTA_MARK = 0x10 -- RTA_MFC_STATS = 0x11 -- RTA_VIA = 0x12 -- RTA_NEWDST = 0x13 -- RTA_PREF = 0x14 -- RTA_ENCAP_TYPE = 0x15 -- RTA_ENCAP = 0x16 -- RTA_EXPIRES = 0x17 -- RTA_PAD = 0x18 -- RTA_UID = 0x19 -- RTA_TTL_PROPAGATE = 0x1a -- RTA_IP_PROTO = 0x1b -- RTA_SPORT = 0x1c -- RTA_DPORT = 0x1d -- RTN_UNSPEC = 0x0 -- RTN_UNICAST = 0x1 -- RTN_LOCAL = 0x2 -- RTN_BROADCAST = 0x3 -- RTN_ANYCAST = 0x4 -- RTN_MULTICAST = 0x5 -- RTN_BLACKHOLE = 0x6 -- RTN_UNREACHABLE = 0x7 -- RTN_PROHIBIT = 0x8 -- RTN_THROW = 0x9 -- RTN_NAT = 0xa -- RTN_XRESOLVE = 0xb -- SizeofNlMsghdr = 0x10 -- SizeofNlMsgerr = 0x14 -- SizeofRtGenmsg = 0x1 -- SizeofNlAttr = 0x4 -- SizeofRtAttr = 0x4 -- SizeofIfInfomsg = 0x10 -- SizeofIfAddrmsg = 0x8 -- SizeofIfaCacheinfo = 0x10 -- SizeofRtMsg = 0xc -- SizeofRtNexthop = 0x8 -- SizeofNdUseroptmsg = 0x10 -- SizeofNdMsg = 0xc -+ NDA_UNSPEC = 0x0 -+ NDA_DST = 0x1 -+ NDA_LLADDR = 0x2 -+ NDA_CACHEINFO = 0x3 -+ NDA_PROBES = 0x4 -+ NDA_VLAN = 0x5 -+ NDA_PORT = 0x6 -+ NDA_VNI = 0x7 -+ NDA_IFINDEX = 0x8 -+ NDA_MASTER = 0x9 -+ NDA_LINK_NETNSID = 0xa -+ NDA_SRC_VNI = 0xb -+ NTF_USE = 0x1 -+ NTF_SELF = 0x2 -+ NTF_MASTER = 0x4 -+ NTF_PROXY = 0x8 -+ NTF_EXT_LEARNED = 0x10 -+ NTF_OFFLOADED = 0x20 -+ NTF_ROUTER = 0x80 -+ NUD_INCOMPLETE = 0x1 -+ NUD_REACHABLE = 0x2 -+ NUD_STALE = 0x4 -+ NUD_DELAY = 0x8 -+ NUD_PROBE = 0x10 -+ NUD_FAILED = 0x20 -+ NUD_NOARP = 0x40 -+ NUD_PERMANENT = 0x80 -+ NUD_NONE = 0x0 -+ IFA_UNSPEC = 0x0 -+ IFA_ADDRESS = 0x1 -+ IFA_LOCAL = 0x2 -+ IFA_LABEL = 0x3 -+ IFA_BROADCAST = 0x4 -+ IFA_ANYCAST = 0x5 -+ IFA_CACHEINFO = 0x6 -+ IFA_MULTICAST = 0x7 -+ IFA_FLAGS = 0x8 -+ IFA_RT_PRIORITY = 0x9 -+ IFA_TARGET_NETNSID = 0xa -+ RT_SCOPE_UNIVERSE = 0x0 -+ RT_SCOPE_SITE = 0xc8 -+ RT_SCOPE_LINK = 0xfd -+ RT_SCOPE_HOST = 0xfe -+ RT_SCOPE_NOWHERE = 0xff -+ RT_TABLE_UNSPEC = 0x0 -+ RT_TABLE_COMPAT = 0xfc -+ RT_TABLE_DEFAULT = 0xfd -+ RT_TABLE_MAIN = 0xfe -+ RT_TABLE_LOCAL = 0xff -+ RT_TABLE_MAX = 0xffffffff -+ RTA_UNSPEC = 0x0 -+ RTA_DST = 0x1 -+ RTA_SRC = 0x2 -+ RTA_IIF = 0x3 -+ RTA_OIF = 0x4 -+ RTA_GATEWAY = 0x5 -+ RTA_PRIORITY = 0x6 -+ RTA_PREFSRC = 0x7 -+ RTA_METRICS = 0x8 -+ RTA_MULTIPATH = 0x9 -+ RTA_FLOW = 0xb -+ RTA_CACHEINFO = 0xc -+ RTA_TABLE = 0xf -+ RTA_MARK = 0x10 -+ RTA_MFC_STATS = 0x11 -+ RTA_VIA = 0x12 -+ RTA_NEWDST = 0x13 -+ RTA_PREF = 0x14 -+ RTA_ENCAP_TYPE = 0x15 -+ RTA_ENCAP = 0x16 -+ RTA_EXPIRES = 0x17 -+ RTA_PAD = 0x18 -+ RTA_UID = 0x19 -+ RTA_TTL_PROPAGATE = 0x1a -+ RTA_IP_PROTO = 0x1b -+ RTA_SPORT = 0x1c -+ RTA_DPORT = 0x1d -+ RTN_UNSPEC = 0x0 -+ RTN_UNICAST = 0x1 -+ RTN_LOCAL = 0x2 -+ RTN_BROADCAST = 0x3 -+ RTN_ANYCAST = 0x4 -+ RTN_MULTICAST = 0x5 -+ RTN_BLACKHOLE = 0x6 -+ RTN_UNREACHABLE = 0x7 -+ RTN_PROHIBIT = 0x8 -+ RTN_THROW = 0x9 -+ RTN_NAT = 0xa -+ RTN_XRESOLVE = 0xb -+ SizeofNlMsghdr = 0x10 -+ SizeofNlMsgerr = 0x14 -+ SizeofRtGenmsg = 0x1 -+ SizeofNlAttr = 0x4 -+ SizeofRtAttr = 0x4 -+ SizeofIfInfomsg = 0x10 -+ SizeofIfAddrmsg = 0x8 -+ SizeofIfaCacheinfo = 0x10 -+ SizeofRtMsg = 0xc -+ SizeofRtNexthop = 0x8 -+ SizeofNdUseroptmsg = 0x10 -+ SizeofNdMsg = 0xc - ) - - type NlMsghdr struct { -@@ -641,6 +692,16 @@ type NdMsg struct { - Type uint8 - } - -+const ( -+ ICMP_FILTER = 0x1 -+ -+ ICMPV6_FILTER = 0x1 -+ ICMPV6_FILTER_BLOCK = 0x1 -+ ICMPV6_FILTER_BLOCKOTHERS = 0x3 -+ ICMPV6_FILTER_PASS = 0x2 -+ ICMPV6_FILTER_PASSONLY = 0x4 -+) -+ - const ( - SizeofSockFilter = 0x8 - ) -@@ -666,6 +727,8 @@ type InotifyEvent struct { - - const SizeofInotifyEvent = 0x10 - -+const SI_LOAD_SHIFT = 0x10 -+ - type Utsname struct { - Sysname [65]byte - Nodename [65]byte -@@ -685,10 +748,47 @@ const ( - AT_STATX_FORCE_SYNC = 0x2000 - AT_STATX_DONT_SYNC = 0x4000 - -+ AT_RECURSIVE = 0x8000 -+ - AT_SYMLINK_FOLLOW = 0x400 - AT_SYMLINK_NOFOLLOW = 0x100 - - AT_EACCESS = 0x200 -+ -+ OPEN_TREE_CLONE = 0x1 -+ -+ MOVE_MOUNT_F_SYMLINKS = 0x1 -+ MOVE_MOUNT_F_AUTOMOUNTS = 0x2 -+ MOVE_MOUNT_F_EMPTY_PATH = 0x4 -+ MOVE_MOUNT_T_SYMLINKS = 0x10 -+ MOVE_MOUNT_T_AUTOMOUNTS = 0x20 -+ MOVE_MOUNT_T_EMPTY_PATH = 0x40 -+ MOVE_MOUNT_SET_GROUP = 0x100 -+ -+ FSOPEN_CLOEXEC = 0x1 -+ -+ FSPICK_CLOEXEC = 0x1 -+ FSPICK_SYMLINK_NOFOLLOW = 0x2 -+ FSPICK_NO_AUTOMOUNT = 0x4 -+ FSPICK_EMPTY_PATH = 0x8 -+ -+ FSMOUNT_CLOEXEC = 0x1 -+) -+ -+type OpenHow struct { -+ Flags uint64 -+ Mode uint64 -+ Resolve uint64 -+} -+ -+const SizeofOpenHow = 0x18 -+ -+const ( -+ RESOLVE_BENEATH = 0x8 -+ RESOLVE_IN_ROOT = 0x10 -+ RESOLVE_NO_MAGICLINKS = 0x2 -+ RESOLVE_NO_SYMLINKS = 0x4 -+ RESOLVE_NO_XDEV = 0x1 - ) - - type PollFd struct { -@@ -731,8 +831,6 @@ type SignalfdSiginfo struct { - _ [28]uint8 - } - --const PERF_IOC_FLAG_GROUP = 0x1 -- - type Winsize struct { - Row uint16 - Col uint16 -@@ -793,6 +891,7 @@ const ( - CTRL_CMD_NEWMCAST_GRP = 0x7 - CTRL_CMD_DELMCAST_GRP = 0x8 - CTRL_CMD_GETMCAST_GRP = 0x9 -+ CTRL_CMD_GETPOLICY = 0xa - CTRL_ATTR_UNSPEC = 0x0 - CTRL_ATTR_FAMILY_ID = 0x1 - CTRL_ATTR_FAMILY_NAME = 0x2 -@@ -801,12 +900,19 @@ const ( - CTRL_ATTR_MAXATTR = 0x5 - CTRL_ATTR_OPS = 0x6 - CTRL_ATTR_MCAST_GROUPS = 0x7 -+ CTRL_ATTR_POLICY = 0x8 -+ CTRL_ATTR_OP_POLICY = 0x9 -+ CTRL_ATTR_OP = 0xa - CTRL_ATTR_OP_UNSPEC = 0x0 - CTRL_ATTR_OP_ID = 0x1 - CTRL_ATTR_OP_FLAGS = 0x2 - CTRL_ATTR_MCAST_GRP_UNSPEC = 0x0 - CTRL_ATTR_MCAST_GRP_NAME = 0x1 - CTRL_ATTR_MCAST_GRP_ID = 0x2 -+ CTRL_ATTR_POLICY_UNSPEC = 0x0 -+ CTRL_ATTR_POLICY_DO = 0x1 -+ CTRL_ATTR_POLICY_DUMP = 0x2 -+ CTRL_ATTR_POLICY_DUMP_MAX = 0x2 - ) - - const ( -@@ -839,6 +945,9 @@ type PerfEventAttr struct { - Aux_watermark uint32 - Sample_max_stack uint16 - _ uint16 -+ Aux_sample_size uint32 -+ _ uint32 -+ Sig_data uint64 - } - - type PerfEventMmapPage struct { -@@ -856,7 +965,10 @@ type PerfEventMmapPage struct { - Time_offset uint64 - Time_zero uint64 - Size uint32 -- _ [948]uint8 -+ _ uint32 -+ Time_cycles uint64 -+ Time_mask uint64 -+ _ [928]uint8 - Data_head uint64 - Data_tail uint64 - Data_offset uint64 -@@ -898,13 +1010,13 @@ const ( - ) - - const ( -- PERF_TYPE_HARDWARE = 0x0 -- PERF_TYPE_SOFTWARE = 0x1 -- PERF_TYPE_TRACEPOINT = 0x2 -- PERF_TYPE_HW_CACHE = 0x3 -- PERF_TYPE_RAW = 0x4 -- PERF_TYPE_BREAKPOINT = 0x5 -- -+ PERF_TYPE_HARDWARE = 0x0 -+ PERF_TYPE_SOFTWARE = 0x1 -+ PERF_TYPE_TRACEPOINT = 0x2 -+ PERF_TYPE_HW_CACHE = 0x3 -+ PERF_TYPE_RAW = 0x4 -+ PERF_TYPE_BREAKPOINT = 0x5 -+ PERF_TYPE_MAX = 0x6 - PERF_COUNT_HW_CPU_CYCLES = 0x0 - PERF_COUNT_HW_INSTRUCTIONS = 0x1 - PERF_COUNT_HW_CACHE_REFERENCES = 0x2 -@@ -915,99 +1027,169 @@ const ( - PERF_COUNT_HW_STALLED_CYCLES_FRONTEND = 0x7 - PERF_COUNT_HW_STALLED_CYCLES_BACKEND = 0x8 - PERF_COUNT_HW_REF_CPU_CYCLES = 0x9 -- -- PERF_COUNT_HW_CACHE_L1D = 0x0 -- PERF_COUNT_HW_CACHE_L1I = 0x1 -- PERF_COUNT_HW_CACHE_LL = 0x2 -- PERF_COUNT_HW_CACHE_DTLB = 0x3 -- PERF_COUNT_HW_CACHE_ITLB = 0x4 -- PERF_COUNT_HW_CACHE_BPU = 0x5 -- PERF_COUNT_HW_CACHE_NODE = 0x6 -- -- PERF_COUNT_HW_CACHE_OP_READ = 0x0 -- PERF_COUNT_HW_CACHE_OP_WRITE = 0x1 -- PERF_COUNT_HW_CACHE_OP_PREFETCH = 0x2 -- -- PERF_COUNT_HW_CACHE_RESULT_ACCESS = 0x0 -- PERF_COUNT_HW_CACHE_RESULT_MISS = 0x1 -- -- PERF_COUNT_SW_CPU_CLOCK = 0x0 -- PERF_COUNT_SW_TASK_CLOCK = 0x1 -- PERF_COUNT_SW_PAGE_FAULTS = 0x2 -- PERF_COUNT_SW_CONTEXT_SWITCHES = 0x3 -- PERF_COUNT_SW_CPU_MIGRATIONS = 0x4 -- PERF_COUNT_SW_PAGE_FAULTS_MIN = 0x5 -- PERF_COUNT_SW_PAGE_FAULTS_MAJ = 0x6 -- PERF_COUNT_SW_ALIGNMENT_FAULTS = 0x7 -- PERF_COUNT_SW_EMULATION_FAULTS = 0x8 -- PERF_COUNT_SW_DUMMY = 0x9 -- PERF_COUNT_SW_BPF_OUTPUT = 0xa -- -- PERF_SAMPLE_IP = 0x1 -- PERF_SAMPLE_TID = 0x2 -- PERF_SAMPLE_TIME = 0x4 -- PERF_SAMPLE_ADDR = 0x8 -- PERF_SAMPLE_READ = 0x10 -- PERF_SAMPLE_CALLCHAIN = 0x20 -- PERF_SAMPLE_ID = 0x40 -- PERF_SAMPLE_CPU = 0x80 -- PERF_SAMPLE_PERIOD = 0x100 -- PERF_SAMPLE_STREAM_ID = 0x200 -- PERF_SAMPLE_RAW = 0x400 -- PERF_SAMPLE_BRANCH_STACK = 0x800 -- -- PERF_SAMPLE_BRANCH_USER = 0x1 -- PERF_SAMPLE_BRANCH_KERNEL = 0x2 -- PERF_SAMPLE_BRANCH_HV = 0x4 -- PERF_SAMPLE_BRANCH_ANY = 0x8 -- PERF_SAMPLE_BRANCH_ANY_CALL = 0x10 -- PERF_SAMPLE_BRANCH_ANY_RETURN = 0x20 -- PERF_SAMPLE_BRANCH_IND_CALL = 0x40 -- PERF_SAMPLE_BRANCH_ABORT_TX = 0x80 -- PERF_SAMPLE_BRANCH_IN_TX = 0x100 -- PERF_SAMPLE_BRANCH_NO_TX = 0x200 -- PERF_SAMPLE_BRANCH_COND = 0x400 -- PERF_SAMPLE_BRANCH_CALL_STACK = 0x800 -- PERF_SAMPLE_BRANCH_IND_JUMP = 0x1000 -- PERF_SAMPLE_BRANCH_CALL = 0x2000 -- PERF_SAMPLE_BRANCH_NO_FLAGS = 0x4000 -- PERF_SAMPLE_BRANCH_NO_CYCLES = 0x8000 -- PERF_SAMPLE_BRANCH_TYPE_SAVE = 0x10000 -- -- PERF_FORMAT_TOTAL_TIME_ENABLED = 0x1 -- PERF_FORMAT_TOTAL_TIME_RUNNING = 0x2 -- PERF_FORMAT_ID = 0x4 -- PERF_FORMAT_GROUP = 0x8 -- -- PERF_RECORD_MMAP = 0x1 -- PERF_RECORD_LOST = 0x2 -- PERF_RECORD_COMM = 0x3 -- PERF_RECORD_EXIT = 0x4 -- PERF_RECORD_THROTTLE = 0x5 -- PERF_RECORD_UNTHROTTLE = 0x6 -- PERF_RECORD_FORK = 0x7 -- PERF_RECORD_READ = 0x8 -- PERF_RECORD_SAMPLE = 0x9 -- PERF_RECORD_MMAP2 = 0xa -- PERF_RECORD_AUX = 0xb -- PERF_RECORD_ITRACE_START = 0xc -- PERF_RECORD_LOST_SAMPLES = 0xd -- PERF_RECORD_SWITCH = 0xe -- PERF_RECORD_SWITCH_CPU_WIDE = 0xf -- PERF_RECORD_NAMESPACES = 0x10 -- -- PERF_CONTEXT_HV = -0x20 -- PERF_CONTEXT_KERNEL = -0x80 -- PERF_CONTEXT_USER = -0x200 -- -- PERF_CONTEXT_GUEST = -0x800 -- PERF_CONTEXT_GUEST_KERNEL = -0x880 -- PERF_CONTEXT_GUEST_USER = -0xa00 -- -- PERF_FLAG_FD_NO_GROUP = 0x1 -- PERF_FLAG_FD_OUTPUT = 0x2 -- PERF_FLAG_PID_CGROUP = 0x4 -- PERF_FLAG_FD_CLOEXEC = 0x8 -+ PERF_COUNT_HW_MAX = 0xa -+ PERF_COUNT_HW_CACHE_L1D = 0x0 -+ PERF_COUNT_HW_CACHE_L1I = 0x1 -+ PERF_COUNT_HW_CACHE_LL = 0x2 -+ PERF_COUNT_HW_CACHE_DTLB = 0x3 -+ PERF_COUNT_HW_CACHE_ITLB = 0x4 -+ PERF_COUNT_HW_CACHE_BPU = 0x5 -+ PERF_COUNT_HW_CACHE_NODE = 0x6 -+ PERF_COUNT_HW_CACHE_MAX = 0x7 -+ PERF_COUNT_HW_CACHE_OP_READ = 0x0 -+ PERF_COUNT_HW_CACHE_OP_WRITE = 0x1 -+ PERF_COUNT_HW_CACHE_OP_PREFETCH = 0x2 -+ PERF_COUNT_HW_CACHE_OP_MAX = 0x3 -+ PERF_COUNT_HW_CACHE_RESULT_ACCESS = 0x0 -+ PERF_COUNT_HW_CACHE_RESULT_MISS = 0x1 -+ PERF_COUNT_HW_CACHE_RESULT_MAX = 0x2 -+ PERF_COUNT_SW_CPU_CLOCK = 0x0 -+ PERF_COUNT_SW_TASK_CLOCK = 0x1 -+ PERF_COUNT_SW_PAGE_FAULTS = 0x2 -+ PERF_COUNT_SW_CONTEXT_SWITCHES = 0x3 -+ PERF_COUNT_SW_CPU_MIGRATIONS = 0x4 -+ PERF_COUNT_SW_PAGE_FAULTS_MIN = 0x5 -+ PERF_COUNT_SW_PAGE_FAULTS_MAJ = 0x6 -+ PERF_COUNT_SW_ALIGNMENT_FAULTS = 0x7 -+ PERF_COUNT_SW_EMULATION_FAULTS = 0x8 -+ PERF_COUNT_SW_DUMMY = 0x9 -+ PERF_COUNT_SW_BPF_OUTPUT = 0xa -+ PERF_COUNT_SW_MAX = 0xc -+ PERF_SAMPLE_IP = 0x1 -+ PERF_SAMPLE_TID = 0x2 -+ PERF_SAMPLE_TIME = 0x4 -+ PERF_SAMPLE_ADDR = 0x8 -+ PERF_SAMPLE_READ = 0x10 -+ PERF_SAMPLE_CALLCHAIN = 0x20 -+ PERF_SAMPLE_ID = 0x40 -+ PERF_SAMPLE_CPU = 0x80 -+ PERF_SAMPLE_PERIOD = 0x100 -+ PERF_SAMPLE_STREAM_ID = 0x200 -+ PERF_SAMPLE_RAW = 0x400 -+ PERF_SAMPLE_BRANCH_STACK = 0x800 -+ PERF_SAMPLE_REGS_USER = 0x1000 -+ PERF_SAMPLE_STACK_USER = 0x2000 -+ PERF_SAMPLE_WEIGHT = 0x4000 -+ PERF_SAMPLE_DATA_SRC = 0x8000 -+ PERF_SAMPLE_IDENTIFIER = 0x10000 -+ PERF_SAMPLE_TRANSACTION = 0x20000 -+ PERF_SAMPLE_REGS_INTR = 0x40000 -+ PERF_SAMPLE_PHYS_ADDR = 0x80000 -+ PERF_SAMPLE_AUX = 0x100000 -+ PERF_SAMPLE_CGROUP = 0x200000 -+ PERF_SAMPLE_DATA_PAGE_SIZE = 0x400000 -+ PERF_SAMPLE_CODE_PAGE_SIZE = 0x800000 -+ PERF_SAMPLE_WEIGHT_STRUCT = 0x1000000 -+ PERF_SAMPLE_MAX = 0x2000000 -+ PERF_SAMPLE_BRANCH_USER_SHIFT = 0x0 -+ PERF_SAMPLE_BRANCH_KERNEL_SHIFT = 0x1 -+ PERF_SAMPLE_BRANCH_HV_SHIFT = 0x2 -+ PERF_SAMPLE_BRANCH_ANY_SHIFT = 0x3 -+ PERF_SAMPLE_BRANCH_ANY_CALL_SHIFT = 0x4 -+ PERF_SAMPLE_BRANCH_ANY_RETURN_SHIFT = 0x5 -+ PERF_SAMPLE_BRANCH_IND_CALL_SHIFT = 0x6 -+ PERF_SAMPLE_BRANCH_ABORT_TX_SHIFT = 0x7 -+ PERF_SAMPLE_BRANCH_IN_TX_SHIFT = 0x8 -+ PERF_SAMPLE_BRANCH_NO_TX_SHIFT = 0x9 -+ PERF_SAMPLE_BRANCH_COND_SHIFT = 0xa -+ PERF_SAMPLE_BRANCH_CALL_STACK_SHIFT = 0xb -+ PERF_SAMPLE_BRANCH_IND_JUMP_SHIFT = 0xc -+ PERF_SAMPLE_BRANCH_CALL_SHIFT = 0xd -+ PERF_SAMPLE_BRANCH_NO_FLAGS_SHIFT = 0xe -+ PERF_SAMPLE_BRANCH_NO_CYCLES_SHIFT = 0xf -+ PERF_SAMPLE_BRANCH_TYPE_SAVE_SHIFT = 0x10 -+ PERF_SAMPLE_BRANCH_HW_INDEX_SHIFT = 0x11 -+ PERF_SAMPLE_BRANCH_MAX_SHIFT = 0x12 -+ PERF_SAMPLE_BRANCH_USER = 0x1 -+ PERF_SAMPLE_BRANCH_KERNEL = 0x2 -+ PERF_SAMPLE_BRANCH_HV = 0x4 -+ PERF_SAMPLE_BRANCH_ANY = 0x8 -+ PERF_SAMPLE_BRANCH_ANY_CALL = 0x10 -+ PERF_SAMPLE_BRANCH_ANY_RETURN = 0x20 -+ PERF_SAMPLE_BRANCH_IND_CALL = 0x40 -+ PERF_SAMPLE_BRANCH_ABORT_TX = 0x80 -+ PERF_SAMPLE_BRANCH_IN_TX = 0x100 -+ PERF_SAMPLE_BRANCH_NO_TX = 0x200 -+ PERF_SAMPLE_BRANCH_COND = 0x400 -+ PERF_SAMPLE_BRANCH_CALL_STACK = 0x800 -+ PERF_SAMPLE_BRANCH_IND_JUMP = 0x1000 -+ PERF_SAMPLE_BRANCH_CALL = 0x2000 -+ PERF_SAMPLE_BRANCH_NO_FLAGS = 0x4000 -+ PERF_SAMPLE_BRANCH_NO_CYCLES = 0x8000 -+ PERF_SAMPLE_BRANCH_TYPE_SAVE = 0x10000 -+ PERF_SAMPLE_BRANCH_HW_INDEX = 0x20000 -+ PERF_SAMPLE_BRANCH_MAX = 0x40000 -+ PERF_BR_UNKNOWN = 0x0 -+ PERF_BR_COND = 0x1 -+ PERF_BR_UNCOND = 0x2 -+ PERF_BR_IND = 0x3 -+ PERF_BR_CALL = 0x4 -+ PERF_BR_IND_CALL = 0x5 -+ PERF_BR_RET = 0x6 -+ PERF_BR_SYSCALL = 0x7 -+ PERF_BR_SYSRET = 0x8 -+ PERF_BR_COND_CALL = 0x9 -+ PERF_BR_COND_RET = 0xa -+ PERF_BR_ERET = 0xb -+ PERF_BR_IRQ = 0xc -+ PERF_BR_MAX = 0xd -+ PERF_SAMPLE_REGS_ABI_NONE = 0x0 -+ PERF_SAMPLE_REGS_ABI_32 = 0x1 -+ PERF_SAMPLE_REGS_ABI_64 = 0x2 -+ PERF_TXN_ELISION = 0x1 -+ PERF_TXN_TRANSACTION = 0x2 -+ PERF_TXN_SYNC = 0x4 -+ PERF_TXN_ASYNC = 0x8 -+ PERF_TXN_RETRY = 0x10 -+ PERF_TXN_CONFLICT = 0x20 -+ PERF_TXN_CAPACITY_WRITE = 0x40 -+ PERF_TXN_CAPACITY_READ = 0x80 -+ PERF_TXN_MAX = 0x100 -+ PERF_TXN_ABORT_MASK = -0x100000000 -+ PERF_TXN_ABORT_SHIFT = 0x20 -+ PERF_FORMAT_TOTAL_TIME_ENABLED = 0x1 -+ PERF_FORMAT_TOTAL_TIME_RUNNING = 0x2 -+ PERF_FORMAT_ID = 0x4 -+ PERF_FORMAT_GROUP = 0x8 -+ PERF_FORMAT_MAX = 0x10 -+ PERF_IOC_FLAG_GROUP = 0x1 -+ PERF_RECORD_MMAP = 0x1 -+ PERF_RECORD_LOST = 0x2 -+ PERF_RECORD_COMM = 0x3 -+ PERF_RECORD_EXIT = 0x4 -+ PERF_RECORD_THROTTLE = 0x5 -+ PERF_RECORD_UNTHROTTLE = 0x6 -+ PERF_RECORD_FORK = 0x7 -+ PERF_RECORD_READ = 0x8 -+ PERF_RECORD_SAMPLE = 0x9 -+ PERF_RECORD_MMAP2 = 0xa -+ PERF_RECORD_AUX = 0xb -+ PERF_RECORD_ITRACE_START = 0xc -+ PERF_RECORD_LOST_SAMPLES = 0xd -+ PERF_RECORD_SWITCH = 0xe -+ PERF_RECORD_SWITCH_CPU_WIDE = 0xf -+ PERF_RECORD_NAMESPACES = 0x10 -+ PERF_RECORD_KSYMBOL = 0x11 -+ PERF_RECORD_BPF_EVENT = 0x12 -+ PERF_RECORD_CGROUP = 0x13 -+ PERF_RECORD_TEXT_POKE = 0x14 -+ PERF_RECORD_AUX_OUTPUT_HW_ID = 0x15 -+ PERF_RECORD_MAX = 0x16 -+ PERF_RECORD_KSYMBOL_TYPE_UNKNOWN = 0x0 -+ PERF_RECORD_KSYMBOL_TYPE_BPF = 0x1 -+ PERF_RECORD_KSYMBOL_TYPE_OOL = 0x2 -+ PERF_RECORD_KSYMBOL_TYPE_MAX = 0x3 -+ PERF_BPF_EVENT_UNKNOWN = 0x0 -+ PERF_BPF_EVENT_PROG_LOAD = 0x1 -+ PERF_BPF_EVENT_PROG_UNLOAD = 0x2 -+ PERF_BPF_EVENT_MAX = 0x3 -+ PERF_CONTEXT_HV = -0x20 -+ PERF_CONTEXT_KERNEL = -0x80 -+ PERF_CONTEXT_USER = -0x200 -+ PERF_CONTEXT_GUEST = -0x800 -+ PERF_CONTEXT_GUEST_KERNEL = -0x880 -+ PERF_CONTEXT_GUEST_USER = -0xa00 -+ PERF_CONTEXT_MAX = -0xfff - ) - - type TCPMD5Sig struct { -@@ -1226,6 +1408,406 @@ const ( - SizeofTpacketStatsV3 = 0xc - ) - -+const ( -+ IFLA_UNSPEC = 0x0 -+ IFLA_ADDRESS = 0x1 -+ IFLA_BROADCAST = 0x2 -+ IFLA_IFNAME = 0x3 -+ IFLA_MTU = 0x4 -+ IFLA_LINK = 0x5 -+ IFLA_QDISC = 0x6 -+ IFLA_STATS = 0x7 -+ IFLA_COST = 0x8 -+ IFLA_PRIORITY = 0x9 -+ IFLA_MASTER = 0xa -+ IFLA_WIRELESS = 0xb -+ IFLA_PROTINFO = 0xc -+ IFLA_TXQLEN = 0xd -+ IFLA_MAP = 0xe -+ IFLA_WEIGHT = 0xf -+ IFLA_OPERSTATE = 0x10 -+ IFLA_LINKMODE = 0x11 -+ IFLA_LINKINFO = 0x12 -+ IFLA_NET_NS_PID = 0x13 -+ IFLA_IFALIAS = 0x14 -+ IFLA_NUM_VF = 0x15 -+ IFLA_VFINFO_LIST = 0x16 -+ IFLA_STATS64 = 0x17 -+ IFLA_VF_PORTS = 0x18 -+ IFLA_PORT_SELF = 0x19 -+ IFLA_AF_SPEC = 0x1a -+ IFLA_GROUP = 0x1b -+ IFLA_NET_NS_FD = 0x1c -+ IFLA_EXT_MASK = 0x1d -+ IFLA_PROMISCUITY = 0x1e -+ IFLA_NUM_TX_QUEUES = 0x1f -+ IFLA_NUM_RX_QUEUES = 0x20 -+ IFLA_CARRIER = 0x21 -+ IFLA_PHYS_PORT_ID = 0x22 -+ IFLA_CARRIER_CHANGES = 0x23 -+ IFLA_PHYS_SWITCH_ID = 0x24 -+ IFLA_LINK_NETNSID = 0x25 -+ IFLA_PHYS_PORT_NAME = 0x26 -+ IFLA_PROTO_DOWN = 0x27 -+ IFLA_GSO_MAX_SEGS = 0x28 -+ IFLA_GSO_MAX_SIZE = 0x29 -+ IFLA_PAD = 0x2a -+ IFLA_XDP = 0x2b -+ IFLA_EVENT = 0x2c -+ IFLA_NEW_NETNSID = 0x2d -+ IFLA_IF_NETNSID = 0x2e -+ IFLA_TARGET_NETNSID = 0x2e -+ IFLA_CARRIER_UP_COUNT = 0x2f -+ IFLA_CARRIER_DOWN_COUNT = 0x30 -+ IFLA_NEW_IFINDEX = 0x31 -+ IFLA_MIN_MTU = 0x32 -+ IFLA_MAX_MTU = 0x33 -+ IFLA_PROP_LIST = 0x34 -+ IFLA_ALT_IFNAME = 0x35 -+ IFLA_PERM_ADDRESS = 0x36 -+ IFLA_PROTO_DOWN_REASON = 0x37 -+ IFLA_PARENT_DEV_NAME = 0x38 -+ IFLA_PARENT_DEV_BUS_NAME = 0x39 -+ IFLA_GRO_MAX_SIZE = 0x3a -+ IFLA_TSO_MAX_SIZE = 0x3b -+ IFLA_TSO_MAX_SEGS = 0x3c -+ IFLA_PROTO_DOWN_REASON_UNSPEC = 0x0 -+ IFLA_PROTO_DOWN_REASON_MASK = 0x1 -+ IFLA_PROTO_DOWN_REASON_VALUE = 0x2 -+ IFLA_PROTO_DOWN_REASON_MAX = 0x2 -+ IFLA_INET_UNSPEC = 0x0 -+ IFLA_INET_CONF = 0x1 -+ IFLA_INET6_UNSPEC = 0x0 -+ IFLA_INET6_FLAGS = 0x1 -+ IFLA_INET6_CONF = 0x2 -+ IFLA_INET6_STATS = 0x3 -+ IFLA_INET6_MCAST = 0x4 -+ IFLA_INET6_CACHEINFO = 0x5 -+ IFLA_INET6_ICMP6STATS = 0x6 -+ IFLA_INET6_TOKEN = 0x7 -+ IFLA_INET6_ADDR_GEN_MODE = 0x8 -+ IFLA_BR_UNSPEC = 0x0 -+ IFLA_BR_FORWARD_DELAY = 0x1 -+ IFLA_BR_HELLO_TIME = 0x2 -+ IFLA_BR_MAX_AGE = 0x3 -+ IFLA_BR_AGEING_TIME = 0x4 -+ IFLA_BR_STP_STATE = 0x5 -+ IFLA_BR_PRIORITY = 0x6 -+ IFLA_BR_VLAN_FILTERING = 0x7 -+ IFLA_BR_VLAN_PROTOCOL = 0x8 -+ IFLA_BR_GROUP_FWD_MASK = 0x9 -+ IFLA_BR_ROOT_ID = 0xa -+ IFLA_BR_BRIDGE_ID = 0xb -+ IFLA_BR_ROOT_PORT = 0xc -+ IFLA_BR_ROOT_PATH_COST = 0xd -+ IFLA_BR_TOPOLOGY_CHANGE = 0xe -+ IFLA_BR_TOPOLOGY_CHANGE_DETECTED = 0xf -+ IFLA_BR_HELLO_TIMER = 0x10 -+ IFLA_BR_TCN_TIMER = 0x11 -+ IFLA_BR_TOPOLOGY_CHANGE_TIMER = 0x12 -+ IFLA_BR_GC_TIMER = 0x13 -+ IFLA_BR_GROUP_ADDR = 0x14 -+ IFLA_BR_FDB_FLUSH = 0x15 -+ IFLA_BR_MCAST_ROUTER = 0x16 -+ IFLA_BR_MCAST_SNOOPING = 0x17 -+ IFLA_BR_MCAST_QUERY_USE_IFADDR = 0x18 -+ IFLA_BR_MCAST_QUERIER = 0x19 -+ IFLA_BR_MCAST_HASH_ELASTICITY = 0x1a -+ IFLA_BR_MCAST_HASH_MAX = 0x1b -+ IFLA_BR_MCAST_LAST_MEMBER_CNT = 0x1c -+ IFLA_BR_MCAST_STARTUP_QUERY_CNT = 0x1d -+ IFLA_BR_MCAST_LAST_MEMBER_INTVL = 0x1e -+ IFLA_BR_MCAST_MEMBERSHIP_INTVL = 0x1f -+ IFLA_BR_MCAST_QUERIER_INTVL = 0x20 -+ IFLA_BR_MCAST_QUERY_INTVL = 0x21 -+ IFLA_BR_MCAST_QUERY_RESPONSE_INTVL = 0x22 -+ IFLA_BR_MCAST_STARTUP_QUERY_INTVL = 0x23 -+ IFLA_BR_NF_CALL_IPTABLES = 0x24 -+ IFLA_BR_NF_CALL_IP6TABLES = 0x25 -+ IFLA_BR_NF_CALL_ARPTABLES = 0x26 -+ IFLA_BR_VLAN_DEFAULT_PVID = 0x27 -+ IFLA_BR_PAD = 0x28 -+ IFLA_BR_VLAN_STATS_ENABLED = 0x29 -+ IFLA_BR_MCAST_STATS_ENABLED = 0x2a -+ IFLA_BR_MCAST_IGMP_VERSION = 0x2b -+ IFLA_BR_MCAST_MLD_VERSION = 0x2c -+ IFLA_BR_VLAN_STATS_PER_PORT = 0x2d -+ IFLA_BR_MULTI_BOOLOPT = 0x2e -+ IFLA_BRPORT_UNSPEC = 0x0 -+ IFLA_BRPORT_STATE = 0x1 -+ IFLA_BRPORT_PRIORITY = 0x2 -+ IFLA_BRPORT_COST = 0x3 -+ IFLA_BRPORT_MODE = 0x4 -+ IFLA_BRPORT_GUARD = 0x5 -+ IFLA_BRPORT_PROTECT = 0x6 -+ IFLA_BRPORT_FAST_LEAVE = 0x7 -+ IFLA_BRPORT_LEARNING = 0x8 -+ IFLA_BRPORT_UNICAST_FLOOD = 0x9 -+ IFLA_BRPORT_PROXYARP = 0xa -+ IFLA_BRPORT_LEARNING_SYNC = 0xb -+ IFLA_BRPORT_PROXYARP_WIFI = 0xc -+ IFLA_BRPORT_ROOT_ID = 0xd -+ IFLA_BRPORT_BRIDGE_ID = 0xe -+ IFLA_BRPORT_DESIGNATED_PORT = 0xf -+ IFLA_BRPORT_DESIGNATED_COST = 0x10 -+ IFLA_BRPORT_ID = 0x11 -+ IFLA_BRPORT_NO = 0x12 -+ IFLA_BRPORT_TOPOLOGY_CHANGE_ACK = 0x13 -+ IFLA_BRPORT_CONFIG_PENDING = 0x14 -+ IFLA_BRPORT_MESSAGE_AGE_TIMER = 0x15 -+ IFLA_BRPORT_FORWARD_DELAY_TIMER = 0x16 -+ IFLA_BRPORT_HOLD_TIMER = 0x17 -+ IFLA_BRPORT_FLUSH = 0x18 -+ IFLA_BRPORT_MULTICAST_ROUTER = 0x19 -+ IFLA_BRPORT_PAD = 0x1a -+ IFLA_BRPORT_MCAST_FLOOD = 0x1b -+ IFLA_BRPORT_MCAST_TO_UCAST = 0x1c -+ IFLA_BRPORT_VLAN_TUNNEL = 0x1d -+ IFLA_BRPORT_BCAST_FLOOD = 0x1e -+ IFLA_BRPORT_GROUP_FWD_MASK = 0x1f -+ IFLA_BRPORT_NEIGH_SUPPRESS = 0x20 -+ IFLA_BRPORT_ISOLATED = 0x21 -+ IFLA_BRPORT_BACKUP_PORT = 0x22 -+ IFLA_BRPORT_MRP_RING_OPEN = 0x23 -+ IFLA_BRPORT_MRP_IN_OPEN = 0x24 -+ IFLA_INFO_UNSPEC = 0x0 -+ IFLA_INFO_KIND = 0x1 -+ IFLA_INFO_DATA = 0x2 -+ IFLA_INFO_XSTATS = 0x3 -+ IFLA_INFO_SLAVE_KIND = 0x4 -+ IFLA_INFO_SLAVE_DATA = 0x5 -+ IFLA_VLAN_UNSPEC = 0x0 -+ IFLA_VLAN_ID = 0x1 -+ IFLA_VLAN_FLAGS = 0x2 -+ IFLA_VLAN_EGRESS_QOS = 0x3 -+ IFLA_VLAN_INGRESS_QOS = 0x4 -+ IFLA_VLAN_PROTOCOL = 0x5 -+ IFLA_VLAN_QOS_UNSPEC = 0x0 -+ IFLA_VLAN_QOS_MAPPING = 0x1 -+ IFLA_MACVLAN_UNSPEC = 0x0 -+ IFLA_MACVLAN_MODE = 0x1 -+ IFLA_MACVLAN_FLAGS = 0x2 -+ IFLA_MACVLAN_MACADDR_MODE = 0x3 -+ IFLA_MACVLAN_MACADDR = 0x4 -+ IFLA_MACVLAN_MACADDR_DATA = 0x5 -+ IFLA_MACVLAN_MACADDR_COUNT = 0x6 -+ IFLA_VRF_UNSPEC = 0x0 -+ IFLA_VRF_TABLE = 0x1 -+ IFLA_VRF_PORT_UNSPEC = 0x0 -+ IFLA_VRF_PORT_TABLE = 0x1 -+ IFLA_MACSEC_UNSPEC = 0x0 -+ IFLA_MACSEC_SCI = 0x1 -+ IFLA_MACSEC_PORT = 0x2 -+ IFLA_MACSEC_ICV_LEN = 0x3 -+ IFLA_MACSEC_CIPHER_SUITE = 0x4 -+ IFLA_MACSEC_WINDOW = 0x5 -+ IFLA_MACSEC_ENCODING_SA = 0x6 -+ IFLA_MACSEC_ENCRYPT = 0x7 -+ IFLA_MACSEC_PROTECT = 0x8 -+ IFLA_MACSEC_INC_SCI = 0x9 -+ IFLA_MACSEC_ES = 0xa -+ IFLA_MACSEC_SCB = 0xb -+ IFLA_MACSEC_REPLAY_PROTECT = 0xc -+ IFLA_MACSEC_VALIDATION = 0xd -+ IFLA_MACSEC_PAD = 0xe -+ IFLA_MACSEC_OFFLOAD = 0xf -+ IFLA_XFRM_UNSPEC = 0x0 -+ IFLA_XFRM_LINK = 0x1 -+ IFLA_XFRM_IF_ID = 0x2 -+ IFLA_IPVLAN_UNSPEC = 0x0 -+ IFLA_IPVLAN_MODE = 0x1 -+ IFLA_IPVLAN_FLAGS = 0x2 -+ IFLA_VXLAN_UNSPEC = 0x0 -+ IFLA_VXLAN_ID = 0x1 -+ IFLA_VXLAN_GROUP = 0x2 -+ IFLA_VXLAN_LINK = 0x3 -+ IFLA_VXLAN_LOCAL = 0x4 -+ IFLA_VXLAN_TTL = 0x5 -+ IFLA_VXLAN_TOS = 0x6 -+ IFLA_VXLAN_LEARNING = 0x7 -+ IFLA_VXLAN_AGEING = 0x8 -+ IFLA_VXLAN_LIMIT = 0x9 -+ IFLA_VXLAN_PORT_RANGE = 0xa -+ IFLA_VXLAN_PROXY = 0xb -+ IFLA_VXLAN_RSC = 0xc -+ IFLA_VXLAN_L2MISS = 0xd -+ IFLA_VXLAN_L3MISS = 0xe -+ IFLA_VXLAN_PORT = 0xf -+ IFLA_VXLAN_GROUP6 = 0x10 -+ IFLA_VXLAN_LOCAL6 = 0x11 -+ IFLA_VXLAN_UDP_CSUM = 0x12 -+ IFLA_VXLAN_UDP_ZERO_CSUM6_TX = 0x13 -+ IFLA_VXLAN_UDP_ZERO_CSUM6_RX = 0x14 -+ IFLA_VXLAN_REMCSUM_TX = 0x15 -+ IFLA_VXLAN_REMCSUM_RX = 0x16 -+ IFLA_VXLAN_GBP = 0x17 -+ IFLA_VXLAN_REMCSUM_NOPARTIAL = 0x18 -+ IFLA_VXLAN_COLLECT_METADATA = 0x19 -+ IFLA_VXLAN_LABEL = 0x1a -+ IFLA_VXLAN_GPE = 0x1b -+ IFLA_VXLAN_TTL_INHERIT = 0x1c -+ IFLA_VXLAN_DF = 0x1d -+ IFLA_GENEVE_UNSPEC = 0x0 -+ IFLA_GENEVE_ID = 0x1 -+ IFLA_GENEVE_REMOTE = 0x2 -+ IFLA_GENEVE_TTL = 0x3 -+ IFLA_GENEVE_TOS = 0x4 -+ IFLA_GENEVE_PORT = 0x5 -+ IFLA_GENEVE_COLLECT_METADATA = 0x6 -+ IFLA_GENEVE_REMOTE6 = 0x7 -+ IFLA_GENEVE_UDP_CSUM = 0x8 -+ IFLA_GENEVE_UDP_ZERO_CSUM6_TX = 0x9 -+ IFLA_GENEVE_UDP_ZERO_CSUM6_RX = 0xa -+ IFLA_GENEVE_LABEL = 0xb -+ IFLA_GENEVE_TTL_INHERIT = 0xc -+ IFLA_GENEVE_DF = 0xd -+ IFLA_BAREUDP_UNSPEC = 0x0 -+ IFLA_BAREUDP_PORT = 0x1 -+ IFLA_BAREUDP_ETHERTYPE = 0x2 -+ IFLA_BAREUDP_SRCPORT_MIN = 0x3 -+ IFLA_BAREUDP_MULTIPROTO_MODE = 0x4 -+ IFLA_PPP_UNSPEC = 0x0 -+ IFLA_PPP_DEV_FD = 0x1 -+ IFLA_GTP_UNSPEC = 0x0 -+ IFLA_GTP_FD0 = 0x1 -+ IFLA_GTP_FD1 = 0x2 -+ IFLA_GTP_PDP_HASHSIZE = 0x3 -+ IFLA_GTP_ROLE = 0x4 -+ IFLA_BOND_UNSPEC = 0x0 -+ IFLA_BOND_MODE = 0x1 -+ IFLA_BOND_ACTIVE_SLAVE = 0x2 -+ IFLA_BOND_MIIMON = 0x3 -+ IFLA_BOND_UPDELAY = 0x4 -+ IFLA_BOND_DOWNDELAY = 0x5 -+ IFLA_BOND_USE_CARRIER = 0x6 -+ IFLA_BOND_ARP_INTERVAL = 0x7 -+ IFLA_BOND_ARP_IP_TARGET = 0x8 -+ IFLA_BOND_ARP_VALIDATE = 0x9 -+ IFLA_BOND_ARP_ALL_TARGETS = 0xa -+ IFLA_BOND_PRIMARY = 0xb -+ IFLA_BOND_PRIMARY_RESELECT = 0xc -+ IFLA_BOND_FAIL_OVER_MAC = 0xd -+ IFLA_BOND_XMIT_HASH_POLICY = 0xe -+ IFLA_BOND_RESEND_IGMP = 0xf -+ IFLA_BOND_NUM_PEER_NOTIF = 0x10 -+ IFLA_BOND_ALL_SLAVES_ACTIVE = 0x11 -+ IFLA_BOND_MIN_LINKS = 0x12 -+ IFLA_BOND_LP_INTERVAL = 0x13 -+ IFLA_BOND_PACKETS_PER_SLAVE = 0x14 -+ IFLA_BOND_AD_LACP_RATE = 0x15 -+ IFLA_BOND_AD_SELECT = 0x16 -+ IFLA_BOND_AD_INFO = 0x17 -+ IFLA_BOND_AD_ACTOR_SYS_PRIO = 0x18 -+ IFLA_BOND_AD_USER_PORT_KEY = 0x19 -+ IFLA_BOND_AD_ACTOR_SYSTEM = 0x1a -+ IFLA_BOND_TLB_DYNAMIC_LB = 0x1b -+ IFLA_BOND_PEER_NOTIF_DELAY = 0x1c -+ IFLA_BOND_AD_INFO_UNSPEC = 0x0 -+ IFLA_BOND_AD_INFO_AGGREGATOR = 0x1 -+ IFLA_BOND_AD_INFO_NUM_PORTS = 0x2 -+ IFLA_BOND_AD_INFO_ACTOR_KEY = 0x3 -+ IFLA_BOND_AD_INFO_PARTNER_KEY = 0x4 -+ IFLA_BOND_AD_INFO_PARTNER_MAC = 0x5 -+ IFLA_BOND_SLAVE_UNSPEC = 0x0 -+ IFLA_BOND_SLAVE_STATE = 0x1 -+ IFLA_BOND_SLAVE_MII_STATUS = 0x2 -+ IFLA_BOND_SLAVE_LINK_FAILURE_COUNT = 0x3 -+ IFLA_BOND_SLAVE_PERM_HWADDR = 0x4 -+ IFLA_BOND_SLAVE_QUEUE_ID = 0x5 -+ IFLA_BOND_SLAVE_AD_AGGREGATOR_ID = 0x6 -+ IFLA_BOND_SLAVE_AD_ACTOR_OPER_PORT_STATE = 0x7 -+ IFLA_BOND_SLAVE_AD_PARTNER_OPER_PORT_STATE = 0x8 -+ IFLA_VF_INFO_UNSPEC = 0x0 -+ IFLA_VF_INFO = 0x1 -+ IFLA_VF_UNSPEC = 0x0 -+ IFLA_VF_MAC = 0x1 -+ IFLA_VF_VLAN = 0x2 -+ IFLA_VF_TX_RATE = 0x3 -+ IFLA_VF_SPOOFCHK = 0x4 -+ IFLA_VF_LINK_STATE = 0x5 -+ IFLA_VF_RATE = 0x6 -+ IFLA_VF_RSS_QUERY_EN = 0x7 -+ IFLA_VF_STATS = 0x8 -+ IFLA_VF_TRUST = 0x9 -+ IFLA_VF_IB_NODE_GUID = 0xa -+ IFLA_VF_IB_PORT_GUID = 0xb -+ IFLA_VF_VLAN_LIST = 0xc -+ IFLA_VF_BROADCAST = 0xd -+ IFLA_VF_VLAN_INFO_UNSPEC = 0x0 -+ IFLA_VF_VLAN_INFO = 0x1 -+ IFLA_VF_LINK_STATE_AUTO = 0x0 -+ IFLA_VF_LINK_STATE_ENABLE = 0x1 -+ IFLA_VF_LINK_STATE_DISABLE = 0x2 -+ IFLA_VF_STATS_RX_PACKETS = 0x0 -+ IFLA_VF_STATS_TX_PACKETS = 0x1 -+ IFLA_VF_STATS_RX_BYTES = 0x2 -+ IFLA_VF_STATS_TX_BYTES = 0x3 -+ IFLA_VF_STATS_BROADCAST = 0x4 -+ IFLA_VF_STATS_MULTICAST = 0x5 -+ IFLA_VF_STATS_PAD = 0x6 -+ IFLA_VF_STATS_RX_DROPPED = 0x7 -+ IFLA_VF_STATS_TX_DROPPED = 0x8 -+ IFLA_VF_PORT_UNSPEC = 0x0 -+ IFLA_VF_PORT = 0x1 -+ IFLA_PORT_UNSPEC = 0x0 -+ IFLA_PORT_VF = 0x1 -+ IFLA_PORT_PROFILE = 0x2 -+ IFLA_PORT_VSI_TYPE = 0x3 -+ IFLA_PORT_INSTANCE_UUID = 0x4 -+ IFLA_PORT_HOST_UUID = 0x5 -+ IFLA_PORT_REQUEST = 0x6 -+ IFLA_PORT_RESPONSE = 0x7 -+ IFLA_IPOIB_UNSPEC = 0x0 -+ IFLA_IPOIB_PKEY = 0x1 -+ IFLA_IPOIB_MODE = 0x2 -+ IFLA_IPOIB_UMCAST = 0x3 -+ IFLA_HSR_UNSPEC = 0x0 -+ IFLA_HSR_SLAVE1 = 0x1 -+ IFLA_HSR_SLAVE2 = 0x2 -+ IFLA_HSR_MULTICAST_SPEC = 0x3 -+ IFLA_HSR_SUPERVISION_ADDR = 0x4 -+ IFLA_HSR_SEQ_NR = 0x5 -+ IFLA_HSR_VERSION = 0x6 -+ IFLA_HSR_PROTOCOL = 0x7 -+ IFLA_STATS_UNSPEC = 0x0 -+ IFLA_STATS_LINK_64 = 0x1 -+ IFLA_STATS_LINK_XSTATS = 0x2 -+ IFLA_STATS_LINK_XSTATS_SLAVE = 0x3 -+ IFLA_STATS_LINK_OFFLOAD_XSTATS = 0x4 -+ IFLA_STATS_AF_SPEC = 0x5 -+ IFLA_OFFLOAD_XSTATS_UNSPEC = 0x0 -+ IFLA_OFFLOAD_XSTATS_CPU_HIT = 0x1 -+ IFLA_XDP_UNSPEC = 0x0 -+ IFLA_XDP_FD = 0x1 -+ IFLA_XDP_ATTACHED = 0x2 -+ IFLA_XDP_FLAGS = 0x3 -+ IFLA_XDP_PROG_ID = 0x4 -+ IFLA_XDP_DRV_PROG_ID = 0x5 -+ IFLA_XDP_SKB_PROG_ID = 0x6 -+ IFLA_XDP_HW_PROG_ID = 0x7 -+ IFLA_XDP_EXPECTED_FD = 0x8 -+ IFLA_EVENT_NONE = 0x0 -+ IFLA_EVENT_REBOOT = 0x1 -+ IFLA_EVENT_FEATURES = 0x2 -+ IFLA_EVENT_BONDING_FAILOVER = 0x3 -+ IFLA_EVENT_NOTIFY_PEERS = 0x4 -+ IFLA_EVENT_IGMP_RESEND = 0x5 -+ IFLA_EVENT_BONDING_OPTIONS = 0x6 -+ IFLA_TUN_UNSPEC = 0x0 -+ IFLA_TUN_OWNER = 0x1 -+ IFLA_TUN_GROUP = 0x2 -+ IFLA_TUN_TYPE = 0x3 -+ IFLA_TUN_PI = 0x4 -+ IFLA_TUN_VNET_HDR = 0x5 -+ IFLA_TUN_PERSIST = 0x6 -+ IFLA_TUN_MULTI_QUEUE = 0x7 -+ IFLA_TUN_NUM_QUEUES = 0x8 -+ IFLA_TUN_NUM_DISABLED_QUEUES = 0x9 -+ IFLA_RMNET_UNSPEC = 0x0 -+ IFLA_RMNET_MUX_ID = 0x1 -+ IFLA_RMNET_FLAGS = 0x2 -+) -+ - const ( - NF_INET_PRE_ROUTING = 0x0 - NF_INET_LOCAL_IN = 0x1 -@@ -1237,7 +1819,8 @@ const ( - - const ( - NF_NETDEV_INGRESS = 0x0 -- NF_NETDEV_NUMHOOKS = 0x1 -+ NF_NETDEV_EGRESS = 0x1 -+ NF_NETDEV_NUMHOOKS = 0x2 - ) - - const ( -@@ -1252,6 +1835,8 @@ const ( - NFPROTO_NUMPROTO = 0xd - ) - -+const SO_ORIGINAL_DST = 0x50 -+ - type Nfgenmsg struct { - Nfgen_family uint8 - Version uint8 -@@ -1313,7 +1898,7 @@ const ( - NFT_MSG_DELOBJ = 0x14 - NFT_MSG_GETOBJ_RESET = 0x15 - NFT_MSG_MAX = 0x19 -- NFTA_LIST_UNPEC = 0x0 -+ NFTA_LIST_UNSPEC = 0x0 - NFTA_LIST_ELEM = 0x1 - NFTA_HOOK_UNSPEC = 0x0 - NFTA_HOOK_HOOKNUM = 0x1 -@@ -1684,6 +2269,21 @@ const ( - NFT_NG_RANDOM = 0x1 - ) - -+const ( -+ NFTA_TARGET_UNSPEC = 0x0 -+ NFTA_TARGET_NAME = 0x1 -+ NFTA_TARGET_REV = 0x2 -+ NFTA_TARGET_INFO = 0x3 -+ NFTA_MATCH_UNSPEC = 0x0 -+ NFTA_MATCH_NAME = 0x1 -+ NFTA_MATCH_REV = 0x2 -+ NFTA_MATCH_INFO = 0x3 -+ NFTA_COMPAT_UNSPEC = 0x0 -+ NFTA_COMPAT_NAME = 0x1 -+ NFTA_COMPAT_REV = 0x2 -+ NFTA_COMPAT_TYPE = 0x3 -+) -+ - type RTCTime struct { - Sec int32 - Min int32 -@@ -1716,10 +2316,12 @@ const ( - ) - - const ( -- NETNSA_NONE = 0x0 -- NETNSA_NSID = 0x1 -- NETNSA_PID = 0x2 -- NETNSA_FD = 0x3 -+ NETNSA_NONE = 0x0 -+ NETNSA_NSID = 0x1 -+ NETNSA_PID = 0x2 -+ NETNSA_FD = 0x3 -+ NETNSA_TARGET_NSID = 0x4 -+ NETNSA_CURRENT_NSID = 0x5 - ) - - type XDPRingOffset struct { -@@ -1737,9 +2339,12 @@ type XDPMmapOffsets struct { - } - - type XDPStatistics struct { -- Rx_dropped uint64 -- Rx_invalid_descs uint64 -- Tx_invalid_descs uint64 -+ Rx_dropped uint64 -+ Rx_invalid_descs uint64 -+ Tx_invalid_descs uint64 -+ Rx_ring_full uint64 -+ Rx_fill_ring_empty_descs uint64 -+ Tx_ring_empty_descs uint64 - } - - type XDPDesc struct { -@@ -1797,8 +2402,8 @@ const ( - SOF_TIMESTAMPING_OPT_PKTINFO = 0x2000 - SOF_TIMESTAMPING_OPT_TX_SWHW = 0x4000 - -- SOF_TIMESTAMPING_LAST = 0x4000 -- SOF_TIMESTAMPING_MASK = 0x7fff -+ SOF_TIMESTAMPING_LAST = 0x8000 -+ SOF_TIMESTAMPING_MASK = 0xffff - - SCM_TSTAMP_SND = 0x0 - SCM_TSTAMP_SCHED = 0x1 -@@ -1866,175 +2471,309 @@ const ( - ) - - const ( -- BPF_REG_0 = 0x0 -- BPF_REG_1 = 0x1 -- BPF_REG_2 = 0x2 -- BPF_REG_3 = 0x3 -- BPF_REG_4 = 0x4 -- BPF_REG_5 = 0x5 -- BPF_REG_6 = 0x6 -- BPF_REG_7 = 0x7 -- BPF_REG_8 = 0x8 -- BPF_REG_9 = 0x9 -- BPF_REG_10 = 0xa -- BPF_MAP_CREATE = 0x0 -- BPF_MAP_LOOKUP_ELEM = 0x1 -- BPF_MAP_UPDATE_ELEM = 0x2 -- BPF_MAP_DELETE_ELEM = 0x3 -- BPF_MAP_GET_NEXT_KEY = 0x4 -- BPF_PROG_LOAD = 0x5 -- BPF_OBJ_PIN = 0x6 -- BPF_OBJ_GET = 0x7 -- BPF_PROG_ATTACH = 0x8 -- BPF_PROG_DETACH = 0x9 -- BPF_PROG_TEST_RUN = 0xa -- BPF_PROG_GET_NEXT_ID = 0xb -- BPF_MAP_GET_NEXT_ID = 0xc -- BPF_PROG_GET_FD_BY_ID = 0xd -- BPF_MAP_GET_FD_BY_ID = 0xe -- BPF_OBJ_GET_INFO_BY_FD = 0xf -- BPF_PROG_QUERY = 0x10 -- BPF_RAW_TRACEPOINT_OPEN = 0x11 -- BPF_BTF_LOAD = 0x12 -- BPF_BTF_GET_FD_BY_ID = 0x13 -- BPF_TASK_FD_QUERY = 0x14 -- BPF_MAP_LOOKUP_AND_DELETE_ELEM = 0x15 -- BPF_MAP_FREEZE = 0x16 -- BPF_BTF_GET_NEXT_ID = 0x17 -- BPF_MAP_TYPE_UNSPEC = 0x0 -- BPF_MAP_TYPE_HASH = 0x1 -- BPF_MAP_TYPE_ARRAY = 0x2 -- BPF_MAP_TYPE_PROG_ARRAY = 0x3 -- BPF_MAP_TYPE_PERF_EVENT_ARRAY = 0x4 -- BPF_MAP_TYPE_PERCPU_HASH = 0x5 -- BPF_MAP_TYPE_PERCPU_ARRAY = 0x6 -- BPF_MAP_TYPE_STACK_TRACE = 0x7 -- BPF_MAP_TYPE_CGROUP_ARRAY = 0x8 -- BPF_MAP_TYPE_LRU_HASH = 0x9 -- BPF_MAP_TYPE_LRU_PERCPU_HASH = 0xa -- BPF_MAP_TYPE_LPM_TRIE = 0xb -- BPF_MAP_TYPE_ARRAY_OF_MAPS = 0xc -- BPF_MAP_TYPE_HASH_OF_MAPS = 0xd -- BPF_MAP_TYPE_DEVMAP = 0xe -- BPF_MAP_TYPE_SOCKMAP = 0xf -- BPF_MAP_TYPE_CPUMAP = 0x10 -- BPF_MAP_TYPE_XSKMAP = 0x11 -- BPF_MAP_TYPE_SOCKHASH = 0x12 -- BPF_MAP_TYPE_CGROUP_STORAGE = 0x13 -- BPF_MAP_TYPE_REUSEPORT_SOCKARRAY = 0x14 -- BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE = 0x15 -- BPF_MAP_TYPE_QUEUE = 0x16 -- BPF_MAP_TYPE_STACK = 0x17 -- BPF_MAP_TYPE_SK_STORAGE = 0x18 -- BPF_MAP_TYPE_DEVMAP_HASH = 0x19 -- BPF_PROG_TYPE_UNSPEC = 0x0 -- BPF_PROG_TYPE_SOCKET_FILTER = 0x1 -- BPF_PROG_TYPE_KPROBE = 0x2 -- BPF_PROG_TYPE_SCHED_CLS = 0x3 -- BPF_PROG_TYPE_SCHED_ACT = 0x4 -- BPF_PROG_TYPE_TRACEPOINT = 0x5 -- BPF_PROG_TYPE_XDP = 0x6 -- BPF_PROG_TYPE_PERF_EVENT = 0x7 -- BPF_PROG_TYPE_CGROUP_SKB = 0x8 -- BPF_PROG_TYPE_CGROUP_SOCK = 0x9 -- BPF_PROG_TYPE_LWT_IN = 0xa -- BPF_PROG_TYPE_LWT_OUT = 0xb -- BPF_PROG_TYPE_LWT_XMIT = 0xc -- BPF_PROG_TYPE_SOCK_OPS = 0xd -- BPF_PROG_TYPE_SK_SKB = 0xe -- BPF_PROG_TYPE_CGROUP_DEVICE = 0xf -- BPF_PROG_TYPE_SK_MSG = 0x10 -- BPF_PROG_TYPE_RAW_TRACEPOINT = 0x11 -- BPF_PROG_TYPE_CGROUP_SOCK_ADDR = 0x12 -- BPF_PROG_TYPE_LWT_SEG6LOCAL = 0x13 -- BPF_PROG_TYPE_LIRC_MODE2 = 0x14 -- BPF_PROG_TYPE_SK_REUSEPORT = 0x15 -- BPF_PROG_TYPE_FLOW_DISSECTOR = 0x16 -- BPF_PROG_TYPE_CGROUP_SYSCTL = 0x17 -- BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE = 0x18 -- BPF_PROG_TYPE_CGROUP_SOCKOPT = 0x19 -- BPF_PROG_TYPE_TRACING = 0x1a -- BPF_CGROUP_INET_INGRESS = 0x0 -- BPF_CGROUP_INET_EGRESS = 0x1 -- BPF_CGROUP_INET_SOCK_CREATE = 0x2 -- BPF_CGROUP_SOCK_OPS = 0x3 -- BPF_SK_SKB_STREAM_PARSER = 0x4 -- BPF_SK_SKB_STREAM_VERDICT = 0x5 -- BPF_CGROUP_DEVICE = 0x6 -- BPF_SK_MSG_VERDICT = 0x7 -- BPF_CGROUP_INET4_BIND = 0x8 -- BPF_CGROUP_INET6_BIND = 0x9 -- BPF_CGROUP_INET4_CONNECT = 0xa -- BPF_CGROUP_INET6_CONNECT = 0xb -- BPF_CGROUP_INET4_POST_BIND = 0xc -- BPF_CGROUP_INET6_POST_BIND = 0xd -- BPF_CGROUP_UDP4_SENDMSG = 0xe -- BPF_CGROUP_UDP6_SENDMSG = 0xf -- BPF_LIRC_MODE2 = 0x10 -- BPF_FLOW_DISSECTOR = 0x11 -- BPF_CGROUP_SYSCTL = 0x12 -- BPF_CGROUP_UDP4_RECVMSG = 0x13 -- BPF_CGROUP_UDP6_RECVMSG = 0x14 -- BPF_CGROUP_GETSOCKOPT = 0x15 -- BPF_CGROUP_SETSOCKOPT = 0x16 -- BPF_TRACE_RAW_TP = 0x17 -- BPF_TRACE_FENTRY = 0x18 -- BPF_TRACE_FEXIT = 0x19 -- BPF_STACK_BUILD_ID_EMPTY = 0x0 -- BPF_STACK_BUILD_ID_VALID = 0x1 -- BPF_STACK_BUILD_ID_IP = 0x2 -- BPF_ADJ_ROOM_NET = 0x0 -- BPF_ADJ_ROOM_MAC = 0x1 -- BPF_HDR_START_MAC = 0x0 -- BPF_HDR_START_NET = 0x1 -- BPF_LWT_ENCAP_SEG6 = 0x0 -- BPF_LWT_ENCAP_SEG6_INLINE = 0x1 -- BPF_LWT_ENCAP_IP = 0x2 -- BPF_OK = 0x0 -- BPF_DROP = 0x2 -- BPF_REDIRECT = 0x7 -- BPF_LWT_REROUTE = 0x80 -- BPF_SOCK_OPS_VOID = 0x0 -- BPF_SOCK_OPS_TIMEOUT_INIT = 0x1 -- BPF_SOCK_OPS_RWND_INIT = 0x2 -- BPF_SOCK_OPS_TCP_CONNECT_CB = 0x3 -- BPF_SOCK_OPS_ACTIVE_ESTABLISHED_CB = 0x4 -- BPF_SOCK_OPS_PASSIVE_ESTABLISHED_CB = 0x5 -- BPF_SOCK_OPS_NEEDS_ECN = 0x6 -- BPF_SOCK_OPS_BASE_RTT = 0x7 -- BPF_SOCK_OPS_RTO_CB = 0x8 -- BPF_SOCK_OPS_RETRANS_CB = 0x9 -- BPF_SOCK_OPS_STATE_CB = 0xa -- BPF_SOCK_OPS_TCP_LISTEN_CB = 0xb -- BPF_SOCK_OPS_RTT_CB = 0xc -- BPF_TCP_ESTABLISHED = 0x1 -- BPF_TCP_SYN_SENT = 0x2 -- BPF_TCP_SYN_RECV = 0x3 -- BPF_TCP_FIN_WAIT1 = 0x4 -- BPF_TCP_FIN_WAIT2 = 0x5 -- BPF_TCP_TIME_WAIT = 0x6 -- BPF_TCP_CLOSE = 0x7 -- BPF_TCP_CLOSE_WAIT = 0x8 -- BPF_TCP_LAST_ACK = 0x9 -- BPF_TCP_LISTEN = 0xa -- BPF_TCP_CLOSING = 0xb -- BPF_TCP_NEW_SYN_RECV = 0xc -- BPF_TCP_MAX_STATES = 0xd -- BPF_FIB_LKUP_RET_SUCCESS = 0x0 -- BPF_FIB_LKUP_RET_BLACKHOLE = 0x1 -- BPF_FIB_LKUP_RET_UNREACHABLE = 0x2 -- BPF_FIB_LKUP_RET_PROHIBIT = 0x3 -- BPF_FIB_LKUP_RET_NOT_FWDED = 0x4 -- BPF_FIB_LKUP_RET_FWD_DISABLED = 0x5 -- BPF_FIB_LKUP_RET_UNSUPP_LWT = 0x6 -- BPF_FIB_LKUP_RET_NO_NEIGH = 0x7 -- BPF_FIB_LKUP_RET_FRAG_NEEDED = 0x8 -- BPF_FD_TYPE_RAW_TRACEPOINT = 0x0 -- BPF_FD_TYPE_TRACEPOINT = 0x1 -- BPF_FD_TYPE_KPROBE = 0x2 -- BPF_FD_TYPE_KRETPROBE = 0x3 -- BPF_FD_TYPE_UPROBE = 0x4 -- BPF_FD_TYPE_URETPROBE = 0x5 -+ BPF_REG_0 = 0x0 -+ BPF_REG_1 = 0x1 -+ BPF_REG_2 = 0x2 -+ BPF_REG_3 = 0x3 -+ BPF_REG_4 = 0x4 -+ BPF_REG_5 = 0x5 -+ BPF_REG_6 = 0x6 -+ BPF_REG_7 = 0x7 -+ BPF_REG_8 = 0x8 -+ BPF_REG_9 = 0x9 -+ BPF_REG_10 = 0xa -+ BPF_MAP_CREATE = 0x0 -+ BPF_MAP_LOOKUP_ELEM = 0x1 -+ BPF_MAP_UPDATE_ELEM = 0x2 -+ BPF_MAP_DELETE_ELEM = 0x3 -+ BPF_MAP_GET_NEXT_KEY = 0x4 -+ BPF_PROG_LOAD = 0x5 -+ BPF_OBJ_PIN = 0x6 -+ BPF_OBJ_GET = 0x7 -+ BPF_PROG_ATTACH = 0x8 -+ BPF_PROG_DETACH = 0x9 -+ BPF_PROG_TEST_RUN = 0xa -+ BPF_PROG_GET_NEXT_ID = 0xb -+ BPF_MAP_GET_NEXT_ID = 0xc -+ BPF_PROG_GET_FD_BY_ID = 0xd -+ BPF_MAP_GET_FD_BY_ID = 0xe -+ BPF_OBJ_GET_INFO_BY_FD = 0xf -+ BPF_PROG_QUERY = 0x10 -+ BPF_RAW_TRACEPOINT_OPEN = 0x11 -+ BPF_BTF_LOAD = 0x12 -+ BPF_BTF_GET_FD_BY_ID = 0x13 -+ BPF_TASK_FD_QUERY = 0x14 -+ BPF_MAP_LOOKUP_AND_DELETE_ELEM = 0x15 -+ BPF_MAP_FREEZE = 0x16 -+ BPF_BTF_GET_NEXT_ID = 0x17 -+ BPF_MAP_LOOKUP_BATCH = 0x18 -+ BPF_MAP_LOOKUP_AND_DELETE_BATCH = 0x19 -+ BPF_MAP_UPDATE_BATCH = 0x1a -+ BPF_MAP_DELETE_BATCH = 0x1b -+ BPF_LINK_CREATE = 0x1c -+ BPF_LINK_UPDATE = 0x1d -+ BPF_LINK_GET_FD_BY_ID = 0x1e -+ BPF_LINK_GET_NEXT_ID = 0x1f -+ BPF_ENABLE_STATS = 0x20 -+ BPF_ITER_CREATE = 0x21 -+ BPF_LINK_DETACH = 0x22 -+ BPF_PROG_BIND_MAP = 0x23 -+ BPF_MAP_TYPE_UNSPEC = 0x0 -+ BPF_MAP_TYPE_HASH = 0x1 -+ BPF_MAP_TYPE_ARRAY = 0x2 -+ BPF_MAP_TYPE_PROG_ARRAY = 0x3 -+ BPF_MAP_TYPE_PERF_EVENT_ARRAY = 0x4 -+ BPF_MAP_TYPE_PERCPU_HASH = 0x5 -+ BPF_MAP_TYPE_PERCPU_ARRAY = 0x6 -+ BPF_MAP_TYPE_STACK_TRACE = 0x7 -+ BPF_MAP_TYPE_CGROUP_ARRAY = 0x8 -+ BPF_MAP_TYPE_LRU_HASH = 0x9 -+ BPF_MAP_TYPE_LRU_PERCPU_HASH = 0xa -+ BPF_MAP_TYPE_LPM_TRIE = 0xb -+ BPF_MAP_TYPE_ARRAY_OF_MAPS = 0xc -+ BPF_MAP_TYPE_HASH_OF_MAPS = 0xd -+ BPF_MAP_TYPE_DEVMAP = 0xe -+ BPF_MAP_TYPE_SOCKMAP = 0xf -+ BPF_MAP_TYPE_CPUMAP = 0x10 -+ BPF_MAP_TYPE_XSKMAP = 0x11 -+ BPF_MAP_TYPE_SOCKHASH = 0x12 -+ BPF_MAP_TYPE_CGROUP_STORAGE = 0x13 -+ BPF_MAP_TYPE_REUSEPORT_SOCKARRAY = 0x14 -+ BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE = 0x15 -+ BPF_MAP_TYPE_QUEUE = 0x16 -+ BPF_MAP_TYPE_STACK = 0x17 -+ BPF_MAP_TYPE_SK_STORAGE = 0x18 -+ BPF_MAP_TYPE_DEVMAP_HASH = 0x19 -+ BPF_MAP_TYPE_STRUCT_OPS = 0x1a -+ BPF_MAP_TYPE_RINGBUF = 0x1b -+ BPF_MAP_TYPE_INODE_STORAGE = 0x1c -+ BPF_PROG_TYPE_UNSPEC = 0x0 -+ BPF_PROG_TYPE_SOCKET_FILTER = 0x1 -+ BPF_PROG_TYPE_KPROBE = 0x2 -+ BPF_PROG_TYPE_SCHED_CLS = 0x3 -+ BPF_PROG_TYPE_SCHED_ACT = 0x4 -+ BPF_PROG_TYPE_TRACEPOINT = 0x5 -+ BPF_PROG_TYPE_XDP = 0x6 -+ BPF_PROG_TYPE_PERF_EVENT = 0x7 -+ BPF_PROG_TYPE_CGROUP_SKB = 0x8 -+ BPF_PROG_TYPE_CGROUP_SOCK = 0x9 -+ BPF_PROG_TYPE_LWT_IN = 0xa -+ BPF_PROG_TYPE_LWT_OUT = 0xb -+ BPF_PROG_TYPE_LWT_XMIT = 0xc -+ BPF_PROG_TYPE_SOCK_OPS = 0xd -+ BPF_PROG_TYPE_SK_SKB = 0xe -+ BPF_PROG_TYPE_CGROUP_DEVICE = 0xf -+ BPF_PROG_TYPE_SK_MSG = 0x10 -+ BPF_PROG_TYPE_RAW_TRACEPOINT = 0x11 -+ BPF_PROG_TYPE_CGROUP_SOCK_ADDR = 0x12 -+ BPF_PROG_TYPE_LWT_SEG6LOCAL = 0x13 -+ BPF_PROG_TYPE_LIRC_MODE2 = 0x14 -+ BPF_PROG_TYPE_SK_REUSEPORT = 0x15 -+ BPF_PROG_TYPE_FLOW_DISSECTOR = 0x16 -+ BPF_PROG_TYPE_CGROUP_SYSCTL = 0x17 -+ BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE = 0x18 -+ BPF_PROG_TYPE_CGROUP_SOCKOPT = 0x19 -+ BPF_PROG_TYPE_TRACING = 0x1a -+ BPF_PROG_TYPE_STRUCT_OPS = 0x1b -+ BPF_PROG_TYPE_EXT = 0x1c -+ BPF_PROG_TYPE_LSM = 0x1d -+ BPF_PROG_TYPE_SK_LOOKUP = 0x1e -+ BPF_CGROUP_INET_INGRESS = 0x0 -+ BPF_CGROUP_INET_EGRESS = 0x1 -+ BPF_CGROUP_INET_SOCK_CREATE = 0x2 -+ BPF_CGROUP_SOCK_OPS = 0x3 -+ BPF_SK_SKB_STREAM_PARSER = 0x4 -+ BPF_SK_SKB_STREAM_VERDICT = 0x5 -+ BPF_CGROUP_DEVICE = 0x6 -+ BPF_SK_MSG_VERDICT = 0x7 -+ BPF_CGROUP_INET4_BIND = 0x8 -+ BPF_CGROUP_INET6_BIND = 0x9 -+ BPF_CGROUP_INET4_CONNECT = 0xa -+ BPF_CGROUP_INET6_CONNECT = 0xb -+ BPF_CGROUP_INET4_POST_BIND = 0xc -+ BPF_CGROUP_INET6_POST_BIND = 0xd -+ BPF_CGROUP_UDP4_SENDMSG = 0xe -+ BPF_CGROUP_UDP6_SENDMSG = 0xf -+ BPF_LIRC_MODE2 = 0x10 -+ BPF_FLOW_DISSECTOR = 0x11 -+ BPF_CGROUP_SYSCTL = 0x12 -+ BPF_CGROUP_UDP4_RECVMSG = 0x13 -+ BPF_CGROUP_UDP6_RECVMSG = 0x14 -+ BPF_CGROUP_GETSOCKOPT = 0x15 -+ BPF_CGROUP_SETSOCKOPT = 0x16 -+ BPF_TRACE_RAW_TP = 0x17 -+ BPF_TRACE_FENTRY = 0x18 -+ BPF_TRACE_FEXIT = 0x19 -+ BPF_MODIFY_RETURN = 0x1a -+ BPF_LSM_MAC = 0x1b -+ BPF_TRACE_ITER = 0x1c -+ BPF_CGROUP_INET4_GETPEERNAME = 0x1d -+ BPF_CGROUP_INET6_GETPEERNAME = 0x1e -+ BPF_CGROUP_INET4_GETSOCKNAME = 0x1f -+ BPF_CGROUP_INET6_GETSOCKNAME = 0x20 -+ BPF_XDP_DEVMAP = 0x21 -+ BPF_CGROUP_INET_SOCK_RELEASE = 0x22 -+ BPF_XDP_CPUMAP = 0x23 -+ BPF_SK_LOOKUP = 0x24 -+ BPF_XDP = 0x25 -+ BPF_LINK_TYPE_UNSPEC = 0x0 -+ BPF_LINK_TYPE_RAW_TRACEPOINT = 0x1 -+ BPF_LINK_TYPE_TRACING = 0x2 -+ BPF_LINK_TYPE_CGROUP = 0x3 -+ BPF_LINK_TYPE_ITER = 0x4 -+ BPF_LINK_TYPE_NETNS = 0x5 -+ BPF_LINK_TYPE_XDP = 0x6 -+ BPF_ANY = 0x0 -+ BPF_NOEXIST = 0x1 -+ BPF_EXIST = 0x2 -+ BPF_F_LOCK = 0x4 -+ BPF_F_NO_PREALLOC = 0x1 -+ BPF_F_NO_COMMON_LRU = 0x2 -+ BPF_F_NUMA_NODE = 0x4 -+ BPF_F_RDONLY = 0x8 -+ BPF_F_WRONLY = 0x10 -+ BPF_F_STACK_BUILD_ID = 0x20 -+ BPF_F_ZERO_SEED = 0x40 -+ BPF_F_RDONLY_PROG = 0x80 -+ BPF_F_WRONLY_PROG = 0x100 -+ BPF_F_CLONE = 0x200 -+ BPF_F_MMAPABLE = 0x400 -+ BPF_F_PRESERVE_ELEMS = 0x800 -+ BPF_F_INNER_MAP = 0x1000 -+ BPF_STATS_RUN_TIME = 0x0 -+ BPF_STACK_BUILD_ID_EMPTY = 0x0 -+ BPF_STACK_BUILD_ID_VALID = 0x1 -+ BPF_STACK_BUILD_ID_IP = 0x2 -+ BPF_F_RECOMPUTE_CSUM = 0x1 -+ BPF_F_INVALIDATE_HASH = 0x2 -+ BPF_F_HDR_FIELD_MASK = 0xf -+ BPF_F_PSEUDO_HDR = 0x10 -+ BPF_F_MARK_MANGLED_0 = 0x20 -+ BPF_F_MARK_ENFORCE = 0x40 -+ BPF_F_INGRESS = 0x1 -+ BPF_F_TUNINFO_IPV6 = 0x1 -+ BPF_F_SKIP_FIELD_MASK = 0xff -+ BPF_F_USER_STACK = 0x100 -+ BPF_F_FAST_STACK_CMP = 0x200 -+ BPF_F_REUSE_STACKID = 0x400 -+ BPF_F_USER_BUILD_ID = 0x800 -+ BPF_F_ZERO_CSUM_TX = 0x2 -+ BPF_F_DONT_FRAGMENT = 0x4 -+ BPF_F_SEQ_NUMBER = 0x8 -+ BPF_F_INDEX_MASK = 0xffffffff -+ BPF_F_CURRENT_CPU = 0xffffffff -+ BPF_F_CTXLEN_MASK = 0xfffff00000000 -+ BPF_F_CURRENT_NETNS = -0x1 -+ BPF_CSUM_LEVEL_QUERY = 0x0 -+ BPF_CSUM_LEVEL_INC = 0x1 -+ BPF_CSUM_LEVEL_DEC = 0x2 -+ BPF_CSUM_LEVEL_RESET = 0x3 -+ BPF_F_ADJ_ROOM_FIXED_GSO = 0x1 -+ BPF_F_ADJ_ROOM_ENCAP_L3_IPV4 = 0x2 -+ BPF_F_ADJ_ROOM_ENCAP_L3_IPV6 = 0x4 -+ BPF_F_ADJ_ROOM_ENCAP_L4_GRE = 0x8 -+ BPF_F_ADJ_ROOM_ENCAP_L4_UDP = 0x10 -+ BPF_F_ADJ_ROOM_NO_CSUM_RESET = 0x20 -+ BPF_ADJ_ROOM_ENCAP_L2_MASK = 0xff -+ BPF_ADJ_ROOM_ENCAP_L2_SHIFT = 0x38 -+ BPF_F_SYSCTL_BASE_NAME = 0x1 -+ BPF_LOCAL_STORAGE_GET_F_CREATE = 0x1 -+ BPF_SK_STORAGE_GET_F_CREATE = 0x1 -+ BPF_F_GET_BRANCH_RECORDS_SIZE = 0x1 -+ BPF_RB_NO_WAKEUP = 0x1 -+ BPF_RB_FORCE_WAKEUP = 0x2 -+ BPF_RB_AVAIL_DATA = 0x0 -+ BPF_RB_RING_SIZE = 0x1 -+ BPF_RB_CONS_POS = 0x2 -+ BPF_RB_PROD_POS = 0x3 -+ BPF_RINGBUF_BUSY_BIT = 0x80000000 -+ BPF_RINGBUF_DISCARD_BIT = 0x40000000 -+ BPF_RINGBUF_HDR_SZ = 0x8 -+ BPF_SK_LOOKUP_F_REPLACE = 0x1 -+ BPF_SK_LOOKUP_F_NO_REUSEPORT = 0x2 -+ BPF_ADJ_ROOM_NET = 0x0 -+ BPF_ADJ_ROOM_MAC = 0x1 -+ BPF_HDR_START_MAC = 0x0 -+ BPF_HDR_START_NET = 0x1 -+ BPF_LWT_ENCAP_SEG6 = 0x0 -+ BPF_LWT_ENCAP_SEG6_INLINE = 0x1 -+ BPF_LWT_ENCAP_IP = 0x2 -+ BPF_OK = 0x0 -+ BPF_DROP = 0x2 -+ BPF_REDIRECT = 0x7 -+ BPF_LWT_REROUTE = 0x80 -+ BPF_SOCK_OPS_RTO_CB_FLAG = 0x1 -+ BPF_SOCK_OPS_RETRANS_CB_FLAG = 0x2 -+ BPF_SOCK_OPS_STATE_CB_FLAG = 0x4 -+ BPF_SOCK_OPS_RTT_CB_FLAG = 0x8 -+ BPF_SOCK_OPS_PARSE_ALL_HDR_OPT_CB_FLAG = 0x10 -+ BPF_SOCK_OPS_PARSE_UNKNOWN_HDR_OPT_CB_FLAG = 0x20 -+ BPF_SOCK_OPS_WRITE_HDR_OPT_CB_FLAG = 0x40 -+ BPF_SOCK_OPS_ALL_CB_FLAGS = 0x7f -+ BPF_SOCK_OPS_VOID = 0x0 -+ BPF_SOCK_OPS_TIMEOUT_INIT = 0x1 -+ BPF_SOCK_OPS_RWND_INIT = 0x2 -+ BPF_SOCK_OPS_TCP_CONNECT_CB = 0x3 -+ BPF_SOCK_OPS_ACTIVE_ESTABLISHED_CB = 0x4 -+ BPF_SOCK_OPS_PASSIVE_ESTABLISHED_CB = 0x5 -+ BPF_SOCK_OPS_NEEDS_ECN = 0x6 -+ BPF_SOCK_OPS_BASE_RTT = 0x7 -+ BPF_SOCK_OPS_RTO_CB = 0x8 -+ BPF_SOCK_OPS_RETRANS_CB = 0x9 -+ BPF_SOCK_OPS_STATE_CB = 0xa -+ BPF_SOCK_OPS_TCP_LISTEN_CB = 0xb -+ BPF_SOCK_OPS_RTT_CB = 0xc -+ BPF_SOCK_OPS_PARSE_HDR_OPT_CB = 0xd -+ BPF_SOCK_OPS_HDR_OPT_LEN_CB = 0xe -+ BPF_SOCK_OPS_WRITE_HDR_OPT_CB = 0xf -+ BPF_TCP_ESTABLISHED = 0x1 -+ BPF_TCP_SYN_SENT = 0x2 -+ BPF_TCP_SYN_RECV = 0x3 -+ BPF_TCP_FIN_WAIT1 = 0x4 -+ BPF_TCP_FIN_WAIT2 = 0x5 -+ BPF_TCP_TIME_WAIT = 0x6 -+ BPF_TCP_CLOSE = 0x7 -+ BPF_TCP_CLOSE_WAIT = 0x8 -+ BPF_TCP_LAST_ACK = 0x9 -+ BPF_TCP_LISTEN = 0xa -+ BPF_TCP_CLOSING = 0xb -+ BPF_TCP_NEW_SYN_RECV = 0xc -+ BPF_TCP_MAX_STATES = 0xd -+ TCP_BPF_IW = 0x3e9 -+ TCP_BPF_SNDCWND_CLAMP = 0x3ea -+ TCP_BPF_DELACK_MAX = 0x3eb -+ TCP_BPF_RTO_MIN = 0x3ec -+ TCP_BPF_SYN = 0x3ed -+ TCP_BPF_SYN_IP = 0x3ee -+ TCP_BPF_SYN_MAC = 0x3ef -+ BPF_LOAD_HDR_OPT_TCP_SYN = 0x1 -+ BPF_WRITE_HDR_TCP_CURRENT_MSS = 0x1 -+ BPF_WRITE_HDR_TCP_SYNACK_COOKIE = 0x2 -+ BPF_DEVCG_ACC_MKNOD = 0x1 -+ BPF_DEVCG_ACC_READ = 0x2 -+ BPF_DEVCG_ACC_WRITE = 0x4 -+ BPF_DEVCG_DEV_BLOCK = 0x1 -+ BPF_DEVCG_DEV_CHAR = 0x2 -+ BPF_FIB_LOOKUP_DIRECT = 0x1 -+ BPF_FIB_LOOKUP_OUTPUT = 0x2 -+ BPF_FIB_LKUP_RET_SUCCESS = 0x0 -+ BPF_FIB_LKUP_RET_BLACKHOLE = 0x1 -+ BPF_FIB_LKUP_RET_UNREACHABLE = 0x2 -+ BPF_FIB_LKUP_RET_PROHIBIT = 0x3 -+ BPF_FIB_LKUP_RET_NOT_FWDED = 0x4 -+ BPF_FIB_LKUP_RET_FWD_DISABLED = 0x5 -+ BPF_FIB_LKUP_RET_UNSUPP_LWT = 0x6 -+ BPF_FIB_LKUP_RET_NO_NEIGH = 0x7 -+ BPF_FIB_LKUP_RET_FRAG_NEEDED = 0x8 -+ BPF_FD_TYPE_RAW_TRACEPOINT = 0x0 -+ BPF_FD_TYPE_TRACEPOINT = 0x1 -+ BPF_FD_TYPE_KPROBE = 0x2 -+ BPF_FD_TYPE_KRETPROBE = 0x3 -+ BPF_FD_TYPE_UPROBE = 0x4 -+ BPF_FD_TYPE_URETPROBE = 0x5 -+ BPF_FLOW_DISSECTOR_F_PARSE_1ST_FRAG = 0x1 -+ BPF_FLOW_DISSECTOR_F_STOP_AT_FLOW_LABEL = 0x2 -+ BPF_FLOW_DISSECTOR_F_STOP_AT_ENCAP = 0x4 - ) - - const ( -@@ -2071,6 +2810,7 @@ const ( - RTNLGRP_IPV4_MROUTE_R = 0x1e - RTNLGRP_IPV6_MROUTE_R = 0x1f - RTNLGRP_NEXTHOP = 0x20 -+ RTNLGRP_BRVLAN = 0x21 - ) - - type CapUserHeader struct { -@@ -2165,132 +2905,326 @@ const ( - ) - - const ( -- DEVLINK_CMD_UNSPEC = 0x0 -- DEVLINK_CMD_GET = 0x1 -- DEVLINK_CMD_SET = 0x2 -- DEVLINK_CMD_NEW = 0x3 -- DEVLINK_CMD_DEL = 0x4 -- DEVLINK_CMD_PORT_GET = 0x5 -- DEVLINK_CMD_PORT_SET = 0x6 -- DEVLINK_CMD_PORT_NEW = 0x7 -- DEVLINK_CMD_PORT_DEL = 0x8 -- DEVLINK_CMD_PORT_SPLIT = 0x9 -- DEVLINK_CMD_PORT_UNSPLIT = 0xa -- DEVLINK_CMD_SB_GET = 0xb -- DEVLINK_CMD_SB_SET = 0xc -- DEVLINK_CMD_SB_NEW = 0xd -- DEVLINK_CMD_SB_DEL = 0xe -- DEVLINK_CMD_SB_POOL_GET = 0xf -- DEVLINK_CMD_SB_POOL_SET = 0x10 -- DEVLINK_CMD_SB_POOL_NEW = 0x11 -- DEVLINK_CMD_SB_POOL_DEL = 0x12 -- DEVLINK_CMD_SB_PORT_POOL_GET = 0x13 -- DEVLINK_CMD_SB_PORT_POOL_SET = 0x14 -- DEVLINK_CMD_SB_PORT_POOL_NEW = 0x15 -- DEVLINK_CMD_SB_PORT_POOL_DEL = 0x16 -- DEVLINK_CMD_SB_TC_POOL_BIND_GET = 0x17 -- DEVLINK_CMD_SB_TC_POOL_BIND_SET = 0x18 -- DEVLINK_CMD_SB_TC_POOL_BIND_NEW = 0x19 -- DEVLINK_CMD_SB_TC_POOL_BIND_DEL = 0x1a -- DEVLINK_CMD_SB_OCC_SNAPSHOT = 0x1b -- DEVLINK_CMD_SB_OCC_MAX_CLEAR = 0x1c -- DEVLINK_CMD_ESWITCH_GET = 0x1d -- DEVLINK_CMD_ESWITCH_SET = 0x1e -- DEVLINK_CMD_DPIPE_TABLE_GET = 0x1f -- DEVLINK_CMD_DPIPE_ENTRIES_GET = 0x20 -- DEVLINK_CMD_DPIPE_HEADERS_GET = 0x21 -- DEVLINK_CMD_DPIPE_TABLE_COUNTERS_SET = 0x22 -- DEVLINK_CMD_MAX = 0x44 -- DEVLINK_PORT_TYPE_NOTSET = 0x0 -- DEVLINK_PORT_TYPE_AUTO = 0x1 -- DEVLINK_PORT_TYPE_ETH = 0x2 -- DEVLINK_PORT_TYPE_IB = 0x3 -- DEVLINK_SB_POOL_TYPE_INGRESS = 0x0 -- DEVLINK_SB_POOL_TYPE_EGRESS = 0x1 -- DEVLINK_SB_THRESHOLD_TYPE_STATIC = 0x0 -- DEVLINK_SB_THRESHOLD_TYPE_DYNAMIC = 0x1 -- DEVLINK_ESWITCH_MODE_LEGACY = 0x0 -- DEVLINK_ESWITCH_MODE_SWITCHDEV = 0x1 -- DEVLINK_ESWITCH_INLINE_MODE_NONE = 0x0 -- DEVLINK_ESWITCH_INLINE_MODE_LINK = 0x1 -- DEVLINK_ESWITCH_INLINE_MODE_NETWORK = 0x2 -- DEVLINK_ESWITCH_INLINE_MODE_TRANSPORT = 0x3 -- DEVLINK_ESWITCH_ENCAP_MODE_NONE = 0x0 -- DEVLINK_ESWITCH_ENCAP_MODE_BASIC = 0x1 -- DEVLINK_ATTR_UNSPEC = 0x0 -- DEVLINK_ATTR_BUS_NAME = 0x1 -- DEVLINK_ATTR_DEV_NAME = 0x2 -- DEVLINK_ATTR_PORT_INDEX = 0x3 -- DEVLINK_ATTR_PORT_TYPE = 0x4 -- DEVLINK_ATTR_PORT_DESIRED_TYPE = 0x5 -- DEVLINK_ATTR_PORT_NETDEV_IFINDEX = 0x6 -- DEVLINK_ATTR_PORT_NETDEV_NAME = 0x7 -- DEVLINK_ATTR_PORT_IBDEV_NAME = 0x8 -- DEVLINK_ATTR_PORT_SPLIT_COUNT = 0x9 -- DEVLINK_ATTR_PORT_SPLIT_GROUP = 0xa -- DEVLINK_ATTR_SB_INDEX = 0xb -- DEVLINK_ATTR_SB_SIZE = 0xc -- DEVLINK_ATTR_SB_INGRESS_POOL_COUNT = 0xd -- DEVLINK_ATTR_SB_EGRESS_POOL_COUNT = 0xe -- DEVLINK_ATTR_SB_INGRESS_TC_COUNT = 0xf -- DEVLINK_ATTR_SB_EGRESS_TC_COUNT = 0x10 -- DEVLINK_ATTR_SB_POOL_INDEX = 0x11 -- DEVLINK_ATTR_SB_POOL_TYPE = 0x12 -- DEVLINK_ATTR_SB_POOL_SIZE = 0x13 -- DEVLINK_ATTR_SB_POOL_THRESHOLD_TYPE = 0x14 -- DEVLINK_ATTR_SB_THRESHOLD = 0x15 -- DEVLINK_ATTR_SB_TC_INDEX = 0x16 -- DEVLINK_ATTR_SB_OCC_CUR = 0x17 -- DEVLINK_ATTR_SB_OCC_MAX = 0x18 -- DEVLINK_ATTR_ESWITCH_MODE = 0x19 -- DEVLINK_ATTR_ESWITCH_INLINE_MODE = 0x1a -- DEVLINK_ATTR_DPIPE_TABLES = 0x1b -- DEVLINK_ATTR_DPIPE_TABLE = 0x1c -- DEVLINK_ATTR_DPIPE_TABLE_NAME = 0x1d -- DEVLINK_ATTR_DPIPE_TABLE_SIZE = 0x1e -- DEVLINK_ATTR_DPIPE_TABLE_MATCHES = 0x1f -- DEVLINK_ATTR_DPIPE_TABLE_ACTIONS = 0x20 -- DEVLINK_ATTR_DPIPE_TABLE_COUNTERS_ENABLED = 0x21 -- DEVLINK_ATTR_DPIPE_ENTRIES = 0x22 -- DEVLINK_ATTR_DPIPE_ENTRY = 0x23 -- DEVLINK_ATTR_DPIPE_ENTRY_INDEX = 0x24 -- DEVLINK_ATTR_DPIPE_ENTRY_MATCH_VALUES = 0x25 -- DEVLINK_ATTR_DPIPE_ENTRY_ACTION_VALUES = 0x26 -- DEVLINK_ATTR_DPIPE_ENTRY_COUNTER = 0x27 -- DEVLINK_ATTR_DPIPE_MATCH = 0x28 -- DEVLINK_ATTR_DPIPE_MATCH_VALUE = 0x29 -- DEVLINK_ATTR_DPIPE_MATCH_TYPE = 0x2a -- DEVLINK_ATTR_DPIPE_ACTION = 0x2b -- DEVLINK_ATTR_DPIPE_ACTION_VALUE = 0x2c -- DEVLINK_ATTR_DPIPE_ACTION_TYPE = 0x2d -- DEVLINK_ATTR_DPIPE_VALUE = 0x2e -- DEVLINK_ATTR_DPIPE_VALUE_MASK = 0x2f -- DEVLINK_ATTR_DPIPE_VALUE_MAPPING = 0x30 -- DEVLINK_ATTR_DPIPE_HEADERS = 0x31 -- DEVLINK_ATTR_DPIPE_HEADER = 0x32 -- DEVLINK_ATTR_DPIPE_HEADER_NAME = 0x33 -- DEVLINK_ATTR_DPIPE_HEADER_ID = 0x34 -- DEVLINK_ATTR_DPIPE_HEADER_FIELDS = 0x35 -- DEVLINK_ATTR_DPIPE_HEADER_GLOBAL = 0x36 -- DEVLINK_ATTR_DPIPE_HEADER_INDEX = 0x37 -- DEVLINK_ATTR_DPIPE_FIELD = 0x38 -- DEVLINK_ATTR_DPIPE_FIELD_NAME = 0x39 -- DEVLINK_ATTR_DPIPE_FIELD_ID = 0x3a -- DEVLINK_ATTR_DPIPE_FIELD_BITWIDTH = 0x3b -- DEVLINK_ATTR_DPIPE_FIELD_MAPPING_TYPE = 0x3c -- DEVLINK_ATTR_PAD = 0x3d -- DEVLINK_ATTR_ESWITCH_ENCAP_MODE = 0x3e -- DEVLINK_ATTR_MAX = 0x8c -- DEVLINK_DPIPE_FIELD_MAPPING_TYPE_NONE = 0x0 -- DEVLINK_DPIPE_FIELD_MAPPING_TYPE_IFINDEX = 0x1 -- DEVLINK_DPIPE_MATCH_TYPE_FIELD_EXACT = 0x0 -- DEVLINK_DPIPE_ACTION_TYPE_FIELD_MODIFY = 0x0 -- DEVLINK_DPIPE_FIELD_ETHERNET_DST_MAC = 0x0 -- DEVLINK_DPIPE_FIELD_IPV4_DST_IP = 0x0 -- DEVLINK_DPIPE_FIELD_IPV6_DST_IP = 0x0 -- DEVLINK_DPIPE_HEADER_ETHERNET = 0x0 -- DEVLINK_DPIPE_HEADER_IPV4 = 0x1 -- DEVLINK_DPIPE_HEADER_IPV6 = 0x2 -+ DEVLINK_CMD_UNSPEC = 0x0 -+ DEVLINK_CMD_GET = 0x1 -+ DEVLINK_CMD_SET = 0x2 -+ DEVLINK_CMD_NEW = 0x3 -+ DEVLINK_CMD_DEL = 0x4 -+ DEVLINK_CMD_PORT_GET = 0x5 -+ DEVLINK_CMD_PORT_SET = 0x6 -+ DEVLINK_CMD_PORT_NEW = 0x7 -+ DEVLINK_CMD_PORT_DEL = 0x8 -+ DEVLINK_CMD_PORT_SPLIT = 0x9 -+ DEVLINK_CMD_PORT_UNSPLIT = 0xa -+ DEVLINK_CMD_SB_GET = 0xb -+ DEVLINK_CMD_SB_SET = 0xc -+ DEVLINK_CMD_SB_NEW = 0xd -+ DEVLINK_CMD_SB_DEL = 0xe -+ DEVLINK_CMD_SB_POOL_GET = 0xf -+ DEVLINK_CMD_SB_POOL_SET = 0x10 -+ DEVLINK_CMD_SB_POOL_NEW = 0x11 -+ DEVLINK_CMD_SB_POOL_DEL = 0x12 -+ DEVLINK_CMD_SB_PORT_POOL_GET = 0x13 -+ DEVLINK_CMD_SB_PORT_POOL_SET = 0x14 -+ DEVLINK_CMD_SB_PORT_POOL_NEW = 0x15 -+ DEVLINK_CMD_SB_PORT_POOL_DEL = 0x16 -+ DEVLINK_CMD_SB_TC_POOL_BIND_GET = 0x17 -+ DEVLINK_CMD_SB_TC_POOL_BIND_SET = 0x18 -+ DEVLINK_CMD_SB_TC_POOL_BIND_NEW = 0x19 -+ DEVLINK_CMD_SB_TC_POOL_BIND_DEL = 0x1a -+ DEVLINK_CMD_SB_OCC_SNAPSHOT = 0x1b -+ DEVLINK_CMD_SB_OCC_MAX_CLEAR = 0x1c -+ DEVLINK_CMD_ESWITCH_GET = 0x1d -+ DEVLINK_CMD_ESWITCH_SET = 0x1e -+ DEVLINK_CMD_DPIPE_TABLE_GET = 0x1f -+ DEVLINK_CMD_DPIPE_ENTRIES_GET = 0x20 -+ DEVLINK_CMD_DPIPE_HEADERS_GET = 0x21 -+ DEVLINK_CMD_DPIPE_TABLE_COUNTERS_SET = 0x22 -+ DEVLINK_CMD_RESOURCE_SET = 0x23 -+ DEVLINK_CMD_RESOURCE_DUMP = 0x24 -+ DEVLINK_CMD_RELOAD = 0x25 -+ DEVLINK_CMD_PARAM_GET = 0x26 -+ DEVLINK_CMD_PARAM_SET = 0x27 -+ DEVLINK_CMD_PARAM_NEW = 0x28 -+ DEVLINK_CMD_PARAM_DEL = 0x29 -+ DEVLINK_CMD_REGION_GET = 0x2a -+ DEVLINK_CMD_REGION_SET = 0x2b -+ DEVLINK_CMD_REGION_NEW = 0x2c -+ DEVLINK_CMD_REGION_DEL = 0x2d -+ DEVLINK_CMD_REGION_READ = 0x2e -+ DEVLINK_CMD_PORT_PARAM_GET = 0x2f -+ DEVLINK_CMD_PORT_PARAM_SET = 0x30 -+ DEVLINK_CMD_PORT_PARAM_NEW = 0x31 -+ DEVLINK_CMD_PORT_PARAM_DEL = 0x32 -+ DEVLINK_CMD_INFO_GET = 0x33 -+ DEVLINK_CMD_HEALTH_REPORTER_GET = 0x34 -+ DEVLINK_CMD_HEALTH_REPORTER_SET = 0x35 -+ DEVLINK_CMD_HEALTH_REPORTER_RECOVER = 0x36 -+ DEVLINK_CMD_HEALTH_REPORTER_DIAGNOSE = 0x37 -+ DEVLINK_CMD_HEALTH_REPORTER_DUMP_GET = 0x38 -+ DEVLINK_CMD_HEALTH_REPORTER_DUMP_CLEAR = 0x39 -+ DEVLINK_CMD_FLASH_UPDATE = 0x3a -+ DEVLINK_CMD_FLASH_UPDATE_END = 0x3b -+ DEVLINK_CMD_FLASH_UPDATE_STATUS = 0x3c -+ DEVLINK_CMD_TRAP_GET = 0x3d -+ DEVLINK_CMD_TRAP_SET = 0x3e -+ DEVLINK_CMD_TRAP_NEW = 0x3f -+ DEVLINK_CMD_TRAP_DEL = 0x40 -+ DEVLINK_CMD_TRAP_GROUP_GET = 0x41 -+ DEVLINK_CMD_TRAP_GROUP_SET = 0x42 -+ DEVLINK_CMD_TRAP_GROUP_NEW = 0x43 -+ DEVLINK_CMD_TRAP_GROUP_DEL = 0x44 -+ DEVLINK_CMD_TRAP_POLICER_GET = 0x45 -+ DEVLINK_CMD_TRAP_POLICER_SET = 0x46 -+ DEVLINK_CMD_TRAP_POLICER_NEW = 0x47 -+ DEVLINK_CMD_TRAP_POLICER_DEL = 0x48 -+ DEVLINK_CMD_HEALTH_REPORTER_TEST = 0x49 -+ DEVLINK_CMD_MAX = 0x51 -+ DEVLINK_PORT_TYPE_NOTSET = 0x0 -+ DEVLINK_PORT_TYPE_AUTO = 0x1 -+ DEVLINK_PORT_TYPE_ETH = 0x2 -+ DEVLINK_PORT_TYPE_IB = 0x3 -+ DEVLINK_SB_POOL_TYPE_INGRESS = 0x0 -+ DEVLINK_SB_POOL_TYPE_EGRESS = 0x1 -+ DEVLINK_SB_THRESHOLD_TYPE_STATIC = 0x0 -+ DEVLINK_SB_THRESHOLD_TYPE_DYNAMIC = 0x1 -+ DEVLINK_ESWITCH_MODE_LEGACY = 0x0 -+ DEVLINK_ESWITCH_MODE_SWITCHDEV = 0x1 -+ DEVLINK_ESWITCH_INLINE_MODE_NONE = 0x0 -+ DEVLINK_ESWITCH_INLINE_MODE_LINK = 0x1 -+ DEVLINK_ESWITCH_INLINE_MODE_NETWORK = 0x2 -+ DEVLINK_ESWITCH_INLINE_MODE_TRANSPORT = 0x3 -+ DEVLINK_ESWITCH_ENCAP_MODE_NONE = 0x0 -+ DEVLINK_ESWITCH_ENCAP_MODE_BASIC = 0x1 -+ DEVLINK_PORT_FLAVOUR_PHYSICAL = 0x0 -+ DEVLINK_PORT_FLAVOUR_CPU = 0x1 -+ DEVLINK_PORT_FLAVOUR_DSA = 0x2 -+ DEVLINK_PORT_FLAVOUR_PCI_PF = 0x3 -+ DEVLINK_PORT_FLAVOUR_PCI_VF = 0x4 -+ DEVLINK_PORT_FLAVOUR_VIRTUAL = 0x5 -+ DEVLINK_PORT_FLAVOUR_UNUSED = 0x6 -+ DEVLINK_PARAM_CMODE_RUNTIME = 0x0 -+ DEVLINK_PARAM_CMODE_DRIVERINIT = 0x1 -+ DEVLINK_PARAM_CMODE_PERMANENT = 0x2 -+ DEVLINK_PARAM_CMODE_MAX = 0x2 -+ DEVLINK_PARAM_FW_LOAD_POLICY_VALUE_DRIVER = 0x0 -+ DEVLINK_PARAM_FW_LOAD_POLICY_VALUE_FLASH = 0x1 -+ DEVLINK_PARAM_FW_LOAD_POLICY_VALUE_DISK = 0x2 -+ DEVLINK_PARAM_FW_LOAD_POLICY_VALUE_UNKNOWN = 0x3 -+ DEVLINK_PARAM_RESET_DEV_ON_DRV_PROBE_VALUE_UNKNOWN = 0x0 -+ DEVLINK_PARAM_RESET_DEV_ON_DRV_PROBE_VALUE_ALWAYS = 0x1 -+ DEVLINK_PARAM_RESET_DEV_ON_DRV_PROBE_VALUE_NEVER = 0x2 -+ DEVLINK_PARAM_RESET_DEV_ON_DRV_PROBE_VALUE_DISK = 0x3 -+ DEVLINK_ATTR_STATS_RX_PACKETS = 0x0 -+ DEVLINK_ATTR_STATS_RX_BYTES = 0x1 -+ DEVLINK_ATTR_STATS_RX_DROPPED = 0x2 -+ DEVLINK_ATTR_STATS_MAX = 0x2 -+ DEVLINK_FLASH_OVERWRITE_SETTINGS_BIT = 0x0 -+ DEVLINK_FLASH_OVERWRITE_IDENTIFIERS_BIT = 0x1 -+ DEVLINK_FLASH_OVERWRITE_MAX_BIT = 0x1 -+ DEVLINK_TRAP_ACTION_DROP = 0x0 -+ DEVLINK_TRAP_ACTION_TRAP = 0x1 -+ DEVLINK_TRAP_ACTION_MIRROR = 0x2 -+ DEVLINK_TRAP_TYPE_DROP = 0x0 -+ DEVLINK_TRAP_TYPE_EXCEPTION = 0x1 -+ DEVLINK_TRAP_TYPE_CONTROL = 0x2 -+ DEVLINK_ATTR_TRAP_METADATA_TYPE_IN_PORT = 0x0 -+ DEVLINK_ATTR_TRAP_METADATA_TYPE_FA_COOKIE = 0x1 -+ DEVLINK_RELOAD_ACTION_UNSPEC = 0x0 -+ DEVLINK_RELOAD_ACTION_DRIVER_REINIT = 0x1 -+ DEVLINK_RELOAD_ACTION_FW_ACTIVATE = 0x2 -+ DEVLINK_RELOAD_ACTION_MAX = 0x2 -+ DEVLINK_RELOAD_LIMIT_UNSPEC = 0x0 -+ DEVLINK_RELOAD_LIMIT_NO_RESET = 0x1 -+ DEVLINK_RELOAD_LIMIT_MAX = 0x1 -+ DEVLINK_ATTR_UNSPEC = 0x0 -+ DEVLINK_ATTR_BUS_NAME = 0x1 -+ DEVLINK_ATTR_DEV_NAME = 0x2 -+ DEVLINK_ATTR_PORT_INDEX = 0x3 -+ DEVLINK_ATTR_PORT_TYPE = 0x4 -+ DEVLINK_ATTR_PORT_DESIRED_TYPE = 0x5 -+ DEVLINK_ATTR_PORT_NETDEV_IFINDEX = 0x6 -+ DEVLINK_ATTR_PORT_NETDEV_NAME = 0x7 -+ DEVLINK_ATTR_PORT_IBDEV_NAME = 0x8 -+ DEVLINK_ATTR_PORT_SPLIT_COUNT = 0x9 -+ DEVLINK_ATTR_PORT_SPLIT_GROUP = 0xa -+ DEVLINK_ATTR_SB_INDEX = 0xb -+ DEVLINK_ATTR_SB_SIZE = 0xc -+ DEVLINK_ATTR_SB_INGRESS_POOL_COUNT = 0xd -+ DEVLINK_ATTR_SB_EGRESS_POOL_COUNT = 0xe -+ DEVLINK_ATTR_SB_INGRESS_TC_COUNT = 0xf -+ DEVLINK_ATTR_SB_EGRESS_TC_COUNT = 0x10 -+ DEVLINK_ATTR_SB_POOL_INDEX = 0x11 -+ DEVLINK_ATTR_SB_POOL_TYPE = 0x12 -+ DEVLINK_ATTR_SB_POOL_SIZE = 0x13 -+ DEVLINK_ATTR_SB_POOL_THRESHOLD_TYPE = 0x14 -+ DEVLINK_ATTR_SB_THRESHOLD = 0x15 -+ DEVLINK_ATTR_SB_TC_INDEX = 0x16 -+ DEVLINK_ATTR_SB_OCC_CUR = 0x17 -+ DEVLINK_ATTR_SB_OCC_MAX = 0x18 -+ DEVLINK_ATTR_ESWITCH_MODE = 0x19 -+ DEVLINK_ATTR_ESWITCH_INLINE_MODE = 0x1a -+ DEVLINK_ATTR_DPIPE_TABLES = 0x1b -+ DEVLINK_ATTR_DPIPE_TABLE = 0x1c -+ DEVLINK_ATTR_DPIPE_TABLE_NAME = 0x1d -+ DEVLINK_ATTR_DPIPE_TABLE_SIZE = 0x1e -+ DEVLINK_ATTR_DPIPE_TABLE_MATCHES = 0x1f -+ DEVLINK_ATTR_DPIPE_TABLE_ACTIONS = 0x20 -+ DEVLINK_ATTR_DPIPE_TABLE_COUNTERS_ENABLED = 0x21 -+ DEVLINK_ATTR_DPIPE_ENTRIES = 0x22 -+ DEVLINK_ATTR_DPIPE_ENTRY = 0x23 -+ DEVLINK_ATTR_DPIPE_ENTRY_INDEX = 0x24 -+ DEVLINK_ATTR_DPIPE_ENTRY_MATCH_VALUES = 0x25 -+ DEVLINK_ATTR_DPIPE_ENTRY_ACTION_VALUES = 0x26 -+ DEVLINK_ATTR_DPIPE_ENTRY_COUNTER = 0x27 -+ DEVLINK_ATTR_DPIPE_MATCH = 0x28 -+ DEVLINK_ATTR_DPIPE_MATCH_VALUE = 0x29 -+ DEVLINK_ATTR_DPIPE_MATCH_TYPE = 0x2a -+ DEVLINK_ATTR_DPIPE_ACTION = 0x2b -+ DEVLINK_ATTR_DPIPE_ACTION_VALUE = 0x2c -+ DEVLINK_ATTR_DPIPE_ACTION_TYPE = 0x2d -+ DEVLINK_ATTR_DPIPE_VALUE = 0x2e -+ DEVLINK_ATTR_DPIPE_VALUE_MASK = 0x2f -+ DEVLINK_ATTR_DPIPE_VALUE_MAPPING = 0x30 -+ DEVLINK_ATTR_DPIPE_HEADERS = 0x31 -+ DEVLINK_ATTR_DPIPE_HEADER = 0x32 -+ DEVLINK_ATTR_DPIPE_HEADER_NAME = 0x33 -+ DEVLINK_ATTR_DPIPE_HEADER_ID = 0x34 -+ DEVLINK_ATTR_DPIPE_HEADER_FIELDS = 0x35 -+ DEVLINK_ATTR_DPIPE_HEADER_GLOBAL = 0x36 -+ DEVLINK_ATTR_DPIPE_HEADER_INDEX = 0x37 -+ DEVLINK_ATTR_DPIPE_FIELD = 0x38 -+ DEVLINK_ATTR_DPIPE_FIELD_NAME = 0x39 -+ DEVLINK_ATTR_DPIPE_FIELD_ID = 0x3a -+ DEVLINK_ATTR_DPIPE_FIELD_BITWIDTH = 0x3b -+ DEVLINK_ATTR_DPIPE_FIELD_MAPPING_TYPE = 0x3c -+ DEVLINK_ATTR_PAD = 0x3d -+ DEVLINK_ATTR_ESWITCH_ENCAP_MODE = 0x3e -+ DEVLINK_ATTR_RESOURCE_LIST = 0x3f -+ DEVLINK_ATTR_RESOURCE = 0x40 -+ DEVLINK_ATTR_RESOURCE_NAME = 0x41 -+ DEVLINK_ATTR_RESOURCE_ID = 0x42 -+ DEVLINK_ATTR_RESOURCE_SIZE = 0x43 -+ DEVLINK_ATTR_RESOURCE_SIZE_NEW = 0x44 -+ DEVLINK_ATTR_RESOURCE_SIZE_VALID = 0x45 -+ DEVLINK_ATTR_RESOURCE_SIZE_MIN = 0x46 -+ DEVLINK_ATTR_RESOURCE_SIZE_MAX = 0x47 -+ DEVLINK_ATTR_RESOURCE_SIZE_GRAN = 0x48 -+ DEVLINK_ATTR_RESOURCE_UNIT = 0x49 -+ DEVLINK_ATTR_RESOURCE_OCC = 0x4a -+ DEVLINK_ATTR_DPIPE_TABLE_RESOURCE_ID = 0x4b -+ DEVLINK_ATTR_DPIPE_TABLE_RESOURCE_UNITS = 0x4c -+ DEVLINK_ATTR_PORT_FLAVOUR = 0x4d -+ DEVLINK_ATTR_PORT_NUMBER = 0x4e -+ DEVLINK_ATTR_PORT_SPLIT_SUBPORT_NUMBER = 0x4f -+ DEVLINK_ATTR_PARAM = 0x50 -+ DEVLINK_ATTR_PARAM_NAME = 0x51 -+ DEVLINK_ATTR_PARAM_GENERIC = 0x52 -+ DEVLINK_ATTR_PARAM_TYPE = 0x53 -+ DEVLINK_ATTR_PARAM_VALUES_LIST = 0x54 -+ DEVLINK_ATTR_PARAM_VALUE = 0x55 -+ DEVLINK_ATTR_PARAM_VALUE_DATA = 0x56 -+ DEVLINK_ATTR_PARAM_VALUE_CMODE = 0x57 -+ DEVLINK_ATTR_REGION_NAME = 0x58 -+ DEVLINK_ATTR_REGION_SIZE = 0x59 -+ DEVLINK_ATTR_REGION_SNAPSHOTS = 0x5a -+ DEVLINK_ATTR_REGION_SNAPSHOT = 0x5b -+ DEVLINK_ATTR_REGION_SNAPSHOT_ID = 0x5c -+ DEVLINK_ATTR_REGION_CHUNKS = 0x5d -+ DEVLINK_ATTR_REGION_CHUNK = 0x5e -+ DEVLINK_ATTR_REGION_CHUNK_DATA = 0x5f -+ DEVLINK_ATTR_REGION_CHUNK_ADDR = 0x60 -+ DEVLINK_ATTR_REGION_CHUNK_LEN = 0x61 -+ DEVLINK_ATTR_INFO_DRIVER_NAME = 0x62 -+ DEVLINK_ATTR_INFO_SERIAL_NUMBER = 0x63 -+ DEVLINK_ATTR_INFO_VERSION_FIXED = 0x64 -+ DEVLINK_ATTR_INFO_VERSION_RUNNING = 0x65 -+ DEVLINK_ATTR_INFO_VERSION_STORED = 0x66 -+ DEVLINK_ATTR_INFO_VERSION_NAME = 0x67 -+ DEVLINK_ATTR_INFO_VERSION_VALUE = 0x68 -+ DEVLINK_ATTR_SB_POOL_CELL_SIZE = 0x69 -+ DEVLINK_ATTR_FMSG = 0x6a -+ DEVLINK_ATTR_FMSG_OBJ_NEST_START = 0x6b -+ DEVLINK_ATTR_FMSG_PAIR_NEST_START = 0x6c -+ DEVLINK_ATTR_FMSG_ARR_NEST_START = 0x6d -+ DEVLINK_ATTR_FMSG_NEST_END = 0x6e -+ DEVLINK_ATTR_FMSG_OBJ_NAME = 0x6f -+ DEVLINK_ATTR_FMSG_OBJ_VALUE_TYPE = 0x70 -+ DEVLINK_ATTR_FMSG_OBJ_VALUE_DATA = 0x71 -+ DEVLINK_ATTR_HEALTH_REPORTER = 0x72 -+ DEVLINK_ATTR_HEALTH_REPORTER_NAME = 0x73 -+ DEVLINK_ATTR_HEALTH_REPORTER_STATE = 0x74 -+ DEVLINK_ATTR_HEALTH_REPORTER_ERR_COUNT = 0x75 -+ DEVLINK_ATTR_HEALTH_REPORTER_RECOVER_COUNT = 0x76 -+ DEVLINK_ATTR_HEALTH_REPORTER_DUMP_TS = 0x77 -+ DEVLINK_ATTR_HEALTH_REPORTER_GRACEFUL_PERIOD = 0x78 -+ DEVLINK_ATTR_HEALTH_REPORTER_AUTO_RECOVER = 0x79 -+ DEVLINK_ATTR_FLASH_UPDATE_FILE_NAME = 0x7a -+ DEVLINK_ATTR_FLASH_UPDATE_COMPONENT = 0x7b -+ DEVLINK_ATTR_FLASH_UPDATE_STATUS_MSG = 0x7c -+ DEVLINK_ATTR_FLASH_UPDATE_STATUS_DONE = 0x7d -+ DEVLINK_ATTR_FLASH_UPDATE_STATUS_TOTAL = 0x7e -+ DEVLINK_ATTR_PORT_PCI_PF_NUMBER = 0x7f -+ DEVLINK_ATTR_PORT_PCI_VF_NUMBER = 0x80 -+ DEVLINK_ATTR_STATS = 0x81 -+ DEVLINK_ATTR_TRAP_NAME = 0x82 -+ DEVLINK_ATTR_TRAP_ACTION = 0x83 -+ DEVLINK_ATTR_TRAP_TYPE = 0x84 -+ DEVLINK_ATTR_TRAP_GENERIC = 0x85 -+ DEVLINK_ATTR_TRAP_METADATA = 0x86 -+ DEVLINK_ATTR_TRAP_GROUP_NAME = 0x87 -+ DEVLINK_ATTR_RELOAD_FAILED = 0x88 -+ DEVLINK_ATTR_HEALTH_REPORTER_DUMP_TS_NS = 0x89 -+ DEVLINK_ATTR_NETNS_FD = 0x8a -+ DEVLINK_ATTR_NETNS_PID = 0x8b -+ DEVLINK_ATTR_NETNS_ID = 0x8c -+ DEVLINK_ATTR_HEALTH_REPORTER_AUTO_DUMP = 0x8d -+ DEVLINK_ATTR_TRAP_POLICER_ID = 0x8e -+ DEVLINK_ATTR_TRAP_POLICER_RATE = 0x8f -+ DEVLINK_ATTR_TRAP_POLICER_BURST = 0x90 -+ DEVLINK_ATTR_PORT_FUNCTION = 0x91 -+ DEVLINK_ATTR_INFO_BOARD_SERIAL_NUMBER = 0x92 -+ DEVLINK_ATTR_PORT_LANES = 0x93 -+ DEVLINK_ATTR_PORT_SPLITTABLE = 0x94 -+ DEVLINK_ATTR_PORT_EXTERNAL = 0x95 -+ DEVLINK_ATTR_PORT_CONTROLLER_NUMBER = 0x96 -+ DEVLINK_ATTR_FLASH_UPDATE_STATUS_TIMEOUT = 0x97 -+ DEVLINK_ATTR_FLASH_UPDATE_OVERWRITE_MASK = 0x98 -+ DEVLINK_ATTR_RELOAD_ACTION = 0x99 -+ DEVLINK_ATTR_RELOAD_ACTIONS_PERFORMED = 0x9a -+ DEVLINK_ATTR_RELOAD_LIMITS = 0x9b -+ DEVLINK_ATTR_DEV_STATS = 0x9c -+ DEVLINK_ATTR_RELOAD_STATS = 0x9d -+ DEVLINK_ATTR_RELOAD_STATS_ENTRY = 0x9e -+ DEVLINK_ATTR_RELOAD_STATS_LIMIT = 0x9f -+ DEVLINK_ATTR_RELOAD_STATS_VALUE = 0xa0 -+ DEVLINK_ATTR_REMOTE_RELOAD_STATS = 0xa1 -+ DEVLINK_ATTR_RELOAD_ACTION_INFO = 0xa2 -+ DEVLINK_ATTR_RELOAD_ACTION_STATS = 0xa3 -+ DEVLINK_ATTR_PORT_PCI_SF_NUMBER = 0xa4 -+ DEVLINK_ATTR_RATE_TYPE = 0xa5 -+ DEVLINK_ATTR_RATE_TX_SHARE = 0xa6 -+ DEVLINK_ATTR_RATE_TX_MAX = 0xa7 -+ DEVLINK_ATTR_RATE_NODE_NAME = 0xa8 -+ DEVLINK_ATTR_RATE_PARENT_NODE_NAME = 0xa9 -+ DEVLINK_ATTR_REGION_MAX_SNAPSHOTS = 0xaa -+ DEVLINK_ATTR_MAX = 0xae -+ DEVLINK_DPIPE_FIELD_MAPPING_TYPE_NONE = 0x0 -+ DEVLINK_DPIPE_FIELD_MAPPING_TYPE_IFINDEX = 0x1 -+ DEVLINK_DPIPE_MATCH_TYPE_FIELD_EXACT = 0x0 -+ DEVLINK_DPIPE_ACTION_TYPE_FIELD_MODIFY = 0x0 -+ DEVLINK_DPIPE_FIELD_ETHERNET_DST_MAC = 0x0 -+ DEVLINK_DPIPE_FIELD_IPV4_DST_IP = 0x0 -+ DEVLINK_DPIPE_FIELD_IPV6_DST_IP = 0x0 -+ DEVLINK_DPIPE_HEADER_ETHERNET = 0x0 -+ DEVLINK_DPIPE_HEADER_IPV4 = 0x1 -+ DEVLINK_DPIPE_HEADER_IPV6 = 0x2 -+ DEVLINK_RESOURCE_UNIT_ENTRY = 0x0 -+ DEVLINK_PORT_FUNCTION_ATTR_UNSPEC = 0x0 -+ DEVLINK_PORT_FUNCTION_ATTR_HW_ADDR = 0x1 -+ DEVLINK_PORT_FN_ATTR_STATE = 0x2 -+ DEVLINK_PORT_FN_ATTR_OPSTATE = 0x3 -+ DEVLINK_PORT_FUNCTION_ATTR_MAX = 0x3 - ) - - type FsverityDigest struct { -@@ -2338,3 +3272,2338 @@ const ( - NHA_GROUPS = 0x9 - NHA_MASTER = 0xa - ) -+ -+const ( -+ CAN_RAW_FILTER = 0x1 -+ CAN_RAW_ERR_FILTER = 0x2 -+ CAN_RAW_LOOPBACK = 0x3 -+ CAN_RAW_RECV_OWN_MSGS = 0x4 -+ CAN_RAW_FD_FRAMES = 0x5 -+ CAN_RAW_JOIN_FILTERS = 0x6 -+) -+ -+type WatchdogInfo struct { -+ Options uint32 -+ Version uint32 -+ Identity [32]uint8 -+} -+ -+type PPSFData struct { -+ Info PPSKInfo -+ Timeout PPSKTime -+} -+ -+type PPSKParams struct { -+ Api_version int32 -+ Mode int32 -+ Assert_off_tu PPSKTime -+ Clear_off_tu PPSKTime -+} -+ -+type PPSKTime struct { -+ Sec int64 -+ Nsec int32 -+ Flags uint32 -+} -+ -+const ( -+ LWTUNNEL_ENCAP_NONE = 0x0 -+ LWTUNNEL_ENCAP_MPLS = 0x1 -+ LWTUNNEL_ENCAP_IP = 0x2 -+ LWTUNNEL_ENCAP_ILA = 0x3 -+ LWTUNNEL_ENCAP_IP6 = 0x4 -+ LWTUNNEL_ENCAP_SEG6 = 0x5 -+ LWTUNNEL_ENCAP_BPF = 0x6 -+ LWTUNNEL_ENCAP_SEG6_LOCAL = 0x7 -+ LWTUNNEL_ENCAP_RPL = 0x8 -+ LWTUNNEL_ENCAP_IOAM6 = 0x9 -+ LWTUNNEL_ENCAP_MAX = 0x9 -+ -+ MPLS_IPTUNNEL_UNSPEC = 0x0 -+ MPLS_IPTUNNEL_DST = 0x1 -+ MPLS_IPTUNNEL_TTL = 0x2 -+ MPLS_IPTUNNEL_MAX = 0x2 -+) -+ -+const ( -+ ETHTOOL_ID_UNSPEC = 0x0 -+ ETHTOOL_RX_COPYBREAK = 0x1 -+ ETHTOOL_TX_COPYBREAK = 0x2 -+ ETHTOOL_PFC_PREVENTION_TOUT = 0x3 -+ ETHTOOL_TUNABLE_UNSPEC = 0x0 -+ ETHTOOL_TUNABLE_U8 = 0x1 -+ ETHTOOL_TUNABLE_U16 = 0x2 -+ ETHTOOL_TUNABLE_U32 = 0x3 -+ ETHTOOL_TUNABLE_U64 = 0x4 -+ ETHTOOL_TUNABLE_STRING = 0x5 -+ ETHTOOL_TUNABLE_S8 = 0x6 -+ ETHTOOL_TUNABLE_S16 = 0x7 -+ ETHTOOL_TUNABLE_S32 = 0x8 -+ ETHTOOL_TUNABLE_S64 = 0x9 -+ ETHTOOL_PHY_ID_UNSPEC = 0x0 -+ ETHTOOL_PHY_DOWNSHIFT = 0x1 -+ ETHTOOL_PHY_FAST_LINK_DOWN = 0x2 -+ ETHTOOL_PHY_EDPD = 0x3 -+ ETHTOOL_LINK_EXT_STATE_AUTONEG = 0x0 -+ ETHTOOL_LINK_EXT_STATE_LINK_TRAINING_FAILURE = 0x1 -+ ETHTOOL_LINK_EXT_STATE_LINK_LOGICAL_MISMATCH = 0x2 -+ ETHTOOL_LINK_EXT_STATE_BAD_SIGNAL_INTEGRITY = 0x3 -+ ETHTOOL_LINK_EXT_STATE_NO_CABLE = 0x4 -+ ETHTOOL_LINK_EXT_STATE_CABLE_ISSUE = 0x5 -+ ETHTOOL_LINK_EXT_STATE_EEPROM_ISSUE = 0x6 -+ ETHTOOL_LINK_EXT_STATE_CALIBRATION_FAILURE = 0x7 -+ ETHTOOL_LINK_EXT_STATE_POWER_BUDGET_EXCEEDED = 0x8 -+ ETHTOOL_LINK_EXT_STATE_OVERHEAT = 0x9 -+ ETHTOOL_LINK_EXT_SUBSTATE_AN_NO_PARTNER_DETECTED = 0x1 -+ ETHTOOL_LINK_EXT_SUBSTATE_AN_ACK_NOT_RECEIVED = 0x2 -+ ETHTOOL_LINK_EXT_SUBSTATE_AN_NEXT_PAGE_EXCHANGE_FAILED = 0x3 -+ ETHTOOL_LINK_EXT_SUBSTATE_AN_NO_PARTNER_DETECTED_FORCE_MODE = 0x4 -+ ETHTOOL_LINK_EXT_SUBSTATE_AN_FEC_MISMATCH_DURING_OVERRIDE = 0x5 -+ ETHTOOL_LINK_EXT_SUBSTATE_AN_NO_HCD = 0x6 -+ ETHTOOL_LINK_EXT_SUBSTATE_LT_KR_FRAME_LOCK_NOT_ACQUIRED = 0x1 -+ ETHTOOL_LINK_EXT_SUBSTATE_LT_KR_LINK_INHIBIT_TIMEOUT = 0x2 -+ ETHTOOL_LINK_EXT_SUBSTATE_LT_KR_LINK_PARTNER_DID_NOT_SET_RECEIVER_READY = 0x3 -+ ETHTOOL_LINK_EXT_SUBSTATE_LT_REMOTE_FAULT = 0x4 -+ ETHTOOL_LINK_EXT_SUBSTATE_LLM_PCS_DID_NOT_ACQUIRE_BLOCK_LOCK = 0x1 -+ ETHTOOL_LINK_EXT_SUBSTATE_LLM_PCS_DID_NOT_ACQUIRE_AM_LOCK = 0x2 -+ ETHTOOL_LINK_EXT_SUBSTATE_LLM_PCS_DID_NOT_GET_ALIGN_STATUS = 0x3 -+ ETHTOOL_LINK_EXT_SUBSTATE_LLM_FC_FEC_IS_NOT_LOCKED = 0x4 -+ ETHTOOL_LINK_EXT_SUBSTATE_LLM_RS_FEC_IS_NOT_LOCKED = 0x5 -+ ETHTOOL_LINK_EXT_SUBSTATE_BSI_LARGE_NUMBER_OF_PHYSICAL_ERRORS = 0x1 -+ ETHTOOL_LINK_EXT_SUBSTATE_BSI_UNSUPPORTED_RATE = 0x2 -+ ETHTOOL_LINK_EXT_SUBSTATE_CI_UNSUPPORTED_CABLE = 0x1 -+ ETHTOOL_LINK_EXT_SUBSTATE_CI_CABLE_TEST_FAILURE = 0x2 -+ ETHTOOL_FLASH_ALL_REGIONS = 0x0 -+ ETHTOOL_F_UNSUPPORTED__BIT = 0x0 -+ ETHTOOL_F_WISH__BIT = 0x1 -+ ETHTOOL_F_COMPAT__BIT = 0x2 -+ ETHTOOL_FEC_NONE_BIT = 0x0 -+ ETHTOOL_FEC_AUTO_BIT = 0x1 -+ ETHTOOL_FEC_OFF_BIT = 0x2 -+ ETHTOOL_FEC_RS_BIT = 0x3 -+ ETHTOOL_FEC_BASER_BIT = 0x4 -+ ETHTOOL_FEC_LLRS_BIT = 0x5 -+ ETHTOOL_LINK_MODE_10baseT_Half_BIT = 0x0 -+ ETHTOOL_LINK_MODE_10baseT_Full_BIT = 0x1 -+ ETHTOOL_LINK_MODE_100baseT_Half_BIT = 0x2 -+ ETHTOOL_LINK_MODE_100baseT_Full_BIT = 0x3 -+ ETHTOOL_LINK_MODE_1000baseT_Half_BIT = 0x4 -+ ETHTOOL_LINK_MODE_1000baseT_Full_BIT = 0x5 -+ ETHTOOL_LINK_MODE_Autoneg_BIT = 0x6 -+ ETHTOOL_LINK_MODE_TP_BIT = 0x7 -+ ETHTOOL_LINK_MODE_AUI_BIT = 0x8 -+ ETHTOOL_LINK_MODE_MII_BIT = 0x9 -+ ETHTOOL_LINK_MODE_FIBRE_BIT = 0xa -+ ETHTOOL_LINK_MODE_BNC_BIT = 0xb -+ ETHTOOL_LINK_MODE_10000baseT_Full_BIT = 0xc -+ ETHTOOL_LINK_MODE_Pause_BIT = 0xd -+ ETHTOOL_LINK_MODE_Asym_Pause_BIT = 0xe -+ ETHTOOL_LINK_MODE_2500baseX_Full_BIT = 0xf -+ ETHTOOL_LINK_MODE_Backplane_BIT = 0x10 -+ ETHTOOL_LINK_MODE_1000baseKX_Full_BIT = 0x11 -+ ETHTOOL_LINK_MODE_10000baseKX4_Full_BIT = 0x12 -+ ETHTOOL_LINK_MODE_10000baseKR_Full_BIT = 0x13 -+ ETHTOOL_LINK_MODE_10000baseR_FEC_BIT = 0x14 -+ ETHTOOL_LINK_MODE_20000baseMLD2_Full_BIT = 0x15 -+ ETHTOOL_LINK_MODE_20000baseKR2_Full_BIT = 0x16 -+ ETHTOOL_LINK_MODE_40000baseKR4_Full_BIT = 0x17 -+ ETHTOOL_LINK_MODE_40000baseCR4_Full_BIT = 0x18 -+ ETHTOOL_LINK_MODE_40000baseSR4_Full_BIT = 0x19 -+ ETHTOOL_LINK_MODE_40000baseLR4_Full_BIT = 0x1a -+ ETHTOOL_LINK_MODE_56000baseKR4_Full_BIT = 0x1b -+ ETHTOOL_LINK_MODE_56000baseCR4_Full_BIT = 0x1c -+ ETHTOOL_LINK_MODE_56000baseSR4_Full_BIT = 0x1d -+ ETHTOOL_LINK_MODE_56000baseLR4_Full_BIT = 0x1e -+ ETHTOOL_LINK_MODE_25000baseCR_Full_BIT = 0x1f -+ ETHTOOL_LINK_MODE_25000baseKR_Full_BIT = 0x20 -+ ETHTOOL_LINK_MODE_25000baseSR_Full_BIT = 0x21 -+ ETHTOOL_LINK_MODE_50000baseCR2_Full_BIT = 0x22 -+ ETHTOOL_LINK_MODE_50000baseKR2_Full_BIT = 0x23 -+ ETHTOOL_LINK_MODE_100000baseKR4_Full_BIT = 0x24 -+ ETHTOOL_LINK_MODE_100000baseSR4_Full_BIT = 0x25 -+ ETHTOOL_LINK_MODE_100000baseCR4_Full_BIT = 0x26 -+ ETHTOOL_LINK_MODE_100000baseLR4_ER4_Full_BIT = 0x27 -+ ETHTOOL_LINK_MODE_50000baseSR2_Full_BIT = 0x28 -+ ETHTOOL_LINK_MODE_1000baseX_Full_BIT = 0x29 -+ ETHTOOL_LINK_MODE_10000baseCR_Full_BIT = 0x2a -+ ETHTOOL_LINK_MODE_10000baseSR_Full_BIT = 0x2b -+ ETHTOOL_LINK_MODE_10000baseLR_Full_BIT = 0x2c -+ ETHTOOL_LINK_MODE_10000baseLRM_Full_BIT = 0x2d -+ ETHTOOL_LINK_MODE_10000baseER_Full_BIT = 0x2e -+ ETHTOOL_LINK_MODE_2500baseT_Full_BIT = 0x2f -+ ETHTOOL_LINK_MODE_5000baseT_Full_BIT = 0x30 -+ ETHTOOL_LINK_MODE_FEC_NONE_BIT = 0x31 -+ ETHTOOL_LINK_MODE_FEC_RS_BIT = 0x32 -+ ETHTOOL_LINK_MODE_FEC_BASER_BIT = 0x33 -+ ETHTOOL_LINK_MODE_50000baseKR_Full_BIT = 0x34 -+ ETHTOOL_LINK_MODE_50000baseSR_Full_BIT = 0x35 -+ ETHTOOL_LINK_MODE_50000baseCR_Full_BIT = 0x36 -+ ETHTOOL_LINK_MODE_50000baseLR_ER_FR_Full_BIT = 0x37 -+ ETHTOOL_LINK_MODE_50000baseDR_Full_BIT = 0x38 -+ ETHTOOL_LINK_MODE_100000baseKR2_Full_BIT = 0x39 -+ ETHTOOL_LINK_MODE_100000baseSR2_Full_BIT = 0x3a -+ ETHTOOL_LINK_MODE_100000baseCR2_Full_BIT = 0x3b -+ ETHTOOL_LINK_MODE_100000baseLR2_ER2_FR2_Full_BIT = 0x3c -+ ETHTOOL_LINK_MODE_100000baseDR2_Full_BIT = 0x3d -+ ETHTOOL_LINK_MODE_200000baseKR4_Full_BIT = 0x3e -+ ETHTOOL_LINK_MODE_200000baseSR4_Full_BIT = 0x3f -+ ETHTOOL_LINK_MODE_200000baseLR4_ER4_FR4_Full_BIT = 0x40 -+ ETHTOOL_LINK_MODE_200000baseDR4_Full_BIT = 0x41 -+ ETHTOOL_LINK_MODE_200000baseCR4_Full_BIT = 0x42 -+ ETHTOOL_LINK_MODE_100baseT1_Full_BIT = 0x43 -+ ETHTOOL_LINK_MODE_1000baseT1_Full_BIT = 0x44 -+ ETHTOOL_LINK_MODE_400000baseKR8_Full_BIT = 0x45 -+ ETHTOOL_LINK_MODE_400000baseSR8_Full_BIT = 0x46 -+ ETHTOOL_LINK_MODE_400000baseLR8_ER8_FR8_Full_BIT = 0x47 -+ ETHTOOL_LINK_MODE_400000baseDR8_Full_BIT = 0x48 -+ ETHTOOL_LINK_MODE_400000baseCR8_Full_BIT = 0x49 -+ ETHTOOL_LINK_MODE_FEC_LLRS_BIT = 0x4a -+ ETHTOOL_LINK_MODE_100000baseKR_Full_BIT = 0x4b -+ ETHTOOL_LINK_MODE_100000baseSR_Full_BIT = 0x4c -+ ETHTOOL_LINK_MODE_100000baseLR_ER_FR_Full_BIT = 0x4d -+ ETHTOOL_LINK_MODE_100000baseCR_Full_BIT = 0x4e -+ ETHTOOL_LINK_MODE_100000baseDR_Full_BIT = 0x4f -+ ETHTOOL_LINK_MODE_200000baseKR2_Full_BIT = 0x50 -+ ETHTOOL_LINK_MODE_200000baseSR2_Full_BIT = 0x51 -+ ETHTOOL_LINK_MODE_200000baseLR2_ER2_FR2_Full_BIT = 0x52 -+ ETHTOOL_LINK_MODE_200000baseDR2_Full_BIT = 0x53 -+ ETHTOOL_LINK_MODE_200000baseCR2_Full_BIT = 0x54 -+ ETHTOOL_LINK_MODE_400000baseKR4_Full_BIT = 0x55 -+ ETHTOOL_LINK_MODE_400000baseSR4_Full_BIT = 0x56 -+ ETHTOOL_LINK_MODE_400000baseLR4_ER4_FR4_Full_BIT = 0x57 -+ ETHTOOL_LINK_MODE_400000baseDR4_Full_BIT = 0x58 -+ ETHTOOL_LINK_MODE_400000baseCR4_Full_BIT = 0x59 -+ ETHTOOL_LINK_MODE_100baseFX_Half_BIT = 0x5a -+ ETHTOOL_LINK_MODE_100baseFX_Full_BIT = 0x5b -+ -+ ETHTOOL_MSG_USER_NONE = 0x0 -+ ETHTOOL_MSG_STRSET_GET = 0x1 -+ ETHTOOL_MSG_LINKINFO_GET = 0x2 -+ ETHTOOL_MSG_LINKINFO_SET = 0x3 -+ ETHTOOL_MSG_LINKMODES_GET = 0x4 -+ ETHTOOL_MSG_LINKMODES_SET = 0x5 -+ ETHTOOL_MSG_LINKSTATE_GET = 0x6 -+ ETHTOOL_MSG_DEBUG_GET = 0x7 -+ ETHTOOL_MSG_DEBUG_SET = 0x8 -+ ETHTOOL_MSG_WOL_GET = 0x9 -+ ETHTOOL_MSG_WOL_SET = 0xa -+ ETHTOOL_MSG_FEATURES_GET = 0xb -+ ETHTOOL_MSG_FEATURES_SET = 0xc -+ ETHTOOL_MSG_PRIVFLAGS_GET = 0xd -+ ETHTOOL_MSG_PRIVFLAGS_SET = 0xe -+ ETHTOOL_MSG_RINGS_GET = 0xf -+ ETHTOOL_MSG_RINGS_SET = 0x10 -+ ETHTOOL_MSG_CHANNELS_GET = 0x11 -+ ETHTOOL_MSG_CHANNELS_SET = 0x12 -+ ETHTOOL_MSG_COALESCE_GET = 0x13 -+ ETHTOOL_MSG_COALESCE_SET = 0x14 -+ ETHTOOL_MSG_PAUSE_GET = 0x15 -+ ETHTOOL_MSG_PAUSE_SET = 0x16 -+ ETHTOOL_MSG_EEE_GET = 0x17 -+ ETHTOOL_MSG_EEE_SET = 0x18 -+ ETHTOOL_MSG_TSINFO_GET = 0x19 -+ ETHTOOL_MSG_CABLE_TEST_ACT = 0x1a -+ ETHTOOL_MSG_CABLE_TEST_TDR_ACT = 0x1b -+ ETHTOOL_MSG_TUNNEL_INFO_GET = 0x1c -+ ETHTOOL_MSG_FEC_GET = 0x1d -+ ETHTOOL_MSG_FEC_SET = 0x1e -+ ETHTOOL_MSG_MODULE_EEPROM_GET = 0x1f -+ ETHTOOL_MSG_STATS_GET = 0x20 -+ ETHTOOL_MSG_PHC_VCLOCKS_GET = 0x21 -+ ETHTOOL_MSG_MODULE_GET = 0x22 -+ ETHTOOL_MSG_MODULE_SET = 0x23 -+ ETHTOOL_MSG_USER_MAX = 0x23 -+ ETHTOOL_MSG_KERNEL_NONE = 0x0 -+ ETHTOOL_MSG_STRSET_GET_REPLY = 0x1 -+ ETHTOOL_MSG_LINKINFO_GET_REPLY = 0x2 -+ ETHTOOL_MSG_LINKINFO_NTF = 0x3 -+ ETHTOOL_MSG_LINKMODES_GET_REPLY = 0x4 -+ ETHTOOL_MSG_LINKMODES_NTF = 0x5 -+ ETHTOOL_MSG_LINKSTATE_GET_REPLY = 0x6 -+ ETHTOOL_MSG_DEBUG_GET_REPLY = 0x7 -+ ETHTOOL_MSG_DEBUG_NTF = 0x8 -+ ETHTOOL_MSG_WOL_GET_REPLY = 0x9 -+ ETHTOOL_MSG_WOL_NTF = 0xa -+ ETHTOOL_MSG_FEATURES_GET_REPLY = 0xb -+ ETHTOOL_MSG_FEATURES_SET_REPLY = 0xc -+ ETHTOOL_MSG_FEATURES_NTF = 0xd -+ ETHTOOL_MSG_PRIVFLAGS_GET_REPLY = 0xe -+ ETHTOOL_MSG_PRIVFLAGS_NTF = 0xf -+ ETHTOOL_MSG_RINGS_GET_REPLY = 0x10 -+ ETHTOOL_MSG_RINGS_NTF = 0x11 -+ ETHTOOL_MSG_CHANNELS_GET_REPLY = 0x12 -+ ETHTOOL_MSG_CHANNELS_NTF = 0x13 -+ ETHTOOL_MSG_COALESCE_GET_REPLY = 0x14 -+ ETHTOOL_MSG_COALESCE_NTF = 0x15 -+ ETHTOOL_MSG_PAUSE_GET_REPLY = 0x16 -+ ETHTOOL_MSG_PAUSE_NTF = 0x17 -+ ETHTOOL_MSG_EEE_GET_REPLY = 0x18 -+ ETHTOOL_MSG_EEE_NTF = 0x19 -+ ETHTOOL_MSG_TSINFO_GET_REPLY = 0x1a -+ ETHTOOL_MSG_CABLE_TEST_NTF = 0x1b -+ ETHTOOL_MSG_CABLE_TEST_TDR_NTF = 0x1c -+ ETHTOOL_MSG_TUNNEL_INFO_GET_REPLY = 0x1d -+ ETHTOOL_MSG_FEC_GET_REPLY = 0x1e -+ ETHTOOL_MSG_FEC_NTF = 0x1f -+ ETHTOOL_MSG_MODULE_EEPROM_GET_REPLY = 0x20 -+ ETHTOOL_MSG_STATS_GET_REPLY = 0x21 -+ ETHTOOL_MSG_PHC_VCLOCKS_GET_REPLY = 0x22 -+ ETHTOOL_MSG_MODULE_GET_REPLY = 0x23 -+ ETHTOOL_MSG_MODULE_NTF = 0x24 -+ ETHTOOL_MSG_KERNEL_MAX = 0x24 -+ ETHTOOL_A_HEADER_UNSPEC = 0x0 -+ ETHTOOL_A_HEADER_DEV_INDEX = 0x1 -+ ETHTOOL_A_HEADER_DEV_NAME = 0x2 -+ ETHTOOL_A_HEADER_FLAGS = 0x3 -+ ETHTOOL_A_HEADER_MAX = 0x3 -+ ETHTOOL_A_BITSET_BIT_UNSPEC = 0x0 -+ ETHTOOL_A_BITSET_BIT_INDEX = 0x1 -+ ETHTOOL_A_BITSET_BIT_NAME = 0x2 -+ ETHTOOL_A_BITSET_BIT_VALUE = 0x3 -+ ETHTOOL_A_BITSET_BIT_MAX = 0x3 -+ ETHTOOL_A_BITSET_BITS_UNSPEC = 0x0 -+ ETHTOOL_A_BITSET_BITS_BIT = 0x1 -+ ETHTOOL_A_BITSET_BITS_MAX = 0x1 -+ ETHTOOL_A_BITSET_UNSPEC = 0x0 -+ ETHTOOL_A_BITSET_NOMASK = 0x1 -+ ETHTOOL_A_BITSET_SIZE = 0x2 -+ ETHTOOL_A_BITSET_BITS = 0x3 -+ ETHTOOL_A_BITSET_VALUE = 0x4 -+ ETHTOOL_A_BITSET_MASK = 0x5 -+ ETHTOOL_A_BITSET_MAX = 0x5 -+ ETHTOOL_A_STRING_UNSPEC = 0x0 -+ ETHTOOL_A_STRING_INDEX = 0x1 -+ ETHTOOL_A_STRING_VALUE = 0x2 -+ ETHTOOL_A_STRING_MAX = 0x2 -+ ETHTOOL_A_STRINGS_UNSPEC = 0x0 -+ ETHTOOL_A_STRINGS_STRING = 0x1 -+ ETHTOOL_A_STRINGS_MAX = 0x1 -+ ETHTOOL_A_STRINGSET_UNSPEC = 0x0 -+ ETHTOOL_A_STRINGSET_ID = 0x1 -+ ETHTOOL_A_STRINGSET_COUNT = 0x2 -+ ETHTOOL_A_STRINGSET_STRINGS = 0x3 -+ ETHTOOL_A_STRINGSET_MAX = 0x3 -+ ETHTOOL_A_STRINGSETS_UNSPEC = 0x0 -+ ETHTOOL_A_STRINGSETS_STRINGSET = 0x1 -+ ETHTOOL_A_STRINGSETS_MAX = 0x1 -+ ETHTOOL_A_STRSET_UNSPEC = 0x0 -+ ETHTOOL_A_STRSET_HEADER = 0x1 -+ ETHTOOL_A_STRSET_STRINGSETS = 0x2 -+ ETHTOOL_A_STRSET_COUNTS_ONLY = 0x3 -+ ETHTOOL_A_STRSET_MAX = 0x3 -+ ETHTOOL_A_LINKINFO_UNSPEC = 0x0 -+ ETHTOOL_A_LINKINFO_HEADER = 0x1 -+ ETHTOOL_A_LINKINFO_PORT = 0x2 -+ ETHTOOL_A_LINKINFO_PHYADDR = 0x3 -+ ETHTOOL_A_LINKINFO_TP_MDIX = 0x4 -+ ETHTOOL_A_LINKINFO_TP_MDIX_CTRL = 0x5 -+ ETHTOOL_A_LINKINFO_TRANSCEIVER = 0x6 -+ ETHTOOL_A_LINKINFO_MAX = 0x6 -+ ETHTOOL_A_LINKMODES_UNSPEC = 0x0 -+ ETHTOOL_A_LINKMODES_HEADER = 0x1 -+ ETHTOOL_A_LINKMODES_AUTONEG = 0x2 -+ ETHTOOL_A_LINKMODES_OURS = 0x3 -+ ETHTOOL_A_LINKMODES_PEER = 0x4 -+ ETHTOOL_A_LINKMODES_SPEED = 0x5 -+ ETHTOOL_A_LINKMODES_DUPLEX = 0x6 -+ ETHTOOL_A_LINKMODES_MASTER_SLAVE_CFG = 0x7 -+ ETHTOOL_A_LINKMODES_MASTER_SLAVE_STATE = 0x8 -+ ETHTOOL_A_LINKMODES_LANES = 0x9 -+ ETHTOOL_A_LINKMODES_MAX = 0x9 -+ ETHTOOL_A_LINKSTATE_UNSPEC = 0x0 -+ ETHTOOL_A_LINKSTATE_HEADER = 0x1 -+ ETHTOOL_A_LINKSTATE_LINK = 0x2 -+ ETHTOOL_A_LINKSTATE_SQI = 0x3 -+ ETHTOOL_A_LINKSTATE_SQI_MAX = 0x4 -+ ETHTOOL_A_LINKSTATE_EXT_STATE = 0x5 -+ ETHTOOL_A_LINKSTATE_EXT_SUBSTATE = 0x6 -+ ETHTOOL_A_LINKSTATE_MAX = 0x6 -+ ETHTOOL_A_DEBUG_UNSPEC = 0x0 -+ ETHTOOL_A_DEBUG_HEADER = 0x1 -+ ETHTOOL_A_DEBUG_MSGMASK = 0x2 -+ ETHTOOL_A_DEBUG_MAX = 0x2 -+ ETHTOOL_A_WOL_UNSPEC = 0x0 -+ ETHTOOL_A_WOL_HEADER = 0x1 -+ ETHTOOL_A_WOL_MODES = 0x2 -+ ETHTOOL_A_WOL_SOPASS = 0x3 -+ ETHTOOL_A_WOL_MAX = 0x3 -+ ETHTOOL_A_FEATURES_UNSPEC = 0x0 -+ ETHTOOL_A_FEATURES_HEADER = 0x1 -+ ETHTOOL_A_FEATURES_HW = 0x2 -+ ETHTOOL_A_FEATURES_WANTED = 0x3 -+ ETHTOOL_A_FEATURES_ACTIVE = 0x4 -+ ETHTOOL_A_FEATURES_NOCHANGE = 0x5 -+ ETHTOOL_A_FEATURES_MAX = 0x5 -+ ETHTOOL_A_PRIVFLAGS_UNSPEC = 0x0 -+ ETHTOOL_A_PRIVFLAGS_HEADER = 0x1 -+ ETHTOOL_A_PRIVFLAGS_FLAGS = 0x2 -+ ETHTOOL_A_PRIVFLAGS_MAX = 0x2 -+ ETHTOOL_A_RINGS_UNSPEC = 0x0 -+ ETHTOOL_A_RINGS_HEADER = 0x1 -+ ETHTOOL_A_RINGS_RX_MAX = 0x2 -+ ETHTOOL_A_RINGS_RX_MINI_MAX = 0x3 -+ ETHTOOL_A_RINGS_RX_JUMBO_MAX = 0x4 -+ ETHTOOL_A_RINGS_TX_MAX = 0x5 -+ ETHTOOL_A_RINGS_RX = 0x6 -+ ETHTOOL_A_RINGS_RX_MINI = 0x7 -+ ETHTOOL_A_RINGS_RX_JUMBO = 0x8 -+ ETHTOOL_A_RINGS_TX = 0x9 -+ ETHTOOL_A_RINGS_RX_BUF_LEN = 0xa -+ ETHTOOL_A_RINGS_TCP_DATA_SPLIT = 0xb -+ ETHTOOL_A_RINGS_CQE_SIZE = 0xc -+ ETHTOOL_A_RINGS_TX_PUSH = 0xd -+ ETHTOOL_A_RINGS_MAX = 0xd -+ ETHTOOL_A_CHANNELS_UNSPEC = 0x0 -+ ETHTOOL_A_CHANNELS_HEADER = 0x1 -+ ETHTOOL_A_CHANNELS_RX_MAX = 0x2 -+ ETHTOOL_A_CHANNELS_TX_MAX = 0x3 -+ ETHTOOL_A_CHANNELS_OTHER_MAX = 0x4 -+ ETHTOOL_A_CHANNELS_COMBINED_MAX = 0x5 -+ ETHTOOL_A_CHANNELS_RX_COUNT = 0x6 -+ ETHTOOL_A_CHANNELS_TX_COUNT = 0x7 -+ ETHTOOL_A_CHANNELS_OTHER_COUNT = 0x8 -+ ETHTOOL_A_CHANNELS_COMBINED_COUNT = 0x9 -+ ETHTOOL_A_CHANNELS_MAX = 0x9 -+ ETHTOOL_A_COALESCE_UNSPEC = 0x0 -+ ETHTOOL_A_COALESCE_HEADER = 0x1 -+ ETHTOOL_A_COALESCE_RX_USECS = 0x2 -+ ETHTOOL_A_COALESCE_RX_MAX_FRAMES = 0x3 -+ ETHTOOL_A_COALESCE_RX_USECS_IRQ = 0x4 -+ ETHTOOL_A_COALESCE_RX_MAX_FRAMES_IRQ = 0x5 -+ ETHTOOL_A_COALESCE_TX_USECS = 0x6 -+ ETHTOOL_A_COALESCE_TX_MAX_FRAMES = 0x7 -+ ETHTOOL_A_COALESCE_TX_USECS_IRQ = 0x8 -+ ETHTOOL_A_COALESCE_TX_MAX_FRAMES_IRQ = 0x9 -+ ETHTOOL_A_COALESCE_STATS_BLOCK_USECS = 0xa -+ ETHTOOL_A_COALESCE_USE_ADAPTIVE_RX = 0xb -+ ETHTOOL_A_COALESCE_USE_ADAPTIVE_TX = 0xc -+ ETHTOOL_A_COALESCE_PKT_RATE_LOW = 0xd -+ ETHTOOL_A_COALESCE_RX_USECS_LOW = 0xe -+ ETHTOOL_A_COALESCE_RX_MAX_FRAMES_LOW = 0xf -+ ETHTOOL_A_COALESCE_TX_USECS_LOW = 0x10 -+ ETHTOOL_A_COALESCE_TX_MAX_FRAMES_LOW = 0x11 -+ ETHTOOL_A_COALESCE_PKT_RATE_HIGH = 0x12 -+ ETHTOOL_A_COALESCE_RX_USECS_HIGH = 0x13 -+ ETHTOOL_A_COALESCE_RX_MAX_FRAMES_HIGH = 0x14 -+ ETHTOOL_A_COALESCE_TX_USECS_HIGH = 0x15 -+ ETHTOOL_A_COALESCE_TX_MAX_FRAMES_HIGH = 0x16 -+ ETHTOOL_A_COALESCE_RATE_SAMPLE_INTERVAL = 0x17 -+ ETHTOOL_A_COALESCE_USE_CQE_MODE_TX = 0x18 -+ ETHTOOL_A_COALESCE_USE_CQE_MODE_RX = 0x19 -+ ETHTOOL_A_COALESCE_MAX = 0x19 -+ ETHTOOL_A_PAUSE_UNSPEC = 0x0 -+ ETHTOOL_A_PAUSE_HEADER = 0x1 -+ ETHTOOL_A_PAUSE_AUTONEG = 0x2 -+ ETHTOOL_A_PAUSE_RX = 0x3 -+ ETHTOOL_A_PAUSE_TX = 0x4 -+ ETHTOOL_A_PAUSE_STATS = 0x5 -+ ETHTOOL_A_PAUSE_MAX = 0x5 -+ ETHTOOL_A_PAUSE_STAT_UNSPEC = 0x0 -+ ETHTOOL_A_PAUSE_STAT_PAD = 0x1 -+ ETHTOOL_A_PAUSE_STAT_TX_FRAMES = 0x2 -+ ETHTOOL_A_PAUSE_STAT_RX_FRAMES = 0x3 -+ ETHTOOL_A_PAUSE_STAT_MAX = 0x3 -+ ETHTOOL_A_EEE_UNSPEC = 0x0 -+ ETHTOOL_A_EEE_HEADER = 0x1 -+ ETHTOOL_A_EEE_MODES_OURS = 0x2 -+ ETHTOOL_A_EEE_MODES_PEER = 0x3 -+ ETHTOOL_A_EEE_ACTIVE = 0x4 -+ ETHTOOL_A_EEE_ENABLED = 0x5 -+ ETHTOOL_A_EEE_TX_LPI_ENABLED = 0x6 -+ ETHTOOL_A_EEE_TX_LPI_TIMER = 0x7 -+ ETHTOOL_A_EEE_MAX = 0x7 -+ ETHTOOL_A_TSINFO_UNSPEC = 0x0 -+ ETHTOOL_A_TSINFO_HEADER = 0x1 -+ ETHTOOL_A_TSINFO_TIMESTAMPING = 0x2 -+ ETHTOOL_A_TSINFO_TX_TYPES = 0x3 -+ ETHTOOL_A_TSINFO_RX_FILTERS = 0x4 -+ ETHTOOL_A_TSINFO_PHC_INDEX = 0x5 -+ ETHTOOL_A_TSINFO_MAX = 0x5 -+ ETHTOOL_A_CABLE_TEST_UNSPEC = 0x0 -+ ETHTOOL_A_CABLE_TEST_HEADER = 0x1 -+ ETHTOOL_A_CABLE_TEST_MAX = 0x1 -+ ETHTOOL_A_CABLE_RESULT_CODE_UNSPEC = 0x0 -+ ETHTOOL_A_CABLE_RESULT_CODE_OK = 0x1 -+ ETHTOOL_A_CABLE_RESULT_CODE_OPEN = 0x2 -+ ETHTOOL_A_CABLE_RESULT_CODE_SAME_SHORT = 0x3 -+ ETHTOOL_A_CABLE_RESULT_CODE_CROSS_SHORT = 0x4 -+ ETHTOOL_A_CABLE_PAIR_A = 0x0 -+ ETHTOOL_A_CABLE_PAIR_B = 0x1 -+ ETHTOOL_A_CABLE_PAIR_C = 0x2 -+ ETHTOOL_A_CABLE_PAIR_D = 0x3 -+ ETHTOOL_A_CABLE_RESULT_UNSPEC = 0x0 -+ ETHTOOL_A_CABLE_RESULT_PAIR = 0x1 -+ ETHTOOL_A_CABLE_RESULT_CODE = 0x2 -+ ETHTOOL_A_CABLE_RESULT_MAX = 0x2 -+ ETHTOOL_A_CABLE_FAULT_LENGTH_UNSPEC = 0x0 -+ ETHTOOL_A_CABLE_FAULT_LENGTH_PAIR = 0x1 -+ ETHTOOL_A_CABLE_FAULT_LENGTH_CM = 0x2 -+ ETHTOOL_A_CABLE_FAULT_LENGTH_MAX = 0x2 -+ ETHTOOL_A_CABLE_TEST_NTF_STATUS_UNSPEC = 0x0 -+ ETHTOOL_A_CABLE_TEST_NTF_STATUS_STARTED = 0x1 -+ ETHTOOL_A_CABLE_TEST_NTF_STATUS_COMPLETED = 0x2 -+ ETHTOOL_A_CABLE_NEST_UNSPEC = 0x0 -+ ETHTOOL_A_CABLE_NEST_RESULT = 0x1 -+ ETHTOOL_A_CABLE_NEST_FAULT_LENGTH = 0x2 -+ ETHTOOL_A_CABLE_NEST_MAX = 0x2 -+ ETHTOOL_A_CABLE_TEST_NTF_UNSPEC = 0x0 -+ ETHTOOL_A_CABLE_TEST_NTF_HEADER = 0x1 -+ ETHTOOL_A_CABLE_TEST_NTF_STATUS = 0x2 -+ ETHTOOL_A_CABLE_TEST_NTF_NEST = 0x3 -+ ETHTOOL_A_CABLE_TEST_NTF_MAX = 0x3 -+ ETHTOOL_A_CABLE_TEST_TDR_CFG_UNSPEC = 0x0 -+ ETHTOOL_A_CABLE_TEST_TDR_CFG_FIRST = 0x1 -+ ETHTOOL_A_CABLE_TEST_TDR_CFG_LAST = 0x2 -+ ETHTOOL_A_CABLE_TEST_TDR_CFG_STEP = 0x3 -+ ETHTOOL_A_CABLE_TEST_TDR_CFG_PAIR = 0x4 -+ ETHTOOL_A_CABLE_TEST_TDR_CFG_MAX = 0x4 -+ ETHTOOL_A_CABLE_TEST_TDR_UNSPEC = 0x0 -+ ETHTOOL_A_CABLE_TEST_TDR_HEADER = 0x1 -+ ETHTOOL_A_CABLE_TEST_TDR_CFG = 0x2 -+ ETHTOOL_A_CABLE_TEST_TDR_MAX = 0x2 -+ ETHTOOL_A_CABLE_AMPLITUDE_UNSPEC = 0x0 -+ ETHTOOL_A_CABLE_AMPLITUDE_PAIR = 0x1 -+ ETHTOOL_A_CABLE_AMPLITUDE_mV = 0x2 -+ ETHTOOL_A_CABLE_AMPLITUDE_MAX = 0x2 -+ ETHTOOL_A_CABLE_PULSE_UNSPEC = 0x0 -+ ETHTOOL_A_CABLE_PULSE_mV = 0x1 -+ ETHTOOL_A_CABLE_PULSE_MAX = 0x1 -+ ETHTOOL_A_CABLE_STEP_UNSPEC = 0x0 -+ ETHTOOL_A_CABLE_STEP_FIRST_DISTANCE = 0x1 -+ ETHTOOL_A_CABLE_STEP_LAST_DISTANCE = 0x2 -+ ETHTOOL_A_CABLE_STEP_STEP_DISTANCE = 0x3 -+ ETHTOOL_A_CABLE_STEP_MAX = 0x3 -+ ETHTOOL_A_CABLE_TDR_NEST_UNSPEC = 0x0 -+ ETHTOOL_A_CABLE_TDR_NEST_STEP = 0x1 -+ ETHTOOL_A_CABLE_TDR_NEST_AMPLITUDE = 0x2 -+ ETHTOOL_A_CABLE_TDR_NEST_PULSE = 0x3 -+ ETHTOOL_A_CABLE_TDR_NEST_MAX = 0x3 -+ ETHTOOL_A_CABLE_TEST_TDR_NTF_UNSPEC = 0x0 -+ ETHTOOL_A_CABLE_TEST_TDR_NTF_HEADER = 0x1 -+ ETHTOOL_A_CABLE_TEST_TDR_NTF_STATUS = 0x2 -+ ETHTOOL_A_CABLE_TEST_TDR_NTF_NEST = 0x3 -+ ETHTOOL_A_CABLE_TEST_TDR_NTF_MAX = 0x3 -+ ETHTOOL_UDP_TUNNEL_TYPE_VXLAN = 0x0 -+ ETHTOOL_UDP_TUNNEL_TYPE_GENEVE = 0x1 -+ ETHTOOL_UDP_TUNNEL_TYPE_VXLAN_GPE = 0x2 -+ ETHTOOL_A_TUNNEL_UDP_ENTRY_UNSPEC = 0x0 -+ ETHTOOL_A_TUNNEL_UDP_ENTRY_PORT = 0x1 -+ ETHTOOL_A_TUNNEL_UDP_ENTRY_TYPE = 0x2 -+ ETHTOOL_A_TUNNEL_UDP_ENTRY_MAX = 0x2 -+ ETHTOOL_A_TUNNEL_UDP_TABLE_UNSPEC = 0x0 -+ ETHTOOL_A_TUNNEL_UDP_TABLE_SIZE = 0x1 -+ ETHTOOL_A_TUNNEL_UDP_TABLE_TYPES = 0x2 -+ ETHTOOL_A_TUNNEL_UDP_TABLE_ENTRY = 0x3 -+ ETHTOOL_A_TUNNEL_UDP_TABLE_MAX = 0x3 -+ ETHTOOL_A_TUNNEL_UDP_UNSPEC = 0x0 -+ ETHTOOL_A_TUNNEL_UDP_TABLE = 0x1 -+ ETHTOOL_A_TUNNEL_UDP_MAX = 0x1 -+ ETHTOOL_A_TUNNEL_INFO_UNSPEC = 0x0 -+ ETHTOOL_A_TUNNEL_INFO_HEADER = 0x1 -+ ETHTOOL_A_TUNNEL_INFO_UDP_PORTS = 0x2 -+ ETHTOOL_A_TUNNEL_INFO_MAX = 0x2 -+) -+ -+const SPEED_UNKNOWN = -0x1 -+ -+type EthtoolDrvinfo struct { -+ Cmd uint32 -+ Driver [32]byte -+ Version [32]byte -+ Fw_version [32]byte -+ Bus_info [32]byte -+ Erom_version [32]byte -+ Reserved2 [12]byte -+ N_priv_flags uint32 -+ N_stats uint32 -+ Testinfo_len uint32 -+ Eedump_len uint32 -+ Regdump_len uint32 -+} -+ -+type ( -+ HIDRawReportDescriptor struct { -+ Size uint32 -+ Value [4096]uint8 -+ } -+ HIDRawDevInfo struct { -+ Bustype uint32 -+ Vendor int16 -+ Product int16 -+ } -+) -+ -+const ( -+ CLOSE_RANGE_UNSHARE = 0x2 -+ CLOSE_RANGE_CLOEXEC = 0x4 -+) -+ -+const ( -+ NLMSGERR_ATTR_MSG = 0x1 -+ NLMSGERR_ATTR_OFFS = 0x2 -+ NLMSGERR_ATTR_COOKIE = 0x3 -+) -+ -+type ( -+ EraseInfo struct { -+ Start uint32 -+ Length uint32 -+ } -+ EraseInfo64 struct { -+ Start uint64 -+ Length uint64 -+ } -+ MtdOobBuf struct { -+ Start uint32 -+ Length uint32 -+ Ptr *uint8 -+ } -+ MtdOobBuf64 struct { -+ Start uint64 -+ Pad uint32 -+ Length uint32 -+ Ptr uint64 -+ } -+ MtdWriteReq struct { -+ Start uint64 -+ Len uint64 -+ Ooblen uint64 -+ Data uint64 -+ Oob uint64 -+ Mode uint8 -+ _ [7]uint8 -+ } -+ MtdInfo struct { -+ Type uint8 -+ Flags uint32 -+ Size uint32 -+ Erasesize uint32 -+ Writesize uint32 -+ Oobsize uint32 -+ _ uint64 -+ } -+ RegionInfo struct { -+ Offset uint32 -+ Erasesize uint32 -+ Numblocks uint32 -+ Regionindex uint32 -+ } -+ OtpInfo struct { -+ Start uint32 -+ Length uint32 -+ Locked uint32 -+ } -+ NandOobinfo struct { -+ Useecc uint32 -+ Eccbytes uint32 -+ Oobfree [8][2]uint32 -+ Eccpos [32]uint32 -+ } -+ NandOobfree struct { -+ Offset uint32 -+ Length uint32 -+ } -+ NandEcclayout struct { -+ Eccbytes uint32 -+ Eccpos [64]uint32 -+ Oobavail uint32 -+ Oobfree [8]NandOobfree -+ } -+ MtdEccStats struct { -+ Corrected uint32 -+ Failed uint32 -+ Badblocks uint32 -+ Bbtblocks uint32 -+ } -+) -+ -+const ( -+ MTD_OPS_PLACE_OOB = 0x0 -+ MTD_OPS_AUTO_OOB = 0x1 -+ MTD_OPS_RAW = 0x2 -+) -+ -+const ( -+ MTD_FILE_MODE_NORMAL = 0x0 -+ MTD_FILE_MODE_OTP_FACTORY = 0x1 -+ MTD_FILE_MODE_OTP_USER = 0x2 -+ MTD_FILE_MODE_RAW = 0x3 -+) -+ -+const ( -+ NFC_CMD_UNSPEC = 0x0 -+ NFC_CMD_GET_DEVICE = 0x1 -+ NFC_CMD_DEV_UP = 0x2 -+ NFC_CMD_DEV_DOWN = 0x3 -+ NFC_CMD_DEP_LINK_UP = 0x4 -+ NFC_CMD_DEP_LINK_DOWN = 0x5 -+ NFC_CMD_START_POLL = 0x6 -+ NFC_CMD_STOP_POLL = 0x7 -+ NFC_CMD_GET_TARGET = 0x8 -+ NFC_EVENT_TARGETS_FOUND = 0x9 -+ NFC_EVENT_DEVICE_ADDED = 0xa -+ NFC_EVENT_DEVICE_REMOVED = 0xb -+ NFC_EVENT_TARGET_LOST = 0xc -+ NFC_EVENT_TM_ACTIVATED = 0xd -+ NFC_EVENT_TM_DEACTIVATED = 0xe -+ NFC_CMD_LLC_GET_PARAMS = 0xf -+ NFC_CMD_LLC_SET_PARAMS = 0x10 -+ NFC_CMD_ENABLE_SE = 0x11 -+ NFC_CMD_DISABLE_SE = 0x12 -+ NFC_CMD_LLC_SDREQ = 0x13 -+ NFC_EVENT_LLC_SDRES = 0x14 -+ NFC_CMD_FW_DOWNLOAD = 0x15 -+ NFC_EVENT_SE_ADDED = 0x16 -+ NFC_EVENT_SE_REMOVED = 0x17 -+ NFC_EVENT_SE_CONNECTIVITY = 0x18 -+ NFC_EVENT_SE_TRANSACTION = 0x19 -+ NFC_CMD_GET_SE = 0x1a -+ NFC_CMD_SE_IO = 0x1b -+ NFC_CMD_ACTIVATE_TARGET = 0x1c -+ NFC_CMD_VENDOR = 0x1d -+ NFC_CMD_DEACTIVATE_TARGET = 0x1e -+ NFC_ATTR_UNSPEC = 0x0 -+ NFC_ATTR_DEVICE_INDEX = 0x1 -+ NFC_ATTR_DEVICE_NAME = 0x2 -+ NFC_ATTR_PROTOCOLS = 0x3 -+ NFC_ATTR_TARGET_INDEX = 0x4 -+ NFC_ATTR_TARGET_SENS_RES = 0x5 -+ NFC_ATTR_TARGET_SEL_RES = 0x6 -+ NFC_ATTR_TARGET_NFCID1 = 0x7 -+ NFC_ATTR_TARGET_SENSB_RES = 0x8 -+ NFC_ATTR_TARGET_SENSF_RES = 0x9 -+ NFC_ATTR_COMM_MODE = 0xa -+ NFC_ATTR_RF_MODE = 0xb -+ NFC_ATTR_DEVICE_POWERED = 0xc -+ NFC_ATTR_IM_PROTOCOLS = 0xd -+ NFC_ATTR_TM_PROTOCOLS = 0xe -+ NFC_ATTR_LLC_PARAM_LTO = 0xf -+ NFC_ATTR_LLC_PARAM_RW = 0x10 -+ NFC_ATTR_LLC_PARAM_MIUX = 0x11 -+ NFC_ATTR_SE = 0x12 -+ NFC_ATTR_LLC_SDP = 0x13 -+ NFC_ATTR_FIRMWARE_NAME = 0x14 -+ NFC_ATTR_SE_INDEX = 0x15 -+ NFC_ATTR_SE_TYPE = 0x16 -+ NFC_ATTR_SE_AID = 0x17 -+ NFC_ATTR_FIRMWARE_DOWNLOAD_STATUS = 0x18 -+ NFC_ATTR_SE_APDU = 0x19 -+ NFC_ATTR_TARGET_ISO15693_DSFID = 0x1a -+ NFC_ATTR_TARGET_ISO15693_UID = 0x1b -+ NFC_ATTR_SE_PARAMS = 0x1c -+ NFC_ATTR_VENDOR_ID = 0x1d -+ NFC_ATTR_VENDOR_SUBCMD = 0x1e -+ NFC_ATTR_VENDOR_DATA = 0x1f -+ NFC_SDP_ATTR_UNSPEC = 0x0 -+ NFC_SDP_ATTR_URI = 0x1 -+ NFC_SDP_ATTR_SAP = 0x2 -+) -+ -+type LandlockRulesetAttr struct { -+ Access_fs uint64 -+} -+ -+type LandlockPathBeneathAttr struct { -+ Allowed_access uint64 -+ Parent_fd int32 -+} -+ -+const ( -+ LANDLOCK_RULE_PATH_BENEATH = 0x1 -+) -+ -+const ( -+ IPC_CREAT = 0x200 -+ IPC_EXCL = 0x400 -+ IPC_NOWAIT = 0x800 -+ IPC_PRIVATE = 0x0 -+ -+ ipc_64 = 0x100 -+) -+ -+const ( -+ IPC_RMID = 0x0 -+ IPC_SET = 0x1 -+ IPC_STAT = 0x2 -+) -+ -+const ( -+ SHM_RDONLY = 0x1000 -+ SHM_RND = 0x2000 -+) -+ -+type MountAttr struct { -+ Attr_set uint64 -+ Attr_clr uint64 -+ Propagation uint64 -+ Userns_fd uint64 -+} -+ -+const ( -+ WG_CMD_GET_DEVICE = 0x0 -+ WG_CMD_SET_DEVICE = 0x1 -+ WGDEVICE_F_REPLACE_PEERS = 0x1 -+ WGDEVICE_A_UNSPEC = 0x0 -+ WGDEVICE_A_IFINDEX = 0x1 -+ WGDEVICE_A_IFNAME = 0x2 -+ WGDEVICE_A_PRIVATE_KEY = 0x3 -+ WGDEVICE_A_PUBLIC_KEY = 0x4 -+ WGDEVICE_A_FLAGS = 0x5 -+ WGDEVICE_A_LISTEN_PORT = 0x6 -+ WGDEVICE_A_FWMARK = 0x7 -+ WGDEVICE_A_PEERS = 0x8 -+ WGPEER_F_REMOVE_ME = 0x1 -+ WGPEER_F_REPLACE_ALLOWEDIPS = 0x2 -+ WGPEER_F_UPDATE_ONLY = 0x4 -+ WGPEER_A_UNSPEC = 0x0 -+ WGPEER_A_PUBLIC_KEY = 0x1 -+ WGPEER_A_PRESHARED_KEY = 0x2 -+ WGPEER_A_FLAGS = 0x3 -+ WGPEER_A_ENDPOINT = 0x4 -+ WGPEER_A_PERSISTENT_KEEPALIVE_INTERVAL = 0x5 -+ WGPEER_A_LAST_HANDSHAKE_TIME = 0x6 -+ WGPEER_A_RX_BYTES = 0x7 -+ WGPEER_A_TX_BYTES = 0x8 -+ WGPEER_A_ALLOWEDIPS = 0x9 -+ WGPEER_A_PROTOCOL_VERSION = 0xa -+ WGALLOWEDIP_A_UNSPEC = 0x0 -+ WGALLOWEDIP_A_FAMILY = 0x1 -+ WGALLOWEDIP_A_IPADDR = 0x2 -+ WGALLOWEDIP_A_CIDR_MASK = 0x3 -+) -+ -+const ( -+ NL_ATTR_TYPE_INVALID = 0x0 -+ NL_ATTR_TYPE_FLAG = 0x1 -+ NL_ATTR_TYPE_U8 = 0x2 -+ NL_ATTR_TYPE_U16 = 0x3 -+ NL_ATTR_TYPE_U32 = 0x4 -+ NL_ATTR_TYPE_U64 = 0x5 -+ NL_ATTR_TYPE_S8 = 0x6 -+ NL_ATTR_TYPE_S16 = 0x7 -+ NL_ATTR_TYPE_S32 = 0x8 -+ NL_ATTR_TYPE_S64 = 0x9 -+ NL_ATTR_TYPE_BINARY = 0xa -+ NL_ATTR_TYPE_STRING = 0xb -+ NL_ATTR_TYPE_NUL_STRING = 0xc -+ NL_ATTR_TYPE_NESTED = 0xd -+ NL_ATTR_TYPE_NESTED_ARRAY = 0xe -+ NL_ATTR_TYPE_BITFIELD32 = 0xf -+ -+ NL_POLICY_TYPE_ATTR_UNSPEC = 0x0 -+ NL_POLICY_TYPE_ATTR_TYPE = 0x1 -+ NL_POLICY_TYPE_ATTR_MIN_VALUE_S = 0x2 -+ NL_POLICY_TYPE_ATTR_MAX_VALUE_S = 0x3 -+ NL_POLICY_TYPE_ATTR_MIN_VALUE_U = 0x4 -+ NL_POLICY_TYPE_ATTR_MAX_VALUE_U = 0x5 -+ NL_POLICY_TYPE_ATTR_MIN_LENGTH = 0x6 -+ NL_POLICY_TYPE_ATTR_MAX_LENGTH = 0x7 -+ NL_POLICY_TYPE_ATTR_POLICY_IDX = 0x8 -+ NL_POLICY_TYPE_ATTR_POLICY_MAXTYPE = 0x9 -+ NL_POLICY_TYPE_ATTR_BITFIELD32_MASK = 0xa -+ NL_POLICY_TYPE_ATTR_PAD = 0xb -+ NL_POLICY_TYPE_ATTR_MASK = 0xc -+ NL_POLICY_TYPE_ATTR_MAX = 0xc -+) -+ -+type CANBitTiming struct { -+ Bitrate uint32 -+ Sample_point uint32 -+ Tq uint32 -+ Prop_seg uint32 -+ Phase_seg1 uint32 -+ Phase_seg2 uint32 -+ Sjw uint32 -+ Brp uint32 -+} -+ -+type CANBitTimingConst struct { -+ Name [16]uint8 -+ Tseg1_min uint32 -+ Tseg1_max uint32 -+ Tseg2_min uint32 -+ Tseg2_max uint32 -+ Sjw_max uint32 -+ Brp_min uint32 -+ Brp_max uint32 -+ Brp_inc uint32 -+} -+ -+type CANClock struct { -+ Freq uint32 -+} -+ -+type CANBusErrorCounters struct { -+ Txerr uint16 -+ Rxerr uint16 -+} -+ -+type CANCtrlMode struct { -+ Mask uint32 -+ Flags uint32 -+} -+ -+type CANDeviceStats struct { -+ Bus_error uint32 -+ Error_warning uint32 -+ Error_passive uint32 -+ Bus_off uint32 -+ Arbitration_lost uint32 -+ Restarts uint32 -+} -+ -+const ( -+ CAN_STATE_ERROR_ACTIVE = 0x0 -+ CAN_STATE_ERROR_WARNING = 0x1 -+ CAN_STATE_ERROR_PASSIVE = 0x2 -+ CAN_STATE_BUS_OFF = 0x3 -+ CAN_STATE_STOPPED = 0x4 -+ CAN_STATE_SLEEPING = 0x5 -+ CAN_STATE_MAX = 0x6 -+) -+ -+const ( -+ IFLA_CAN_UNSPEC = 0x0 -+ IFLA_CAN_BITTIMING = 0x1 -+ IFLA_CAN_BITTIMING_CONST = 0x2 -+ IFLA_CAN_CLOCK = 0x3 -+ IFLA_CAN_STATE = 0x4 -+ IFLA_CAN_CTRLMODE = 0x5 -+ IFLA_CAN_RESTART_MS = 0x6 -+ IFLA_CAN_RESTART = 0x7 -+ IFLA_CAN_BERR_COUNTER = 0x8 -+ IFLA_CAN_DATA_BITTIMING = 0x9 -+ IFLA_CAN_DATA_BITTIMING_CONST = 0xa -+ IFLA_CAN_TERMINATION = 0xb -+ IFLA_CAN_TERMINATION_CONST = 0xc -+ IFLA_CAN_BITRATE_CONST = 0xd -+ IFLA_CAN_DATA_BITRATE_CONST = 0xe -+ IFLA_CAN_BITRATE_MAX = 0xf -+) -+ -+type KCMAttach struct { -+ Fd int32 -+ Bpf_fd int32 -+} -+ -+type KCMUnattach struct { -+ Fd int32 -+} -+ -+type KCMClone struct { -+ Fd int32 -+} -+ -+const ( -+ NL80211_AC_BE = 0x2 -+ NL80211_AC_BK = 0x3 -+ NL80211_ACL_POLICY_ACCEPT_UNLESS_LISTED = 0x0 -+ NL80211_ACL_POLICY_DENY_UNLESS_LISTED = 0x1 -+ NL80211_AC_VI = 0x1 -+ NL80211_AC_VO = 0x0 -+ NL80211_ATTR_4ADDR = 0x53 -+ NL80211_ATTR_ACK = 0x5c -+ NL80211_ATTR_ACK_SIGNAL = 0x107 -+ NL80211_ATTR_ACL_POLICY = 0xa5 -+ NL80211_ATTR_ADMITTED_TIME = 0xd4 -+ NL80211_ATTR_AIRTIME_WEIGHT = 0x112 -+ NL80211_ATTR_AKM_SUITES = 0x4c -+ NL80211_ATTR_AP_ISOLATE = 0x60 -+ NL80211_ATTR_AUTH_DATA = 0x9c -+ NL80211_ATTR_AUTH_TYPE = 0x35 -+ NL80211_ATTR_BANDS = 0xef -+ NL80211_ATTR_BEACON_HEAD = 0xe -+ NL80211_ATTR_BEACON_INTERVAL = 0xc -+ NL80211_ATTR_BEACON_TAIL = 0xf -+ NL80211_ATTR_BG_SCAN_PERIOD = 0x98 -+ NL80211_ATTR_BSS_BASIC_RATES = 0x24 -+ NL80211_ATTR_BSS = 0x2f -+ NL80211_ATTR_BSS_CTS_PROT = 0x1c -+ NL80211_ATTR_BSS_HT_OPMODE = 0x6d -+ NL80211_ATTR_BSSID = 0xf5 -+ NL80211_ATTR_BSS_SELECT = 0xe3 -+ NL80211_ATTR_BSS_SHORT_PREAMBLE = 0x1d -+ NL80211_ATTR_BSS_SHORT_SLOT_TIME = 0x1e -+ NL80211_ATTR_CENTER_FREQ1 = 0xa0 -+ NL80211_ATTR_CENTER_FREQ1_OFFSET = 0x123 -+ NL80211_ATTR_CENTER_FREQ2 = 0xa1 -+ NL80211_ATTR_CHANNEL_WIDTH = 0x9f -+ NL80211_ATTR_CH_SWITCH_BLOCK_TX = 0xb8 -+ NL80211_ATTR_CH_SWITCH_COUNT = 0xb7 -+ NL80211_ATTR_CIPHER_SUITE_GROUP = 0x4a -+ NL80211_ATTR_CIPHER_SUITES = 0x39 -+ NL80211_ATTR_CIPHER_SUITES_PAIRWISE = 0x49 -+ NL80211_ATTR_CNTDWN_OFFS_BEACON = 0xba -+ NL80211_ATTR_CNTDWN_OFFS_PRESP = 0xbb -+ NL80211_ATTR_COALESCE_RULE = 0xb6 -+ NL80211_ATTR_COALESCE_RULE_CONDITION = 0x2 -+ NL80211_ATTR_COALESCE_RULE_DELAY = 0x1 -+ NL80211_ATTR_COALESCE_RULE_MAX = 0x3 -+ NL80211_ATTR_COALESCE_RULE_PKT_PATTERN = 0x3 -+ NL80211_ATTR_CONN_FAILED_REASON = 0x9b -+ NL80211_ATTR_CONTROL_PORT = 0x44 -+ NL80211_ATTR_CONTROL_PORT_ETHERTYPE = 0x66 -+ NL80211_ATTR_CONTROL_PORT_NO_ENCRYPT = 0x67 -+ NL80211_ATTR_CONTROL_PORT_NO_PREAUTH = 0x11e -+ NL80211_ATTR_CONTROL_PORT_OVER_NL80211 = 0x108 -+ NL80211_ATTR_COOKIE = 0x58 -+ NL80211_ATTR_CQM_BEACON_LOSS_EVENT = 0x8 -+ NL80211_ATTR_CQM = 0x5e -+ NL80211_ATTR_CQM_MAX = 0x9 -+ NL80211_ATTR_CQM_PKT_LOSS_EVENT = 0x4 -+ NL80211_ATTR_CQM_RSSI_HYST = 0x2 -+ NL80211_ATTR_CQM_RSSI_LEVEL = 0x9 -+ NL80211_ATTR_CQM_RSSI_THOLD = 0x1 -+ NL80211_ATTR_CQM_RSSI_THRESHOLD_EVENT = 0x3 -+ NL80211_ATTR_CQM_TXE_INTVL = 0x7 -+ NL80211_ATTR_CQM_TXE_PKTS = 0x6 -+ NL80211_ATTR_CQM_TXE_RATE = 0x5 -+ NL80211_ATTR_CRIT_PROT_ID = 0xb3 -+ NL80211_ATTR_CSA_C_OFF_BEACON = 0xba -+ NL80211_ATTR_CSA_C_OFF_PRESP = 0xbb -+ NL80211_ATTR_CSA_C_OFFSETS_TX = 0xcd -+ NL80211_ATTR_CSA_IES = 0xb9 -+ NL80211_ATTR_DEVICE_AP_SME = 0x8d -+ NL80211_ATTR_DFS_CAC_TIME = 0x7 -+ NL80211_ATTR_DFS_REGION = 0x92 -+ NL80211_ATTR_DISABLE_HE = 0x12d -+ NL80211_ATTR_DISABLE_HT = 0x93 -+ NL80211_ATTR_DISABLE_VHT = 0xaf -+ NL80211_ATTR_DISCONNECTED_BY_AP = 0x47 -+ NL80211_ATTR_DONT_WAIT_FOR_ACK = 0x8e -+ NL80211_ATTR_DTIM_PERIOD = 0xd -+ NL80211_ATTR_DURATION = 0x57 -+ NL80211_ATTR_EXT_CAPA = 0xa9 -+ NL80211_ATTR_EXT_CAPA_MASK = 0xaa -+ NL80211_ATTR_EXTERNAL_AUTH_ACTION = 0x104 -+ NL80211_ATTR_EXTERNAL_AUTH_SUPPORT = 0x105 -+ NL80211_ATTR_EXT_FEATURES = 0xd9 -+ NL80211_ATTR_FEATURE_FLAGS = 0x8f -+ NL80211_ATTR_FILS_CACHE_ID = 0xfd -+ NL80211_ATTR_FILS_DISCOVERY = 0x126 -+ NL80211_ATTR_FILS_ERP_NEXT_SEQ_NUM = 0xfb -+ NL80211_ATTR_FILS_ERP_REALM = 0xfa -+ NL80211_ATTR_FILS_ERP_RRK = 0xfc -+ NL80211_ATTR_FILS_ERP_USERNAME = 0xf9 -+ NL80211_ATTR_FILS_KEK = 0xf2 -+ NL80211_ATTR_FILS_NONCES = 0xf3 -+ NL80211_ATTR_FRAME = 0x33 -+ NL80211_ATTR_FRAME_MATCH = 0x5b -+ NL80211_ATTR_FRAME_TYPE = 0x65 -+ NL80211_ATTR_FREQ_AFTER = 0x3b -+ NL80211_ATTR_FREQ_BEFORE = 0x3a -+ NL80211_ATTR_FREQ_FIXED = 0x3c -+ NL80211_ATTR_FREQ_RANGE_END = 0x3 -+ NL80211_ATTR_FREQ_RANGE_MAX_BW = 0x4 -+ NL80211_ATTR_FREQ_RANGE_START = 0x2 -+ NL80211_ATTR_FTM_RESPONDER = 0x10e -+ NL80211_ATTR_FTM_RESPONDER_STATS = 0x10f -+ NL80211_ATTR_GENERATION = 0x2e -+ NL80211_ATTR_HANDLE_DFS = 0xbf -+ NL80211_ATTR_HE_6GHZ_CAPABILITY = 0x125 -+ NL80211_ATTR_HE_BSS_COLOR = 0x11b -+ NL80211_ATTR_HE_CAPABILITY = 0x10d -+ NL80211_ATTR_HE_OBSS_PD = 0x117 -+ NL80211_ATTR_HIDDEN_SSID = 0x7e -+ NL80211_ATTR_HT_CAPABILITY = 0x1f -+ NL80211_ATTR_HT_CAPABILITY_MASK = 0x94 -+ NL80211_ATTR_IE_ASSOC_RESP = 0x80 -+ NL80211_ATTR_IE = 0x2a -+ NL80211_ATTR_IE_PROBE_RESP = 0x7f -+ NL80211_ATTR_IE_RIC = 0xb2 -+ NL80211_ATTR_IFACE_SOCKET_OWNER = 0xcc -+ NL80211_ATTR_IFINDEX = 0x3 -+ NL80211_ATTR_IFNAME = 0x4 -+ NL80211_ATTR_IFTYPE_AKM_SUITES = 0x11c -+ NL80211_ATTR_IFTYPE = 0x5 -+ NL80211_ATTR_IFTYPE_EXT_CAPA = 0xe6 -+ NL80211_ATTR_INACTIVITY_TIMEOUT = 0x96 -+ NL80211_ATTR_INTERFACE_COMBINATIONS = 0x78 -+ NL80211_ATTR_KEY_CIPHER = 0x9 -+ NL80211_ATTR_KEY = 0x50 -+ NL80211_ATTR_KEY_DATA = 0x7 -+ NL80211_ATTR_KEY_DEFAULT = 0xb -+ NL80211_ATTR_KEY_DEFAULT_MGMT = 0x28 -+ NL80211_ATTR_KEY_DEFAULT_TYPES = 0x6e -+ NL80211_ATTR_KEY_IDX = 0x8 -+ NL80211_ATTR_KEYS = 0x51 -+ NL80211_ATTR_KEY_SEQ = 0xa -+ NL80211_ATTR_KEY_TYPE = 0x37 -+ NL80211_ATTR_LOCAL_MESH_POWER_MODE = 0xa4 -+ NL80211_ATTR_LOCAL_STATE_CHANGE = 0x5f -+ NL80211_ATTR_MAC_ACL_MAX = 0xa7 -+ NL80211_ATTR_MAC_ADDRS = 0xa6 -+ NL80211_ATTR_MAC = 0x6 -+ NL80211_ATTR_MAC_HINT = 0xc8 -+ NL80211_ATTR_MAC_MASK = 0xd7 -+ NL80211_ATTR_MAX_AP_ASSOC_STA = 0xca -+ NL80211_ATTR_MAX = 0x137 -+ NL80211_ATTR_MAX_CRIT_PROT_DURATION = 0xb4 -+ NL80211_ATTR_MAX_CSA_COUNTERS = 0xce -+ NL80211_ATTR_MAX_MATCH_SETS = 0x85 -+ NL80211_ATTR_MAX_NUM_PMKIDS = 0x56 -+ NL80211_ATTR_MAX_NUM_SCAN_SSIDS = 0x2b -+ NL80211_ATTR_MAX_NUM_SCHED_SCAN_PLANS = 0xde -+ NL80211_ATTR_MAX_NUM_SCHED_SCAN_SSIDS = 0x7b -+ NL80211_ATTR_MAX_REMAIN_ON_CHANNEL_DURATION = 0x6f -+ NL80211_ATTR_MAX_SCAN_IE_LEN = 0x38 -+ NL80211_ATTR_MAX_SCAN_PLAN_INTERVAL = 0xdf -+ NL80211_ATTR_MAX_SCAN_PLAN_ITERATIONS = 0xe0 -+ NL80211_ATTR_MAX_SCHED_SCAN_IE_LEN = 0x7c -+ NL80211_ATTR_MCAST_RATE = 0x6b -+ NL80211_ATTR_MDID = 0xb1 -+ NL80211_ATTR_MEASUREMENT_DURATION = 0xeb -+ NL80211_ATTR_MEASUREMENT_DURATION_MANDATORY = 0xec -+ NL80211_ATTR_MESH_CONFIG = 0x23 -+ NL80211_ATTR_MESH_ID = 0x18 -+ NL80211_ATTR_MESH_PEER_AID = 0xed -+ NL80211_ATTR_MESH_SETUP = 0x70 -+ NL80211_ATTR_MGMT_SUBTYPE = 0x29 -+ NL80211_ATTR_MNTR_FLAGS = 0x17 -+ NL80211_ATTR_MPATH_INFO = 0x1b -+ NL80211_ATTR_MPATH_NEXT_HOP = 0x1a -+ NL80211_ATTR_MULTICAST_TO_UNICAST_ENABLED = 0xf4 -+ NL80211_ATTR_MU_MIMO_FOLLOW_MAC_ADDR = 0xe8 -+ NL80211_ATTR_MU_MIMO_GROUP_DATA = 0xe7 -+ NL80211_ATTR_NAN_FUNC = 0xf0 -+ NL80211_ATTR_NAN_MASTER_PREF = 0xee -+ NL80211_ATTR_NAN_MATCH = 0xf1 -+ NL80211_ATTR_NETNS_FD = 0xdb -+ NL80211_ATTR_NOACK_MAP = 0x95 -+ NL80211_ATTR_NSS = 0x106 -+ NL80211_ATTR_OFFCHANNEL_TX_OK = 0x6c -+ NL80211_ATTR_OPER_CLASS = 0xd6 -+ NL80211_ATTR_OPMODE_NOTIF = 0xc2 -+ NL80211_ATTR_P2P_CTWINDOW = 0xa2 -+ NL80211_ATTR_P2P_OPPPS = 0xa3 -+ NL80211_ATTR_PAD = 0xe5 -+ NL80211_ATTR_PBSS = 0xe2 -+ NL80211_ATTR_PEER_AID = 0xb5 -+ NL80211_ATTR_PEER_MEASUREMENTS = 0x111 -+ NL80211_ATTR_PID = 0x52 -+ NL80211_ATTR_PMK = 0xfe -+ NL80211_ATTR_PMKID = 0x55 -+ NL80211_ATTR_PMK_LIFETIME = 0x11f -+ NL80211_ATTR_PMKR0_NAME = 0x102 -+ NL80211_ATTR_PMK_REAUTH_THRESHOLD = 0x120 -+ NL80211_ATTR_PMKSA_CANDIDATE = 0x86 -+ NL80211_ATTR_PORT_AUTHORIZED = 0x103 -+ NL80211_ATTR_POWER_RULE_MAX_ANT_GAIN = 0x5 -+ NL80211_ATTR_POWER_RULE_MAX_EIRP = 0x6 -+ NL80211_ATTR_PREV_BSSID = 0x4f -+ NL80211_ATTR_PRIVACY = 0x46 -+ NL80211_ATTR_PROBE_RESP = 0x91 -+ NL80211_ATTR_PROBE_RESP_OFFLOAD = 0x90 -+ NL80211_ATTR_PROTOCOL_FEATURES = 0xad -+ NL80211_ATTR_PS_STATE = 0x5d -+ NL80211_ATTR_QOS_MAP = 0xc7 -+ NL80211_ATTR_RADAR_EVENT = 0xa8 -+ NL80211_ATTR_REASON_CODE = 0x36 -+ NL80211_ATTR_RECEIVE_MULTICAST = 0x121 -+ NL80211_ATTR_RECONNECT_REQUESTED = 0x12b -+ NL80211_ATTR_REG_ALPHA2 = 0x21 -+ NL80211_ATTR_REG_INDOOR = 0xdd -+ NL80211_ATTR_REG_INITIATOR = 0x30 -+ NL80211_ATTR_REG_RULE_FLAGS = 0x1 -+ NL80211_ATTR_REG_RULES = 0x22 -+ NL80211_ATTR_REG_TYPE = 0x31 -+ NL80211_ATTR_REKEY_DATA = 0x7a -+ NL80211_ATTR_REQ_IE = 0x4d -+ NL80211_ATTR_RESP_IE = 0x4e -+ NL80211_ATTR_ROAM_SUPPORT = 0x83 -+ NL80211_ATTR_RX_FRAME_TYPES = 0x64 -+ NL80211_ATTR_RXMGMT_FLAGS = 0xbc -+ NL80211_ATTR_RX_SIGNAL_DBM = 0x97 -+ NL80211_ATTR_S1G_CAPABILITY = 0x128 -+ NL80211_ATTR_S1G_CAPABILITY_MASK = 0x129 -+ NL80211_ATTR_SAE_DATA = 0x9c -+ NL80211_ATTR_SAE_PASSWORD = 0x115 -+ NL80211_ATTR_SAE_PWE = 0x12a -+ NL80211_ATTR_SAR_SPEC = 0x12c -+ NL80211_ATTR_SCAN_FLAGS = 0x9e -+ NL80211_ATTR_SCAN_FREQ_KHZ = 0x124 -+ NL80211_ATTR_SCAN_FREQUENCIES = 0x2c -+ NL80211_ATTR_SCAN_GENERATION = 0x2e -+ NL80211_ATTR_SCAN_SSIDS = 0x2d -+ NL80211_ATTR_SCAN_START_TIME_TSF_BSSID = 0xea -+ NL80211_ATTR_SCAN_START_TIME_TSF = 0xe9 -+ NL80211_ATTR_SCAN_SUPP_RATES = 0x7d -+ NL80211_ATTR_SCHED_SCAN_DELAY = 0xdc -+ NL80211_ATTR_SCHED_SCAN_INTERVAL = 0x77 -+ NL80211_ATTR_SCHED_SCAN_MATCH = 0x84 -+ NL80211_ATTR_SCHED_SCAN_MATCH_SSID = 0x1 -+ NL80211_ATTR_SCHED_SCAN_MAX_REQS = 0x100 -+ NL80211_ATTR_SCHED_SCAN_MULTI = 0xff -+ NL80211_ATTR_SCHED_SCAN_PLANS = 0xe1 -+ NL80211_ATTR_SCHED_SCAN_RELATIVE_RSSI = 0xf6 -+ NL80211_ATTR_SCHED_SCAN_RSSI_ADJUST = 0xf7 -+ NL80211_ATTR_SMPS_MODE = 0xd5 -+ NL80211_ATTR_SOCKET_OWNER = 0xcc -+ NL80211_ATTR_SOFTWARE_IFTYPES = 0x79 -+ NL80211_ATTR_SPLIT_WIPHY_DUMP = 0xae -+ NL80211_ATTR_SSID = 0x34 -+ NL80211_ATTR_STA_AID = 0x10 -+ NL80211_ATTR_STA_CAPABILITY = 0xab -+ NL80211_ATTR_STA_EXT_CAPABILITY = 0xac -+ NL80211_ATTR_STA_FLAGS2 = 0x43 -+ NL80211_ATTR_STA_FLAGS = 0x11 -+ NL80211_ATTR_STA_INFO = 0x15 -+ NL80211_ATTR_STA_LISTEN_INTERVAL = 0x12 -+ NL80211_ATTR_STA_PLINK_ACTION = 0x19 -+ NL80211_ATTR_STA_PLINK_STATE = 0x74 -+ NL80211_ATTR_STA_SUPPORTED_CHANNELS = 0xbd -+ NL80211_ATTR_STA_SUPPORTED_OPER_CLASSES = 0xbe -+ NL80211_ATTR_STA_SUPPORTED_RATES = 0x13 -+ NL80211_ATTR_STA_SUPPORT_P2P_PS = 0xe4 -+ NL80211_ATTR_STATUS_CODE = 0x48 -+ NL80211_ATTR_STA_TX_POWER = 0x114 -+ NL80211_ATTR_STA_TX_POWER_SETTING = 0x113 -+ NL80211_ATTR_STA_VLAN = 0x14 -+ NL80211_ATTR_STA_WME = 0x81 -+ NL80211_ATTR_SUPPORT_10_MHZ = 0xc1 -+ NL80211_ATTR_SUPPORT_5_MHZ = 0xc0 -+ NL80211_ATTR_SUPPORT_AP_UAPSD = 0x82 -+ NL80211_ATTR_SUPPORTED_COMMANDS = 0x32 -+ NL80211_ATTR_SUPPORTED_IFTYPES = 0x20 -+ NL80211_ATTR_SUPPORT_IBSS_RSN = 0x68 -+ NL80211_ATTR_SUPPORT_MESH_AUTH = 0x73 -+ NL80211_ATTR_SURVEY_INFO = 0x54 -+ NL80211_ATTR_SURVEY_RADIO_STATS = 0xda -+ NL80211_ATTR_TDLS_ACTION = 0x88 -+ NL80211_ATTR_TDLS_DIALOG_TOKEN = 0x89 -+ NL80211_ATTR_TDLS_EXTERNAL_SETUP = 0x8c -+ NL80211_ATTR_TDLS_INITIATOR = 0xcf -+ NL80211_ATTR_TDLS_OPERATION = 0x8a -+ NL80211_ATTR_TDLS_PEER_CAPABILITY = 0xcb -+ NL80211_ATTR_TDLS_SUPPORT = 0x8b -+ NL80211_ATTR_TESTDATA = 0x45 -+ NL80211_ATTR_TID_CONFIG = 0x11d -+ NL80211_ATTR_TIMED_OUT = 0x41 -+ NL80211_ATTR_TIMEOUT = 0x110 -+ NL80211_ATTR_TIMEOUT_REASON = 0xf8 -+ NL80211_ATTR_TSID = 0xd2 -+ NL80211_ATTR_TWT_RESPONDER = 0x116 -+ NL80211_ATTR_TX_FRAME_TYPES = 0x63 -+ NL80211_ATTR_TX_NO_CCK_RATE = 0x87 -+ NL80211_ATTR_TXQ_LIMIT = 0x10a -+ NL80211_ATTR_TXQ_MEMORY_LIMIT = 0x10b -+ NL80211_ATTR_TXQ_QUANTUM = 0x10c -+ NL80211_ATTR_TXQ_STATS = 0x109 -+ NL80211_ATTR_TX_RATES = 0x5a -+ NL80211_ATTR_UNSOL_BCAST_PROBE_RESP = 0x127 -+ NL80211_ATTR_UNSPEC = 0x0 -+ NL80211_ATTR_USE_MFP = 0x42 -+ NL80211_ATTR_USER_PRIO = 0xd3 -+ NL80211_ATTR_USER_REG_HINT_TYPE = 0x9a -+ NL80211_ATTR_USE_RRM = 0xd0 -+ NL80211_ATTR_VENDOR_DATA = 0xc5 -+ NL80211_ATTR_VENDOR_EVENTS = 0xc6 -+ NL80211_ATTR_VENDOR_ID = 0xc3 -+ NL80211_ATTR_VENDOR_SUBCMD = 0xc4 -+ NL80211_ATTR_VHT_CAPABILITY = 0x9d -+ NL80211_ATTR_VHT_CAPABILITY_MASK = 0xb0 -+ NL80211_ATTR_VLAN_ID = 0x11a -+ NL80211_ATTR_WANT_1X_4WAY_HS = 0x101 -+ NL80211_ATTR_WDEV = 0x99 -+ NL80211_ATTR_WIPHY_ANTENNA_AVAIL_RX = 0x72 -+ NL80211_ATTR_WIPHY_ANTENNA_AVAIL_TX = 0x71 -+ NL80211_ATTR_WIPHY_ANTENNA_RX = 0x6a -+ NL80211_ATTR_WIPHY_ANTENNA_TX = 0x69 -+ NL80211_ATTR_WIPHY_BANDS = 0x16 -+ NL80211_ATTR_WIPHY_CHANNEL_TYPE = 0x27 -+ NL80211_ATTR_WIPHY = 0x1 -+ NL80211_ATTR_WIPHY_COVERAGE_CLASS = 0x59 -+ NL80211_ATTR_WIPHY_DYN_ACK = 0xd1 -+ NL80211_ATTR_WIPHY_EDMG_BW_CONFIG = 0x119 -+ NL80211_ATTR_WIPHY_EDMG_CHANNELS = 0x118 -+ NL80211_ATTR_WIPHY_FRAG_THRESHOLD = 0x3f -+ NL80211_ATTR_WIPHY_FREQ = 0x26 -+ NL80211_ATTR_WIPHY_FREQ_HINT = 0xc9 -+ NL80211_ATTR_WIPHY_FREQ_OFFSET = 0x122 -+ NL80211_ATTR_WIPHY_NAME = 0x2 -+ NL80211_ATTR_WIPHY_RETRY_LONG = 0x3e -+ NL80211_ATTR_WIPHY_RETRY_SHORT = 0x3d -+ NL80211_ATTR_WIPHY_RTS_THRESHOLD = 0x40 -+ NL80211_ATTR_WIPHY_SELF_MANAGED_REG = 0xd8 -+ NL80211_ATTR_WIPHY_TX_POWER_LEVEL = 0x62 -+ NL80211_ATTR_WIPHY_TX_POWER_SETTING = 0x61 -+ NL80211_ATTR_WIPHY_TXQ_PARAMS = 0x25 -+ NL80211_ATTR_WOWLAN_TRIGGERS = 0x75 -+ NL80211_ATTR_WOWLAN_TRIGGERS_SUPPORTED = 0x76 -+ NL80211_ATTR_WPA_VERSIONS = 0x4b -+ NL80211_AUTHTYPE_AUTOMATIC = 0x8 -+ NL80211_AUTHTYPE_FILS_PK = 0x7 -+ NL80211_AUTHTYPE_FILS_SK = 0x5 -+ NL80211_AUTHTYPE_FILS_SK_PFS = 0x6 -+ NL80211_AUTHTYPE_FT = 0x2 -+ NL80211_AUTHTYPE_MAX = 0x7 -+ NL80211_AUTHTYPE_NETWORK_EAP = 0x3 -+ NL80211_AUTHTYPE_OPEN_SYSTEM = 0x0 -+ NL80211_AUTHTYPE_SAE = 0x4 -+ NL80211_AUTHTYPE_SHARED_KEY = 0x1 -+ NL80211_BAND_2GHZ = 0x0 -+ NL80211_BAND_5GHZ = 0x1 -+ NL80211_BAND_60GHZ = 0x2 -+ NL80211_BAND_6GHZ = 0x3 -+ NL80211_BAND_ATTR_EDMG_BW_CONFIG = 0xb -+ NL80211_BAND_ATTR_EDMG_CHANNELS = 0xa -+ NL80211_BAND_ATTR_FREQS = 0x1 -+ NL80211_BAND_ATTR_HT_AMPDU_DENSITY = 0x6 -+ NL80211_BAND_ATTR_HT_AMPDU_FACTOR = 0x5 -+ NL80211_BAND_ATTR_HT_CAPA = 0x4 -+ NL80211_BAND_ATTR_HT_MCS_SET = 0x3 -+ NL80211_BAND_ATTR_IFTYPE_DATA = 0x9 -+ NL80211_BAND_ATTR_MAX = 0xb -+ NL80211_BAND_ATTR_RATES = 0x2 -+ NL80211_BAND_ATTR_VHT_CAPA = 0x8 -+ NL80211_BAND_ATTR_VHT_MCS_SET = 0x7 -+ NL80211_BAND_IFTYPE_ATTR_HE_6GHZ_CAPA = 0x6 -+ NL80211_BAND_IFTYPE_ATTR_HE_CAP_MAC = 0x2 -+ NL80211_BAND_IFTYPE_ATTR_HE_CAP_MCS_SET = 0x4 -+ NL80211_BAND_IFTYPE_ATTR_HE_CAP_PHY = 0x3 -+ NL80211_BAND_IFTYPE_ATTR_HE_CAP_PPE = 0x5 -+ NL80211_BAND_IFTYPE_ATTR_IFTYPES = 0x1 -+ NL80211_BAND_IFTYPE_ATTR_MAX = 0xb -+ NL80211_BAND_S1GHZ = 0x4 -+ NL80211_BITRATE_ATTR_2GHZ_SHORTPREAMBLE = 0x2 -+ NL80211_BITRATE_ATTR_MAX = 0x2 -+ NL80211_BITRATE_ATTR_RATE = 0x1 -+ NL80211_BSS_BEACON_IES = 0xb -+ NL80211_BSS_BEACON_INTERVAL = 0x4 -+ NL80211_BSS_BEACON_TSF = 0xd -+ NL80211_BSS_BSSID = 0x1 -+ NL80211_BSS_CAPABILITY = 0x5 -+ NL80211_BSS_CHAIN_SIGNAL = 0x13 -+ NL80211_BSS_CHAN_WIDTH_10 = 0x1 -+ NL80211_BSS_CHAN_WIDTH_1 = 0x3 -+ NL80211_BSS_CHAN_WIDTH_20 = 0x0 -+ NL80211_BSS_CHAN_WIDTH_2 = 0x4 -+ NL80211_BSS_CHAN_WIDTH_5 = 0x2 -+ NL80211_BSS_CHAN_WIDTH = 0xc -+ NL80211_BSS_FREQUENCY = 0x2 -+ NL80211_BSS_FREQUENCY_OFFSET = 0x14 -+ NL80211_BSS_INFORMATION_ELEMENTS = 0x6 -+ NL80211_BSS_LAST_SEEN_BOOTTIME = 0xf -+ NL80211_BSS_MAX = 0x14 -+ NL80211_BSS_PAD = 0x10 -+ NL80211_BSS_PARENT_BSSID = 0x12 -+ NL80211_BSS_PARENT_TSF = 0x11 -+ NL80211_BSS_PRESP_DATA = 0xe -+ NL80211_BSS_SEEN_MS_AGO = 0xa -+ NL80211_BSS_SELECT_ATTR_BAND_PREF = 0x2 -+ NL80211_BSS_SELECT_ATTR_MAX = 0x3 -+ NL80211_BSS_SELECT_ATTR_RSSI_ADJUST = 0x3 -+ NL80211_BSS_SELECT_ATTR_RSSI = 0x1 -+ NL80211_BSS_SIGNAL_MBM = 0x7 -+ NL80211_BSS_SIGNAL_UNSPEC = 0x8 -+ NL80211_BSS_STATUS_ASSOCIATED = 0x1 -+ NL80211_BSS_STATUS_AUTHENTICATED = 0x0 -+ NL80211_BSS_STATUS = 0x9 -+ NL80211_BSS_STATUS_IBSS_JOINED = 0x2 -+ NL80211_BSS_TSF = 0x3 -+ NL80211_CHAN_HT20 = 0x1 -+ NL80211_CHAN_HT40MINUS = 0x2 -+ NL80211_CHAN_HT40PLUS = 0x3 -+ NL80211_CHAN_NO_HT = 0x0 -+ NL80211_CHAN_WIDTH_10 = 0x7 -+ NL80211_CHAN_WIDTH_160 = 0x5 -+ NL80211_CHAN_WIDTH_16 = 0xc -+ NL80211_CHAN_WIDTH_1 = 0x8 -+ NL80211_CHAN_WIDTH_20 = 0x1 -+ NL80211_CHAN_WIDTH_20_NOHT = 0x0 -+ NL80211_CHAN_WIDTH_2 = 0x9 -+ NL80211_CHAN_WIDTH_40 = 0x2 -+ NL80211_CHAN_WIDTH_4 = 0xa -+ NL80211_CHAN_WIDTH_5 = 0x6 -+ NL80211_CHAN_WIDTH_80 = 0x3 -+ NL80211_CHAN_WIDTH_80P80 = 0x4 -+ NL80211_CHAN_WIDTH_8 = 0xb -+ NL80211_CMD_ABORT_SCAN = 0x72 -+ NL80211_CMD_ACTION = 0x3b -+ NL80211_CMD_ACTION_TX_STATUS = 0x3c -+ NL80211_CMD_ADD_NAN_FUNCTION = 0x75 -+ NL80211_CMD_ADD_TX_TS = 0x69 -+ NL80211_CMD_ASSOCIATE = 0x26 -+ NL80211_CMD_AUTHENTICATE = 0x25 -+ NL80211_CMD_CANCEL_REMAIN_ON_CHANNEL = 0x38 -+ NL80211_CMD_CHANGE_NAN_CONFIG = 0x77 -+ NL80211_CMD_CHANNEL_SWITCH = 0x66 -+ NL80211_CMD_CH_SWITCH_NOTIFY = 0x58 -+ NL80211_CMD_CH_SWITCH_STARTED_NOTIFY = 0x6e -+ NL80211_CMD_CONNECT = 0x2e -+ NL80211_CMD_CONN_FAILED = 0x5b -+ NL80211_CMD_CONTROL_PORT_FRAME = 0x81 -+ NL80211_CMD_CONTROL_PORT_FRAME_TX_STATUS = 0x8b -+ NL80211_CMD_CRIT_PROTOCOL_START = 0x62 -+ NL80211_CMD_CRIT_PROTOCOL_STOP = 0x63 -+ NL80211_CMD_DEAUTHENTICATE = 0x27 -+ NL80211_CMD_DEL_BEACON = 0x10 -+ NL80211_CMD_DEL_INTERFACE = 0x8 -+ NL80211_CMD_DEL_KEY = 0xc -+ NL80211_CMD_DEL_MPATH = 0x18 -+ NL80211_CMD_DEL_NAN_FUNCTION = 0x76 -+ NL80211_CMD_DEL_PMK = 0x7c -+ NL80211_CMD_DEL_PMKSA = 0x35 -+ NL80211_CMD_DEL_STATION = 0x14 -+ NL80211_CMD_DEL_TX_TS = 0x6a -+ NL80211_CMD_DEL_WIPHY = 0x4 -+ NL80211_CMD_DISASSOCIATE = 0x28 -+ NL80211_CMD_DISCONNECT = 0x30 -+ NL80211_CMD_EXTERNAL_AUTH = 0x7f -+ NL80211_CMD_FLUSH_PMKSA = 0x36 -+ NL80211_CMD_FRAME = 0x3b -+ NL80211_CMD_FRAME_TX_STATUS = 0x3c -+ NL80211_CMD_FRAME_WAIT_CANCEL = 0x43 -+ NL80211_CMD_FT_EVENT = 0x61 -+ NL80211_CMD_GET_BEACON = 0xd -+ NL80211_CMD_GET_COALESCE = 0x64 -+ NL80211_CMD_GET_FTM_RESPONDER_STATS = 0x82 -+ NL80211_CMD_GET_INTERFACE = 0x5 -+ NL80211_CMD_GET_KEY = 0x9 -+ NL80211_CMD_GET_MESH_CONFIG = 0x1c -+ NL80211_CMD_GET_MESH_PARAMS = 0x1c -+ NL80211_CMD_GET_MPATH = 0x15 -+ NL80211_CMD_GET_MPP = 0x6b -+ NL80211_CMD_GET_POWER_SAVE = 0x3e -+ NL80211_CMD_GET_PROTOCOL_FEATURES = 0x5f -+ NL80211_CMD_GET_REG = 0x1f -+ NL80211_CMD_GET_SCAN = 0x20 -+ NL80211_CMD_GET_STATION = 0x11 -+ NL80211_CMD_GET_SURVEY = 0x32 -+ NL80211_CMD_GET_WIPHY = 0x1 -+ NL80211_CMD_GET_WOWLAN = 0x49 -+ NL80211_CMD_JOIN_IBSS = 0x2b -+ NL80211_CMD_JOIN_MESH = 0x44 -+ NL80211_CMD_JOIN_OCB = 0x6c -+ NL80211_CMD_LEAVE_IBSS = 0x2c -+ NL80211_CMD_LEAVE_MESH = 0x45 -+ NL80211_CMD_LEAVE_OCB = 0x6d -+ NL80211_CMD_MAX = 0x93 -+ NL80211_CMD_MICHAEL_MIC_FAILURE = 0x29 -+ NL80211_CMD_NAN_MATCH = 0x78 -+ NL80211_CMD_NEW_BEACON = 0xf -+ NL80211_CMD_NEW_INTERFACE = 0x7 -+ NL80211_CMD_NEW_KEY = 0xb -+ NL80211_CMD_NEW_MPATH = 0x17 -+ NL80211_CMD_NEW_PEER_CANDIDATE = 0x48 -+ NL80211_CMD_NEW_SCAN_RESULTS = 0x22 -+ NL80211_CMD_NEW_STATION = 0x13 -+ NL80211_CMD_NEW_SURVEY_RESULTS = 0x33 -+ NL80211_CMD_NEW_WIPHY = 0x3 -+ NL80211_CMD_NOTIFY_CQM = 0x40 -+ NL80211_CMD_NOTIFY_RADAR = 0x86 -+ NL80211_CMD_PEER_MEASUREMENT_COMPLETE = 0x85 -+ NL80211_CMD_PEER_MEASUREMENT_RESULT = 0x84 -+ NL80211_CMD_PEER_MEASUREMENT_START = 0x83 -+ NL80211_CMD_PMKSA_CANDIDATE = 0x50 -+ NL80211_CMD_PORT_AUTHORIZED = 0x7d -+ NL80211_CMD_PROBE_CLIENT = 0x54 -+ NL80211_CMD_PROBE_MESH_LINK = 0x88 -+ NL80211_CMD_RADAR_DETECT = 0x5e -+ NL80211_CMD_REG_BEACON_HINT = 0x2a -+ NL80211_CMD_REG_CHANGE = 0x24 -+ NL80211_CMD_REGISTER_ACTION = 0x3a -+ NL80211_CMD_REGISTER_BEACONS = 0x55 -+ NL80211_CMD_REGISTER_FRAME = 0x3a -+ NL80211_CMD_RELOAD_REGDB = 0x7e -+ NL80211_CMD_REMAIN_ON_CHANNEL = 0x37 -+ NL80211_CMD_REQ_SET_REG = 0x1b -+ NL80211_CMD_ROAM = 0x2f -+ NL80211_CMD_SCAN_ABORTED = 0x23 -+ NL80211_CMD_SCHED_SCAN_RESULTS = 0x4d -+ NL80211_CMD_SCHED_SCAN_STOPPED = 0x4e -+ NL80211_CMD_SET_BEACON = 0xe -+ NL80211_CMD_SET_BSS = 0x19 -+ NL80211_CMD_SET_CHANNEL = 0x41 -+ NL80211_CMD_SET_COALESCE = 0x65 -+ NL80211_CMD_SET_CQM = 0x3f -+ NL80211_CMD_SET_INTERFACE = 0x6 -+ NL80211_CMD_SET_KEY = 0xa -+ NL80211_CMD_SET_MAC_ACL = 0x5d -+ NL80211_CMD_SET_MCAST_RATE = 0x5c -+ NL80211_CMD_SET_MESH_CONFIG = 0x1d -+ NL80211_CMD_SET_MESH_PARAMS = 0x1d -+ NL80211_CMD_SET_MGMT_EXTRA_IE = 0x1e -+ NL80211_CMD_SET_MPATH = 0x16 -+ NL80211_CMD_SET_MULTICAST_TO_UNICAST = 0x79 -+ NL80211_CMD_SET_NOACK_MAP = 0x57 -+ NL80211_CMD_SET_PMK = 0x7b -+ NL80211_CMD_SET_PMKSA = 0x34 -+ NL80211_CMD_SET_POWER_SAVE = 0x3d -+ NL80211_CMD_SET_QOS_MAP = 0x68 -+ NL80211_CMD_SET_REG = 0x1a -+ NL80211_CMD_SET_REKEY_OFFLOAD = 0x4f -+ NL80211_CMD_SET_SAR_SPECS = 0x8c -+ NL80211_CMD_SET_STATION = 0x12 -+ NL80211_CMD_SET_TID_CONFIG = 0x89 -+ NL80211_CMD_SET_TX_BITRATE_MASK = 0x39 -+ NL80211_CMD_SET_WDS_PEER = 0x42 -+ NL80211_CMD_SET_WIPHY = 0x2 -+ NL80211_CMD_SET_WIPHY_NETNS = 0x31 -+ NL80211_CMD_SET_WOWLAN = 0x4a -+ NL80211_CMD_STA_OPMODE_CHANGED = 0x80 -+ NL80211_CMD_START_AP = 0xf -+ NL80211_CMD_START_NAN = 0x73 -+ NL80211_CMD_START_P2P_DEVICE = 0x59 -+ NL80211_CMD_START_SCHED_SCAN = 0x4b -+ NL80211_CMD_STOP_AP = 0x10 -+ NL80211_CMD_STOP_NAN = 0x74 -+ NL80211_CMD_STOP_P2P_DEVICE = 0x5a -+ NL80211_CMD_STOP_SCHED_SCAN = 0x4c -+ NL80211_CMD_TDLS_CANCEL_CHANNEL_SWITCH = 0x70 -+ NL80211_CMD_TDLS_CHANNEL_SWITCH = 0x6f -+ NL80211_CMD_TDLS_MGMT = 0x52 -+ NL80211_CMD_TDLS_OPER = 0x51 -+ NL80211_CMD_TESTMODE = 0x2d -+ NL80211_CMD_TRIGGER_SCAN = 0x21 -+ NL80211_CMD_UNEXPECTED_4ADDR_FRAME = 0x56 -+ NL80211_CMD_UNEXPECTED_FRAME = 0x53 -+ NL80211_CMD_UNPROT_BEACON = 0x8a -+ NL80211_CMD_UNPROT_DEAUTHENTICATE = 0x46 -+ NL80211_CMD_UNPROT_DISASSOCIATE = 0x47 -+ NL80211_CMD_UNSPEC = 0x0 -+ NL80211_CMD_UPDATE_CONNECT_PARAMS = 0x7a -+ NL80211_CMD_UPDATE_FT_IES = 0x60 -+ NL80211_CMD_UPDATE_OWE_INFO = 0x87 -+ NL80211_CMD_VENDOR = 0x67 -+ NL80211_CMD_WIPHY_REG_CHANGE = 0x71 -+ NL80211_COALESCE_CONDITION_MATCH = 0x0 -+ NL80211_COALESCE_CONDITION_NO_MATCH = 0x1 -+ NL80211_CONN_FAIL_BLOCKED_CLIENT = 0x1 -+ NL80211_CONN_FAIL_MAX_CLIENTS = 0x0 -+ NL80211_CQM_RSSI_BEACON_LOSS_EVENT = 0x2 -+ NL80211_CQM_RSSI_THRESHOLD_EVENT_HIGH = 0x1 -+ NL80211_CQM_RSSI_THRESHOLD_EVENT_LOW = 0x0 -+ NL80211_CQM_TXE_MAX_INTVL = 0x708 -+ NL80211_CRIT_PROTO_APIPA = 0x3 -+ NL80211_CRIT_PROTO_DHCP = 0x1 -+ NL80211_CRIT_PROTO_EAPOL = 0x2 -+ NL80211_CRIT_PROTO_MAX_DURATION = 0x1388 -+ NL80211_CRIT_PROTO_UNSPEC = 0x0 -+ NL80211_DFS_AVAILABLE = 0x2 -+ NL80211_DFS_ETSI = 0x2 -+ NL80211_DFS_FCC = 0x1 -+ NL80211_DFS_JP = 0x3 -+ NL80211_DFS_UNAVAILABLE = 0x1 -+ NL80211_DFS_UNSET = 0x0 -+ NL80211_DFS_USABLE = 0x0 -+ NL80211_EDMG_BW_CONFIG_MAX = 0xf -+ NL80211_EDMG_BW_CONFIG_MIN = 0x4 -+ NL80211_EDMG_CHANNELS_MAX = 0x3c -+ NL80211_EDMG_CHANNELS_MIN = 0x1 -+ NL80211_EXTERNAL_AUTH_ABORT = 0x1 -+ NL80211_EXTERNAL_AUTH_START = 0x0 -+ NL80211_EXT_FEATURE_4WAY_HANDSHAKE_AP_PSK = 0x32 -+ NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_1X = 0x10 -+ NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_PSK = 0xf -+ NL80211_EXT_FEATURE_ACCEPT_BCAST_PROBE_RESP = 0x12 -+ NL80211_EXT_FEATURE_ACK_SIGNAL_SUPPORT = 0x1b -+ NL80211_EXT_FEATURE_AIRTIME_FAIRNESS = 0x21 -+ NL80211_EXT_FEATURE_AP_PMKSA_CACHING = 0x22 -+ NL80211_EXT_FEATURE_AQL = 0x28 -+ NL80211_EXT_FEATURE_BEACON_PROTECTION_CLIENT = 0x2e -+ NL80211_EXT_FEATURE_BEACON_PROTECTION = 0x29 -+ NL80211_EXT_FEATURE_BEACON_RATE_HE = 0x36 -+ NL80211_EXT_FEATURE_BEACON_RATE_HT = 0x7 -+ NL80211_EXT_FEATURE_BEACON_RATE_LEGACY = 0x6 -+ NL80211_EXT_FEATURE_BEACON_RATE_VHT = 0x8 -+ NL80211_EXT_FEATURE_BSS_PARENT_TSF = 0x4 -+ NL80211_EXT_FEATURE_CAN_REPLACE_PTK0 = 0x1f -+ NL80211_EXT_FEATURE_CONTROL_PORT_NO_PREAUTH = 0x2a -+ NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211 = 0x1a -+ NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211_TX_STATUS = 0x30 -+ NL80211_EXT_FEATURE_CQM_RSSI_LIST = 0xd -+ NL80211_EXT_FEATURE_DATA_ACK_SIGNAL_SUPPORT = 0x1b -+ NL80211_EXT_FEATURE_DEL_IBSS_STA = 0x2c -+ NL80211_EXT_FEATURE_DFS_OFFLOAD = 0x19 -+ NL80211_EXT_FEATURE_ENABLE_FTM_RESPONDER = 0x20 -+ NL80211_EXT_FEATURE_EXT_KEY_ID = 0x24 -+ NL80211_EXT_FEATURE_FILS_DISCOVERY = 0x34 -+ NL80211_EXT_FEATURE_FILS_MAX_CHANNEL_TIME = 0x11 -+ NL80211_EXT_FEATURE_FILS_SK_OFFLOAD = 0xe -+ NL80211_EXT_FEATURE_FILS_STA = 0x9 -+ NL80211_EXT_FEATURE_HIGH_ACCURACY_SCAN = 0x18 -+ NL80211_EXT_FEATURE_LOW_POWER_SCAN = 0x17 -+ NL80211_EXT_FEATURE_LOW_SPAN_SCAN = 0x16 -+ NL80211_EXT_FEATURE_MFP_OPTIONAL = 0x15 -+ NL80211_EXT_FEATURE_MGMT_TX_RANDOM_TA = 0xa -+ NL80211_EXT_FEATURE_MGMT_TX_RANDOM_TA_CONNECTED = 0xb -+ NL80211_EXT_FEATURE_MULTICAST_REGISTRATIONS = 0x2d -+ NL80211_EXT_FEATURE_MU_MIMO_AIR_SNIFFER = 0x2 -+ NL80211_EXT_FEATURE_OCE_PROBE_REQ_DEFERRAL_SUPPRESSION = 0x14 -+ NL80211_EXT_FEATURE_OCE_PROBE_REQ_HIGH_TX_RATE = 0x13 -+ NL80211_EXT_FEATURE_OPERATING_CHANNEL_VALIDATION = 0x31 -+ NL80211_EXT_FEATURE_PROTECTED_TWT = 0x2b -+ NL80211_EXT_FEATURE_PROT_RANGE_NEGO_AND_MEASURE = 0x39 -+ NL80211_EXT_FEATURE_RRM = 0x1 -+ NL80211_EXT_FEATURE_SAE_OFFLOAD_AP = 0x33 -+ NL80211_EXT_FEATURE_SAE_OFFLOAD = 0x26 -+ NL80211_EXT_FEATURE_SCAN_FREQ_KHZ = 0x2f -+ NL80211_EXT_FEATURE_SCAN_MIN_PREQ_CONTENT = 0x1e -+ NL80211_EXT_FEATURE_SCAN_RANDOM_SN = 0x1d -+ NL80211_EXT_FEATURE_SCAN_START_TIME = 0x3 -+ NL80211_EXT_FEATURE_SCHED_SCAN_BAND_SPECIFIC_RSSI_THOLD = 0x23 -+ NL80211_EXT_FEATURE_SCHED_SCAN_RELATIVE_RSSI = 0xc -+ NL80211_EXT_FEATURE_SECURE_LTF = 0x37 -+ NL80211_EXT_FEATURE_SECURE_RTT = 0x38 -+ NL80211_EXT_FEATURE_SET_SCAN_DWELL = 0x5 -+ NL80211_EXT_FEATURE_STA_TX_PWR = 0x25 -+ NL80211_EXT_FEATURE_TXQS = 0x1c -+ NL80211_EXT_FEATURE_UNSOL_BCAST_PROBE_RESP = 0x35 -+ NL80211_EXT_FEATURE_VHT_IBSS = 0x0 -+ NL80211_EXT_FEATURE_VLAN_OFFLOAD = 0x27 -+ NL80211_FEATURE_ACKTO_ESTIMATION = 0x800000 -+ NL80211_FEATURE_ACTIVE_MONITOR = 0x20000 -+ NL80211_FEATURE_ADVERTISE_CHAN_LIMITS = 0x4000 -+ NL80211_FEATURE_AP_MODE_CHAN_WIDTH_CHANGE = 0x40000 -+ NL80211_FEATURE_AP_SCAN = 0x100 -+ NL80211_FEATURE_CELL_BASE_REG_HINTS = 0x8 -+ NL80211_FEATURE_DS_PARAM_SET_IE_IN_PROBES = 0x80000 -+ NL80211_FEATURE_DYNAMIC_SMPS = 0x2000000 -+ NL80211_FEATURE_FULL_AP_CLIENT_STATE = 0x8000 -+ NL80211_FEATURE_HT_IBSS = 0x2 -+ NL80211_FEATURE_INACTIVITY_TIMER = 0x4 -+ NL80211_FEATURE_LOW_PRIORITY_SCAN = 0x40 -+ NL80211_FEATURE_MAC_ON_CREATE = 0x8000000 -+ NL80211_FEATURE_ND_RANDOM_MAC_ADDR = 0x80000000 -+ NL80211_FEATURE_NEED_OBSS_SCAN = 0x400 -+ NL80211_FEATURE_P2P_DEVICE_NEEDS_CHANNEL = 0x10 -+ NL80211_FEATURE_P2P_GO_CTWIN = 0x800 -+ NL80211_FEATURE_P2P_GO_OPPPS = 0x1000 -+ NL80211_FEATURE_QUIET = 0x200000 -+ NL80211_FEATURE_SAE = 0x20 -+ NL80211_FEATURE_SCAN_FLUSH = 0x80 -+ NL80211_FEATURE_SCAN_RANDOM_MAC_ADDR = 0x20000000 -+ NL80211_FEATURE_SCHED_SCAN_RANDOM_MAC_ADDR = 0x40000000 -+ NL80211_FEATURE_SK_TX_STATUS = 0x1 -+ NL80211_FEATURE_STATIC_SMPS = 0x1000000 -+ NL80211_FEATURE_SUPPORTS_WMM_ADMISSION = 0x4000000 -+ NL80211_FEATURE_TDLS_CHANNEL_SWITCH = 0x10000000 -+ NL80211_FEATURE_TX_POWER_INSERTION = 0x400000 -+ NL80211_FEATURE_USERSPACE_MPM = 0x10000 -+ NL80211_FEATURE_VIF_TXPOWER = 0x200 -+ NL80211_FEATURE_WFA_TPC_IE_IN_PROBES = 0x100000 -+ NL80211_FILS_DISCOVERY_ATTR_INT_MAX = 0x2 -+ NL80211_FILS_DISCOVERY_ATTR_INT_MIN = 0x1 -+ NL80211_FILS_DISCOVERY_ATTR_MAX = 0x3 -+ NL80211_FILS_DISCOVERY_ATTR_TMPL = 0x3 -+ NL80211_FILS_DISCOVERY_TMPL_MIN_LEN = 0x2a -+ NL80211_FREQUENCY_ATTR_16MHZ = 0x19 -+ NL80211_FREQUENCY_ATTR_1MHZ = 0x15 -+ NL80211_FREQUENCY_ATTR_2MHZ = 0x16 -+ NL80211_FREQUENCY_ATTR_4MHZ = 0x17 -+ NL80211_FREQUENCY_ATTR_8MHZ = 0x18 -+ NL80211_FREQUENCY_ATTR_DFS_CAC_TIME = 0xd -+ NL80211_FREQUENCY_ATTR_DFS_STATE = 0x7 -+ NL80211_FREQUENCY_ATTR_DFS_TIME = 0x8 -+ NL80211_FREQUENCY_ATTR_DISABLED = 0x2 -+ NL80211_FREQUENCY_ATTR_FREQ = 0x1 -+ NL80211_FREQUENCY_ATTR_GO_CONCURRENT = 0xf -+ NL80211_FREQUENCY_ATTR_INDOOR_ONLY = 0xe -+ NL80211_FREQUENCY_ATTR_IR_CONCURRENT = 0xf -+ NL80211_FREQUENCY_ATTR_MAX = 0x1b -+ NL80211_FREQUENCY_ATTR_MAX_TX_POWER = 0x6 -+ NL80211_FREQUENCY_ATTR_NO_10MHZ = 0x11 -+ NL80211_FREQUENCY_ATTR_NO_160MHZ = 0xc -+ NL80211_FREQUENCY_ATTR_NO_20MHZ = 0x10 -+ NL80211_FREQUENCY_ATTR_NO_80MHZ = 0xb -+ NL80211_FREQUENCY_ATTR_NO_HE = 0x13 -+ NL80211_FREQUENCY_ATTR_NO_HT40_MINUS = 0x9 -+ NL80211_FREQUENCY_ATTR_NO_HT40_PLUS = 0xa -+ NL80211_FREQUENCY_ATTR_NO_IBSS = 0x3 -+ NL80211_FREQUENCY_ATTR_NO_IR = 0x3 -+ NL80211_FREQUENCY_ATTR_OFFSET = 0x14 -+ NL80211_FREQUENCY_ATTR_PASSIVE_SCAN = 0x3 -+ NL80211_FREQUENCY_ATTR_RADAR = 0x5 -+ NL80211_FREQUENCY_ATTR_WMM = 0x12 -+ NL80211_FTM_RESP_ATTR_CIVICLOC = 0x3 -+ NL80211_FTM_RESP_ATTR_ENABLED = 0x1 -+ NL80211_FTM_RESP_ATTR_LCI = 0x2 -+ NL80211_FTM_RESP_ATTR_MAX = 0x3 -+ NL80211_FTM_STATS_ASAP_NUM = 0x4 -+ NL80211_FTM_STATS_FAILED_NUM = 0x3 -+ NL80211_FTM_STATS_MAX = 0xa -+ NL80211_FTM_STATS_NON_ASAP_NUM = 0x5 -+ NL80211_FTM_STATS_OUT_OF_WINDOW_TRIGGERS_NUM = 0x9 -+ NL80211_FTM_STATS_PAD = 0xa -+ NL80211_FTM_STATS_PARTIAL_NUM = 0x2 -+ NL80211_FTM_STATS_RESCHEDULE_REQUESTS_NUM = 0x8 -+ NL80211_FTM_STATS_SUCCESS_NUM = 0x1 -+ NL80211_FTM_STATS_TOTAL_DURATION_MSEC = 0x6 -+ NL80211_FTM_STATS_UNKNOWN_TRIGGERS_NUM = 0x7 -+ NL80211_GENL_NAME = "nl80211" -+ NL80211_HE_BSS_COLOR_ATTR_COLOR = 0x1 -+ NL80211_HE_BSS_COLOR_ATTR_DISABLED = 0x2 -+ NL80211_HE_BSS_COLOR_ATTR_MAX = 0x3 -+ NL80211_HE_BSS_COLOR_ATTR_PARTIAL = 0x3 -+ NL80211_HE_MAX_CAPABILITY_LEN = 0x36 -+ NL80211_HE_MIN_CAPABILITY_LEN = 0x10 -+ NL80211_HE_NSS_MAX = 0x8 -+ NL80211_HE_OBSS_PD_ATTR_BSS_COLOR_BITMAP = 0x4 -+ NL80211_HE_OBSS_PD_ATTR_MAX = 0x6 -+ NL80211_HE_OBSS_PD_ATTR_MAX_OFFSET = 0x2 -+ NL80211_HE_OBSS_PD_ATTR_MIN_OFFSET = 0x1 -+ NL80211_HE_OBSS_PD_ATTR_NON_SRG_MAX_OFFSET = 0x3 -+ NL80211_HE_OBSS_PD_ATTR_PARTIAL_BSSID_BITMAP = 0x5 -+ NL80211_HE_OBSS_PD_ATTR_SR_CTRL = 0x6 -+ NL80211_HIDDEN_SSID_NOT_IN_USE = 0x0 -+ NL80211_HIDDEN_SSID_ZERO_CONTENTS = 0x2 -+ NL80211_HIDDEN_SSID_ZERO_LEN = 0x1 -+ NL80211_HT_CAPABILITY_LEN = 0x1a -+ NL80211_IFACE_COMB_BI_MIN_GCD = 0x7 -+ NL80211_IFACE_COMB_LIMITS = 0x1 -+ NL80211_IFACE_COMB_MAXNUM = 0x2 -+ NL80211_IFACE_COMB_NUM_CHANNELS = 0x4 -+ NL80211_IFACE_COMB_RADAR_DETECT_REGIONS = 0x6 -+ NL80211_IFACE_COMB_RADAR_DETECT_WIDTHS = 0x5 -+ NL80211_IFACE_COMB_STA_AP_BI_MATCH = 0x3 -+ NL80211_IFACE_COMB_UNSPEC = 0x0 -+ NL80211_IFACE_LIMIT_MAX = 0x1 -+ NL80211_IFACE_LIMIT_TYPES = 0x2 -+ NL80211_IFACE_LIMIT_UNSPEC = 0x0 -+ NL80211_IFTYPE_ADHOC = 0x1 -+ NL80211_IFTYPE_AKM_ATTR_IFTYPES = 0x1 -+ NL80211_IFTYPE_AKM_ATTR_MAX = 0x2 -+ NL80211_IFTYPE_AKM_ATTR_SUITES = 0x2 -+ NL80211_IFTYPE_AP = 0x3 -+ NL80211_IFTYPE_AP_VLAN = 0x4 -+ NL80211_IFTYPE_MAX = 0xc -+ NL80211_IFTYPE_MESH_POINT = 0x7 -+ NL80211_IFTYPE_MONITOR = 0x6 -+ NL80211_IFTYPE_NAN = 0xc -+ NL80211_IFTYPE_OCB = 0xb -+ NL80211_IFTYPE_P2P_CLIENT = 0x8 -+ NL80211_IFTYPE_P2P_DEVICE = 0xa -+ NL80211_IFTYPE_P2P_GO = 0x9 -+ NL80211_IFTYPE_STATION = 0x2 -+ NL80211_IFTYPE_UNSPECIFIED = 0x0 -+ NL80211_IFTYPE_WDS = 0x5 -+ NL80211_KCK_EXT_LEN = 0x18 -+ NL80211_KCK_LEN = 0x10 -+ NL80211_KEK_EXT_LEN = 0x20 -+ NL80211_KEK_LEN = 0x10 -+ NL80211_KEY_CIPHER = 0x3 -+ NL80211_KEY_DATA = 0x1 -+ NL80211_KEY_DEFAULT_BEACON = 0xa -+ NL80211_KEY_DEFAULT = 0x5 -+ NL80211_KEY_DEFAULT_MGMT = 0x6 -+ NL80211_KEY_DEFAULT_TYPE_MULTICAST = 0x2 -+ NL80211_KEY_DEFAULT_TYPES = 0x8 -+ NL80211_KEY_DEFAULT_TYPE_UNICAST = 0x1 -+ NL80211_KEY_IDX = 0x2 -+ NL80211_KEY_MAX = 0xa -+ NL80211_KEY_MODE = 0x9 -+ NL80211_KEY_NO_TX = 0x1 -+ NL80211_KEY_RX_TX = 0x0 -+ NL80211_KEY_SEQ = 0x4 -+ NL80211_KEY_SET_TX = 0x2 -+ NL80211_KEY_TYPE = 0x7 -+ NL80211_KEYTYPE_GROUP = 0x0 -+ NL80211_KEYTYPE_PAIRWISE = 0x1 -+ NL80211_KEYTYPE_PEERKEY = 0x2 -+ NL80211_MAX_NR_AKM_SUITES = 0x2 -+ NL80211_MAX_NR_CIPHER_SUITES = 0x5 -+ NL80211_MAX_SUPP_HT_RATES = 0x4d -+ NL80211_MAX_SUPP_RATES = 0x20 -+ NL80211_MAX_SUPP_REG_RULES = 0x80 -+ NL80211_MESHCONF_ATTR_MAX = 0x1f -+ NL80211_MESHCONF_AUTO_OPEN_PLINKS = 0x7 -+ NL80211_MESHCONF_AWAKE_WINDOW = 0x1b -+ NL80211_MESHCONF_CONFIRM_TIMEOUT = 0x2 -+ NL80211_MESHCONF_CONNECTED_TO_AS = 0x1f -+ NL80211_MESHCONF_CONNECTED_TO_GATE = 0x1d -+ NL80211_MESHCONF_ELEMENT_TTL = 0xf -+ NL80211_MESHCONF_FORWARDING = 0x13 -+ NL80211_MESHCONF_GATE_ANNOUNCEMENTS = 0x11 -+ NL80211_MESHCONF_HOLDING_TIMEOUT = 0x3 -+ NL80211_MESHCONF_HT_OPMODE = 0x16 -+ NL80211_MESHCONF_HWMP_ACTIVE_PATH_TIMEOUT = 0xb -+ NL80211_MESHCONF_HWMP_CONFIRMATION_INTERVAL = 0x19 -+ NL80211_MESHCONF_HWMP_MAX_PREQ_RETRIES = 0x8 -+ NL80211_MESHCONF_HWMP_NET_DIAM_TRVS_TIME = 0xd -+ NL80211_MESHCONF_HWMP_PATH_TO_ROOT_TIMEOUT = 0x17 -+ NL80211_MESHCONF_HWMP_PERR_MIN_INTERVAL = 0x12 -+ NL80211_MESHCONF_HWMP_PREQ_MIN_INTERVAL = 0xc -+ NL80211_MESHCONF_HWMP_RANN_INTERVAL = 0x10 -+ NL80211_MESHCONF_HWMP_ROOT_INTERVAL = 0x18 -+ NL80211_MESHCONF_HWMP_ROOTMODE = 0xe -+ NL80211_MESHCONF_MAX_PEER_LINKS = 0x4 -+ NL80211_MESHCONF_MAX_RETRIES = 0x5 -+ NL80211_MESHCONF_MIN_DISCOVERY_TIMEOUT = 0xa -+ NL80211_MESHCONF_NOLEARN = 0x1e -+ NL80211_MESHCONF_PATH_REFRESH_TIME = 0x9 -+ NL80211_MESHCONF_PLINK_TIMEOUT = 0x1c -+ NL80211_MESHCONF_POWER_MODE = 0x1a -+ NL80211_MESHCONF_RETRY_TIMEOUT = 0x1 -+ NL80211_MESHCONF_RSSI_THRESHOLD = 0x14 -+ NL80211_MESHCONF_SYNC_OFFSET_MAX_NEIGHBOR = 0x15 -+ NL80211_MESHCONF_TTL = 0x6 -+ NL80211_MESH_POWER_ACTIVE = 0x1 -+ NL80211_MESH_POWER_DEEP_SLEEP = 0x3 -+ NL80211_MESH_POWER_LIGHT_SLEEP = 0x2 -+ NL80211_MESH_POWER_MAX = 0x3 -+ NL80211_MESH_POWER_UNKNOWN = 0x0 -+ NL80211_MESH_SETUP_ATTR_MAX = 0x8 -+ NL80211_MESH_SETUP_AUTH_PROTOCOL = 0x8 -+ NL80211_MESH_SETUP_ENABLE_VENDOR_METRIC = 0x2 -+ NL80211_MESH_SETUP_ENABLE_VENDOR_PATH_SEL = 0x1 -+ NL80211_MESH_SETUP_ENABLE_VENDOR_SYNC = 0x6 -+ NL80211_MESH_SETUP_IE = 0x3 -+ NL80211_MESH_SETUP_USERSPACE_AMPE = 0x5 -+ NL80211_MESH_SETUP_USERSPACE_AUTH = 0x4 -+ NL80211_MESH_SETUP_USERSPACE_MPM = 0x7 -+ NL80211_MESH_SETUP_VENDOR_PATH_SEL_IE = 0x3 -+ NL80211_MFP_NO = 0x0 -+ NL80211_MFP_OPTIONAL = 0x2 -+ NL80211_MFP_REQUIRED = 0x1 -+ NL80211_MIN_REMAIN_ON_CHANNEL_TIME = 0xa -+ NL80211_MNTR_FLAG_ACTIVE = 0x6 -+ NL80211_MNTR_FLAG_CONTROL = 0x3 -+ NL80211_MNTR_FLAG_COOK_FRAMES = 0x5 -+ NL80211_MNTR_FLAG_FCSFAIL = 0x1 -+ NL80211_MNTR_FLAG_MAX = 0x6 -+ NL80211_MNTR_FLAG_OTHER_BSS = 0x4 -+ NL80211_MNTR_FLAG_PLCPFAIL = 0x2 -+ NL80211_MPATH_FLAG_ACTIVE = 0x1 -+ NL80211_MPATH_FLAG_FIXED = 0x8 -+ NL80211_MPATH_FLAG_RESOLVED = 0x10 -+ NL80211_MPATH_FLAG_RESOLVING = 0x2 -+ NL80211_MPATH_FLAG_SN_VALID = 0x4 -+ NL80211_MPATH_INFO_DISCOVERY_RETRIES = 0x7 -+ NL80211_MPATH_INFO_DISCOVERY_TIMEOUT = 0x6 -+ NL80211_MPATH_INFO_EXPTIME = 0x4 -+ NL80211_MPATH_INFO_FLAGS = 0x5 -+ NL80211_MPATH_INFO_FRAME_QLEN = 0x1 -+ NL80211_MPATH_INFO_HOP_COUNT = 0x8 -+ NL80211_MPATH_INFO_MAX = 0x9 -+ NL80211_MPATH_INFO_METRIC = 0x3 -+ NL80211_MPATH_INFO_PATH_CHANGE = 0x9 -+ NL80211_MPATH_INFO_SN = 0x2 -+ NL80211_MULTICAST_GROUP_CONFIG = "config" -+ NL80211_MULTICAST_GROUP_MLME = "mlme" -+ NL80211_MULTICAST_GROUP_NAN = "nan" -+ NL80211_MULTICAST_GROUP_REG = "regulatory" -+ NL80211_MULTICAST_GROUP_SCAN = "scan" -+ NL80211_MULTICAST_GROUP_TESTMODE = "testmode" -+ NL80211_MULTICAST_GROUP_VENDOR = "vendor" -+ NL80211_NAN_FUNC_ATTR_MAX = 0x10 -+ NL80211_NAN_FUNC_CLOSE_RANGE = 0x9 -+ NL80211_NAN_FUNC_FOLLOW_UP = 0x2 -+ NL80211_NAN_FUNC_FOLLOW_UP_DEST = 0x8 -+ NL80211_NAN_FUNC_FOLLOW_UP_ID = 0x6 -+ NL80211_NAN_FUNC_FOLLOW_UP_REQ_ID = 0x7 -+ NL80211_NAN_FUNC_INSTANCE_ID = 0xf -+ NL80211_NAN_FUNC_MAX_TYPE = 0x2 -+ NL80211_NAN_FUNC_PUBLISH_BCAST = 0x4 -+ NL80211_NAN_FUNC_PUBLISH = 0x0 -+ NL80211_NAN_FUNC_PUBLISH_TYPE = 0x3 -+ NL80211_NAN_FUNC_RX_MATCH_FILTER = 0xd -+ NL80211_NAN_FUNC_SERVICE_ID = 0x2 -+ NL80211_NAN_FUNC_SERVICE_ID_LEN = 0x6 -+ NL80211_NAN_FUNC_SERVICE_INFO = 0xb -+ NL80211_NAN_FUNC_SERVICE_SPEC_INFO_MAX_LEN = 0xff -+ NL80211_NAN_FUNC_SRF = 0xc -+ NL80211_NAN_FUNC_SRF_MAX_LEN = 0xff -+ NL80211_NAN_FUNC_SUBSCRIBE_ACTIVE = 0x5 -+ NL80211_NAN_FUNC_SUBSCRIBE = 0x1 -+ NL80211_NAN_FUNC_TERM_REASON = 0x10 -+ NL80211_NAN_FUNC_TERM_REASON_ERROR = 0x2 -+ NL80211_NAN_FUNC_TERM_REASON_TTL_EXPIRED = 0x1 -+ NL80211_NAN_FUNC_TERM_REASON_USER_REQUEST = 0x0 -+ NL80211_NAN_FUNC_TTL = 0xa -+ NL80211_NAN_FUNC_TX_MATCH_FILTER = 0xe -+ NL80211_NAN_FUNC_TYPE = 0x1 -+ NL80211_NAN_MATCH_ATTR_MAX = 0x2 -+ NL80211_NAN_MATCH_FUNC_LOCAL = 0x1 -+ NL80211_NAN_MATCH_FUNC_PEER = 0x2 -+ NL80211_NAN_SOLICITED_PUBLISH = 0x1 -+ NL80211_NAN_SRF_ATTR_MAX = 0x4 -+ NL80211_NAN_SRF_BF = 0x2 -+ NL80211_NAN_SRF_BF_IDX = 0x3 -+ NL80211_NAN_SRF_INCLUDE = 0x1 -+ NL80211_NAN_SRF_MAC_ADDRS = 0x4 -+ NL80211_NAN_UNSOLICITED_PUBLISH = 0x2 -+ NL80211_NUM_ACS = 0x4 -+ NL80211_P2P_PS_SUPPORTED = 0x1 -+ NL80211_P2P_PS_UNSUPPORTED = 0x0 -+ NL80211_PKTPAT_MASK = 0x1 -+ NL80211_PKTPAT_OFFSET = 0x3 -+ NL80211_PKTPAT_PATTERN = 0x2 -+ NL80211_PLINK_ACTION_BLOCK = 0x2 -+ NL80211_PLINK_ACTION_NO_ACTION = 0x0 -+ NL80211_PLINK_ACTION_OPEN = 0x1 -+ NL80211_PLINK_BLOCKED = 0x6 -+ NL80211_PLINK_CNF_RCVD = 0x3 -+ NL80211_PLINK_ESTAB = 0x4 -+ NL80211_PLINK_HOLDING = 0x5 -+ NL80211_PLINK_LISTEN = 0x0 -+ NL80211_PLINK_OPN_RCVD = 0x2 -+ NL80211_PLINK_OPN_SNT = 0x1 -+ NL80211_PMKSA_CANDIDATE_BSSID = 0x2 -+ NL80211_PMKSA_CANDIDATE_INDEX = 0x1 -+ NL80211_PMKSA_CANDIDATE_PREAUTH = 0x3 -+ NL80211_PMSR_ATTR_MAX = 0x5 -+ NL80211_PMSR_ATTR_MAX_PEERS = 0x1 -+ NL80211_PMSR_ATTR_PEERS = 0x5 -+ NL80211_PMSR_ATTR_RANDOMIZE_MAC_ADDR = 0x3 -+ NL80211_PMSR_ATTR_REPORT_AP_TSF = 0x2 -+ NL80211_PMSR_ATTR_TYPE_CAPA = 0x4 -+ NL80211_PMSR_FTM_CAPA_ATTR_ASAP = 0x1 -+ NL80211_PMSR_FTM_CAPA_ATTR_BANDWIDTHS = 0x6 -+ NL80211_PMSR_FTM_CAPA_ATTR_MAX_BURSTS_EXPONENT = 0x7 -+ NL80211_PMSR_FTM_CAPA_ATTR_MAX = 0xa -+ NL80211_PMSR_FTM_CAPA_ATTR_MAX_FTMS_PER_BURST = 0x8 -+ NL80211_PMSR_FTM_CAPA_ATTR_NON_ASAP = 0x2 -+ NL80211_PMSR_FTM_CAPA_ATTR_NON_TRIGGER_BASED = 0xa -+ NL80211_PMSR_FTM_CAPA_ATTR_PREAMBLES = 0x5 -+ NL80211_PMSR_FTM_CAPA_ATTR_REQ_CIVICLOC = 0x4 -+ NL80211_PMSR_FTM_CAPA_ATTR_REQ_LCI = 0x3 -+ NL80211_PMSR_FTM_CAPA_ATTR_TRIGGER_BASED = 0x9 -+ NL80211_PMSR_FTM_FAILURE_BAD_CHANGED_PARAMS = 0x7 -+ NL80211_PMSR_FTM_FAILURE_INVALID_TIMESTAMP = 0x5 -+ NL80211_PMSR_FTM_FAILURE_NO_RESPONSE = 0x1 -+ NL80211_PMSR_FTM_FAILURE_PEER_BUSY = 0x6 -+ NL80211_PMSR_FTM_FAILURE_PEER_NOT_CAPABLE = 0x4 -+ NL80211_PMSR_FTM_FAILURE_REJECTED = 0x2 -+ NL80211_PMSR_FTM_FAILURE_UNSPECIFIED = 0x0 -+ NL80211_PMSR_FTM_FAILURE_WRONG_CHANNEL = 0x3 -+ NL80211_PMSR_FTM_REQ_ATTR_ASAP = 0x1 -+ NL80211_PMSR_FTM_REQ_ATTR_BURST_DURATION = 0x5 -+ NL80211_PMSR_FTM_REQ_ATTR_BURST_PERIOD = 0x4 -+ NL80211_PMSR_FTM_REQ_ATTR_FTMS_PER_BURST = 0x6 -+ NL80211_PMSR_FTM_REQ_ATTR_LMR_FEEDBACK = 0xc -+ NL80211_PMSR_FTM_REQ_ATTR_MAX = 0xd -+ NL80211_PMSR_FTM_REQ_ATTR_NON_TRIGGER_BASED = 0xb -+ NL80211_PMSR_FTM_REQ_ATTR_NUM_BURSTS_EXP = 0x3 -+ NL80211_PMSR_FTM_REQ_ATTR_NUM_FTMR_RETRIES = 0x7 -+ NL80211_PMSR_FTM_REQ_ATTR_PREAMBLE = 0x2 -+ NL80211_PMSR_FTM_REQ_ATTR_REQUEST_CIVICLOC = 0x9 -+ NL80211_PMSR_FTM_REQ_ATTR_REQUEST_LCI = 0x8 -+ NL80211_PMSR_FTM_REQ_ATTR_TRIGGER_BASED = 0xa -+ NL80211_PMSR_FTM_RESP_ATTR_BURST_DURATION = 0x7 -+ NL80211_PMSR_FTM_RESP_ATTR_BURST_INDEX = 0x2 -+ NL80211_PMSR_FTM_RESP_ATTR_BUSY_RETRY_TIME = 0x5 -+ NL80211_PMSR_FTM_RESP_ATTR_CIVICLOC = 0x14 -+ NL80211_PMSR_FTM_RESP_ATTR_DIST_AVG = 0x10 -+ NL80211_PMSR_FTM_RESP_ATTR_DIST_SPREAD = 0x12 -+ NL80211_PMSR_FTM_RESP_ATTR_DIST_VARIANCE = 0x11 -+ NL80211_PMSR_FTM_RESP_ATTR_FAIL_REASON = 0x1 -+ NL80211_PMSR_FTM_RESP_ATTR_FTMS_PER_BURST = 0x8 -+ NL80211_PMSR_FTM_RESP_ATTR_LCI = 0x13 -+ NL80211_PMSR_FTM_RESP_ATTR_MAX = 0x15 -+ NL80211_PMSR_FTM_RESP_ATTR_NUM_BURSTS_EXP = 0x6 -+ NL80211_PMSR_FTM_RESP_ATTR_NUM_FTMR_ATTEMPTS = 0x3 -+ NL80211_PMSR_FTM_RESP_ATTR_NUM_FTMR_SUCCESSES = 0x4 -+ NL80211_PMSR_FTM_RESP_ATTR_PAD = 0x15 -+ NL80211_PMSR_FTM_RESP_ATTR_RSSI_AVG = 0x9 -+ NL80211_PMSR_FTM_RESP_ATTR_RSSI_SPREAD = 0xa -+ NL80211_PMSR_FTM_RESP_ATTR_RTT_AVG = 0xd -+ NL80211_PMSR_FTM_RESP_ATTR_RTT_SPREAD = 0xf -+ NL80211_PMSR_FTM_RESP_ATTR_RTT_VARIANCE = 0xe -+ NL80211_PMSR_FTM_RESP_ATTR_RX_RATE = 0xc -+ NL80211_PMSR_FTM_RESP_ATTR_TX_RATE = 0xb -+ NL80211_PMSR_PEER_ATTR_ADDR = 0x1 -+ NL80211_PMSR_PEER_ATTR_CHAN = 0x2 -+ NL80211_PMSR_PEER_ATTR_MAX = 0x4 -+ NL80211_PMSR_PEER_ATTR_REQ = 0x3 -+ NL80211_PMSR_PEER_ATTR_RESP = 0x4 -+ NL80211_PMSR_REQ_ATTR_DATA = 0x1 -+ NL80211_PMSR_REQ_ATTR_GET_AP_TSF = 0x2 -+ NL80211_PMSR_REQ_ATTR_MAX = 0x2 -+ NL80211_PMSR_RESP_ATTR_AP_TSF = 0x4 -+ NL80211_PMSR_RESP_ATTR_DATA = 0x1 -+ NL80211_PMSR_RESP_ATTR_FINAL = 0x5 -+ NL80211_PMSR_RESP_ATTR_HOST_TIME = 0x3 -+ NL80211_PMSR_RESP_ATTR_MAX = 0x6 -+ NL80211_PMSR_RESP_ATTR_PAD = 0x6 -+ NL80211_PMSR_RESP_ATTR_STATUS = 0x2 -+ NL80211_PMSR_STATUS_FAILURE = 0x3 -+ NL80211_PMSR_STATUS_REFUSED = 0x1 -+ NL80211_PMSR_STATUS_SUCCESS = 0x0 -+ NL80211_PMSR_STATUS_TIMEOUT = 0x2 -+ NL80211_PMSR_TYPE_FTM = 0x1 -+ NL80211_PMSR_TYPE_INVALID = 0x0 -+ NL80211_PMSR_TYPE_MAX = 0x1 -+ NL80211_PREAMBLE_DMG = 0x3 -+ NL80211_PREAMBLE_HE = 0x4 -+ NL80211_PREAMBLE_HT = 0x1 -+ NL80211_PREAMBLE_LEGACY = 0x0 -+ NL80211_PREAMBLE_VHT = 0x2 -+ NL80211_PROBE_RESP_OFFLOAD_SUPPORT_80211U = 0x8 -+ NL80211_PROBE_RESP_OFFLOAD_SUPPORT_P2P = 0x4 -+ NL80211_PROBE_RESP_OFFLOAD_SUPPORT_WPS2 = 0x2 -+ NL80211_PROBE_RESP_OFFLOAD_SUPPORT_WPS = 0x1 -+ NL80211_PROTOCOL_FEATURE_SPLIT_WIPHY_DUMP = 0x1 -+ NL80211_PS_DISABLED = 0x0 -+ NL80211_PS_ENABLED = 0x1 -+ NL80211_RADAR_CAC_ABORTED = 0x2 -+ NL80211_RADAR_CAC_FINISHED = 0x1 -+ NL80211_RADAR_CAC_STARTED = 0x5 -+ NL80211_RADAR_DETECTED = 0x0 -+ NL80211_RADAR_NOP_FINISHED = 0x3 -+ NL80211_RADAR_PRE_CAC_EXPIRED = 0x4 -+ NL80211_RATE_INFO_10_MHZ_WIDTH = 0xb -+ NL80211_RATE_INFO_160_MHZ_WIDTH = 0xa -+ NL80211_RATE_INFO_40_MHZ_WIDTH = 0x3 -+ NL80211_RATE_INFO_5_MHZ_WIDTH = 0xc -+ NL80211_RATE_INFO_80_MHZ_WIDTH = 0x8 -+ NL80211_RATE_INFO_80P80_MHZ_WIDTH = 0x9 -+ NL80211_RATE_INFO_BITRATE32 = 0x5 -+ NL80211_RATE_INFO_BITRATE = 0x1 -+ NL80211_RATE_INFO_HE_1XLTF = 0x0 -+ NL80211_RATE_INFO_HE_2XLTF = 0x1 -+ NL80211_RATE_INFO_HE_4XLTF = 0x2 -+ NL80211_RATE_INFO_HE_DCM = 0x10 -+ NL80211_RATE_INFO_HE_GI_0_8 = 0x0 -+ NL80211_RATE_INFO_HE_GI_1_6 = 0x1 -+ NL80211_RATE_INFO_HE_GI_3_2 = 0x2 -+ NL80211_RATE_INFO_HE_GI = 0xf -+ NL80211_RATE_INFO_HE_MCS = 0xd -+ NL80211_RATE_INFO_HE_NSS = 0xe -+ NL80211_RATE_INFO_HE_RU_ALLOC_106 = 0x2 -+ NL80211_RATE_INFO_HE_RU_ALLOC_242 = 0x3 -+ NL80211_RATE_INFO_HE_RU_ALLOC_26 = 0x0 -+ NL80211_RATE_INFO_HE_RU_ALLOC_2x996 = 0x6 -+ NL80211_RATE_INFO_HE_RU_ALLOC_484 = 0x4 -+ NL80211_RATE_INFO_HE_RU_ALLOC_52 = 0x1 -+ NL80211_RATE_INFO_HE_RU_ALLOC_996 = 0x5 -+ NL80211_RATE_INFO_HE_RU_ALLOC = 0x11 -+ NL80211_RATE_INFO_MAX = 0x16 -+ NL80211_RATE_INFO_MCS = 0x2 -+ NL80211_RATE_INFO_SHORT_GI = 0x4 -+ NL80211_RATE_INFO_VHT_MCS = 0x6 -+ NL80211_RATE_INFO_VHT_NSS = 0x7 -+ NL80211_REGDOM_SET_BY_CORE = 0x0 -+ NL80211_REGDOM_SET_BY_COUNTRY_IE = 0x3 -+ NL80211_REGDOM_SET_BY_DRIVER = 0x2 -+ NL80211_REGDOM_SET_BY_USER = 0x1 -+ NL80211_REGDOM_TYPE_COUNTRY = 0x0 -+ NL80211_REGDOM_TYPE_CUSTOM_WORLD = 0x2 -+ NL80211_REGDOM_TYPE_INTERSECTION = 0x3 -+ NL80211_REGDOM_TYPE_WORLD = 0x1 -+ NL80211_REG_RULE_ATTR_MAX = 0x7 -+ NL80211_REKEY_DATA_AKM = 0x4 -+ NL80211_REKEY_DATA_KCK = 0x2 -+ NL80211_REKEY_DATA_KEK = 0x1 -+ NL80211_REKEY_DATA_REPLAY_CTR = 0x3 -+ NL80211_REPLAY_CTR_LEN = 0x8 -+ NL80211_RRF_AUTO_BW = 0x800 -+ NL80211_RRF_DFS = 0x10 -+ NL80211_RRF_GO_CONCURRENT = 0x1000 -+ NL80211_RRF_IR_CONCURRENT = 0x1000 -+ NL80211_RRF_NO_160MHZ = 0x10000 -+ NL80211_RRF_NO_80MHZ = 0x8000 -+ NL80211_RRF_NO_CCK = 0x2 -+ NL80211_RRF_NO_HE = 0x20000 -+ NL80211_RRF_NO_HT40 = 0x6000 -+ NL80211_RRF_NO_HT40MINUS = 0x2000 -+ NL80211_RRF_NO_HT40PLUS = 0x4000 -+ NL80211_RRF_NO_IBSS = 0x80 -+ NL80211_RRF_NO_INDOOR = 0x4 -+ NL80211_RRF_NO_IR_ALL = 0x180 -+ NL80211_RRF_NO_IR = 0x80 -+ NL80211_RRF_NO_OFDM = 0x1 -+ NL80211_RRF_NO_OUTDOOR = 0x8 -+ NL80211_RRF_PASSIVE_SCAN = 0x80 -+ NL80211_RRF_PTMP_ONLY = 0x40 -+ NL80211_RRF_PTP_ONLY = 0x20 -+ NL80211_RXMGMT_FLAG_ANSWERED = 0x1 -+ NL80211_RXMGMT_FLAG_EXTERNAL_AUTH = 0x2 -+ NL80211_SAE_PWE_BOTH = 0x3 -+ NL80211_SAE_PWE_HASH_TO_ELEMENT = 0x2 -+ NL80211_SAE_PWE_HUNT_AND_PECK = 0x1 -+ NL80211_SAE_PWE_UNSPECIFIED = 0x0 -+ NL80211_SAR_ATTR_MAX = 0x2 -+ NL80211_SAR_ATTR_SPECS = 0x2 -+ NL80211_SAR_ATTR_SPECS_END_FREQ = 0x4 -+ NL80211_SAR_ATTR_SPECS_MAX = 0x4 -+ NL80211_SAR_ATTR_SPECS_POWER = 0x1 -+ NL80211_SAR_ATTR_SPECS_RANGE_INDEX = 0x2 -+ NL80211_SAR_ATTR_SPECS_START_FREQ = 0x3 -+ NL80211_SAR_ATTR_TYPE = 0x1 -+ NL80211_SAR_TYPE_POWER = 0x0 -+ NL80211_SCAN_FLAG_ACCEPT_BCAST_PROBE_RESP = 0x20 -+ NL80211_SCAN_FLAG_AP = 0x4 -+ NL80211_SCAN_FLAG_COLOCATED_6GHZ = 0x4000 -+ NL80211_SCAN_FLAG_FILS_MAX_CHANNEL_TIME = 0x10 -+ NL80211_SCAN_FLAG_FLUSH = 0x2 -+ NL80211_SCAN_FLAG_FREQ_KHZ = 0x2000 -+ NL80211_SCAN_FLAG_HIGH_ACCURACY = 0x400 -+ NL80211_SCAN_FLAG_LOW_POWER = 0x200 -+ NL80211_SCAN_FLAG_LOW_PRIORITY = 0x1 -+ NL80211_SCAN_FLAG_LOW_SPAN = 0x100 -+ NL80211_SCAN_FLAG_MIN_PREQ_CONTENT = 0x1000 -+ NL80211_SCAN_FLAG_OCE_PROBE_REQ_DEFERRAL_SUPPRESSION = 0x80 -+ NL80211_SCAN_FLAG_OCE_PROBE_REQ_HIGH_TX_RATE = 0x40 -+ NL80211_SCAN_FLAG_RANDOM_ADDR = 0x8 -+ NL80211_SCAN_FLAG_RANDOM_SN = 0x800 -+ NL80211_SCAN_RSSI_THOLD_OFF = -0x12c -+ NL80211_SCHED_SCAN_MATCH_ATTR_BSSID = 0x5 -+ NL80211_SCHED_SCAN_MATCH_ATTR_MAX = 0x6 -+ NL80211_SCHED_SCAN_MATCH_ATTR_RELATIVE_RSSI = 0x3 -+ NL80211_SCHED_SCAN_MATCH_ATTR_RSSI_ADJUST = 0x4 -+ NL80211_SCHED_SCAN_MATCH_ATTR_RSSI = 0x2 -+ NL80211_SCHED_SCAN_MATCH_ATTR_SSID = 0x1 -+ NL80211_SCHED_SCAN_MATCH_PER_BAND_RSSI = 0x6 -+ NL80211_SCHED_SCAN_PLAN_INTERVAL = 0x1 -+ NL80211_SCHED_SCAN_PLAN_ITERATIONS = 0x2 -+ NL80211_SCHED_SCAN_PLAN_MAX = 0x2 -+ NL80211_SMPS_DYNAMIC = 0x2 -+ NL80211_SMPS_MAX = 0x2 -+ NL80211_SMPS_OFF = 0x0 -+ NL80211_SMPS_STATIC = 0x1 -+ NL80211_STA_BSS_PARAM_BEACON_INTERVAL = 0x5 -+ NL80211_STA_BSS_PARAM_CTS_PROT = 0x1 -+ NL80211_STA_BSS_PARAM_DTIM_PERIOD = 0x4 -+ NL80211_STA_BSS_PARAM_MAX = 0x5 -+ NL80211_STA_BSS_PARAM_SHORT_PREAMBLE = 0x2 -+ NL80211_STA_BSS_PARAM_SHORT_SLOT_TIME = 0x3 -+ NL80211_STA_FLAG_ASSOCIATED = 0x7 -+ NL80211_STA_FLAG_AUTHENTICATED = 0x5 -+ NL80211_STA_FLAG_AUTHORIZED = 0x1 -+ NL80211_STA_FLAG_MAX = 0x7 -+ NL80211_STA_FLAG_MAX_OLD_API = 0x6 -+ NL80211_STA_FLAG_MFP = 0x4 -+ NL80211_STA_FLAG_SHORT_PREAMBLE = 0x2 -+ NL80211_STA_FLAG_TDLS_PEER = 0x6 -+ NL80211_STA_FLAG_WME = 0x3 -+ NL80211_STA_INFO_ACK_SIGNAL_AVG = 0x23 -+ NL80211_STA_INFO_ACK_SIGNAL = 0x22 -+ NL80211_STA_INFO_AIRTIME_LINK_METRIC = 0x29 -+ NL80211_STA_INFO_AIRTIME_WEIGHT = 0x28 -+ NL80211_STA_INFO_ASSOC_AT_BOOTTIME = 0x2a -+ NL80211_STA_INFO_BEACON_LOSS = 0x12 -+ NL80211_STA_INFO_BEACON_RX = 0x1d -+ NL80211_STA_INFO_BEACON_SIGNAL_AVG = 0x1e -+ NL80211_STA_INFO_BSS_PARAM = 0xf -+ NL80211_STA_INFO_CHAIN_SIGNAL_AVG = 0x1a -+ NL80211_STA_INFO_CHAIN_SIGNAL = 0x19 -+ NL80211_STA_INFO_CONNECTED_TIME = 0x10 -+ NL80211_STA_INFO_CONNECTED_TO_AS = 0x2b -+ NL80211_STA_INFO_CONNECTED_TO_GATE = 0x26 -+ NL80211_STA_INFO_DATA_ACK_SIGNAL_AVG = 0x23 -+ NL80211_STA_INFO_EXPECTED_THROUGHPUT = 0x1b -+ NL80211_STA_INFO_FCS_ERROR_COUNT = 0x25 -+ NL80211_STA_INFO_INACTIVE_TIME = 0x1 -+ NL80211_STA_INFO_LLID = 0x4 -+ NL80211_STA_INFO_LOCAL_PM = 0x14 -+ NL80211_STA_INFO_MAX = 0x2b -+ NL80211_STA_INFO_NONPEER_PM = 0x16 -+ NL80211_STA_INFO_PAD = 0x21 -+ NL80211_STA_INFO_PEER_PM = 0x15 -+ NL80211_STA_INFO_PLID = 0x5 -+ NL80211_STA_INFO_PLINK_STATE = 0x6 -+ NL80211_STA_INFO_RX_BITRATE = 0xe -+ NL80211_STA_INFO_RX_BYTES64 = 0x17 -+ NL80211_STA_INFO_RX_BYTES = 0x2 -+ NL80211_STA_INFO_RX_DROP_MISC = 0x1c -+ NL80211_STA_INFO_RX_DURATION = 0x20 -+ NL80211_STA_INFO_RX_MPDUS = 0x24 -+ NL80211_STA_INFO_RX_PACKETS = 0x9 -+ NL80211_STA_INFO_SIGNAL_AVG = 0xd -+ NL80211_STA_INFO_SIGNAL = 0x7 -+ NL80211_STA_INFO_STA_FLAGS = 0x11 -+ NL80211_STA_INFO_TID_STATS = 0x1f -+ NL80211_STA_INFO_T_OFFSET = 0x13 -+ NL80211_STA_INFO_TX_BITRATE = 0x8 -+ NL80211_STA_INFO_TX_BYTES64 = 0x18 -+ NL80211_STA_INFO_TX_BYTES = 0x3 -+ NL80211_STA_INFO_TX_DURATION = 0x27 -+ NL80211_STA_INFO_TX_FAILED = 0xc -+ NL80211_STA_INFO_TX_PACKETS = 0xa -+ NL80211_STA_INFO_TX_RETRIES = 0xb -+ NL80211_STA_WME_MAX = 0x2 -+ NL80211_STA_WME_MAX_SP = 0x2 -+ NL80211_STA_WME_UAPSD_QUEUES = 0x1 -+ NL80211_SURVEY_INFO_CHANNEL_TIME_BUSY = 0x5 -+ NL80211_SURVEY_INFO_CHANNEL_TIME = 0x4 -+ NL80211_SURVEY_INFO_CHANNEL_TIME_EXT_BUSY = 0x6 -+ NL80211_SURVEY_INFO_CHANNEL_TIME_RX = 0x7 -+ NL80211_SURVEY_INFO_CHANNEL_TIME_TX = 0x8 -+ NL80211_SURVEY_INFO_FREQUENCY = 0x1 -+ NL80211_SURVEY_INFO_FREQUENCY_OFFSET = 0xc -+ NL80211_SURVEY_INFO_IN_USE = 0x3 -+ NL80211_SURVEY_INFO_MAX = 0xc -+ NL80211_SURVEY_INFO_NOISE = 0x2 -+ NL80211_SURVEY_INFO_PAD = 0xa -+ NL80211_SURVEY_INFO_TIME_BSS_RX = 0xb -+ NL80211_SURVEY_INFO_TIME_BUSY = 0x5 -+ NL80211_SURVEY_INFO_TIME = 0x4 -+ NL80211_SURVEY_INFO_TIME_EXT_BUSY = 0x6 -+ NL80211_SURVEY_INFO_TIME_RX = 0x7 -+ NL80211_SURVEY_INFO_TIME_SCAN = 0x9 -+ NL80211_SURVEY_INFO_TIME_TX = 0x8 -+ NL80211_TDLS_DISABLE_LINK = 0x4 -+ NL80211_TDLS_DISCOVERY_REQ = 0x0 -+ NL80211_TDLS_ENABLE_LINK = 0x3 -+ NL80211_TDLS_PEER_HE = 0x8 -+ NL80211_TDLS_PEER_HT = 0x1 -+ NL80211_TDLS_PEER_VHT = 0x2 -+ NL80211_TDLS_PEER_WMM = 0x4 -+ NL80211_TDLS_SETUP = 0x1 -+ NL80211_TDLS_TEARDOWN = 0x2 -+ NL80211_TID_CONFIG_ATTR_AMPDU_CTRL = 0x9 -+ NL80211_TID_CONFIG_ATTR_AMSDU_CTRL = 0xb -+ NL80211_TID_CONFIG_ATTR_MAX = 0xd -+ NL80211_TID_CONFIG_ATTR_NOACK = 0x6 -+ NL80211_TID_CONFIG_ATTR_OVERRIDE = 0x4 -+ NL80211_TID_CONFIG_ATTR_PAD = 0x1 -+ NL80211_TID_CONFIG_ATTR_PEER_SUPP = 0x3 -+ NL80211_TID_CONFIG_ATTR_RETRY_LONG = 0x8 -+ NL80211_TID_CONFIG_ATTR_RETRY_SHORT = 0x7 -+ NL80211_TID_CONFIG_ATTR_RTSCTS_CTRL = 0xa -+ NL80211_TID_CONFIG_ATTR_TIDS = 0x5 -+ NL80211_TID_CONFIG_ATTR_TX_RATE = 0xd -+ NL80211_TID_CONFIG_ATTR_TX_RATE_TYPE = 0xc -+ NL80211_TID_CONFIG_ATTR_VIF_SUPP = 0x2 -+ NL80211_TID_CONFIG_DISABLE = 0x1 -+ NL80211_TID_CONFIG_ENABLE = 0x0 -+ NL80211_TID_STATS_MAX = 0x6 -+ NL80211_TID_STATS_PAD = 0x5 -+ NL80211_TID_STATS_RX_MSDU = 0x1 -+ NL80211_TID_STATS_TX_MSDU = 0x2 -+ NL80211_TID_STATS_TX_MSDU_FAILED = 0x4 -+ NL80211_TID_STATS_TX_MSDU_RETRIES = 0x3 -+ NL80211_TID_STATS_TXQ_STATS = 0x6 -+ NL80211_TIMEOUT_ASSOC = 0x3 -+ NL80211_TIMEOUT_AUTH = 0x2 -+ NL80211_TIMEOUT_SCAN = 0x1 -+ NL80211_TIMEOUT_UNSPECIFIED = 0x0 -+ NL80211_TKIP_DATA_OFFSET_ENCR_KEY = 0x0 -+ NL80211_TKIP_DATA_OFFSET_RX_MIC_KEY = 0x18 -+ NL80211_TKIP_DATA_OFFSET_TX_MIC_KEY = 0x10 -+ NL80211_TX_POWER_AUTOMATIC = 0x0 -+ NL80211_TX_POWER_FIXED = 0x2 -+ NL80211_TX_POWER_LIMITED = 0x1 -+ NL80211_TXQ_ATTR_AC = 0x1 -+ NL80211_TXQ_ATTR_AIFS = 0x5 -+ NL80211_TXQ_ATTR_CWMAX = 0x4 -+ NL80211_TXQ_ATTR_CWMIN = 0x3 -+ NL80211_TXQ_ATTR_MAX = 0x5 -+ NL80211_TXQ_ATTR_QUEUE = 0x1 -+ NL80211_TXQ_ATTR_TXOP = 0x2 -+ NL80211_TXQ_Q_BE = 0x2 -+ NL80211_TXQ_Q_BK = 0x3 -+ NL80211_TXQ_Q_VI = 0x1 -+ NL80211_TXQ_Q_VO = 0x0 -+ NL80211_TXQ_STATS_BACKLOG_BYTES = 0x1 -+ NL80211_TXQ_STATS_BACKLOG_PACKETS = 0x2 -+ NL80211_TXQ_STATS_COLLISIONS = 0x8 -+ NL80211_TXQ_STATS_DROPS = 0x4 -+ NL80211_TXQ_STATS_ECN_MARKS = 0x5 -+ NL80211_TXQ_STATS_FLOWS = 0x3 -+ NL80211_TXQ_STATS_MAX = 0xb -+ NL80211_TXQ_STATS_MAX_FLOWS = 0xb -+ NL80211_TXQ_STATS_OVERLIMIT = 0x6 -+ NL80211_TXQ_STATS_OVERMEMORY = 0x7 -+ NL80211_TXQ_STATS_TX_BYTES = 0x9 -+ NL80211_TXQ_STATS_TX_PACKETS = 0xa -+ NL80211_TX_RATE_AUTOMATIC = 0x0 -+ NL80211_TXRATE_DEFAULT_GI = 0x0 -+ NL80211_TX_RATE_FIXED = 0x2 -+ NL80211_TXRATE_FORCE_LGI = 0x2 -+ NL80211_TXRATE_FORCE_SGI = 0x1 -+ NL80211_TXRATE_GI = 0x4 -+ NL80211_TXRATE_HE = 0x5 -+ NL80211_TXRATE_HE_GI = 0x6 -+ NL80211_TXRATE_HE_LTF = 0x7 -+ NL80211_TXRATE_HT = 0x2 -+ NL80211_TXRATE_LEGACY = 0x1 -+ NL80211_TX_RATE_LIMITED = 0x1 -+ NL80211_TXRATE_MAX = 0x7 -+ NL80211_TXRATE_MCS = 0x2 -+ NL80211_TXRATE_VHT = 0x3 -+ NL80211_UNSOL_BCAST_PROBE_RESP_ATTR_INT = 0x1 -+ NL80211_UNSOL_BCAST_PROBE_RESP_ATTR_MAX = 0x2 -+ NL80211_UNSOL_BCAST_PROBE_RESP_ATTR_TMPL = 0x2 -+ NL80211_USER_REG_HINT_CELL_BASE = 0x1 -+ NL80211_USER_REG_HINT_INDOOR = 0x2 -+ NL80211_USER_REG_HINT_USER = 0x0 -+ NL80211_VENDOR_ID_IS_LINUX = 0x80000000 -+ NL80211_VHT_CAPABILITY_LEN = 0xc -+ NL80211_VHT_NSS_MAX = 0x8 -+ NL80211_WIPHY_NAME_MAXLEN = 0x40 -+ NL80211_WMMR_AIFSN = 0x3 -+ NL80211_WMMR_CW_MAX = 0x2 -+ NL80211_WMMR_CW_MIN = 0x1 -+ NL80211_WMMR_MAX = 0x4 -+ NL80211_WMMR_TXOP = 0x4 -+ NL80211_WOWLAN_PKTPAT_MASK = 0x1 -+ NL80211_WOWLAN_PKTPAT_OFFSET = 0x3 -+ NL80211_WOWLAN_PKTPAT_PATTERN = 0x2 -+ NL80211_WOWLAN_TCP_DATA_INTERVAL = 0x9 -+ NL80211_WOWLAN_TCP_DATA_PAYLOAD = 0x6 -+ NL80211_WOWLAN_TCP_DATA_PAYLOAD_SEQ = 0x7 -+ NL80211_WOWLAN_TCP_DATA_PAYLOAD_TOKEN = 0x8 -+ NL80211_WOWLAN_TCP_DST_IPV4 = 0x2 -+ NL80211_WOWLAN_TCP_DST_MAC = 0x3 -+ NL80211_WOWLAN_TCP_DST_PORT = 0x5 -+ NL80211_WOWLAN_TCP_SRC_IPV4 = 0x1 -+ NL80211_WOWLAN_TCP_SRC_PORT = 0x4 -+ NL80211_WOWLAN_TCP_WAKE_MASK = 0xb -+ NL80211_WOWLAN_TCP_WAKE_PAYLOAD = 0xa -+ NL80211_WOWLAN_TRIG_4WAY_HANDSHAKE = 0x8 -+ NL80211_WOWLAN_TRIG_ANY = 0x1 -+ NL80211_WOWLAN_TRIG_DISCONNECT = 0x2 -+ NL80211_WOWLAN_TRIG_EAP_IDENT_REQUEST = 0x7 -+ NL80211_WOWLAN_TRIG_GTK_REKEY_FAILURE = 0x6 -+ NL80211_WOWLAN_TRIG_GTK_REKEY_SUPPORTED = 0x5 -+ NL80211_WOWLAN_TRIG_MAGIC_PKT = 0x3 -+ NL80211_WOWLAN_TRIG_NET_DETECT = 0x12 -+ NL80211_WOWLAN_TRIG_NET_DETECT_RESULTS = 0x13 -+ NL80211_WOWLAN_TRIG_PKT_PATTERN = 0x4 -+ NL80211_WOWLAN_TRIG_RFKILL_RELEASE = 0x9 -+ NL80211_WOWLAN_TRIG_TCP_CONNECTION = 0xe -+ NL80211_WOWLAN_TRIG_WAKEUP_PKT_80211 = 0xa -+ NL80211_WOWLAN_TRIG_WAKEUP_PKT_80211_LEN = 0xb -+ NL80211_WOWLAN_TRIG_WAKEUP_PKT_8023 = 0xc -+ NL80211_WOWLAN_TRIG_WAKEUP_PKT_8023_LEN = 0xd -+ NL80211_WOWLAN_TRIG_WAKEUP_TCP_CONNLOST = 0x10 -+ NL80211_WOWLAN_TRIG_WAKEUP_TCP_MATCH = 0xf -+ NL80211_WOWLAN_TRIG_WAKEUP_TCP_NOMORETOKENS = 0x11 -+ NL80211_WPA_VERSION_1 = 0x1 -+ NL80211_WPA_VERSION_2 = 0x2 -+ NL80211_WPA_VERSION_3 = 0x4 -+) -+ -+const ( -+ FRA_UNSPEC = 0x0 -+ FRA_DST = 0x1 -+ FRA_SRC = 0x2 -+ FRA_IIFNAME = 0x3 -+ FRA_GOTO = 0x4 -+ FRA_UNUSED2 = 0x5 -+ FRA_PRIORITY = 0x6 -+ FRA_UNUSED3 = 0x7 -+ FRA_UNUSED4 = 0x8 -+ FRA_UNUSED5 = 0x9 -+ FRA_FWMARK = 0xa -+ FRA_FLOW = 0xb -+ FRA_TUN_ID = 0xc -+ FRA_SUPPRESS_IFGROUP = 0xd -+ FRA_SUPPRESS_PREFIXLEN = 0xe -+ FRA_TABLE = 0xf -+ FRA_FWMASK = 0x10 -+ FRA_OIFNAME = 0x11 -+ FRA_PAD = 0x12 -+ FRA_L3MDEV = 0x13 -+ FRA_UID_RANGE = 0x14 -+ FRA_PROTOCOL = 0x15 -+ FRA_IP_PROTO = 0x16 -+ FRA_SPORT_RANGE = 0x17 -+ FRA_DPORT_RANGE = 0x18 -+ FR_ACT_UNSPEC = 0x0 -+ FR_ACT_TO_TBL = 0x1 -+ FR_ACT_GOTO = 0x2 -+ FR_ACT_NOP = 0x3 -+ FR_ACT_RES3 = 0x4 -+ FR_ACT_RES4 = 0x5 -+ FR_ACT_BLACKHOLE = 0x6 -+ FR_ACT_UNREACHABLE = 0x7 -+ FR_ACT_PROHIBIT = 0x8 -+) -+ -+const ( -+ AUDIT_NLGRP_NONE = 0x0 -+ AUDIT_NLGRP_READLOG = 0x1 -+) -diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_386.go b/vendor/golang.org/x/sys/unix/ztypes_linux_386.go -index 761b67c..2636044 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_linux_386.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_386.go -@@ -1,6 +1,7 @@ --// cgo -godefs -- -Wall -Werror -static -I/tmp/include -m32 linux/types.go | go run mkpost.go -+// cgo -godefs -objdir=/tmp/386/cgo -- -Wall -Werror -static -I/tmp/386/include -m32 linux/types.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build 386 && linux - // +build 386,linux - - package unix -@@ -117,11 +118,27 @@ type Flock_t struct { - Pid int32 - } - -+type DmNameList struct { -+ Dev uint64 -+ Next uint32 -+} -+ - const ( - FADV_DONTNEED = 0x4 - FADV_NOREUSE = 0x5 - ) - -+type RawSockaddrNFCLLCP struct { -+ Sa_family uint16 -+ Dev_idx uint32 -+ Target_idx uint32 -+ Nfc_protocol uint32 -+ Dsap uint8 -+ Ssap uint8 -+ Service_name [63]uint8 -+ Service_name_len uint32 -+} -+ - type RawSockaddr struct { - Family uint16 - Data [14]int8 -@@ -153,10 +170,16 @@ type Cmsghdr struct { - Type int32 - } - -+type ifreq struct { -+ Ifrn [16]byte -+ Ifru [16]byte -+} -+ - const ( -- SizeofIovec = 0x8 -- SizeofMsghdr = 0x1c -- SizeofCmsghdr = 0xc -+ SizeofSockaddrNFCLLCP = 0x58 -+ SizeofIovec = 0x8 -+ SizeofMsghdr = 0x1c -+ SizeofCmsghdr = 0xc - ) - - const ( -@@ -217,6 +240,10 @@ type EpollEvent struct { - Pad int32 - } - -+const ( -+ OPEN_TREE_CLOEXEC = 0x80000 -+) -+ - const ( - POLLRDHUP = 0x2000 - ) -@@ -227,6 +254,13 @@ type Sigset_t struct { - - const _C__NSIG = 0x41 - -+type Siginfo struct { -+ Signo int32 -+ Errno int32 -+ Code int32 -+ _ [116]byte -+} -+ - type Termios struct { - Iflag uint32 - Oflag uint32 -@@ -288,6 +322,15 @@ type Taskstats struct { - Thrashing_count uint64 - Thrashing_delay_total uint64 - Ac_btime64 uint64 -+ Compact_count uint64 -+ Compact_delay_total uint64 -+ Ac_tgid uint32 -+ _ [4]byte -+ Ac_tgetime uint64 -+ Ac_exe_dev uint64 -+ Ac_exe_inode uint64 -+ Wpcopy_count uint64 -+ Wpcopy_delay_total uint64 - } - - type cpuMask uint32 -@@ -597,3 +640,51 @@ type TIPCSIOCNodeIDReq struct { - Peer uint32 - Id [16]int8 - } -+ -+type PPSKInfo struct { -+ Assert_sequence uint32 -+ Clear_sequence uint32 -+ Assert_tu PPSKTime -+ Clear_tu PPSKTime -+ Current_mode int32 -+} -+ -+const ( -+ PPS_GETPARAMS = 0x800470a1 -+ PPS_SETPARAMS = 0x400470a2 -+ PPS_GETCAP = 0x800470a3 -+ PPS_FETCH = 0xc00470a4 -+) -+ -+const ( -+ PIDFD_NONBLOCK = 0x800 -+) -+ -+type SysvIpcPerm struct { -+ Key int32 -+ Uid uint32 -+ Gid uint32 -+ Cuid uint32 -+ Cgid uint32 -+ Mode uint16 -+ _ [2]uint8 -+ Seq uint16 -+ _ uint16 -+ _ uint32 -+ _ uint32 -+} -+type SysvShmDesc struct { -+ Perm SysvIpcPerm -+ Segsz uint32 -+ Atime uint32 -+ Atime_high uint32 -+ Dtime uint32 -+ Dtime_high uint32 -+ Ctime uint32 -+ Ctime_high uint32 -+ Cpid int32 -+ Lpid int32 -+ Nattch uint32 -+ _ uint32 -+ _ uint32 -+} -diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go -index 201fb34..8187489 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_amd64.go -@@ -1,6 +1,7 @@ --// cgo -godefs -- -Wall -Werror -static -I/tmp/include -m64 linux/types.go | go run mkpost.go -+// cgo -godefs -objdir=/tmp/amd64/cgo -- -Wall -Werror -static -I/tmp/amd64/include -m64 linux/types.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build amd64 && linux - // +build amd64,linux - - package unix -@@ -117,11 +118,29 @@ type Flock_t struct { - _ [4]byte - } - -+type DmNameList struct { -+ Dev uint64 -+ Next uint32 -+ Name [0]byte -+ _ [4]byte -+} -+ - const ( - FADV_DONTNEED = 0x4 - FADV_NOREUSE = 0x5 - ) - -+type RawSockaddrNFCLLCP struct { -+ Sa_family uint16 -+ Dev_idx uint32 -+ Target_idx uint32 -+ Nfc_protocol uint32 -+ Dsap uint8 -+ Ssap uint8 -+ Service_name [63]uint8 -+ Service_name_len uint64 -+} -+ - type RawSockaddr struct { - Family uint16 - Data [14]int8 -@@ -154,10 +173,16 @@ type Cmsghdr struct { - Type int32 - } - -+type ifreq struct { -+ Ifrn [16]byte -+ Ifru [24]byte -+} -+ - const ( -- SizeofIovec = 0x10 -- SizeofMsghdr = 0x38 -- SizeofCmsghdr = 0x10 -+ SizeofSockaddrNFCLLCP = 0x60 -+ SizeofIovec = 0x10 -+ SizeofMsghdr = 0x38 -+ SizeofCmsghdr = 0x10 - ) - - const ( -@@ -230,6 +255,10 @@ type EpollEvent struct { - Pad int32 - } - -+const ( -+ OPEN_TREE_CLOEXEC = 0x80000 -+) -+ - const ( - POLLRDHUP = 0x2000 - ) -@@ -240,6 +269,14 @@ type Sigset_t struct { - - const _C__NSIG = 0x41 - -+type Siginfo struct { -+ Signo int32 -+ Errno int32 -+ Code int32 -+ _ int32 -+ _ [112]byte -+} -+ - type Termios struct { - Iflag uint32 - Oflag uint32 -@@ -299,6 +336,14 @@ type Taskstats struct { - Thrashing_count uint64 - Thrashing_delay_total uint64 - Ac_btime64 uint64 -+ Compact_count uint64 -+ Compact_delay_total uint64 -+ Ac_tgid uint32 -+ Ac_tgetime uint64 -+ Ac_exe_dev uint64 -+ Ac_exe_inode uint64 -+ Wpcopy_count uint64 -+ Wpcopy_delay_total uint64 - } - - type cpuMask uint64 -@@ -612,3 +657,49 @@ type TIPCSIOCNodeIDReq struct { - Peer uint32 - Id [16]int8 - } -+ -+type PPSKInfo struct { -+ Assert_sequence uint32 -+ Clear_sequence uint32 -+ Assert_tu PPSKTime -+ Clear_tu PPSKTime -+ Current_mode int32 -+ _ [4]byte -+} -+ -+const ( -+ PPS_GETPARAMS = 0x800870a1 -+ PPS_SETPARAMS = 0x400870a2 -+ PPS_GETCAP = 0x800870a3 -+ PPS_FETCH = 0xc00870a4 -+) -+ -+const ( -+ PIDFD_NONBLOCK = 0x800 -+) -+ -+type SysvIpcPerm struct { -+ Key int32 -+ Uid uint32 -+ Gid uint32 -+ Cuid uint32 -+ Cgid uint32 -+ Mode uint32 -+ _ [0]uint8 -+ Seq uint16 -+ _ uint16 -+ _ uint64 -+ _ uint64 -+} -+type SysvShmDesc struct { -+ Perm SysvIpcPerm -+ Segsz uint64 -+ Atime int64 -+ Dtime int64 -+ Ctime int64 -+ Cpid int32 -+ Lpid int32 -+ Nattch uint64 -+ _ uint64 -+ _ uint64 -+} -diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_arm.go b/vendor/golang.org/x/sys/unix/ztypes_linux_arm.go -index 8051b56..d161233 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_linux_arm.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_arm.go -@@ -1,6 +1,7 @@ --// cgo -godefs -- -Wall -Werror -static -I/tmp/include linux/types.go | go run mkpost.go -+// cgo -godefs -objdir=/tmp/arm/cgo -- -Wall -Werror -static -I/tmp/arm/include linux/types.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build arm && linux - // +build arm,linux - - package unix -@@ -121,11 +122,29 @@ type Flock_t struct { - _ [4]byte - } - -+type DmNameList struct { -+ Dev uint64 -+ Next uint32 -+ Name [0]byte -+ _ [4]byte -+} -+ - const ( - FADV_DONTNEED = 0x4 - FADV_NOREUSE = 0x5 - ) - -+type RawSockaddrNFCLLCP struct { -+ Sa_family uint16 -+ Dev_idx uint32 -+ Target_idx uint32 -+ Nfc_protocol uint32 -+ Dsap uint8 -+ Ssap uint8 -+ Service_name [63]uint8 -+ Service_name_len uint32 -+} -+ - type RawSockaddr struct { - Family uint16 - Data [14]uint8 -@@ -157,10 +176,16 @@ type Cmsghdr struct { - Type int32 - } - -+type ifreq struct { -+ Ifrn [16]byte -+ Ifru [16]byte -+} -+ - const ( -- SizeofIovec = 0x8 -- SizeofMsghdr = 0x1c -- SizeofCmsghdr = 0xc -+ SizeofSockaddrNFCLLCP = 0x58 -+ SizeofIovec = 0x8 -+ SizeofMsghdr = 0x1c -+ SizeofCmsghdr = 0xc - ) - - const ( -@@ -206,6 +231,10 @@ type EpollEvent struct { - Pad int32 - } - -+const ( -+ OPEN_TREE_CLOEXEC = 0x80000 -+) -+ - const ( - POLLRDHUP = 0x2000 - ) -@@ -216,6 +245,13 @@ type Sigset_t struct { - - const _C__NSIG = 0x41 - -+type Siginfo struct { -+ Signo int32 -+ Errno int32 -+ Code int32 -+ _ [116]byte -+} -+ - type Termios struct { - Iflag uint32 - Oflag uint32 -@@ -277,6 +313,15 @@ type Taskstats struct { - Thrashing_count uint64 - Thrashing_delay_total uint64 - Ac_btime64 uint64 -+ Compact_count uint64 -+ Compact_delay_total uint64 -+ Ac_tgid uint32 -+ _ [4]byte -+ Ac_tgetime uint64 -+ Ac_exe_dev uint64 -+ Ac_exe_inode uint64 -+ Wpcopy_count uint64 -+ Wpcopy_delay_total uint64 - } - - type cpuMask uint32 -@@ -589,3 +634,52 @@ type TIPCSIOCNodeIDReq struct { - Peer uint32 - Id [16]uint8 - } -+ -+type PPSKInfo struct { -+ Assert_sequence uint32 -+ Clear_sequence uint32 -+ Assert_tu PPSKTime -+ Clear_tu PPSKTime -+ Current_mode int32 -+ _ [4]byte -+} -+ -+const ( -+ PPS_GETPARAMS = 0x800470a1 -+ PPS_SETPARAMS = 0x400470a2 -+ PPS_GETCAP = 0x800470a3 -+ PPS_FETCH = 0xc00470a4 -+) -+ -+const ( -+ PIDFD_NONBLOCK = 0x800 -+) -+ -+type SysvIpcPerm struct { -+ Key int32 -+ Uid uint32 -+ Gid uint32 -+ Cuid uint32 -+ Cgid uint32 -+ Mode uint16 -+ _ [2]uint8 -+ Seq uint16 -+ _ uint16 -+ _ uint32 -+ _ uint32 -+} -+type SysvShmDesc struct { -+ Perm SysvIpcPerm -+ Segsz uint32 -+ Atime uint32 -+ Atime_high uint32 -+ Dtime uint32 -+ Dtime_high uint32 -+ Ctime uint32 -+ Ctime_high uint32 -+ Cpid int32 -+ Lpid int32 -+ Nattch uint32 -+ _ uint32 -+ _ uint32 -+} -diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go -index a936f21..c28e555 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_arm64.go -@@ -1,6 +1,7 @@ --// cgo -godefs -- -Wall -Werror -static -I/tmp/include -fsigned-char linux/types.go | go run mkpost.go -+// cgo -godefs -objdir=/tmp/arm64/cgo -- -Wall -Werror -static -I/tmp/arm64/include -fsigned-char linux/types.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build arm64 && linux - // +build arm64,linux - - package unix -@@ -118,11 +119,29 @@ type Flock_t struct { - _ [4]byte - } - -+type DmNameList struct { -+ Dev uint64 -+ Next uint32 -+ Name [0]byte -+ _ [4]byte -+} -+ - const ( - FADV_DONTNEED = 0x4 - FADV_NOREUSE = 0x5 - ) - -+type RawSockaddrNFCLLCP struct { -+ Sa_family uint16 -+ Dev_idx uint32 -+ Target_idx uint32 -+ Nfc_protocol uint32 -+ Dsap uint8 -+ Ssap uint8 -+ Service_name [63]uint8 -+ Service_name_len uint64 -+} -+ - type RawSockaddr struct { - Family uint16 - Data [14]int8 -@@ -155,10 +174,16 @@ type Cmsghdr struct { - Type int32 - } - -+type ifreq struct { -+ Ifrn [16]byte -+ Ifru [24]byte -+} -+ - const ( -- SizeofIovec = 0x10 -- SizeofMsghdr = 0x38 -- SizeofCmsghdr = 0x10 -+ SizeofSockaddrNFCLLCP = 0x60 -+ SizeofIovec = 0x10 -+ SizeofMsghdr = 0x38 -+ SizeofCmsghdr = 0x10 - ) - - const ( -@@ -209,6 +234,10 @@ type EpollEvent struct { - Pad int32 - } - -+const ( -+ OPEN_TREE_CLOEXEC = 0x80000 -+) -+ - const ( - POLLRDHUP = 0x2000 - ) -@@ -219,6 +248,14 @@ type Sigset_t struct { - - const _C__NSIG = 0x41 - -+type Siginfo struct { -+ Signo int32 -+ Errno int32 -+ Code int32 -+ _ int32 -+ _ [112]byte -+} -+ - type Termios struct { - Iflag uint32 - Oflag uint32 -@@ -278,6 +315,14 @@ type Taskstats struct { - Thrashing_count uint64 - Thrashing_delay_total uint64 - Ac_btime64 uint64 -+ Compact_count uint64 -+ Compact_delay_total uint64 -+ Ac_tgid uint32 -+ Ac_tgetime uint64 -+ Ac_exe_dev uint64 -+ Ac_exe_inode uint64 -+ Wpcopy_count uint64 -+ Wpcopy_delay_total uint64 - } - - type cpuMask uint64 -@@ -591,3 +636,49 @@ type TIPCSIOCNodeIDReq struct { - Peer uint32 - Id [16]int8 - } -+ -+type PPSKInfo struct { -+ Assert_sequence uint32 -+ Clear_sequence uint32 -+ Assert_tu PPSKTime -+ Clear_tu PPSKTime -+ Current_mode int32 -+ _ [4]byte -+} -+ -+const ( -+ PPS_GETPARAMS = 0x800870a1 -+ PPS_SETPARAMS = 0x400870a2 -+ PPS_GETCAP = 0x800870a3 -+ PPS_FETCH = 0xc00870a4 -+) -+ -+const ( -+ PIDFD_NONBLOCK = 0x800 -+) -+ -+type SysvIpcPerm struct { -+ Key int32 -+ Uid uint32 -+ Gid uint32 -+ Cuid uint32 -+ Cgid uint32 -+ Mode uint32 -+ _ [0]uint8 -+ Seq uint16 -+ _ uint16 -+ _ uint64 -+ _ uint64 -+} -+type SysvShmDesc struct { -+ Perm SysvIpcPerm -+ Segsz uint64 -+ Atime int64 -+ Dtime int64 -+ Ctime int64 -+ Cpid int32 -+ Lpid int32 -+ Nattch uint64 -+ _ uint64 -+ _ uint64 -+} -diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_loong64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_loong64.go -new file mode 100644 -index 0000000..187061f ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_loong64.go -@@ -0,0 +1,685 @@ -+// cgo -godefs -objdir=/tmp/loong64/cgo -- -Wall -Werror -static -I/tmp/loong64/include linux/types.go | go run mkpost.go -+// Code generated by the command above; see README.md. DO NOT EDIT. -+ -+//go:build loong64 && linux -+// +build loong64,linux -+ -+package unix -+ -+const ( -+ SizeofPtr = 0x8 -+ SizeofLong = 0x8 -+) -+ -+type ( -+ _C_long int64 -+) -+ -+type Timespec struct { -+ Sec int64 -+ Nsec int64 -+} -+ -+type Timeval struct { -+ Sec int64 -+ Usec int64 -+} -+ -+type Timex struct { -+ Modes uint32 -+ Offset int64 -+ Freq int64 -+ Maxerror int64 -+ Esterror int64 -+ Status int32 -+ Constant int64 -+ Precision int64 -+ Tolerance int64 -+ Time Timeval -+ Tick int64 -+ Ppsfreq int64 -+ Jitter int64 -+ Shift int32 -+ Stabil int64 -+ Jitcnt int64 -+ Calcnt int64 -+ Errcnt int64 -+ Stbcnt int64 -+ Tai int32 -+ _ [44]byte -+} -+ -+type Time_t int64 -+ -+type Tms struct { -+ Utime int64 -+ Stime int64 -+ Cutime int64 -+ Cstime int64 -+} -+ -+type Utimbuf struct { -+ Actime int64 -+ Modtime int64 -+} -+ -+type Rusage struct { -+ Utime Timeval -+ Stime Timeval -+ Maxrss int64 -+ Ixrss int64 -+ Idrss int64 -+ Isrss int64 -+ Minflt int64 -+ Majflt int64 -+ Nswap int64 -+ Inblock int64 -+ Oublock int64 -+ Msgsnd int64 -+ Msgrcv int64 -+ Nsignals int64 -+ Nvcsw int64 -+ Nivcsw int64 -+} -+ -+type Stat_t struct { -+ Dev uint64 -+ Ino uint64 -+ Mode uint32 -+ Nlink uint32 -+ Uid uint32 -+ Gid uint32 -+ Rdev uint64 -+ _ uint64 -+ Size int64 -+ Blksize int32 -+ _ int32 -+ Blocks int64 -+ Atim Timespec -+ Mtim Timespec -+ Ctim Timespec -+ _ [2]int32 -+} -+ -+type Dirent struct { -+ Ino uint64 -+ Off int64 -+ Reclen uint16 -+ Type uint8 -+ Name [256]int8 -+ _ [5]byte -+} -+ -+type Flock_t struct { -+ Type int16 -+ Whence int16 -+ Start int64 -+ Len int64 -+ Pid int32 -+ _ [4]byte -+} -+ -+type DmNameList struct { -+ Dev uint64 -+ Next uint32 -+ Name [0]byte -+ _ [4]byte -+} -+ -+const ( -+ FADV_DONTNEED = 0x4 -+ FADV_NOREUSE = 0x5 -+) -+ -+type RawSockaddrNFCLLCP struct { -+ Sa_family uint16 -+ Dev_idx uint32 -+ Target_idx uint32 -+ Nfc_protocol uint32 -+ Dsap uint8 -+ Ssap uint8 -+ Service_name [63]uint8 -+ Service_name_len uint64 -+} -+ -+type RawSockaddr struct { -+ Family uint16 -+ Data [14]int8 -+} -+ -+type RawSockaddrAny struct { -+ Addr RawSockaddr -+ Pad [96]int8 -+} -+ -+type Iovec struct { -+ Base *byte -+ Len uint64 -+} -+ -+type Msghdr struct { -+ Name *byte -+ Namelen uint32 -+ Iov *Iovec -+ Iovlen uint64 -+ Control *byte -+ Controllen uint64 -+ Flags int32 -+ _ [4]byte -+} -+ -+type Cmsghdr struct { -+ Len uint64 -+ Level int32 -+ Type int32 -+} -+ -+type ifreq struct { -+ Ifrn [16]byte -+ Ifru [24]byte -+} -+ -+const ( -+ SizeofSockaddrNFCLLCP = 0x60 -+ SizeofIovec = 0x10 -+ SizeofMsghdr = 0x38 -+ SizeofCmsghdr = 0x10 -+) -+ -+const ( -+ SizeofSockFprog = 0x10 -+) -+ -+type PtraceRegs struct { -+ Regs [32]uint64 -+ Orig_a0 uint64 -+ Era uint64 -+ Badv uint64 -+ Reserved [10]uint64 -+} -+ -+type FdSet struct { -+ Bits [16]int64 -+} -+ -+type Sysinfo_t struct { -+ Uptime int64 -+ Loads [3]uint64 -+ Totalram uint64 -+ Freeram uint64 -+ Sharedram uint64 -+ Bufferram uint64 -+ Totalswap uint64 -+ Freeswap uint64 -+ Procs uint16 -+ Pad uint16 -+ Totalhigh uint64 -+ Freehigh uint64 -+ Unit uint32 -+ _ [0]int8 -+ _ [4]byte -+} -+ -+type Ustat_t struct { -+ Tfree int32 -+ Tinode uint64 -+ Fname [6]int8 -+ Fpack [6]int8 -+ _ [4]byte -+} -+ -+type EpollEvent struct { -+ Events uint32 -+ _ int32 -+ Fd int32 -+ Pad int32 -+} -+ -+const ( -+ OPEN_TREE_CLOEXEC = 0x80000 -+) -+ -+const ( -+ POLLRDHUP = 0x2000 -+) -+ -+type Sigset_t struct { -+ Val [16]uint64 -+} -+ -+const _C__NSIG = 0x41 -+ -+type Siginfo struct { -+ Signo int32 -+ Errno int32 -+ Code int32 -+ _ int32 -+ _ [112]byte -+} -+ -+type Termios struct { -+ Iflag uint32 -+ Oflag uint32 -+ Cflag uint32 -+ Lflag uint32 -+ Line uint8 -+ Cc [19]uint8 -+ Ispeed uint32 -+ Ospeed uint32 -+} -+ -+type Taskstats struct { -+ Version uint16 -+ Ac_exitcode uint32 -+ Ac_flag uint8 -+ Ac_nice uint8 -+ Cpu_count uint64 -+ Cpu_delay_total uint64 -+ Blkio_count uint64 -+ Blkio_delay_total uint64 -+ Swapin_count uint64 -+ Swapin_delay_total uint64 -+ Cpu_run_real_total uint64 -+ Cpu_run_virtual_total uint64 -+ Ac_comm [32]int8 -+ Ac_sched uint8 -+ Ac_pad [3]uint8 -+ _ [4]byte -+ Ac_uid uint32 -+ Ac_gid uint32 -+ Ac_pid uint32 -+ Ac_ppid uint32 -+ Ac_btime uint32 -+ Ac_etime uint64 -+ Ac_utime uint64 -+ Ac_stime uint64 -+ Ac_minflt uint64 -+ Ac_majflt uint64 -+ Coremem uint64 -+ Virtmem uint64 -+ Hiwater_rss uint64 -+ Hiwater_vm uint64 -+ Read_char uint64 -+ Write_char uint64 -+ Read_syscalls uint64 -+ Write_syscalls uint64 -+ Read_bytes uint64 -+ Write_bytes uint64 -+ Cancelled_write_bytes uint64 -+ Nvcsw uint64 -+ Nivcsw uint64 -+ Ac_utimescaled uint64 -+ Ac_stimescaled uint64 -+ Cpu_scaled_run_real_total uint64 -+ Freepages_count uint64 -+ Freepages_delay_total uint64 -+ Thrashing_count uint64 -+ Thrashing_delay_total uint64 -+ Ac_btime64 uint64 -+ Compact_count uint64 -+ Compact_delay_total uint64 -+ Ac_tgid uint32 -+ Ac_tgetime uint64 -+ Ac_exe_dev uint64 -+ Ac_exe_inode uint64 -+ Wpcopy_count uint64 -+ Wpcopy_delay_total uint64 -+} -+ -+type cpuMask uint64 -+ -+const ( -+ _NCPUBITS = 0x40 -+) -+ -+const ( -+ CBitFieldMaskBit0 = 0x1 -+ CBitFieldMaskBit1 = 0x2 -+ CBitFieldMaskBit2 = 0x4 -+ CBitFieldMaskBit3 = 0x8 -+ CBitFieldMaskBit4 = 0x10 -+ CBitFieldMaskBit5 = 0x20 -+ CBitFieldMaskBit6 = 0x40 -+ CBitFieldMaskBit7 = 0x80 -+ CBitFieldMaskBit8 = 0x100 -+ CBitFieldMaskBit9 = 0x200 -+ CBitFieldMaskBit10 = 0x400 -+ CBitFieldMaskBit11 = 0x800 -+ CBitFieldMaskBit12 = 0x1000 -+ CBitFieldMaskBit13 = 0x2000 -+ CBitFieldMaskBit14 = 0x4000 -+ CBitFieldMaskBit15 = 0x8000 -+ CBitFieldMaskBit16 = 0x10000 -+ CBitFieldMaskBit17 = 0x20000 -+ CBitFieldMaskBit18 = 0x40000 -+ CBitFieldMaskBit19 = 0x80000 -+ CBitFieldMaskBit20 = 0x100000 -+ CBitFieldMaskBit21 = 0x200000 -+ CBitFieldMaskBit22 = 0x400000 -+ CBitFieldMaskBit23 = 0x800000 -+ CBitFieldMaskBit24 = 0x1000000 -+ CBitFieldMaskBit25 = 0x2000000 -+ CBitFieldMaskBit26 = 0x4000000 -+ CBitFieldMaskBit27 = 0x8000000 -+ CBitFieldMaskBit28 = 0x10000000 -+ CBitFieldMaskBit29 = 0x20000000 -+ CBitFieldMaskBit30 = 0x40000000 -+ CBitFieldMaskBit31 = 0x80000000 -+ CBitFieldMaskBit32 = 0x100000000 -+ CBitFieldMaskBit33 = 0x200000000 -+ CBitFieldMaskBit34 = 0x400000000 -+ CBitFieldMaskBit35 = 0x800000000 -+ CBitFieldMaskBit36 = 0x1000000000 -+ CBitFieldMaskBit37 = 0x2000000000 -+ CBitFieldMaskBit38 = 0x4000000000 -+ CBitFieldMaskBit39 = 0x8000000000 -+ CBitFieldMaskBit40 = 0x10000000000 -+ CBitFieldMaskBit41 = 0x20000000000 -+ CBitFieldMaskBit42 = 0x40000000000 -+ CBitFieldMaskBit43 = 0x80000000000 -+ CBitFieldMaskBit44 = 0x100000000000 -+ CBitFieldMaskBit45 = 0x200000000000 -+ CBitFieldMaskBit46 = 0x400000000000 -+ CBitFieldMaskBit47 = 0x800000000000 -+ CBitFieldMaskBit48 = 0x1000000000000 -+ CBitFieldMaskBit49 = 0x2000000000000 -+ CBitFieldMaskBit50 = 0x4000000000000 -+ CBitFieldMaskBit51 = 0x8000000000000 -+ CBitFieldMaskBit52 = 0x10000000000000 -+ CBitFieldMaskBit53 = 0x20000000000000 -+ CBitFieldMaskBit54 = 0x40000000000000 -+ CBitFieldMaskBit55 = 0x80000000000000 -+ CBitFieldMaskBit56 = 0x100000000000000 -+ CBitFieldMaskBit57 = 0x200000000000000 -+ CBitFieldMaskBit58 = 0x400000000000000 -+ CBitFieldMaskBit59 = 0x800000000000000 -+ CBitFieldMaskBit60 = 0x1000000000000000 -+ CBitFieldMaskBit61 = 0x2000000000000000 -+ CBitFieldMaskBit62 = 0x4000000000000000 -+ CBitFieldMaskBit63 = 0x8000000000000000 -+) -+ -+type SockaddrStorage struct { -+ Family uint16 -+ _ [118]int8 -+ _ uint64 -+} -+ -+type HDGeometry struct { -+ Heads uint8 -+ Sectors uint8 -+ Cylinders uint16 -+ Start uint64 -+} -+ -+type Statfs_t struct { -+ Type int64 -+ Bsize int64 -+ Blocks uint64 -+ Bfree uint64 -+ Bavail uint64 -+ Files uint64 -+ Ffree uint64 -+ Fsid Fsid -+ Namelen int64 -+ Frsize int64 -+ Flags int64 -+ Spare [4]int64 -+} -+ -+type TpacketHdr struct { -+ Status uint64 -+ Len uint32 -+ Snaplen uint32 -+ Mac uint16 -+ Net uint16 -+ Sec uint32 -+ Usec uint32 -+ _ [4]byte -+} -+ -+const ( -+ SizeofTpacketHdr = 0x20 -+) -+ -+type RTCPLLInfo struct { -+ Ctrl int32 -+ Value int32 -+ Max int32 -+ Min int32 -+ Posmult int32 -+ Negmult int32 -+ Clock int64 -+} -+ -+type BlkpgPartition struct { -+ Start int64 -+ Length int64 -+ Pno int32 -+ Devname [64]uint8 -+ Volname [64]uint8 -+ _ [4]byte -+} -+ -+const ( -+ BLKPG = 0x1269 -+) -+ -+type XDPUmemReg struct { -+ Addr uint64 -+ Len uint64 -+ Size uint32 -+ Headroom uint32 -+ Flags uint32 -+ _ [4]byte -+} -+ -+type CryptoUserAlg struct { -+ Name [64]int8 -+ Driver_name [64]int8 -+ Module_name [64]int8 -+ Type uint32 -+ Mask uint32 -+ Refcnt uint32 -+ Flags uint32 -+} -+ -+type CryptoStatAEAD struct { -+ Type [64]int8 -+ Encrypt_cnt uint64 -+ Encrypt_tlen uint64 -+ Decrypt_cnt uint64 -+ Decrypt_tlen uint64 -+ Err_cnt uint64 -+} -+ -+type CryptoStatAKCipher struct { -+ Type [64]int8 -+ Encrypt_cnt uint64 -+ Encrypt_tlen uint64 -+ Decrypt_cnt uint64 -+ Decrypt_tlen uint64 -+ Verify_cnt uint64 -+ Sign_cnt uint64 -+ Err_cnt uint64 -+} -+ -+type CryptoStatCipher struct { -+ Type [64]int8 -+ Encrypt_cnt uint64 -+ Encrypt_tlen uint64 -+ Decrypt_cnt uint64 -+ Decrypt_tlen uint64 -+ Err_cnt uint64 -+} -+ -+type CryptoStatCompress struct { -+ Type [64]int8 -+ Compress_cnt uint64 -+ Compress_tlen uint64 -+ Decompress_cnt uint64 -+ Decompress_tlen uint64 -+ Err_cnt uint64 -+} -+ -+type CryptoStatHash struct { -+ Type [64]int8 -+ Hash_cnt uint64 -+ Hash_tlen uint64 -+ Err_cnt uint64 -+} -+ -+type CryptoStatKPP struct { -+ Type [64]int8 -+ Setsecret_cnt uint64 -+ Generate_public_key_cnt uint64 -+ Compute_shared_secret_cnt uint64 -+ Err_cnt uint64 -+} -+ -+type CryptoStatRNG struct { -+ Type [64]int8 -+ Generate_cnt uint64 -+ Generate_tlen uint64 -+ Seed_cnt uint64 -+ Err_cnt uint64 -+} -+ -+type CryptoStatLarval struct { -+ Type [64]int8 -+} -+ -+type CryptoReportLarval struct { -+ Type [64]int8 -+} -+ -+type CryptoReportHash struct { -+ Type [64]int8 -+ Blocksize uint32 -+ Digestsize uint32 -+} -+ -+type CryptoReportCipher struct { -+ Type [64]int8 -+ Blocksize uint32 -+ Min_keysize uint32 -+ Max_keysize uint32 -+} -+ -+type CryptoReportBlkCipher struct { -+ Type [64]int8 -+ Geniv [64]int8 -+ Blocksize uint32 -+ Min_keysize uint32 -+ Max_keysize uint32 -+ Ivsize uint32 -+} -+ -+type CryptoReportAEAD struct { -+ Type [64]int8 -+ Geniv [64]int8 -+ Blocksize uint32 -+ Maxauthsize uint32 -+ Ivsize uint32 -+} -+ -+type CryptoReportComp struct { -+ Type [64]int8 -+} -+ -+type CryptoReportRNG struct { -+ Type [64]int8 -+ Seedsize uint32 -+} -+ -+type CryptoReportAKCipher struct { -+ Type [64]int8 -+} -+ -+type CryptoReportKPP struct { -+ Type [64]int8 -+} -+ -+type CryptoReportAcomp struct { -+ Type [64]int8 -+} -+ -+type LoopInfo struct { -+ Number int32 -+ Device uint32 -+ Inode uint64 -+ Rdevice uint32 -+ Offset int32 -+ Encrypt_type int32 -+ Encrypt_key_size int32 -+ Flags int32 -+ Name [64]int8 -+ Encrypt_key [32]uint8 -+ Init [2]uint64 -+ Reserved [4]int8 -+ _ [4]byte -+} -+ -+type TIPCSubscr struct { -+ Seq TIPCServiceRange -+ Timeout uint32 -+ Filter uint32 -+ Handle [8]int8 -+} -+ -+type TIPCSIOCLNReq struct { -+ Peer uint32 -+ Id uint32 -+ Linkname [68]int8 -+} -+ -+type TIPCSIOCNodeIDReq struct { -+ Peer uint32 -+ Id [16]int8 -+} -+ -+type PPSKInfo struct { -+ Assert_sequence uint32 -+ Clear_sequence uint32 -+ Assert_tu PPSKTime -+ Clear_tu PPSKTime -+ Current_mode int32 -+ _ [4]byte -+} -+ -+const ( -+ PPS_GETPARAMS = 0x800870a1 -+ PPS_SETPARAMS = 0x400870a2 -+ PPS_GETCAP = 0x800870a3 -+ PPS_FETCH = 0xc00870a4 -+) -+ -+const ( -+ PIDFD_NONBLOCK = 0x800 -+) -+ -+type SysvIpcPerm struct { -+ Key int32 -+ Uid uint32 -+ Gid uint32 -+ Cuid uint32 -+ Cgid uint32 -+ Mode uint32 -+ _ [0]uint8 -+ Seq uint16 -+ _ uint16 -+ _ uint64 -+ _ uint64 -+} -+type SysvShmDesc struct { -+ Perm SysvIpcPerm -+ Segsz uint64 -+ Atime int64 -+ Dtime int64 -+ Ctime int64 -+ Cpid int32 -+ Lpid int32 -+ Nattch uint64 -+ _ uint64 -+ _ uint64 -+} -diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_mips.go b/vendor/golang.org/x/sys/unix/ztypes_linux_mips.go -index aaca03d..3691299 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_linux_mips.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_mips.go -@@ -1,6 +1,7 @@ --// cgo -godefs -- -Wall -Werror -static -I/tmp/include linux/types.go | go run mkpost.go -+// cgo -godefs -objdir=/tmp/mips/cgo -- -Wall -Werror -static -I/tmp/mips/include linux/types.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build mips && linux - // +build mips,linux - - package unix -@@ -120,11 +121,29 @@ type Flock_t struct { - _ [4]byte - } - -+type DmNameList struct { -+ Dev uint64 -+ Next uint32 -+ Name [0]byte -+ _ [4]byte -+} -+ - const ( - FADV_DONTNEED = 0x4 - FADV_NOREUSE = 0x5 - ) - -+type RawSockaddrNFCLLCP struct { -+ Sa_family uint16 -+ Dev_idx uint32 -+ Target_idx uint32 -+ Nfc_protocol uint32 -+ Dsap uint8 -+ Ssap uint8 -+ Service_name [63]uint8 -+ Service_name_len uint32 -+} -+ - type RawSockaddr struct { - Family uint16 - Data [14]int8 -@@ -156,10 +175,16 @@ type Cmsghdr struct { - Type int32 - } - -+type ifreq struct { -+ Ifrn [16]byte -+ Ifru [16]byte -+} -+ - const ( -- SizeofIovec = 0x8 -- SizeofMsghdr = 0x1c -- SizeofCmsghdr = 0xc -+ SizeofSockaddrNFCLLCP = 0x58 -+ SizeofIovec = 0x8 -+ SizeofMsghdr = 0x1c -+ SizeofCmsghdr = 0xc - ) - - const ( -@@ -211,6 +236,10 @@ type EpollEvent struct { - Pad int32 - } - -+const ( -+ OPEN_TREE_CLOEXEC = 0x80000 -+) -+ - const ( - POLLRDHUP = 0x2000 - ) -@@ -221,6 +250,13 @@ type Sigset_t struct { - - const _C__NSIG = 0x80 - -+type Siginfo struct { -+ Signo int32 -+ Code int32 -+ Errno int32 -+ _ [116]byte -+} -+ - type Termios struct { - Iflag uint32 - Oflag uint32 -@@ -282,6 +318,15 @@ type Taskstats struct { - Thrashing_count uint64 - Thrashing_delay_total uint64 - Ac_btime64 uint64 -+ Compact_count uint64 -+ Compact_delay_total uint64 -+ Ac_tgid uint32 -+ _ [4]byte -+ Ac_tgetime uint64 -+ Ac_exe_dev uint64 -+ Ac_exe_inode uint64 -+ Wpcopy_count uint64 -+ Wpcopy_delay_total uint64 - } - - type cpuMask uint32 -@@ -595,3 +640,51 @@ type TIPCSIOCNodeIDReq struct { - Peer uint32 - Id [16]int8 - } -+ -+type PPSKInfo struct { -+ Assert_sequence uint32 -+ Clear_sequence uint32 -+ Assert_tu PPSKTime -+ Clear_tu PPSKTime -+ Current_mode int32 -+ _ [4]byte -+} -+ -+const ( -+ PPS_GETPARAMS = 0x400470a1 -+ PPS_SETPARAMS = 0x800470a2 -+ PPS_GETCAP = 0x400470a3 -+ PPS_FETCH = 0xc00470a4 -+) -+ -+const ( -+ PIDFD_NONBLOCK = 0x80 -+) -+ -+type SysvIpcPerm struct { -+ Key int32 -+ Uid uint32 -+ Gid uint32 -+ Cuid uint32 -+ Cgid uint32 -+ Mode uint32 -+ _ [0]uint8 -+ Seq uint16 -+ _ uint16 -+ _ uint32 -+ _ uint32 -+} -+type SysvShmDesc struct { -+ Perm SysvIpcPerm -+ Segsz uint32 -+ Atime uint32 -+ Dtime uint32 -+ Ctime uint32 -+ Cpid int32 -+ Lpid int32 -+ Nattch uint32 -+ Atime_high uint16 -+ Dtime_high uint16 -+ Ctime_high uint16 -+ _ uint16 -+} -diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go -index 2e7f3b8..7473468 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_mips64.go -@@ -1,6 +1,7 @@ --// cgo -godefs -- -Wall -Werror -static -I/tmp/include linux/types.go | go run mkpost.go -+// cgo -godefs -objdir=/tmp/mips64/cgo -- -Wall -Werror -static -I/tmp/mips64/include linux/types.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build mips64 && linux - // +build mips64,linux - - package unix -@@ -118,11 +119,29 @@ type Flock_t struct { - _ [4]byte - } - -+type DmNameList struct { -+ Dev uint64 -+ Next uint32 -+ Name [0]byte -+ _ [4]byte -+} -+ - const ( - FADV_DONTNEED = 0x4 - FADV_NOREUSE = 0x5 - ) - -+type RawSockaddrNFCLLCP struct { -+ Sa_family uint16 -+ Dev_idx uint32 -+ Target_idx uint32 -+ Nfc_protocol uint32 -+ Dsap uint8 -+ Ssap uint8 -+ Service_name [63]uint8 -+ Service_name_len uint64 -+} -+ - type RawSockaddr struct { - Family uint16 - Data [14]int8 -@@ -155,10 +174,16 @@ type Cmsghdr struct { - Type int32 - } - -+type ifreq struct { -+ Ifrn [16]byte -+ Ifru [24]byte -+} -+ - const ( -- SizeofIovec = 0x10 -- SizeofMsghdr = 0x38 -- SizeofCmsghdr = 0x10 -+ SizeofSockaddrNFCLLCP = 0x60 -+ SizeofIovec = 0x10 -+ SizeofMsghdr = 0x38 -+ SizeofCmsghdr = 0x10 - ) - - const ( -@@ -212,6 +237,10 @@ type EpollEvent struct { - Pad int32 - } - -+const ( -+ OPEN_TREE_CLOEXEC = 0x80000 -+) -+ - const ( - POLLRDHUP = 0x2000 - ) -@@ -222,6 +251,14 @@ type Sigset_t struct { - - const _C__NSIG = 0x80 - -+type Siginfo struct { -+ Signo int32 -+ Code int32 -+ Errno int32 -+ _ int32 -+ _ [112]byte -+} -+ - type Termios struct { - Iflag uint32 - Oflag uint32 -@@ -281,6 +318,14 @@ type Taskstats struct { - Thrashing_count uint64 - Thrashing_delay_total uint64 - Ac_btime64 uint64 -+ Compact_count uint64 -+ Compact_delay_total uint64 -+ Ac_tgid uint32 -+ Ac_tgetime uint64 -+ Ac_exe_dev uint64 -+ Ac_exe_inode uint64 -+ Wpcopy_count uint64 -+ Wpcopy_delay_total uint64 - } - - type cpuMask uint64 -@@ -594,3 +639,49 @@ type TIPCSIOCNodeIDReq struct { - Peer uint32 - Id [16]int8 - } -+ -+type PPSKInfo struct { -+ Assert_sequence uint32 -+ Clear_sequence uint32 -+ Assert_tu PPSKTime -+ Clear_tu PPSKTime -+ Current_mode int32 -+ _ [4]byte -+} -+ -+const ( -+ PPS_GETPARAMS = 0x400870a1 -+ PPS_SETPARAMS = 0x800870a2 -+ PPS_GETCAP = 0x400870a3 -+ PPS_FETCH = 0xc00870a4 -+) -+ -+const ( -+ PIDFD_NONBLOCK = 0x80 -+) -+ -+type SysvIpcPerm struct { -+ Key int32 -+ Uid uint32 -+ Gid uint32 -+ Cuid uint32 -+ Cgid uint32 -+ Mode uint32 -+ _ [0]uint8 -+ Seq uint16 -+ _ uint16 -+ _ uint64 -+ _ uint64 -+} -+type SysvShmDesc struct { -+ Perm SysvIpcPerm -+ Segsz uint64 -+ Atime int64 -+ Dtime int64 -+ Ctime int64 -+ Cpid int32 -+ Lpid int32 -+ Nattch uint64 -+ _ uint64 -+ _ uint64 -+} -diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go b/vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go -index 16add5a..ed94485 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go -@@ -1,6 +1,7 @@ --// cgo -godefs -- -Wall -Werror -static -I/tmp/include linux/types.go | go run mkpost.go -+// cgo -godefs -objdir=/tmp/mips64le/cgo -- -Wall -Werror -static -I/tmp/mips64le/include linux/types.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build mips64le && linux - // +build mips64le,linux - - package unix -@@ -118,11 +119,29 @@ type Flock_t struct { - _ [4]byte - } - -+type DmNameList struct { -+ Dev uint64 -+ Next uint32 -+ Name [0]byte -+ _ [4]byte -+} -+ - const ( - FADV_DONTNEED = 0x4 - FADV_NOREUSE = 0x5 - ) - -+type RawSockaddrNFCLLCP struct { -+ Sa_family uint16 -+ Dev_idx uint32 -+ Target_idx uint32 -+ Nfc_protocol uint32 -+ Dsap uint8 -+ Ssap uint8 -+ Service_name [63]uint8 -+ Service_name_len uint64 -+} -+ - type RawSockaddr struct { - Family uint16 - Data [14]int8 -@@ -155,10 +174,16 @@ type Cmsghdr struct { - Type int32 - } - -+type ifreq struct { -+ Ifrn [16]byte -+ Ifru [24]byte -+} -+ - const ( -- SizeofIovec = 0x10 -- SizeofMsghdr = 0x38 -- SizeofCmsghdr = 0x10 -+ SizeofSockaddrNFCLLCP = 0x60 -+ SizeofIovec = 0x10 -+ SizeofMsghdr = 0x38 -+ SizeofCmsghdr = 0x10 - ) - - const ( -@@ -212,6 +237,10 @@ type EpollEvent struct { - Pad int32 - } - -+const ( -+ OPEN_TREE_CLOEXEC = 0x80000 -+) -+ - const ( - POLLRDHUP = 0x2000 - ) -@@ -222,6 +251,14 @@ type Sigset_t struct { - - const _C__NSIG = 0x80 - -+type Siginfo struct { -+ Signo int32 -+ Code int32 -+ Errno int32 -+ _ int32 -+ _ [112]byte -+} -+ - type Termios struct { - Iflag uint32 - Oflag uint32 -@@ -281,6 +318,14 @@ type Taskstats struct { - Thrashing_count uint64 - Thrashing_delay_total uint64 - Ac_btime64 uint64 -+ Compact_count uint64 -+ Compact_delay_total uint64 -+ Ac_tgid uint32 -+ Ac_tgetime uint64 -+ Ac_exe_dev uint64 -+ Ac_exe_inode uint64 -+ Wpcopy_count uint64 -+ Wpcopy_delay_total uint64 - } - - type cpuMask uint64 -@@ -594,3 +639,49 @@ type TIPCSIOCNodeIDReq struct { - Peer uint32 - Id [16]int8 - } -+ -+type PPSKInfo struct { -+ Assert_sequence uint32 -+ Clear_sequence uint32 -+ Assert_tu PPSKTime -+ Clear_tu PPSKTime -+ Current_mode int32 -+ _ [4]byte -+} -+ -+const ( -+ PPS_GETPARAMS = 0x400870a1 -+ PPS_SETPARAMS = 0x800870a2 -+ PPS_GETCAP = 0x400870a3 -+ PPS_FETCH = 0xc00870a4 -+) -+ -+const ( -+ PIDFD_NONBLOCK = 0x80 -+) -+ -+type SysvIpcPerm struct { -+ Key int32 -+ Uid uint32 -+ Gid uint32 -+ Cuid uint32 -+ Cgid uint32 -+ Mode uint32 -+ _ [0]uint8 -+ Seq uint16 -+ _ uint16 -+ _ uint64 -+ _ uint64 -+} -+type SysvShmDesc struct { -+ Perm SysvIpcPerm -+ Segsz uint64 -+ Atime int64 -+ Dtime int64 -+ Ctime int64 -+ Cpid int32 -+ Lpid int32 -+ Nattch uint64 -+ _ uint64 -+ _ uint64 -+} -diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go b/vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go -index 4ed2c8e..0892a73 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go -@@ -1,6 +1,7 @@ --// cgo -godefs -- -Wall -Werror -static -I/tmp/include linux/types.go | go run mkpost.go -+// cgo -godefs -objdir=/tmp/mipsle/cgo -- -Wall -Werror -static -I/tmp/mipsle/include linux/types.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build mipsle && linux - // +build mipsle,linux - - package unix -@@ -120,11 +121,29 @@ type Flock_t struct { - _ [4]byte - } - -+type DmNameList struct { -+ Dev uint64 -+ Next uint32 -+ Name [0]byte -+ _ [4]byte -+} -+ - const ( - FADV_DONTNEED = 0x4 - FADV_NOREUSE = 0x5 - ) - -+type RawSockaddrNFCLLCP struct { -+ Sa_family uint16 -+ Dev_idx uint32 -+ Target_idx uint32 -+ Nfc_protocol uint32 -+ Dsap uint8 -+ Ssap uint8 -+ Service_name [63]uint8 -+ Service_name_len uint32 -+} -+ - type RawSockaddr struct { - Family uint16 - Data [14]int8 -@@ -156,10 +175,16 @@ type Cmsghdr struct { - Type int32 - } - -+type ifreq struct { -+ Ifrn [16]byte -+ Ifru [16]byte -+} -+ - const ( -- SizeofIovec = 0x8 -- SizeofMsghdr = 0x1c -- SizeofCmsghdr = 0xc -+ SizeofSockaddrNFCLLCP = 0x58 -+ SizeofIovec = 0x8 -+ SizeofMsghdr = 0x1c -+ SizeofCmsghdr = 0xc - ) - - const ( -@@ -211,6 +236,10 @@ type EpollEvent struct { - Pad int32 - } - -+const ( -+ OPEN_TREE_CLOEXEC = 0x80000 -+) -+ - const ( - POLLRDHUP = 0x2000 - ) -@@ -221,6 +250,13 @@ type Sigset_t struct { - - const _C__NSIG = 0x80 - -+type Siginfo struct { -+ Signo int32 -+ Code int32 -+ Errno int32 -+ _ [116]byte -+} -+ - type Termios struct { - Iflag uint32 - Oflag uint32 -@@ -282,6 +318,15 @@ type Taskstats struct { - Thrashing_count uint64 - Thrashing_delay_total uint64 - Ac_btime64 uint64 -+ Compact_count uint64 -+ Compact_delay_total uint64 -+ Ac_tgid uint32 -+ _ [4]byte -+ Ac_tgetime uint64 -+ Ac_exe_dev uint64 -+ Ac_exe_inode uint64 -+ Wpcopy_count uint64 -+ Wpcopy_delay_total uint64 - } - - type cpuMask uint32 -@@ -595,3 +640,51 @@ type TIPCSIOCNodeIDReq struct { - Peer uint32 - Id [16]int8 - } -+ -+type PPSKInfo struct { -+ Assert_sequence uint32 -+ Clear_sequence uint32 -+ Assert_tu PPSKTime -+ Clear_tu PPSKTime -+ Current_mode int32 -+ _ [4]byte -+} -+ -+const ( -+ PPS_GETPARAMS = 0x400470a1 -+ PPS_SETPARAMS = 0x800470a2 -+ PPS_GETCAP = 0x400470a3 -+ PPS_FETCH = 0xc00470a4 -+) -+ -+const ( -+ PIDFD_NONBLOCK = 0x80 -+) -+ -+type SysvIpcPerm struct { -+ Key int32 -+ Uid uint32 -+ Gid uint32 -+ Cuid uint32 -+ Cgid uint32 -+ Mode uint32 -+ _ [0]uint8 -+ Seq uint16 -+ _ uint16 -+ _ uint32 -+ _ uint32 -+} -+type SysvShmDesc struct { -+ Perm SysvIpcPerm -+ Segsz uint32 -+ Atime uint32 -+ Dtime uint32 -+ Ctime uint32 -+ Cpid int32 -+ Lpid int32 -+ Nattch uint32 -+ Atime_high uint16 -+ Dtime_high uint16 -+ Ctime_high uint16 -+ _ uint16 -+} -diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_ppc.go b/vendor/golang.org/x/sys/unix/ztypes_linux_ppc.go -new file mode 100644 -index 0000000..e1dd483 ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_ppc.go -@@ -0,0 +1,698 @@ -+// cgo -godefs -objdir=/tmp/ppc/cgo -- -Wall -Werror -static -I/tmp/ppc/include linux/types.go | go run mkpost.go -+// Code generated by the command above; see README.md. DO NOT EDIT. -+ -+//go:build ppc && linux -+// +build ppc,linux -+ -+package unix -+ -+const ( -+ SizeofPtr = 0x4 -+ SizeofLong = 0x4 -+) -+ -+type ( -+ _C_long int32 -+) -+ -+type Timespec struct { -+ Sec int32 -+ Nsec int32 -+} -+ -+type Timeval struct { -+ Sec int32 -+ Usec int32 -+} -+ -+type Timex struct { -+ Modes uint32 -+ Offset int32 -+ Freq int32 -+ Maxerror int32 -+ Esterror int32 -+ Status int32 -+ Constant int32 -+ Precision int32 -+ Tolerance int32 -+ Time Timeval -+ Tick int32 -+ Ppsfreq int32 -+ Jitter int32 -+ Shift int32 -+ Stabil int32 -+ Jitcnt int32 -+ Calcnt int32 -+ Errcnt int32 -+ Stbcnt int32 -+ Tai int32 -+ _ [44]byte -+} -+ -+type Time_t int32 -+ -+type Tms struct { -+ Utime int32 -+ Stime int32 -+ Cutime int32 -+ Cstime int32 -+} -+ -+type Utimbuf struct { -+ Actime int32 -+ Modtime int32 -+} -+ -+type Rusage struct { -+ Utime Timeval -+ Stime Timeval -+ Maxrss int32 -+ Ixrss int32 -+ Idrss int32 -+ Isrss int32 -+ Minflt int32 -+ Majflt int32 -+ Nswap int32 -+ Inblock int32 -+ Oublock int32 -+ Msgsnd int32 -+ Msgrcv int32 -+ Nsignals int32 -+ Nvcsw int32 -+ Nivcsw int32 -+} -+ -+type Stat_t struct { -+ Dev uint64 -+ Ino uint64 -+ Mode uint32 -+ Nlink uint32 -+ Uid uint32 -+ Gid uint32 -+ Rdev uint64 -+ _ uint16 -+ _ [4]byte -+ Size int64 -+ Blksize int32 -+ _ [4]byte -+ Blocks int64 -+ Atim Timespec -+ Mtim Timespec -+ Ctim Timespec -+ _ uint32 -+ _ uint32 -+} -+ -+type Dirent struct { -+ Ino uint64 -+ Off int64 -+ Reclen uint16 -+ Type uint8 -+ Name [256]uint8 -+ _ [5]byte -+} -+ -+type Flock_t struct { -+ Type int16 -+ Whence int16 -+ _ [4]byte -+ Start int64 -+ Len int64 -+ Pid int32 -+ _ [4]byte -+} -+ -+type DmNameList struct { -+ Dev uint64 -+ Next uint32 -+ Name [0]byte -+ _ [4]byte -+} -+ -+const ( -+ FADV_DONTNEED = 0x4 -+ FADV_NOREUSE = 0x5 -+) -+ -+type RawSockaddrNFCLLCP struct { -+ Sa_family uint16 -+ Dev_idx uint32 -+ Target_idx uint32 -+ Nfc_protocol uint32 -+ Dsap uint8 -+ Ssap uint8 -+ Service_name [63]uint8 -+ Service_name_len uint32 -+} -+ -+type RawSockaddr struct { -+ Family uint16 -+ Data [14]uint8 -+} -+ -+type RawSockaddrAny struct { -+ Addr RawSockaddr -+ Pad [96]uint8 -+} -+ -+type Iovec struct { -+ Base *byte -+ Len uint32 -+} -+ -+type Msghdr struct { -+ Name *byte -+ Namelen uint32 -+ Iov *Iovec -+ Iovlen uint32 -+ Control *byte -+ Controllen uint32 -+ Flags int32 -+} -+ -+type Cmsghdr struct { -+ Len uint32 -+ Level int32 -+ Type int32 -+} -+ -+type ifreq struct { -+ Ifrn [16]byte -+ Ifru [16]byte -+} -+ -+const ( -+ SizeofSockaddrNFCLLCP = 0x58 -+ SizeofIovec = 0x8 -+ SizeofMsghdr = 0x1c -+ SizeofCmsghdr = 0xc -+) -+ -+const ( -+ SizeofSockFprog = 0x8 -+) -+ -+type PtraceRegs struct { -+ Gpr [32]uint32 -+ Nip uint32 -+ Msr uint32 -+ Orig_gpr3 uint32 -+ Ctr uint32 -+ Link uint32 -+ Xer uint32 -+ Ccr uint32 -+ Mq uint32 -+ Trap uint32 -+ Dar uint32 -+ Dsisr uint32 -+ Result uint32 -+} -+ -+type FdSet struct { -+ Bits [32]int32 -+} -+ -+type Sysinfo_t struct { -+ Uptime int32 -+ Loads [3]uint32 -+ Totalram uint32 -+ Freeram uint32 -+ Sharedram uint32 -+ Bufferram uint32 -+ Totalswap uint32 -+ Freeswap uint32 -+ Procs uint16 -+ Pad uint16 -+ Totalhigh uint32 -+ Freehigh uint32 -+ Unit uint32 -+ _ [8]uint8 -+} -+ -+type Ustat_t struct { -+ Tfree int32 -+ Tinode uint32 -+ Fname [6]uint8 -+ Fpack [6]uint8 -+} -+ -+type EpollEvent struct { -+ Events uint32 -+ _ int32 -+ Fd int32 -+ Pad int32 -+} -+ -+const ( -+ OPEN_TREE_CLOEXEC = 0x80000 -+) -+ -+const ( -+ POLLRDHUP = 0x2000 -+) -+ -+type Sigset_t struct { -+ Val [32]uint32 -+} -+ -+const _C__NSIG = 0x41 -+ -+type Siginfo struct { -+ Signo int32 -+ Errno int32 -+ Code int32 -+ _ [116]byte -+} -+ -+type Termios struct { -+ Iflag uint32 -+ Oflag uint32 -+ Cflag uint32 -+ Lflag uint32 -+ Cc [19]uint8 -+ Line uint8 -+ Ispeed uint32 -+ Ospeed uint32 -+} -+ -+type Taskstats struct { -+ Version uint16 -+ Ac_exitcode uint32 -+ Ac_flag uint8 -+ Ac_nice uint8 -+ _ [4]byte -+ Cpu_count uint64 -+ Cpu_delay_total uint64 -+ Blkio_count uint64 -+ Blkio_delay_total uint64 -+ Swapin_count uint64 -+ Swapin_delay_total uint64 -+ Cpu_run_real_total uint64 -+ Cpu_run_virtual_total uint64 -+ Ac_comm [32]uint8 -+ Ac_sched uint8 -+ Ac_pad [3]uint8 -+ _ [4]byte -+ Ac_uid uint32 -+ Ac_gid uint32 -+ Ac_pid uint32 -+ Ac_ppid uint32 -+ Ac_btime uint32 -+ _ [4]byte -+ Ac_etime uint64 -+ Ac_utime uint64 -+ Ac_stime uint64 -+ Ac_minflt uint64 -+ Ac_majflt uint64 -+ Coremem uint64 -+ Virtmem uint64 -+ Hiwater_rss uint64 -+ Hiwater_vm uint64 -+ Read_char uint64 -+ Write_char uint64 -+ Read_syscalls uint64 -+ Write_syscalls uint64 -+ Read_bytes uint64 -+ Write_bytes uint64 -+ Cancelled_write_bytes uint64 -+ Nvcsw uint64 -+ Nivcsw uint64 -+ Ac_utimescaled uint64 -+ Ac_stimescaled uint64 -+ Cpu_scaled_run_real_total uint64 -+ Freepages_count uint64 -+ Freepages_delay_total uint64 -+ Thrashing_count uint64 -+ Thrashing_delay_total uint64 -+ Ac_btime64 uint64 -+ Compact_count uint64 -+ Compact_delay_total uint64 -+ Ac_tgid uint32 -+ _ [4]byte -+ Ac_tgetime uint64 -+ Ac_exe_dev uint64 -+ Ac_exe_inode uint64 -+ Wpcopy_count uint64 -+ Wpcopy_delay_total uint64 -+} -+ -+type cpuMask uint32 -+ -+const ( -+ _NCPUBITS = 0x20 -+) -+ -+const ( -+ CBitFieldMaskBit0 = 0x8000000000000000 -+ CBitFieldMaskBit1 = 0x4000000000000000 -+ CBitFieldMaskBit2 = 0x2000000000000000 -+ CBitFieldMaskBit3 = 0x1000000000000000 -+ CBitFieldMaskBit4 = 0x800000000000000 -+ CBitFieldMaskBit5 = 0x400000000000000 -+ CBitFieldMaskBit6 = 0x200000000000000 -+ CBitFieldMaskBit7 = 0x100000000000000 -+ CBitFieldMaskBit8 = 0x80000000000000 -+ CBitFieldMaskBit9 = 0x40000000000000 -+ CBitFieldMaskBit10 = 0x20000000000000 -+ CBitFieldMaskBit11 = 0x10000000000000 -+ CBitFieldMaskBit12 = 0x8000000000000 -+ CBitFieldMaskBit13 = 0x4000000000000 -+ CBitFieldMaskBit14 = 0x2000000000000 -+ CBitFieldMaskBit15 = 0x1000000000000 -+ CBitFieldMaskBit16 = 0x800000000000 -+ CBitFieldMaskBit17 = 0x400000000000 -+ CBitFieldMaskBit18 = 0x200000000000 -+ CBitFieldMaskBit19 = 0x100000000000 -+ CBitFieldMaskBit20 = 0x80000000000 -+ CBitFieldMaskBit21 = 0x40000000000 -+ CBitFieldMaskBit22 = 0x20000000000 -+ CBitFieldMaskBit23 = 0x10000000000 -+ CBitFieldMaskBit24 = 0x8000000000 -+ CBitFieldMaskBit25 = 0x4000000000 -+ CBitFieldMaskBit26 = 0x2000000000 -+ CBitFieldMaskBit27 = 0x1000000000 -+ CBitFieldMaskBit28 = 0x800000000 -+ CBitFieldMaskBit29 = 0x400000000 -+ CBitFieldMaskBit30 = 0x200000000 -+ CBitFieldMaskBit31 = 0x100000000 -+ CBitFieldMaskBit32 = 0x80000000 -+ CBitFieldMaskBit33 = 0x40000000 -+ CBitFieldMaskBit34 = 0x20000000 -+ CBitFieldMaskBit35 = 0x10000000 -+ CBitFieldMaskBit36 = 0x8000000 -+ CBitFieldMaskBit37 = 0x4000000 -+ CBitFieldMaskBit38 = 0x2000000 -+ CBitFieldMaskBit39 = 0x1000000 -+ CBitFieldMaskBit40 = 0x800000 -+ CBitFieldMaskBit41 = 0x400000 -+ CBitFieldMaskBit42 = 0x200000 -+ CBitFieldMaskBit43 = 0x100000 -+ CBitFieldMaskBit44 = 0x80000 -+ CBitFieldMaskBit45 = 0x40000 -+ CBitFieldMaskBit46 = 0x20000 -+ CBitFieldMaskBit47 = 0x10000 -+ CBitFieldMaskBit48 = 0x8000 -+ CBitFieldMaskBit49 = 0x4000 -+ CBitFieldMaskBit50 = 0x2000 -+ CBitFieldMaskBit51 = 0x1000 -+ CBitFieldMaskBit52 = 0x800 -+ CBitFieldMaskBit53 = 0x400 -+ CBitFieldMaskBit54 = 0x200 -+ CBitFieldMaskBit55 = 0x100 -+ CBitFieldMaskBit56 = 0x80 -+ CBitFieldMaskBit57 = 0x40 -+ CBitFieldMaskBit58 = 0x20 -+ CBitFieldMaskBit59 = 0x10 -+ CBitFieldMaskBit60 = 0x8 -+ CBitFieldMaskBit61 = 0x4 -+ CBitFieldMaskBit62 = 0x2 -+ CBitFieldMaskBit63 = 0x1 -+) -+ -+type SockaddrStorage struct { -+ Family uint16 -+ _ [122]uint8 -+ _ uint32 -+} -+ -+type HDGeometry struct { -+ Heads uint8 -+ Sectors uint8 -+ Cylinders uint16 -+ Start uint32 -+} -+ -+type Statfs_t struct { -+ Type int32 -+ Bsize int32 -+ Blocks uint64 -+ Bfree uint64 -+ Bavail uint64 -+ Files uint64 -+ Ffree uint64 -+ Fsid Fsid -+ Namelen int32 -+ Frsize int32 -+ Flags int32 -+ Spare [4]int32 -+ _ [4]byte -+} -+ -+type TpacketHdr struct { -+ Status uint32 -+ Len uint32 -+ Snaplen uint32 -+ Mac uint16 -+ Net uint16 -+ Sec uint32 -+ Usec uint32 -+} -+ -+const ( -+ SizeofTpacketHdr = 0x18 -+) -+ -+type RTCPLLInfo struct { -+ Ctrl int32 -+ Value int32 -+ Max int32 -+ Min int32 -+ Posmult int32 -+ Negmult int32 -+ Clock int32 -+} -+ -+type BlkpgPartition struct { -+ Start int64 -+ Length int64 -+ Pno int32 -+ Devname [64]uint8 -+ Volname [64]uint8 -+ _ [4]byte -+} -+ -+const ( -+ BLKPG = 0x20001269 -+) -+ -+type XDPUmemReg struct { -+ Addr uint64 -+ Len uint64 -+ Size uint32 -+ Headroom uint32 -+ Flags uint32 -+ _ [4]byte -+} -+ -+type CryptoUserAlg struct { -+ Name [64]uint8 -+ Driver_name [64]uint8 -+ Module_name [64]uint8 -+ Type uint32 -+ Mask uint32 -+ Refcnt uint32 -+ Flags uint32 -+} -+ -+type CryptoStatAEAD struct { -+ Type [64]uint8 -+ Encrypt_cnt uint64 -+ Encrypt_tlen uint64 -+ Decrypt_cnt uint64 -+ Decrypt_tlen uint64 -+ Err_cnt uint64 -+} -+ -+type CryptoStatAKCipher struct { -+ Type [64]uint8 -+ Encrypt_cnt uint64 -+ Encrypt_tlen uint64 -+ Decrypt_cnt uint64 -+ Decrypt_tlen uint64 -+ Verify_cnt uint64 -+ Sign_cnt uint64 -+ Err_cnt uint64 -+} -+ -+type CryptoStatCipher struct { -+ Type [64]uint8 -+ Encrypt_cnt uint64 -+ Encrypt_tlen uint64 -+ Decrypt_cnt uint64 -+ Decrypt_tlen uint64 -+ Err_cnt uint64 -+} -+ -+type CryptoStatCompress struct { -+ Type [64]uint8 -+ Compress_cnt uint64 -+ Compress_tlen uint64 -+ Decompress_cnt uint64 -+ Decompress_tlen uint64 -+ Err_cnt uint64 -+} -+ -+type CryptoStatHash struct { -+ Type [64]uint8 -+ Hash_cnt uint64 -+ Hash_tlen uint64 -+ Err_cnt uint64 -+} -+ -+type CryptoStatKPP struct { -+ Type [64]uint8 -+ Setsecret_cnt uint64 -+ Generate_public_key_cnt uint64 -+ Compute_shared_secret_cnt uint64 -+ Err_cnt uint64 -+} -+ -+type CryptoStatRNG struct { -+ Type [64]uint8 -+ Generate_cnt uint64 -+ Generate_tlen uint64 -+ Seed_cnt uint64 -+ Err_cnt uint64 -+} -+ -+type CryptoStatLarval struct { -+ Type [64]uint8 -+} -+ -+type CryptoReportLarval struct { -+ Type [64]uint8 -+} -+ -+type CryptoReportHash struct { -+ Type [64]uint8 -+ Blocksize uint32 -+ Digestsize uint32 -+} -+ -+type CryptoReportCipher struct { -+ Type [64]uint8 -+ Blocksize uint32 -+ Min_keysize uint32 -+ Max_keysize uint32 -+} -+ -+type CryptoReportBlkCipher struct { -+ Type [64]uint8 -+ Geniv [64]uint8 -+ Blocksize uint32 -+ Min_keysize uint32 -+ Max_keysize uint32 -+ Ivsize uint32 -+} -+ -+type CryptoReportAEAD struct { -+ Type [64]uint8 -+ Geniv [64]uint8 -+ Blocksize uint32 -+ Maxauthsize uint32 -+ Ivsize uint32 -+} -+ -+type CryptoReportComp struct { -+ Type [64]uint8 -+} -+ -+type CryptoReportRNG struct { -+ Type [64]uint8 -+ Seedsize uint32 -+} -+ -+type CryptoReportAKCipher struct { -+ Type [64]uint8 -+} -+ -+type CryptoReportKPP struct { -+ Type [64]uint8 -+} -+ -+type CryptoReportAcomp struct { -+ Type [64]uint8 -+} -+ -+type LoopInfo struct { -+ Number int32 -+ Device uint32 -+ Inode uint32 -+ Rdevice uint32 -+ Offset int32 -+ Encrypt_type int32 -+ Encrypt_key_size int32 -+ Flags int32 -+ Name [64]uint8 -+ Encrypt_key [32]uint8 -+ Init [2]uint32 -+ Reserved [4]uint8 -+} -+ -+type TIPCSubscr struct { -+ Seq TIPCServiceRange -+ Timeout uint32 -+ Filter uint32 -+ Handle [8]uint8 -+} -+ -+type TIPCSIOCLNReq struct { -+ Peer uint32 -+ Id uint32 -+ Linkname [68]uint8 -+} -+ -+type TIPCSIOCNodeIDReq struct { -+ Peer uint32 -+ Id [16]uint8 -+} -+ -+type PPSKInfo struct { -+ Assert_sequence uint32 -+ Clear_sequence uint32 -+ Assert_tu PPSKTime -+ Clear_tu PPSKTime -+ Current_mode int32 -+ _ [4]byte -+} -+ -+const ( -+ PPS_GETPARAMS = 0x400470a1 -+ PPS_SETPARAMS = 0x800470a2 -+ PPS_GETCAP = 0x400470a3 -+ PPS_FETCH = 0xc00470a4 -+) -+ -+const ( -+ PIDFD_NONBLOCK = 0x800 -+) -+ -+type SysvIpcPerm struct { -+ Key int32 -+ Uid uint32 -+ Gid uint32 -+ Cuid uint32 -+ Cgid uint32 -+ Mode uint32 -+ Seq uint32 -+ _ uint32 -+ _ uint64 -+ _ uint64 -+} -+type SysvShmDesc struct { -+ Perm SysvIpcPerm -+ Atime_high uint32 -+ Atime uint32 -+ Dtime_high uint32 -+ Dtime uint32 -+ Ctime_high uint32 -+ Ctime uint32 -+ _ uint32 -+ Segsz uint32 -+ Cpid int32 -+ Lpid int32 -+ Nattch uint32 -+ _ uint32 -+ _ uint32 -+ _ [4]byte -+} -diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go -index 7415190..d9f654c 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go -@@ -1,6 +1,7 @@ --// cgo -godefs -- -Wall -Werror -static -I/tmp/include linux/types.go | go run mkpost.go -+// cgo -godefs -objdir=/tmp/ppc64/cgo -- -Wall -Werror -static -I/tmp/ppc64/include linux/types.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build ppc64 && linux - // +build ppc64,linux - - package unix -@@ -119,11 +120,29 @@ type Flock_t struct { - _ [4]byte - } - -+type DmNameList struct { -+ Dev uint64 -+ Next uint32 -+ Name [0]byte -+ _ [4]byte -+} -+ - const ( - FADV_DONTNEED = 0x4 - FADV_NOREUSE = 0x5 - ) - -+type RawSockaddrNFCLLCP struct { -+ Sa_family uint16 -+ Dev_idx uint32 -+ Target_idx uint32 -+ Nfc_protocol uint32 -+ Dsap uint8 -+ Ssap uint8 -+ Service_name [63]uint8 -+ Service_name_len uint64 -+} -+ - type RawSockaddr struct { - Family uint16 - Data [14]uint8 -@@ -156,10 +175,16 @@ type Cmsghdr struct { - Type int32 - } - -+type ifreq struct { -+ Ifrn [16]byte -+ Ifru [24]byte -+} -+ - const ( -- SizeofIovec = 0x10 -- SizeofMsghdr = 0x38 -- SizeofCmsghdr = 0x10 -+ SizeofSockaddrNFCLLCP = 0x60 -+ SizeofIovec = 0x10 -+ SizeofMsghdr = 0x38 -+ SizeofCmsghdr = 0x10 - ) - - const ( -@@ -219,6 +244,10 @@ type EpollEvent struct { - Pad int32 - } - -+const ( -+ OPEN_TREE_CLOEXEC = 0x80000 -+) -+ - const ( - POLLRDHUP = 0x2000 - ) -@@ -229,6 +258,14 @@ type Sigset_t struct { - - const _C__NSIG = 0x41 - -+type Siginfo struct { -+ Signo int32 -+ Errno int32 -+ Code int32 -+ _ int32 -+ _ [112]byte -+} -+ - type Termios struct { - Iflag uint32 - Oflag uint32 -@@ -288,6 +325,14 @@ type Taskstats struct { - Thrashing_count uint64 - Thrashing_delay_total uint64 - Ac_btime64 uint64 -+ Compact_count uint64 -+ Compact_delay_total uint64 -+ Ac_tgid uint32 -+ Ac_tgetime uint64 -+ Ac_exe_dev uint64 -+ Ac_exe_inode uint64 -+ Wpcopy_count uint64 -+ Wpcopy_delay_total uint64 - } - - type cpuMask uint64 -@@ -601,3 +646,48 @@ type TIPCSIOCNodeIDReq struct { - Peer uint32 - Id [16]uint8 - } -+ -+type PPSKInfo struct { -+ Assert_sequence uint32 -+ Clear_sequence uint32 -+ Assert_tu PPSKTime -+ Clear_tu PPSKTime -+ Current_mode int32 -+ _ [4]byte -+} -+ -+const ( -+ PPS_GETPARAMS = 0x400870a1 -+ PPS_SETPARAMS = 0x800870a2 -+ PPS_GETCAP = 0x400870a3 -+ PPS_FETCH = 0xc00870a4 -+) -+ -+const ( -+ PIDFD_NONBLOCK = 0x800 -+) -+ -+type SysvIpcPerm struct { -+ Key int32 -+ Uid uint32 -+ Gid uint32 -+ Cuid uint32 -+ Cgid uint32 -+ Mode uint32 -+ Seq uint32 -+ _ uint32 -+ _ uint64 -+ _ uint64 -+} -+type SysvShmDesc struct { -+ Perm SysvIpcPerm -+ Atime int64 -+ Dtime int64 -+ Ctime int64 -+ Segsz uint64 -+ Cpid int32 -+ Lpid int32 -+ Nattch uint64 -+ _ uint64 -+ _ uint64 -+} -diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go b/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go -index 046c2de..74acda9 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go -@@ -1,6 +1,7 @@ --// cgo -godefs -- -Wall -Werror -static -I/tmp/include linux/types.go | go run mkpost.go -+// cgo -godefs -objdir=/tmp/ppc64le/cgo -- -Wall -Werror -static -I/tmp/ppc64le/include linux/types.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build ppc64le && linux - // +build ppc64le,linux - - package unix -@@ -119,11 +120,29 @@ type Flock_t struct { - _ [4]byte - } - -+type DmNameList struct { -+ Dev uint64 -+ Next uint32 -+ Name [0]byte -+ _ [4]byte -+} -+ - const ( - FADV_DONTNEED = 0x4 - FADV_NOREUSE = 0x5 - ) - -+type RawSockaddrNFCLLCP struct { -+ Sa_family uint16 -+ Dev_idx uint32 -+ Target_idx uint32 -+ Nfc_protocol uint32 -+ Dsap uint8 -+ Ssap uint8 -+ Service_name [63]uint8 -+ Service_name_len uint64 -+} -+ - type RawSockaddr struct { - Family uint16 - Data [14]uint8 -@@ -156,10 +175,16 @@ type Cmsghdr struct { - Type int32 - } - -+type ifreq struct { -+ Ifrn [16]byte -+ Ifru [24]byte -+} -+ - const ( -- SizeofIovec = 0x10 -- SizeofMsghdr = 0x38 -- SizeofCmsghdr = 0x10 -+ SizeofSockaddrNFCLLCP = 0x60 -+ SizeofIovec = 0x10 -+ SizeofMsghdr = 0x38 -+ SizeofCmsghdr = 0x10 - ) - - const ( -@@ -219,6 +244,10 @@ type EpollEvent struct { - Pad int32 - } - -+const ( -+ OPEN_TREE_CLOEXEC = 0x80000 -+) -+ - const ( - POLLRDHUP = 0x2000 - ) -@@ -229,6 +258,14 @@ type Sigset_t struct { - - const _C__NSIG = 0x41 - -+type Siginfo struct { -+ Signo int32 -+ Errno int32 -+ Code int32 -+ _ int32 -+ _ [112]byte -+} -+ - type Termios struct { - Iflag uint32 - Oflag uint32 -@@ -288,6 +325,14 @@ type Taskstats struct { - Thrashing_count uint64 - Thrashing_delay_total uint64 - Ac_btime64 uint64 -+ Compact_count uint64 -+ Compact_delay_total uint64 -+ Ac_tgid uint32 -+ Ac_tgetime uint64 -+ Ac_exe_dev uint64 -+ Ac_exe_inode uint64 -+ Wpcopy_count uint64 -+ Wpcopy_delay_total uint64 - } - - type cpuMask uint64 -@@ -601,3 +646,48 @@ type TIPCSIOCNodeIDReq struct { - Peer uint32 - Id [16]uint8 - } -+ -+type PPSKInfo struct { -+ Assert_sequence uint32 -+ Clear_sequence uint32 -+ Assert_tu PPSKTime -+ Clear_tu PPSKTime -+ Current_mode int32 -+ _ [4]byte -+} -+ -+const ( -+ PPS_GETPARAMS = 0x400870a1 -+ PPS_SETPARAMS = 0x800870a2 -+ PPS_GETCAP = 0x400870a3 -+ PPS_FETCH = 0xc00870a4 -+) -+ -+const ( -+ PIDFD_NONBLOCK = 0x800 -+) -+ -+type SysvIpcPerm struct { -+ Key int32 -+ Uid uint32 -+ Gid uint32 -+ Cuid uint32 -+ Cgid uint32 -+ Mode uint32 -+ Seq uint32 -+ _ uint32 -+ _ uint64 -+ _ uint64 -+} -+type SysvShmDesc struct { -+ Perm SysvIpcPerm -+ Atime int64 -+ Dtime int64 -+ Ctime int64 -+ Segsz uint64 -+ Cpid int32 -+ Lpid int32 -+ Nattch uint64 -+ _ uint64 -+ _ uint64 -+} -diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go -index 0f2f61a..50ebe69 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go -@@ -1,6 +1,7 @@ --// cgo -godefs -- -Wall -Werror -static -I/tmp/include linux/types.go | go run mkpost.go -+// cgo -godefs -objdir=/tmp/riscv64/cgo -- -Wall -Werror -static -I/tmp/riscv64/include linux/types.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build riscv64 && linux - // +build riscv64,linux - - package unix -@@ -118,11 +119,29 @@ type Flock_t struct { - _ [4]byte - } - -+type DmNameList struct { -+ Dev uint64 -+ Next uint32 -+ Name [0]byte -+ _ [4]byte -+} -+ - const ( - FADV_DONTNEED = 0x4 - FADV_NOREUSE = 0x5 - ) - -+type RawSockaddrNFCLLCP struct { -+ Sa_family uint16 -+ Dev_idx uint32 -+ Target_idx uint32 -+ Nfc_protocol uint32 -+ Dsap uint8 -+ Ssap uint8 -+ Service_name [63]uint8 -+ Service_name_len uint64 -+} -+ - type RawSockaddr struct { - Family uint16 - Data [14]uint8 -@@ -155,10 +174,16 @@ type Cmsghdr struct { - Type int32 - } - -+type ifreq struct { -+ Ifrn [16]byte -+ Ifru [24]byte -+} -+ - const ( -- SizeofIovec = 0x10 -- SizeofMsghdr = 0x38 -- SizeofCmsghdr = 0x10 -+ SizeofSockaddrNFCLLCP = 0x60 -+ SizeofIovec = 0x10 -+ SizeofMsghdr = 0x38 -+ SizeofCmsghdr = 0x10 - ) - - const ( -@@ -237,6 +262,10 @@ type EpollEvent struct { - Pad int32 - } - -+const ( -+ OPEN_TREE_CLOEXEC = 0x80000 -+) -+ - const ( - POLLRDHUP = 0x2000 - ) -@@ -247,6 +276,14 @@ type Sigset_t struct { - - const _C__NSIG = 0x41 - -+type Siginfo struct { -+ Signo int32 -+ Errno int32 -+ Code int32 -+ _ int32 -+ _ [112]byte -+} -+ - type Termios struct { - Iflag uint32 - Oflag uint32 -@@ -306,6 +343,14 @@ type Taskstats struct { - Thrashing_count uint64 - Thrashing_delay_total uint64 - Ac_btime64 uint64 -+ Compact_count uint64 -+ Compact_delay_total uint64 -+ Ac_tgid uint32 -+ Ac_tgetime uint64 -+ Ac_exe_dev uint64 -+ Ac_exe_inode uint64 -+ Wpcopy_count uint64 -+ Wpcopy_delay_total uint64 - } - - type cpuMask uint64 -@@ -619,3 +664,49 @@ type TIPCSIOCNodeIDReq struct { - Peer uint32 - Id [16]uint8 - } -+ -+type PPSKInfo struct { -+ Assert_sequence uint32 -+ Clear_sequence uint32 -+ Assert_tu PPSKTime -+ Clear_tu PPSKTime -+ Current_mode int32 -+ _ [4]byte -+} -+ -+const ( -+ PPS_GETPARAMS = 0x800870a1 -+ PPS_SETPARAMS = 0x400870a2 -+ PPS_GETCAP = 0x800870a3 -+ PPS_FETCH = 0xc00870a4 -+) -+ -+const ( -+ PIDFD_NONBLOCK = 0x800 -+) -+ -+type SysvIpcPerm struct { -+ Key int32 -+ Uid uint32 -+ Gid uint32 -+ Cuid uint32 -+ Cgid uint32 -+ Mode uint32 -+ _ [0]uint8 -+ Seq uint16 -+ _ uint16 -+ _ uint64 -+ _ uint64 -+} -+type SysvShmDesc struct { -+ Perm SysvIpcPerm -+ Segsz uint64 -+ Atime int64 -+ Dtime int64 -+ Ctime int64 -+ Cpid int32 -+ Lpid int32 -+ Nattch uint64 -+ _ uint64 -+ _ uint64 -+} -diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go b/vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go -index cca1b6b..75b34c2 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_s390x.go -@@ -1,6 +1,7 @@ --// cgo -godefs -- -Wall -Werror -static -I/tmp/include -fsigned-char linux/types.go | go run mkpost.go -+// cgo -godefs -objdir=/tmp/s390x/cgo -- -Wall -Werror -static -I/tmp/s390x/include -fsigned-char linux/types.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build s390x && linux - // +build s390x,linux - - package unix -@@ -117,11 +118,29 @@ type Flock_t struct { - _ [4]byte - } - -+type DmNameList struct { -+ Dev uint64 -+ Next uint32 -+ Name [0]byte -+ _ [4]byte -+} -+ - const ( - FADV_DONTNEED = 0x6 - FADV_NOREUSE = 0x7 - ) - -+type RawSockaddrNFCLLCP struct { -+ Sa_family uint16 -+ Dev_idx uint32 -+ Target_idx uint32 -+ Nfc_protocol uint32 -+ Dsap uint8 -+ Ssap uint8 -+ Service_name [63]uint8 -+ Service_name_len uint64 -+} -+ - type RawSockaddr struct { - Family uint16 - Data [14]int8 -@@ -154,10 +173,16 @@ type Cmsghdr struct { - Type int32 - } - -+type ifreq struct { -+ Ifrn [16]byte -+ Ifru [24]byte -+} -+ - const ( -- SizeofIovec = 0x10 -- SizeofMsghdr = 0x38 -- SizeofCmsghdr = 0x10 -+ SizeofSockaddrNFCLLCP = 0x60 -+ SizeofIovec = 0x10 -+ SizeofMsghdr = 0x38 -+ SizeofCmsghdr = 0x10 - ) - - const ( -@@ -185,8 +210,8 @@ type PtraceFpregs struct { - } - - type PtracePer struct { -- _ [0]uint64 -- _ [32]byte -+ Control_regs [3]uint64 -+ _ [8]byte - Starting_addr uint64 - Ending_addr uint64 - Perc_atmid uint16 -@@ -232,6 +257,10 @@ type EpollEvent struct { - Pad int32 - } - -+const ( -+ OPEN_TREE_CLOEXEC = 0x80000 -+) -+ - const ( - POLLRDHUP = 0x2000 - ) -@@ -242,6 +271,14 @@ type Sigset_t struct { - - const _C__NSIG = 0x41 - -+type Siginfo struct { -+ Signo int32 -+ Errno int32 -+ Code int32 -+ _ int32 -+ _ [112]byte -+} -+ - type Termios struct { - Iflag uint32 - Oflag uint32 -@@ -301,6 +338,14 @@ type Taskstats struct { - Thrashing_count uint64 - Thrashing_delay_total uint64 - Ac_btime64 uint64 -+ Compact_count uint64 -+ Compact_delay_total uint64 -+ Ac_tgid uint32 -+ Ac_tgetime uint64 -+ Ac_exe_dev uint64 -+ Ac_exe_inode uint64 -+ Wpcopy_count uint64 -+ Wpcopy_delay_total uint64 - } - - type cpuMask uint64 -@@ -615,3 +660,48 @@ type TIPCSIOCNodeIDReq struct { - Peer uint32 - Id [16]int8 - } -+ -+type PPSKInfo struct { -+ Assert_sequence uint32 -+ Clear_sequence uint32 -+ Assert_tu PPSKTime -+ Clear_tu PPSKTime -+ Current_mode int32 -+ _ [4]byte -+} -+ -+const ( -+ PPS_GETPARAMS = 0x800870a1 -+ PPS_SETPARAMS = 0x400870a2 -+ PPS_GETCAP = 0x800870a3 -+ PPS_FETCH = 0xc00870a4 -+) -+ -+const ( -+ PIDFD_NONBLOCK = 0x800 -+) -+ -+type SysvIpcPerm struct { -+ Key int32 -+ Uid uint32 -+ Gid uint32 -+ Cuid uint32 -+ Cgid uint32 -+ Mode uint32 -+ _ uint16 -+ Seq uint16 -+ _ uint64 -+ _ uint64 -+} -+type SysvShmDesc struct { -+ Perm SysvIpcPerm -+ Segsz uint64 -+ Atime int64 -+ Dtime int64 -+ Ctime int64 -+ Cpid int32 -+ Lpid int32 -+ Nattch uint64 -+ _ uint64 -+ _ uint64 -+} -diff --git a/vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go b/vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go -index 33a73bf..429c3bf 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go -@@ -1,6 +1,7 @@ --// cgo -godefs -- -Wall -Werror -static -I/tmp/include linux/types.go | go run mkpost.go -+// cgo -godefs -objdir=/tmp/sparc64/cgo -- -Wall -Werror -static -I/tmp/sparc64/include linux/types.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build sparc64 && linux - // +build sparc64,linux - - package unix -@@ -121,11 +122,29 @@ type Flock_t struct { - _ [2]byte - } - -+type DmNameList struct { -+ Dev uint64 -+ Next uint32 -+ Name [0]byte -+ _ [4]byte -+} -+ - const ( - FADV_DONTNEED = 0x4 - FADV_NOREUSE = 0x5 - ) - -+type RawSockaddrNFCLLCP struct { -+ Sa_family uint16 -+ Dev_idx uint32 -+ Target_idx uint32 -+ Nfc_protocol uint32 -+ Dsap uint8 -+ Ssap uint8 -+ Service_name [63]uint8 -+ Service_name_len uint64 -+} -+ - type RawSockaddr struct { - Family uint16 - Data [14]int8 -@@ -158,10 +177,16 @@ type Cmsghdr struct { - Type int32 - } - -+type ifreq struct { -+ Ifrn [16]byte -+ Ifru [24]byte -+} -+ - const ( -- SizeofIovec = 0x10 -- SizeofMsghdr = 0x38 -- SizeofCmsghdr = 0x10 -+ SizeofSockaddrNFCLLCP = 0x60 -+ SizeofIovec = 0x10 -+ SizeofMsghdr = 0x38 -+ SizeofCmsghdr = 0x10 - ) - - const ( -@@ -214,6 +239,10 @@ type EpollEvent struct { - Pad int32 - } - -+const ( -+ OPEN_TREE_CLOEXEC = 0x400000 -+) -+ - const ( - POLLRDHUP = 0x800 - ) -@@ -224,6 +253,14 @@ type Sigset_t struct { - - const _C__NSIG = 0x41 - -+type Siginfo struct { -+ Signo int32 -+ Errno int32 -+ Code int32 -+ _ int32 -+ _ [112]byte -+} -+ - type Termios struct { - Iflag uint32 - Oflag uint32 -@@ -283,6 +320,14 @@ type Taskstats struct { - Thrashing_count uint64 - Thrashing_delay_total uint64 - Ac_btime64 uint64 -+ Compact_count uint64 -+ Compact_delay_total uint64 -+ Ac_tgid uint32 -+ Ac_tgetime uint64 -+ Ac_exe_dev uint64 -+ Ac_exe_inode uint64 -+ Wpcopy_count uint64 -+ Wpcopy_delay_total uint64 - } - - type cpuMask uint64 -@@ -596,3 +641,48 @@ type TIPCSIOCNodeIDReq struct { - Peer uint32 - Id [16]int8 - } -+ -+type PPSKInfo struct { -+ Assert_sequence uint32 -+ Clear_sequence uint32 -+ Assert_tu PPSKTime -+ Clear_tu PPSKTime -+ Current_mode int32 -+ _ [4]byte -+} -+ -+const ( -+ PPS_GETPARAMS = 0x400870a1 -+ PPS_SETPARAMS = 0x800870a2 -+ PPS_GETCAP = 0x400870a3 -+ PPS_FETCH = 0xc00870a4 -+) -+ -+const ( -+ PIDFD_NONBLOCK = 0x4000 -+) -+ -+type SysvIpcPerm struct { -+ Key int32 -+ Uid uint32 -+ Gid uint32 -+ Cuid uint32 -+ Cgid uint32 -+ Mode uint32 -+ _ uint16 -+ Seq uint16 -+ _ uint64 -+ _ uint64 -+} -+type SysvShmDesc struct { -+ Perm SysvIpcPerm -+ Atime int64 -+ Dtime int64 -+ Ctime int64 -+ Segsz uint64 -+ Cpid int32 -+ Lpid int32 -+ Nattch uint64 -+ _ uint64 -+ _ uint64 -+} -diff --git a/vendor/golang.org/x/sys/unix/ztypes_netbsd_386.go b/vendor/golang.org/x/sys/unix/ztypes_netbsd_386.go -index a89100c..2fd2060 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_netbsd_386.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_netbsd_386.go -@@ -1,6 +1,7 @@ - // cgo -godefs types_netbsd.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build 386 && netbsd - // +build 386,netbsd - - package unix -@@ -248,6 +249,7 @@ const ( - SizeofSockaddrUnix = 0x6a - SizeofSockaddrDatalink = 0x14 - SizeofLinger = 0x8 -+ SizeofIovec = 0x8 - SizeofIPMreq = 0x8 - SizeofIPv6Mreq = 0x14 - SizeofMsghdr = 0x1c -@@ -443,8 +445,10 @@ type Ptmget struct { - - const ( - AT_FDCWD = -0x64 -- AT_SYMLINK_FOLLOW = 0x400 -+ AT_EACCESS = 0x100 - AT_SYMLINK_NOFOLLOW = 0x200 -+ AT_SYMLINK_FOLLOW = 0x400 -+ AT_REMOVEDIR = 0x800 - ) - - type PollFd struct { -diff --git a/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go -index 289184e..6a5a1a8 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go -@@ -1,6 +1,7 @@ - // cgo -godefs types_netbsd.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build amd64 && netbsd - // +build amd64,netbsd - - package unix -@@ -255,6 +256,7 @@ const ( - SizeofSockaddrUnix = 0x6a - SizeofSockaddrDatalink = 0x14 - SizeofLinger = 0x8 -+ SizeofIovec = 0x10 - SizeofIPMreq = 0x8 - SizeofIPv6Mreq = 0x14 - SizeofMsghdr = 0x30 -@@ -451,8 +453,10 @@ type Ptmget struct { - - const ( - AT_FDCWD = -0x64 -- AT_SYMLINK_FOLLOW = 0x400 -+ AT_EACCESS = 0x100 - AT_SYMLINK_NOFOLLOW = 0x200 -+ AT_SYMLINK_FOLLOW = 0x400 -+ AT_REMOVEDIR = 0x800 - ) - - type PollFd struct { -diff --git a/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go b/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go -index 428c450..84cc8d0 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go -@@ -1,6 +1,7 @@ - // cgo -godefs types_netbsd.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build arm && netbsd - // +build arm,netbsd - - package unix -@@ -253,6 +254,7 @@ const ( - SizeofSockaddrUnix = 0x6a - SizeofSockaddrDatalink = 0x14 - SizeofLinger = 0x8 -+ SizeofIovec = 0x8 - SizeofIPMreq = 0x8 - SizeofIPv6Mreq = 0x14 - SizeofMsghdr = 0x1c -@@ -448,8 +450,10 @@ type Ptmget struct { - - const ( - AT_FDCWD = -0x64 -- AT_SYMLINK_FOLLOW = 0x400 -+ AT_EACCESS = 0x100 - AT_SYMLINK_NOFOLLOW = 0x200 -+ AT_SYMLINK_FOLLOW = 0x400 -+ AT_REMOVEDIR = 0x800 - ) - - type PollFd struct { -diff --git a/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm64.go b/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm64.go -index 6f1f284..c844e70 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm64.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_netbsd_arm64.go -@@ -1,6 +1,7 @@ - // cgo -godefs types_netbsd.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build arm64 && netbsd - // +build arm64,netbsd - - package unix -@@ -255,6 +256,7 @@ const ( - SizeofSockaddrUnix = 0x6a - SizeofSockaddrDatalink = 0x14 - SizeofLinger = 0x8 -+ SizeofIovec = 0x10 - SizeofIPMreq = 0x8 - SizeofIPv6Mreq = 0x14 - SizeofMsghdr = 0x30 -@@ -451,8 +453,10 @@ type Ptmget struct { - - const ( - AT_FDCWD = -0x64 -- AT_SYMLINK_FOLLOW = 0x400 -+ AT_EACCESS = 0x100 - AT_SYMLINK_NOFOLLOW = 0x200 -+ AT_SYMLINK_FOLLOW = 0x400 -+ AT_REMOVEDIR = 0x800 - ) - - type PollFd struct { -diff --git a/vendor/golang.org/x/sys/unix/ztypes_openbsd_386.go b/vendor/golang.org/x/sys/unix/ztypes_openbsd_386.go -index 61ea001..2ed718c 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_openbsd_386.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_openbsd_386.go -@@ -1,6 +1,7 @@ - // cgo -godefs types_openbsd.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build 386 && openbsd - // +build 386,openbsd - - package unix -@@ -93,10 +94,10 @@ type Statfs_t struct { - F_namemax uint32 - F_owner uint32 - F_ctime uint64 -- F_fstypename [16]int8 -- F_mntonname [90]int8 -- F_mntfromname [90]int8 -- F_mntfromspec [90]int8 -+ F_fstypename [16]byte -+ F_mntonname [90]byte -+ F_mntfromname [90]byte -+ F_mntfromspec [90]byte - Pad_cgo_0 [2]byte - Mount_info [160]byte - } -@@ -231,6 +232,7 @@ const ( - SizeofSockaddrUnix = 0x6a - SizeofSockaddrDatalink = 0x20 - SizeofLinger = 0x8 -+ SizeofIovec = 0x8 - SizeofIPMreq = 0x8 - SizeofIPv6Mreq = 0x14 - SizeofMsghdr = 0x1c -@@ -436,8 +438,10 @@ type Winsize struct { - - const ( - AT_FDCWD = -0x64 -- AT_SYMLINK_FOLLOW = 0x4 -+ AT_EACCESS = 0x1 - AT_SYMLINK_NOFOLLOW = 0x2 -+ AT_SYMLINK_FOLLOW = 0x4 -+ AT_REMOVEDIR = 0x8 - ) - - type PollFd struct { -@@ -560,12 +564,11 @@ type Uvmexp struct { - Kmapent int32 - } - --const SizeofClockinfo = 0x14 -+const SizeofClockinfo = 0x10 - - type Clockinfo struct { -- Hz int32 -- Tick int32 -- Tickadj int32 -- Stathz int32 -- Profhz int32 -+ Hz int32 -+ Tick int32 -+ Stathz int32 -+ Profhz int32 - } -diff --git a/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go -index 87a493f..b4fb97e 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go -@@ -1,6 +1,7 @@ - // cgo -godefs types_openbsd.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build amd64 && openbsd - // +build amd64,openbsd - - package unix -@@ -95,10 +96,10 @@ type Statfs_t struct { - F_namemax uint32 - F_owner uint32 - F_ctime uint64 -- F_fstypename [16]int8 -- F_mntonname [90]int8 -- F_mntfromname [90]int8 -- F_mntfromspec [90]int8 -+ F_fstypename [16]byte -+ F_mntonname [90]byte -+ F_mntfromname [90]byte -+ F_mntfromspec [90]byte - _ [2]byte - Mount_info [160]byte - } -@@ -235,6 +236,7 @@ const ( - SizeofSockaddrUnix = 0x6a - SizeofSockaddrDatalink = 0x20 - SizeofLinger = 0x8 -+ SizeofIovec = 0x10 - SizeofIPMreq = 0x8 - SizeofIPv6Mreq = 0x14 - SizeofMsghdr = 0x30 -@@ -436,8 +438,10 @@ type Winsize struct { - - const ( - AT_FDCWD = -0x64 -- AT_SYMLINK_FOLLOW = 0x4 -+ AT_EACCESS = 0x1 - AT_SYMLINK_NOFOLLOW = 0x2 -+ AT_SYMLINK_FOLLOW = 0x4 -+ AT_REMOVEDIR = 0x8 - ) - - type PollFd struct { -@@ -560,12 +564,11 @@ type Uvmexp struct { - Kmapent int32 - } - --const SizeofClockinfo = 0x14 -+const SizeofClockinfo = 0x10 - - type Clockinfo struct { -- Hz int32 -- Tick int32 -- Tickadj int32 -- Stathz int32 -- Profhz int32 -+ Hz int32 -+ Tick int32 -+ Stathz int32 -+ Profhz int32 - } -diff --git a/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go b/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go -index d80836e..2c46750 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go -@@ -1,6 +1,7 @@ - // cgo -godefs -- -fsigned-char types_openbsd.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build arm && openbsd - // +build arm,openbsd - - package unix -@@ -97,10 +98,10 @@ type Statfs_t struct { - F_namemax uint32 - F_owner uint32 - F_ctime uint64 -- F_fstypename [16]int8 -- F_mntonname [90]int8 -- F_mntfromname [90]int8 -- F_mntfromspec [90]int8 -+ F_fstypename [16]byte -+ F_mntonname [90]byte -+ F_mntfromname [90]byte -+ F_mntfromspec [90]byte - _ [2]byte - Mount_info [160]byte - } -@@ -235,6 +236,7 @@ const ( - SizeofSockaddrUnix = 0x6a - SizeofSockaddrDatalink = 0x20 - SizeofLinger = 0x8 -+ SizeofIovec = 0x8 - SizeofIPMreq = 0x8 - SizeofIPv6Mreq = 0x14 - SizeofMsghdr = 0x1c -@@ -437,8 +439,10 @@ type Winsize struct { - - const ( - AT_FDCWD = -0x64 -- AT_SYMLINK_FOLLOW = 0x4 -+ AT_EACCESS = 0x1 - AT_SYMLINK_NOFOLLOW = 0x2 -+ AT_SYMLINK_FOLLOW = 0x4 -+ AT_REMOVEDIR = 0x8 - ) - - type PollFd struct { -@@ -561,12 +565,11 @@ type Uvmexp struct { - Kmapent int32 - } - --const SizeofClockinfo = 0x14 -+const SizeofClockinfo = 0x10 - - type Clockinfo struct { -- Hz int32 -- Tick int32 -- Tickadj int32 -- Stathz int32 -- Profhz int32 -+ Hz int32 -+ Tick int32 -+ Stathz int32 -+ Profhz int32 - } -diff --git a/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm64.go b/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm64.go -index 4e15874..ddee045 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm64.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_openbsd_arm64.go -@@ -1,6 +1,7 @@ - // cgo -godefs -- -fsigned-char types_openbsd.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build arm64 && openbsd - // +build arm64,openbsd - - package unix -@@ -93,10 +94,10 @@ type Statfs_t struct { - F_namemax uint32 - F_owner uint32 - F_ctime uint64 -- F_fstypename [16]int8 -- F_mntonname [90]int8 -- F_mntfromname [90]int8 -- F_mntfromspec [90]int8 -+ F_fstypename [16]byte -+ F_mntonname [90]byte -+ F_mntfromname [90]byte -+ F_mntfromspec [90]byte - _ [2]byte - Mount_info [160]byte - } -@@ -231,6 +232,7 @@ const ( - SizeofSockaddrUnix = 0x6a - SizeofSockaddrDatalink = 0x20 - SizeofLinger = 0x8 -+ SizeofIovec = 0x10 - SizeofIPMreq = 0x8 - SizeofIPv6Mreq = 0x14 - SizeofMsghdr = 0x30 -@@ -430,8 +432,10 @@ type Winsize struct { - - const ( - AT_FDCWD = -0x64 -- AT_SYMLINK_FOLLOW = 0x4 -+ AT_EACCESS = 0x1 - AT_SYMLINK_NOFOLLOW = 0x2 -+ AT_SYMLINK_FOLLOW = 0x4 -+ AT_REMOVEDIR = 0x8 - ) - - type PollFd struct { -@@ -554,12 +558,11 @@ type Uvmexp struct { - Kmapent int32 - } - --const SizeofClockinfo = 0x14 -+const SizeofClockinfo = 0x10 - - type Clockinfo struct { -- Hz int32 -- Tick int32 -- Tickadj int32 -- Stathz int32 -- Profhz int32 -+ Hz int32 -+ Tick int32 -+ Stathz int32 -+ Profhz int32 - } -diff --git a/vendor/golang.org/x/sys/unix/ztypes_openbsd_mips64.go b/vendor/golang.org/x/sys/unix/ztypes_openbsd_mips64.go -new file mode 100644 -index 0000000..eb13d4e ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/ztypes_openbsd_mips64.go -@@ -0,0 +1,568 @@ -+// cgo -godefs -- -fsigned-char types_openbsd.go | go run mkpost.go -+// Code generated by the command above; see README.md. DO NOT EDIT. -+ -+//go:build mips64 && openbsd -+// +build mips64,openbsd -+ -+package unix -+ -+const ( -+ SizeofPtr = 0x8 -+ SizeofShort = 0x2 -+ SizeofInt = 0x4 -+ SizeofLong = 0x8 -+ SizeofLongLong = 0x8 -+) -+ -+type ( -+ _C_short int16 -+ _C_int int32 -+ _C_long int64 -+ _C_long_long int64 -+) -+ -+type Timespec struct { -+ Sec int64 -+ Nsec int64 -+} -+ -+type Timeval struct { -+ Sec int64 -+ Usec int64 -+} -+ -+type Rusage struct { -+ Utime Timeval -+ Stime Timeval -+ Maxrss int64 -+ Ixrss int64 -+ Idrss int64 -+ Isrss int64 -+ Minflt int64 -+ Majflt int64 -+ Nswap int64 -+ Inblock int64 -+ Oublock int64 -+ Msgsnd int64 -+ Msgrcv int64 -+ Nsignals int64 -+ Nvcsw int64 -+ Nivcsw int64 -+} -+ -+type Rlimit struct { -+ Cur uint64 -+ Max uint64 -+} -+ -+type _Gid_t uint32 -+ -+type Stat_t struct { -+ Mode uint32 -+ Dev int32 -+ Ino uint64 -+ Nlink uint32 -+ Uid uint32 -+ Gid uint32 -+ Rdev int32 -+ Atim Timespec -+ Mtim Timespec -+ Ctim Timespec -+ Size int64 -+ Blocks int64 -+ Blksize int32 -+ Flags uint32 -+ Gen uint32 -+ _ Timespec -+} -+ -+type Statfs_t struct { -+ F_flags uint32 -+ F_bsize uint32 -+ F_iosize uint32 -+ F_blocks uint64 -+ F_bfree uint64 -+ F_bavail int64 -+ F_files uint64 -+ F_ffree uint64 -+ F_favail int64 -+ F_syncwrites uint64 -+ F_syncreads uint64 -+ F_asyncwrites uint64 -+ F_asyncreads uint64 -+ F_fsid Fsid -+ F_namemax uint32 -+ F_owner uint32 -+ F_ctime uint64 -+ F_fstypename [16]byte -+ F_mntonname [90]byte -+ F_mntfromname [90]byte -+ F_mntfromspec [90]byte -+ _ [2]byte -+ Mount_info [160]byte -+} -+ -+type Flock_t struct { -+ Start int64 -+ Len int64 -+ Pid int32 -+ Type int16 -+ Whence int16 -+} -+ -+type Dirent struct { -+ Fileno uint64 -+ Off int64 -+ Reclen uint16 -+ Type uint8 -+ Namlen uint8 -+ _ [4]uint8 -+ Name [256]int8 -+} -+ -+type Fsid struct { -+ Val [2]int32 -+} -+ -+const ( -+ PathMax = 0x400 -+) -+ -+type RawSockaddrInet4 struct { -+ Len uint8 -+ Family uint8 -+ Port uint16 -+ Addr [4]byte /* in_addr */ -+ Zero [8]int8 -+} -+ -+type RawSockaddrInet6 struct { -+ Len uint8 -+ Family uint8 -+ Port uint16 -+ Flowinfo uint32 -+ Addr [16]byte /* in6_addr */ -+ Scope_id uint32 -+} -+ -+type RawSockaddrUnix struct { -+ Len uint8 -+ Family uint8 -+ Path [104]int8 -+} -+ -+type RawSockaddrDatalink struct { -+ Len uint8 -+ Family uint8 -+ Index uint16 -+ Type uint8 -+ Nlen uint8 -+ Alen uint8 -+ Slen uint8 -+ Data [24]int8 -+} -+ -+type RawSockaddr struct { -+ Len uint8 -+ Family uint8 -+ Data [14]int8 -+} -+ -+type RawSockaddrAny struct { -+ Addr RawSockaddr -+ Pad [92]int8 -+} -+ -+type _Socklen uint32 -+ -+type Linger struct { -+ Onoff int32 -+ Linger int32 -+} -+ -+type Iovec struct { -+ Base *byte -+ Len uint64 -+} -+ -+type IPMreq struct { -+ Multiaddr [4]byte /* in_addr */ -+ Interface [4]byte /* in_addr */ -+} -+ -+type IPv6Mreq struct { -+ Multiaddr [16]byte /* in6_addr */ -+ Interface uint32 -+} -+ -+type Msghdr struct { -+ Name *byte -+ Namelen uint32 -+ Iov *Iovec -+ Iovlen uint32 -+ Control *byte -+ Controllen uint32 -+ Flags int32 -+} -+ -+type Cmsghdr struct { -+ Len uint32 -+ Level int32 -+ Type int32 -+} -+ -+type Inet6Pktinfo struct { -+ Addr [16]byte /* in6_addr */ -+ Ifindex uint32 -+} -+ -+type IPv6MTUInfo struct { -+ Addr RawSockaddrInet6 -+ Mtu uint32 -+} -+ -+type ICMPv6Filter struct { -+ Filt [8]uint32 -+} -+ -+const ( -+ SizeofSockaddrInet4 = 0x10 -+ SizeofSockaddrInet6 = 0x1c -+ SizeofSockaddrAny = 0x6c -+ SizeofSockaddrUnix = 0x6a -+ SizeofSockaddrDatalink = 0x20 -+ SizeofLinger = 0x8 -+ SizeofIovec = 0x10 -+ SizeofIPMreq = 0x8 -+ SizeofIPv6Mreq = 0x14 -+ SizeofMsghdr = 0x30 -+ SizeofCmsghdr = 0xc -+ SizeofInet6Pktinfo = 0x14 -+ SizeofIPv6MTUInfo = 0x20 -+ SizeofICMPv6Filter = 0x20 -+) -+ -+const ( -+ PTRACE_TRACEME = 0x0 -+ PTRACE_CONT = 0x7 -+ PTRACE_KILL = 0x8 -+) -+ -+type Kevent_t struct { -+ Ident uint64 -+ Filter int16 -+ Flags uint16 -+ Fflags uint32 -+ Data int64 -+ Udata *byte -+} -+ -+type FdSet struct { -+ Bits [32]uint32 -+} -+ -+const ( -+ SizeofIfMsghdr = 0xa8 -+ SizeofIfData = 0x90 -+ SizeofIfaMsghdr = 0x18 -+ SizeofIfAnnounceMsghdr = 0x1a -+ SizeofRtMsghdr = 0x60 -+ SizeofRtMetrics = 0x38 -+) -+ -+type IfMsghdr struct { -+ Msglen uint16 -+ Version uint8 -+ Type uint8 -+ Hdrlen uint16 -+ Index uint16 -+ Tableid uint16 -+ Pad1 uint8 -+ Pad2 uint8 -+ Addrs int32 -+ Flags int32 -+ Xflags int32 -+ Data IfData -+} -+ -+type IfData struct { -+ Type uint8 -+ Addrlen uint8 -+ Hdrlen uint8 -+ Link_state uint8 -+ Mtu uint32 -+ Metric uint32 -+ Rdomain uint32 -+ Baudrate uint64 -+ Ipackets uint64 -+ Ierrors uint64 -+ Opackets uint64 -+ Oerrors uint64 -+ Collisions uint64 -+ Ibytes uint64 -+ Obytes uint64 -+ Imcasts uint64 -+ Omcasts uint64 -+ Iqdrops uint64 -+ Oqdrops uint64 -+ Noproto uint64 -+ Capabilities uint32 -+ Lastchange Timeval -+} -+ -+type IfaMsghdr struct { -+ Msglen uint16 -+ Version uint8 -+ Type uint8 -+ Hdrlen uint16 -+ Index uint16 -+ Tableid uint16 -+ Pad1 uint8 -+ Pad2 uint8 -+ Addrs int32 -+ Flags int32 -+ Metric int32 -+} -+ -+type IfAnnounceMsghdr struct { -+ Msglen uint16 -+ Version uint8 -+ Type uint8 -+ Hdrlen uint16 -+ Index uint16 -+ What uint16 -+ Name [16]int8 -+} -+ -+type RtMsghdr struct { -+ Msglen uint16 -+ Version uint8 -+ Type uint8 -+ Hdrlen uint16 -+ Index uint16 -+ Tableid uint16 -+ Priority uint8 -+ Mpls uint8 -+ Addrs int32 -+ Flags int32 -+ Fmask int32 -+ Pid int32 -+ Seq int32 -+ Errno int32 -+ Inits uint32 -+ Rmx RtMetrics -+} -+ -+type RtMetrics struct { -+ Pksent uint64 -+ Expire int64 -+ Locks uint32 -+ Mtu uint32 -+ Refcnt uint32 -+ Hopcount uint32 -+ Recvpipe uint32 -+ Sendpipe uint32 -+ Ssthresh uint32 -+ Rtt uint32 -+ Rttvar uint32 -+ Pad uint32 -+} -+ -+type Mclpool struct{} -+ -+const ( -+ SizeofBpfVersion = 0x4 -+ SizeofBpfStat = 0x8 -+ SizeofBpfProgram = 0x10 -+ SizeofBpfInsn = 0x8 -+ SizeofBpfHdr = 0x14 -+) -+ -+type BpfVersion struct { -+ Major uint16 -+ Minor uint16 -+} -+ -+type BpfStat struct { -+ Recv uint32 -+ Drop uint32 -+} -+ -+type BpfProgram struct { -+ Len uint32 -+ Insns *BpfInsn -+} -+ -+type BpfInsn struct { -+ Code uint16 -+ Jt uint8 -+ Jf uint8 -+ K uint32 -+} -+ -+type BpfHdr struct { -+ Tstamp BpfTimeval -+ Caplen uint32 -+ Datalen uint32 -+ Hdrlen uint16 -+ _ [2]byte -+} -+ -+type BpfTimeval struct { -+ Sec uint32 -+ Usec uint32 -+} -+ -+type Termios struct { -+ Iflag uint32 -+ Oflag uint32 -+ Cflag uint32 -+ Lflag uint32 -+ Cc [20]uint8 -+ Ispeed int32 -+ Ospeed int32 -+} -+ -+type Winsize struct { -+ Row uint16 -+ Col uint16 -+ Xpixel uint16 -+ Ypixel uint16 -+} -+ -+const ( -+ AT_FDCWD = -0x64 -+ AT_EACCESS = 0x1 -+ AT_SYMLINK_NOFOLLOW = 0x2 -+ AT_SYMLINK_FOLLOW = 0x4 -+ AT_REMOVEDIR = 0x8 -+) -+ -+type PollFd struct { -+ Fd int32 -+ Events int16 -+ Revents int16 -+} -+ -+const ( -+ POLLERR = 0x8 -+ POLLHUP = 0x10 -+ POLLIN = 0x1 -+ POLLNVAL = 0x20 -+ POLLOUT = 0x4 -+ POLLPRI = 0x2 -+ POLLRDBAND = 0x80 -+ POLLRDNORM = 0x40 -+ POLLWRBAND = 0x100 -+ POLLWRNORM = 0x4 -+) -+ -+type Sigset_t uint32 -+ -+type Utsname struct { -+ Sysname [256]byte -+ Nodename [256]byte -+ Release [256]byte -+ Version [256]byte -+ Machine [256]byte -+} -+ -+const SizeofUvmexp = 0x158 -+ -+type Uvmexp struct { -+ Pagesize int32 -+ Pagemask int32 -+ Pageshift int32 -+ Npages int32 -+ Free int32 -+ Active int32 -+ Inactive int32 -+ Paging int32 -+ Wired int32 -+ Zeropages int32 -+ Reserve_pagedaemon int32 -+ Reserve_kernel int32 -+ Unused01 int32 -+ Vnodepages int32 -+ Vtextpages int32 -+ Freemin int32 -+ Freetarg int32 -+ Inactarg int32 -+ Wiredmax int32 -+ Anonmin int32 -+ Vtextmin int32 -+ Vnodemin int32 -+ Anonminpct int32 -+ Vtextminpct int32 -+ Vnodeminpct int32 -+ Nswapdev int32 -+ Swpages int32 -+ Swpginuse int32 -+ Swpgonly int32 -+ Nswget int32 -+ Nanon int32 -+ Unused05 int32 -+ Unused06 int32 -+ Faults int32 -+ Traps int32 -+ Intrs int32 -+ Swtch int32 -+ Softs int32 -+ Syscalls int32 -+ Pageins int32 -+ Unused07 int32 -+ Unused08 int32 -+ Pgswapin int32 -+ Pgswapout int32 -+ Forks int32 -+ Forks_ppwait int32 -+ Forks_sharevm int32 -+ Pga_zerohit int32 -+ Pga_zeromiss int32 -+ Unused09 int32 -+ Fltnoram int32 -+ Fltnoanon int32 -+ Fltnoamap int32 -+ Fltpgwait int32 -+ Fltpgrele int32 -+ Fltrelck int32 -+ Fltrelckok int32 -+ Fltanget int32 -+ Fltanretry int32 -+ Fltamcopy int32 -+ Fltnamap int32 -+ Fltnomap int32 -+ Fltlget int32 -+ Fltget int32 -+ Flt_anon int32 -+ Flt_acow int32 -+ Flt_obj int32 -+ Flt_prcopy int32 -+ Flt_przero int32 -+ Pdwoke int32 -+ Pdrevs int32 -+ Pdswout int32 -+ Pdfreed int32 -+ Pdscans int32 -+ Pdanscan int32 -+ Pdobscan int32 -+ Pdreact int32 -+ Pdbusy int32 -+ Pdpageouts int32 -+ Pdpending int32 -+ Pddeact int32 -+ Unused11 int32 -+ Unused12 int32 -+ Unused13 int32 -+ Fpswtch int32 -+ Kmapent int32 -+} -+ -+const SizeofClockinfo = 0x10 -+ -+type Clockinfo struct { -+ Hz int32 -+ Tick int32 -+ Stathz int32 -+ Profhz int32 -+} -diff --git a/vendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go b/vendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go -index 23ed9fe..c1a9b83 100644 ---- a/vendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go -+++ b/vendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go -@@ -1,6 +1,7 @@ - // cgo -godefs types_solaris.go | go run mkpost.go - // Code generated by the command above; see README.md. DO NOT EDIT. - -+//go:build amd64 && solaris - // +build amd64,solaris - - package unix -@@ -88,7 +89,6 @@ type Stat_t struct { - Mtim Timespec - Ctim Timespec - Blksize int32 -- _ [4]byte - Blocks int64 - Fstype [16]int8 - } -@@ -96,7 +96,6 @@ type Stat_t struct { - type Flock_t struct { - Type int16 - Whence int16 -- _ [4]byte - Start int64 - Len int64 - Sysid int32 -@@ -138,12 +137,12 @@ type RawSockaddrInet4 struct { - } - - type RawSockaddrInet6 struct { -- Family uint16 -- Port uint16 -- Flowinfo uint32 -- Addr [16]byte /* in6_addr */ -- Scope_id uint32 -- X__sin6_src_id uint32 -+ Family uint16 -+ Port uint16 -+ Flowinfo uint32 -+ Addr [16]byte /* in6_addr */ -+ Scope_id uint32 -+ _ uint32 - } - - type RawSockaddrUnix struct { -@@ -179,7 +178,7 @@ type Linger struct { - } - - type Iovec struct { -- Base *int8 -+ Base *byte - Len uint64 - } - -@@ -196,10 +195,8 @@ type IPv6Mreq struct { - type Msghdr struct { - Name *byte - Namelen uint32 -- _ [4]byte - Iov *Iovec - Iovlen int32 -- _ [4]byte - Accrights *int8 - Accrightslen int32 - _ [4]byte -@@ -228,7 +225,7 @@ type IPv6MTUInfo struct { - } - - type ICMPv6Filter struct { -- X__icmp6_filt [8]uint32 -+ Filt [8]uint32 - } - - const ( -@@ -238,6 +235,7 @@ const ( - SizeofSockaddrUnix = 0x6e - SizeofSockaddrDatalink = 0xfc - SizeofLinger = 0x8 -+ SizeofIovec = 0x10 - SizeofIPMreq = 0x8 - SizeofIPv6Mreq = 0x14 - SizeofMsghdr = 0x30 -@@ -291,7 +289,6 @@ type IfMsghdr struct { - Addrs int32 - Flags int32 - Index uint16 -- _ [2]byte - Data IfData - } - -@@ -299,7 +296,6 @@ type IfData struct { - Type uint8 - Addrlen uint8 - Hdrlen uint8 -- _ [1]byte - Mtu uint32 - Metric uint32 - Baudrate uint32 -@@ -324,7 +320,6 @@ type IfaMsghdr struct { - Addrs int32 - Flags int32 - Index uint16 -- _ [2]byte - Metric int32 - } - -@@ -333,7 +328,6 @@ type RtMsghdr struct { - Version uint8 - Type uint8 - Index uint16 -- _ [2]byte - Flags int32 - Addrs int32 - Pid int32 -@@ -371,15 +365,14 @@ type BpfVersion struct { - } - - type BpfStat struct { -- Recv uint64 -- Drop uint64 -- Capt uint64 -- Padding [13]uint64 -+ Recv uint64 -+ Drop uint64 -+ Capt uint64 -+ _ [13]uint64 - } - - type BpfProgram struct { - Len uint32 -- _ [4]byte - Insns *BpfInsn - } - -@@ -447,3 +440,43 @@ const ( - POLLWRBAND = 0x100 - POLLWRNORM = 0x4 - ) -+ -+type fileObj struct { -+ Atim Timespec -+ Mtim Timespec -+ Ctim Timespec -+ Pad [3]uint64 -+ Name *int8 -+} -+ -+type portEvent struct { -+ Events int32 -+ Source uint16 -+ Pad uint16 -+ Object uint64 -+ User *byte -+} -+ -+const ( -+ PORT_SOURCE_AIO = 0x1 -+ PORT_SOURCE_TIMER = 0x2 -+ PORT_SOURCE_USER = 0x3 -+ PORT_SOURCE_FD = 0x4 -+ PORT_SOURCE_ALERT = 0x5 -+ PORT_SOURCE_MQ = 0x6 -+ PORT_SOURCE_FILE = 0x7 -+ PORT_ALERT_SET = 0x1 -+ PORT_ALERT_UPDATE = 0x2 -+ PORT_ALERT_INVALID = 0x3 -+ FILE_ACCESS = 0x1 -+ FILE_MODIFIED = 0x2 -+ FILE_ATTRIB = 0x4 -+ FILE_TRUNC = 0x100000 -+ FILE_NOFOLLOW = 0x10000000 -+ FILE_DELETE = 0x10 -+ FILE_RENAME_TO = 0x20 -+ FILE_RENAME_FROM = 0x40 -+ UNMOUNTED = 0x20000000 -+ MOUNTEDOVER = 0x40000000 -+ FILE_EXCEPTION = 0x60000070 -+) -diff --git a/vendor/golang.org/x/sys/unix/ztypes_zos_s390x.go b/vendor/golang.org/x/sys/unix/ztypes_zos_s390x.go -new file mode 100644 -index 0000000..4ab638c ---- /dev/null -+++ b/vendor/golang.org/x/sys/unix/ztypes_zos_s390x.go -@@ -0,0 +1,406 @@ -+// Copyright 2020 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+//go:build zos && s390x -+// +build zos,s390x -+ -+// Hand edited based on ztypes_linux_s390x.go -+// TODO: auto-generate. -+ -+package unix -+ -+const ( -+ SizeofPtr = 0x8 -+ SizeofShort = 0x2 -+ SizeofInt = 0x4 -+ SizeofLong = 0x8 -+ SizeofLongLong = 0x8 -+ PathMax = 0x1000 -+) -+ -+const ( -+ SizeofSockaddrAny = 128 -+ SizeofCmsghdr = 12 -+ SizeofIPMreq = 8 -+ SizeofIPv6Mreq = 20 -+ SizeofICMPv6Filter = 32 -+ SizeofIPv6MTUInfo = 32 -+ SizeofLinger = 8 -+ SizeofSockaddrInet4 = 16 -+ SizeofSockaddrInet6 = 28 -+ SizeofTCPInfo = 0x68 -+) -+ -+type ( -+ _C_short int16 -+ _C_int int32 -+ _C_long int64 -+ _C_long_long int64 -+) -+ -+type Timespec struct { -+ Sec int64 -+ Nsec int64 -+} -+ -+type Timeval struct { -+ Sec int64 -+ Usec int64 -+} -+ -+type timeval_zos struct { //correct (with padding and all) -+ Sec int64 -+ _ [4]byte // pad -+ Usec int32 -+} -+ -+type Tms struct { //clock_t is 4-byte unsigned int in zos -+ Utime uint32 -+ Stime uint32 -+ Cutime uint32 -+ Cstime uint32 -+} -+ -+type Time_t int64 -+ -+type Utimbuf struct { -+ Actime int64 -+ Modtime int64 -+} -+ -+type Utsname struct { -+ Sysname [65]byte -+ Nodename [65]byte -+ Release [65]byte -+ Version [65]byte -+ Machine [65]byte -+ Domainname [65]byte -+} -+ -+type RawSockaddrInet4 struct { -+ Len uint8 -+ Family uint8 -+ Port uint16 -+ Addr [4]byte /* in_addr */ -+ Zero [8]uint8 -+} -+ -+type RawSockaddrInet6 struct { -+ Len uint8 -+ Family uint8 -+ Port uint16 -+ Flowinfo uint32 -+ Addr [16]byte /* in6_addr */ -+ Scope_id uint32 -+} -+ -+type RawSockaddrUnix struct { -+ Len uint8 -+ Family uint8 -+ Path [108]int8 -+} -+ -+type RawSockaddr struct { -+ Len uint8 -+ Family uint8 -+ Data [14]uint8 -+} -+ -+type RawSockaddrAny struct { -+ Addr RawSockaddr -+ _ [112]uint8 // pad -+} -+ -+type _Socklen uint32 -+ -+type Linger struct { -+ Onoff int32 -+ Linger int32 -+} -+ -+type Iovec struct { -+ Base *byte -+ Len uint64 -+} -+ -+type IPMreq struct { -+ Multiaddr [4]byte /* in_addr */ -+ Interface [4]byte /* in_addr */ -+} -+ -+type IPv6Mreq struct { -+ Multiaddr [16]byte /* in6_addr */ -+ Interface uint32 -+} -+ -+type Msghdr struct { -+ Name *byte -+ Iov *Iovec -+ Control *byte -+ Flags int32 -+ Namelen int32 -+ Iovlen int32 -+ Controllen int32 -+} -+ -+type Cmsghdr struct { -+ Len int32 -+ Level int32 -+ Type int32 -+} -+ -+type Inet4Pktinfo struct { -+ Addr [4]byte /* in_addr */ -+ Ifindex uint32 -+} -+ -+type Inet6Pktinfo struct { -+ Addr [16]byte /* in6_addr */ -+ Ifindex uint32 -+} -+ -+type IPv6MTUInfo struct { -+ Addr RawSockaddrInet6 -+ Mtu uint32 -+} -+ -+type ICMPv6Filter struct { -+ Data [8]uint32 -+} -+ -+type TCPInfo struct { -+ State uint8 -+ Ca_state uint8 -+ Retransmits uint8 -+ Probes uint8 -+ Backoff uint8 -+ Options uint8 -+ Rto uint32 -+ Ato uint32 -+ Snd_mss uint32 -+ Rcv_mss uint32 -+ Unacked uint32 -+ Sacked uint32 -+ Lost uint32 -+ Retrans uint32 -+ Fackets uint32 -+ Last_data_sent uint32 -+ Last_ack_sent uint32 -+ Last_data_recv uint32 -+ Last_ack_recv uint32 -+ Pmtu uint32 -+ Rcv_ssthresh uint32 -+ Rtt uint32 -+ Rttvar uint32 -+ Snd_ssthresh uint32 -+ Snd_cwnd uint32 -+ Advmss uint32 -+ Reordering uint32 -+ Rcv_rtt uint32 -+ Rcv_space uint32 -+ Total_retrans uint32 -+} -+ -+type _Gid_t uint32 -+ -+type rusage_zos struct { -+ Utime timeval_zos -+ Stime timeval_zos -+} -+ -+type Rusage struct { -+ Utime Timeval -+ Stime Timeval -+ Maxrss int64 -+ Ixrss int64 -+ Idrss int64 -+ Isrss int64 -+ Minflt int64 -+ Majflt int64 -+ Nswap int64 -+ Inblock int64 -+ Oublock int64 -+ Msgsnd int64 -+ Msgrcv int64 -+ Nsignals int64 -+ Nvcsw int64 -+ Nivcsw int64 -+} -+ -+type Rlimit struct { -+ Cur uint64 -+ Max uint64 -+} -+ -+// { int, short, short } in poll.h -+type PollFd struct { -+ Fd int32 -+ Events int16 -+ Revents int16 -+} -+ -+type Stat_t struct { //Linux Definition -+ Dev uint64 -+ Ino uint64 -+ Nlink uint64 -+ Mode uint32 -+ Uid uint32 -+ Gid uint32 -+ _ int32 -+ Rdev uint64 -+ Size int64 -+ Atim Timespec -+ Mtim Timespec -+ Ctim Timespec -+ Blksize int64 -+ Blocks int64 -+ _ [3]int64 -+} -+ -+type Stat_LE_t struct { -+ _ [4]byte // eye catcher -+ Length uint16 -+ Version uint16 -+ Mode int32 -+ Ino uint32 -+ Dev uint32 -+ Nlink int32 -+ Uid int32 -+ Gid int32 -+ Size int64 -+ Atim31 [4]byte -+ Mtim31 [4]byte -+ Ctim31 [4]byte -+ Rdev uint32 -+ Auditoraudit uint32 -+ Useraudit uint32 -+ Blksize int32 -+ Creatim31 [4]byte -+ AuditID [16]byte -+ _ [4]byte // rsrvd1 -+ File_tag struct { -+ Ccsid uint16 -+ Txtflag uint16 // aggregating Txflag:1 deferred:1 rsvflags:14 -+ } -+ CharsetID [8]byte -+ Blocks int64 -+ Genvalue uint32 -+ Reftim31 [4]byte -+ Fid [8]byte -+ Filefmt byte -+ Fspflag2 byte -+ _ [2]byte // rsrvd2 -+ Ctimemsec int32 -+ Seclabel [8]byte -+ _ [4]byte // rsrvd3 -+ _ [4]byte // rsrvd4 -+ Atim Time_t -+ Mtim Time_t -+ Ctim Time_t -+ Creatim Time_t -+ Reftim Time_t -+ _ [24]byte // rsrvd5 -+} -+ -+type Statvfs_t struct { -+ ID [4]byte -+ Len int32 -+ Bsize uint64 -+ Blocks uint64 -+ Usedspace uint64 -+ Bavail uint64 -+ Flag uint64 -+ Maxfilesize int64 -+ _ [16]byte -+ Frsize uint64 -+ Bfree uint64 -+ Files uint32 -+ Ffree uint32 -+ Favail uint32 -+ Namemax31 uint32 -+ Invarsec uint32 -+ _ [4]byte -+ Fsid uint64 -+ Namemax uint64 -+} -+ -+type Statfs_t struct { -+ Type uint32 -+ Bsize uint64 -+ Blocks uint64 -+ Bfree uint64 -+ Bavail uint64 -+ Files uint32 -+ Ffree uint32 -+ Fsid uint64 -+ Namelen uint64 -+ Frsize uint64 -+ Flags uint64 -+} -+ -+type Dirent struct { -+ Reclen uint16 -+ Namlen uint16 -+ Ino uint32 -+ Extra uintptr -+ Name [256]byte -+} -+ -+type FdSet struct { -+ Bits [64]int32 -+} -+ -+// This struct is packed on z/OS so it can't be used directly. -+type Flock_t struct { -+ Type int16 -+ Whence int16 -+ Start int64 -+ Len int64 -+ Pid int32 -+} -+ -+type Termios struct { -+ Cflag uint32 -+ Iflag uint32 -+ Lflag uint32 -+ Oflag uint32 -+ Cc [11]uint8 -+} -+ -+type Winsize struct { -+ Row uint16 -+ Col uint16 -+ Xpixel uint16 -+ Ypixel uint16 -+} -+ -+type W_Mnth struct { -+ Hid [4]byte -+ Size int32 -+ Cur1 int32 //32bit pointer -+ Cur2 int32 //^ -+ Devno uint32 -+ _ [4]byte -+} -+ -+type W_Mntent struct { -+ Fstype uint32 -+ Mode uint32 -+ Dev uint32 -+ Parentdev uint32 -+ Rootino uint32 -+ Status byte -+ Ddname [9]byte -+ Fstname [9]byte -+ Fsname [45]byte -+ Pathlen uint32 -+ Mountpoint [1024]byte -+ Jobname [8]byte -+ PID int32 -+ Parmoffset int32 -+ Parmlen int16 -+ Owner [8]byte -+ Quiesceowner [8]byte -+ _ [38]byte -+} -diff --git a/vendor/golang.org/x/sys/windows/aliases.go b/vendor/golang.org/x/sys/windows/aliases.go -index af3af60..a20ebea 100644 ---- a/vendor/golang.org/x/sys/windows/aliases.go -+++ b/vendor/golang.org/x/sys/windows/aliases.go -@@ -2,8 +2,8 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - --// +build windows --// +build go1.9 -+//go:build windows && go1.9 -+// +build windows,go1.9 - - package windows - -diff --git a/vendor/golang.org/x/sys/windows/dll_windows.go b/vendor/golang.org/x/sys/windows/dll_windows.go -index d777113..115341f 100644 ---- a/vendor/golang.org/x/sys/windows/dll_windows.go -+++ b/vendor/golang.org/x/sys/windows/dll_windows.go -@@ -32,6 +32,8 @@ type DLLError struct { - - func (e *DLLError) Error() string { return e.Msg } - -+func (e *DLLError) Unwrap() error { return e.Err } -+ - // A DLL implements access to a single DLL. - type DLL struct { - Name string -@@ -104,6 +106,35 @@ func (d *DLL) MustFindProc(name string) *Proc { - return p - } - -+// FindProcByOrdinal searches DLL d for procedure by ordinal and returns *Proc -+// if found. It returns an error if search fails. -+func (d *DLL) FindProcByOrdinal(ordinal uintptr) (proc *Proc, err error) { -+ a, e := GetProcAddressByOrdinal(d.Handle, ordinal) -+ name := "#" + itoa(int(ordinal)) -+ if e != nil { -+ return nil, &DLLError{ -+ Err: e, -+ ObjName: name, -+ Msg: "Failed to find " + name + " procedure in " + d.Name + ": " + e.Error(), -+ } -+ } -+ p := &Proc{ -+ Dll: d, -+ Name: name, -+ addr: a, -+ } -+ return p, nil -+} -+ -+// MustFindProcByOrdinal is like FindProcByOrdinal but panics if search fails. -+func (d *DLL) MustFindProcByOrdinal(ordinal uintptr) *Proc { -+ p, e := d.FindProcByOrdinal(ordinal) -+ if e != nil { -+ panic(e) -+ } -+ return p -+} -+ - // Release unloads DLL d from memory. - func (d *DLL) Release() (err error) { - return FreeLibrary(d.Handle) -@@ -360,7 +391,6 @@ func loadLibraryEx(name string, system bool) (*DLL, error) { - var flags uintptr - if system { - if canDoSearchSystem32() { -- const LOAD_LIBRARY_SEARCH_SYSTEM32 = 0x00000800 - flags = LOAD_LIBRARY_SEARCH_SYSTEM32 - } else if isBaseName(name) { - // WindowsXP or unpatched Windows machine -diff --git a/vendor/golang.org/x/sys/windows/empty.s b/vendor/golang.org/x/sys/windows/empty.s -index 69309e4..fdbbbcd 100644 ---- a/vendor/golang.org/x/sys/windows/empty.s -+++ b/vendor/golang.org/x/sys/windows/empty.s -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build !go1.12 - // +build !go1.12 - - // This file is here to allow bodyless functions with go:linkname for Go 1.11 -diff --git a/vendor/golang.org/x/sys/windows/env_windows.go b/vendor/golang.org/x/sys/windows/env_windows.go -index f482a9f..92ac05f 100644 ---- a/vendor/golang.org/x/sys/windows/env_windows.go -+++ b/vendor/golang.org/x/sys/windows/env_windows.go -@@ -8,7 +8,6 @@ package windows - - import ( - "syscall" -- "unicode/utf16" - "unsafe" - ) - -@@ -40,17 +39,11 @@ func (token Token) Environ(inheritExisting bool) (env []string, err error) { - defer DestroyEnvironmentBlock(block) - blockp := uintptr(unsafe.Pointer(block)) - for { -- entry := (*[(1 << 30) - 1]uint16)(unsafe.Pointer(blockp))[:] -- for i, v := range entry { -- if v == 0 { -- entry = entry[:i] -- break -- } -- } -+ entry := UTF16PtrToString((*uint16)(unsafe.Pointer(blockp))) - if len(entry) == 0 { - break - } -- env = append(env, string(utf16.Decode(entry))) -+ env = append(env, entry) - blockp += 2 * (uintptr(len(entry)) + 1) - } - return env, nil -diff --git a/vendor/golang.org/x/sys/windows/eventlog.go b/vendor/golang.org/x/sys/windows/eventlog.go -index 40af946..2cd6064 100644 ---- a/vendor/golang.org/x/sys/windows/eventlog.go -+++ b/vendor/golang.org/x/sys/windows/eventlog.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build windows - // +build windows - - package windows -diff --git a/vendor/golang.org/x/sys/windows/exec_windows.go b/vendor/golang.org/x/sys/windows/exec_windows.go -index 3606c3a..75980fd 100644 ---- a/vendor/golang.org/x/sys/windows/exec_windows.go -+++ b/vendor/golang.org/x/sys/windows/exec_windows.go -@@ -6,15 +6,20 @@ - - package windows - -+import ( -+ errorspkg "errors" -+ "unsafe" -+) -+ - // EscapeArg rewrites command line argument s as prescribed - // in http://msdn.microsoft.com/en-us/library/ms880421. - // This function returns "" (2 double quotes) if s is empty. - // Alternatively, these transformations are done: --// - every back slash (\) is doubled, but only if immediately --// followed by double quote ("); --// - every double quote (") is escaped by back slash (\); --// - finally, s is wrapped with double quotes (arg -> "arg"), --// but only if there is space or tab inside s. -+// - every back slash (\) is doubled, but only if immediately -+// followed by double quote ("); -+// - every double quote (") is escaped by back slash (\); -+// - finally, s is wrapped with double quotes (arg -> "arg"), -+// but only if there is space or tab inside s. - func EscapeArg(s string) string { - if len(s) == 0 { - return "\"\"" -@@ -73,6 +78,40 @@ func EscapeArg(s string) string { - return string(qs[:j]) - } - -+// ComposeCommandLine escapes and joins the given arguments suitable for use as a Windows command line, -+// in CreateProcess's CommandLine argument, CreateService/ChangeServiceConfig's BinaryPathName argument, -+// or any program that uses CommandLineToArgv. -+func ComposeCommandLine(args []string) string { -+ var commandLine string -+ for i := range args { -+ if i > 0 { -+ commandLine += " " -+ } -+ commandLine += EscapeArg(args[i]) -+ } -+ return commandLine -+} -+ -+// DecomposeCommandLine breaks apart its argument command line into unescaped parts using CommandLineToArgv, -+// as gathered from GetCommandLine, QUERY_SERVICE_CONFIG's BinaryPathName argument, or elsewhere that -+// command lines are passed around. -+func DecomposeCommandLine(commandLine string) ([]string, error) { -+ if len(commandLine) == 0 { -+ return []string{}, nil -+ } -+ var argc int32 -+ argv, err := CommandLineToArgv(StringToUTF16Ptr(commandLine), &argc) -+ if err != nil { -+ return nil, err -+ } -+ defer LocalFree(Handle(unsafe.Pointer(argv))) -+ var args []string -+ for _, v := range (*argv)[:argc] { -+ args = append(args, UTF16ToString((*v)[:])) -+ } -+ return args, nil -+} -+ - func CloseOnExec(fd Handle) { - SetHandleInformation(Handle(fd), HANDLE_FLAG_INHERIT, 0) - } -@@ -95,3 +134,45 @@ func FullPath(name string) (path string, err error) { - } - } - } -+ -+// NewProcThreadAttributeList allocates a new ProcThreadAttributeListContainer, with the requested maximum number of attributes. -+func NewProcThreadAttributeList(maxAttrCount uint32) (*ProcThreadAttributeListContainer, error) { -+ var size uintptr -+ err := initializeProcThreadAttributeList(nil, maxAttrCount, 0, &size) -+ if err != ERROR_INSUFFICIENT_BUFFER { -+ if err == nil { -+ return nil, errorspkg.New("unable to query buffer size from InitializeProcThreadAttributeList") -+ } -+ return nil, err -+ } -+ alloc, err := LocalAlloc(LMEM_FIXED, uint32(size)) -+ if err != nil { -+ return nil, err -+ } -+ // size is guaranteed to be ≥1 by InitializeProcThreadAttributeList. -+ al := &ProcThreadAttributeListContainer{data: (*ProcThreadAttributeList)(unsafe.Pointer(alloc))} -+ err = initializeProcThreadAttributeList(al.data, maxAttrCount, 0, &size) -+ if err != nil { -+ return nil, err -+ } -+ return al, err -+} -+ -+// Update modifies the ProcThreadAttributeList using UpdateProcThreadAttribute. -+func (al *ProcThreadAttributeListContainer) Update(attribute uintptr, value unsafe.Pointer, size uintptr) error { -+ al.pointers = append(al.pointers, value) -+ return updateProcThreadAttribute(al.data, 0, attribute, value, size, nil, nil) -+} -+ -+// Delete frees ProcThreadAttributeList's resources. -+func (al *ProcThreadAttributeListContainer) Delete() { -+ deleteProcThreadAttributeList(al.data) -+ LocalFree(Handle(unsafe.Pointer(al.data))) -+ al.data = nil -+ al.pointers = nil -+} -+ -+// List returns the actual ProcThreadAttributeList to be passed to StartupInfoEx. -+func (al *ProcThreadAttributeListContainer) List() *ProcThreadAttributeList { -+ return al.data -+} -diff --git a/vendor/golang.org/x/sys/windows/memory_windows.go b/vendor/golang.org/x/sys/windows/memory_windows.go -index f80a420..6dc0920 100644 ---- a/vendor/golang.org/x/sys/windows/memory_windows.go -+++ b/vendor/golang.org/x/sys/windows/memory_windows.go -@@ -16,11 +16,33 @@ const ( - MEM_RESET_UNDO = 0x01000000 - MEM_LARGE_PAGES = 0x20000000 - -- PAGE_NOACCESS = 0x01 -- PAGE_READONLY = 0x02 -- PAGE_READWRITE = 0x04 -- PAGE_WRITECOPY = 0x08 -- PAGE_EXECUTE_READ = 0x20 -- PAGE_EXECUTE_READWRITE = 0x40 -- PAGE_EXECUTE_WRITECOPY = 0x80 -+ PAGE_NOACCESS = 0x00000001 -+ PAGE_READONLY = 0x00000002 -+ PAGE_READWRITE = 0x00000004 -+ PAGE_WRITECOPY = 0x00000008 -+ PAGE_EXECUTE = 0x00000010 -+ PAGE_EXECUTE_READ = 0x00000020 -+ PAGE_EXECUTE_READWRITE = 0x00000040 -+ PAGE_EXECUTE_WRITECOPY = 0x00000080 -+ PAGE_GUARD = 0x00000100 -+ PAGE_NOCACHE = 0x00000200 -+ PAGE_WRITECOMBINE = 0x00000400 -+ PAGE_TARGETS_INVALID = 0x40000000 -+ PAGE_TARGETS_NO_UPDATE = 0x40000000 -+ -+ QUOTA_LIMITS_HARDWS_MIN_DISABLE = 0x00000002 -+ QUOTA_LIMITS_HARDWS_MIN_ENABLE = 0x00000001 -+ QUOTA_LIMITS_HARDWS_MAX_DISABLE = 0x00000008 -+ QUOTA_LIMITS_HARDWS_MAX_ENABLE = 0x00000004 - ) -+ -+type MemoryBasicInformation struct { -+ BaseAddress uintptr -+ AllocationBase uintptr -+ AllocationProtect uint32 -+ PartitionId uint16 -+ RegionSize uintptr -+ State uint32 -+ Protect uint32 -+ Type uint32 -+} -diff --git a/vendor/golang.org/x/sys/windows/mkerrors.bash b/vendor/golang.org/x/sys/windows/mkerrors.bash -index 2163843..58e0188 100644 ---- a/vendor/golang.org/x/sys/windows/mkerrors.bash -+++ b/vendor/golang.org/x/sys/windows/mkerrors.bash -@@ -9,6 +9,8 @@ shopt -s nullglob - - winerror="$(printf '%s\n' "/mnt/c/Program Files (x86)/Windows Kits/"/*/Include/*/shared/winerror.h | sort -Vr | head -n 1)" - [[ -n $winerror ]] || { echo "Unable to find winerror.h" >&2; exit 1; } -+ntstatus="$(printf '%s\n' "/mnt/c/Program Files (x86)/Windows Kits/"/*/Include/*/shared/ntstatus.h | sort -Vr | head -n 1)" -+[[ -n $ntstatus ]] || { echo "Unable to find ntstatus.h" >&2; exit 1; } - - declare -A errors - -@@ -59,5 +61,10 @@ declare -A errors - echo "$key $vtype = $value" - done < "$winerror" - -+ while read -r line; do -+ [[ $line =~ ^#define\ (STATUS_[^\s]+)\ +\(\(NTSTATUS\)((0x)?[0-9a-fA-F]+)L?\) ]] || continue -+ echo "${BASH_REMATCH[1]} NTStatus = ${BASH_REMATCH[2]}" -+ done < "$ntstatus" -+ - echo ")" - } | gofmt > "zerrors_windows.go" -diff --git a/vendor/golang.org/x/sys/windows/mksyscall.go b/vendor/golang.org/x/sys/windows/mksyscall.go -index 328e3b2..8563f79 100644 ---- a/vendor/golang.org/x/sys/windows/mksyscall.go -+++ b/vendor/golang.org/x/sys/windows/mksyscall.go -@@ -2,8 +2,9 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build generate - // +build generate - - package windows - --//go:generate go run golang.org/x/sys/windows/mkwinsyscall -output zsyscall_windows.go eventlog.go service.go syscall_windows.go security_windows.go -+//go:generate go run golang.org/x/sys/windows/mkwinsyscall -output zsyscall_windows.go eventlog.go service.go syscall_windows.go security_windows.go setupapi_windows.go -diff --git a/vendor/golang.org/x/sys/windows/race.go b/vendor/golang.org/x/sys/windows/race.go -index a74e3e2..9196b08 100644 ---- a/vendor/golang.org/x/sys/windows/race.go -+++ b/vendor/golang.org/x/sys/windows/race.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build windows && race - // +build windows,race - - package windows -diff --git a/vendor/golang.org/x/sys/windows/race0.go b/vendor/golang.org/x/sys/windows/race0.go -index e44a3cb..7bae481 100644 ---- a/vendor/golang.org/x/sys/windows/race0.go -+++ b/vendor/golang.org/x/sys/windows/race0.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build windows && !race - // +build windows,!race - - package windows -diff --git a/vendor/golang.org/x/sys/windows/security_windows.go b/vendor/golang.org/x/sys/windows/security_windows.go -index 4b6eff1..d414ef1 100644 ---- a/vendor/golang.org/x/sys/windows/security_windows.go -+++ b/vendor/golang.org/x/sys/windows/security_windows.go -@@ -7,6 +7,8 @@ package windows - import ( - "syscall" - "unsafe" -+ -+ "golang.org/x/sys/internal/unsafeheader" - ) - - const ( -@@ -622,6 +624,7 @@ func (tml *Tokenmandatorylabel) Size() uint32 { - - // Authorization Functions - //sys checkTokenMembership(tokenHandle Token, sidToCheck *SID, isMember *int32) (err error) = advapi32.CheckTokenMembership -+//sys isTokenRestricted(tokenHandle Token) (ret bool, err error) [!failretval] = advapi32.IsTokenRestricted - //sys OpenProcessToken(process Handle, access uint32, token *Token) (err error) = advapi32.OpenProcessToken - //sys OpenThreadToken(thread Handle, access uint32, openAsSelf bool, token *Token) (err error) = advapi32.OpenThreadToken - //sys ImpersonateSelf(impersonationlevel uint32) (err error) = advapi32.ImpersonateSelf -@@ -835,6 +838,16 @@ func (t Token) IsMember(sid *SID) (bool, error) { - return b != 0, nil - } - -+// IsRestricted reports whether the access token t is a restricted token. -+func (t Token) IsRestricted() (isRestricted bool, err error) { -+ isRestricted, err = isTokenRestricted(t) -+ if !isRestricted && err == syscall.EINVAL { -+ // If err is EINVAL, this returned ERROR_SUCCESS indicating a non-restricted token. -+ err = nil -+ } -+ return -+} -+ - const ( - WTS_CONSOLE_CONNECT = 0x1 - WTS_CONSOLE_DISCONNECT = 0x2 -@@ -876,6 +889,7 @@ type WTS_SESSION_INFO struct { - //sys WTSQueryUserToken(session uint32, token *Token) (err error) = wtsapi32.WTSQueryUserToken - //sys WTSEnumerateSessions(handle Handle, reserved uint32, version uint32, sessions **WTS_SESSION_INFO, count *uint32) (err error) = wtsapi32.WTSEnumerateSessionsW - //sys WTSFreeMemory(ptr uintptr) = wtsapi32.WTSFreeMemory -+//sys WTSGetActiveConsoleSessionId() (sessionID uint32) - - type ACL struct { - aclRevision byte -@@ -895,6 +909,19 @@ type SECURITY_DESCRIPTOR struct { - dacl *ACL - } - -+type SECURITY_QUALITY_OF_SERVICE struct { -+ Length uint32 -+ ImpersonationLevel uint32 -+ ContextTrackingMode byte -+ EffectiveOnly byte -+} -+ -+// Constants for the ContextTrackingMode field of SECURITY_QUALITY_OF_SERVICE. -+const ( -+ SECURITY_STATIC_TRACKING = 0 -+ SECURITY_DYNAMIC_TRACKING = 1 -+) -+ - type SecurityAttributes struct { - Length uint32 - SecurityDescriptor *SECURITY_DESCRIPTOR -@@ -1101,9 +1128,10 @@ type OBJECTS_AND_NAME struct { - } - - //sys getSecurityInfo(handle Handle, objectType SE_OBJECT_TYPE, securityInformation SECURITY_INFORMATION, owner **SID, group **SID, dacl **ACL, sacl **ACL, sd **SECURITY_DESCRIPTOR) (ret error) = advapi32.GetSecurityInfo --//sys SetSecurityInfo(handle Handle, objectType SE_OBJECT_TYPE, securityInformation SECURITY_INFORMATION, owner *SID, group *SID, dacl *ACL, sacl *ACL) = advapi32.SetSecurityInfo -+//sys SetSecurityInfo(handle Handle, objectType SE_OBJECT_TYPE, securityInformation SECURITY_INFORMATION, owner *SID, group *SID, dacl *ACL, sacl *ACL) (ret error) = advapi32.SetSecurityInfo - //sys getNamedSecurityInfo(objectName string, objectType SE_OBJECT_TYPE, securityInformation SECURITY_INFORMATION, owner **SID, group **SID, dacl **ACL, sacl **ACL, sd **SECURITY_DESCRIPTOR) (ret error) = advapi32.GetNamedSecurityInfoW - //sys SetNamedSecurityInfo(objectName string, objectType SE_OBJECT_TYPE, securityInformation SECURITY_INFORMATION, owner *SID, group *SID, dacl *ACL, sacl *ACL) (ret error) = advapi32.SetNamedSecurityInfoW -+//sys SetKernelObjectSecurity(handle Handle, securityInformation SECURITY_INFORMATION, securityDescriptor *SECURITY_DESCRIPTOR) (err error) = advapi32.SetKernelObjectSecurity - - //sys buildSecurityDescriptor(owner *TRUSTEE, group *TRUSTEE, countAccessEntries uint32, accessEntries *EXPLICIT_ACCESS, countAuditEntries uint32, auditEntries *EXPLICIT_ACCESS, oldSecurityDescriptor *SECURITY_DESCRIPTOR, sizeNewSecurityDescriptor *uint32, newSecurityDescriptor **SECURITY_DESCRIPTOR) (ret error) = advapi32.BuildSecurityDescriptorW - //sys initializeSecurityDescriptor(absoluteSD *SECURITY_DESCRIPTOR, revision uint32) (err error) = advapi32.InitializeSecurityDescriptor -@@ -1229,7 +1257,7 @@ func (sd *SECURITY_DESCRIPTOR) String() string { - return "" - } - defer LocalFree(Handle(unsafe.Pointer(sddl))) -- return UTF16ToString((*[(1 << 30) - 1]uint16)(unsafe.Pointer(sddl))[:]) -+ return UTF16PtrToString(sddl) - } - - // ToAbsolute converts a self-relative security descriptor into an absolute one. -@@ -1307,9 +1335,29 @@ func (absoluteSD *SECURITY_DESCRIPTOR) ToSelfRelative() (selfRelativeSD *SECURIT - } - - func (selfRelativeSD *SECURITY_DESCRIPTOR) copySelfRelativeSecurityDescriptor() *SECURITY_DESCRIPTOR { -- sdBytes := make([]byte, selfRelativeSD.Length()) -- copy(sdBytes, (*[(1 << 31) - 1]byte)(unsafe.Pointer(selfRelativeSD))[:len(sdBytes)]) -- return (*SECURITY_DESCRIPTOR)(unsafe.Pointer(&sdBytes[0])) -+ sdLen := int(selfRelativeSD.Length()) -+ const min = int(unsafe.Sizeof(SECURITY_DESCRIPTOR{})) -+ if sdLen < min { -+ sdLen = min -+ } -+ -+ var src []byte -+ h := (*unsafeheader.Slice)(unsafe.Pointer(&src)) -+ h.Data = unsafe.Pointer(selfRelativeSD) -+ h.Len = sdLen -+ h.Cap = sdLen -+ -+ const psize = int(unsafe.Sizeof(uintptr(0))) -+ -+ var dst []byte -+ h = (*unsafeheader.Slice)(unsafe.Pointer(&dst)) -+ alloc := make([]uintptr, (sdLen+psize-1)/psize) -+ h.Data = (*unsafeheader.Slice)(unsafe.Pointer(&alloc)).Data -+ h.Len = sdLen -+ h.Cap = sdLen -+ -+ copy(dst, src) -+ return (*SECURITY_DESCRIPTOR)(unsafe.Pointer(&dst[0])) - } - - // SecurityDescriptorFromString converts an SDDL string describing a security descriptor into a -@@ -1391,6 +1439,6 @@ func ACLFromEntries(explicitEntries []EXPLICIT_ACCESS, mergedACL *ACL) (acl *ACL - } - defer LocalFree(Handle(unsafe.Pointer(winHeapACL))) - aclBytes := make([]byte, winHeapACL.aclSize) -- copy(aclBytes, (*[(1 << 31) - 1]byte)(unsafe.Pointer(winHeapACL))[:len(aclBytes)]) -+ copy(aclBytes, (*[(1 << 31) - 1]byte)(unsafe.Pointer(winHeapACL))[:len(aclBytes):len(aclBytes)]) - return (*ACL)(unsafe.Pointer(&aclBytes[0])), nil - } -diff --git a/vendor/golang.org/x/sys/windows/service.go b/vendor/golang.org/x/sys/windows/service.go -index 847e00b..f8deca8 100644 ---- a/vendor/golang.org/x/sys/windows/service.go -+++ b/vendor/golang.org/x/sys/windows/service.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build windows - // +build windows - - package windows -@@ -16,8 +17,6 @@ const ( - SC_MANAGER_ALL_ACCESS = 0xf003f - ) - --//sys OpenSCManager(machineName *uint16, databaseName *uint16, access uint32) (handle Handle, err error) [failretval==0] = advapi32.OpenSCManagerW -- - const ( - SERVICE_KERNEL_DRIVER = 1 - SERVICE_FILE_SYSTEM_DRIVER = 2 -@@ -65,6 +64,7 @@ const ( - SERVICE_ACCEPT_HARDWAREPROFILECHANGE = 32 - SERVICE_ACCEPT_POWEREVENT = 64 - SERVICE_ACCEPT_SESSIONCHANGE = 128 -+ SERVICE_ACCEPT_PRESHUTDOWN = 256 - - SERVICE_CONTROL_STOP = 1 - SERVICE_CONTROL_PAUSE = 2 -@@ -80,6 +80,7 @@ const ( - SERVICE_CONTROL_HARDWAREPROFILECHANGE = 12 - SERVICE_CONTROL_POWEREVENT = 13 - SERVICE_CONTROL_SESSIONCHANGE = 14 -+ SERVICE_CONTROL_PRESHUTDOWN = 15 - - SERVICE_ACTIVE = 1 - SERVICE_INACTIVE = 2 -@@ -126,6 +127,18 @@ const ( - SERVICE_NOTIFY_CREATED = 0x00000080 - SERVICE_NOTIFY_DELETED = 0x00000100 - SERVICE_NOTIFY_DELETE_PENDING = 0x00000200 -+ -+ SC_EVENT_DATABASE_CHANGE = 0 -+ SC_EVENT_PROPERTY_CHANGE = 1 -+ SC_EVENT_STATUS_CHANGE = 2 -+ -+ SERVICE_START_REASON_DEMAND = 0x00000001 -+ SERVICE_START_REASON_AUTO = 0x00000002 -+ SERVICE_START_REASON_TRIGGER = 0x00000004 -+ SERVICE_START_REASON_RESTART_ON_FAILURE = 0x00000008 -+ SERVICE_START_REASON_DELAYEDAUTO = 0x00000010 -+ -+ SERVICE_DYNAMIC_INFORMATION_LEVEL_START_REASON = 1 - ) - - type SERVICE_STATUS struct { -@@ -210,6 +223,7 @@ type QUERY_SERVICE_LOCK_STATUS struct { - LockDuration uint32 - } - -+//sys OpenSCManager(machineName *uint16, databaseName *uint16, access uint32) (handle Handle, err error) [failretval==0] = advapi32.OpenSCManagerW - //sys CloseServiceHandle(handle Handle) (err error) = advapi32.CloseServiceHandle - //sys CreateService(mgr Handle, serviceName *uint16, displayName *uint16, access uint32, srvType uint32, startType uint32, errCtl uint32, pathName *uint16, loadOrderGroup *uint16, tagId *uint32, dependencies *uint16, serviceStartName *uint16, password *uint16) (handle Handle, err error) [failretval==0] = advapi32.CreateServiceW - //sys OpenService(mgr Handle, serviceName *uint16, access uint32) (handle Handle, err error) [failretval==0] = advapi32.OpenServiceW -@@ -227,3 +241,7 @@ type QUERY_SERVICE_LOCK_STATUS struct { - //sys EnumServicesStatusEx(mgr Handle, infoLevel uint32, serviceType uint32, serviceState uint32, services *byte, bufSize uint32, bytesNeeded *uint32, servicesReturned *uint32, resumeHandle *uint32, groupName *uint16) (err error) = advapi32.EnumServicesStatusExW - //sys QueryServiceStatusEx(service Handle, infoLevel uint32, buff *byte, buffSize uint32, bytesNeeded *uint32) (err error) = advapi32.QueryServiceStatusEx - //sys NotifyServiceStatusChange(service Handle, notifyMask uint32, notifier *SERVICE_NOTIFY) (ret error) = advapi32.NotifyServiceStatusChangeW -+//sys SubscribeServiceChangeNotifications(service Handle, eventType uint32, callback uintptr, callbackCtx uintptr, subscription *uintptr) (ret error) = sechost.SubscribeServiceChangeNotifications? -+//sys UnsubscribeServiceChangeNotifications(subscription uintptr) = sechost.UnsubscribeServiceChangeNotifications? -+//sys RegisterServiceCtrlHandlerEx(serviceName *uint16, handlerProc uintptr, context uintptr) (handle Handle, err error) = advapi32.RegisterServiceCtrlHandlerExW -+//sys QueryServiceDynamicInformation(service Handle, infoLevel uint32, dynamicInfo unsafe.Pointer) (err error) = advapi32.QueryServiceDynamicInformation? -diff --git a/vendor/golang.org/x/sys/windows/setupapi_windows.go b/vendor/golang.org/x/sys/windows/setupapi_windows.go -new file mode 100644 -index 0000000..f812648 ---- /dev/null -+++ b/vendor/golang.org/x/sys/windows/setupapi_windows.go -@@ -0,0 +1,1425 @@ -+// Copyright 2021 The Go Authors. All rights reserved. -+// Use of this source code is governed by a BSD-style -+// license that can be found in the LICENSE file. -+ -+package windows -+ -+import ( -+ "encoding/binary" -+ "errors" -+ "fmt" -+ "runtime" -+ "strings" -+ "syscall" -+ "unsafe" -+) -+ -+// This file contains functions that wrap SetupAPI.dll and CfgMgr32.dll, -+// core system functions for managing hardware devices, drivers, and the PnP tree. -+// Information about these APIs can be found at: -+// https://docs.microsoft.com/en-us/windows-hardware/drivers/install/setupapi -+// https://docs.microsoft.com/en-us/windows/win32/devinst/cfgmgr32- -+ -+const ( -+ ERROR_EXPECTED_SECTION_NAME Errno = 0x20000000 | 0xC0000000 | 0 -+ ERROR_BAD_SECTION_NAME_LINE Errno = 0x20000000 | 0xC0000000 | 1 -+ ERROR_SECTION_NAME_TOO_LONG Errno = 0x20000000 | 0xC0000000 | 2 -+ ERROR_GENERAL_SYNTAX Errno = 0x20000000 | 0xC0000000 | 3 -+ ERROR_WRONG_INF_STYLE Errno = 0x20000000 | 0xC0000000 | 0x100 -+ ERROR_SECTION_NOT_FOUND Errno = 0x20000000 | 0xC0000000 | 0x101 -+ ERROR_LINE_NOT_FOUND Errno = 0x20000000 | 0xC0000000 | 0x102 -+ ERROR_NO_BACKUP Errno = 0x20000000 | 0xC0000000 | 0x103 -+ ERROR_NO_ASSOCIATED_CLASS Errno = 0x20000000 | 0xC0000000 | 0x200 -+ ERROR_CLASS_MISMATCH Errno = 0x20000000 | 0xC0000000 | 0x201 -+ ERROR_DUPLICATE_FOUND Errno = 0x20000000 | 0xC0000000 | 0x202 -+ ERROR_NO_DRIVER_SELECTED Errno = 0x20000000 | 0xC0000000 | 0x203 -+ ERROR_KEY_DOES_NOT_EXIST Errno = 0x20000000 | 0xC0000000 | 0x204 -+ ERROR_INVALID_DEVINST_NAME Errno = 0x20000000 | 0xC0000000 | 0x205 -+ ERROR_INVALID_CLASS Errno = 0x20000000 | 0xC0000000 | 0x206 -+ ERROR_DEVINST_ALREADY_EXISTS Errno = 0x20000000 | 0xC0000000 | 0x207 -+ ERROR_DEVINFO_NOT_REGISTERED Errno = 0x20000000 | 0xC0000000 | 0x208 -+ ERROR_INVALID_REG_PROPERTY Errno = 0x20000000 | 0xC0000000 | 0x209 -+ ERROR_NO_INF Errno = 0x20000000 | 0xC0000000 | 0x20A -+ ERROR_NO_SUCH_DEVINST Errno = 0x20000000 | 0xC0000000 | 0x20B -+ ERROR_CANT_LOAD_CLASS_ICON Errno = 0x20000000 | 0xC0000000 | 0x20C -+ ERROR_INVALID_CLASS_INSTALLER Errno = 0x20000000 | 0xC0000000 | 0x20D -+ ERROR_DI_DO_DEFAULT Errno = 0x20000000 | 0xC0000000 | 0x20E -+ ERROR_DI_NOFILECOPY Errno = 0x20000000 | 0xC0000000 | 0x20F -+ ERROR_INVALID_HWPROFILE Errno = 0x20000000 | 0xC0000000 | 0x210 -+ ERROR_NO_DEVICE_SELECTED Errno = 0x20000000 | 0xC0000000 | 0x211 -+ ERROR_DEVINFO_LIST_LOCKED Errno = 0x20000000 | 0xC0000000 | 0x212 -+ ERROR_DEVINFO_DATA_LOCKED Errno = 0x20000000 | 0xC0000000 | 0x213 -+ ERROR_DI_BAD_PATH Errno = 0x20000000 | 0xC0000000 | 0x214 -+ ERROR_NO_CLASSINSTALL_PARAMS Errno = 0x20000000 | 0xC0000000 | 0x215 -+ ERROR_FILEQUEUE_LOCKED Errno = 0x20000000 | 0xC0000000 | 0x216 -+ ERROR_BAD_SERVICE_INSTALLSECT Errno = 0x20000000 | 0xC0000000 | 0x217 -+ ERROR_NO_CLASS_DRIVER_LIST Errno = 0x20000000 | 0xC0000000 | 0x218 -+ ERROR_NO_ASSOCIATED_SERVICE Errno = 0x20000000 | 0xC0000000 | 0x219 -+ ERROR_NO_DEFAULT_DEVICE_INTERFACE Errno = 0x20000000 | 0xC0000000 | 0x21A -+ ERROR_DEVICE_INTERFACE_ACTIVE Errno = 0x20000000 | 0xC0000000 | 0x21B -+ ERROR_DEVICE_INTERFACE_REMOVED Errno = 0x20000000 | 0xC0000000 | 0x21C -+ ERROR_BAD_INTERFACE_INSTALLSECT Errno = 0x20000000 | 0xC0000000 | 0x21D -+ ERROR_NO_SUCH_INTERFACE_CLASS Errno = 0x20000000 | 0xC0000000 | 0x21E -+ ERROR_INVALID_REFERENCE_STRING Errno = 0x20000000 | 0xC0000000 | 0x21F -+ ERROR_INVALID_MACHINENAME Errno = 0x20000000 | 0xC0000000 | 0x220 -+ ERROR_REMOTE_COMM_FAILURE Errno = 0x20000000 | 0xC0000000 | 0x221 -+ ERROR_MACHINE_UNAVAILABLE Errno = 0x20000000 | 0xC0000000 | 0x222 -+ ERROR_NO_CONFIGMGR_SERVICES Errno = 0x20000000 | 0xC0000000 | 0x223 -+ ERROR_INVALID_PROPPAGE_PROVIDER Errno = 0x20000000 | 0xC0000000 | 0x224 -+ ERROR_NO_SUCH_DEVICE_INTERFACE Errno = 0x20000000 | 0xC0000000 | 0x225 -+ ERROR_DI_POSTPROCESSING_REQUIRED Errno = 0x20000000 | 0xC0000000 | 0x226 -+ ERROR_INVALID_COINSTALLER Errno = 0x20000000 | 0xC0000000 | 0x227 -+ ERROR_NO_COMPAT_DRIVERS Errno = 0x20000000 | 0xC0000000 | 0x228 -+ ERROR_NO_DEVICE_ICON Errno = 0x20000000 | 0xC0000000 | 0x229 -+ ERROR_INVALID_INF_LOGCONFIG Errno = 0x20000000 | 0xC0000000 | 0x22A -+ ERROR_DI_DONT_INSTALL Errno = 0x20000000 | 0xC0000000 | 0x22B -+ ERROR_INVALID_FILTER_DRIVER Errno = 0x20000000 | 0xC0000000 | 0x22C -+ ERROR_NON_WINDOWS_NT_DRIVER Errno = 0x20000000 | 0xC0000000 | 0x22D -+ ERROR_NON_WINDOWS_DRIVER Errno = 0x20000000 | 0xC0000000 | 0x22E -+ ERROR_NO_CATALOG_FOR_OEM_INF Errno = 0x20000000 | 0xC0000000 | 0x22F -+ ERROR_DEVINSTALL_QUEUE_NONNATIVE Errno = 0x20000000 | 0xC0000000 | 0x230 -+ ERROR_NOT_DISABLEABLE Errno = 0x20000000 | 0xC0000000 | 0x231 -+ ERROR_CANT_REMOVE_DEVINST Errno = 0x20000000 | 0xC0000000 | 0x232 -+ ERROR_INVALID_TARGET Errno = 0x20000000 | 0xC0000000 | 0x233 -+ ERROR_DRIVER_NONNATIVE Errno = 0x20000000 | 0xC0000000 | 0x234 -+ ERROR_IN_WOW64 Errno = 0x20000000 | 0xC0000000 | 0x235 -+ ERROR_SET_SYSTEM_RESTORE_POINT Errno = 0x20000000 | 0xC0000000 | 0x236 -+ ERROR_SCE_DISABLED Errno = 0x20000000 | 0xC0000000 | 0x238 -+ ERROR_UNKNOWN_EXCEPTION Errno = 0x20000000 | 0xC0000000 | 0x239 -+ ERROR_PNP_REGISTRY_ERROR Errno = 0x20000000 | 0xC0000000 | 0x23A -+ ERROR_REMOTE_REQUEST_UNSUPPORTED Errno = 0x20000000 | 0xC0000000 | 0x23B -+ ERROR_NOT_AN_INSTALLED_OEM_INF Errno = 0x20000000 | 0xC0000000 | 0x23C -+ ERROR_INF_IN_USE_BY_DEVICES Errno = 0x20000000 | 0xC0000000 | 0x23D -+ ERROR_DI_FUNCTION_OBSOLETE Errno = 0x20000000 | 0xC0000000 | 0x23E -+ ERROR_NO_AUTHENTICODE_CATALOG Errno = 0x20000000 | 0xC0000000 | 0x23F -+ ERROR_AUTHENTICODE_DISALLOWED Errno = 0x20000000 | 0xC0000000 | 0x240 -+ ERROR_AUTHENTICODE_TRUSTED_PUBLISHER Errno = 0x20000000 | 0xC0000000 | 0x241 -+ ERROR_AUTHENTICODE_TRUST_NOT_ESTABLISHED Errno = 0x20000000 | 0xC0000000 | 0x242 -+ ERROR_AUTHENTICODE_PUBLISHER_NOT_TRUSTED Errno = 0x20000000 | 0xC0000000 | 0x243 -+ ERROR_SIGNATURE_OSATTRIBUTE_MISMATCH Errno = 0x20000000 | 0xC0000000 | 0x244 -+ ERROR_ONLY_VALIDATE_VIA_AUTHENTICODE Errno = 0x20000000 | 0xC0000000 | 0x245 -+ ERROR_DEVICE_INSTALLER_NOT_READY Errno = 0x20000000 | 0xC0000000 | 0x246 -+ ERROR_DRIVER_STORE_ADD_FAILED Errno = 0x20000000 | 0xC0000000 | 0x247 -+ ERROR_DEVICE_INSTALL_BLOCKED Errno = 0x20000000 | 0xC0000000 | 0x248 -+ ERROR_DRIVER_INSTALL_BLOCKED Errno = 0x20000000 | 0xC0000000 | 0x249 -+ ERROR_WRONG_INF_TYPE Errno = 0x20000000 | 0xC0000000 | 0x24A -+ ERROR_FILE_HASH_NOT_IN_CATALOG Errno = 0x20000000 | 0xC0000000 | 0x24B -+ ERROR_DRIVER_STORE_DELETE_FAILED Errno = 0x20000000 | 0xC0000000 | 0x24C -+ ERROR_UNRECOVERABLE_STACK_OVERFLOW Errno = 0x20000000 | 0xC0000000 | 0x300 -+ EXCEPTION_SPAPI_UNRECOVERABLE_STACK_OVERFLOW Errno = ERROR_UNRECOVERABLE_STACK_OVERFLOW -+ ERROR_NO_DEFAULT_INTERFACE_DEVICE Errno = ERROR_NO_DEFAULT_DEVICE_INTERFACE -+ ERROR_INTERFACE_DEVICE_ACTIVE Errno = ERROR_DEVICE_INTERFACE_ACTIVE -+ ERROR_INTERFACE_DEVICE_REMOVED Errno = ERROR_DEVICE_INTERFACE_REMOVED -+ ERROR_NO_SUCH_INTERFACE_DEVICE Errno = ERROR_NO_SUCH_DEVICE_INTERFACE -+) -+ -+const ( -+ MAX_DEVICE_ID_LEN = 200 -+ MAX_DEVNODE_ID_LEN = MAX_DEVICE_ID_LEN -+ MAX_GUID_STRING_LEN = 39 // 38 chars + terminator null -+ MAX_CLASS_NAME_LEN = 32 -+ MAX_PROFILE_LEN = 80 -+ MAX_CONFIG_VALUE = 9999 -+ MAX_INSTANCE_VALUE = 9999 -+ CONFIGMG_VERSION = 0x0400 -+) -+ -+// Maximum string length constants -+const ( -+ LINE_LEN = 256 // Windows 9x-compatible maximum for displayable strings coming from a device INF. -+ MAX_INF_STRING_LENGTH = 4096 // Actual maximum size of an INF string (including string substitutions). -+ MAX_INF_SECTION_NAME_LENGTH = 255 // For Windows 9x compatibility, INF section names should be constrained to 32 characters. -+ MAX_TITLE_LEN = 60 -+ MAX_INSTRUCTION_LEN = 256 -+ MAX_LABEL_LEN = 30 -+ MAX_SERVICE_NAME_LEN = 256 -+ MAX_SUBTITLE_LEN = 256 -+) -+ -+const ( -+ // SP_MAX_MACHINENAME_LENGTH defines maximum length of a machine name in the format expected by ConfigMgr32 CM_Connect_Machine (i.e., "\\\\MachineName\0"). -+ SP_MAX_MACHINENAME_LENGTH = MAX_PATH + 3 -+) -+ -+// HSPFILEQ is type for setup file queue -+type HSPFILEQ uintptr -+ -+// DevInfo holds reference to device information set -+type DevInfo Handle -+ -+// DEVINST is a handle usually recognized by cfgmgr32 APIs -+type DEVINST uint32 -+ -+// DevInfoData is a device information structure (references a device instance that is a member of a device information set) -+type DevInfoData struct { -+ size uint32 -+ ClassGUID GUID -+ DevInst DEVINST -+ _ uintptr -+} -+ -+// DevInfoListDetailData is a structure for detailed information on a device information set (used for SetupDiGetDeviceInfoListDetail which supersedes the functionality of SetupDiGetDeviceInfoListClass). -+type DevInfoListDetailData struct { -+ size uint32 // Use unsafeSizeOf method -+ ClassGUID GUID -+ RemoteMachineHandle Handle -+ remoteMachineName [SP_MAX_MACHINENAME_LENGTH]uint16 -+} -+ -+func (*DevInfoListDetailData) unsafeSizeOf() uint32 { -+ if unsafe.Sizeof(uintptr(0)) == 4 { -+ // Windows declares this with pshpack1.h -+ return uint32(unsafe.Offsetof(DevInfoListDetailData{}.remoteMachineName) + unsafe.Sizeof(DevInfoListDetailData{}.remoteMachineName)) -+ } -+ return uint32(unsafe.Sizeof(DevInfoListDetailData{})) -+} -+ -+func (data *DevInfoListDetailData) RemoteMachineName() string { -+ return UTF16ToString(data.remoteMachineName[:]) -+} -+ -+func (data *DevInfoListDetailData) SetRemoteMachineName(remoteMachineName string) error { -+ str, err := UTF16FromString(remoteMachineName) -+ if err != nil { -+ return err -+ } -+ copy(data.remoteMachineName[:], str) -+ return nil -+} -+ -+// DI_FUNCTION is function type for device installer -+type DI_FUNCTION uint32 -+ -+const ( -+ DIF_SELECTDEVICE DI_FUNCTION = 0x00000001 -+ DIF_INSTALLDEVICE DI_FUNCTION = 0x00000002 -+ DIF_ASSIGNRESOURCES DI_FUNCTION = 0x00000003 -+ DIF_PROPERTIES DI_FUNCTION = 0x00000004 -+ DIF_REMOVE DI_FUNCTION = 0x00000005 -+ DIF_FIRSTTIMESETUP DI_FUNCTION = 0x00000006 -+ DIF_FOUNDDEVICE DI_FUNCTION = 0x00000007 -+ DIF_SELECTCLASSDRIVERS DI_FUNCTION = 0x00000008 -+ DIF_VALIDATECLASSDRIVERS DI_FUNCTION = 0x00000009 -+ DIF_INSTALLCLASSDRIVERS DI_FUNCTION = 0x0000000A -+ DIF_CALCDISKSPACE DI_FUNCTION = 0x0000000B -+ DIF_DESTROYPRIVATEDATA DI_FUNCTION = 0x0000000C -+ DIF_VALIDATEDRIVER DI_FUNCTION = 0x0000000D -+ DIF_DETECT DI_FUNCTION = 0x0000000F -+ DIF_INSTALLWIZARD DI_FUNCTION = 0x00000010 -+ DIF_DESTROYWIZARDDATA DI_FUNCTION = 0x00000011 -+ DIF_PROPERTYCHANGE DI_FUNCTION = 0x00000012 -+ DIF_ENABLECLASS DI_FUNCTION = 0x00000013 -+ DIF_DETECTVERIFY DI_FUNCTION = 0x00000014 -+ DIF_INSTALLDEVICEFILES DI_FUNCTION = 0x00000015 -+ DIF_UNREMOVE DI_FUNCTION = 0x00000016 -+ DIF_SELECTBESTCOMPATDRV DI_FUNCTION = 0x00000017 -+ DIF_ALLOW_INSTALL DI_FUNCTION = 0x00000018 -+ DIF_REGISTERDEVICE DI_FUNCTION = 0x00000019 -+ DIF_NEWDEVICEWIZARD_PRESELECT DI_FUNCTION = 0x0000001A -+ DIF_NEWDEVICEWIZARD_SELECT DI_FUNCTION = 0x0000001B -+ DIF_NEWDEVICEWIZARD_PREANALYZE DI_FUNCTION = 0x0000001C -+ DIF_NEWDEVICEWIZARD_POSTANALYZE DI_FUNCTION = 0x0000001D -+ DIF_NEWDEVICEWIZARD_FINISHINSTALL DI_FUNCTION = 0x0000001E -+ DIF_INSTALLINTERFACES DI_FUNCTION = 0x00000020 -+ DIF_DETECTCANCEL DI_FUNCTION = 0x00000021 -+ DIF_REGISTER_COINSTALLERS DI_FUNCTION = 0x00000022 -+ DIF_ADDPROPERTYPAGE_ADVANCED DI_FUNCTION = 0x00000023 -+ DIF_ADDPROPERTYPAGE_BASIC DI_FUNCTION = 0x00000024 -+ DIF_TROUBLESHOOTER DI_FUNCTION = 0x00000026 -+ DIF_POWERMESSAGEWAKE DI_FUNCTION = 0x00000027 -+ DIF_ADDREMOTEPROPERTYPAGE_ADVANCED DI_FUNCTION = 0x00000028 -+ DIF_UPDATEDRIVER_UI DI_FUNCTION = 0x00000029 -+ DIF_FINISHINSTALL_ACTION DI_FUNCTION = 0x0000002A -+) -+ -+// DevInstallParams is device installation parameters structure (associated with a particular device information element, or globally with a device information set) -+type DevInstallParams struct { -+ size uint32 -+ Flags DI_FLAGS -+ FlagsEx DI_FLAGSEX -+ hwndParent uintptr -+ InstallMsgHandler uintptr -+ InstallMsgHandlerContext uintptr -+ FileQueue HSPFILEQ -+ _ uintptr -+ _ uint32 -+ driverPath [MAX_PATH]uint16 -+} -+ -+func (params *DevInstallParams) DriverPath() string { -+ return UTF16ToString(params.driverPath[:]) -+} -+ -+func (params *DevInstallParams) SetDriverPath(driverPath string) error { -+ str, err := UTF16FromString(driverPath) -+ if err != nil { -+ return err -+ } -+ copy(params.driverPath[:], str) -+ return nil -+} -+ -+// DI_FLAGS is SP_DEVINSTALL_PARAMS.Flags values -+type DI_FLAGS uint32 -+ -+const ( -+ // Flags for choosing a device -+ DI_SHOWOEM DI_FLAGS = 0x00000001 // support Other... button -+ DI_SHOWCOMPAT DI_FLAGS = 0x00000002 // show compatibility list -+ DI_SHOWCLASS DI_FLAGS = 0x00000004 // show class list -+ DI_SHOWALL DI_FLAGS = 0x00000007 // both class & compat list shown -+ DI_NOVCP DI_FLAGS = 0x00000008 // don't create a new copy queue--use caller-supplied FileQueue -+ DI_DIDCOMPAT DI_FLAGS = 0x00000010 // Searched for compatible devices -+ DI_DIDCLASS DI_FLAGS = 0x00000020 // Searched for class devices -+ DI_AUTOASSIGNRES DI_FLAGS = 0x00000040 // No UI for resources if possible -+ -+ // Flags returned by DiInstallDevice to indicate need to reboot/restart -+ DI_NEEDRESTART DI_FLAGS = 0x00000080 // Reboot required to take effect -+ DI_NEEDREBOOT DI_FLAGS = 0x00000100 // "" -+ -+ // Flags for device installation -+ DI_NOBROWSE DI_FLAGS = 0x00000200 // no Browse... in InsertDisk -+ -+ // Flags set by DiBuildDriverInfoList -+ DI_MULTMFGS DI_FLAGS = 0x00000400 // Set if multiple manufacturers in class driver list -+ -+ // Flag indicates that device is disabled -+ DI_DISABLED DI_FLAGS = 0x00000800 // Set if device disabled -+ -+ // Flags for Device/Class Properties -+ DI_GENERALPAGE_ADDED DI_FLAGS = 0x00001000 -+ DI_RESOURCEPAGE_ADDED DI_FLAGS = 0x00002000 -+ -+ // Flag to indicate the setting properties for this Device (or class) caused a change so the Dev Mgr UI probably needs to be updated. -+ DI_PROPERTIES_CHANGE DI_FLAGS = 0x00004000 -+ -+ // Flag to indicate that the sorting from the INF file should be used. -+ DI_INF_IS_SORTED DI_FLAGS = 0x00008000 -+ -+ // Flag to indicate that only the INF specified by SP_DEVINSTALL_PARAMS.DriverPath should be searched. -+ DI_ENUMSINGLEINF DI_FLAGS = 0x00010000 -+ -+ // Flag that prevents ConfigMgr from removing/re-enumerating devices during device -+ // registration, installation, and deletion. -+ DI_DONOTCALLCONFIGMG DI_FLAGS = 0x00020000 -+ -+ // The following flag can be used to install a device disabled -+ DI_INSTALLDISABLED DI_FLAGS = 0x00040000 -+ -+ // Flag that causes SetupDiBuildDriverInfoList to build a device's compatible driver -+ // list from its existing class driver list, instead of the normal INF search. -+ DI_COMPAT_FROM_CLASS DI_FLAGS = 0x00080000 -+ -+ // This flag is set if the Class Install params should be used. -+ DI_CLASSINSTALLPARAMS DI_FLAGS = 0x00100000 -+ -+ // This flag is set if the caller of DiCallClassInstaller does NOT want the internal default action performed if the Class installer returns ERROR_DI_DO_DEFAULT. -+ DI_NODI_DEFAULTACTION DI_FLAGS = 0x00200000 -+ -+ // Flags for device installation -+ DI_QUIETINSTALL DI_FLAGS = 0x00800000 // don't confuse the user with questions or excess info -+ DI_NOFILECOPY DI_FLAGS = 0x01000000 // No file Copy necessary -+ DI_FORCECOPY DI_FLAGS = 0x02000000 // Force files to be copied from install path -+ DI_DRIVERPAGE_ADDED DI_FLAGS = 0x04000000 // Prop provider added Driver page. -+ DI_USECI_SELECTSTRINGS DI_FLAGS = 0x08000000 // Use Class Installer Provided strings in the Select Device Dlg -+ DI_OVERRIDE_INFFLAGS DI_FLAGS = 0x10000000 // Override INF flags -+ DI_PROPS_NOCHANGEUSAGE DI_FLAGS = 0x20000000 // No Enable/Disable in General Props -+ -+ DI_NOSELECTICONS DI_FLAGS = 0x40000000 // No small icons in select device dialogs -+ -+ DI_NOWRITE_IDS DI_FLAGS = 0x80000000 // Don't write HW & Compat IDs on install -+) -+ -+// DI_FLAGSEX is SP_DEVINSTALL_PARAMS.FlagsEx values -+type DI_FLAGSEX uint32 -+ -+const ( -+ DI_FLAGSEX_CI_FAILED DI_FLAGSEX = 0x00000004 // Failed to Load/Call class installer -+ DI_FLAGSEX_FINISHINSTALL_ACTION DI_FLAGSEX = 0x00000008 // Class/co-installer wants to get a DIF_FINISH_INSTALL action in client context. -+ DI_FLAGSEX_DIDINFOLIST DI_FLAGSEX = 0x00000010 // Did the Class Info List -+ DI_FLAGSEX_DIDCOMPATINFO DI_FLAGSEX = 0x00000020 // Did the Compat Info List -+ DI_FLAGSEX_FILTERCLASSES DI_FLAGSEX = 0x00000040 -+ DI_FLAGSEX_SETFAILEDINSTALL DI_FLAGSEX = 0x00000080 -+ DI_FLAGSEX_DEVICECHANGE DI_FLAGSEX = 0x00000100 -+ DI_FLAGSEX_ALWAYSWRITEIDS DI_FLAGSEX = 0x00000200 -+ DI_FLAGSEX_PROPCHANGE_PENDING DI_FLAGSEX = 0x00000400 // One or more device property sheets have had changes made to them, and need to have a DIF_PROPERTYCHANGE occur. -+ DI_FLAGSEX_ALLOWEXCLUDEDDRVS DI_FLAGSEX = 0x00000800 -+ DI_FLAGSEX_NOUIONQUERYREMOVE DI_FLAGSEX = 0x00001000 -+ DI_FLAGSEX_USECLASSFORCOMPAT DI_FLAGSEX = 0x00002000 // Use the device's class when building compat drv list. (Ignored if DI_COMPAT_FROM_CLASS flag is specified.) -+ DI_FLAGSEX_NO_DRVREG_MODIFY DI_FLAGSEX = 0x00008000 // Don't run AddReg and DelReg for device's software (driver) key. -+ DI_FLAGSEX_IN_SYSTEM_SETUP DI_FLAGSEX = 0x00010000 // Installation is occurring during initial system setup. -+ DI_FLAGSEX_INET_DRIVER DI_FLAGSEX = 0x00020000 // Driver came from Windows Update -+ DI_FLAGSEX_APPENDDRIVERLIST DI_FLAGSEX = 0x00040000 // Cause SetupDiBuildDriverInfoList to append a new driver list to an existing list. -+ DI_FLAGSEX_PREINSTALLBACKUP DI_FLAGSEX = 0x00080000 // not used -+ DI_FLAGSEX_BACKUPONREPLACE DI_FLAGSEX = 0x00100000 // not used -+ DI_FLAGSEX_DRIVERLIST_FROM_URL DI_FLAGSEX = 0x00200000 // build driver list from INF(s) retrieved from URL specified in SP_DEVINSTALL_PARAMS.DriverPath (empty string means Windows Update website) -+ DI_FLAGSEX_EXCLUDE_OLD_INET_DRIVERS DI_FLAGSEX = 0x00800000 // Don't include old Internet drivers when building a driver list. Ignored on Windows Vista and later. -+ DI_FLAGSEX_POWERPAGE_ADDED DI_FLAGSEX = 0x01000000 // class installer added their own power page -+ DI_FLAGSEX_FILTERSIMILARDRIVERS DI_FLAGSEX = 0x02000000 // only include similar drivers in class list -+ DI_FLAGSEX_INSTALLEDDRIVER DI_FLAGSEX = 0x04000000 // only add the installed driver to the class or compat driver list. Used in calls to SetupDiBuildDriverInfoList -+ DI_FLAGSEX_NO_CLASSLIST_NODE_MERGE DI_FLAGSEX = 0x08000000 // Don't remove identical driver nodes from the class list -+ DI_FLAGSEX_ALTPLATFORM_DRVSEARCH DI_FLAGSEX = 0x10000000 // Build driver list based on alternate platform information specified in associated file queue -+ DI_FLAGSEX_RESTART_DEVICE_ONLY DI_FLAGSEX = 0x20000000 // only restart the device drivers are being installed on as opposed to restarting all devices using those drivers. -+ DI_FLAGSEX_RECURSIVESEARCH DI_FLAGSEX = 0x40000000 // Tell SetupDiBuildDriverInfoList to do a recursive search -+ DI_FLAGSEX_SEARCH_PUBLISHED_INFS DI_FLAGSEX = 0x80000000 // Tell SetupDiBuildDriverInfoList to do a "published INF" search -+) -+ -+// ClassInstallHeader is the first member of any class install parameters structure. It contains the device installation request code that defines the format of the rest of the install parameters structure. -+type ClassInstallHeader struct { -+ size uint32 -+ InstallFunction DI_FUNCTION -+} -+ -+func MakeClassInstallHeader(installFunction DI_FUNCTION) *ClassInstallHeader { -+ hdr := &ClassInstallHeader{InstallFunction: installFunction} -+ hdr.size = uint32(unsafe.Sizeof(*hdr)) -+ return hdr -+} -+ -+// DICS_STATE specifies values indicating a change in a device's state -+type DICS_STATE uint32 -+ -+const ( -+ DICS_ENABLE DICS_STATE = 0x00000001 // The device is being enabled. -+ DICS_DISABLE DICS_STATE = 0x00000002 // The device is being disabled. -+ DICS_PROPCHANGE DICS_STATE = 0x00000003 // The properties of the device have changed. -+ DICS_START DICS_STATE = 0x00000004 // The device is being started (if the request is for the currently active hardware profile). -+ DICS_STOP DICS_STATE = 0x00000005 // The device is being stopped. The driver stack will be unloaded and the CSCONFIGFLAG_DO_NOT_START flag will be set for the device. -+) -+ -+// DICS_FLAG specifies the scope of a device property change -+type DICS_FLAG uint32 -+ -+const ( -+ DICS_FLAG_GLOBAL DICS_FLAG = 0x00000001 // make change in all hardware profiles -+ DICS_FLAG_CONFIGSPECIFIC DICS_FLAG = 0x00000002 // make change in specified profile only -+ DICS_FLAG_CONFIGGENERAL DICS_FLAG = 0x00000004 // 1 or more hardware profile-specific changes to follow (obsolete) -+) -+ -+// PropChangeParams is a structure corresponding to a DIF_PROPERTYCHANGE install function. -+type PropChangeParams struct { -+ ClassInstallHeader ClassInstallHeader -+ StateChange DICS_STATE -+ Scope DICS_FLAG -+ HwProfile uint32 -+} -+ -+// DI_REMOVEDEVICE specifies the scope of the device removal -+type DI_REMOVEDEVICE uint32 -+ -+const ( -+ DI_REMOVEDEVICE_GLOBAL DI_REMOVEDEVICE = 0x00000001 // Make this change in all hardware profiles. Remove information about the device from the registry. -+ DI_REMOVEDEVICE_CONFIGSPECIFIC DI_REMOVEDEVICE = 0x00000002 // Make this change to only the hardware profile specified by HwProfile. this flag only applies to root-enumerated devices. When Windows removes the device from the last hardware profile in which it was configured, Windows performs a global removal. -+) -+ -+// RemoveDeviceParams is a structure corresponding to a DIF_REMOVE install function. -+type RemoveDeviceParams struct { -+ ClassInstallHeader ClassInstallHeader -+ Scope DI_REMOVEDEVICE -+ HwProfile uint32 -+} -+ -+// DrvInfoData is driver information structure (member of a driver info list that may be associated with a particular device instance, or (globally) with a device information set) -+type DrvInfoData struct { -+ size uint32 -+ DriverType uint32 -+ _ uintptr -+ description [LINE_LEN]uint16 -+ mfgName [LINE_LEN]uint16 -+ providerName [LINE_LEN]uint16 -+ DriverDate Filetime -+ DriverVersion uint64 -+} -+ -+func (data *DrvInfoData) Description() string { -+ return UTF16ToString(data.description[:]) -+} -+ -+func (data *DrvInfoData) SetDescription(description string) error { -+ str, err := UTF16FromString(description) -+ if err != nil { -+ return err -+ } -+ copy(data.description[:], str) -+ return nil -+} -+ -+func (data *DrvInfoData) MfgName() string { -+ return UTF16ToString(data.mfgName[:]) -+} -+ -+func (data *DrvInfoData) SetMfgName(mfgName string) error { -+ str, err := UTF16FromString(mfgName) -+ if err != nil { -+ return err -+ } -+ copy(data.mfgName[:], str) -+ return nil -+} -+ -+func (data *DrvInfoData) ProviderName() string { -+ return UTF16ToString(data.providerName[:]) -+} -+ -+func (data *DrvInfoData) SetProviderName(providerName string) error { -+ str, err := UTF16FromString(providerName) -+ if err != nil { -+ return err -+ } -+ copy(data.providerName[:], str) -+ return nil -+} -+ -+// IsNewer method returns true if DrvInfoData date and version is newer than supplied parameters. -+func (data *DrvInfoData) IsNewer(driverDate Filetime, driverVersion uint64) bool { -+ if data.DriverDate.HighDateTime > driverDate.HighDateTime { -+ return true -+ } -+ if data.DriverDate.HighDateTime < driverDate.HighDateTime { -+ return false -+ } -+ -+ if data.DriverDate.LowDateTime > driverDate.LowDateTime { -+ return true -+ } -+ if data.DriverDate.LowDateTime < driverDate.LowDateTime { -+ return false -+ } -+ -+ if data.DriverVersion > driverVersion { -+ return true -+ } -+ if data.DriverVersion < driverVersion { -+ return false -+ } -+ -+ return false -+} -+ -+// DrvInfoDetailData is driver information details structure (provides detailed information about a particular driver information structure) -+type DrvInfoDetailData struct { -+ size uint32 // Use unsafeSizeOf method -+ InfDate Filetime -+ compatIDsOffset uint32 -+ compatIDsLength uint32 -+ _ uintptr -+ sectionName [LINE_LEN]uint16 -+ infFileName [MAX_PATH]uint16 -+ drvDescription [LINE_LEN]uint16 -+ hardwareID [1]uint16 -+} -+ -+func (*DrvInfoDetailData) unsafeSizeOf() uint32 { -+ if unsafe.Sizeof(uintptr(0)) == 4 { -+ // Windows declares this with pshpack1.h -+ return uint32(unsafe.Offsetof(DrvInfoDetailData{}.hardwareID) + unsafe.Sizeof(DrvInfoDetailData{}.hardwareID)) -+ } -+ return uint32(unsafe.Sizeof(DrvInfoDetailData{})) -+} -+ -+func (data *DrvInfoDetailData) SectionName() string { -+ return UTF16ToString(data.sectionName[:]) -+} -+ -+func (data *DrvInfoDetailData) InfFileName() string { -+ return UTF16ToString(data.infFileName[:]) -+} -+ -+func (data *DrvInfoDetailData) DrvDescription() string { -+ return UTF16ToString(data.drvDescription[:]) -+} -+ -+func (data *DrvInfoDetailData) HardwareID() string { -+ if data.compatIDsOffset > 1 { -+ bufW := data.getBuf() -+ return UTF16ToString(bufW[:wcslen(bufW)]) -+ } -+ -+ return "" -+} -+ -+func (data *DrvInfoDetailData) CompatIDs() []string { -+ a := make([]string, 0) -+ -+ if data.compatIDsLength > 0 { -+ bufW := data.getBuf() -+ bufW = bufW[data.compatIDsOffset : data.compatIDsOffset+data.compatIDsLength] -+ for i := 0; i < len(bufW); { -+ j := i + wcslen(bufW[i:]) -+ if i < j { -+ a = append(a, UTF16ToString(bufW[i:j])) -+ } -+ i = j + 1 -+ } -+ } -+ -+ return a -+} -+ -+func (data *DrvInfoDetailData) getBuf() []uint16 { -+ len := (data.size - uint32(unsafe.Offsetof(data.hardwareID))) / 2 -+ sl := struct { -+ addr *uint16 -+ len int -+ cap int -+ }{&data.hardwareID[0], int(len), int(len)} -+ return *(*[]uint16)(unsafe.Pointer(&sl)) -+} -+ -+// IsCompatible method tests if given hardware ID matches the driver or is listed on the compatible ID list. -+func (data *DrvInfoDetailData) IsCompatible(hwid string) bool { -+ hwidLC := strings.ToLower(hwid) -+ if strings.ToLower(data.HardwareID()) == hwidLC { -+ return true -+ } -+ a := data.CompatIDs() -+ for i := range a { -+ if strings.ToLower(a[i]) == hwidLC { -+ return true -+ } -+ } -+ -+ return false -+} -+ -+// DICD flags control SetupDiCreateDeviceInfo -+type DICD uint32 -+ -+const ( -+ DICD_GENERATE_ID DICD = 0x00000001 -+ DICD_INHERIT_CLASSDRVS DICD = 0x00000002 -+) -+ -+// SUOI flags control SetupUninstallOEMInf -+type SUOI uint32 -+ -+const ( -+ SUOI_FORCEDELETE SUOI = 0x0001 -+) -+ -+// SPDIT flags to distinguish between class drivers and -+// device drivers. (Passed in 'DriverType' parameter of -+// driver information list APIs) -+type SPDIT uint32 -+ -+const ( -+ SPDIT_NODRIVER SPDIT = 0x00000000 -+ SPDIT_CLASSDRIVER SPDIT = 0x00000001 -+ SPDIT_COMPATDRIVER SPDIT = 0x00000002 -+) -+ -+// DIGCF flags control what is included in the device information set built by SetupDiGetClassDevs -+type DIGCF uint32 -+ -+const ( -+ DIGCF_DEFAULT DIGCF = 0x00000001 // only valid with DIGCF_DEVICEINTERFACE -+ DIGCF_PRESENT DIGCF = 0x00000002 -+ DIGCF_ALLCLASSES DIGCF = 0x00000004 -+ DIGCF_PROFILE DIGCF = 0x00000008 -+ DIGCF_DEVICEINTERFACE DIGCF = 0x00000010 -+) -+ -+// DIREG specifies values for SetupDiCreateDevRegKey, SetupDiOpenDevRegKey, and SetupDiDeleteDevRegKey. -+type DIREG uint32 -+ -+const ( -+ DIREG_DEV DIREG = 0x00000001 // Open/Create/Delete device key -+ DIREG_DRV DIREG = 0x00000002 // Open/Create/Delete driver key -+ DIREG_BOTH DIREG = 0x00000004 // Delete both driver and Device key -+) -+ -+// SPDRP specifies device registry property codes -+// (Codes marked as read-only (R) may only be used for -+// SetupDiGetDeviceRegistryProperty) -+// -+// These values should cover the same set of registry properties -+// as defined by the CM_DRP codes in cfgmgr32.h. -+// -+// Note that SPDRP codes are zero based while CM_DRP codes are one based! -+type SPDRP uint32 -+ -+const ( -+ SPDRP_DEVICEDESC SPDRP = 0x00000000 // DeviceDesc (R/W) -+ SPDRP_HARDWAREID SPDRP = 0x00000001 // HardwareID (R/W) -+ SPDRP_COMPATIBLEIDS SPDRP = 0x00000002 // CompatibleIDs (R/W) -+ SPDRP_SERVICE SPDRP = 0x00000004 // Service (R/W) -+ SPDRP_CLASS SPDRP = 0x00000007 // Class (R--tied to ClassGUID) -+ SPDRP_CLASSGUID SPDRP = 0x00000008 // ClassGUID (R/W) -+ SPDRP_DRIVER SPDRP = 0x00000009 // Driver (R/W) -+ SPDRP_CONFIGFLAGS SPDRP = 0x0000000A // ConfigFlags (R/W) -+ SPDRP_MFG SPDRP = 0x0000000B // Mfg (R/W) -+ SPDRP_FRIENDLYNAME SPDRP = 0x0000000C // FriendlyName (R/W) -+ SPDRP_LOCATION_INFORMATION SPDRP = 0x0000000D // LocationInformation (R/W) -+ SPDRP_PHYSICAL_DEVICE_OBJECT_NAME SPDRP = 0x0000000E // PhysicalDeviceObjectName (R) -+ SPDRP_CAPABILITIES SPDRP = 0x0000000F // Capabilities (R) -+ SPDRP_UI_NUMBER SPDRP = 0x00000010 // UiNumber (R) -+ SPDRP_UPPERFILTERS SPDRP = 0x00000011 // UpperFilters (R/W) -+ SPDRP_LOWERFILTERS SPDRP = 0x00000012 // LowerFilters (R/W) -+ SPDRP_BUSTYPEGUID SPDRP = 0x00000013 // BusTypeGUID (R) -+ SPDRP_LEGACYBUSTYPE SPDRP = 0x00000014 // LegacyBusType (R) -+ SPDRP_BUSNUMBER SPDRP = 0x00000015 // BusNumber (R) -+ SPDRP_ENUMERATOR_NAME SPDRP = 0x00000016 // Enumerator Name (R) -+ SPDRP_SECURITY SPDRP = 0x00000017 // Security (R/W, binary form) -+ SPDRP_SECURITY_SDS SPDRP = 0x00000018 // Security (W, SDS form) -+ SPDRP_DEVTYPE SPDRP = 0x00000019 // Device Type (R/W) -+ SPDRP_EXCLUSIVE SPDRP = 0x0000001A // Device is exclusive-access (R/W) -+ SPDRP_CHARACTERISTICS SPDRP = 0x0000001B // Device Characteristics (R/W) -+ SPDRP_ADDRESS SPDRP = 0x0000001C // Device Address (R) -+ SPDRP_UI_NUMBER_DESC_FORMAT SPDRP = 0x0000001D // UiNumberDescFormat (R/W) -+ SPDRP_DEVICE_POWER_DATA SPDRP = 0x0000001E // Device Power Data (R) -+ SPDRP_REMOVAL_POLICY SPDRP = 0x0000001F // Removal Policy (R) -+ SPDRP_REMOVAL_POLICY_HW_DEFAULT SPDRP = 0x00000020 // Hardware Removal Policy (R) -+ SPDRP_REMOVAL_POLICY_OVERRIDE SPDRP = 0x00000021 // Removal Policy Override (RW) -+ SPDRP_INSTALL_STATE SPDRP = 0x00000022 // Device Install State (R) -+ SPDRP_LOCATION_PATHS SPDRP = 0x00000023 // Device Location Paths (R) -+ SPDRP_BASE_CONTAINERID SPDRP = 0x00000024 // Base ContainerID (R) -+ -+ SPDRP_MAXIMUM_PROPERTY SPDRP = 0x00000025 // Upper bound on ordinals -+) -+ -+// DEVPROPTYPE represents the property-data-type identifier that specifies the -+// data type of a device property value in the unified device property model. -+type DEVPROPTYPE uint32 -+ -+const ( -+ DEVPROP_TYPEMOD_ARRAY DEVPROPTYPE = 0x00001000 -+ DEVPROP_TYPEMOD_LIST DEVPROPTYPE = 0x00002000 -+ -+ DEVPROP_TYPE_EMPTY DEVPROPTYPE = 0x00000000 -+ DEVPROP_TYPE_NULL DEVPROPTYPE = 0x00000001 -+ DEVPROP_TYPE_SBYTE DEVPROPTYPE = 0x00000002 -+ DEVPROP_TYPE_BYTE DEVPROPTYPE = 0x00000003 -+ DEVPROP_TYPE_INT16 DEVPROPTYPE = 0x00000004 -+ DEVPROP_TYPE_UINT16 DEVPROPTYPE = 0x00000005 -+ DEVPROP_TYPE_INT32 DEVPROPTYPE = 0x00000006 -+ DEVPROP_TYPE_UINT32 DEVPROPTYPE = 0x00000007 -+ DEVPROP_TYPE_INT64 DEVPROPTYPE = 0x00000008 -+ DEVPROP_TYPE_UINT64 DEVPROPTYPE = 0x00000009 -+ DEVPROP_TYPE_FLOAT DEVPROPTYPE = 0x0000000A -+ DEVPROP_TYPE_DOUBLE DEVPROPTYPE = 0x0000000B -+ DEVPROP_TYPE_DECIMAL DEVPROPTYPE = 0x0000000C -+ DEVPROP_TYPE_GUID DEVPROPTYPE = 0x0000000D -+ DEVPROP_TYPE_CURRENCY DEVPROPTYPE = 0x0000000E -+ DEVPROP_TYPE_DATE DEVPROPTYPE = 0x0000000F -+ DEVPROP_TYPE_FILETIME DEVPROPTYPE = 0x00000010 -+ DEVPROP_TYPE_BOOLEAN DEVPROPTYPE = 0x00000011 -+ DEVPROP_TYPE_STRING DEVPROPTYPE = 0x00000012 -+ DEVPROP_TYPE_STRING_LIST DEVPROPTYPE = DEVPROP_TYPE_STRING | DEVPROP_TYPEMOD_LIST -+ DEVPROP_TYPE_SECURITY_DESCRIPTOR DEVPROPTYPE = 0x00000013 -+ DEVPROP_TYPE_SECURITY_DESCRIPTOR_STRING DEVPROPTYPE = 0x00000014 -+ DEVPROP_TYPE_DEVPROPKEY DEVPROPTYPE = 0x00000015 -+ DEVPROP_TYPE_DEVPROPTYPE DEVPROPTYPE = 0x00000016 -+ DEVPROP_TYPE_BINARY DEVPROPTYPE = DEVPROP_TYPE_BYTE | DEVPROP_TYPEMOD_ARRAY -+ DEVPROP_TYPE_ERROR DEVPROPTYPE = 0x00000017 -+ DEVPROP_TYPE_NTSTATUS DEVPROPTYPE = 0x00000018 -+ DEVPROP_TYPE_STRING_INDIRECT DEVPROPTYPE = 0x00000019 -+ -+ MAX_DEVPROP_TYPE DEVPROPTYPE = 0x00000019 -+ MAX_DEVPROP_TYPEMOD DEVPROPTYPE = 0x00002000 -+ -+ DEVPROP_MASK_TYPE DEVPROPTYPE = 0x00000FFF -+ DEVPROP_MASK_TYPEMOD DEVPROPTYPE = 0x0000F000 -+) -+ -+// DEVPROPGUID specifies a property category. -+type DEVPROPGUID GUID -+ -+// DEVPROPID uniquely identifies the property within the property category. -+type DEVPROPID uint32 -+ -+const DEVPROPID_FIRST_USABLE DEVPROPID = 2 -+ -+// DEVPROPKEY represents a device property key for a device property in the -+// unified device property model. -+type DEVPROPKEY struct { -+ FmtID DEVPROPGUID -+ PID DEVPROPID -+} -+ -+// CONFIGRET is a return value or error code from cfgmgr32 APIs -+type CONFIGRET uint32 -+ -+func (ret CONFIGRET) Error() string { -+ if win32Error, ok := ret.Unwrap().(Errno); ok { -+ return fmt.Sprintf("%s (CfgMgr error: 0x%08x)", win32Error.Error(), uint32(ret)) -+ } -+ return fmt.Sprintf("CfgMgr error: 0x%08x", uint32(ret)) -+} -+ -+func (ret CONFIGRET) Win32Error(defaultError Errno) Errno { -+ return cm_MapCrToWin32Err(ret, defaultError) -+} -+ -+func (ret CONFIGRET) Unwrap() error { -+ const noMatch = Errno(^uintptr(0)) -+ win32Error := ret.Win32Error(noMatch) -+ if win32Error == noMatch { -+ return nil -+ } -+ return win32Error -+} -+ -+const ( -+ CR_SUCCESS CONFIGRET = 0x00000000 -+ CR_DEFAULT CONFIGRET = 0x00000001 -+ CR_OUT_OF_MEMORY CONFIGRET = 0x00000002 -+ CR_INVALID_POINTER CONFIGRET = 0x00000003 -+ CR_INVALID_FLAG CONFIGRET = 0x00000004 -+ CR_INVALID_DEVNODE CONFIGRET = 0x00000005 -+ CR_INVALID_DEVINST = CR_INVALID_DEVNODE -+ CR_INVALID_RES_DES CONFIGRET = 0x00000006 -+ CR_INVALID_LOG_CONF CONFIGRET = 0x00000007 -+ CR_INVALID_ARBITRATOR CONFIGRET = 0x00000008 -+ CR_INVALID_NODELIST CONFIGRET = 0x00000009 -+ CR_DEVNODE_HAS_REQS CONFIGRET = 0x0000000A -+ CR_DEVINST_HAS_REQS = CR_DEVNODE_HAS_REQS -+ CR_INVALID_RESOURCEID CONFIGRET = 0x0000000B -+ CR_DLVXD_NOT_FOUND CONFIGRET = 0x0000000C -+ CR_NO_SUCH_DEVNODE CONFIGRET = 0x0000000D -+ CR_NO_SUCH_DEVINST = CR_NO_SUCH_DEVNODE -+ CR_NO_MORE_LOG_CONF CONFIGRET = 0x0000000E -+ CR_NO_MORE_RES_DES CONFIGRET = 0x0000000F -+ CR_ALREADY_SUCH_DEVNODE CONFIGRET = 0x00000010 -+ CR_ALREADY_SUCH_DEVINST = CR_ALREADY_SUCH_DEVNODE -+ CR_INVALID_RANGE_LIST CONFIGRET = 0x00000011 -+ CR_INVALID_RANGE CONFIGRET = 0x00000012 -+ CR_FAILURE CONFIGRET = 0x00000013 -+ CR_NO_SUCH_LOGICAL_DEV CONFIGRET = 0x00000014 -+ CR_CREATE_BLOCKED CONFIGRET = 0x00000015 -+ CR_NOT_SYSTEM_VM CONFIGRET = 0x00000016 -+ CR_REMOVE_VETOED CONFIGRET = 0x00000017 -+ CR_APM_VETOED CONFIGRET = 0x00000018 -+ CR_INVALID_LOAD_TYPE CONFIGRET = 0x00000019 -+ CR_BUFFER_SMALL CONFIGRET = 0x0000001A -+ CR_NO_ARBITRATOR CONFIGRET = 0x0000001B -+ CR_NO_REGISTRY_HANDLE CONFIGRET = 0x0000001C -+ CR_REGISTRY_ERROR CONFIGRET = 0x0000001D -+ CR_INVALID_DEVICE_ID CONFIGRET = 0x0000001E -+ CR_INVALID_DATA CONFIGRET = 0x0000001F -+ CR_INVALID_API CONFIGRET = 0x00000020 -+ CR_DEVLOADER_NOT_READY CONFIGRET = 0x00000021 -+ CR_NEED_RESTART CONFIGRET = 0x00000022 -+ CR_NO_MORE_HW_PROFILES CONFIGRET = 0x00000023 -+ CR_DEVICE_NOT_THERE CONFIGRET = 0x00000024 -+ CR_NO_SUCH_VALUE CONFIGRET = 0x00000025 -+ CR_WRONG_TYPE CONFIGRET = 0x00000026 -+ CR_INVALID_PRIORITY CONFIGRET = 0x00000027 -+ CR_NOT_DISABLEABLE CONFIGRET = 0x00000028 -+ CR_FREE_RESOURCES CONFIGRET = 0x00000029 -+ CR_QUERY_VETOED CONFIGRET = 0x0000002A -+ CR_CANT_SHARE_IRQ CONFIGRET = 0x0000002B -+ CR_NO_DEPENDENT CONFIGRET = 0x0000002C -+ CR_SAME_RESOURCES CONFIGRET = 0x0000002D -+ CR_NO_SUCH_REGISTRY_KEY CONFIGRET = 0x0000002E -+ CR_INVALID_MACHINENAME CONFIGRET = 0x0000002F -+ CR_REMOTE_COMM_FAILURE CONFIGRET = 0x00000030 -+ CR_MACHINE_UNAVAILABLE CONFIGRET = 0x00000031 -+ CR_NO_CM_SERVICES CONFIGRET = 0x00000032 -+ CR_ACCESS_DENIED CONFIGRET = 0x00000033 -+ CR_CALL_NOT_IMPLEMENTED CONFIGRET = 0x00000034 -+ CR_INVALID_PROPERTY CONFIGRET = 0x00000035 -+ CR_DEVICE_INTERFACE_ACTIVE CONFIGRET = 0x00000036 -+ CR_NO_SUCH_DEVICE_INTERFACE CONFIGRET = 0x00000037 -+ CR_INVALID_REFERENCE_STRING CONFIGRET = 0x00000038 -+ CR_INVALID_CONFLICT_LIST CONFIGRET = 0x00000039 -+ CR_INVALID_INDEX CONFIGRET = 0x0000003A -+ CR_INVALID_STRUCTURE_SIZE CONFIGRET = 0x0000003B -+ NUM_CR_RESULTS CONFIGRET = 0x0000003C -+) -+ -+const ( -+ CM_GET_DEVICE_INTERFACE_LIST_PRESENT = 0 // only currently 'live' device interfaces -+ CM_GET_DEVICE_INTERFACE_LIST_ALL_DEVICES = 1 // all registered device interfaces, live or not -+) -+ -+const ( -+ DN_ROOT_ENUMERATED = 0x00000001 // Was enumerated by ROOT -+ DN_DRIVER_LOADED = 0x00000002 // Has Register_Device_Driver -+ DN_ENUM_LOADED = 0x00000004 // Has Register_Enumerator -+ DN_STARTED = 0x00000008 // Is currently configured -+ DN_MANUAL = 0x00000010 // Manually installed -+ DN_NEED_TO_ENUM = 0x00000020 // May need reenumeration -+ DN_NOT_FIRST_TIME = 0x00000040 // Has received a config -+ DN_HARDWARE_ENUM = 0x00000080 // Enum generates hardware ID -+ DN_LIAR = 0x00000100 // Lied about can reconfig once -+ DN_HAS_MARK = 0x00000200 // Not CM_Create_DevInst lately -+ DN_HAS_PROBLEM = 0x00000400 // Need device installer -+ DN_FILTERED = 0x00000800 // Is filtered -+ DN_MOVED = 0x00001000 // Has been moved -+ DN_DISABLEABLE = 0x00002000 // Can be disabled -+ DN_REMOVABLE = 0x00004000 // Can be removed -+ DN_PRIVATE_PROBLEM = 0x00008000 // Has a private problem -+ DN_MF_PARENT = 0x00010000 // Multi function parent -+ DN_MF_CHILD = 0x00020000 // Multi function child -+ DN_WILL_BE_REMOVED = 0x00040000 // DevInst is being removed -+ DN_NOT_FIRST_TIMEE = 0x00080000 // Has received a config enumerate -+ DN_STOP_FREE_RES = 0x00100000 // When child is stopped, free resources -+ DN_REBAL_CANDIDATE = 0x00200000 // Don't skip during rebalance -+ DN_BAD_PARTIAL = 0x00400000 // This devnode's log_confs do not have same resources -+ DN_NT_ENUMERATOR = 0x00800000 // This devnode's is an NT enumerator -+ DN_NT_DRIVER = 0x01000000 // This devnode's is an NT driver -+ DN_NEEDS_LOCKING = 0x02000000 // Devnode need lock resume processing -+ DN_ARM_WAKEUP = 0x04000000 // Devnode can be the wakeup device -+ DN_APM_ENUMERATOR = 0x08000000 // APM aware enumerator -+ DN_APM_DRIVER = 0x10000000 // APM aware driver -+ DN_SILENT_INSTALL = 0x20000000 // Silent install -+ DN_NO_SHOW_IN_DM = 0x40000000 // No show in device manager -+ DN_BOOT_LOG_PROB = 0x80000000 // Had a problem during preassignment of boot log conf -+ DN_NEED_RESTART = DN_LIAR // System needs to be restarted for this Devnode to work properly -+ DN_DRIVER_BLOCKED = DN_NOT_FIRST_TIME // One or more drivers are blocked from loading for this Devnode -+ DN_LEGACY_DRIVER = DN_MOVED // This device is using a legacy driver -+ DN_CHILD_WITH_INVALID_ID = DN_HAS_MARK // One or more children have invalid IDs -+ DN_DEVICE_DISCONNECTED = DN_NEEDS_LOCKING // The function driver for a device reported that the device is not connected. Typically this means a wireless device is out of range. -+ DN_QUERY_REMOVE_PENDING = DN_MF_PARENT // Device is part of a set of related devices collectively pending query-removal -+ DN_QUERY_REMOVE_ACTIVE = DN_MF_CHILD // Device is actively engaged in a query-remove IRP -+ DN_CHANGEABLE_FLAGS = DN_NOT_FIRST_TIME | DN_HARDWARE_ENUM | DN_HAS_MARK | DN_DISABLEABLE | DN_REMOVABLE | DN_MF_CHILD | DN_MF_PARENT | DN_NOT_FIRST_TIMEE | DN_STOP_FREE_RES | DN_REBAL_CANDIDATE | DN_NT_ENUMERATOR | DN_NT_DRIVER | DN_SILENT_INSTALL | DN_NO_SHOW_IN_DM -+) -+ -+//sys setupDiCreateDeviceInfoListEx(classGUID *GUID, hwndParent uintptr, machineName *uint16, reserved uintptr) (handle DevInfo, err error) [failretval==DevInfo(InvalidHandle)] = setupapi.SetupDiCreateDeviceInfoListExW -+ -+// SetupDiCreateDeviceInfoListEx function creates an empty device information set on a remote or a local computer and optionally associates the set with a device setup class. -+func SetupDiCreateDeviceInfoListEx(classGUID *GUID, hwndParent uintptr, machineName string) (deviceInfoSet DevInfo, err error) { -+ var machineNameUTF16 *uint16 -+ if machineName != "" { -+ machineNameUTF16, err = UTF16PtrFromString(machineName) -+ if err != nil { -+ return -+ } -+ } -+ return setupDiCreateDeviceInfoListEx(classGUID, hwndParent, machineNameUTF16, 0) -+} -+ -+//sys setupDiGetDeviceInfoListDetail(deviceInfoSet DevInfo, deviceInfoSetDetailData *DevInfoListDetailData) (err error) = setupapi.SetupDiGetDeviceInfoListDetailW -+ -+// SetupDiGetDeviceInfoListDetail function retrieves information associated with a device information set including the class GUID, remote computer handle, and remote computer name. -+func SetupDiGetDeviceInfoListDetail(deviceInfoSet DevInfo) (deviceInfoSetDetailData *DevInfoListDetailData, err error) { -+ data := &DevInfoListDetailData{} -+ data.size = data.unsafeSizeOf() -+ -+ return data, setupDiGetDeviceInfoListDetail(deviceInfoSet, data) -+} -+ -+// DeviceInfoListDetail method retrieves information associated with a device information set including the class GUID, remote computer handle, and remote computer name. -+func (deviceInfoSet DevInfo) DeviceInfoListDetail() (*DevInfoListDetailData, error) { -+ return SetupDiGetDeviceInfoListDetail(deviceInfoSet) -+} -+ -+//sys setupDiCreateDeviceInfo(deviceInfoSet DevInfo, DeviceName *uint16, classGUID *GUID, DeviceDescription *uint16, hwndParent uintptr, CreationFlags DICD, deviceInfoData *DevInfoData) (err error) = setupapi.SetupDiCreateDeviceInfoW -+ -+// SetupDiCreateDeviceInfo function creates a new device information element and adds it as a new member to the specified device information set. -+func SetupDiCreateDeviceInfo(deviceInfoSet DevInfo, deviceName string, classGUID *GUID, deviceDescription string, hwndParent uintptr, creationFlags DICD) (deviceInfoData *DevInfoData, err error) { -+ deviceNameUTF16, err := UTF16PtrFromString(deviceName) -+ if err != nil { -+ return -+ } -+ -+ var deviceDescriptionUTF16 *uint16 -+ if deviceDescription != "" { -+ deviceDescriptionUTF16, err = UTF16PtrFromString(deviceDescription) -+ if err != nil { -+ return -+ } -+ } -+ -+ data := &DevInfoData{} -+ data.size = uint32(unsafe.Sizeof(*data)) -+ -+ return data, setupDiCreateDeviceInfo(deviceInfoSet, deviceNameUTF16, classGUID, deviceDescriptionUTF16, hwndParent, creationFlags, data) -+} -+ -+// CreateDeviceInfo method creates a new device information element and adds it as a new member to the specified device information set. -+func (deviceInfoSet DevInfo) CreateDeviceInfo(deviceName string, classGUID *GUID, deviceDescription string, hwndParent uintptr, creationFlags DICD) (*DevInfoData, error) { -+ return SetupDiCreateDeviceInfo(deviceInfoSet, deviceName, classGUID, deviceDescription, hwndParent, creationFlags) -+} -+ -+//sys setupDiEnumDeviceInfo(deviceInfoSet DevInfo, memberIndex uint32, deviceInfoData *DevInfoData) (err error) = setupapi.SetupDiEnumDeviceInfo -+ -+// SetupDiEnumDeviceInfo function returns a DevInfoData structure that specifies a device information element in a device information set. -+func SetupDiEnumDeviceInfo(deviceInfoSet DevInfo, memberIndex int) (*DevInfoData, error) { -+ data := &DevInfoData{} -+ data.size = uint32(unsafe.Sizeof(*data)) -+ -+ return data, setupDiEnumDeviceInfo(deviceInfoSet, uint32(memberIndex), data) -+} -+ -+// EnumDeviceInfo method returns a DevInfoData structure that specifies a device information element in a device information set. -+func (deviceInfoSet DevInfo) EnumDeviceInfo(memberIndex int) (*DevInfoData, error) { -+ return SetupDiEnumDeviceInfo(deviceInfoSet, memberIndex) -+} -+ -+// SetupDiDestroyDeviceInfoList function deletes a device information set and frees all associated memory. -+//sys SetupDiDestroyDeviceInfoList(deviceInfoSet DevInfo) (err error) = setupapi.SetupDiDestroyDeviceInfoList -+ -+// Close method deletes a device information set and frees all associated memory. -+func (deviceInfoSet DevInfo) Close() error { -+ return SetupDiDestroyDeviceInfoList(deviceInfoSet) -+} -+ -+//sys SetupDiBuildDriverInfoList(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, driverType SPDIT) (err error) = setupapi.SetupDiBuildDriverInfoList -+ -+// BuildDriverInfoList method builds a list of drivers that is associated with a specific device or with the global class driver list for a device information set. -+func (deviceInfoSet DevInfo) BuildDriverInfoList(deviceInfoData *DevInfoData, driverType SPDIT) error { -+ return SetupDiBuildDriverInfoList(deviceInfoSet, deviceInfoData, driverType) -+} -+ -+//sys SetupDiCancelDriverInfoSearch(deviceInfoSet DevInfo) (err error) = setupapi.SetupDiCancelDriverInfoSearch -+ -+// CancelDriverInfoSearch method cancels a driver list search that is currently in progress in a different thread. -+func (deviceInfoSet DevInfo) CancelDriverInfoSearch() error { -+ return SetupDiCancelDriverInfoSearch(deviceInfoSet) -+} -+ -+//sys setupDiEnumDriverInfo(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, driverType SPDIT, memberIndex uint32, driverInfoData *DrvInfoData) (err error) = setupapi.SetupDiEnumDriverInfoW -+ -+// SetupDiEnumDriverInfo function enumerates the members of a driver list. -+func SetupDiEnumDriverInfo(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, driverType SPDIT, memberIndex int) (*DrvInfoData, error) { -+ data := &DrvInfoData{} -+ data.size = uint32(unsafe.Sizeof(*data)) -+ -+ return data, setupDiEnumDriverInfo(deviceInfoSet, deviceInfoData, driverType, uint32(memberIndex), data) -+} -+ -+// EnumDriverInfo method enumerates the members of a driver list. -+func (deviceInfoSet DevInfo) EnumDriverInfo(deviceInfoData *DevInfoData, driverType SPDIT, memberIndex int) (*DrvInfoData, error) { -+ return SetupDiEnumDriverInfo(deviceInfoSet, deviceInfoData, driverType, memberIndex) -+} -+ -+//sys setupDiGetSelectedDriver(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, driverInfoData *DrvInfoData) (err error) = setupapi.SetupDiGetSelectedDriverW -+ -+// SetupDiGetSelectedDriver function retrieves the selected driver for a device information set or a particular device information element. -+func SetupDiGetSelectedDriver(deviceInfoSet DevInfo, deviceInfoData *DevInfoData) (*DrvInfoData, error) { -+ data := &DrvInfoData{} -+ data.size = uint32(unsafe.Sizeof(*data)) -+ -+ return data, setupDiGetSelectedDriver(deviceInfoSet, deviceInfoData, data) -+} -+ -+// SelectedDriver method retrieves the selected driver for a device information set or a particular device information element. -+func (deviceInfoSet DevInfo) SelectedDriver(deviceInfoData *DevInfoData) (*DrvInfoData, error) { -+ return SetupDiGetSelectedDriver(deviceInfoSet, deviceInfoData) -+} -+ -+//sys SetupDiSetSelectedDriver(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, driverInfoData *DrvInfoData) (err error) = setupapi.SetupDiSetSelectedDriverW -+ -+// SetSelectedDriver method sets, or resets, the selected driver for a device information element or the selected class driver for a device information set. -+func (deviceInfoSet DevInfo) SetSelectedDriver(deviceInfoData *DevInfoData, driverInfoData *DrvInfoData) error { -+ return SetupDiSetSelectedDriver(deviceInfoSet, deviceInfoData, driverInfoData) -+} -+ -+//sys setupDiGetDriverInfoDetail(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, driverInfoData *DrvInfoData, driverInfoDetailData *DrvInfoDetailData, driverInfoDetailDataSize uint32, requiredSize *uint32) (err error) = setupapi.SetupDiGetDriverInfoDetailW -+ -+// SetupDiGetDriverInfoDetail function retrieves driver information detail for a device information set or a particular device information element in the device information set. -+func SetupDiGetDriverInfoDetail(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, driverInfoData *DrvInfoData) (*DrvInfoDetailData, error) { -+ reqSize := uint32(2048) -+ for { -+ buf := make([]byte, reqSize) -+ data := (*DrvInfoDetailData)(unsafe.Pointer(&buf[0])) -+ data.size = data.unsafeSizeOf() -+ err := setupDiGetDriverInfoDetail(deviceInfoSet, deviceInfoData, driverInfoData, data, uint32(len(buf)), &reqSize) -+ if err == ERROR_INSUFFICIENT_BUFFER { -+ continue -+ } -+ if err != nil { -+ return nil, err -+ } -+ data.size = reqSize -+ return data, nil -+ } -+} -+ -+// DriverInfoDetail method retrieves driver information detail for a device information set or a particular device information element in the device information set. -+func (deviceInfoSet DevInfo) DriverInfoDetail(deviceInfoData *DevInfoData, driverInfoData *DrvInfoData) (*DrvInfoDetailData, error) { -+ return SetupDiGetDriverInfoDetail(deviceInfoSet, deviceInfoData, driverInfoData) -+} -+ -+//sys SetupDiDestroyDriverInfoList(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, driverType SPDIT) (err error) = setupapi.SetupDiDestroyDriverInfoList -+ -+// DestroyDriverInfoList method deletes a driver list. -+func (deviceInfoSet DevInfo) DestroyDriverInfoList(deviceInfoData *DevInfoData, driverType SPDIT) error { -+ return SetupDiDestroyDriverInfoList(deviceInfoSet, deviceInfoData, driverType) -+} -+ -+//sys setupDiGetClassDevsEx(classGUID *GUID, Enumerator *uint16, hwndParent uintptr, Flags DIGCF, deviceInfoSet DevInfo, machineName *uint16, reserved uintptr) (handle DevInfo, err error) [failretval==DevInfo(InvalidHandle)] = setupapi.SetupDiGetClassDevsExW -+ -+// SetupDiGetClassDevsEx function returns a handle to a device information set that contains requested device information elements for a local or a remote computer. -+func SetupDiGetClassDevsEx(classGUID *GUID, enumerator string, hwndParent uintptr, flags DIGCF, deviceInfoSet DevInfo, machineName string) (handle DevInfo, err error) { -+ var enumeratorUTF16 *uint16 -+ if enumerator != "" { -+ enumeratorUTF16, err = UTF16PtrFromString(enumerator) -+ if err != nil { -+ return -+ } -+ } -+ var machineNameUTF16 *uint16 -+ if machineName != "" { -+ machineNameUTF16, err = UTF16PtrFromString(machineName) -+ if err != nil { -+ return -+ } -+ } -+ return setupDiGetClassDevsEx(classGUID, enumeratorUTF16, hwndParent, flags, deviceInfoSet, machineNameUTF16, 0) -+} -+ -+// SetupDiCallClassInstaller function calls the appropriate class installer, and any registered co-installers, with the specified installation request (DIF code). -+//sys SetupDiCallClassInstaller(installFunction DI_FUNCTION, deviceInfoSet DevInfo, deviceInfoData *DevInfoData) (err error) = setupapi.SetupDiCallClassInstaller -+ -+// CallClassInstaller member calls the appropriate class installer, and any registered co-installers, with the specified installation request (DIF code). -+func (deviceInfoSet DevInfo) CallClassInstaller(installFunction DI_FUNCTION, deviceInfoData *DevInfoData) error { -+ return SetupDiCallClassInstaller(installFunction, deviceInfoSet, deviceInfoData) -+} -+ -+// SetupDiOpenDevRegKey function opens a registry key for device-specific configuration information. -+//sys SetupDiOpenDevRegKey(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, Scope DICS_FLAG, HwProfile uint32, KeyType DIREG, samDesired uint32) (key Handle, err error) [failretval==InvalidHandle] = setupapi.SetupDiOpenDevRegKey -+ -+// OpenDevRegKey method opens a registry key for device-specific configuration information. -+func (deviceInfoSet DevInfo) OpenDevRegKey(DeviceInfoData *DevInfoData, Scope DICS_FLAG, HwProfile uint32, KeyType DIREG, samDesired uint32) (Handle, error) { -+ return SetupDiOpenDevRegKey(deviceInfoSet, DeviceInfoData, Scope, HwProfile, KeyType, samDesired) -+} -+ -+//sys setupDiGetDeviceProperty(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, propertyKey *DEVPROPKEY, propertyType *DEVPROPTYPE, propertyBuffer *byte, propertyBufferSize uint32, requiredSize *uint32, flags uint32) (err error) = setupapi.SetupDiGetDevicePropertyW -+ -+// SetupDiGetDeviceProperty function retrieves a specified device instance property. -+func SetupDiGetDeviceProperty(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, propertyKey *DEVPROPKEY) (value interface{}, err error) { -+ reqSize := uint32(256) -+ for { -+ var dataType DEVPROPTYPE -+ buf := make([]byte, reqSize) -+ err = setupDiGetDeviceProperty(deviceInfoSet, deviceInfoData, propertyKey, &dataType, &buf[0], uint32(len(buf)), &reqSize, 0) -+ if err == ERROR_INSUFFICIENT_BUFFER { -+ continue -+ } -+ if err != nil { -+ return -+ } -+ switch dataType { -+ case DEVPROP_TYPE_STRING: -+ ret := UTF16ToString(bufToUTF16(buf)) -+ runtime.KeepAlive(buf) -+ return ret, nil -+ } -+ return nil, errors.New("unimplemented property type") -+ } -+} -+ -+//sys setupDiGetDeviceRegistryProperty(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, property SPDRP, propertyRegDataType *uint32, propertyBuffer *byte, propertyBufferSize uint32, requiredSize *uint32) (err error) = setupapi.SetupDiGetDeviceRegistryPropertyW -+ -+// SetupDiGetDeviceRegistryProperty function retrieves a specified Plug and Play device property. -+func SetupDiGetDeviceRegistryProperty(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, property SPDRP) (value interface{}, err error) { -+ reqSize := uint32(256) -+ for { -+ var dataType uint32 -+ buf := make([]byte, reqSize) -+ err = setupDiGetDeviceRegistryProperty(deviceInfoSet, deviceInfoData, property, &dataType, &buf[0], uint32(len(buf)), &reqSize) -+ if err == ERROR_INSUFFICIENT_BUFFER { -+ continue -+ } -+ if err != nil { -+ return -+ } -+ return getRegistryValue(buf[:reqSize], dataType) -+ } -+} -+ -+func getRegistryValue(buf []byte, dataType uint32) (interface{}, error) { -+ switch dataType { -+ case REG_SZ: -+ ret := UTF16ToString(bufToUTF16(buf)) -+ runtime.KeepAlive(buf) -+ return ret, nil -+ case REG_EXPAND_SZ: -+ value := UTF16ToString(bufToUTF16(buf)) -+ if value == "" { -+ return "", nil -+ } -+ p, err := syscall.UTF16PtrFromString(value) -+ if err != nil { -+ return "", err -+ } -+ ret := make([]uint16, 100) -+ for { -+ n, err := ExpandEnvironmentStrings(p, &ret[0], uint32(len(ret))) -+ if err != nil { -+ return "", err -+ } -+ if n <= uint32(len(ret)) { -+ return UTF16ToString(ret[:n]), nil -+ } -+ ret = make([]uint16, n) -+ } -+ case REG_BINARY: -+ return buf, nil -+ case REG_DWORD_LITTLE_ENDIAN: -+ return binary.LittleEndian.Uint32(buf), nil -+ case REG_DWORD_BIG_ENDIAN: -+ return binary.BigEndian.Uint32(buf), nil -+ case REG_MULTI_SZ: -+ bufW := bufToUTF16(buf) -+ a := []string{} -+ for i := 0; i < len(bufW); { -+ j := i + wcslen(bufW[i:]) -+ if i < j { -+ a = append(a, UTF16ToString(bufW[i:j])) -+ } -+ i = j + 1 -+ } -+ runtime.KeepAlive(buf) -+ return a, nil -+ case REG_QWORD_LITTLE_ENDIAN: -+ return binary.LittleEndian.Uint64(buf), nil -+ default: -+ return nil, fmt.Errorf("Unsupported registry value type: %v", dataType) -+ } -+} -+ -+// bufToUTF16 function reinterprets []byte buffer as []uint16 -+func bufToUTF16(buf []byte) []uint16 { -+ sl := struct { -+ addr *uint16 -+ len int -+ cap int -+ }{(*uint16)(unsafe.Pointer(&buf[0])), len(buf) / 2, cap(buf) / 2} -+ return *(*[]uint16)(unsafe.Pointer(&sl)) -+} -+ -+// utf16ToBuf function reinterprets []uint16 as []byte -+func utf16ToBuf(buf []uint16) []byte { -+ sl := struct { -+ addr *byte -+ len int -+ cap int -+ }{(*byte)(unsafe.Pointer(&buf[0])), len(buf) * 2, cap(buf) * 2} -+ return *(*[]byte)(unsafe.Pointer(&sl)) -+} -+ -+func wcslen(str []uint16) int { -+ for i := 0; i < len(str); i++ { -+ if str[i] == 0 { -+ return i -+ } -+ } -+ return len(str) -+} -+ -+// DeviceRegistryProperty method retrieves a specified Plug and Play device property. -+func (deviceInfoSet DevInfo) DeviceRegistryProperty(deviceInfoData *DevInfoData, property SPDRP) (interface{}, error) { -+ return SetupDiGetDeviceRegistryProperty(deviceInfoSet, deviceInfoData, property) -+} -+ -+//sys setupDiSetDeviceRegistryProperty(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, property SPDRP, propertyBuffer *byte, propertyBufferSize uint32) (err error) = setupapi.SetupDiSetDeviceRegistryPropertyW -+ -+// SetupDiSetDeviceRegistryProperty function sets a Plug and Play device property for a device. -+func SetupDiSetDeviceRegistryProperty(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, property SPDRP, propertyBuffers []byte) error { -+ return setupDiSetDeviceRegistryProperty(deviceInfoSet, deviceInfoData, property, &propertyBuffers[0], uint32(len(propertyBuffers))) -+} -+ -+// SetDeviceRegistryProperty function sets a Plug and Play device property for a device. -+func (deviceInfoSet DevInfo) SetDeviceRegistryProperty(deviceInfoData *DevInfoData, property SPDRP, propertyBuffers []byte) error { -+ return SetupDiSetDeviceRegistryProperty(deviceInfoSet, deviceInfoData, property, propertyBuffers) -+} -+ -+// SetDeviceRegistryPropertyString method sets a Plug and Play device property string for a device. -+func (deviceInfoSet DevInfo) SetDeviceRegistryPropertyString(deviceInfoData *DevInfoData, property SPDRP, str string) error { -+ str16, err := UTF16FromString(str) -+ if err != nil { -+ return err -+ } -+ err = SetupDiSetDeviceRegistryProperty(deviceInfoSet, deviceInfoData, property, utf16ToBuf(append(str16, 0))) -+ runtime.KeepAlive(str16) -+ return err -+} -+ -+//sys setupDiGetDeviceInstallParams(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, deviceInstallParams *DevInstallParams) (err error) = setupapi.SetupDiGetDeviceInstallParamsW -+ -+// SetupDiGetDeviceInstallParams function retrieves device installation parameters for a device information set or a particular device information element. -+func SetupDiGetDeviceInstallParams(deviceInfoSet DevInfo, deviceInfoData *DevInfoData) (*DevInstallParams, error) { -+ params := &DevInstallParams{} -+ params.size = uint32(unsafe.Sizeof(*params)) -+ -+ return params, setupDiGetDeviceInstallParams(deviceInfoSet, deviceInfoData, params) -+} -+ -+// DeviceInstallParams method retrieves device installation parameters for a device information set or a particular device information element. -+func (deviceInfoSet DevInfo) DeviceInstallParams(deviceInfoData *DevInfoData) (*DevInstallParams, error) { -+ return SetupDiGetDeviceInstallParams(deviceInfoSet, deviceInfoData) -+} -+ -+//sys setupDiGetDeviceInstanceId(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, instanceId *uint16, instanceIdSize uint32, instanceIdRequiredSize *uint32) (err error) = setupapi.SetupDiGetDeviceInstanceIdW -+ -+// SetupDiGetDeviceInstanceId function retrieves the instance ID of the device. -+func SetupDiGetDeviceInstanceId(deviceInfoSet DevInfo, deviceInfoData *DevInfoData) (string, error) { -+ reqSize := uint32(1024) -+ for { -+ buf := make([]uint16, reqSize) -+ err := setupDiGetDeviceInstanceId(deviceInfoSet, deviceInfoData, &buf[0], uint32(len(buf)), &reqSize) -+ if err == ERROR_INSUFFICIENT_BUFFER { -+ continue -+ } -+ if err != nil { -+ return "", err -+ } -+ return UTF16ToString(buf), nil -+ } -+} -+ -+// DeviceInstanceID method retrieves the instance ID of the device. -+func (deviceInfoSet DevInfo) DeviceInstanceID(deviceInfoData *DevInfoData) (string, error) { -+ return SetupDiGetDeviceInstanceId(deviceInfoSet, deviceInfoData) -+} -+ -+// SetupDiGetClassInstallParams function retrieves class installation parameters for a device information set or a particular device information element. -+//sys SetupDiGetClassInstallParams(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, classInstallParams *ClassInstallHeader, classInstallParamsSize uint32, requiredSize *uint32) (err error) = setupapi.SetupDiGetClassInstallParamsW -+ -+// ClassInstallParams method retrieves class installation parameters for a device information set or a particular device information element. -+func (deviceInfoSet DevInfo) ClassInstallParams(deviceInfoData *DevInfoData, classInstallParams *ClassInstallHeader, classInstallParamsSize uint32, requiredSize *uint32) error { -+ return SetupDiGetClassInstallParams(deviceInfoSet, deviceInfoData, classInstallParams, classInstallParamsSize, requiredSize) -+} -+ -+//sys SetupDiSetDeviceInstallParams(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, deviceInstallParams *DevInstallParams) (err error) = setupapi.SetupDiSetDeviceInstallParamsW -+ -+// SetDeviceInstallParams member sets device installation parameters for a device information set or a particular device information element. -+func (deviceInfoSet DevInfo) SetDeviceInstallParams(deviceInfoData *DevInfoData, deviceInstallParams *DevInstallParams) error { -+ return SetupDiSetDeviceInstallParams(deviceInfoSet, deviceInfoData, deviceInstallParams) -+} -+ -+// SetupDiSetClassInstallParams function sets or clears class install parameters for a device information set or a particular device information element. -+//sys SetupDiSetClassInstallParams(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, classInstallParams *ClassInstallHeader, classInstallParamsSize uint32) (err error) = setupapi.SetupDiSetClassInstallParamsW -+ -+// SetClassInstallParams method sets or clears class install parameters for a device information set or a particular device information element. -+func (deviceInfoSet DevInfo) SetClassInstallParams(deviceInfoData *DevInfoData, classInstallParams *ClassInstallHeader, classInstallParamsSize uint32) error { -+ return SetupDiSetClassInstallParams(deviceInfoSet, deviceInfoData, classInstallParams, classInstallParamsSize) -+} -+ -+//sys setupDiClassNameFromGuidEx(classGUID *GUID, className *uint16, classNameSize uint32, requiredSize *uint32, machineName *uint16, reserved uintptr) (err error) = setupapi.SetupDiClassNameFromGuidExW -+ -+// SetupDiClassNameFromGuidEx function retrieves the class name associated with a class GUID. The class can be installed on a local or remote computer. -+func SetupDiClassNameFromGuidEx(classGUID *GUID, machineName string) (className string, err error) { -+ var classNameUTF16 [MAX_CLASS_NAME_LEN]uint16 -+ -+ var machineNameUTF16 *uint16 -+ if machineName != "" { -+ machineNameUTF16, err = UTF16PtrFromString(machineName) -+ if err != nil { -+ return -+ } -+ } -+ -+ err = setupDiClassNameFromGuidEx(classGUID, &classNameUTF16[0], MAX_CLASS_NAME_LEN, nil, machineNameUTF16, 0) -+ if err != nil { -+ return -+ } -+ -+ className = UTF16ToString(classNameUTF16[:]) -+ return -+} -+ -+//sys setupDiClassGuidsFromNameEx(className *uint16, classGuidList *GUID, classGuidListSize uint32, requiredSize *uint32, machineName *uint16, reserved uintptr) (err error) = setupapi.SetupDiClassGuidsFromNameExW -+ -+// SetupDiClassGuidsFromNameEx function retrieves the GUIDs associated with the specified class name. This resulting list contains the classes currently installed on a local or remote computer. -+func SetupDiClassGuidsFromNameEx(className string, machineName string) ([]GUID, error) { -+ classNameUTF16, err := UTF16PtrFromString(className) -+ if err != nil { -+ return nil, err -+ } -+ -+ var machineNameUTF16 *uint16 -+ if machineName != "" { -+ machineNameUTF16, err = UTF16PtrFromString(machineName) -+ if err != nil { -+ return nil, err -+ } -+ } -+ -+ reqSize := uint32(4) -+ for { -+ buf := make([]GUID, reqSize) -+ err = setupDiClassGuidsFromNameEx(classNameUTF16, &buf[0], uint32(len(buf)), &reqSize, machineNameUTF16, 0) -+ if err == ERROR_INSUFFICIENT_BUFFER { -+ continue -+ } -+ if err != nil { -+ return nil, err -+ } -+ return buf[:reqSize], nil -+ } -+} -+ -+//sys setupDiGetSelectedDevice(deviceInfoSet DevInfo, deviceInfoData *DevInfoData) (err error) = setupapi.SetupDiGetSelectedDevice -+ -+// SetupDiGetSelectedDevice function retrieves the selected device information element in a device information set. -+func SetupDiGetSelectedDevice(deviceInfoSet DevInfo) (*DevInfoData, error) { -+ data := &DevInfoData{} -+ data.size = uint32(unsafe.Sizeof(*data)) -+ -+ return data, setupDiGetSelectedDevice(deviceInfoSet, data) -+} -+ -+// SelectedDevice method retrieves the selected device information element in a device information set. -+func (deviceInfoSet DevInfo) SelectedDevice() (*DevInfoData, error) { -+ return SetupDiGetSelectedDevice(deviceInfoSet) -+} -+ -+// SetupDiSetSelectedDevice function sets a device information element as the selected member of a device information set. This function is typically used by an installation wizard. -+//sys SetupDiSetSelectedDevice(deviceInfoSet DevInfo, deviceInfoData *DevInfoData) (err error) = setupapi.SetupDiSetSelectedDevice -+ -+// SetSelectedDevice method sets a device information element as the selected member of a device information set. This function is typically used by an installation wizard. -+func (deviceInfoSet DevInfo) SetSelectedDevice(deviceInfoData *DevInfoData) error { -+ return SetupDiSetSelectedDevice(deviceInfoSet, deviceInfoData) -+} -+ -+//sys setupUninstallOEMInf(infFileName *uint16, flags SUOI, reserved uintptr) (err error) = setupapi.SetupUninstallOEMInfW -+ -+// SetupUninstallOEMInf uninstalls the specified driver. -+func SetupUninstallOEMInf(infFileName string, flags SUOI) error { -+ infFileName16, err := UTF16PtrFromString(infFileName) -+ if err != nil { -+ return err -+ } -+ return setupUninstallOEMInf(infFileName16, flags, 0) -+} -+ -+//sys cm_MapCrToWin32Err(configRet CONFIGRET, defaultWin32Error Errno) (ret Errno) = CfgMgr32.CM_MapCrToWin32Err -+ -+//sys cm_Get_Device_Interface_List_Size(len *uint32, interfaceClass *GUID, deviceID *uint16, flags uint32) (ret CONFIGRET) = CfgMgr32.CM_Get_Device_Interface_List_SizeW -+//sys cm_Get_Device_Interface_List(interfaceClass *GUID, deviceID *uint16, buffer *uint16, bufferLen uint32, flags uint32) (ret CONFIGRET) = CfgMgr32.CM_Get_Device_Interface_ListW -+ -+func CM_Get_Device_Interface_List(deviceID string, interfaceClass *GUID, flags uint32) ([]string, error) { -+ deviceID16, err := UTF16PtrFromString(deviceID) -+ if err != nil { -+ return nil, err -+ } -+ var buf []uint16 -+ var buflen uint32 -+ for { -+ if ret := cm_Get_Device_Interface_List_Size(&buflen, interfaceClass, deviceID16, flags); ret != CR_SUCCESS { -+ return nil, ret -+ } -+ buf = make([]uint16, buflen) -+ if ret := cm_Get_Device_Interface_List(interfaceClass, deviceID16, &buf[0], buflen, flags); ret == CR_SUCCESS { -+ break -+ } else if ret != CR_BUFFER_SMALL { -+ return nil, ret -+ } -+ } -+ var interfaces []string -+ for i := 0; i < len(buf); { -+ j := i + wcslen(buf[i:]) -+ if i < j { -+ interfaces = append(interfaces, UTF16ToString(buf[i:j])) -+ } -+ i = j + 1 -+ } -+ if interfaces == nil { -+ return nil, ERROR_NO_SUCH_DEVICE_INTERFACE -+ } -+ return interfaces, nil -+} -+ -+//sys cm_Get_DevNode_Status(status *uint32, problemNumber *uint32, devInst DEVINST, flags uint32) (ret CONFIGRET) = CfgMgr32.CM_Get_DevNode_Status -+ -+func CM_Get_DevNode_Status(status *uint32, problemNumber *uint32, devInst DEVINST, flags uint32) error { -+ ret := cm_Get_DevNode_Status(status, problemNumber, devInst, flags) -+ if ret == CR_SUCCESS { -+ return nil -+ } -+ return ret -+} -diff --git a/vendor/golang.org/x/sys/windows/str.go b/vendor/golang.org/x/sys/windows/str.go -index 917cc2a..4fc0143 100644 ---- a/vendor/golang.org/x/sys/windows/str.go -+++ b/vendor/golang.org/x/sys/windows/str.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build windows - // +build windows - - package windows -diff --git a/vendor/golang.org/x/sys/windows/syscall.go b/vendor/golang.org/x/sys/windows/syscall.go -index af828a9..72074d5 100644 ---- a/vendor/golang.org/x/sys/windows/syscall.go -+++ b/vendor/golang.org/x/sys/windows/syscall.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build windows - // +build windows - - // Package windows contains an interface to the low-level operating system -@@ -25,17 +26,20 @@ - package windows // import "golang.org/x/sys/windows" - - import ( -+ "bytes" -+ "strings" - "syscall" -+ "unsafe" -+ -+ "golang.org/x/sys/internal/unsafeheader" - ) - - // ByteSliceFromString returns a NUL-terminated slice of bytes - // containing the text of s. If s contains a NUL byte at any - // location, it returns (nil, syscall.EINVAL). - func ByteSliceFromString(s string) ([]byte, error) { -- for i := 0; i < len(s); i++ { -- if s[i] == 0 { -- return nil, syscall.EINVAL -- } -+ if strings.IndexByte(s, 0) != -1 { -+ return nil, syscall.EINVAL - } - a := make([]byte, len(s)+1) - copy(a, s) -@@ -53,6 +57,41 @@ func BytePtrFromString(s string) (*byte, error) { - return &a[0], nil - } - -+// ByteSliceToString returns a string form of the text represented by the slice s, with a terminating NUL and any -+// bytes after the NUL removed. -+func ByteSliceToString(s []byte) string { -+ if i := bytes.IndexByte(s, 0); i != -1 { -+ s = s[:i] -+ } -+ return string(s) -+} -+ -+// BytePtrToString takes a pointer to a sequence of text and returns the corresponding string. -+// If the pointer is nil, it returns the empty string. It assumes that the text sequence is terminated -+// at a zero byte; if the zero byte is not present, the program may crash. -+func BytePtrToString(p *byte) string { -+ if p == nil { -+ return "" -+ } -+ if *p == 0 { -+ return "" -+ } -+ -+ // Find NUL terminator. -+ n := 0 -+ for ptr := unsafe.Pointer(p); *(*byte)(ptr) != 0; n++ { -+ ptr = unsafe.Pointer(uintptr(ptr) + 1) -+ } -+ -+ var s []byte -+ h := (*unsafeheader.Slice)(unsafe.Pointer(&s)) -+ h.Data = unsafe.Pointer(p) -+ h.Len = n -+ h.Cap = n -+ -+ return string(s) -+} -+ - // Single-word zero for use when we need a valid pointer to 0 bytes. - // See mksyscall.pl. - var _zero uintptr -diff --git a/vendor/golang.org/x/sys/windows/syscall_windows.go b/vendor/golang.org/x/sys/windows/syscall_windows.go -index 053d664..e279138 100644 ---- a/vendor/golang.org/x/sys/windows/syscall_windows.go -+++ b/vendor/golang.org/x/sys/windows/syscall_windows.go -@@ -8,17 +8,24 @@ package windows - - import ( - errorspkg "errors" -+ "fmt" -+ "runtime" -+ "strings" - "sync" - "syscall" - "time" - "unicode/utf16" - "unsafe" -+ -+ "golang.org/x/sys/internal/unsafeheader" - ) - - type Handle uintptr -+type HWND uintptr - - const ( - InvalidHandle = ^Handle(0) -+ InvalidHWND = ^HWND(0) - - // Flags for DefineDosDevice. - DDD_EXACT_MATCH_ON_REMOVE = 0x00000004 -@@ -61,9 +68,8 @@ const ( - LOCKFILE_FAIL_IMMEDIATELY = 0x00000001 - LOCKFILE_EXCLUSIVE_LOCK = 0x00000002 - -- // Return values of SleepEx and other APC functions -- STATUS_USER_APC = 0x000000C0 -- WAIT_IO_COMPLETION = STATUS_USER_APC -+ // Return value of SleepEx and other APC functions -+ WAIT_IO_COMPLETION = 0x000000C0 - ) - - // StringToUTF16 is deprecated. Use UTF16FromString instead. -@@ -81,20 +87,18 @@ func StringToUTF16(s string) []uint16 { - // s, with a terminating NUL added. If s contains a NUL byte at any - // location, it returns (nil, syscall.EINVAL). - func UTF16FromString(s string) ([]uint16, error) { -- for i := 0; i < len(s); i++ { -- if s[i] == 0 { -- return nil, syscall.EINVAL -- } -+ if strings.IndexByte(s, 0) != -1 { -+ return nil, syscall.EINVAL - } - return utf16.Encode([]rune(s + "\x00")), nil - } - - // UTF16ToString returns the UTF-8 encoding of the UTF-16 sequence s, --// with a terminating NUL removed. -+// with a terminating NUL and any bytes after the NUL removed. - func UTF16ToString(s []uint16) string { - for i, v := range s { - if v == 0 { -- s = s[0:i] -+ s = s[:i] - break - } - } -@@ -117,6 +121,32 @@ func UTF16PtrFromString(s string) (*uint16, error) { - return &a[0], nil - } - -+// UTF16PtrToString takes a pointer to a UTF-16 sequence and returns the corresponding UTF-8 encoded string. -+// If the pointer is nil, it returns the empty string. It assumes that the UTF-16 sequence is terminated -+// at a zero word; if the zero word is not present, the program may crash. -+func UTF16PtrToString(p *uint16) string { -+ if p == nil { -+ return "" -+ } -+ if *p == 0 { -+ return "" -+ } -+ -+ // Find NUL terminator. -+ n := 0 -+ for ptr := unsafe.Pointer(p); *(*uint16)(ptr) != 0; n++ { -+ ptr = unsafe.Pointer(uintptr(ptr) + unsafe.Sizeof(*p)) -+ } -+ -+ var s []uint16 -+ h := (*unsafeheader.Slice)(unsafe.Pointer(&s)) -+ h.Data = unsafe.Pointer(p) -+ h.Len = n -+ h.Cap = n -+ -+ return string(utf16.Decode(s)) -+} -+ - func Getpagesize() int { return 4096 } - - // NewCallback converts a Go function to a function pointer conforming to the stdcall calling convention. -@@ -142,13 +172,21 @@ func NewCallbackCDecl(fn interface{}) uintptr { - //sys GetProcAddress(module Handle, procname string) (proc uintptr, err error) - //sys GetModuleFileName(module Handle, filename *uint16, size uint32) (n uint32, err error) = kernel32.GetModuleFileNameW - //sys GetModuleHandleEx(flags uint32, moduleName *uint16, module *Handle) (err error) = kernel32.GetModuleHandleExW -+//sys SetDefaultDllDirectories(directoryFlags uint32) (err error) -+//sys SetDllDirectory(path string) (err error) = kernel32.SetDllDirectoryW - //sys GetVersion() (ver uint32, err error) - //sys FormatMessage(flags uint32, msgsrc uintptr, msgid uint32, langid uint32, buf []uint16, args *byte) (n uint32, err error) = FormatMessageW - //sys ExitProcess(exitcode uint32) - //sys IsWow64Process(handle Handle, isWow64 *bool) (err error) = IsWow64Process -+//sys IsWow64Process2(handle Handle, processMachine *uint16, nativeMachine *uint16) (err error) = IsWow64Process2? - //sys CreateFile(name *uint16, access uint32, mode uint32, sa *SecurityAttributes, createmode uint32, attrs uint32, templatefile Handle) (handle Handle, err error) [failretval==InvalidHandle] = CreateFileW --//sys ReadFile(handle Handle, buf []byte, done *uint32, overlapped *Overlapped) (err error) --//sys WriteFile(handle Handle, buf []byte, done *uint32, overlapped *Overlapped) (err error) -+//sys CreateNamedPipe(name *uint16, flags uint32, pipeMode uint32, maxInstances uint32, outSize uint32, inSize uint32, defaultTimeout uint32, sa *SecurityAttributes) (handle Handle, err error) [failretval==InvalidHandle] = CreateNamedPipeW -+//sys ConnectNamedPipe(pipe Handle, overlapped *Overlapped) (err error) -+//sys GetNamedPipeInfo(pipe Handle, flags *uint32, outSize *uint32, inSize *uint32, maxInstances *uint32) (err error) -+//sys GetNamedPipeHandleState(pipe Handle, state *uint32, curInstances *uint32, maxCollectionCount *uint32, collectDataTimeout *uint32, userName *uint16, maxUserNameSize uint32) (err error) = GetNamedPipeHandleStateW -+//sys SetNamedPipeHandleState(pipe Handle, state *uint32, maxCollectionCount *uint32, collectDataTimeout *uint32) (err error) = SetNamedPipeHandleState -+//sys readFile(handle Handle, buf []byte, done *uint32, overlapped *Overlapped) (err error) = ReadFile -+//sys writeFile(handle Handle, buf []byte, done *uint32, overlapped *Overlapped) (err error) = WriteFile - //sys GetOverlappedResult(handle Handle, overlapped *Overlapped, done *uint32, wait bool) (err error) - //sys SetFilePointer(handle Handle, lowoffset int32, highoffsetptr *int32, whence uint32) (newlowoffset uint32, err error) [failretval==0xffffffff] - //sys CloseHandle(handle Handle) (err error) -@@ -159,6 +197,7 @@ func NewCallbackCDecl(fn interface{}) uintptr { - //sys FindClose(handle Handle) (err error) - //sys GetFileInformationByHandle(handle Handle, data *ByHandleFileInformation) (err error) - //sys GetFileInformationByHandleEx(handle Handle, class uint32, outBuffer *byte, outBufferLen uint32) (err error) -+//sys SetFileInformationByHandle(handle Handle, class uint32, inBuffer *byte, inBufferLen uint32) (err error) - //sys GetCurrentDirectory(buflen uint32, buf *uint16) (n uint32, err error) = GetCurrentDirectoryW - //sys SetCurrentDirectory(path *uint16) (err error) = SetCurrentDirectoryW - //sys CreateDirectory(path *uint16, sa *SecurityAttributes) (err error) = CreateDirectoryW -@@ -174,14 +213,22 @@ func NewCallbackCDecl(fn interface{}) uintptr { - //sys GetSystemTimeAsFileTime(time *Filetime) - //sys GetSystemTimePreciseAsFileTime(time *Filetime) - //sys GetTimeZoneInformation(tzi *Timezoneinformation) (rc uint32, err error) [failretval==0xffffffff] --//sys CreateIoCompletionPort(filehandle Handle, cphandle Handle, key uint32, threadcnt uint32) (handle Handle, err error) --//sys GetQueuedCompletionStatus(cphandle Handle, qty *uint32, key *uint32, overlapped **Overlapped, timeout uint32) (err error) --//sys PostQueuedCompletionStatus(cphandle Handle, qty uint32, key uint32, overlapped *Overlapped) (err error) -+//sys CreateIoCompletionPort(filehandle Handle, cphandle Handle, key uintptr, threadcnt uint32) (handle Handle, err error) -+//sys GetQueuedCompletionStatus(cphandle Handle, qty *uint32, key *uintptr, overlapped **Overlapped, timeout uint32) (err error) -+//sys PostQueuedCompletionStatus(cphandle Handle, qty uint32, key uintptr, overlapped *Overlapped) (err error) - //sys CancelIo(s Handle) (err error) - //sys CancelIoEx(s Handle, o *Overlapped) (err error) - //sys CreateProcess(appName *uint16, commandLine *uint16, procSecurity *SecurityAttributes, threadSecurity *SecurityAttributes, inheritHandles bool, creationFlags uint32, env *uint16, currentDir *uint16, startupInfo *StartupInfo, outProcInfo *ProcessInformation) (err error) = CreateProcessW -+//sys CreateProcessAsUser(token Token, appName *uint16, commandLine *uint16, procSecurity *SecurityAttributes, threadSecurity *SecurityAttributes, inheritHandles bool, creationFlags uint32, env *uint16, currentDir *uint16, startupInfo *StartupInfo, outProcInfo *ProcessInformation) (err error) = advapi32.CreateProcessAsUserW -+//sys initializeProcThreadAttributeList(attrlist *ProcThreadAttributeList, attrcount uint32, flags uint32, size *uintptr) (err error) = InitializeProcThreadAttributeList -+//sys deleteProcThreadAttributeList(attrlist *ProcThreadAttributeList) = DeleteProcThreadAttributeList -+//sys updateProcThreadAttribute(attrlist *ProcThreadAttributeList, flags uint32, attr uintptr, value unsafe.Pointer, size uintptr, prevvalue unsafe.Pointer, returnedsize *uintptr) (err error) = UpdateProcThreadAttribute - //sys OpenProcess(desiredAccess uint32, inheritHandle bool, processId uint32) (handle Handle, err error) - //sys ShellExecute(hwnd Handle, verb *uint16, file *uint16, args *uint16, cwd *uint16, showCmd int32) (err error) [failretval<=32] = shell32.ShellExecuteW -+//sys GetWindowThreadProcessId(hwnd HWND, pid *uint32) (tid uint32, err error) = user32.GetWindowThreadProcessId -+//sys GetShellWindow() (shellWindow HWND) = user32.GetShellWindow -+//sys MessageBox(hwnd HWND, text *uint16, caption *uint16, boxtype uint32) (ret int32, err error) [failretval==0] = user32.MessageBoxW -+//sys ExitWindowsEx(flags uint32, reason uint32) (err error) = user32.ExitWindowsEx - //sys shGetKnownFolderPath(id *KNOWNFOLDERID, flags uint32, token Token, path **uint16) (ret error) = shell32.SHGetKnownFolderPath - //sys TerminateProcess(handle Handle, exitcode uint32) (err error) - //sys GetExitCodeProcess(handle Handle, exitcode *uint32) (err error) -@@ -200,6 +247,7 @@ func NewCallbackCDecl(fn interface{}) uintptr { - //sys FreeEnvironmentStrings(envs *uint16) (err error) = kernel32.FreeEnvironmentStringsW - //sys GetEnvironmentVariable(name *uint16, buffer *uint16, size uint32) (n uint32, err error) = kernel32.GetEnvironmentVariableW - //sys SetEnvironmentVariable(name *uint16, value *uint16) (err error) = kernel32.SetEnvironmentVariableW -+//sys ExpandEnvironmentStrings(src *uint16, dst *uint16, size uint32) (n uint32, err error) = kernel32.ExpandEnvironmentStringsW - //sys CreateEnvironmentBlock(block **uint16, token Token, inheritExisting bool) (err error) = userenv.CreateEnvironmentBlock - //sys DestroyEnvironmentBlock(block *uint16) (err error) = userenv.DestroyEnvironmentBlock - //sys getTickCount64() (ms uint64) = kernel32.GetTickCount64 -@@ -210,12 +258,14 @@ func NewCallbackCDecl(fn interface{}) uintptr { - //sys GetCommandLine() (cmd *uint16) = kernel32.GetCommandLineW - //sys CommandLineToArgv(cmd *uint16, argc *int32) (argv *[8192]*[8192]uint16, err error) [failretval==nil] = shell32.CommandLineToArgvW - //sys LocalFree(hmem Handle) (handle Handle, err error) [failretval!=0] -+//sys LocalAlloc(flags uint32, length uint32) (ptr uintptr, err error) - //sys SetHandleInformation(handle Handle, mask uint32, flags uint32) (err error) - //sys FlushFileBuffers(handle Handle) (err error) - //sys GetFullPathName(path *uint16, buflen uint32, buf *uint16, fname **uint16) (n uint32, err error) = kernel32.GetFullPathNameW - //sys GetLongPathName(path *uint16, buf *uint16, buflen uint32) (n uint32, err error) = kernel32.GetLongPathNameW - //sys GetShortPathName(longpath *uint16, shortpath *uint16, buflen uint32) (n uint32, err error) = kernel32.GetShortPathNameW --//sys CreateFileMapping(fhandle Handle, sa *SecurityAttributes, prot uint32, maxSizeHigh uint32, maxSizeLow uint32, name *uint16) (handle Handle, err error) = kernel32.CreateFileMappingW -+//sys GetFinalPathNameByHandle(file Handle, filePath *uint16, filePathSize uint32, flags uint32) (n uint32, err error) = kernel32.GetFinalPathNameByHandleW -+//sys CreateFileMapping(fhandle Handle, sa *SecurityAttributes, prot uint32, maxSizeHigh uint32, maxSizeLow uint32, name *uint16) (handle Handle, err error) [failretval == 0 || e1 == ERROR_ALREADY_EXISTS] = kernel32.CreateFileMappingW - //sys MapViewOfFile(handle Handle, access uint32, offsetHigh uint32, offsetLow uint32, length uintptr) (addr uintptr, err error) - //sys UnmapViewOfFile(addr uintptr) (err error) - //sys FlushViewOfFile(addr uintptr, length uintptr) (err error) -@@ -224,30 +274,56 @@ func NewCallbackCDecl(fn interface{}) uintptr { - //sys VirtualAlloc(address uintptr, size uintptr, alloctype uint32, protect uint32) (value uintptr, err error) = kernel32.VirtualAlloc - //sys VirtualFree(address uintptr, size uintptr, freetype uint32) (err error) = kernel32.VirtualFree - //sys VirtualProtect(address uintptr, size uintptr, newprotect uint32, oldprotect *uint32) (err error) = kernel32.VirtualProtect -+//sys VirtualProtectEx(process Handle, address uintptr, size uintptr, newProtect uint32, oldProtect *uint32) (err error) = kernel32.VirtualProtectEx -+//sys VirtualQuery(address uintptr, buffer *MemoryBasicInformation, length uintptr) (err error) = kernel32.VirtualQuery -+//sys VirtualQueryEx(process Handle, address uintptr, buffer *MemoryBasicInformation, length uintptr) (err error) = kernel32.VirtualQueryEx -+//sys ReadProcessMemory(process Handle, baseAddress uintptr, buffer *byte, size uintptr, numberOfBytesRead *uintptr) (err error) = kernel32.ReadProcessMemory -+//sys WriteProcessMemory(process Handle, baseAddress uintptr, buffer *byte, size uintptr, numberOfBytesWritten *uintptr) (err error) = kernel32.WriteProcessMemory - //sys TransmitFile(s Handle, handle Handle, bytesToWrite uint32, bytsPerSend uint32, overlapped *Overlapped, transmitFileBuf *TransmitFileBuffers, flags uint32) (err error) = mswsock.TransmitFile - //sys ReadDirectoryChanges(handle Handle, buf *byte, buflen uint32, watchSubTree bool, mask uint32, retlen *uint32, overlapped *Overlapped, completionRoutine uintptr) (err error) = kernel32.ReadDirectoryChangesW -+//sys FindFirstChangeNotification(path string, watchSubtree bool, notifyFilter uint32) (handle Handle, err error) [failretval==InvalidHandle] = kernel32.FindFirstChangeNotificationW -+//sys FindNextChangeNotification(handle Handle) (err error) -+//sys FindCloseChangeNotification(handle Handle) (err error) - //sys CertOpenSystemStore(hprov Handle, name *uint16) (store Handle, err error) = crypt32.CertOpenSystemStoreW --//sys CertOpenStore(storeProvider uintptr, msgAndCertEncodingType uint32, cryptProv uintptr, flags uint32, para uintptr) (handle Handle, err error) [failretval==InvalidHandle] = crypt32.CertOpenStore -+//sys CertOpenStore(storeProvider uintptr, msgAndCertEncodingType uint32, cryptProv uintptr, flags uint32, para uintptr) (handle Handle, err error) = crypt32.CertOpenStore - //sys CertEnumCertificatesInStore(store Handle, prevContext *CertContext) (context *CertContext, err error) [failretval==nil] = crypt32.CertEnumCertificatesInStore --//sys CertAddCertificateContextToStore(store Handle, certContext *CertContext, addDisposition uint32, storeContext **CertContext) (err error) = crypt32.CertAddCertificateContextToStore -+//sys CertAddCertificateContextToStore(store Handle, certContext *CertContext, addDisposition uint32, storeContext **CertContext) (err error) = crypt32.CertAddCertificateContextToStore - //sys CertCloseStore(store Handle, flags uint32) (err error) = crypt32.CertCloseStore --//sys CertGetCertificateChain(engine Handle, leaf *CertContext, time *Filetime, additionalStore Handle, para *CertChainPara, flags uint32, reserved uintptr, chainCtx **CertChainContext) (err error) = crypt32.CertGetCertificateChain --//sys CertFreeCertificateChain(ctx *CertChainContext) = crypt32.CertFreeCertificateChain --//sys CertCreateCertificateContext(certEncodingType uint32, certEncoded *byte, encodedLen uint32) (context *CertContext, err error) [failretval==nil] = crypt32.CertCreateCertificateContext --//sys CertFreeCertificateContext(ctx *CertContext) (err error) = crypt32.CertFreeCertificateContext --//sys CertVerifyCertificateChainPolicy(policyOID uintptr, chain *CertChainContext, para *CertChainPolicyPara, status *CertChainPolicyStatus) (err error) = crypt32.CertVerifyCertificateChainPolicy -+//sys CertDeleteCertificateFromStore(certContext *CertContext) (err error) = crypt32.CertDeleteCertificateFromStore -+//sys CertDuplicateCertificateContext(certContext *CertContext) (dupContext *CertContext) = crypt32.CertDuplicateCertificateContext -+//sys PFXImportCertStore(pfx *CryptDataBlob, password *uint16, flags uint32) (store Handle, err error) = crypt32.PFXImportCertStore -+//sys CertGetCertificateChain(engine Handle, leaf *CertContext, time *Filetime, additionalStore Handle, para *CertChainPara, flags uint32, reserved uintptr, chainCtx **CertChainContext) (err error) = crypt32.CertGetCertificateChain -+//sys CertFreeCertificateChain(ctx *CertChainContext) = crypt32.CertFreeCertificateChain -+//sys CertCreateCertificateContext(certEncodingType uint32, certEncoded *byte, encodedLen uint32) (context *CertContext, err error) [failretval==nil] = crypt32.CertCreateCertificateContext -+//sys CertFreeCertificateContext(ctx *CertContext) (err error) = crypt32.CertFreeCertificateContext -+//sys CertVerifyCertificateChainPolicy(policyOID uintptr, chain *CertChainContext, para *CertChainPolicyPara, status *CertChainPolicyStatus) (err error) = crypt32.CertVerifyCertificateChainPolicy -+//sys CertGetNameString(certContext *CertContext, nameType uint32, flags uint32, typePara unsafe.Pointer, name *uint16, size uint32) (chars uint32) = crypt32.CertGetNameStringW -+//sys CertFindExtension(objId *byte, countExtensions uint32, extensions *CertExtension) (ret *CertExtension) = crypt32.CertFindExtension -+//sys CertFindCertificateInStore(store Handle, certEncodingType uint32, findFlags uint32, findType uint32, findPara unsafe.Pointer, prevCertContext *CertContext) (cert *CertContext, err error) [failretval==nil] = crypt32.CertFindCertificateInStore -+//sys CertFindChainInStore(store Handle, certEncodingType uint32, findFlags uint32, findType uint32, findPara unsafe.Pointer, prevChainContext *CertChainContext) (certchain *CertChainContext, err error) [failretval==nil] = crypt32.CertFindChainInStore -+//sys CryptAcquireCertificatePrivateKey(cert *CertContext, flags uint32, parameters unsafe.Pointer, cryptProvOrNCryptKey *Handle, keySpec *uint32, callerFreeProvOrNCryptKey *bool) (err error) = crypt32.CryptAcquireCertificatePrivateKey -+//sys CryptQueryObject(objectType uint32, object unsafe.Pointer, expectedContentTypeFlags uint32, expectedFormatTypeFlags uint32, flags uint32, msgAndCertEncodingType *uint32, contentType *uint32, formatType *uint32, certStore *Handle, msg *Handle, context *unsafe.Pointer) (err error) = crypt32.CryptQueryObject -+//sys CryptDecodeObject(encodingType uint32, structType *byte, encodedBytes *byte, lenEncodedBytes uint32, flags uint32, decoded unsafe.Pointer, decodedLen *uint32) (err error) = crypt32.CryptDecodeObject -+//sys CryptProtectData(dataIn *DataBlob, name *uint16, optionalEntropy *DataBlob, reserved uintptr, promptStruct *CryptProtectPromptStruct, flags uint32, dataOut *DataBlob) (err error) = crypt32.CryptProtectData -+//sys CryptUnprotectData(dataIn *DataBlob, name **uint16, optionalEntropy *DataBlob, reserved uintptr, promptStruct *CryptProtectPromptStruct, flags uint32, dataOut *DataBlob) (err error) = crypt32.CryptUnprotectData -+//sys WinVerifyTrustEx(hwnd HWND, actionId *GUID, data *WinTrustData) (ret error) = wintrust.WinVerifyTrustEx - //sys RegOpenKeyEx(key Handle, subkey *uint16, options uint32, desiredAccess uint32, result *Handle) (regerrno error) = advapi32.RegOpenKeyExW - //sys RegCloseKey(key Handle) (regerrno error) = advapi32.RegCloseKey - //sys RegQueryInfoKey(key Handle, class *uint16, classLen *uint32, reserved *uint32, subkeysLen *uint32, maxSubkeyLen *uint32, maxClassLen *uint32, valuesLen *uint32, maxValueNameLen *uint32, maxValueLen *uint32, saLen *uint32, lastWriteTime *Filetime) (regerrno error) = advapi32.RegQueryInfoKeyW - //sys RegEnumKeyEx(key Handle, index uint32, name *uint16, nameLen *uint32, reserved *uint32, class *uint16, classLen *uint32, lastWriteTime *Filetime) (regerrno error) = advapi32.RegEnumKeyExW - //sys RegQueryValueEx(key Handle, name *uint16, reserved *uint32, valtype *uint32, buf *byte, buflen *uint32) (regerrno error) = advapi32.RegQueryValueExW -+//sys RegNotifyChangeKeyValue(key Handle, watchSubtree bool, notifyFilter uint32, event Handle, asynchronous bool) (regerrno error) = advapi32.RegNotifyChangeKeyValue - //sys GetCurrentProcessId() (pid uint32) = kernel32.GetCurrentProcessId -+//sys ProcessIdToSessionId(pid uint32, sessionid *uint32) (err error) = kernel32.ProcessIdToSessionId - //sys GetConsoleMode(console Handle, mode *uint32) (err error) = kernel32.GetConsoleMode - //sys SetConsoleMode(console Handle, mode uint32) (err error) = kernel32.SetConsoleMode - //sys GetConsoleScreenBufferInfo(console Handle, info *ConsoleScreenBufferInfo) (err error) = kernel32.GetConsoleScreenBufferInfo -+//sys setConsoleCursorPosition(console Handle, position uint32) (err error) = kernel32.SetConsoleCursorPosition - //sys WriteConsole(console Handle, buf *uint16, towrite uint32, written *uint32, reserved *byte) (err error) = kernel32.WriteConsoleW - //sys ReadConsole(console Handle, buf *uint16, toread uint32, read *uint32, inputControl *byte) (err error) = kernel32.ReadConsoleW - //sys CreateToolhelp32Snapshot(flags uint32, processId uint32) (handle Handle, err error) [failretval==InvalidHandle] = kernel32.CreateToolhelp32Snapshot -+//sys Module32First(snapshot Handle, moduleEntry *ModuleEntry32) (err error) = kernel32.Module32FirstW -+//sys Module32Next(snapshot Handle, moduleEntry *ModuleEntry32) (err error) = kernel32.Module32NextW - //sys Process32First(snapshot Handle, procEntry *ProcessEntry32) (err error) = kernel32.Process32FirstW - //sys Process32Next(snapshot Handle, procEntry *ProcessEntry32) (err error) = kernel32.Process32NextW - //sys Thread32First(snapshot Handle, threadEntry *ThreadEntry32) (err error) -@@ -257,14 +333,14 @@ func NewCallbackCDecl(fn interface{}) uintptr { - //sys CreateSymbolicLink(symlinkfilename *uint16, targetfilename *uint16, flags uint32) (err error) [failretval&0xff==0] = CreateSymbolicLinkW - //sys CreateHardLink(filename *uint16, existingfilename *uint16, reserved uintptr) (err error) [failretval&0xff==0] = CreateHardLinkW - //sys GetCurrentThreadId() (id uint32) --//sys CreateEvent(eventAttrs *SecurityAttributes, manualReset uint32, initialState uint32, name *uint16) (handle Handle, err error) = kernel32.CreateEventW --//sys CreateEventEx(eventAttrs *SecurityAttributes, name *uint16, flags uint32, desiredAccess uint32) (handle Handle, err error) = kernel32.CreateEventExW -+//sys CreateEvent(eventAttrs *SecurityAttributes, manualReset uint32, initialState uint32, name *uint16) (handle Handle, err error) [failretval == 0 || e1 == ERROR_ALREADY_EXISTS] = kernel32.CreateEventW -+//sys CreateEventEx(eventAttrs *SecurityAttributes, name *uint16, flags uint32, desiredAccess uint32) (handle Handle, err error) [failretval == 0 || e1 == ERROR_ALREADY_EXISTS] = kernel32.CreateEventExW - //sys OpenEvent(desiredAccess uint32, inheritHandle bool, name *uint16) (handle Handle, err error) = kernel32.OpenEventW - //sys SetEvent(event Handle) (err error) = kernel32.SetEvent - //sys ResetEvent(event Handle) (err error) = kernel32.ResetEvent - //sys PulseEvent(event Handle) (err error) = kernel32.PulseEvent --//sys CreateMutex(mutexAttrs *SecurityAttributes, initialOwner bool, name *uint16) (handle Handle, err error) = kernel32.CreateMutexW --//sys CreateMutexEx(mutexAttrs *SecurityAttributes, name *uint16, flags uint32, desiredAccess uint32) (handle Handle, err error) = kernel32.CreateMutexExW -+//sys CreateMutex(mutexAttrs *SecurityAttributes, initialOwner bool, name *uint16) (handle Handle, err error) [failretval == 0 || e1 == ERROR_ALREADY_EXISTS] = kernel32.CreateMutexW -+//sys CreateMutexEx(mutexAttrs *SecurityAttributes, name *uint16, flags uint32, desiredAccess uint32) (handle Handle, err error) [failretval == 0 || e1 == ERROR_ALREADY_EXISTS] = kernel32.CreateMutexExW - //sys OpenMutex(desiredAccess uint32, inheritHandle bool, name *uint16) (handle Handle, err error) = kernel32.OpenMutexW - //sys ReleaseMutex(mutex Handle) (err error) = kernel32.ReleaseMutex - //sys SleepEx(milliseconds uint32, alertable bool) (ret uint32) = kernel32.SleepEx -@@ -275,11 +351,19 @@ func NewCallbackCDecl(fn interface{}) uintptr { - //sys ResumeThread(thread Handle) (ret uint32, err error) [failretval==0xffffffff] = kernel32.ResumeThread - //sys SetPriorityClass(process Handle, priorityClass uint32) (err error) = kernel32.SetPriorityClass - //sys GetPriorityClass(process Handle) (ret uint32, err error) = kernel32.GetPriorityClass -+//sys QueryInformationJobObject(job Handle, JobObjectInformationClass int32, JobObjectInformation uintptr, JobObjectInformationLength uint32, retlen *uint32) (err error) = kernel32.QueryInformationJobObject - //sys SetInformationJobObject(job Handle, JobObjectInformationClass uint32, JobObjectInformation uintptr, JobObjectInformationLength uint32) (ret int, err error) - //sys GenerateConsoleCtrlEvent(ctrlEvent uint32, processGroupID uint32) (err error) - //sys GetProcessId(process Handle) (id uint32, err error) -+//sys QueryFullProcessImageName(proc Handle, flags uint32, exeName *uint16, size *uint32) (err error) = kernel32.QueryFullProcessImageNameW - //sys OpenThread(desiredAccess uint32, inheritHandle bool, threadId uint32) (handle Handle, err error) - //sys SetProcessPriorityBoost(process Handle, disable bool) (err error) = kernel32.SetProcessPriorityBoost -+//sys GetProcessWorkingSetSizeEx(hProcess Handle, lpMinimumWorkingSetSize *uintptr, lpMaximumWorkingSetSize *uintptr, flags *uint32) -+//sys SetProcessWorkingSetSizeEx(hProcess Handle, dwMinimumWorkingSetSize uintptr, dwMaximumWorkingSetSize uintptr, flags uint32) (err error) -+//sys GetCommTimeouts(handle Handle, timeouts *CommTimeouts) (err error) -+//sys SetCommTimeouts(handle Handle, timeouts *CommTimeouts) (err error) -+//sys GetActiveProcessorCount(groupNumber uint16) (ret uint32) -+//sys GetMaximumProcessorCount(groupNumber uint16) (ret uint32) - - // Volume Management Functions - //sys DefineDosDevice(flags uint32, deviceName *uint16, targetPath *uint16) (err error) = DefineDosDeviceW -@@ -302,8 +386,6 @@ func NewCallbackCDecl(fn interface{}) uintptr { - //sys QueryDosDevice(deviceName *uint16, targetPath *uint16, max uint32) (n uint32, err error) [failretval==0] = QueryDosDeviceW - //sys SetVolumeLabel(rootPathName *uint16, volumeName *uint16) (err error) = SetVolumeLabelW - //sys SetVolumeMountPoint(volumeMountPoint *uint16, volumeName *uint16) (err error) = SetVolumeMountPointW --//sys MessageBox(hwnd Handle, text *uint16, caption *uint16, boxtype uint32) (ret int32, err error) [failretval==0] = user32.MessageBoxW --//sys ExitWindowsEx(flags uint32, reason uint32) (err error) = user32.ExitWindowsEx - //sys InitiateSystemShutdownEx(machineName *uint16, message *uint16, timeout uint32, forceAppsClosed bool, rebootAfterShutdown bool, reason uint32) (err error) = advapi32.InitiateSystemShutdownExW - //sys SetProcessShutdownParameters(level uint32, flags uint32) (err error) = kernel32.SetProcessShutdownParameters - //sys GetProcessShutdownParameters(level *uint32, flags *uint32) (err error) = kernel32.GetProcessShutdownParameters -@@ -311,15 +393,51 @@ func NewCallbackCDecl(fn interface{}) uintptr { - //sys stringFromGUID2(rguid *GUID, lpsz *uint16, cchMax int32) (chars int32) = ole32.StringFromGUID2 - //sys coCreateGuid(pguid *GUID) (ret error) = ole32.CoCreateGuid - //sys CoTaskMemFree(address unsafe.Pointer) = ole32.CoTaskMemFree --//sys rtlGetVersion(info *OsVersionInfoEx) (ret error) = ntdll.RtlGetVersion --//sys rtlGetNtVersionNumbers(majorVersion *uint32, minorVersion *uint32, buildNumber *uint32) = ntdll.RtlGetNtVersionNumbers -+//sys CoInitializeEx(reserved uintptr, coInit uint32) (ret error) = ole32.CoInitializeEx -+//sys CoUninitialize() = ole32.CoUninitialize -+//sys CoGetObject(name *uint16, bindOpts *BIND_OPTS3, guid *GUID, functionTable **uintptr) (ret error) = ole32.CoGetObject - //sys getProcessPreferredUILanguages(flags uint32, numLanguages *uint32, buf *uint16, bufSize *uint32) (err error) = kernel32.GetProcessPreferredUILanguages - //sys getThreadPreferredUILanguages(flags uint32, numLanguages *uint32, buf *uint16, bufSize *uint32) (err error) = kernel32.GetThreadPreferredUILanguages - //sys getUserPreferredUILanguages(flags uint32, numLanguages *uint32, buf *uint16, bufSize *uint32) (err error) = kernel32.GetUserPreferredUILanguages - //sys getSystemPreferredUILanguages(flags uint32, numLanguages *uint32, buf *uint16, bufSize *uint32) (err error) = kernel32.GetSystemPreferredUILanguages -+//sys findResource(module Handle, name uintptr, resType uintptr) (resInfo Handle, err error) = kernel32.FindResourceW -+//sys SizeofResource(module Handle, resInfo Handle) (size uint32, err error) = kernel32.SizeofResource -+//sys LoadResource(module Handle, resInfo Handle) (resData Handle, err error) = kernel32.LoadResource -+//sys LockResource(resData Handle) (addr uintptr, err error) = kernel32.LockResource -+ -+// Version APIs -+//sys GetFileVersionInfoSize(filename string, zeroHandle *Handle) (bufSize uint32, err error) = version.GetFileVersionInfoSizeW -+//sys GetFileVersionInfo(filename string, handle uint32, bufSize uint32, buffer unsafe.Pointer) (err error) = version.GetFileVersionInfoW -+//sys VerQueryValue(block unsafe.Pointer, subBlock string, pointerToBufferPointer unsafe.Pointer, bufSize *uint32) (err error) = version.VerQueryValueW - - // Process Status API (PSAPI) - //sys EnumProcesses(processIds []uint32, bytesReturned *uint32) (err error) = psapi.EnumProcesses -+//sys EnumProcessModules(process Handle, module *Handle, cb uint32, cbNeeded *uint32) (err error) = psapi.EnumProcessModules -+//sys EnumProcessModulesEx(process Handle, module *Handle, cb uint32, cbNeeded *uint32, filterFlag uint32) (err error) = psapi.EnumProcessModulesEx -+//sys GetModuleInformation(process Handle, module Handle, modinfo *ModuleInfo, cb uint32) (err error) = psapi.GetModuleInformation -+//sys GetModuleFileNameEx(process Handle, module Handle, filename *uint16, size uint32) (err error) = psapi.GetModuleFileNameExW -+//sys GetModuleBaseName(process Handle, module Handle, baseName *uint16, size uint32) (err error) = psapi.GetModuleBaseNameW -+//sys QueryWorkingSetEx(process Handle, pv uintptr, cb uint32) (err error) = psapi.QueryWorkingSetEx -+ -+// NT Native APIs -+//sys rtlNtStatusToDosErrorNoTeb(ntstatus NTStatus) (ret syscall.Errno) = ntdll.RtlNtStatusToDosErrorNoTeb -+//sys rtlGetVersion(info *OsVersionInfoEx) (ntstatus error) = ntdll.RtlGetVersion -+//sys rtlGetNtVersionNumbers(majorVersion *uint32, minorVersion *uint32, buildNumber *uint32) = ntdll.RtlGetNtVersionNumbers -+//sys RtlGetCurrentPeb() (peb *PEB) = ntdll.RtlGetCurrentPeb -+//sys RtlInitUnicodeString(destinationString *NTUnicodeString, sourceString *uint16) = ntdll.RtlInitUnicodeString -+//sys RtlInitString(destinationString *NTString, sourceString *byte) = ntdll.RtlInitString -+//sys NtCreateFile(handle *Handle, access uint32, oa *OBJECT_ATTRIBUTES, iosb *IO_STATUS_BLOCK, allocationSize *int64, attributes uint32, share uint32, disposition uint32, options uint32, eabuffer uintptr, ealength uint32) (ntstatus error) = ntdll.NtCreateFile -+//sys NtCreateNamedPipeFile(pipe *Handle, access uint32, oa *OBJECT_ATTRIBUTES, iosb *IO_STATUS_BLOCK, share uint32, disposition uint32, options uint32, typ uint32, readMode uint32, completionMode uint32, maxInstances uint32, inboundQuota uint32, outputQuota uint32, timeout *int64) (ntstatus error) = ntdll.NtCreateNamedPipeFile -+//sys NtSetInformationFile(handle Handle, iosb *IO_STATUS_BLOCK, inBuffer *byte, inBufferLen uint32, class uint32) (ntstatus error) = ntdll.NtSetInformationFile -+//sys RtlDosPathNameToNtPathName(dosName *uint16, ntName *NTUnicodeString, ntFileNamePart *uint16, relativeName *RTL_RELATIVE_NAME) (ntstatus error) = ntdll.RtlDosPathNameToNtPathName_U_WithStatus -+//sys RtlDosPathNameToRelativeNtPathName(dosName *uint16, ntName *NTUnicodeString, ntFileNamePart *uint16, relativeName *RTL_RELATIVE_NAME) (ntstatus error) = ntdll.RtlDosPathNameToRelativeNtPathName_U_WithStatus -+//sys RtlDefaultNpAcl(acl **ACL) (ntstatus error) = ntdll.RtlDefaultNpAcl -+//sys NtQueryInformationProcess(proc Handle, procInfoClass int32, procInfo unsafe.Pointer, procInfoLen uint32, retLen *uint32) (ntstatus error) = ntdll.NtQueryInformationProcess -+//sys NtSetInformationProcess(proc Handle, procInfoClass int32, procInfo unsafe.Pointer, procInfoLen uint32) (ntstatus error) = ntdll.NtSetInformationProcess -+//sys NtQuerySystemInformation(sysInfoClass int32, sysInfo unsafe.Pointer, sysInfoLen uint32, retLen *uint32) (ntstatus error) = ntdll.NtQuerySystemInformation -+//sys NtSetSystemInformation(sysInfoClass int32, sysInfo unsafe.Pointer, sysInfoLen uint32) (ntstatus error) = ntdll.NtSetSystemInformation -+//sys RtlAddFunctionTable(functionTable *RUNTIME_FUNCTION, entryCount uint32, baseAddress uintptr) (ret bool) = ntdll.RtlAddFunctionTable -+//sys RtlDeleteFunctionTable(functionTable *RUNTIME_FUNCTION) (ret bool) = ntdll.RtlDeleteFunctionTable - - // syscall interface implementation for other packages - -@@ -357,11 +475,7 @@ func GetProcAddressByOrdinal(module Handle, ordinal uintptr) (proc uintptr, err - r0, _, e1 := syscall.Syscall(procGetProcAddress.Addr(), 2, uintptr(module), ordinal, 0) - proc = uintptr(r0) - if proc == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } -@@ -435,12 +549,6 @@ func Read(fd Handle, p []byte) (n int, err error) { - } - return 0, e - } -- if raceenabled { -- if done > 0 { -- raceWriteRange(unsafe.Pointer(&p[0]), int(done)) -- } -- raceAcquire(unsafe.Pointer(&ioSync)) -- } - return int(done), nil - } - -@@ -453,12 +561,31 @@ func Write(fd Handle, p []byte) (n int, err error) { - if e != nil { - return 0, e - } -- if raceenabled && done > 0 { -- raceReadRange(unsafe.Pointer(&p[0]), int(done)) -- } - return int(done), nil - } - -+func ReadFile(fd Handle, p []byte, done *uint32, overlapped *Overlapped) error { -+ err := readFile(fd, p, done, overlapped) -+ if raceenabled { -+ if *done > 0 { -+ raceWriteRange(unsafe.Pointer(&p[0]), int(*done)) -+ } -+ raceAcquire(unsafe.Pointer(&ioSync)) -+ } -+ return err -+} -+ -+func WriteFile(fd Handle, p []byte, done *uint32, overlapped *Overlapped) error { -+ if raceenabled { -+ raceReleaseMerge(unsafe.Pointer(&ioSync)) -+ } -+ err := writeFile(fd, p, done, overlapped) -+ if raceenabled && *done > 0 { -+ raceReadRange(unsafe.Pointer(&p[0]), int(*done)) -+ } -+ return err -+} -+ - var ioSync int64 - - func Seek(fd Handle, offset int64, whence int) (newoffset int64, err error) { -@@ -497,7 +624,6 @@ var ( - - func getStdHandle(stdhandle uint32) (fd Handle) { - r, _ := GetStdHandle(stdhandle) -- CloseOnExec(r) - return r - } - -@@ -718,6 +844,7 @@ const socket_error = uintptr(^uint32(0)) - //sys WSASend(s Handle, bufs *WSABuf, bufcnt uint32, sent *uint32, flags uint32, overlapped *Overlapped, croutine *byte) (err error) [failretval==socket_error] = ws2_32.WSASend - //sys WSARecvFrom(s Handle, bufs *WSABuf, bufcnt uint32, recvd *uint32, flags *uint32, from *RawSockaddrAny, fromlen *int32, overlapped *Overlapped, croutine *byte) (err error) [failretval==socket_error] = ws2_32.WSARecvFrom - //sys WSASendTo(s Handle, bufs *WSABuf, bufcnt uint32, sent *uint32, flags uint32, to *RawSockaddrAny, tolen int32, overlapped *Overlapped, croutine *byte) (err error) [failretval==socket_error] = ws2_32.WSASendTo -+//sys WSASocket(af int32, typ int32, protocol int32, protoInfo *WSAProtocolInfo, group uint32, flags uint32) (handle Handle, err error) [failretval==InvalidHandle] = ws2_32.WSASocketW - //sys GetHostByName(name string) (h *Hostent, err error) [failretval==nil] = ws2_32.gethostbyname - //sys GetServByName(name string, proto string) (s *Servent, err error) [failretval==nil] = ws2_32.getservbyname - //sys Ntohs(netshort uint16) (u uint16) = ws2_32.ntohs -@@ -731,9 +858,11 @@ const socket_error = uintptr(^uint32(0)) - //sys GetAdaptersInfo(ai *IpAdapterInfo, ol *uint32) (errcode error) = iphlpapi.GetAdaptersInfo - //sys SetFileCompletionNotificationModes(handle Handle, flags uint8) (err error) = kernel32.SetFileCompletionNotificationModes - //sys WSAEnumProtocols(protocols *int32, protocolBuffer *WSAProtocolInfo, bufferLength *uint32) (n int32, err error) [failretval==-1] = ws2_32.WSAEnumProtocolsW -+//sys WSAGetOverlappedResult(h Handle, o *Overlapped, bytes *uint32, wait bool, flags *uint32) (err error) = ws2_32.WSAGetOverlappedResult - //sys GetAdaptersAddresses(family uint32, flags uint32, reserved uintptr, adapterAddresses *IpAdapterAddresses, sizePointer *uint32) (errcode error) = iphlpapi.GetAdaptersAddresses - //sys GetACP() (acp uint32) = kernel32.GetACP - //sys MultiByteToWideChar(codePage uint32, dwFlags uint32, str *byte, nstr int32, wchar *uint16, nwchar int32) (nwrite int32, err error) = kernel32.MultiByteToWideChar -+//sys getBestInterfaceEx(sockaddr unsafe.Pointer, pdwBestIfIndex *uint32) (errcode error) = iphlpapi.GetBestInterfaceEx - - // For testing: clients can set this flag to force - // creation of IPv6 sockets to return EAFNOSUPPORT. -@@ -782,9 +911,7 @@ func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, int32, error) { - p := (*[2]byte)(unsafe.Pointer(&sa.raw.Port)) - p[0] = byte(sa.Port >> 8) - p[1] = byte(sa.Port) -- for i := 0; i < len(sa.Addr); i++ { -- sa.raw.Addr[i] = sa.Addr[i] -- } -+ sa.raw.Addr = sa.Addr - return unsafe.Pointer(&sa.raw), int32(unsafe.Sizeof(sa.raw)), nil - } - -@@ -804,9 +931,7 @@ func (sa *SockaddrInet6) sockaddr() (unsafe.Pointer, int32, error) { - p[0] = byte(sa.Port >> 8) - p[1] = byte(sa.Port) - sa.raw.Scope_id = sa.ZoneId -- for i := 0; i < len(sa.Addr); i++ { -- sa.raw.Addr[i] = sa.Addr[i] -- } -+ sa.raw.Addr = sa.Addr - return unsafe.Pointer(&sa.raw), int32(unsafe.Sizeof(sa.raw)), nil - } - -@@ -847,6 +972,32 @@ func (sa *SockaddrUnix) sockaddr() (unsafe.Pointer, int32, error) { - return unsafe.Pointer(&sa.raw), sl, nil - } - -+type RawSockaddrBth struct { -+ AddressFamily [2]byte -+ BtAddr [8]byte -+ ServiceClassId [16]byte -+ Port [4]byte -+} -+ -+type SockaddrBth struct { -+ BtAddr uint64 -+ ServiceClassId GUID -+ Port uint32 -+ -+ raw RawSockaddrBth -+} -+ -+func (sa *SockaddrBth) sockaddr() (unsafe.Pointer, int32, error) { -+ family := AF_BTH -+ sa.raw = RawSockaddrBth{ -+ AddressFamily: *(*[2]byte)(unsafe.Pointer(&family)), -+ BtAddr: *(*[8]byte)(unsafe.Pointer(&sa.BtAddr)), -+ Port: *(*[4]byte)(unsafe.Pointer(&sa.Port)), -+ ServiceClassId: *(*[16]byte)(unsafe.Pointer(&sa.ServiceClassId)), -+ } -+ return unsafe.Pointer(&sa.raw), int32(unsafe.Sizeof(sa.raw)), nil -+} -+ - func (rsa *RawSockaddrAny) Sockaddr() (Sockaddr, error) { - switch rsa.Addr.Family { - case AF_UNIX: -@@ -879,9 +1030,7 @@ func (rsa *RawSockaddrAny) Sockaddr() (Sockaddr, error) { - sa := new(SockaddrInet4) - p := (*[2]byte)(unsafe.Pointer(&pp.Port)) - sa.Port = int(p[0])<<8 + int(p[1]) -- for i := 0; i < len(sa.Addr); i++ { -- sa.Addr[i] = pp.Addr[i] -- } -+ sa.Addr = pp.Addr - return sa, nil - - case AF_INET6: -@@ -890,9 +1039,7 @@ func (rsa *RawSockaddrAny) Sockaddr() (Sockaddr, error) { - p := (*[2]byte)(unsafe.Pointer(&pp.Port)) - sa.Port = int(p[0])<<8 + int(p[1]) - sa.ZoneId = pp.Scope_id -- for i := 0; i < len(sa.Addr); i++ { -- sa.Addr[i] = pp.Addr[i] -- } -+ sa.Addr = pp.Addr - return sa, nil - } - return nil, syscall.EAFNOSUPPORT -@@ -926,6 +1073,14 @@ func Connect(fd Handle, sa Sockaddr) (err error) { - return connect(fd, ptr, n) - } - -+func GetBestInterfaceEx(sa Sockaddr, pdwBestIfIndex *uint32) (err error) { -+ ptr, _, err := sa.sockaddr() -+ if err != nil { -+ return err -+ } -+ return getBestInterfaceEx(ptr, pdwBestIfIndex) -+} -+ - func Getsockname(fd Handle) (sa Sockaddr, err error) { - var rsa RawSockaddrAny - l := int32(unsafe.Sizeof(rsa)) -@@ -1058,11 +1213,7 @@ func WSASendMsg(fd Handle, msg *WSAMsg, flags uint32, bytesSent *uint32, overlap - } - r1, _, e1 := syscall.Syscall6(sendRecvMsgFunc.sendAddr, 6, uintptr(fd), uintptr(unsafe.Pointer(msg)), uintptr(flags), uintptr(unsafe.Pointer(bytesSent)), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(croutine))) - if r1 == socket_error { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return err - } -@@ -1074,11 +1225,7 @@ func WSARecvMsg(fd Handle, msg *WSAMsg, bytesReceived *uint32, overlapped *Overl - } - r1, _, e1 := syscall.Syscall6(sendRecvMsgFunc.recvAddr, 5, uintptr(fd), uintptr(unsafe.Pointer(msg)), uintptr(unsafe.Pointer(bytesReceived)), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(croutine)), 0) - if r1 == socket_error { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return err - } -@@ -1181,7 +1328,12 @@ type IPv6Mreq struct { - Interface uint32 - } - --func GetsockoptInt(fd Handle, level, opt int) (int, error) { return -1, syscall.EWINDOWS } -+func GetsockoptInt(fd Handle, level, opt int) (int, error) { -+ v := int32(0) -+ l := int32(unsafe.Sizeof(v)) -+ err := Getsockopt(fd, int32(level), int32(opt), (*byte)(unsafe.Pointer(&v)), &l) -+ return int(v), err -+} - - func SetsockoptLinger(fd Handle, level, opt int, l *Linger) (err error) { - sys := sysLinger{Onoff: uint16(l.Onoff), Linger: uint16(l.Linger)} -@@ -1378,7 +1530,7 @@ func (t Token) KnownFolderPath(folderID *KNOWNFOLDERID, flags uint32) (string, e - return "", err - } - defer CoTaskMemFree(unsafe.Pointer(p)) -- return UTF16ToString((*[(1 << 30) - 1]uint16)(unsafe.Pointer(p))[:]), nil -+ return UTF16PtrToString(p), nil - } - - // RtlGetVersion returns the version of the underlying operating system, ignoring -@@ -1452,3 +1604,201 @@ func getUILanguages(flags uint32, f func(flags uint32, numLanguages *uint32, buf - return languages, nil - } - } -+ -+func SetConsoleCursorPosition(console Handle, position Coord) error { -+ return setConsoleCursorPosition(console, *((*uint32)(unsafe.Pointer(&position)))) -+} -+ -+func (s NTStatus) Errno() syscall.Errno { -+ return rtlNtStatusToDosErrorNoTeb(s) -+} -+ -+func langID(pri, sub uint16) uint32 { return uint32(sub)<<10 | uint32(pri) } -+ -+func (s NTStatus) Error() string { -+ b := make([]uint16, 300) -+ n, err := FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM|FORMAT_MESSAGE_FROM_HMODULE|FORMAT_MESSAGE_ARGUMENT_ARRAY, modntdll.Handle(), uint32(s), langID(LANG_ENGLISH, SUBLANG_ENGLISH_US), b, nil) -+ if err != nil { -+ return fmt.Sprintf("NTSTATUS 0x%08x", uint32(s)) -+ } -+ // trim terminating \r and \n -+ for ; n > 0 && (b[n-1] == '\n' || b[n-1] == '\r'); n-- { -+ } -+ return string(utf16.Decode(b[:n])) -+} -+ -+// NewNTUnicodeString returns a new NTUnicodeString structure for use with native -+// NT APIs that work over the NTUnicodeString type. Note that most Windows APIs -+// do not use NTUnicodeString, and instead UTF16PtrFromString should be used for -+// the more common *uint16 string type. -+func NewNTUnicodeString(s string) (*NTUnicodeString, error) { -+ var u NTUnicodeString -+ s16, err := UTF16PtrFromString(s) -+ if err != nil { -+ return nil, err -+ } -+ RtlInitUnicodeString(&u, s16) -+ return &u, nil -+} -+ -+// Slice returns a uint16 slice that aliases the data in the NTUnicodeString. -+func (s *NTUnicodeString) Slice() []uint16 { -+ var slice []uint16 -+ hdr := (*unsafeheader.Slice)(unsafe.Pointer(&slice)) -+ hdr.Data = unsafe.Pointer(s.Buffer) -+ hdr.Len = int(s.Length) -+ hdr.Cap = int(s.MaximumLength) -+ return slice -+} -+ -+func (s *NTUnicodeString) String() string { -+ return UTF16ToString(s.Slice()) -+} -+ -+// NewNTString returns a new NTString structure for use with native -+// NT APIs that work over the NTString type. Note that most Windows APIs -+// do not use NTString, and instead UTF16PtrFromString should be used for -+// the more common *uint16 string type. -+func NewNTString(s string) (*NTString, error) { -+ var nts NTString -+ s8, err := BytePtrFromString(s) -+ if err != nil { -+ return nil, err -+ } -+ RtlInitString(&nts, s8) -+ return &nts, nil -+} -+ -+// Slice returns a byte slice that aliases the data in the NTString. -+func (s *NTString) Slice() []byte { -+ var slice []byte -+ hdr := (*unsafeheader.Slice)(unsafe.Pointer(&slice)) -+ hdr.Data = unsafe.Pointer(s.Buffer) -+ hdr.Len = int(s.Length) -+ hdr.Cap = int(s.MaximumLength) -+ return slice -+} -+ -+func (s *NTString) String() string { -+ return ByteSliceToString(s.Slice()) -+} -+ -+// FindResource resolves a resource of the given name and resource type. -+func FindResource(module Handle, name, resType ResourceIDOrString) (Handle, error) { -+ var namePtr, resTypePtr uintptr -+ var name16, resType16 *uint16 -+ var err error -+ resolvePtr := func(i interface{}, keep **uint16) (uintptr, error) { -+ switch v := i.(type) { -+ case string: -+ *keep, err = UTF16PtrFromString(v) -+ if err != nil { -+ return 0, err -+ } -+ return uintptr(unsafe.Pointer(*keep)), nil -+ case ResourceID: -+ return uintptr(v), nil -+ } -+ return 0, errorspkg.New("parameter must be a ResourceID or a string") -+ } -+ namePtr, err = resolvePtr(name, &name16) -+ if err != nil { -+ return 0, err -+ } -+ resTypePtr, err = resolvePtr(resType, &resType16) -+ if err != nil { -+ return 0, err -+ } -+ resInfo, err := findResource(module, namePtr, resTypePtr) -+ runtime.KeepAlive(name16) -+ runtime.KeepAlive(resType16) -+ return resInfo, err -+} -+ -+func LoadResourceData(module, resInfo Handle) (data []byte, err error) { -+ size, err := SizeofResource(module, resInfo) -+ if err != nil { -+ return -+ } -+ resData, err := LoadResource(module, resInfo) -+ if err != nil { -+ return -+ } -+ ptr, err := LockResource(resData) -+ if err != nil { -+ return -+ } -+ h := (*unsafeheader.Slice)(unsafe.Pointer(&data)) -+ h.Data = unsafe.Pointer(ptr) -+ h.Len = int(size) -+ h.Cap = int(size) -+ return -+} -+ -+// PSAPI_WORKING_SET_EX_BLOCK contains extended working set information for a page. -+type PSAPI_WORKING_SET_EX_BLOCK uint64 -+ -+// Valid returns the validity of this page. -+// If this bit is 1, the subsequent members are valid; otherwise they should be ignored. -+func (b PSAPI_WORKING_SET_EX_BLOCK) Valid() bool { -+ return (b & 1) == 1 -+} -+ -+// ShareCount is the number of processes that share this page. The maximum value of this member is 7. -+func (b PSAPI_WORKING_SET_EX_BLOCK) ShareCount() uint64 { -+ return b.intField(1, 3) -+} -+ -+// Win32Protection is the memory protection attributes of the page. For a list of values, see -+// https://docs.microsoft.com/en-us/windows/win32/memory/memory-protection-constants -+func (b PSAPI_WORKING_SET_EX_BLOCK) Win32Protection() uint64 { -+ return b.intField(4, 11) -+} -+ -+// Shared returns the shared status of this page. -+// If this bit is 1, the page can be shared. -+func (b PSAPI_WORKING_SET_EX_BLOCK) Shared() bool { -+ return (b & (1 << 15)) == 1 -+} -+ -+// Node is the NUMA node. The maximum value of this member is 63. -+func (b PSAPI_WORKING_SET_EX_BLOCK) Node() uint64 { -+ return b.intField(16, 6) -+} -+ -+// Locked returns the locked status of this page. -+// If this bit is 1, the virtual page is locked in physical memory. -+func (b PSAPI_WORKING_SET_EX_BLOCK) Locked() bool { -+ return (b & (1 << 22)) == 1 -+} -+ -+// LargePage returns the large page status of this page. -+// If this bit is 1, the page is a large page. -+func (b PSAPI_WORKING_SET_EX_BLOCK) LargePage() bool { -+ return (b & (1 << 23)) == 1 -+} -+ -+// Bad returns the bad status of this page. -+// If this bit is 1, the page is has been reported as bad. -+func (b PSAPI_WORKING_SET_EX_BLOCK) Bad() bool { -+ return (b & (1 << 31)) == 1 -+} -+ -+// intField extracts an integer field in the PSAPI_WORKING_SET_EX_BLOCK union. -+func (b PSAPI_WORKING_SET_EX_BLOCK) intField(start, length int) uint64 { -+ var mask PSAPI_WORKING_SET_EX_BLOCK -+ for pos := start; pos < start+length; pos++ { -+ mask |= (1 << pos) -+ } -+ -+ masked := b & mask -+ return uint64(masked >> start) -+} -+ -+// PSAPI_WORKING_SET_EX_INFORMATION contains extended working set information for a process. -+type PSAPI_WORKING_SET_EX_INFORMATION struct { -+ // The virtual address. -+ VirtualAddress Pointer -+ // A PSAPI_WORKING_SET_EX_BLOCK union that indicates the attributes of the page at VirtualAddress. -+ VirtualAttributes PSAPI_WORKING_SET_EX_BLOCK -+} -diff --git a/vendor/golang.org/x/sys/windows/types_windows.go b/vendor/golang.org/x/sys/windows/types_windows.go -index 809fff0..f9eaca5 100644 ---- a/vendor/golang.org/x/sys/windows/types_windows.go -+++ b/vendor/golang.org/x/sys/windows/types_windows.go -@@ -10,6 +10,10 @@ import ( - "unsafe" - ) - -+// NTStatus corresponds with NTSTATUS, error values returned by ntdll.dll and -+// other native functions. -+type NTStatus uint32 -+ - const ( - // Invented values to support what package os expects. - O_RDONLY = 0x00000 -@@ -62,9 +66,21 @@ var signals = [...]string{ - } - - const ( -- FILE_LIST_DIRECTORY = 0x00000001 -- FILE_APPEND_DATA = 0x00000004 -+ FILE_READ_DATA = 0x00000001 -+ FILE_READ_ATTRIBUTES = 0x00000080 -+ FILE_READ_EA = 0x00000008 -+ FILE_WRITE_DATA = 0x00000002 - FILE_WRITE_ATTRIBUTES = 0x00000100 -+ FILE_WRITE_EA = 0x00000010 -+ FILE_APPEND_DATA = 0x00000004 -+ FILE_EXECUTE = 0x00000020 -+ -+ FILE_GENERIC_READ = STANDARD_RIGHTS_READ | FILE_READ_DATA | FILE_READ_ATTRIBUTES | FILE_READ_EA | SYNCHRONIZE -+ FILE_GENERIC_WRITE = STANDARD_RIGHTS_WRITE | FILE_WRITE_DATA | FILE_WRITE_ATTRIBUTES | FILE_WRITE_EA | FILE_APPEND_DATA | SYNCHRONIZE -+ FILE_GENERIC_EXECUTE = STANDARD_RIGHTS_EXECUTE | FILE_READ_ATTRIBUTES | FILE_EXECUTE | SYNCHRONIZE -+ -+ FILE_LIST_DIRECTORY = 0x00000001 -+ FILE_TRAVERSE = 0x00000020 - - FILE_SHARE_READ = 0x00000001 - FILE_SHARE_WRITE = 0x00000002 -@@ -140,8 +156,14 @@ const ( - MAX_PATH = 260 - MAX_LONG_PATH = 32768 - -+ MAX_MODULE_NAME32 = 255 -+ - MAX_COMPUTERNAME_LENGTH = 15 - -+ MAX_DHCPV6_DUID_LENGTH = 130 -+ -+ MAX_DNS_SUFFIX_STRING_LENGTH = 256 -+ - TIME_ZONE_ID_UNKNOWN = 0 - TIME_ZONE_ID_STANDARD = 1 - -@@ -215,6 +237,18 @@ const ( - INHERIT_PARENT_AFFINITY = 0x00010000 - ) - -+const ( -+ // attributes for ProcThreadAttributeList -+ PROC_THREAD_ATTRIBUTE_PARENT_PROCESS = 0x00020000 -+ PROC_THREAD_ATTRIBUTE_HANDLE_LIST = 0x00020002 -+ PROC_THREAD_ATTRIBUTE_GROUP_AFFINITY = 0x00030003 -+ PROC_THREAD_ATTRIBUTE_PREFERRED_NODE = 0x00020004 -+ PROC_THREAD_ATTRIBUTE_IDEAL_PROCESSOR = 0x00030005 -+ PROC_THREAD_ATTRIBUTE_MITIGATION_POLICY = 0x00020007 -+ PROC_THREAD_ATTRIBUTE_UMS_THREAD = 0x00030006 -+ PROC_THREAD_ATTRIBUTE_PROTECTION_LEVEL = 0x0002000b -+) -+ - const ( - // flags for CreateToolhelp32Snapshot - TH32CS_SNAPHEAPLIST = 0x01 -@@ -227,7 +261,15 @@ const ( - ) - - const ( -- // filters for ReadDirectoryChangesW -+ // flags for EnumProcessModulesEx -+ LIST_MODULES_32BIT = 0x01 -+ LIST_MODULES_64BIT = 0x02 -+ LIST_MODULES_ALL = 0x03 -+ LIST_MODULES_DEFAULT = 0x00 -+) -+ -+const ( -+ // filters for ReadDirectoryChangesW and FindFirstChangeNotificationW - FILE_NOTIFY_CHANGE_FILE_NAME = 0x001 - FILE_NOTIFY_CHANGE_DIR_NAME = 0x002 - FILE_NOTIFY_CHANGE_ATTRIBUTES = 0x004 -@@ -249,24 +291,27 @@ const ( - - const ( - // wincrypt.h -- PROV_RSA_FULL = 1 -- PROV_RSA_SIG = 2 -- PROV_DSS = 3 -- PROV_FORTEZZA = 4 -- PROV_MS_EXCHANGE = 5 -- PROV_SSL = 6 -- PROV_RSA_SCHANNEL = 12 -- PROV_DSS_DH = 13 -- PROV_EC_ECDSA_SIG = 14 -- PROV_EC_ECNRA_SIG = 15 -- PROV_EC_ECDSA_FULL = 16 -- PROV_EC_ECNRA_FULL = 17 -- PROV_DH_SCHANNEL = 18 -- PROV_SPYRUS_LYNKS = 20 -- PROV_RNG = 21 -- PROV_INTEL_SEC = 22 -- PROV_REPLACE_OWF = 23 -- PROV_RSA_AES = 24 -+ /* certenrolld_begin -- PROV_RSA_*/ -+ PROV_RSA_FULL = 1 -+ PROV_RSA_SIG = 2 -+ PROV_DSS = 3 -+ PROV_FORTEZZA = 4 -+ PROV_MS_EXCHANGE = 5 -+ PROV_SSL = 6 -+ PROV_RSA_SCHANNEL = 12 -+ PROV_DSS_DH = 13 -+ PROV_EC_ECDSA_SIG = 14 -+ PROV_EC_ECNRA_SIG = 15 -+ PROV_EC_ECDSA_FULL = 16 -+ PROV_EC_ECNRA_FULL = 17 -+ PROV_DH_SCHANNEL = 18 -+ PROV_SPYRUS_LYNKS = 20 -+ PROV_RNG = 21 -+ PROV_INTEL_SEC = 22 -+ PROV_REPLACE_OWF = 23 -+ PROV_RSA_AES = 24 -+ -+ /* dwFlags definitions for CryptAcquireContext */ - CRYPT_VERIFYCONTEXT = 0xF0000000 - CRYPT_NEWKEYSET = 0x00000008 - CRYPT_DELETEKEYSET = 0x00000010 -@@ -274,6 +319,34 @@ const ( - CRYPT_SILENT = 0x00000040 - CRYPT_DEFAULT_CONTAINER_OPTIONAL = 0x00000080 - -+ /* Flags for PFXImportCertStore */ -+ CRYPT_EXPORTABLE = 0x00000001 -+ CRYPT_USER_PROTECTED = 0x00000002 -+ CRYPT_USER_KEYSET = 0x00001000 -+ PKCS12_PREFER_CNG_KSP = 0x00000100 -+ PKCS12_ALWAYS_CNG_KSP = 0x00000200 -+ PKCS12_ALLOW_OVERWRITE_KEY = 0x00004000 -+ PKCS12_NO_PERSIST_KEY = 0x00008000 -+ PKCS12_INCLUDE_EXTENDED_PROPERTIES = 0x00000010 -+ -+ /* Flags for CryptAcquireCertificatePrivateKey */ -+ CRYPT_ACQUIRE_CACHE_FLAG = 0x00000001 -+ CRYPT_ACQUIRE_USE_PROV_INFO_FLAG = 0x00000002 -+ CRYPT_ACQUIRE_COMPARE_KEY_FLAG = 0x00000004 -+ CRYPT_ACQUIRE_NO_HEALING = 0x00000008 -+ CRYPT_ACQUIRE_SILENT_FLAG = 0x00000040 -+ CRYPT_ACQUIRE_WINDOW_HANDLE_FLAG = 0x00000080 -+ CRYPT_ACQUIRE_NCRYPT_KEY_FLAGS_MASK = 0x00070000 -+ CRYPT_ACQUIRE_ALLOW_NCRYPT_KEY_FLAG = 0x00010000 -+ CRYPT_ACQUIRE_PREFER_NCRYPT_KEY_FLAG = 0x00020000 -+ CRYPT_ACQUIRE_ONLY_NCRYPT_KEY_FLAG = 0x00040000 -+ -+ /* pdwKeySpec for CryptAcquireCertificatePrivateKey */ -+ AT_KEYEXCHANGE = 1 -+ AT_SIGNATURE = 2 -+ CERT_NCRYPT_KEY_SPEC = 0xFFFFFFFF -+ -+ /* Default usage match type is AND with value zero */ - USAGE_MATCH_TYPE_AND = 0 - USAGE_MATCH_TYPE_OR = 1 - -@@ -398,6 +471,89 @@ const ( - CERT_TRUST_IS_CA_TRUSTED = 0x00004000 - CERT_TRUST_IS_COMPLEX_CHAIN = 0x00010000 - -+ /* Certificate Information Flags */ -+ CERT_INFO_VERSION_FLAG = 1 -+ CERT_INFO_SERIAL_NUMBER_FLAG = 2 -+ CERT_INFO_SIGNATURE_ALGORITHM_FLAG = 3 -+ CERT_INFO_ISSUER_FLAG = 4 -+ CERT_INFO_NOT_BEFORE_FLAG = 5 -+ CERT_INFO_NOT_AFTER_FLAG = 6 -+ CERT_INFO_SUBJECT_FLAG = 7 -+ CERT_INFO_SUBJECT_PUBLIC_KEY_INFO_FLAG = 8 -+ CERT_INFO_ISSUER_UNIQUE_ID_FLAG = 9 -+ CERT_INFO_SUBJECT_UNIQUE_ID_FLAG = 10 -+ CERT_INFO_EXTENSION_FLAG = 11 -+ -+ /* dwFindType for CertFindCertificateInStore */ -+ CERT_COMPARE_MASK = 0xFFFF -+ CERT_COMPARE_SHIFT = 16 -+ CERT_COMPARE_ANY = 0 -+ CERT_COMPARE_SHA1_HASH = 1 -+ CERT_COMPARE_NAME = 2 -+ CERT_COMPARE_ATTR = 3 -+ CERT_COMPARE_MD5_HASH = 4 -+ CERT_COMPARE_PROPERTY = 5 -+ CERT_COMPARE_PUBLIC_KEY = 6 -+ CERT_COMPARE_HASH = CERT_COMPARE_SHA1_HASH -+ CERT_COMPARE_NAME_STR_A = 7 -+ CERT_COMPARE_NAME_STR_W = 8 -+ CERT_COMPARE_KEY_SPEC = 9 -+ CERT_COMPARE_ENHKEY_USAGE = 10 -+ CERT_COMPARE_CTL_USAGE = CERT_COMPARE_ENHKEY_USAGE -+ CERT_COMPARE_SUBJECT_CERT = 11 -+ CERT_COMPARE_ISSUER_OF = 12 -+ CERT_COMPARE_EXISTING = 13 -+ CERT_COMPARE_SIGNATURE_HASH = 14 -+ CERT_COMPARE_KEY_IDENTIFIER = 15 -+ CERT_COMPARE_CERT_ID = 16 -+ CERT_COMPARE_CROSS_CERT_DIST_POINTS = 17 -+ CERT_COMPARE_PUBKEY_MD5_HASH = 18 -+ CERT_COMPARE_SUBJECT_INFO_ACCESS = 19 -+ CERT_COMPARE_HASH_STR = 20 -+ CERT_COMPARE_HAS_PRIVATE_KEY = 21 -+ CERT_FIND_ANY = (CERT_COMPARE_ANY << CERT_COMPARE_SHIFT) -+ CERT_FIND_SHA1_HASH = (CERT_COMPARE_SHA1_HASH << CERT_COMPARE_SHIFT) -+ CERT_FIND_MD5_HASH = (CERT_COMPARE_MD5_HASH << CERT_COMPARE_SHIFT) -+ CERT_FIND_SIGNATURE_HASH = (CERT_COMPARE_SIGNATURE_HASH << CERT_COMPARE_SHIFT) -+ CERT_FIND_KEY_IDENTIFIER = (CERT_COMPARE_KEY_IDENTIFIER << CERT_COMPARE_SHIFT) -+ CERT_FIND_HASH = CERT_FIND_SHA1_HASH -+ CERT_FIND_PROPERTY = (CERT_COMPARE_PROPERTY << CERT_COMPARE_SHIFT) -+ CERT_FIND_PUBLIC_KEY = (CERT_COMPARE_PUBLIC_KEY << CERT_COMPARE_SHIFT) -+ CERT_FIND_SUBJECT_NAME = (CERT_COMPARE_NAME< 0 { -- _p0 = &buf[0] -- } -- r0, _, e1 := syscall.Syscall9(procFormatMessageW.Addr(), 7, uintptr(flags), uintptr(msgsrc), uintptr(msgid), uintptr(langid), uintptr(unsafe.Pointer(_p0)), uintptr(len(buf)), uintptr(unsafe.Pointer(args)), 0, 0) -- n = uint32(r0) -- if n == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func DeleteVolumeMountPoint(volumeMountPoint *uint16) (err error) { -+ r1, _, e1 := syscall.Syscall(procDeleteVolumeMountPointW.Addr(), 1, uintptr(unsafe.Pointer(volumeMountPoint)), 0, 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func ExitProcess(exitcode uint32) { -- syscall.Syscall(procExitProcess.Addr(), 1, uintptr(exitcode), 0, 0) -+func DeviceIoControl(handle Handle, ioControlCode uint32, inBuffer *byte, inBufferSize uint32, outBuffer *byte, outBufferSize uint32, bytesReturned *uint32, overlapped *Overlapped) (err error) { -+ r1, _, e1 := syscall.Syscall9(procDeviceIoControl.Addr(), 8, uintptr(handle), uintptr(ioControlCode), uintptr(unsafe.Pointer(inBuffer)), uintptr(inBufferSize), uintptr(unsafe.Pointer(outBuffer)), uintptr(outBufferSize), uintptr(unsafe.Pointer(bytesReturned)), uintptr(unsafe.Pointer(overlapped)), 0) -+ if r1 == 0 { -+ err = errnoErr(e1) -+ } - return - } - --func IsWow64Process(handle Handle, isWow64 *bool) (err error) { -+func DuplicateHandle(hSourceProcessHandle Handle, hSourceHandle Handle, hTargetProcessHandle Handle, lpTargetHandle *Handle, dwDesiredAccess uint32, bInheritHandle bool, dwOptions uint32) (err error) { - var _p0 uint32 -- if *isWow64 { -+ if bInheritHandle { - _p0 = 1 -- } else { -- _p0 = 0 - } -- r1, _, e1 := syscall.Syscall(procIsWow64Process.Addr(), 2, uintptr(handle), uintptr(unsafe.Pointer(&_p0)), 0) -- *isWow64 = _p0 != 0 -+ r1, _, e1 := syscall.Syscall9(procDuplicateHandle.Addr(), 7, uintptr(hSourceProcessHandle), uintptr(hSourceHandle), uintptr(hTargetProcessHandle), uintptr(unsafe.Pointer(lpTargetHandle)), uintptr(dwDesiredAccess), uintptr(_p0), uintptr(dwOptions), 0, 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func CreateFile(name *uint16, access uint32, mode uint32, sa *SecurityAttributes, createmode uint32, attrs uint32, templatefile Handle) (handle Handle, err error) { -- r0, _, e1 := syscall.Syscall9(procCreateFileW.Addr(), 7, uintptr(unsafe.Pointer(name)), uintptr(access), uintptr(mode), uintptr(unsafe.Pointer(sa)), uintptr(createmode), uintptr(attrs), uintptr(templatefile), 0, 0) -- handle = Handle(r0) -- if handle == InvalidHandle { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -- } -+func ExitProcess(exitcode uint32) { -+ syscall.Syscall(procExitProcess.Addr(), 1, uintptr(exitcode), 0, 0) - return - } - --func ReadFile(handle Handle, buf []byte, done *uint32, overlapped *Overlapped) (err error) { -- var _p0 *byte -- if len(buf) > 0 { -- _p0 = &buf[0] -- } -- r1, _, e1 := syscall.Syscall6(procReadFile.Addr(), 5, uintptr(handle), uintptr(unsafe.Pointer(_p0)), uintptr(len(buf)), uintptr(unsafe.Pointer(done)), uintptr(unsafe.Pointer(overlapped)), 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func ExpandEnvironmentStrings(src *uint16, dst *uint16, size uint32) (n uint32, err error) { -+ r0, _, e1 := syscall.Syscall(procExpandEnvironmentStringsW.Addr(), 3, uintptr(unsafe.Pointer(src)), uintptr(unsafe.Pointer(dst)), uintptr(size)) -+ n = uint32(r0) -+ if n == 0 { -+ err = errnoErr(e1) - } - return - } - --func WriteFile(handle Handle, buf []byte, done *uint32, overlapped *Overlapped) (err error) { -- var _p0 *byte -- if len(buf) > 0 { -- _p0 = &buf[0] -- } -- r1, _, e1 := syscall.Syscall6(procWriteFile.Addr(), 5, uintptr(handle), uintptr(unsafe.Pointer(_p0)), uintptr(len(buf)), uintptr(unsafe.Pointer(done)), uintptr(unsafe.Pointer(overlapped)), 0) -+func FindClose(handle Handle) (err error) { -+ r1, _, e1 := syscall.Syscall(procFindClose.Addr(), 1, uintptr(handle), 0, 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func GetOverlappedResult(handle Handle, overlapped *Overlapped, done *uint32, wait bool) (err error) { -- var _p0 uint32 -- if wait { -- _p0 = 1 -- } else { -- _p0 = 0 -- } -- r1, _, e1 := syscall.Syscall6(procGetOverlappedResult.Addr(), 4, uintptr(handle), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(done)), uintptr(_p0), 0, 0) -+func FindCloseChangeNotification(handle Handle) (err error) { -+ r1, _, e1 := syscall.Syscall(procFindCloseChangeNotification.Addr(), 1, uintptr(handle), 0, 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func SetFilePointer(handle Handle, lowoffset int32, highoffsetptr *int32, whence uint32) (newlowoffset uint32, err error) { -- r0, _, e1 := syscall.Syscall6(procSetFilePointer.Addr(), 4, uintptr(handle), uintptr(lowoffset), uintptr(unsafe.Pointer(highoffsetptr)), uintptr(whence), 0, 0) -- newlowoffset = uint32(r0) -- if newlowoffset == 0xffffffff { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func FindFirstChangeNotification(path string, watchSubtree bool, notifyFilter uint32) (handle Handle, err error) { -+ var _p0 *uint16 -+ _p0, err = syscall.UTF16PtrFromString(path) -+ if err != nil { -+ return - } -- return -+ return _FindFirstChangeNotification(_p0, watchSubtree, notifyFilter) - } - --func CloseHandle(handle Handle) (err error) { -- r1, _, e1 := syscall.Syscall(procCloseHandle.Addr(), 1, uintptr(handle), 0, 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func _FindFirstChangeNotification(path *uint16, watchSubtree bool, notifyFilter uint32) (handle Handle, err error) { -+ var _p1 uint32 -+ if watchSubtree { -+ _p1 = 1 -+ } -+ r0, _, e1 := syscall.Syscall(procFindFirstChangeNotificationW.Addr(), 3, uintptr(unsafe.Pointer(path)), uintptr(_p1), uintptr(notifyFilter)) -+ handle = Handle(r0) -+ if handle == InvalidHandle { -+ err = errnoErr(e1) - } - return - } - --func GetStdHandle(stdhandle uint32) (handle Handle, err error) { -- r0, _, e1 := syscall.Syscall(procGetStdHandle.Addr(), 1, uintptr(stdhandle), 0, 0) -+func findFirstFile1(name *uint16, data *win32finddata1) (handle Handle, err error) { -+ r0, _, e1 := syscall.Syscall(procFindFirstFileW.Addr(), 2, uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(data)), 0) - handle = Handle(r0) - if handle == InvalidHandle { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func SetStdHandle(stdhandle uint32, handle Handle) (err error) { -- r1, _, e1 := syscall.Syscall(procSetStdHandle.Addr(), 2, uintptr(stdhandle), uintptr(handle), 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func FindFirstVolumeMountPoint(rootPathName *uint16, volumeMountPoint *uint16, bufferLength uint32) (handle Handle, err error) { -+ r0, _, e1 := syscall.Syscall(procFindFirstVolumeMountPointW.Addr(), 3, uintptr(unsafe.Pointer(rootPathName)), uintptr(unsafe.Pointer(volumeMountPoint)), uintptr(bufferLength)) -+ handle = Handle(r0) -+ if handle == InvalidHandle { -+ err = errnoErr(e1) - } - return - } - --func findFirstFile1(name *uint16, data *win32finddata1) (handle Handle, err error) { -- r0, _, e1 := syscall.Syscall(procFindFirstFileW.Addr(), 2, uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(data)), 0) -+func FindFirstVolume(volumeName *uint16, bufferLength uint32) (handle Handle, err error) { -+ r0, _, e1 := syscall.Syscall(procFindFirstVolumeW.Addr(), 2, uintptr(unsafe.Pointer(volumeName)), uintptr(bufferLength), 0) - handle = Handle(r0) - if handle == InvalidHandle { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func findNextFile1(handle Handle, data *win32finddata1) (err error) { -- r1, _, e1 := syscall.Syscall(procFindNextFileW.Addr(), 2, uintptr(handle), uintptr(unsafe.Pointer(data)), 0) -+func FindNextChangeNotification(handle Handle) (err error) { -+ r1, _, e1 := syscall.Syscall(procFindNextChangeNotification.Addr(), 1, uintptr(handle), 0, 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func FindClose(handle Handle) (err error) { -- r1, _, e1 := syscall.Syscall(procFindClose.Addr(), 1, uintptr(handle), 0, 0) -+func findNextFile1(handle Handle, data *win32finddata1) (err error) { -+ r1, _, e1 := syscall.Syscall(procFindNextFileW.Addr(), 2, uintptr(handle), uintptr(unsafe.Pointer(data)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func GetFileInformationByHandle(handle Handle, data *ByHandleFileInformation) (err error) { -- r1, _, e1 := syscall.Syscall(procGetFileInformationByHandle.Addr(), 2, uintptr(handle), uintptr(unsafe.Pointer(data)), 0) -+func FindNextVolumeMountPoint(findVolumeMountPoint Handle, volumeMountPoint *uint16, bufferLength uint32) (err error) { -+ r1, _, e1 := syscall.Syscall(procFindNextVolumeMountPointW.Addr(), 3, uintptr(findVolumeMountPoint), uintptr(unsafe.Pointer(volumeMountPoint)), uintptr(bufferLength)) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func GetFileInformationByHandleEx(handle Handle, class uint32, outBuffer *byte, outBufferLen uint32) (err error) { -- r1, _, e1 := syscall.Syscall6(procGetFileInformationByHandleEx.Addr(), 4, uintptr(handle), uintptr(class), uintptr(unsafe.Pointer(outBuffer)), uintptr(outBufferLen), 0, 0) -+func FindNextVolume(findVolume Handle, volumeName *uint16, bufferLength uint32) (err error) { -+ r1, _, e1 := syscall.Syscall(procFindNextVolumeW.Addr(), 3, uintptr(findVolume), uintptr(unsafe.Pointer(volumeName)), uintptr(bufferLength)) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func GetCurrentDirectory(buflen uint32, buf *uint16) (n uint32, err error) { -- r0, _, e1 := syscall.Syscall(procGetCurrentDirectoryW.Addr(), 2, uintptr(buflen), uintptr(unsafe.Pointer(buf)), 0) -- n = uint32(r0) -- if n == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func findResource(module Handle, name uintptr, resType uintptr) (resInfo Handle, err error) { -+ r0, _, e1 := syscall.Syscall(procFindResourceW.Addr(), 3, uintptr(module), uintptr(name), uintptr(resType)) -+ resInfo = Handle(r0) -+ if resInfo == 0 { -+ err = errnoErr(e1) - } - return - } - --func SetCurrentDirectory(path *uint16) (err error) { -- r1, _, e1 := syscall.Syscall(procSetCurrentDirectoryW.Addr(), 1, uintptr(unsafe.Pointer(path)), 0, 0) -+func FindVolumeClose(findVolume Handle) (err error) { -+ r1, _, e1 := syscall.Syscall(procFindVolumeClose.Addr(), 1, uintptr(findVolume), 0, 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func CreateDirectory(path *uint16, sa *SecurityAttributes) (err error) { -- r1, _, e1 := syscall.Syscall(procCreateDirectoryW.Addr(), 2, uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(sa)), 0) -+func FindVolumeMountPointClose(findVolumeMountPoint Handle) (err error) { -+ r1, _, e1 := syscall.Syscall(procFindVolumeMountPointClose.Addr(), 1, uintptr(findVolumeMountPoint), 0, 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func RemoveDirectory(path *uint16) (err error) { -- r1, _, e1 := syscall.Syscall(procRemoveDirectoryW.Addr(), 1, uintptr(unsafe.Pointer(path)), 0, 0) -+func FlushFileBuffers(handle Handle) (err error) { -+ r1, _, e1 := syscall.Syscall(procFlushFileBuffers.Addr(), 1, uintptr(handle), 0, 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func DeleteFile(path *uint16) (err error) { -- r1, _, e1 := syscall.Syscall(procDeleteFileW.Addr(), 1, uintptr(unsafe.Pointer(path)), 0, 0) -+func FlushViewOfFile(addr uintptr, length uintptr) (err error) { -+ r1, _, e1 := syscall.Syscall(procFlushViewOfFile.Addr(), 2, uintptr(addr), uintptr(length), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func MoveFile(from *uint16, to *uint16) (err error) { -- r1, _, e1 := syscall.Syscall(procMoveFileW.Addr(), 2, uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(to)), 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func FormatMessage(flags uint32, msgsrc uintptr, msgid uint32, langid uint32, buf []uint16, args *byte) (n uint32, err error) { -+ var _p0 *uint16 -+ if len(buf) > 0 { -+ _p0 = &buf[0] -+ } -+ r0, _, e1 := syscall.Syscall9(procFormatMessageW.Addr(), 7, uintptr(flags), uintptr(msgsrc), uintptr(msgid), uintptr(langid), uintptr(unsafe.Pointer(_p0)), uintptr(len(buf)), uintptr(unsafe.Pointer(args)), 0, 0) -+ n = uint32(r0) -+ if n == 0 { -+ err = errnoErr(e1) - } - return - } - --func MoveFileEx(from *uint16, to *uint16, flags uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procMoveFileExW.Addr(), 3, uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(to)), uintptr(flags)) -+func FreeEnvironmentStrings(envs *uint16) (err error) { -+ r1, _, e1 := syscall.Syscall(procFreeEnvironmentStringsW.Addr(), 1, uintptr(unsafe.Pointer(envs)), 0, 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func LockFileEx(file Handle, flags uint32, reserved uint32, bytesLow uint32, bytesHigh uint32, overlapped *Overlapped) (err error) { -- r1, _, e1 := syscall.Syscall6(procLockFileEx.Addr(), 6, uintptr(file), uintptr(flags), uintptr(reserved), uintptr(bytesLow), uintptr(bytesHigh), uintptr(unsafe.Pointer(overlapped))) -+func FreeLibrary(handle Handle) (err error) { -+ r1, _, e1 := syscall.Syscall(procFreeLibrary.Addr(), 1, uintptr(handle), 0, 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func UnlockFileEx(file Handle, reserved uint32, bytesLow uint32, bytesHigh uint32, overlapped *Overlapped) (err error) { -- r1, _, e1 := syscall.Syscall6(procUnlockFileEx.Addr(), 5, uintptr(file), uintptr(reserved), uintptr(bytesLow), uintptr(bytesHigh), uintptr(unsafe.Pointer(overlapped)), 0) -+func GenerateConsoleCtrlEvent(ctrlEvent uint32, processGroupID uint32) (err error) { -+ r1, _, e1 := syscall.Syscall(procGenerateConsoleCtrlEvent.Addr(), 2, uintptr(ctrlEvent), uintptr(processGroupID), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func GetComputerName(buf *uint16, n *uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procGetComputerNameW.Addr(), 2, uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(n)), 0) -+func GetACP() (acp uint32) { -+ r0, _, _ := syscall.Syscall(procGetACP.Addr(), 0, 0, 0, 0) -+ acp = uint32(r0) -+ return -+} -+ -+func GetActiveProcessorCount(groupNumber uint16) (ret uint32) { -+ r0, _, _ := syscall.Syscall(procGetActiveProcessorCount.Addr(), 1, uintptr(groupNumber), 0, 0) -+ ret = uint32(r0) -+ return -+} -+ -+func GetCommTimeouts(handle Handle, timeouts *CommTimeouts) (err error) { -+ r1, _, e1 := syscall.Syscall(procGetCommTimeouts.Addr(), 2, uintptr(handle), uintptr(unsafe.Pointer(timeouts)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - -+func GetCommandLine() (cmd *uint16) { -+ r0, _, _ := syscall.Syscall(procGetCommandLineW.Addr(), 0, 0, 0, 0) -+ cmd = (*uint16)(unsafe.Pointer(r0)) -+ return -+} -+ - func GetComputerNameEx(nametype uint32, buf *uint16, n *uint32) (err error) { - r1, _, e1 := syscall.Syscall(procGetComputerNameExW.Addr(), 3, uintptr(nametype), uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(n))) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func SetEndOfFile(handle Handle) (err error) { -- r1, _, e1 := syscall.Syscall(procSetEndOfFile.Addr(), 1, uintptr(handle), 0, 0) -+func GetComputerName(buf *uint16, n *uint32) (err error) { -+ r1, _, e1 := syscall.Syscall(procGetComputerNameW.Addr(), 2, uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(n)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func GetSystemTimeAsFileTime(time *Filetime) { -- syscall.Syscall(procGetSystemTimeAsFileTime.Addr(), 1, uintptr(unsafe.Pointer(time)), 0, 0) -+func GetConsoleMode(console Handle, mode *uint32) (err error) { -+ r1, _, e1 := syscall.Syscall(procGetConsoleMode.Addr(), 2, uintptr(console), uintptr(unsafe.Pointer(mode)), 0) -+ if r1 == 0 { -+ err = errnoErr(e1) -+ } - return - } - --func GetSystemTimePreciseAsFileTime(time *Filetime) { -- syscall.Syscall(procGetSystemTimePreciseAsFileTime.Addr(), 1, uintptr(unsafe.Pointer(time)), 0, 0) -+func GetConsoleScreenBufferInfo(console Handle, info *ConsoleScreenBufferInfo) (err error) { -+ r1, _, e1 := syscall.Syscall(procGetConsoleScreenBufferInfo.Addr(), 2, uintptr(console), uintptr(unsafe.Pointer(info)), 0) -+ if r1 == 0 { -+ err = errnoErr(e1) -+ } - return - } - --func GetTimeZoneInformation(tzi *Timezoneinformation) (rc uint32, err error) { -- r0, _, e1 := syscall.Syscall(procGetTimeZoneInformation.Addr(), 1, uintptr(unsafe.Pointer(tzi)), 0, 0) -- rc = uint32(r0) -- if rc == 0xffffffff { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func GetCurrentDirectory(buflen uint32, buf *uint16) (n uint32, err error) { -+ r0, _, e1 := syscall.Syscall(procGetCurrentDirectoryW.Addr(), 2, uintptr(buflen), uintptr(unsafe.Pointer(buf)), 0) -+ n = uint32(r0) -+ if n == 0 { -+ err = errnoErr(e1) - } - return - } - --func CreateIoCompletionPort(filehandle Handle, cphandle Handle, key uint32, threadcnt uint32) (handle Handle, err error) { -- r0, _, e1 := syscall.Syscall6(procCreateIoCompletionPort.Addr(), 4, uintptr(filehandle), uintptr(cphandle), uintptr(key), uintptr(threadcnt), 0, 0) -- handle = Handle(r0) -- if handle == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -- } -+func GetCurrentProcessId() (pid uint32) { -+ r0, _, _ := syscall.Syscall(procGetCurrentProcessId.Addr(), 0, 0, 0, 0) -+ pid = uint32(r0) - return - } - --func GetQueuedCompletionStatus(cphandle Handle, qty *uint32, key *uint32, overlapped **Overlapped, timeout uint32) (err error) { -- r1, _, e1 := syscall.Syscall6(procGetQueuedCompletionStatus.Addr(), 5, uintptr(cphandle), uintptr(unsafe.Pointer(qty)), uintptr(unsafe.Pointer(key)), uintptr(unsafe.Pointer(overlapped)), uintptr(timeout), 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -- } -+func GetCurrentThreadId() (id uint32) { -+ r0, _, _ := syscall.Syscall(procGetCurrentThreadId.Addr(), 0, 0, 0, 0) -+ id = uint32(r0) - return - } - --func PostQueuedCompletionStatus(cphandle Handle, qty uint32, key uint32, overlapped *Overlapped) (err error) { -- r1, _, e1 := syscall.Syscall6(procPostQueuedCompletionStatus.Addr(), 4, uintptr(cphandle), uintptr(qty), uintptr(key), uintptr(unsafe.Pointer(overlapped)), 0, 0) -+func GetDiskFreeSpaceEx(directoryName *uint16, freeBytesAvailableToCaller *uint64, totalNumberOfBytes *uint64, totalNumberOfFreeBytes *uint64) (err error) { -+ r1, _, e1 := syscall.Syscall6(procGetDiskFreeSpaceExW.Addr(), 4, uintptr(unsafe.Pointer(directoryName)), uintptr(unsafe.Pointer(freeBytesAvailableToCaller)), uintptr(unsafe.Pointer(totalNumberOfBytes)), uintptr(unsafe.Pointer(totalNumberOfFreeBytes)), 0, 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func CancelIo(s Handle) (err error) { -- r1, _, e1 := syscall.Syscall(procCancelIo.Addr(), 1, uintptr(s), 0, 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -- } -+func GetDriveType(rootPathName *uint16) (driveType uint32) { -+ r0, _, _ := syscall.Syscall(procGetDriveTypeW.Addr(), 1, uintptr(unsafe.Pointer(rootPathName)), 0, 0) -+ driveType = uint32(r0) - return - } - --func CancelIoEx(s Handle, o *Overlapped) (err error) { -- r1, _, e1 := syscall.Syscall(procCancelIoEx.Addr(), 2, uintptr(s), uintptr(unsafe.Pointer(o)), 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func GetEnvironmentStrings() (envs *uint16, err error) { -+ r0, _, e1 := syscall.Syscall(procGetEnvironmentStringsW.Addr(), 0, 0, 0, 0) -+ envs = (*uint16)(unsafe.Pointer(r0)) -+ if envs == nil { -+ err = errnoErr(e1) - } - return - } - --func CreateProcess(appName *uint16, commandLine *uint16, procSecurity *SecurityAttributes, threadSecurity *SecurityAttributes, inheritHandles bool, creationFlags uint32, env *uint16, currentDir *uint16, startupInfo *StartupInfo, outProcInfo *ProcessInformation) (err error) { -- var _p0 uint32 -- if inheritHandles { -- _p0 = 1 -- } else { -- _p0 = 0 -- } -- r1, _, e1 := syscall.Syscall12(procCreateProcessW.Addr(), 10, uintptr(unsafe.Pointer(appName)), uintptr(unsafe.Pointer(commandLine)), uintptr(unsafe.Pointer(procSecurity)), uintptr(unsafe.Pointer(threadSecurity)), uintptr(_p0), uintptr(creationFlags), uintptr(unsafe.Pointer(env)), uintptr(unsafe.Pointer(currentDir)), uintptr(unsafe.Pointer(startupInfo)), uintptr(unsafe.Pointer(outProcInfo)), 0, 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func GetEnvironmentVariable(name *uint16, buffer *uint16, size uint32) (n uint32, err error) { -+ r0, _, e1 := syscall.Syscall(procGetEnvironmentVariableW.Addr(), 3, uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(buffer)), uintptr(size)) -+ n = uint32(r0) -+ if n == 0 { -+ err = errnoErr(e1) - } - return - } - --func OpenProcess(desiredAccess uint32, inheritHandle bool, processId uint32) (handle Handle, err error) { -- var _p0 uint32 -- if inheritHandle { -- _p0 = 1 -- } else { -- _p0 = 0 -- } -- r0, _, e1 := syscall.Syscall(procOpenProcess.Addr(), 3, uintptr(desiredAccess), uintptr(_p0), uintptr(processId)) -- handle = Handle(r0) -- if handle == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func GetExitCodeProcess(handle Handle, exitcode *uint32) (err error) { -+ r1, _, e1 := syscall.Syscall(procGetExitCodeProcess.Addr(), 2, uintptr(handle), uintptr(unsafe.Pointer(exitcode)), 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func ShellExecute(hwnd Handle, verb *uint16, file *uint16, args *uint16, cwd *uint16, showCmd int32) (err error) { -- r1, _, e1 := syscall.Syscall6(procShellExecuteW.Addr(), 6, uintptr(hwnd), uintptr(unsafe.Pointer(verb)), uintptr(unsafe.Pointer(file)), uintptr(unsafe.Pointer(args)), uintptr(unsafe.Pointer(cwd)), uintptr(showCmd)) -- if r1 <= 32 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func GetFileAttributesEx(name *uint16, level uint32, info *byte) (err error) { -+ r1, _, e1 := syscall.Syscall(procGetFileAttributesExW.Addr(), 3, uintptr(unsafe.Pointer(name)), uintptr(level), uintptr(unsafe.Pointer(info))) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func shGetKnownFolderPath(id *KNOWNFOLDERID, flags uint32, token Token, path **uint16) (ret error) { -- r0, _, _ := syscall.Syscall6(procSHGetKnownFolderPath.Addr(), 4, uintptr(unsafe.Pointer(id)), uintptr(flags), uintptr(token), uintptr(unsafe.Pointer(path)), 0, 0) -- if r0 != 0 { -- ret = syscall.Errno(r0) -+func GetFileAttributes(name *uint16) (attrs uint32, err error) { -+ r0, _, e1 := syscall.Syscall(procGetFileAttributesW.Addr(), 1, uintptr(unsafe.Pointer(name)), 0, 0) -+ attrs = uint32(r0) -+ if attrs == INVALID_FILE_ATTRIBUTES { -+ err = errnoErr(e1) - } - return - } - --func TerminateProcess(handle Handle, exitcode uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procTerminateProcess.Addr(), 2, uintptr(handle), uintptr(exitcode), 0) -+func GetFileInformationByHandle(handle Handle, data *ByHandleFileInformation) (err error) { -+ r1, _, e1 := syscall.Syscall(procGetFileInformationByHandle.Addr(), 2, uintptr(handle), uintptr(unsafe.Pointer(data)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func GetExitCodeProcess(handle Handle, exitcode *uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procGetExitCodeProcess.Addr(), 2, uintptr(handle), uintptr(unsafe.Pointer(exitcode)), 0) -+func GetFileInformationByHandleEx(handle Handle, class uint32, outBuffer *byte, outBufferLen uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procGetFileInformationByHandleEx.Addr(), 4, uintptr(handle), uintptr(class), uintptr(unsafe.Pointer(outBuffer)), uintptr(outBufferLen), 0, 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func GetStartupInfo(startupInfo *StartupInfo) (err error) { -- r1, _, e1 := syscall.Syscall(procGetStartupInfoW.Addr(), 1, uintptr(unsafe.Pointer(startupInfo)), 0, 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func GetFileType(filehandle Handle) (n uint32, err error) { -+ r0, _, e1 := syscall.Syscall(procGetFileType.Addr(), 1, uintptr(filehandle), 0, 0) -+ n = uint32(r0) -+ if n == 0 { -+ err = errnoErr(e1) - } - return - } - --func GetProcessTimes(handle Handle, creationTime *Filetime, exitTime *Filetime, kernelTime *Filetime, userTime *Filetime) (err error) { -- r1, _, e1 := syscall.Syscall6(procGetProcessTimes.Addr(), 5, uintptr(handle), uintptr(unsafe.Pointer(creationTime)), uintptr(unsafe.Pointer(exitTime)), uintptr(unsafe.Pointer(kernelTime)), uintptr(unsafe.Pointer(userTime)), 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func GetFinalPathNameByHandle(file Handle, filePath *uint16, filePathSize uint32, flags uint32) (n uint32, err error) { -+ r0, _, e1 := syscall.Syscall6(procGetFinalPathNameByHandleW.Addr(), 4, uintptr(file), uintptr(unsafe.Pointer(filePath)), uintptr(filePathSize), uintptr(flags), 0, 0) -+ n = uint32(r0) -+ if n == 0 { -+ err = errnoErr(e1) - } - return - } - --func DuplicateHandle(hSourceProcessHandle Handle, hSourceHandle Handle, hTargetProcessHandle Handle, lpTargetHandle *Handle, dwDesiredAccess uint32, bInheritHandle bool, dwOptions uint32) (err error) { -- var _p0 uint32 -- if bInheritHandle { -- _p0 = 1 -- } else { -- _p0 = 0 -- } -- r1, _, e1 := syscall.Syscall9(procDuplicateHandle.Addr(), 7, uintptr(hSourceProcessHandle), uintptr(hSourceHandle), uintptr(hTargetProcessHandle), uintptr(unsafe.Pointer(lpTargetHandle)), uintptr(dwDesiredAccess), uintptr(_p0), uintptr(dwOptions), 0, 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func GetFullPathName(path *uint16, buflen uint32, buf *uint16, fname **uint16) (n uint32, err error) { -+ r0, _, e1 := syscall.Syscall6(procGetFullPathNameW.Addr(), 4, uintptr(unsafe.Pointer(path)), uintptr(buflen), uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(fname)), 0, 0) -+ n = uint32(r0) -+ if n == 0 { -+ err = errnoErr(e1) - } - return - } - --func WaitForSingleObject(handle Handle, waitMilliseconds uint32) (event uint32, err error) { -- r0, _, e1 := syscall.Syscall(procWaitForSingleObject.Addr(), 2, uintptr(handle), uintptr(waitMilliseconds), 0) -- event = uint32(r0) -- if event == 0xffffffff { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func GetLastError() (lasterr error) { -+ r0, _, _ := syscall.Syscall(procGetLastError.Addr(), 0, 0, 0, 0) -+ if r0 != 0 { -+ lasterr = syscall.Errno(r0) - } - return - } - --func waitForMultipleObjects(count uint32, handles uintptr, waitAll bool, waitMilliseconds uint32) (event uint32, err error) { -- var _p0 uint32 -- if waitAll { -- _p0 = 1 -- } else { -- _p0 = 0 -+func GetLogicalDriveStrings(bufferLength uint32, buffer *uint16) (n uint32, err error) { -+ r0, _, e1 := syscall.Syscall(procGetLogicalDriveStringsW.Addr(), 2, uintptr(bufferLength), uintptr(unsafe.Pointer(buffer)), 0) -+ n = uint32(r0) -+ if n == 0 { -+ err = errnoErr(e1) - } -- r0, _, e1 := syscall.Syscall6(procWaitForMultipleObjects.Addr(), 4, uintptr(count), uintptr(handles), uintptr(_p0), uintptr(waitMilliseconds), 0, 0) -- event = uint32(r0) -- if event == 0xffffffff { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ return -+} -+ -+func GetLogicalDrives() (drivesBitMask uint32, err error) { -+ r0, _, e1 := syscall.Syscall(procGetLogicalDrives.Addr(), 0, 0, 0, 0) -+ drivesBitMask = uint32(r0) -+ if drivesBitMask == 0 { -+ err = errnoErr(e1) - } - return - } - --func GetTempPath(buflen uint32, buf *uint16) (n uint32, err error) { -- r0, _, e1 := syscall.Syscall(procGetTempPathW.Addr(), 2, uintptr(buflen), uintptr(unsafe.Pointer(buf)), 0) -+func GetLongPathName(path *uint16, buf *uint16, buflen uint32) (n uint32, err error) { -+ r0, _, e1 := syscall.Syscall(procGetLongPathNameW.Addr(), 3, uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(buf)), uintptr(buflen)) - n = uint32(r0) - if n == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func CreatePipe(readhandle *Handle, writehandle *Handle, sa *SecurityAttributes, size uint32) (err error) { -- r1, _, e1 := syscall.Syscall6(procCreatePipe.Addr(), 4, uintptr(unsafe.Pointer(readhandle)), uintptr(unsafe.Pointer(writehandle)), uintptr(unsafe.Pointer(sa)), uintptr(size), 0, 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -- } -+func GetMaximumProcessorCount(groupNumber uint16) (ret uint32) { -+ r0, _, _ := syscall.Syscall(procGetMaximumProcessorCount.Addr(), 1, uintptr(groupNumber), 0, 0) -+ ret = uint32(r0) - return - } - --func GetFileType(filehandle Handle) (n uint32, err error) { -- r0, _, e1 := syscall.Syscall(procGetFileType.Addr(), 1, uintptr(filehandle), 0, 0) -+func GetModuleFileName(module Handle, filename *uint16, size uint32) (n uint32, err error) { -+ r0, _, e1 := syscall.Syscall(procGetModuleFileNameW.Addr(), 3, uintptr(module), uintptr(unsafe.Pointer(filename)), uintptr(size)) - n = uint32(r0) - if n == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func CryptAcquireContext(provhandle *Handle, container *uint16, provider *uint16, provtype uint32, flags uint32) (err error) { -- r1, _, e1 := syscall.Syscall6(procCryptAcquireContextW.Addr(), 5, uintptr(unsafe.Pointer(provhandle)), uintptr(unsafe.Pointer(container)), uintptr(unsafe.Pointer(provider)), uintptr(provtype), uintptr(flags), 0) -+func GetModuleHandleEx(flags uint32, moduleName *uint16, module *Handle) (err error) { -+ r1, _, e1 := syscall.Syscall(procGetModuleHandleExW.Addr(), 3, uintptr(flags), uintptr(unsafe.Pointer(moduleName)), uintptr(unsafe.Pointer(module))) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func CryptReleaseContext(provhandle Handle, flags uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procCryptReleaseContext.Addr(), 2, uintptr(provhandle), uintptr(flags), 0) -+func GetNamedPipeHandleState(pipe Handle, state *uint32, curInstances *uint32, maxCollectionCount *uint32, collectDataTimeout *uint32, userName *uint16, maxUserNameSize uint32) (err error) { -+ r1, _, e1 := syscall.Syscall9(procGetNamedPipeHandleStateW.Addr(), 7, uintptr(pipe), uintptr(unsafe.Pointer(state)), uintptr(unsafe.Pointer(curInstances)), uintptr(unsafe.Pointer(maxCollectionCount)), uintptr(unsafe.Pointer(collectDataTimeout)), uintptr(unsafe.Pointer(userName)), uintptr(maxUserNameSize), 0, 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func CryptGenRandom(provhandle Handle, buflen uint32, buf *byte) (err error) { -- r1, _, e1 := syscall.Syscall(procCryptGenRandom.Addr(), 3, uintptr(provhandle), uintptr(buflen), uintptr(unsafe.Pointer(buf))) -+func GetNamedPipeInfo(pipe Handle, flags *uint32, outSize *uint32, inSize *uint32, maxInstances *uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procGetNamedPipeInfo.Addr(), 5, uintptr(pipe), uintptr(unsafe.Pointer(flags)), uintptr(unsafe.Pointer(outSize)), uintptr(unsafe.Pointer(inSize)), uintptr(unsafe.Pointer(maxInstances)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func GetEnvironmentStrings() (envs *uint16, err error) { -- r0, _, e1 := syscall.Syscall(procGetEnvironmentStringsW.Addr(), 0, 0, 0, 0) -- envs = (*uint16)(unsafe.Pointer(r0)) -- if envs == nil { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func GetOverlappedResult(handle Handle, overlapped *Overlapped, done *uint32, wait bool) (err error) { -+ var _p0 uint32 -+ if wait { -+ _p0 = 1 -+ } -+ r1, _, e1 := syscall.Syscall6(procGetOverlappedResult.Addr(), 4, uintptr(handle), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(done)), uintptr(_p0), 0, 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func FreeEnvironmentStrings(envs *uint16) (err error) { -- r1, _, e1 := syscall.Syscall(procFreeEnvironmentStringsW.Addr(), 1, uintptr(unsafe.Pointer(envs)), 0, 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func GetPriorityClass(process Handle) (ret uint32, err error) { -+ r0, _, e1 := syscall.Syscall(procGetPriorityClass.Addr(), 1, uintptr(process), 0, 0) -+ ret = uint32(r0) -+ if ret == 0 { -+ err = errnoErr(e1) - } - return - } - --func GetEnvironmentVariable(name *uint16, buffer *uint16, size uint32) (n uint32, err error) { -- r0, _, e1 := syscall.Syscall(procGetEnvironmentVariableW.Addr(), 3, uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(buffer)), uintptr(size)) -- n = uint32(r0) -- if n == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func GetProcAddress(module Handle, procname string) (proc uintptr, err error) { -+ var _p0 *byte -+ _p0, err = syscall.BytePtrFromString(procname) -+ if err != nil { -+ return -+ } -+ return _GetProcAddress(module, _p0) -+} -+ -+func _GetProcAddress(module Handle, procname *byte) (proc uintptr, err error) { -+ r0, _, e1 := syscall.Syscall(procGetProcAddress.Addr(), 2, uintptr(module), uintptr(unsafe.Pointer(procname)), 0) -+ proc = uintptr(r0) -+ if proc == 0 { -+ err = errnoErr(e1) - } - return - } - --func SetEnvironmentVariable(name *uint16, value *uint16) (err error) { -- r1, _, e1 := syscall.Syscall(procSetEnvironmentVariableW.Addr(), 2, uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(value)), 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func GetProcessId(process Handle) (id uint32, err error) { -+ r0, _, e1 := syscall.Syscall(procGetProcessId.Addr(), 1, uintptr(process), 0, 0) -+ id = uint32(r0) -+ if id == 0 { -+ err = errnoErr(e1) - } - return - } - --func CreateEnvironmentBlock(block **uint16, token Token, inheritExisting bool) (err error) { -- var _p0 uint32 -- if inheritExisting { -- _p0 = 1 -- } else { -- _p0 = 0 -+func getProcessPreferredUILanguages(flags uint32, numLanguages *uint32, buf *uint16, bufSize *uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procGetProcessPreferredUILanguages.Addr(), 4, uintptr(flags), uintptr(unsafe.Pointer(numLanguages)), uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(bufSize)), 0, 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } -- r1, _, e1 := syscall.Syscall(procCreateEnvironmentBlock.Addr(), 3, uintptr(unsafe.Pointer(block)), uintptr(token), uintptr(_p0)) -+ return -+} -+ -+func GetProcessShutdownParameters(level *uint32, flags *uint32) (err error) { -+ r1, _, e1 := syscall.Syscall(procGetProcessShutdownParameters.Addr(), 2, uintptr(unsafe.Pointer(level)), uintptr(unsafe.Pointer(flags)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func DestroyEnvironmentBlock(block *uint16) (err error) { -- r1, _, e1 := syscall.Syscall(procDestroyEnvironmentBlock.Addr(), 1, uintptr(unsafe.Pointer(block)), 0, 0) -+func GetProcessTimes(handle Handle, creationTime *Filetime, exitTime *Filetime, kernelTime *Filetime, userTime *Filetime) (err error) { -+ r1, _, e1 := syscall.Syscall6(procGetProcessTimes.Addr(), 5, uintptr(handle), uintptr(unsafe.Pointer(creationTime)), uintptr(unsafe.Pointer(exitTime)), uintptr(unsafe.Pointer(kernelTime)), uintptr(unsafe.Pointer(userTime)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func getTickCount64() (ms uint64) { -- r0, _, _ := syscall.Syscall(procGetTickCount64.Addr(), 0, 0, 0, 0) -- ms = uint64(r0) -+func GetProcessWorkingSetSizeEx(hProcess Handle, lpMinimumWorkingSetSize *uintptr, lpMaximumWorkingSetSize *uintptr, flags *uint32) { -+ syscall.Syscall6(procGetProcessWorkingSetSizeEx.Addr(), 4, uintptr(hProcess), uintptr(unsafe.Pointer(lpMinimumWorkingSetSize)), uintptr(unsafe.Pointer(lpMaximumWorkingSetSize)), uintptr(unsafe.Pointer(flags)), 0, 0) - return - } - --func SetFileTime(handle Handle, ctime *Filetime, atime *Filetime, wtime *Filetime) (err error) { -- r1, _, e1 := syscall.Syscall6(procSetFileTime.Addr(), 4, uintptr(handle), uintptr(unsafe.Pointer(ctime)), uintptr(unsafe.Pointer(atime)), uintptr(unsafe.Pointer(wtime)), 0, 0) -+func GetQueuedCompletionStatus(cphandle Handle, qty *uint32, key *uintptr, overlapped **Overlapped, timeout uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procGetQueuedCompletionStatus.Addr(), 5, uintptr(cphandle), uintptr(unsafe.Pointer(qty)), uintptr(unsafe.Pointer(key)), uintptr(unsafe.Pointer(overlapped)), uintptr(timeout), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func GetFileAttributes(name *uint16) (attrs uint32, err error) { -- r0, _, e1 := syscall.Syscall(procGetFileAttributesW.Addr(), 1, uintptr(unsafe.Pointer(name)), 0, 0) -- attrs = uint32(r0) -- if attrs == INVALID_FILE_ATTRIBUTES { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func GetShortPathName(longpath *uint16, shortpath *uint16, buflen uint32) (n uint32, err error) { -+ r0, _, e1 := syscall.Syscall(procGetShortPathNameW.Addr(), 3, uintptr(unsafe.Pointer(longpath)), uintptr(unsafe.Pointer(shortpath)), uintptr(buflen)) -+ n = uint32(r0) -+ if n == 0 { -+ err = errnoErr(e1) - } - return - } - --func SetFileAttributes(name *uint16, attrs uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procSetFileAttributesW.Addr(), 2, uintptr(unsafe.Pointer(name)), uintptr(attrs), 0) -+func GetStartupInfo(startupInfo *StartupInfo) (err error) { -+ r1, _, e1 := syscall.Syscall(procGetStartupInfoW.Addr(), 1, uintptr(unsafe.Pointer(startupInfo)), 0, 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func GetFileAttributesEx(name *uint16, level uint32, info *byte) (err error) { -- r1, _, e1 := syscall.Syscall(procGetFileAttributesExW.Addr(), 3, uintptr(unsafe.Pointer(name)), uintptr(level), uintptr(unsafe.Pointer(info))) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func GetStdHandle(stdhandle uint32) (handle Handle, err error) { -+ r0, _, e1 := syscall.Syscall(procGetStdHandle.Addr(), 1, uintptr(stdhandle), 0, 0) -+ handle = Handle(r0) -+ if handle == InvalidHandle { -+ err = errnoErr(e1) - } - return - } - --func GetCommandLine() (cmd *uint16) { -- r0, _, _ := syscall.Syscall(procGetCommandLineW.Addr(), 0, 0, 0, 0) -- cmd = (*uint16)(unsafe.Pointer(r0)) -+func getSystemDirectory(dir *uint16, dirLen uint32) (len uint32, err error) { -+ r0, _, e1 := syscall.Syscall(procGetSystemDirectoryW.Addr(), 2, uintptr(unsafe.Pointer(dir)), uintptr(dirLen), 0) -+ len = uint32(r0) -+ if len == 0 { -+ err = errnoErr(e1) -+ } - return - } - --func CommandLineToArgv(cmd *uint16, argc *int32) (argv *[8192]*[8192]uint16, err error) { -- r0, _, e1 := syscall.Syscall(procCommandLineToArgvW.Addr(), 2, uintptr(unsafe.Pointer(cmd)), uintptr(unsafe.Pointer(argc)), 0) -- argv = (*[8192]*[8192]uint16)(unsafe.Pointer(r0)) -- if argv == nil { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func getSystemPreferredUILanguages(flags uint32, numLanguages *uint32, buf *uint16, bufSize *uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procGetSystemPreferredUILanguages.Addr(), 4, uintptr(flags), uintptr(unsafe.Pointer(numLanguages)), uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(bufSize)), 0, 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func LocalFree(hmem Handle) (handle Handle, err error) { -- r0, _, e1 := syscall.Syscall(procLocalFree.Addr(), 1, uintptr(hmem), 0, 0) -- handle = Handle(r0) -- if handle != 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -- } -+func GetSystemTimeAsFileTime(time *Filetime) { -+ syscall.Syscall(procGetSystemTimeAsFileTime.Addr(), 1, uintptr(unsafe.Pointer(time)), 0, 0) - return - } - --func SetHandleInformation(handle Handle, mask uint32, flags uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procSetHandleInformation.Addr(), 3, uintptr(handle), uintptr(mask), uintptr(flags)) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -- } -+func GetSystemTimePreciseAsFileTime(time *Filetime) { -+ syscall.Syscall(procGetSystemTimePreciseAsFileTime.Addr(), 1, uintptr(unsafe.Pointer(time)), 0, 0) - return - } - --func FlushFileBuffers(handle Handle) (err error) { -- r1, _, e1 := syscall.Syscall(procFlushFileBuffers.Addr(), 1, uintptr(handle), 0, 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func getSystemWindowsDirectory(dir *uint16, dirLen uint32) (len uint32, err error) { -+ r0, _, e1 := syscall.Syscall(procGetSystemWindowsDirectoryW.Addr(), 2, uintptr(unsafe.Pointer(dir)), uintptr(dirLen), 0) -+ len = uint32(r0) -+ if len == 0 { -+ err = errnoErr(e1) - } - return - } - --func GetFullPathName(path *uint16, buflen uint32, buf *uint16, fname **uint16) (n uint32, err error) { -- r0, _, e1 := syscall.Syscall6(procGetFullPathNameW.Addr(), 4, uintptr(unsafe.Pointer(path)), uintptr(buflen), uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(fname)), 0, 0) -+func GetTempPath(buflen uint32, buf *uint16) (n uint32, err error) { -+ r0, _, e1 := syscall.Syscall(procGetTempPathW.Addr(), 2, uintptr(buflen), uintptr(unsafe.Pointer(buf)), 0) - n = uint32(r0) - if n == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func GetLongPathName(path *uint16, buf *uint16, buflen uint32) (n uint32, err error) { -- r0, _, e1 := syscall.Syscall(procGetLongPathNameW.Addr(), 3, uintptr(unsafe.Pointer(path)), uintptr(unsafe.Pointer(buf)), uintptr(buflen)) -- n = uint32(r0) -- if n == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func getThreadPreferredUILanguages(flags uint32, numLanguages *uint32, buf *uint16, bufSize *uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procGetThreadPreferredUILanguages.Addr(), 4, uintptr(flags), uintptr(unsafe.Pointer(numLanguages)), uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(bufSize)), 0, 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func GetShortPathName(longpath *uint16, shortpath *uint16, buflen uint32) (n uint32, err error) { -- r0, _, e1 := syscall.Syscall(procGetShortPathNameW.Addr(), 3, uintptr(unsafe.Pointer(longpath)), uintptr(unsafe.Pointer(shortpath)), uintptr(buflen)) -- n = uint32(r0) -- if n == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func getTickCount64() (ms uint64) { -+ r0, _, _ := syscall.Syscall(procGetTickCount64.Addr(), 0, 0, 0, 0) -+ ms = uint64(r0) -+ return -+} -+ -+func GetTimeZoneInformation(tzi *Timezoneinformation) (rc uint32, err error) { -+ r0, _, e1 := syscall.Syscall(procGetTimeZoneInformation.Addr(), 1, uintptr(unsafe.Pointer(tzi)), 0, 0) -+ rc = uint32(r0) -+ if rc == 0xffffffff { -+ err = errnoErr(e1) - } - return - } - --func CreateFileMapping(fhandle Handle, sa *SecurityAttributes, prot uint32, maxSizeHigh uint32, maxSizeLow uint32, name *uint16) (handle Handle, err error) { -- r0, _, e1 := syscall.Syscall6(procCreateFileMappingW.Addr(), 6, uintptr(fhandle), uintptr(unsafe.Pointer(sa)), uintptr(prot), uintptr(maxSizeHigh), uintptr(maxSizeLow), uintptr(unsafe.Pointer(name))) -- handle = Handle(r0) -- if handle == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func getUserPreferredUILanguages(flags uint32, numLanguages *uint32, buf *uint16, bufSize *uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procGetUserPreferredUILanguages.Addr(), 4, uintptr(flags), uintptr(unsafe.Pointer(numLanguages)), uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(bufSize)), 0, 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func MapViewOfFile(handle Handle, access uint32, offsetHigh uint32, offsetLow uint32, length uintptr) (addr uintptr, err error) { -- r0, _, e1 := syscall.Syscall6(procMapViewOfFile.Addr(), 5, uintptr(handle), uintptr(access), uintptr(offsetHigh), uintptr(offsetLow), uintptr(length), 0) -- addr = uintptr(r0) -- if addr == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func GetVersion() (ver uint32, err error) { -+ r0, _, e1 := syscall.Syscall(procGetVersion.Addr(), 0, 0, 0, 0) -+ ver = uint32(r0) -+ if ver == 0 { -+ err = errnoErr(e1) - } - return - } - --func UnmapViewOfFile(addr uintptr) (err error) { -- r1, _, e1 := syscall.Syscall(procUnmapViewOfFile.Addr(), 1, uintptr(addr), 0, 0) -+func GetVolumeInformationByHandle(file Handle, volumeNameBuffer *uint16, volumeNameSize uint32, volumeNameSerialNumber *uint32, maximumComponentLength *uint32, fileSystemFlags *uint32, fileSystemNameBuffer *uint16, fileSystemNameSize uint32) (err error) { -+ r1, _, e1 := syscall.Syscall9(procGetVolumeInformationByHandleW.Addr(), 8, uintptr(file), uintptr(unsafe.Pointer(volumeNameBuffer)), uintptr(volumeNameSize), uintptr(unsafe.Pointer(volumeNameSerialNumber)), uintptr(unsafe.Pointer(maximumComponentLength)), uintptr(unsafe.Pointer(fileSystemFlags)), uintptr(unsafe.Pointer(fileSystemNameBuffer)), uintptr(fileSystemNameSize), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func FlushViewOfFile(addr uintptr, length uintptr) (err error) { -- r1, _, e1 := syscall.Syscall(procFlushViewOfFile.Addr(), 2, uintptr(addr), uintptr(length), 0) -+func GetVolumeInformation(rootPathName *uint16, volumeNameBuffer *uint16, volumeNameSize uint32, volumeNameSerialNumber *uint32, maximumComponentLength *uint32, fileSystemFlags *uint32, fileSystemNameBuffer *uint16, fileSystemNameSize uint32) (err error) { -+ r1, _, e1 := syscall.Syscall9(procGetVolumeInformationW.Addr(), 8, uintptr(unsafe.Pointer(rootPathName)), uintptr(unsafe.Pointer(volumeNameBuffer)), uintptr(volumeNameSize), uintptr(unsafe.Pointer(volumeNameSerialNumber)), uintptr(unsafe.Pointer(maximumComponentLength)), uintptr(unsafe.Pointer(fileSystemFlags)), uintptr(unsafe.Pointer(fileSystemNameBuffer)), uintptr(fileSystemNameSize), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func VirtualLock(addr uintptr, length uintptr) (err error) { -- r1, _, e1 := syscall.Syscall(procVirtualLock.Addr(), 2, uintptr(addr), uintptr(length), 0) -+func GetVolumeNameForVolumeMountPoint(volumeMountPoint *uint16, volumeName *uint16, bufferlength uint32) (err error) { -+ r1, _, e1 := syscall.Syscall(procGetVolumeNameForVolumeMountPointW.Addr(), 3, uintptr(unsafe.Pointer(volumeMountPoint)), uintptr(unsafe.Pointer(volumeName)), uintptr(bufferlength)) -+ if r1 == 0 { -+ err = errnoErr(e1) -+ } -+ return -+} -+ -+func GetVolumePathName(fileName *uint16, volumePathName *uint16, bufferLength uint32) (err error) { -+ r1, _, e1 := syscall.Syscall(procGetVolumePathNameW.Addr(), 3, uintptr(unsafe.Pointer(fileName)), uintptr(unsafe.Pointer(volumePathName)), uintptr(bufferLength)) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func VirtualUnlock(addr uintptr, length uintptr) (err error) { -- r1, _, e1 := syscall.Syscall(procVirtualUnlock.Addr(), 2, uintptr(addr), uintptr(length), 0) -+func GetVolumePathNamesForVolumeName(volumeName *uint16, volumePathNames *uint16, bufferLength uint32, returnLength *uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procGetVolumePathNamesForVolumeNameW.Addr(), 4, uintptr(unsafe.Pointer(volumeName)), uintptr(unsafe.Pointer(volumePathNames)), uintptr(bufferLength), uintptr(unsafe.Pointer(returnLength)), 0, 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func VirtualAlloc(address uintptr, size uintptr, alloctype uint32, protect uint32) (value uintptr, err error) { -- r0, _, e1 := syscall.Syscall6(procVirtualAlloc.Addr(), 4, uintptr(address), uintptr(size), uintptr(alloctype), uintptr(protect), 0, 0) -- value = uintptr(r0) -- if value == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func getWindowsDirectory(dir *uint16, dirLen uint32) (len uint32, err error) { -+ r0, _, e1 := syscall.Syscall(procGetWindowsDirectoryW.Addr(), 2, uintptr(unsafe.Pointer(dir)), uintptr(dirLen), 0) -+ len = uint32(r0) -+ if len == 0 { -+ err = errnoErr(e1) - } - return - } - --func VirtualFree(address uintptr, size uintptr, freetype uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procVirtualFree.Addr(), 3, uintptr(address), uintptr(size), uintptr(freetype)) -+func initializeProcThreadAttributeList(attrlist *ProcThreadAttributeList, attrcount uint32, flags uint32, size *uintptr) (err error) { -+ r1, _, e1 := syscall.Syscall6(procInitializeProcThreadAttributeList.Addr(), 4, uintptr(unsafe.Pointer(attrlist)), uintptr(attrcount), uintptr(flags), uintptr(unsafe.Pointer(size)), 0, 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func VirtualProtect(address uintptr, size uintptr, newprotect uint32, oldprotect *uint32) (err error) { -- r1, _, e1 := syscall.Syscall6(procVirtualProtect.Addr(), 4, uintptr(address), uintptr(size), uintptr(newprotect), uintptr(unsafe.Pointer(oldprotect)), 0, 0) -+func IsWow64Process(handle Handle, isWow64 *bool) (err error) { -+ var _p0 uint32 -+ if *isWow64 { -+ _p0 = 1 -+ } -+ r1, _, e1 := syscall.Syscall(procIsWow64Process.Addr(), 2, uintptr(handle), uintptr(unsafe.Pointer(&_p0)), 0) -+ *isWow64 = _p0 != 0 - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func TransmitFile(s Handle, handle Handle, bytesToWrite uint32, bytsPerSend uint32, overlapped *Overlapped, transmitFileBuf *TransmitFileBuffers, flags uint32) (err error) { -- r1, _, e1 := syscall.Syscall9(procTransmitFile.Addr(), 7, uintptr(s), uintptr(handle), uintptr(bytesToWrite), uintptr(bytsPerSend), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(transmitFileBuf)), uintptr(flags), 0, 0) -+func IsWow64Process2(handle Handle, processMachine *uint16, nativeMachine *uint16) (err error) { -+ err = procIsWow64Process2.Find() -+ if err != nil { -+ return -+ } -+ r1, _, e1 := syscall.Syscall(procIsWow64Process2.Addr(), 3, uintptr(handle), uintptr(unsafe.Pointer(processMachine)), uintptr(unsafe.Pointer(nativeMachine))) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func ReadDirectoryChanges(handle Handle, buf *byte, buflen uint32, watchSubTree bool, mask uint32, retlen *uint32, overlapped *Overlapped, completionRoutine uintptr) (err error) { -- var _p0 uint32 -- if watchSubTree { -- _p0 = 1 -- } else { -- _p0 = 0 -+func LoadLibraryEx(libname string, zero Handle, flags uintptr) (handle Handle, err error) { -+ var _p0 *uint16 -+ _p0, err = syscall.UTF16PtrFromString(libname) -+ if err != nil { -+ return - } -- r1, _, e1 := syscall.Syscall9(procReadDirectoryChangesW.Addr(), 8, uintptr(handle), uintptr(unsafe.Pointer(buf)), uintptr(buflen), uintptr(_p0), uintptr(mask), uintptr(unsafe.Pointer(retlen)), uintptr(unsafe.Pointer(overlapped)), uintptr(completionRoutine), 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ return _LoadLibraryEx(_p0, zero, flags) -+} -+ -+func _LoadLibraryEx(libname *uint16, zero Handle, flags uintptr) (handle Handle, err error) { -+ r0, _, e1 := syscall.Syscall(procLoadLibraryExW.Addr(), 3, uintptr(unsafe.Pointer(libname)), uintptr(zero), uintptr(flags)) -+ handle = Handle(r0) -+ if handle == 0 { -+ err = errnoErr(e1) - } - return - } - --func CertOpenSystemStore(hprov Handle, name *uint16) (store Handle, err error) { -- r0, _, e1 := syscall.Syscall(procCertOpenSystemStoreW.Addr(), 2, uintptr(hprov), uintptr(unsafe.Pointer(name)), 0) -- store = Handle(r0) -- if store == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func LoadLibrary(libname string) (handle Handle, err error) { -+ var _p0 *uint16 -+ _p0, err = syscall.UTF16PtrFromString(libname) -+ if err != nil { -+ return - } -- return -+ return _LoadLibrary(_p0) - } - --func CertOpenStore(storeProvider uintptr, msgAndCertEncodingType uint32, cryptProv uintptr, flags uint32, para uintptr) (handle Handle, err error) { -- r0, _, e1 := syscall.Syscall6(procCertOpenStore.Addr(), 5, uintptr(storeProvider), uintptr(msgAndCertEncodingType), uintptr(cryptProv), uintptr(flags), uintptr(para), 0) -+func _LoadLibrary(libname *uint16) (handle Handle, err error) { -+ r0, _, e1 := syscall.Syscall(procLoadLibraryW.Addr(), 1, uintptr(unsafe.Pointer(libname)), 0, 0) - handle = Handle(r0) -- if handle == InvalidHandle { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ if handle == 0 { -+ err = errnoErr(e1) - } - return - } - --func CertEnumCertificatesInStore(store Handle, prevContext *CertContext) (context *CertContext, err error) { -- r0, _, e1 := syscall.Syscall(procCertEnumCertificatesInStore.Addr(), 2, uintptr(store), uintptr(unsafe.Pointer(prevContext)), 0) -- context = (*CertContext)(unsafe.Pointer(r0)) -- if context == nil { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func LoadResource(module Handle, resInfo Handle) (resData Handle, err error) { -+ r0, _, e1 := syscall.Syscall(procLoadResource.Addr(), 2, uintptr(module), uintptr(resInfo), 0) -+ resData = Handle(r0) -+ if resData == 0 { -+ err = errnoErr(e1) - } - return - } - --func CertAddCertificateContextToStore(store Handle, certContext *CertContext, addDisposition uint32, storeContext **CertContext) (err error) { -- r1, _, e1 := syscall.Syscall6(procCertAddCertificateContextToStore.Addr(), 4, uintptr(store), uintptr(unsafe.Pointer(certContext)), uintptr(addDisposition), uintptr(unsafe.Pointer(storeContext)), 0, 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func LocalAlloc(flags uint32, length uint32) (ptr uintptr, err error) { -+ r0, _, e1 := syscall.Syscall(procLocalAlloc.Addr(), 2, uintptr(flags), uintptr(length), 0) -+ ptr = uintptr(r0) -+ if ptr == 0 { -+ err = errnoErr(e1) - } - return - } - --func CertCloseStore(store Handle, flags uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procCertCloseStore.Addr(), 2, uintptr(store), uintptr(flags), 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func LocalFree(hmem Handle) (handle Handle, err error) { -+ r0, _, e1 := syscall.Syscall(procLocalFree.Addr(), 1, uintptr(hmem), 0, 0) -+ handle = Handle(r0) -+ if handle != 0 { -+ err = errnoErr(e1) - } - return - } - --func CertGetCertificateChain(engine Handle, leaf *CertContext, time *Filetime, additionalStore Handle, para *CertChainPara, flags uint32, reserved uintptr, chainCtx **CertChainContext) (err error) { -- r1, _, e1 := syscall.Syscall9(procCertGetCertificateChain.Addr(), 8, uintptr(engine), uintptr(unsafe.Pointer(leaf)), uintptr(unsafe.Pointer(time)), uintptr(additionalStore), uintptr(unsafe.Pointer(para)), uintptr(flags), uintptr(reserved), uintptr(unsafe.Pointer(chainCtx)), 0) -+func LockFileEx(file Handle, flags uint32, reserved uint32, bytesLow uint32, bytesHigh uint32, overlapped *Overlapped) (err error) { -+ r1, _, e1 := syscall.Syscall6(procLockFileEx.Addr(), 6, uintptr(file), uintptr(flags), uintptr(reserved), uintptr(bytesLow), uintptr(bytesHigh), uintptr(unsafe.Pointer(overlapped))) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func CertFreeCertificateChain(ctx *CertChainContext) { -- syscall.Syscall(procCertFreeCertificateChain.Addr(), 1, uintptr(unsafe.Pointer(ctx)), 0, 0) -+func LockResource(resData Handle) (addr uintptr, err error) { -+ r0, _, e1 := syscall.Syscall(procLockResource.Addr(), 1, uintptr(resData), 0, 0) -+ addr = uintptr(r0) -+ if addr == 0 { -+ err = errnoErr(e1) -+ } - return - } - --func CertCreateCertificateContext(certEncodingType uint32, certEncoded *byte, encodedLen uint32) (context *CertContext, err error) { -- r0, _, e1 := syscall.Syscall(procCertCreateCertificateContext.Addr(), 3, uintptr(certEncodingType), uintptr(unsafe.Pointer(certEncoded)), uintptr(encodedLen)) -- context = (*CertContext)(unsafe.Pointer(r0)) -- if context == nil { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func MapViewOfFile(handle Handle, access uint32, offsetHigh uint32, offsetLow uint32, length uintptr) (addr uintptr, err error) { -+ r0, _, e1 := syscall.Syscall6(procMapViewOfFile.Addr(), 5, uintptr(handle), uintptr(access), uintptr(offsetHigh), uintptr(offsetLow), uintptr(length), 0) -+ addr = uintptr(r0) -+ if addr == 0 { -+ err = errnoErr(e1) - } - return - } - --func CertFreeCertificateContext(ctx *CertContext) (err error) { -- r1, _, e1 := syscall.Syscall(procCertFreeCertificateContext.Addr(), 1, uintptr(unsafe.Pointer(ctx)), 0, 0) -+func Module32First(snapshot Handle, moduleEntry *ModuleEntry32) (err error) { -+ r1, _, e1 := syscall.Syscall(procModule32FirstW.Addr(), 2, uintptr(snapshot), uintptr(unsafe.Pointer(moduleEntry)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func CertVerifyCertificateChainPolicy(policyOID uintptr, chain *CertChainContext, para *CertChainPolicyPara, status *CertChainPolicyStatus) (err error) { -- r1, _, e1 := syscall.Syscall6(procCertVerifyCertificateChainPolicy.Addr(), 4, uintptr(policyOID), uintptr(unsafe.Pointer(chain)), uintptr(unsafe.Pointer(para)), uintptr(unsafe.Pointer(status)), 0, 0) -+func Module32Next(snapshot Handle, moduleEntry *ModuleEntry32) (err error) { -+ r1, _, e1 := syscall.Syscall(procModule32NextW.Addr(), 2, uintptr(snapshot), uintptr(unsafe.Pointer(moduleEntry)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func RegOpenKeyEx(key Handle, subkey *uint16, options uint32, desiredAccess uint32, result *Handle) (regerrno error) { -- r0, _, _ := syscall.Syscall6(procRegOpenKeyExW.Addr(), 5, uintptr(key), uintptr(unsafe.Pointer(subkey)), uintptr(options), uintptr(desiredAccess), uintptr(unsafe.Pointer(result)), 0) -- if r0 != 0 { -- regerrno = syscall.Errno(r0) -+func MoveFileEx(from *uint16, to *uint16, flags uint32) (err error) { -+ r1, _, e1 := syscall.Syscall(procMoveFileExW.Addr(), 3, uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(to)), uintptr(flags)) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func RegCloseKey(key Handle) (regerrno error) { -- r0, _, _ := syscall.Syscall(procRegCloseKey.Addr(), 1, uintptr(key), 0, 0) -- if r0 != 0 { -- regerrno = syscall.Errno(r0) -+func MoveFile(from *uint16, to *uint16) (err error) { -+ r1, _, e1 := syscall.Syscall(procMoveFileW.Addr(), 2, uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(to)), 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func RegQueryInfoKey(key Handle, class *uint16, classLen *uint32, reserved *uint32, subkeysLen *uint32, maxSubkeyLen *uint32, maxClassLen *uint32, valuesLen *uint32, maxValueNameLen *uint32, maxValueLen *uint32, saLen *uint32, lastWriteTime *Filetime) (regerrno error) { -- r0, _, _ := syscall.Syscall12(procRegQueryInfoKeyW.Addr(), 12, uintptr(key), uintptr(unsafe.Pointer(class)), uintptr(unsafe.Pointer(classLen)), uintptr(unsafe.Pointer(reserved)), uintptr(unsafe.Pointer(subkeysLen)), uintptr(unsafe.Pointer(maxSubkeyLen)), uintptr(unsafe.Pointer(maxClassLen)), uintptr(unsafe.Pointer(valuesLen)), uintptr(unsafe.Pointer(maxValueNameLen)), uintptr(unsafe.Pointer(maxValueLen)), uintptr(unsafe.Pointer(saLen)), uintptr(unsafe.Pointer(lastWriteTime))) -- if r0 != 0 { -- regerrno = syscall.Errno(r0) -+func MultiByteToWideChar(codePage uint32, dwFlags uint32, str *byte, nstr int32, wchar *uint16, nwchar int32) (nwrite int32, err error) { -+ r0, _, e1 := syscall.Syscall6(procMultiByteToWideChar.Addr(), 6, uintptr(codePage), uintptr(dwFlags), uintptr(unsafe.Pointer(str)), uintptr(nstr), uintptr(unsafe.Pointer(wchar)), uintptr(nwchar)) -+ nwrite = int32(r0) -+ if nwrite == 0 { -+ err = errnoErr(e1) - } - return - } - --func RegEnumKeyEx(key Handle, index uint32, name *uint16, nameLen *uint32, reserved *uint32, class *uint16, classLen *uint32, lastWriteTime *Filetime) (regerrno error) { -- r0, _, _ := syscall.Syscall9(procRegEnumKeyExW.Addr(), 8, uintptr(key), uintptr(index), uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(nameLen)), uintptr(unsafe.Pointer(reserved)), uintptr(unsafe.Pointer(class)), uintptr(unsafe.Pointer(classLen)), uintptr(unsafe.Pointer(lastWriteTime)), 0) -- if r0 != 0 { -- regerrno = syscall.Errno(r0) -+func OpenEvent(desiredAccess uint32, inheritHandle bool, name *uint16) (handle Handle, err error) { -+ var _p0 uint32 -+ if inheritHandle { -+ _p0 = 1 -+ } -+ r0, _, e1 := syscall.Syscall(procOpenEventW.Addr(), 3, uintptr(desiredAccess), uintptr(_p0), uintptr(unsafe.Pointer(name))) -+ handle = Handle(r0) -+ if handle == 0 { -+ err = errnoErr(e1) - } - return - } - --func RegQueryValueEx(key Handle, name *uint16, reserved *uint32, valtype *uint32, buf *byte, buflen *uint32) (regerrno error) { -- r0, _, _ := syscall.Syscall6(procRegQueryValueExW.Addr(), 6, uintptr(key), uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(reserved)), uintptr(unsafe.Pointer(valtype)), uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(buflen))) -- if r0 != 0 { -- regerrno = syscall.Errno(r0) -+func OpenMutex(desiredAccess uint32, inheritHandle bool, name *uint16) (handle Handle, err error) { -+ var _p0 uint32 -+ if inheritHandle { -+ _p0 = 1 -+ } -+ r0, _, e1 := syscall.Syscall(procOpenMutexW.Addr(), 3, uintptr(desiredAccess), uintptr(_p0), uintptr(unsafe.Pointer(name))) -+ handle = Handle(r0) -+ if handle == 0 { -+ err = errnoErr(e1) - } - return - } - --func GetCurrentProcessId() (pid uint32) { -- r0, _, _ := syscall.Syscall(procGetCurrentProcessId.Addr(), 0, 0, 0, 0) -- pid = uint32(r0) -+func OpenProcess(desiredAccess uint32, inheritHandle bool, processId uint32) (handle Handle, err error) { -+ var _p0 uint32 -+ if inheritHandle { -+ _p0 = 1 -+ } -+ r0, _, e1 := syscall.Syscall(procOpenProcess.Addr(), 3, uintptr(desiredAccess), uintptr(_p0), uintptr(processId)) -+ handle = Handle(r0) -+ if handle == 0 { -+ err = errnoErr(e1) -+ } - return - } - --func GetConsoleMode(console Handle, mode *uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procGetConsoleMode.Addr(), 2, uintptr(console), uintptr(unsafe.Pointer(mode)), 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func OpenThread(desiredAccess uint32, inheritHandle bool, threadId uint32) (handle Handle, err error) { -+ var _p0 uint32 -+ if inheritHandle { -+ _p0 = 1 -+ } -+ r0, _, e1 := syscall.Syscall(procOpenThread.Addr(), 3, uintptr(desiredAccess), uintptr(_p0), uintptr(threadId)) -+ handle = Handle(r0) -+ if handle == 0 { -+ err = errnoErr(e1) - } - return - } - --func SetConsoleMode(console Handle, mode uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procSetConsoleMode.Addr(), 2, uintptr(console), uintptr(mode), 0) -+func PostQueuedCompletionStatus(cphandle Handle, qty uint32, key uintptr, overlapped *Overlapped) (err error) { -+ r1, _, e1 := syscall.Syscall6(procPostQueuedCompletionStatus.Addr(), 4, uintptr(cphandle), uintptr(qty), uintptr(key), uintptr(unsafe.Pointer(overlapped)), 0, 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func GetConsoleScreenBufferInfo(console Handle, info *ConsoleScreenBufferInfo) (err error) { -- r1, _, e1 := syscall.Syscall(procGetConsoleScreenBufferInfo.Addr(), 2, uintptr(console), uintptr(unsafe.Pointer(info)), 0) -+func Process32First(snapshot Handle, procEntry *ProcessEntry32) (err error) { -+ r1, _, e1 := syscall.Syscall(procProcess32FirstW.Addr(), 2, uintptr(snapshot), uintptr(unsafe.Pointer(procEntry)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func WriteConsole(console Handle, buf *uint16, towrite uint32, written *uint32, reserved *byte) (err error) { -- r1, _, e1 := syscall.Syscall6(procWriteConsoleW.Addr(), 5, uintptr(console), uintptr(unsafe.Pointer(buf)), uintptr(towrite), uintptr(unsafe.Pointer(written)), uintptr(unsafe.Pointer(reserved)), 0) -+func Process32Next(snapshot Handle, procEntry *ProcessEntry32) (err error) { -+ r1, _, e1 := syscall.Syscall(procProcess32NextW.Addr(), 2, uintptr(snapshot), uintptr(unsafe.Pointer(procEntry)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func ReadConsole(console Handle, buf *uint16, toread uint32, read *uint32, inputControl *byte) (err error) { -- r1, _, e1 := syscall.Syscall6(procReadConsoleW.Addr(), 5, uintptr(console), uintptr(unsafe.Pointer(buf)), uintptr(toread), uintptr(unsafe.Pointer(read)), uintptr(unsafe.Pointer(inputControl)), 0) -+func ProcessIdToSessionId(pid uint32, sessionid *uint32) (err error) { -+ r1, _, e1 := syscall.Syscall(procProcessIdToSessionId.Addr(), 2, uintptr(pid), uintptr(unsafe.Pointer(sessionid)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func CreateToolhelp32Snapshot(flags uint32, processId uint32) (handle Handle, err error) { -- r0, _, e1 := syscall.Syscall(procCreateToolhelp32Snapshot.Addr(), 2, uintptr(flags), uintptr(processId), 0) -- handle = Handle(r0) -- if handle == InvalidHandle { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func PulseEvent(event Handle) (err error) { -+ r1, _, e1 := syscall.Syscall(procPulseEvent.Addr(), 1, uintptr(event), 0, 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func Process32First(snapshot Handle, procEntry *ProcessEntry32) (err error) { -- r1, _, e1 := syscall.Syscall(procProcess32FirstW.Addr(), 2, uintptr(snapshot), uintptr(unsafe.Pointer(procEntry)), 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func QueryDosDevice(deviceName *uint16, targetPath *uint16, max uint32) (n uint32, err error) { -+ r0, _, e1 := syscall.Syscall(procQueryDosDeviceW.Addr(), 3, uintptr(unsafe.Pointer(deviceName)), uintptr(unsafe.Pointer(targetPath)), uintptr(max)) -+ n = uint32(r0) -+ if n == 0 { -+ err = errnoErr(e1) - } - return - } - --func Process32Next(snapshot Handle, procEntry *ProcessEntry32) (err error) { -- r1, _, e1 := syscall.Syscall(procProcess32NextW.Addr(), 2, uintptr(snapshot), uintptr(unsafe.Pointer(procEntry)), 0) -+func QueryFullProcessImageName(proc Handle, flags uint32, exeName *uint16, size *uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procQueryFullProcessImageNameW.Addr(), 4, uintptr(proc), uintptr(flags), uintptr(unsafe.Pointer(exeName)), uintptr(unsafe.Pointer(size)), 0, 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func Thread32First(snapshot Handle, threadEntry *ThreadEntry32) (err error) { -- r1, _, e1 := syscall.Syscall(procThread32First.Addr(), 2, uintptr(snapshot), uintptr(unsafe.Pointer(threadEntry)), 0) -+func QueryInformationJobObject(job Handle, JobObjectInformationClass int32, JobObjectInformation uintptr, JobObjectInformationLength uint32, retlen *uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procQueryInformationJobObject.Addr(), 5, uintptr(job), uintptr(JobObjectInformationClass), uintptr(JobObjectInformation), uintptr(JobObjectInformationLength), uintptr(unsafe.Pointer(retlen)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func Thread32Next(snapshot Handle, threadEntry *ThreadEntry32) (err error) { -- r1, _, e1 := syscall.Syscall(procThread32Next.Addr(), 2, uintptr(snapshot), uintptr(unsafe.Pointer(threadEntry)), 0) -+func ReadConsole(console Handle, buf *uint16, toread uint32, read *uint32, inputControl *byte) (err error) { -+ r1, _, e1 := syscall.Syscall6(procReadConsoleW.Addr(), 5, uintptr(console), uintptr(unsafe.Pointer(buf)), uintptr(toread), uintptr(unsafe.Pointer(read)), uintptr(unsafe.Pointer(inputControl)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func DeviceIoControl(handle Handle, ioControlCode uint32, inBuffer *byte, inBufferSize uint32, outBuffer *byte, outBufferSize uint32, bytesReturned *uint32, overlapped *Overlapped) (err error) { -- r1, _, e1 := syscall.Syscall9(procDeviceIoControl.Addr(), 8, uintptr(handle), uintptr(ioControlCode), uintptr(unsafe.Pointer(inBuffer)), uintptr(inBufferSize), uintptr(unsafe.Pointer(outBuffer)), uintptr(outBufferSize), uintptr(unsafe.Pointer(bytesReturned)), uintptr(unsafe.Pointer(overlapped)), 0) -+func ReadDirectoryChanges(handle Handle, buf *byte, buflen uint32, watchSubTree bool, mask uint32, retlen *uint32, overlapped *Overlapped, completionRoutine uintptr) (err error) { -+ var _p0 uint32 -+ if watchSubTree { -+ _p0 = 1 -+ } -+ r1, _, e1 := syscall.Syscall9(procReadDirectoryChangesW.Addr(), 8, uintptr(handle), uintptr(unsafe.Pointer(buf)), uintptr(buflen), uintptr(_p0), uintptr(mask), uintptr(unsafe.Pointer(retlen)), uintptr(unsafe.Pointer(overlapped)), uintptr(completionRoutine), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func CreateSymbolicLink(symlinkfilename *uint16, targetfilename *uint16, flags uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procCreateSymbolicLinkW.Addr(), 3, uintptr(unsafe.Pointer(symlinkfilename)), uintptr(unsafe.Pointer(targetfilename)), uintptr(flags)) -- if r1&0xff == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func readFile(handle Handle, buf []byte, done *uint32, overlapped *Overlapped) (err error) { -+ var _p0 *byte -+ if len(buf) > 0 { -+ _p0 = &buf[0] -+ } -+ r1, _, e1 := syscall.Syscall6(procReadFile.Addr(), 5, uintptr(handle), uintptr(unsafe.Pointer(_p0)), uintptr(len(buf)), uintptr(unsafe.Pointer(done)), uintptr(unsafe.Pointer(overlapped)), 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func CreateHardLink(filename *uint16, existingfilename *uint16, reserved uintptr) (err error) { -- r1, _, e1 := syscall.Syscall(procCreateHardLinkW.Addr(), 3, uintptr(unsafe.Pointer(filename)), uintptr(unsafe.Pointer(existingfilename)), uintptr(reserved)) -- if r1&0xff == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func ReadProcessMemory(process Handle, baseAddress uintptr, buffer *byte, size uintptr, numberOfBytesRead *uintptr) (err error) { -+ r1, _, e1 := syscall.Syscall6(procReadProcessMemory.Addr(), 5, uintptr(process), uintptr(baseAddress), uintptr(unsafe.Pointer(buffer)), uintptr(size), uintptr(unsafe.Pointer(numberOfBytesRead)), 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func GetCurrentThreadId() (id uint32) { -- r0, _, _ := syscall.Syscall(procGetCurrentThreadId.Addr(), 0, 0, 0, 0) -- id = uint32(r0) -+func ReleaseMutex(mutex Handle) (err error) { -+ r1, _, e1 := syscall.Syscall(procReleaseMutex.Addr(), 1, uintptr(mutex), 0, 0) -+ if r1 == 0 { -+ err = errnoErr(e1) -+ } - return - } - --func CreateEvent(eventAttrs *SecurityAttributes, manualReset uint32, initialState uint32, name *uint16) (handle Handle, err error) { -- r0, _, e1 := syscall.Syscall6(procCreateEventW.Addr(), 4, uintptr(unsafe.Pointer(eventAttrs)), uintptr(manualReset), uintptr(initialState), uintptr(unsafe.Pointer(name)), 0, 0) -- handle = Handle(r0) -- if handle == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func RemoveDirectory(path *uint16) (err error) { -+ r1, _, e1 := syscall.Syscall(procRemoveDirectoryW.Addr(), 1, uintptr(unsafe.Pointer(path)), 0, 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func CreateEventEx(eventAttrs *SecurityAttributes, name *uint16, flags uint32, desiredAccess uint32) (handle Handle, err error) { -- r0, _, e1 := syscall.Syscall6(procCreateEventExW.Addr(), 4, uintptr(unsafe.Pointer(eventAttrs)), uintptr(unsafe.Pointer(name)), uintptr(flags), uintptr(desiredAccess), 0, 0) -- handle = Handle(r0) -- if handle == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func ResetEvent(event Handle) (err error) { -+ r1, _, e1 := syscall.Syscall(procResetEvent.Addr(), 1, uintptr(event), 0, 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func OpenEvent(desiredAccess uint32, inheritHandle bool, name *uint16) (handle Handle, err error) { -- var _p0 uint32 -- if inheritHandle { -- _p0 = 1 -- } else { -- _p0 = 0 -- } -- r0, _, e1 := syscall.Syscall(procOpenEventW.Addr(), 3, uintptr(desiredAccess), uintptr(_p0), uintptr(unsafe.Pointer(name))) -- handle = Handle(r0) -- if handle == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func ResumeThread(thread Handle) (ret uint32, err error) { -+ r0, _, e1 := syscall.Syscall(procResumeThread.Addr(), 1, uintptr(thread), 0, 0) -+ ret = uint32(r0) -+ if ret == 0xffffffff { -+ err = errnoErr(e1) - } - return - } - --func SetEvent(event Handle) (err error) { -- r1, _, e1 := syscall.Syscall(procSetEvent.Addr(), 1, uintptr(event), 0, 0) -+func SetCommTimeouts(handle Handle, timeouts *CommTimeouts) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetCommTimeouts.Addr(), 2, uintptr(handle), uintptr(unsafe.Pointer(timeouts)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func ResetEvent(event Handle) (err error) { -- r1, _, e1 := syscall.Syscall(procResetEvent.Addr(), 1, uintptr(event), 0, 0) -+func setConsoleCursorPosition(console Handle, position uint32) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetConsoleCursorPosition.Addr(), 2, uintptr(console), uintptr(position), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func PulseEvent(event Handle) (err error) { -- r1, _, e1 := syscall.Syscall(procPulseEvent.Addr(), 1, uintptr(event), 0, 0) -+func SetConsoleMode(console Handle, mode uint32) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetConsoleMode.Addr(), 2, uintptr(console), uintptr(mode), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func CreateMutex(mutexAttrs *SecurityAttributes, initialOwner bool, name *uint16) (handle Handle, err error) { -- var _p0 uint32 -- if initialOwner { -- _p0 = 1 -- } else { -- _p0 = 0 -- } -- r0, _, e1 := syscall.Syscall(procCreateMutexW.Addr(), 3, uintptr(unsafe.Pointer(mutexAttrs)), uintptr(_p0), uintptr(unsafe.Pointer(name))) -- handle = Handle(r0) -- if handle == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func SetCurrentDirectory(path *uint16) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetCurrentDirectoryW.Addr(), 1, uintptr(unsafe.Pointer(path)), 0, 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func CreateMutexEx(mutexAttrs *SecurityAttributes, name *uint16, flags uint32, desiredAccess uint32) (handle Handle, err error) { -- r0, _, e1 := syscall.Syscall6(procCreateMutexExW.Addr(), 4, uintptr(unsafe.Pointer(mutexAttrs)), uintptr(unsafe.Pointer(name)), uintptr(flags), uintptr(desiredAccess), 0, 0) -- handle = Handle(r0) -- if handle == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func SetDefaultDllDirectories(directoryFlags uint32) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetDefaultDllDirectories.Addr(), 1, uintptr(directoryFlags), 0, 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func OpenMutex(desiredAccess uint32, inheritHandle bool, name *uint16) (handle Handle, err error) { -- var _p0 uint32 -- if inheritHandle { -- _p0 = 1 -- } else { -- _p0 = 0 -+func SetDllDirectory(path string) (err error) { -+ var _p0 *uint16 -+ _p0, err = syscall.UTF16PtrFromString(path) -+ if err != nil { -+ return - } -- r0, _, e1 := syscall.Syscall(procOpenMutexW.Addr(), 3, uintptr(desiredAccess), uintptr(_p0), uintptr(unsafe.Pointer(name))) -- handle = Handle(r0) -- if handle == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ return _SetDllDirectory(_p0) -+} -+ -+func _SetDllDirectory(path *uint16) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetDllDirectoryW.Addr(), 1, uintptr(unsafe.Pointer(path)), 0, 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func ReleaseMutex(mutex Handle) (err error) { -- r1, _, e1 := syscall.Syscall(procReleaseMutex.Addr(), 1, uintptr(mutex), 0, 0) -+func SetEndOfFile(handle Handle) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetEndOfFile.Addr(), 1, uintptr(handle), 0, 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func SleepEx(milliseconds uint32, alertable bool) (ret uint32) { -- var _p0 uint32 -- if alertable { -- _p0 = 1 -- } else { -- _p0 = 0 -+func SetEnvironmentVariable(name *uint16, value *uint16) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetEnvironmentVariableW.Addr(), 2, uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(value)), 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } -- r0, _, _ := syscall.Syscall(procSleepEx.Addr(), 2, uintptr(milliseconds), uintptr(_p0), 0) -+ return -+} -+ -+func SetErrorMode(mode uint32) (ret uint32) { -+ r0, _, _ := syscall.Syscall(procSetErrorMode.Addr(), 1, uintptr(mode), 0, 0) - ret = uint32(r0) - return - } - --func CreateJobObject(jobAttr *SecurityAttributes, name *uint16) (handle Handle, err error) { -- r0, _, e1 := syscall.Syscall(procCreateJobObjectW.Addr(), 2, uintptr(unsafe.Pointer(jobAttr)), uintptr(unsafe.Pointer(name)), 0) -- handle = Handle(r0) -- if handle == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func SetEvent(event Handle) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetEvent.Addr(), 1, uintptr(event), 0, 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func AssignProcessToJobObject(job Handle, process Handle) (err error) { -- r1, _, e1 := syscall.Syscall(procAssignProcessToJobObject.Addr(), 2, uintptr(job), uintptr(process), 0) -+func SetFileAttributes(name *uint16, attrs uint32) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetFileAttributesW.Addr(), 2, uintptr(unsafe.Pointer(name)), uintptr(attrs), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func TerminateJobObject(job Handle, exitCode uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procTerminateJobObject.Addr(), 2, uintptr(job), uintptr(exitCode), 0) -+func SetFileCompletionNotificationModes(handle Handle, flags uint8) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetFileCompletionNotificationModes.Addr(), 2, uintptr(handle), uintptr(flags), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func SetErrorMode(mode uint32) (ret uint32) { -- r0, _, _ := syscall.Syscall(procSetErrorMode.Addr(), 1, uintptr(mode), 0, 0) -- ret = uint32(r0) -+func SetFileInformationByHandle(handle Handle, class uint32, inBuffer *byte, inBufferLen uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procSetFileInformationByHandle.Addr(), 4, uintptr(handle), uintptr(class), uintptr(unsafe.Pointer(inBuffer)), uintptr(inBufferLen), 0, 0) -+ if r1 == 0 { -+ err = errnoErr(e1) -+ } - return - } - --func ResumeThread(thread Handle) (ret uint32, err error) { -- r0, _, e1 := syscall.Syscall(procResumeThread.Addr(), 1, uintptr(thread), 0, 0) -- ret = uint32(r0) -- if ret == 0xffffffff { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func SetFilePointer(handle Handle, lowoffset int32, highoffsetptr *int32, whence uint32) (newlowoffset uint32, err error) { -+ r0, _, e1 := syscall.Syscall6(procSetFilePointer.Addr(), 4, uintptr(handle), uintptr(lowoffset), uintptr(unsafe.Pointer(highoffsetptr)), uintptr(whence), 0, 0) -+ newlowoffset = uint32(r0) -+ if newlowoffset == 0xffffffff { -+ err = errnoErr(e1) - } - return - } - --func SetPriorityClass(process Handle, priorityClass uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procSetPriorityClass.Addr(), 2, uintptr(process), uintptr(priorityClass), 0) -+func SetFileTime(handle Handle, ctime *Filetime, atime *Filetime, wtime *Filetime) (err error) { -+ r1, _, e1 := syscall.Syscall6(procSetFileTime.Addr(), 4, uintptr(handle), uintptr(unsafe.Pointer(ctime)), uintptr(unsafe.Pointer(atime)), uintptr(unsafe.Pointer(wtime)), 0, 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func GetPriorityClass(process Handle) (ret uint32, err error) { -- r0, _, e1 := syscall.Syscall(procGetPriorityClass.Addr(), 1, uintptr(process), 0, 0) -- ret = uint32(r0) -- if ret == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func SetHandleInformation(handle Handle, mask uint32, flags uint32) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetHandleInformation.Addr(), 3, uintptr(handle), uintptr(mask), uintptr(flags)) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } -@@ -2343,1709 +2964,1251 @@ func SetInformationJobObject(job Handle, JobObjectInformationClass uint32, JobOb - r0, _, e1 := syscall.Syscall6(procSetInformationJobObject.Addr(), 4, uintptr(job), uintptr(JobObjectInformationClass), uintptr(JobObjectInformation), uintptr(JobObjectInformationLength), 0, 0) - ret = int(r0) - if ret == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func GenerateConsoleCtrlEvent(ctrlEvent uint32, processGroupID uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procGenerateConsoleCtrlEvent.Addr(), 2, uintptr(ctrlEvent), uintptr(processGroupID), 0) -+func SetNamedPipeHandleState(pipe Handle, state *uint32, maxCollectionCount *uint32, collectDataTimeout *uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procSetNamedPipeHandleState.Addr(), 4, uintptr(pipe), uintptr(unsafe.Pointer(state)), uintptr(unsafe.Pointer(maxCollectionCount)), uintptr(unsafe.Pointer(collectDataTimeout)), 0, 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func GetProcessId(process Handle) (id uint32, err error) { -- r0, _, e1 := syscall.Syscall(procGetProcessId.Addr(), 1, uintptr(process), 0, 0) -- id = uint32(r0) -- if id == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func SetPriorityClass(process Handle, priorityClass uint32) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetPriorityClass.Addr(), 2, uintptr(process), uintptr(priorityClass), 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func OpenThread(desiredAccess uint32, inheritHandle bool, threadId uint32) (handle Handle, err error) { -+func SetProcessPriorityBoost(process Handle, disable bool) (err error) { - var _p0 uint32 -- if inheritHandle { -+ if disable { - _p0 = 1 -- } else { -- _p0 = 0 - } -- r0, _, e1 := syscall.Syscall(procOpenThread.Addr(), 3, uintptr(desiredAccess), uintptr(_p0), uintptr(threadId)) -- handle = Handle(r0) -- if handle == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ r1, _, e1 := syscall.Syscall(procSetProcessPriorityBoost.Addr(), 2, uintptr(process), uintptr(_p0), 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func SetProcessPriorityBoost(process Handle, disable bool) (err error) { -- var _p0 uint32 -- if disable { -- _p0 = 1 -- } else { -- _p0 = 0 -+func SetProcessShutdownParameters(level uint32, flags uint32) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetProcessShutdownParameters.Addr(), 2, uintptr(level), uintptr(flags), 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } -- r1, _, e1 := syscall.Syscall(procSetProcessPriorityBoost.Addr(), 2, uintptr(process), uintptr(_p0), 0) -+ return -+} -+ -+func SetProcessWorkingSetSizeEx(hProcess Handle, dwMinimumWorkingSetSize uintptr, dwMaximumWorkingSetSize uintptr, flags uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procSetProcessWorkingSetSizeEx.Addr(), 4, uintptr(hProcess), uintptr(dwMinimumWorkingSetSize), uintptr(dwMaximumWorkingSetSize), uintptr(flags), 0, 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func DefineDosDevice(flags uint32, deviceName *uint16, targetPath *uint16) (err error) { -- r1, _, e1 := syscall.Syscall(procDefineDosDeviceW.Addr(), 3, uintptr(flags), uintptr(unsafe.Pointer(deviceName)), uintptr(unsafe.Pointer(targetPath))) -+func SetStdHandle(stdhandle uint32, handle Handle) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetStdHandle.Addr(), 2, uintptr(stdhandle), uintptr(handle), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func DeleteVolumeMountPoint(volumeMountPoint *uint16) (err error) { -- r1, _, e1 := syscall.Syscall(procDeleteVolumeMountPointW.Addr(), 1, uintptr(unsafe.Pointer(volumeMountPoint)), 0, 0) -+func SetVolumeLabel(rootPathName *uint16, volumeName *uint16) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetVolumeLabelW.Addr(), 2, uintptr(unsafe.Pointer(rootPathName)), uintptr(unsafe.Pointer(volumeName)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func FindFirstVolume(volumeName *uint16, bufferLength uint32) (handle Handle, err error) { -- r0, _, e1 := syscall.Syscall(procFindFirstVolumeW.Addr(), 2, uintptr(unsafe.Pointer(volumeName)), uintptr(bufferLength), 0) -- handle = Handle(r0) -- if handle == InvalidHandle { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func SetVolumeMountPoint(volumeMountPoint *uint16, volumeName *uint16) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetVolumeMountPointW.Addr(), 2, uintptr(unsafe.Pointer(volumeMountPoint)), uintptr(unsafe.Pointer(volumeName)), 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func FindFirstVolumeMountPoint(rootPathName *uint16, volumeMountPoint *uint16, bufferLength uint32) (handle Handle, err error) { -- r0, _, e1 := syscall.Syscall(procFindFirstVolumeMountPointW.Addr(), 3, uintptr(unsafe.Pointer(rootPathName)), uintptr(unsafe.Pointer(volumeMountPoint)), uintptr(bufferLength)) -- handle = Handle(r0) -- if handle == InvalidHandle { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func SizeofResource(module Handle, resInfo Handle) (size uint32, err error) { -+ r0, _, e1 := syscall.Syscall(procSizeofResource.Addr(), 2, uintptr(module), uintptr(resInfo), 0) -+ size = uint32(r0) -+ if size == 0 { -+ err = errnoErr(e1) - } - return - } - --func FindNextVolume(findVolume Handle, volumeName *uint16, bufferLength uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procFindNextVolumeW.Addr(), 3, uintptr(findVolume), uintptr(unsafe.Pointer(volumeName)), uintptr(bufferLength)) -+func SleepEx(milliseconds uint32, alertable bool) (ret uint32) { -+ var _p0 uint32 -+ if alertable { -+ _p0 = 1 -+ } -+ r0, _, _ := syscall.Syscall(procSleepEx.Addr(), 2, uintptr(milliseconds), uintptr(_p0), 0) -+ ret = uint32(r0) -+ return -+} -+ -+func TerminateJobObject(job Handle, exitCode uint32) (err error) { -+ r1, _, e1 := syscall.Syscall(procTerminateJobObject.Addr(), 2, uintptr(job), uintptr(exitCode), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func FindNextVolumeMountPoint(findVolumeMountPoint Handle, volumeMountPoint *uint16, bufferLength uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procFindNextVolumeMountPointW.Addr(), 3, uintptr(findVolumeMountPoint), uintptr(unsafe.Pointer(volumeMountPoint)), uintptr(bufferLength)) -+func TerminateProcess(handle Handle, exitcode uint32) (err error) { -+ r1, _, e1 := syscall.Syscall(procTerminateProcess.Addr(), 2, uintptr(handle), uintptr(exitcode), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func FindVolumeClose(findVolume Handle) (err error) { -- r1, _, e1 := syscall.Syscall(procFindVolumeClose.Addr(), 1, uintptr(findVolume), 0, 0) -+func Thread32First(snapshot Handle, threadEntry *ThreadEntry32) (err error) { -+ r1, _, e1 := syscall.Syscall(procThread32First.Addr(), 2, uintptr(snapshot), uintptr(unsafe.Pointer(threadEntry)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func FindVolumeMountPointClose(findVolumeMountPoint Handle) (err error) { -- r1, _, e1 := syscall.Syscall(procFindVolumeMountPointClose.Addr(), 1, uintptr(findVolumeMountPoint), 0, 0) -+func Thread32Next(snapshot Handle, threadEntry *ThreadEntry32) (err error) { -+ r1, _, e1 := syscall.Syscall(procThread32Next.Addr(), 2, uintptr(snapshot), uintptr(unsafe.Pointer(threadEntry)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func GetDiskFreeSpaceEx(directoryName *uint16, freeBytesAvailableToCaller *uint64, totalNumberOfBytes *uint64, totalNumberOfFreeBytes *uint64) (err error) { -- r1, _, e1 := syscall.Syscall6(procGetDiskFreeSpaceExW.Addr(), 4, uintptr(unsafe.Pointer(directoryName)), uintptr(unsafe.Pointer(freeBytesAvailableToCaller)), uintptr(unsafe.Pointer(totalNumberOfBytes)), uintptr(unsafe.Pointer(totalNumberOfFreeBytes)), 0, 0) -+func UnlockFileEx(file Handle, reserved uint32, bytesLow uint32, bytesHigh uint32, overlapped *Overlapped) (err error) { -+ r1, _, e1 := syscall.Syscall6(procUnlockFileEx.Addr(), 5, uintptr(file), uintptr(reserved), uintptr(bytesLow), uintptr(bytesHigh), uintptr(unsafe.Pointer(overlapped)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func GetDriveType(rootPathName *uint16) (driveType uint32) { -- r0, _, _ := syscall.Syscall(procGetDriveTypeW.Addr(), 1, uintptr(unsafe.Pointer(rootPathName)), 0, 0) -- driveType = uint32(r0) -+func UnmapViewOfFile(addr uintptr) (err error) { -+ r1, _, e1 := syscall.Syscall(procUnmapViewOfFile.Addr(), 1, uintptr(addr), 0, 0) -+ if r1 == 0 { -+ err = errnoErr(e1) -+ } - return - } - --func GetLogicalDrives() (drivesBitMask uint32, err error) { -- r0, _, e1 := syscall.Syscall(procGetLogicalDrives.Addr(), 0, 0, 0, 0) -- drivesBitMask = uint32(r0) -- if drivesBitMask == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func updateProcThreadAttribute(attrlist *ProcThreadAttributeList, flags uint32, attr uintptr, value unsafe.Pointer, size uintptr, prevvalue unsafe.Pointer, returnedsize *uintptr) (err error) { -+ r1, _, e1 := syscall.Syscall9(procUpdateProcThreadAttribute.Addr(), 7, uintptr(unsafe.Pointer(attrlist)), uintptr(flags), uintptr(attr), uintptr(value), uintptr(size), uintptr(prevvalue), uintptr(unsafe.Pointer(returnedsize)), 0, 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func GetLogicalDriveStrings(bufferLength uint32, buffer *uint16) (n uint32, err error) { -- r0, _, e1 := syscall.Syscall(procGetLogicalDriveStringsW.Addr(), 2, uintptr(bufferLength), uintptr(unsafe.Pointer(buffer)), 0) -- n = uint32(r0) -- if n == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func VirtualAlloc(address uintptr, size uintptr, alloctype uint32, protect uint32) (value uintptr, err error) { -+ r0, _, e1 := syscall.Syscall6(procVirtualAlloc.Addr(), 4, uintptr(address), uintptr(size), uintptr(alloctype), uintptr(protect), 0, 0) -+ value = uintptr(r0) -+ if value == 0 { -+ err = errnoErr(e1) - } - return - } - --func GetVolumeInformation(rootPathName *uint16, volumeNameBuffer *uint16, volumeNameSize uint32, volumeNameSerialNumber *uint32, maximumComponentLength *uint32, fileSystemFlags *uint32, fileSystemNameBuffer *uint16, fileSystemNameSize uint32) (err error) { -- r1, _, e1 := syscall.Syscall9(procGetVolumeInformationW.Addr(), 8, uintptr(unsafe.Pointer(rootPathName)), uintptr(unsafe.Pointer(volumeNameBuffer)), uintptr(volumeNameSize), uintptr(unsafe.Pointer(volumeNameSerialNumber)), uintptr(unsafe.Pointer(maximumComponentLength)), uintptr(unsafe.Pointer(fileSystemFlags)), uintptr(unsafe.Pointer(fileSystemNameBuffer)), uintptr(fileSystemNameSize), 0) -+func VirtualFree(address uintptr, size uintptr, freetype uint32) (err error) { -+ r1, _, e1 := syscall.Syscall(procVirtualFree.Addr(), 3, uintptr(address), uintptr(size), uintptr(freetype)) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func GetVolumeInformationByHandle(file Handle, volumeNameBuffer *uint16, volumeNameSize uint32, volumeNameSerialNumber *uint32, maximumComponentLength *uint32, fileSystemFlags *uint32, fileSystemNameBuffer *uint16, fileSystemNameSize uint32) (err error) { -- r1, _, e1 := syscall.Syscall9(procGetVolumeInformationByHandleW.Addr(), 8, uintptr(file), uintptr(unsafe.Pointer(volumeNameBuffer)), uintptr(volumeNameSize), uintptr(unsafe.Pointer(volumeNameSerialNumber)), uintptr(unsafe.Pointer(maximumComponentLength)), uintptr(unsafe.Pointer(fileSystemFlags)), uintptr(unsafe.Pointer(fileSystemNameBuffer)), uintptr(fileSystemNameSize), 0) -+func VirtualLock(addr uintptr, length uintptr) (err error) { -+ r1, _, e1 := syscall.Syscall(procVirtualLock.Addr(), 2, uintptr(addr), uintptr(length), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func GetVolumeNameForVolumeMountPoint(volumeMountPoint *uint16, volumeName *uint16, bufferlength uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procGetVolumeNameForVolumeMountPointW.Addr(), 3, uintptr(unsafe.Pointer(volumeMountPoint)), uintptr(unsafe.Pointer(volumeName)), uintptr(bufferlength)) -+func VirtualProtect(address uintptr, size uintptr, newprotect uint32, oldprotect *uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procVirtualProtect.Addr(), 4, uintptr(address), uintptr(size), uintptr(newprotect), uintptr(unsafe.Pointer(oldprotect)), 0, 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func GetVolumePathName(fileName *uint16, volumePathName *uint16, bufferLength uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procGetVolumePathNameW.Addr(), 3, uintptr(unsafe.Pointer(fileName)), uintptr(unsafe.Pointer(volumePathName)), uintptr(bufferLength)) -+func VirtualProtectEx(process Handle, address uintptr, size uintptr, newProtect uint32, oldProtect *uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procVirtualProtectEx.Addr(), 5, uintptr(process), uintptr(address), uintptr(size), uintptr(newProtect), uintptr(unsafe.Pointer(oldProtect)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func GetVolumePathNamesForVolumeName(volumeName *uint16, volumePathNames *uint16, bufferLength uint32, returnLength *uint32) (err error) { -- r1, _, e1 := syscall.Syscall6(procGetVolumePathNamesForVolumeNameW.Addr(), 4, uintptr(unsafe.Pointer(volumeName)), uintptr(unsafe.Pointer(volumePathNames)), uintptr(bufferLength), uintptr(unsafe.Pointer(returnLength)), 0, 0) -+func VirtualQuery(address uintptr, buffer *MemoryBasicInformation, length uintptr) (err error) { -+ r1, _, e1 := syscall.Syscall(procVirtualQuery.Addr(), 3, uintptr(address), uintptr(unsafe.Pointer(buffer)), uintptr(length)) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func QueryDosDevice(deviceName *uint16, targetPath *uint16, max uint32) (n uint32, err error) { -- r0, _, e1 := syscall.Syscall(procQueryDosDeviceW.Addr(), 3, uintptr(unsafe.Pointer(deviceName)), uintptr(unsafe.Pointer(targetPath)), uintptr(max)) -- n = uint32(r0) -- if n == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func VirtualQueryEx(process Handle, address uintptr, buffer *MemoryBasicInformation, length uintptr) (err error) { -+ r1, _, e1 := syscall.Syscall6(procVirtualQueryEx.Addr(), 4, uintptr(process), uintptr(address), uintptr(unsafe.Pointer(buffer)), uintptr(length), 0, 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func SetVolumeLabel(rootPathName *uint16, volumeName *uint16) (err error) { -- r1, _, e1 := syscall.Syscall(procSetVolumeLabelW.Addr(), 2, uintptr(unsafe.Pointer(rootPathName)), uintptr(unsafe.Pointer(volumeName)), 0) -+func VirtualUnlock(addr uintptr, length uintptr) (err error) { -+ r1, _, e1 := syscall.Syscall(procVirtualUnlock.Addr(), 2, uintptr(addr), uintptr(length), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func SetVolumeMountPoint(volumeMountPoint *uint16, volumeName *uint16) (err error) { -- r1, _, e1 := syscall.Syscall(procSetVolumeMountPointW.Addr(), 2, uintptr(unsafe.Pointer(volumeMountPoint)), uintptr(unsafe.Pointer(volumeName)), 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func WTSGetActiveConsoleSessionId() (sessionID uint32) { -+ r0, _, _ := syscall.Syscall(procWTSGetActiveConsoleSessionId.Addr(), 0, 0, 0, 0) -+ sessionID = uint32(r0) -+ return -+} -+ -+func waitForMultipleObjects(count uint32, handles uintptr, waitAll bool, waitMilliseconds uint32) (event uint32, err error) { -+ var _p0 uint32 -+ if waitAll { -+ _p0 = 1 -+ } -+ r0, _, e1 := syscall.Syscall6(procWaitForMultipleObjects.Addr(), 4, uintptr(count), uintptr(handles), uintptr(_p0), uintptr(waitMilliseconds), 0, 0) -+ event = uint32(r0) -+ if event == 0xffffffff { -+ err = errnoErr(e1) - } - return - } - --func MessageBox(hwnd Handle, text *uint16, caption *uint16, boxtype uint32) (ret int32, err error) { -- r0, _, e1 := syscall.Syscall6(procMessageBoxW.Addr(), 4, uintptr(hwnd), uintptr(unsafe.Pointer(text)), uintptr(unsafe.Pointer(caption)), uintptr(boxtype), 0, 0) -- ret = int32(r0) -- if ret == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func WaitForSingleObject(handle Handle, waitMilliseconds uint32) (event uint32, err error) { -+ r0, _, e1 := syscall.Syscall(procWaitForSingleObject.Addr(), 2, uintptr(handle), uintptr(waitMilliseconds), 0) -+ event = uint32(r0) -+ if event == 0xffffffff { -+ err = errnoErr(e1) - } - return - } - --func ExitWindowsEx(flags uint32, reason uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procExitWindowsEx.Addr(), 2, uintptr(flags), uintptr(reason), 0) -+func WriteConsole(console Handle, buf *uint16, towrite uint32, written *uint32, reserved *byte) (err error) { -+ r1, _, e1 := syscall.Syscall6(procWriteConsoleW.Addr(), 5, uintptr(console), uintptr(unsafe.Pointer(buf)), uintptr(towrite), uintptr(unsafe.Pointer(written)), uintptr(unsafe.Pointer(reserved)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func InitiateSystemShutdownEx(machineName *uint16, message *uint16, timeout uint32, forceAppsClosed bool, rebootAfterShutdown bool, reason uint32) (err error) { -- var _p0 uint32 -- if forceAppsClosed { -- _p0 = 1 -- } else { -- _p0 = 0 -- } -- var _p1 uint32 -- if rebootAfterShutdown { -- _p1 = 1 -- } else { -- _p1 = 0 -+func writeFile(handle Handle, buf []byte, done *uint32, overlapped *Overlapped) (err error) { -+ var _p0 *byte -+ if len(buf) > 0 { -+ _p0 = &buf[0] - } -- r1, _, e1 := syscall.Syscall6(procInitiateSystemShutdownExW.Addr(), 6, uintptr(unsafe.Pointer(machineName)), uintptr(unsafe.Pointer(message)), uintptr(timeout), uintptr(_p0), uintptr(_p1), uintptr(reason)) -+ r1, _, e1 := syscall.Syscall6(procWriteFile.Addr(), 5, uintptr(handle), uintptr(unsafe.Pointer(_p0)), uintptr(len(buf)), uintptr(unsafe.Pointer(done)), uintptr(unsafe.Pointer(overlapped)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func SetProcessShutdownParameters(level uint32, flags uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procSetProcessShutdownParameters.Addr(), 2, uintptr(level), uintptr(flags), 0) -+func WriteProcessMemory(process Handle, baseAddress uintptr, buffer *byte, size uintptr, numberOfBytesWritten *uintptr) (err error) { -+ r1, _, e1 := syscall.Syscall6(procWriteProcessMemory.Addr(), 5, uintptr(process), uintptr(baseAddress), uintptr(unsafe.Pointer(buffer)), uintptr(size), uintptr(unsafe.Pointer(numberOfBytesWritten)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func GetProcessShutdownParameters(level *uint32, flags *uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procGetProcessShutdownParameters.Addr(), 2, uintptr(unsafe.Pointer(level)), uintptr(unsafe.Pointer(flags)), 0) -+func AcceptEx(ls Handle, as Handle, buf *byte, rxdatalen uint32, laddrlen uint32, raddrlen uint32, recvd *uint32, overlapped *Overlapped) (err error) { -+ r1, _, e1 := syscall.Syscall9(procAcceptEx.Addr(), 8, uintptr(ls), uintptr(as), uintptr(unsafe.Pointer(buf)), uintptr(rxdatalen), uintptr(laddrlen), uintptr(raddrlen), uintptr(unsafe.Pointer(recvd)), uintptr(unsafe.Pointer(overlapped)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func clsidFromString(lpsz *uint16, pclsid *GUID) (ret error) { -- r0, _, _ := syscall.Syscall(procCLSIDFromString.Addr(), 2, uintptr(unsafe.Pointer(lpsz)), uintptr(unsafe.Pointer(pclsid)), 0) -- if r0 != 0 { -- ret = syscall.Errno(r0) -- } -+func GetAcceptExSockaddrs(buf *byte, rxdatalen uint32, laddrlen uint32, raddrlen uint32, lrsa **RawSockaddrAny, lrsalen *int32, rrsa **RawSockaddrAny, rrsalen *int32) { -+ syscall.Syscall9(procGetAcceptExSockaddrs.Addr(), 8, uintptr(unsafe.Pointer(buf)), uintptr(rxdatalen), uintptr(laddrlen), uintptr(raddrlen), uintptr(unsafe.Pointer(lrsa)), uintptr(unsafe.Pointer(lrsalen)), uintptr(unsafe.Pointer(rrsa)), uintptr(unsafe.Pointer(rrsalen)), 0) - return - } - --func stringFromGUID2(rguid *GUID, lpsz *uint16, cchMax int32) (chars int32) { -- r0, _, _ := syscall.Syscall(procStringFromGUID2.Addr(), 3, uintptr(unsafe.Pointer(rguid)), uintptr(unsafe.Pointer(lpsz)), uintptr(cchMax)) -- chars = int32(r0) -+func TransmitFile(s Handle, handle Handle, bytesToWrite uint32, bytsPerSend uint32, overlapped *Overlapped, transmitFileBuf *TransmitFileBuffers, flags uint32) (err error) { -+ r1, _, e1 := syscall.Syscall9(procTransmitFile.Addr(), 7, uintptr(s), uintptr(handle), uintptr(bytesToWrite), uintptr(bytsPerSend), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(transmitFileBuf)), uintptr(flags), 0, 0) -+ if r1 == 0 { -+ err = errnoErr(e1) -+ } - return - } - --func coCreateGuid(pguid *GUID) (ret error) { -- r0, _, _ := syscall.Syscall(procCoCreateGuid.Addr(), 1, uintptr(unsafe.Pointer(pguid)), 0, 0) -+func NetApiBufferFree(buf *byte) (neterr error) { -+ r0, _, _ := syscall.Syscall(procNetApiBufferFree.Addr(), 1, uintptr(unsafe.Pointer(buf)), 0, 0) - if r0 != 0 { -- ret = syscall.Errno(r0) -+ neterr = syscall.Errno(r0) - } - return - } - --func CoTaskMemFree(address unsafe.Pointer) { -- syscall.Syscall(procCoTaskMemFree.Addr(), 1, uintptr(address), 0, 0) -+func NetGetJoinInformation(server *uint16, name **uint16, bufType *uint32) (neterr error) { -+ r0, _, _ := syscall.Syscall(procNetGetJoinInformation.Addr(), 3, uintptr(unsafe.Pointer(server)), uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(bufType))) -+ if r0 != 0 { -+ neterr = syscall.Errno(r0) -+ } - return - } - --func rtlGetVersion(info *OsVersionInfoEx) (ret error) { -- r0, _, _ := syscall.Syscall(procRtlGetVersion.Addr(), 1, uintptr(unsafe.Pointer(info)), 0, 0) -+func NetUserGetInfo(serverName *uint16, userName *uint16, level uint32, buf **byte) (neterr error) { -+ r0, _, _ := syscall.Syscall6(procNetUserGetInfo.Addr(), 4, uintptr(unsafe.Pointer(serverName)), uintptr(unsafe.Pointer(userName)), uintptr(level), uintptr(unsafe.Pointer(buf)), 0, 0) - if r0 != 0 { -- ret = syscall.Errno(r0) -+ neterr = syscall.Errno(r0) - } - return - } - --func rtlGetNtVersionNumbers(majorVersion *uint32, minorVersion *uint32, buildNumber *uint32) { -- syscall.Syscall(procRtlGetNtVersionNumbers.Addr(), 3, uintptr(unsafe.Pointer(majorVersion)), uintptr(unsafe.Pointer(minorVersion)), uintptr(unsafe.Pointer(buildNumber))) -+func NtCreateFile(handle *Handle, access uint32, oa *OBJECT_ATTRIBUTES, iosb *IO_STATUS_BLOCK, allocationSize *int64, attributes uint32, share uint32, disposition uint32, options uint32, eabuffer uintptr, ealength uint32) (ntstatus error) { -+ r0, _, _ := syscall.Syscall12(procNtCreateFile.Addr(), 11, uintptr(unsafe.Pointer(handle)), uintptr(access), uintptr(unsafe.Pointer(oa)), uintptr(unsafe.Pointer(iosb)), uintptr(unsafe.Pointer(allocationSize)), uintptr(attributes), uintptr(share), uintptr(disposition), uintptr(options), uintptr(eabuffer), uintptr(ealength), 0) -+ if r0 != 0 { -+ ntstatus = NTStatus(r0) -+ } - return - } - --func getProcessPreferredUILanguages(flags uint32, numLanguages *uint32, buf *uint16, bufSize *uint32) (err error) { -- r1, _, e1 := syscall.Syscall6(procGetProcessPreferredUILanguages.Addr(), 4, uintptr(flags), uintptr(unsafe.Pointer(numLanguages)), uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(bufSize)), 0, 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func NtCreateNamedPipeFile(pipe *Handle, access uint32, oa *OBJECT_ATTRIBUTES, iosb *IO_STATUS_BLOCK, share uint32, disposition uint32, options uint32, typ uint32, readMode uint32, completionMode uint32, maxInstances uint32, inboundQuota uint32, outputQuota uint32, timeout *int64) (ntstatus error) { -+ r0, _, _ := syscall.Syscall15(procNtCreateNamedPipeFile.Addr(), 14, uintptr(unsafe.Pointer(pipe)), uintptr(access), uintptr(unsafe.Pointer(oa)), uintptr(unsafe.Pointer(iosb)), uintptr(share), uintptr(disposition), uintptr(options), uintptr(typ), uintptr(readMode), uintptr(completionMode), uintptr(maxInstances), uintptr(inboundQuota), uintptr(outputQuota), uintptr(unsafe.Pointer(timeout)), 0) -+ if r0 != 0 { -+ ntstatus = NTStatus(r0) - } - return - } - --func getThreadPreferredUILanguages(flags uint32, numLanguages *uint32, buf *uint16, bufSize *uint32) (err error) { -- r1, _, e1 := syscall.Syscall6(procGetThreadPreferredUILanguages.Addr(), 4, uintptr(flags), uintptr(unsafe.Pointer(numLanguages)), uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(bufSize)), 0, 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func NtQueryInformationProcess(proc Handle, procInfoClass int32, procInfo unsafe.Pointer, procInfoLen uint32, retLen *uint32) (ntstatus error) { -+ r0, _, _ := syscall.Syscall6(procNtQueryInformationProcess.Addr(), 5, uintptr(proc), uintptr(procInfoClass), uintptr(procInfo), uintptr(procInfoLen), uintptr(unsafe.Pointer(retLen)), 0) -+ if r0 != 0 { -+ ntstatus = NTStatus(r0) - } - return - } - --func getUserPreferredUILanguages(flags uint32, numLanguages *uint32, buf *uint16, bufSize *uint32) (err error) { -- r1, _, e1 := syscall.Syscall6(procGetUserPreferredUILanguages.Addr(), 4, uintptr(flags), uintptr(unsafe.Pointer(numLanguages)), uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(bufSize)), 0, 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func NtQuerySystemInformation(sysInfoClass int32, sysInfo unsafe.Pointer, sysInfoLen uint32, retLen *uint32) (ntstatus error) { -+ r0, _, _ := syscall.Syscall6(procNtQuerySystemInformation.Addr(), 4, uintptr(sysInfoClass), uintptr(sysInfo), uintptr(sysInfoLen), uintptr(unsafe.Pointer(retLen)), 0, 0) -+ if r0 != 0 { -+ ntstatus = NTStatus(r0) - } - return - } - --func getSystemPreferredUILanguages(flags uint32, numLanguages *uint32, buf *uint16, bufSize *uint32) (err error) { -- r1, _, e1 := syscall.Syscall6(procGetSystemPreferredUILanguages.Addr(), 4, uintptr(flags), uintptr(unsafe.Pointer(numLanguages)), uintptr(unsafe.Pointer(buf)), uintptr(unsafe.Pointer(bufSize)), 0, 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func NtSetInformationFile(handle Handle, iosb *IO_STATUS_BLOCK, inBuffer *byte, inBufferLen uint32, class uint32) (ntstatus error) { -+ r0, _, _ := syscall.Syscall6(procNtSetInformationFile.Addr(), 5, uintptr(handle), uintptr(unsafe.Pointer(iosb)), uintptr(unsafe.Pointer(inBuffer)), uintptr(inBufferLen), uintptr(class), 0) -+ if r0 != 0 { -+ ntstatus = NTStatus(r0) - } - return - } - --func EnumProcesses(processIds []uint32, bytesReturned *uint32) (err error) { -- var _p0 *uint32 -- if len(processIds) > 0 { -- _p0 = &processIds[0] -- } -- r1, _, e1 := syscall.Syscall(procEnumProcesses.Addr(), 3, uintptr(unsafe.Pointer(_p0)), uintptr(len(processIds)), uintptr(unsafe.Pointer(bytesReturned))) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func NtSetInformationProcess(proc Handle, procInfoClass int32, procInfo unsafe.Pointer, procInfoLen uint32) (ntstatus error) { -+ r0, _, _ := syscall.Syscall6(procNtSetInformationProcess.Addr(), 4, uintptr(proc), uintptr(procInfoClass), uintptr(procInfo), uintptr(procInfoLen), 0, 0) -+ if r0 != 0 { -+ ntstatus = NTStatus(r0) - } - return - } - --func WSAStartup(verreq uint32, data *WSAData) (sockerr error) { -- r0, _, _ := syscall.Syscall(procWSAStartup.Addr(), 2, uintptr(verreq), uintptr(unsafe.Pointer(data)), 0) -+func NtSetSystemInformation(sysInfoClass int32, sysInfo unsafe.Pointer, sysInfoLen uint32) (ntstatus error) { -+ r0, _, _ := syscall.Syscall(procNtSetSystemInformation.Addr(), 3, uintptr(sysInfoClass), uintptr(sysInfo), uintptr(sysInfoLen)) - if r0 != 0 { -- sockerr = syscall.Errno(r0) -+ ntstatus = NTStatus(r0) - } - return - } - --func WSACleanup() (err error) { -- r1, _, e1 := syscall.Syscall(procWSACleanup.Addr(), 0, 0, 0, 0) -- if r1 == socket_error { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -- } -+func RtlAddFunctionTable(functionTable *RUNTIME_FUNCTION, entryCount uint32, baseAddress uintptr) (ret bool) { -+ r0, _, _ := syscall.Syscall(procRtlAddFunctionTable.Addr(), 3, uintptr(unsafe.Pointer(functionTable)), uintptr(entryCount), uintptr(baseAddress)) -+ ret = r0 != 0 - return - } - --func WSAIoctl(s Handle, iocc uint32, inbuf *byte, cbif uint32, outbuf *byte, cbob uint32, cbbr *uint32, overlapped *Overlapped, completionRoutine uintptr) (err error) { -- r1, _, e1 := syscall.Syscall9(procWSAIoctl.Addr(), 9, uintptr(s), uintptr(iocc), uintptr(unsafe.Pointer(inbuf)), uintptr(cbif), uintptr(unsafe.Pointer(outbuf)), uintptr(cbob), uintptr(unsafe.Pointer(cbbr)), uintptr(unsafe.Pointer(overlapped)), uintptr(completionRoutine)) -- if r1 == socket_error { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func RtlDefaultNpAcl(acl **ACL) (ntstatus error) { -+ r0, _, _ := syscall.Syscall(procRtlDefaultNpAcl.Addr(), 1, uintptr(unsafe.Pointer(acl)), 0, 0) -+ if r0 != 0 { -+ ntstatus = NTStatus(r0) - } - return - } - --func socket(af int32, typ int32, protocol int32) (handle Handle, err error) { -- r0, _, e1 := syscall.Syscall(procsocket.Addr(), 3, uintptr(af), uintptr(typ), uintptr(protocol)) -- handle = Handle(r0) -- if handle == InvalidHandle { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -- } -+func RtlDeleteFunctionTable(functionTable *RUNTIME_FUNCTION) (ret bool) { -+ r0, _, _ := syscall.Syscall(procRtlDeleteFunctionTable.Addr(), 1, uintptr(unsafe.Pointer(functionTable)), 0, 0) -+ ret = r0 != 0 - return - } - --func sendto(s Handle, buf []byte, flags int32, to unsafe.Pointer, tolen int32) (err error) { -- var _p0 *byte -- if len(buf) > 0 { -- _p0 = &buf[0] -- } -- r1, _, e1 := syscall.Syscall6(procsendto.Addr(), 6, uintptr(s), uintptr(unsafe.Pointer(_p0)), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(tolen)) -- if r1 == socket_error { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func RtlDosPathNameToNtPathName(dosName *uint16, ntName *NTUnicodeString, ntFileNamePart *uint16, relativeName *RTL_RELATIVE_NAME) (ntstatus error) { -+ r0, _, _ := syscall.Syscall6(procRtlDosPathNameToNtPathName_U_WithStatus.Addr(), 4, uintptr(unsafe.Pointer(dosName)), uintptr(unsafe.Pointer(ntName)), uintptr(unsafe.Pointer(ntFileNamePart)), uintptr(unsafe.Pointer(relativeName)), 0, 0) -+ if r0 != 0 { -+ ntstatus = NTStatus(r0) - } - return - } - --func recvfrom(s Handle, buf []byte, flags int32, from *RawSockaddrAny, fromlen *int32) (n int32, err error) { -- var _p0 *byte -- if len(buf) > 0 { -- _p0 = &buf[0] -- } -- r0, _, e1 := syscall.Syscall6(procrecvfrom.Addr(), 6, uintptr(s), uintptr(unsafe.Pointer(_p0)), uintptr(len(buf)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) -- n = int32(r0) -- if n == -1 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func RtlDosPathNameToRelativeNtPathName(dosName *uint16, ntName *NTUnicodeString, ntFileNamePart *uint16, relativeName *RTL_RELATIVE_NAME) (ntstatus error) { -+ r0, _, _ := syscall.Syscall6(procRtlDosPathNameToRelativeNtPathName_U_WithStatus.Addr(), 4, uintptr(unsafe.Pointer(dosName)), uintptr(unsafe.Pointer(ntName)), uintptr(unsafe.Pointer(ntFileNamePart)), uintptr(unsafe.Pointer(relativeName)), 0, 0) -+ if r0 != 0 { -+ ntstatus = NTStatus(r0) - } - return - } - --func Setsockopt(s Handle, level int32, optname int32, optval *byte, optlen int32) (err error) { -- r1, _, e1 := syscall.Syscall6(procsetsockopt.Addr(), 5, uintptr(s), uintptr(level), uintptr(optname), uintptr(unsafe.Pointer(optval)), uintptr(optlen), 0) -- if r1 == socket_error { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -- } -+func RtlGetCurrentPeb() (peb *PEB) { -+ r0, _, _ := syscall.Syscall(procRtlGetCurrentPeb.Addr(), 0, 0, 0, 0) -+ peb = (*PEB)(unsafe.Pointer(r0)) - return - } - --func Getsockopt(s Handle, level int32, optname int32, optval *byte, optlen *int32) (err error) { -- r1, _, e1 := syscall.Syscall6(procgetsockopt.Addr(), 5, uintptr(s), uintptr(level), uintptr(optname), uintptr(unsafe.Pointer(optval)), uintptr(unsafe.Pointer(optlen)), 0) -- if r1 == socket_error { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -- } -+func rtlGetNtVersionNumbers(majorVersion *uint32, minorVersion *uint32, buildNumber *uint32) { -+ syscall.Syscall(procRtlGetNtVersionNumbers.Addr(), 3, uintptr(unsafe.Pointer(majorVersion)), uintptr(unsafe.Pointer(minorVersion)), uintptr(unsafe.Pointer(buildNumber))) - return - } - --func bind(s Handle, name unsafe.Pointer, namelen int32) (err error) { -- r1, _, e1 := syscall.Syscall(procbind.Addr(), 3, uintptr(s), uintptr(name), uintptr(namelen)) -- if r1 == socket_error { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func rtlGetVersion(info *OsVersionInfoEx) (ntstatus error) { -+ r0, _, _ := syscall.Syscall(procRtlGetVersion.Addr(), 1, uintptr(unsafe.Pointer(info)), 0, 0) -+ if r0 != 0 { -+ ntstatus = NTStatus(r0) - } - return - } - --func connect(s Handle, name unsafe.Pointer, namelen int32) (err error) { -- r1, _, e1 := syscall.Syscall(procconnect.Addr(), 3, uintptr(s), uintptr(name), uintptr(namelen)) -- if r1 == socket_error { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -- } -+func RtlInitString(destinationString *NTString, sourceString *byte) { -+ syscall.Syscall(procRtlInitString.Addr(), 2, uintptr(unsafe.Pointer(destinationString)), uintptr(unsafe.Pointer(sourceString)), 0) - return - } - --func getsockname(s Handle, rsa *RawSockaddrAny, addrlen *int32) (err error) { -- r1, _, e1 := syscall.Syscall(procgetsockname.Addr(), 3, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -- if r1 == socket_error { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -- } -+func RtlInitUnicodeString(destinationString *NTUnicodeString, sourceString *uint16) { -+ syscall.Syscall(procRtlInitUnicodeString.Addr(), 2, uintptr(unsafe.Pointer(destinationString)), uintptr(unsafe.Pointer(sourceString)), 0) - return - } - --func getpeername(s Handle, rsa *RawSockaddrAny, addrlen *int32) (err error) { -- r1, _, e1 := syscall.Syscall(procgetpeername.Addr(), 3, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -- if r1 == socket_error { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -- } -+func rtlNtStatusToDosErrorNoTeb(ntstatus NTStatus) (ret syscall.Errno) { -+ r0, _, _ := syscall.Syscall(procRtlNtStatusToDosErrorNoTeb.Addr(), 1, uintptr(ntstatus), 0, 0) -+ ret = syscall.Errno(r0) - return - } - --func listen(s Handle, backlog int32) (err error) { -- r1, _, e1 := syscall.Syscall(proclisten.Addr(), 2, uintptr(s), uintptr(backlog), 0) -- if r1 == socket_error { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func clsidFromString(lpsz *uint16, pclsid *GUID) (ret error) { -+ r0, _, _ := syscall.Syscall(procCLSIDFromString.Addr(), 2, uintptr(unsafe.Pointer(lpsz)), uintptr(unsafe.Pointer(pclsid)), 0) -+ if r0 != 0 { -+ ret = syscall.Errno(r0) - } - return - } - --func shutdown(s Handle, how int32) (err error) { -- r1, _, e1 := syscall.Syscall(procshutdown.Addr(), 2, uintptr(s), uintptr(how), 0) -- if r1 == socket_error { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func coCreateGuid(pguid *GUID) (ret error) { -+ r0, _, _ := syscall.Syscall(procCoCreateGuid.Addr(), 1, uintptr(unsafe.Pointer(pguid)), 0, 0) -+ if r0 != 0 { -+ ret = syscall.Errno(r0) - } - return - } - --func Closesocket(s Handle) (err error) { -- r1, _, e1 := syscall.Syscall(procclosesocket.Addr(), 1, uintptr(s), 0, 0) -- if r1 == socket_error { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func CoGetObject(name *uint16, bindOpts *BIND_OPTS3, guid *GUID, functionTable **uintptr) (ret error) { -+ r0, _, _ := syscall.Syscall6(procCoGetObject.Addr(), 4, uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(bindOpts)), uintptr(unsafe.Pointer(guid)), uintptr(unsafe.Pointer(functionTable)), 0, 0) -+ if r0 != 0 { -+ ret = syscall.Errno(r0) - } - return - } - --func AcceptEx(ls Handle, as Handle, buf *byte, rxdatalen uint32, laddrlen uint32, raddrlen uint32, recvd *uint32, overlapped *Overlapped) (err error) { -- r1, _, e1 := syscall.Syscall9(procAcceptEx.Addr(), 8, uintptr(ls), uintptr(as), uintptr(unsafe.Pointer(buf)), uintptr(rxdatalen), uintptr(laddrlen), uintptr(raddrlen), uintptr(unsafe.Pointer(recvd)), uintptr(unsafe.Pointer(overlapped)), 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func CoInitializeEx(reserved uintptr, coInit uint32) (ret error) { -+ r0, _, _ := syscall.Syscall(procCoInitializeEx.Addr(), 2, uintptr(reserved), uintptr(coInit), 0) -+ if r0 != 0 { -+ ret = syscall.Errno(r0) - } - return - } - --func GetAcceptExSockaddrs(buf *byte, rxdatalen uint32, laddrlen uint32, raddrlen uint32, lrsa **RawSockaddrAny, lrsalen *int32, rrsa **RawSockaddrAny, rrsalen *int32) { -- syscall.Syscall9(procGetAcceptExSockaddrs.Addr(), 8, uintptr(unsafe.Pointer(buf)), uintptr(rxdatalen), uintptr(laddrlen), uintptr(raddrlen), uintptr(unsafe.Pointer(lrsa)), uintptr(unsafe.Pointer(lrsalen)), uintptr(unsafe.Pointer(rrsa)), uintptr(unsafe.Pointer(rrsalen)), 0) -+func CoTaskMemFree(address unsafe.Pointer) { -+ syscall.Syscall(procCoTaskMemFree.Addr(), 1, uintptr(address), 0, 0) - return - } - --func WSARecv(s Handle, bufs *WSABuf, bufcnt uint32, recvd *uint32, flags *uint32, overlapped *Overlapped, croutine *byte) (err error) { -- r1, _, e1 := syscall.Syscall9(procWSARecv.Addr(), 7, uintptr(s), uintptr(unsafe.Pointer(bufs)), uintptr(bufcnt), uintptr(unsafe.Pointer(recvd)), uintptr(unsafe.Pointer(flags)), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(croutine)), 0, 0) -- if r1 == socket_error { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -- } -+func CoUninitialize() { -+ syscall.Syscall(procCoUninitialize.Addr(), 0, 0, 0, 0) - return - } - --func WSASend(s Handle, bufs *WSABuf, bufcnt uint32, sent *uint32, flags uint32, overlapped *Overlapped, croutine *byte) (err error) { -- r1, _, e1 := syscall.Syscall9(procWSASend.Addr(), 7, uintptr(s), uintptr(unsafe.Pointer(bufs)), uintptr(bufcnt), uintptr(unsafe.Pointer(sent)), uintptr(flags), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(croutine)), 0, 0) -- if r1 == socket_error { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -- } -+func stringFromGUID2(rguid *GUID, lpsz *uint16, cchMax int32) (chars int32) { -+ r0, _, _ := syscall.Syscall(procStringFromGUID2.Addr(), 3, uintptr(unsafe.Pointer(rguid)), uintptr(unsafe.Pointer(lpsz)), uintptr(cchMax)) -+ chars = int32(r0) - return - } - --func WSARecvFrom(s Handle, bufs *WSABuf, bufcnt uint32, recvd *uint32, flags *uint32, from *RawSockaddrAny, fromlen *int32, overlapped *Overlapped, croutine *byte) (err error) { -- r1, _, e1 := syscall.Syscall9(procWSARecvFrom.Addr(), 9, uintptr(s), uintptr(unsafe.Pointer(bufs)), uintptr(bufcnt), uintptr(unsafe.Pointer(recvd)), uintptr(unsafe.Pointer(flags)), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen)), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(croutine))) -- if r1 == socket_error { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func EnumProcessModules(process Handle, module *Handle, cb uint32, cbNeeded *uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procEnumProcessModules.Addr(), 4, uintptr(process), uintptr(unsafe.Pointer(module)), uintptr(cb), uintptr(unsafe.Pointer(cbNeeded)), 0, 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func WSASendTo(s Handle, bufs *WSABuf, bufcnt uint32, sent *uint32, flags uint32, to *RawSockaddrAny, tolen int32, overlapped *Overlapped, croutine *byte) (err error) { -- r1, _, e1 := syscall.Syscall9(procWSASendTo.Addr(), 9, uintptr(s), uintptr(unsafe.Pointer(bufs)), uintptr(bufcnt), uintptr(unsafe.Pointer(sent)), uintptr(flags), uintptr(unsafe.Pointer(to)), uintptr(tolen), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(croutine))) -- if r1 == socket_error { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func EnumProcessModulesEx(process Handle, module *Handle, cb uint32, cbNeeded *uint32, filterFlag uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procEnumProcessModulesEx.Addr(), 5, uintptr(process), uintptr(unsafe.Pointer(module)), uintptr(cb), uintptr(unsafe.Pointer(cbNeeded)), uintptr(filterFlag), 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func GetHostByName(name string) (h *Hostent, err error) { -- var _p0 *byte -- _p0, err = syscall.BytePtrFromString(name) -- if err != nil { -- return -+func EnumProcesses(processIds []uint32, bytesReturned *uint32) (err error) { -+ var _p0 *uint32 -+ if len(processIds) > 0 { -+ _p0 = &processIds[0] - } -- return _GetHostByName(_p0) --} -- --func _GetHostByName(name *byte) (h *Hostent, err error) { -- r0, _, e1 := syscall.Syscall(procgethostbyname.Addr(), 1, uintptr(unsafe.Pointer(name)), 0, 0) -- h = (*Hostent)(unsafe.Pointer(r0)) -- if h == nil { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ r1, _, e1 := syscall.Syscall(procEnumProcesses.Addr(), 3, uintptr(unsafe.Pointer(_p0)), uintptr(len(processIds)), uintptr(unsafe.Pointer(bytesReturned))) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func GetServByName(name string, proto string) (s *Servent, err error) { -- var _p0 *byte -- _p0, err = syscall.BytePtrFromString(name) -- if err != nil { -- return -- } -- var _p1 *byte -- _p1, err = syscall.BytePtrFromString(proto) -- if err != nil { -- return -- } -- return _GetServByName(_p0, _p1) --} -- --func _GetServByName(name *byte, proto *byte) (s *Servent, err error) { -- r0, _, e1 := syscall.Syscall(procgetservbyname.Addr(), 2, uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(proto)), 0) -- s = (*Servent)(unsafe.Pointer(r0)) -- if s == nil { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func GetModuleBaseName(process Handle, module Handle, baseName *uint16, size uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procGetModuleBaseNameW.Addr(), 4, uintptr(process), uintptr(module), uintptr(unsafe.Pointer(baseName)), uintptr(size), 0, 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func Ntohs(netshort uint16) (u uint16) { -- r0, _, _ := syscall.Syscall(procntohs.Addr(), 1, uintptr(netshort), 0, 0) -- u = uint16(r0) -+func GetModuleFileNameEx(process Handle, module Handle, filename *uint16, size uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procGetModuleFileNameExW.Addr(), 4, uintptr(process), uintptr(module), uintptr(unsafe.Pointer(filename)), uintptr(size), 0, 0) -+ if r1 == 0 { -+ err = errnoErr(e1) -+ } - return - } - --func GetProtoByName(name string) (p *Protoent, err error) { -- var _p0 *byte -- _p0, err = syscall.BytePtrFromString(name) -- if err != nil { -- return -+func GetModuleInformation(process Handle, module Handle, modinfo *ModuleInfo, cb uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procGetModuleInformation.Addr(), 4, uintptr(process), uintptr(module), uintptr(unsafe.Pointer(modinfo)), uintptr(cb), 0, 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } -- return _GetProtoByName(_p0) -+ return - } - --func _GetProtoByName(name *byte) (p *Protoent, err error) { -- r0, _, e1 := syscall.Syscall(procgetprotobyname.Addr(), 1, uintptr(unsafe.Pointer(name)), 0, 0) -- p = (*Protoent)(unsafe.Pointer(r0)) -- if p == nil { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func QueryWorkingSetEx(process Handle, pv uintptr, cb uint32) (err error) { -+ r1, _, e1 := syscall.Syscall(procQueryWorkingSetEx.Addr(), 3, uintptr(process), uintptr(pv), uintptr(cb)) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func DnsQuery(name string, qtype uint16, options uint32, extra *byte, qrs **DNSRecord, pr *byte) (status error) { -- var _p0 *uint16 -- _p0, status = syscall.UTF16PtrFromString(name) -- if status != nil { -+func SubscribeServiceChangeNotifications(service Handle, eventType uint32, callback uintptr, callbackCtx uintptr, subscription *uintptr) (ret error) { -+ ret = procSubscribeServiceChangeNotifications.Find() -+ if ret != nil { - return - } -- return _DnsQuery(_p0, qtype, options, extra, qrs, pr) --} -- --func _DnsQuery(name *uint16, qtype uint16, options uint32, extra *byte, qrs **DNSRecord, pr *byte) (status error) { -- r0, _, _ := syscall.Syscall6(procDnsQuery_W.Addr(), 6, uintptr(unsafe.Pointer(name)), uintptr(qtype), uintptr(options), uintptr(unsafe.Pointer(extra)), uintptr(unsafe.Pointer(qrs)), uintptr(unsafe.Pointer(pr))) -+ r0, _, _ := syscall.Syscall6(procSubscribeServiceChangeNotifications.Addr(), 5, uintptr(service), uintptr(eventType), uintptr(callback), uintptr(callbackCtx), uintptr(unsafe.Pointer(subscription)), 0) - if r0 != 0 { -- status = syscall.Errno(r0) -+ ret = syscall.Errno(r0) - } - return - } - --func DnsRecordListFree(rl *DNSRecord, freetype uint32) { -- syscall.Syscall(procDnsRecordListFree.Addr(), 2, uintptr(unsafe.Pointer(rl)), uintptr(freetype), 0) -- return --} -- --func DnsNameCompare(name1 *uint16, name2 *uint16) (same bool) { -- r0, _, _ := syscall.Syscall(procDnsNameCompare_W.Addr(), 2, uintptr(unsafe.Pointer(name1)), uintptr(unsafe.Pointer(name2)), 0) -- same = r0 != 0 -- return --} -- --func GetAddrInfoW(nodename *uint16, servicename *uint16, hints *AddrinfoW, result **AddrinfoW) (sockerr error) { -- r0, _, _ := syscall.Syscall6(procGetAddrInfoW.Addr(), 4, uintptr(unsafe.Pointer(nodename)), uintptr(unsafe.Pointer(servicename)), uintptr(unsafe.Pointer(hints)), uintptr(unsafe.Pointer(result)), 0, 0) -- if r0 != 0 { -- sockerr = syscall.Errno(r0) -+func UnsubscribeServiceChangeNotifications(subscription uintptr) (err error) { -+ err = procUnsubscribeServiceChangeNotifications.Find() -+ if err != nil { -+ return - } -+ syscall.Syscall(procUnsubscribeServiceChangeNotifications.Addr(), 1, uintptr(subscription), 0, 0) - return - } - --func FreeAddrInfoW(addrinfo *AddrinfoW) { -- syscall.Syscall(procFreeAddrInfoW.Addr(), 1, uintptr(unsafe.Pointer(addrinfo)), 0, 0) -+func GetUserNameEx(nameFormat uint32, nameBuffre *uint16, nSize *uint32) (err error) { -+ r1, _, e1 := syscall.Syscall(procGetUserNameExW.Addr(), 3, uintptr(nameFormat), uintptr(unsafe.Pointer(nameBuffre)), uintptr(unsafe.Pointer(nSize))) -+ if r1&0xff == 0 { -+ err = errnoErr(e1) -+ } - return - } - --func GetIfEntry(pIfRow *MibIfRow) (errcode error) { -- r0, _, _ := syscall.Syscall(procGetIfEntry.Addr(), 1, uintptr(unsafe.Pointer(pIfRow)), 0, 0) -- if r0 != 0 { -- errcode = syscall.Errno(r0) -+func TranslateName(accName *uint16, accNameFormat uint32, desiredNameFormat uint32, translatedName *uint16, nSize *uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procTranslateNameW.Addr(), 5, uintptr(unsafe.Pointer(accName)), uintptr(accNameFormat), uintptr(desiredNameFormat), uintptr(unsafe.Pointer(translatedName)), uintptr(unsafe.Pointer(nSize)), 0) -+ if r1&0xff == 0 { -+ err = errnoErr(e1) - } - return - } - --func GetAdaptersInfo(ai *IpAdapterInfo, ol *uint32) (errcode error) { -- r0, _, _ := syscall.Syscall(procGetAdaptersInfo.Addr(), 2, uintptr(unsafe.Pointer(ai)), uintptr(unsafe.Pointer(ol)), 0) -- if r0 != 0 { -- errcode = syscall.Errno(r0) -+func SetupDiBuildDriverInfoList(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, driverType SPDIT) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetupDiBuildDriverInfoList.Addr(), 3, uintptr(deviceInfoSet), uintptr(unsafe.Pointer(deviceInfoData)), uintptr(driverType)) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func SetFileCompletionNotificationModes(handle Handle, flags uint8) (err error) { -- r1, _, e1 := syscall.Syscall(procSetFileCompletionNotificationModes.Addr(), 2, uintptr(handle), uintptr(flags), 0) -+func SetupDiCallClassInstaller(installFunction DI_FUNCTION, deviceInfoSet DevInfo, deviceInfoData *DevInfoData) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetupDiCallClassInstaller.Addr(), 3, uintptr(installFunction), uintptr(deviceInfoSet), uintptr(unsafe.Pointer(deviceInfoData))) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func WSAEnumProtocols(protocols *int32, protocolBuffer *WSAProtocolInfo, bufferLength *uint32) (n int32, err error) { -- r0, _, e1 := syscall.Syscall(procWSAEnumProtocolsW.Addr(), 3, uintptr(unsafe.Pointer(protocols)), uintptr(unsafe.Pointer(protocolBuffer)), uintptr(unsafe.Pointer(bufferLength))) -- n = int32(r0) -- if n == -1 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func SetupDiCancelDriverInfoSearch(deviceInfoSet DevInfo) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetupDiCancelDriverInfoSearch.Addr(), 1, uintptr(deviceInfoSet), 0, 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func GetAdaptersAddresses(family uint32, flags uint32, reserved uintptr, adapterAddresses *IpAdapterAddresses, sizePointer *uint32) (errcode error) { -- r0, _, _ := syscall.Syscall6(procGetAdaptersAddresses.Addr(), 5, uintptr(family), uintptr(flags), uintptr(reserved), uintptr(unsafe.Pointer(adapterAddresses)), uintptr(unsafe.Pointer(sizePointer)), 0) -- if r0 != 0 { -- errcode = syscall.Errno(r0) -+func setupDiClassGuidsFromNameEx(className *uint16, classGuidList *GUID, classGuidListSize uint32, requiredSize *uint32, machineName *uint16, reserved uintptr) (err error) { -+ r1, _, e1 := syscall.Syscall6(procSetupDiClassGuidsFromNameExW.Addr(), 6, uintptr(unsafe.Pointer(className)), uintptr(unsafe.Pointer(classGuidList)), uintptr(classGuidListSize), uintptr(unsafe.Pointer(requiredSize)), uintptr(unsafe.Pointer(machineName)), uintptr(reserved)) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func GetACP() (acp uint32) { -- r0, _, _ := syscall.Syscall(procGetACP.Addr(), 0, 0, 0, 0) -- acp = uint32(r0) -+func setupDiClassNameFromGuidEx(classGUID *GUID, className *uint16, classNameSize uint32, requiredSize *uint32, machineName *uint16, reserved uintptr) (err error) { -+ r1, _, e1 := syscall.Syscall6(procSetupDiClassNameFromGuidExW.Addr(), 6, uintptr(unsafe.Pointer(classGUID)), uintptr(unsafe.Pointer(className)), uintptr(classNameSize), uintptr(unsafe.Pointer(requiredSize)), uintptr(unsafe.Pointer(machineName)), uintptr(reserved)) -+ if r1 == 0 { -+ err = errnoErr(e1) -+ } - return - } - --func MultiByteToWideChar(codePage uint32, dwFlags uint32, str *byte, nstr int32, wchar *uint16, nwchar int32) (nwrite int32, err error) { -- r0, _, e1 := syscall.Syscall6(procMultiByteToWideChar.Addr(), 6, uintptr(codePage), uintptr(dwFlags), uintptr(unsafe.Pointer(str)), uintptr(nstr), uintptr(unsafe.Pointer(wchar)), uintptr(nwchar)) -- nwrite = int32(r0) -- if nwrite == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func setupDiCreateDeviceInfoListEx(classGUID *GUID, hwndParent uintptr, machineName *uint16, reserved uintptr) (handle DevInfo, err error) { -+ r0, _, e1 := syscall.Syscall6(procSetupDiCreateDeviceInfoListExW.Addr(), 4, uintptr(unsafe.Pointer(classGUID)), uintptr(hwndParent), uintptr(unsafe.Pointer(machineName)), uintptr(reserved), 0, 0) -+ handle = DevInfo(r0) -+ if handle == DevInfo(InvalidHandle) { -+ err = errnoErr(e1) - } - return - } - --func TranslateName(accName *uint16, accNameFormat uint32, desiredNameFormat uint32, translatedName *uint16, nSize *uint32) (err error) { -- r1, _, e1 := syscall.Syscall6(procTranslateNameW.Addr(), 5, uintptr(unsafe.Pointer(accName)), uintptr(accNameFormat), uintptr(desiredNameFormat), uintptr(unsafe.Pointer(translatedName)), uintptr(unsafe.Pointer(nSize)), 0) -- if r1&0xff == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func setupDiCreateDeviceInfo(deviceInfoSet DevInfo, DeviceName *uint16, classGUID *GUID, DeviceDescription *uint16, hwndParent uintptr, CreationFlags DICD, deviceInfoData *DevInfoData) (err error) { -+ r1, _, e1 := syscall.Syscall9(procSetupDiCreateDeviceInfoW.Addr(), 7, uintptr(deviceInfoSet), uintptr(unsafe.Pointer(DeviceName)), uintptr(unsafe.Pointer(classGUID)), uintptr(unsafe.Pointer(DeviceDescription)), uintptr(hwndParent), uintptr(CreationFlags), uintptr(unsafe.Pointer(deviceInfoData)), 0, 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func GetUserNameEx(nameFormat uint32, nameBuffre *uint16, nSize *uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procGetUserNameExW.Addr(), 3, uintptr(nameFormat), uintptr(unsafe.Pointer(nameBuffre)), uintptr(unsafe.Pointer(nSize))) -- if r1&0xff == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func SetupDiDestroyDeviceInfoList(deviceInfoSet DevInfo) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetupDiDestroyDeviceInfoList.Addr(), 1, uintptr(deviceInfoSet), 0, 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func NetUserGetInfo(serverName *uint16, userName *uint16, level uint32, buf **byte) (neterr error) { -- r0, _, _ := syscall.Syscall6(procNetUserGetInfo.Addr(), 4, uintptr(unsafe.Pointer(serverName)), uintptr(unsafe.Pointer(userName)), uintptr(level), uintptr(unsafe.Pointer(buf)), 0, 0) -- if r0 != 0 { -- neterr = syscall.Errno(r0) -+func SetupDiDestroyDriverInfoList(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, driverType SPDIT) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetupDiDestroyDriverInfoList.Addr(), 3, uintptr(deviceInfoSet), uintptr(unsafe.Pointer(deviceInfoData)), uintptr(driverType)) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func NetGetJoinInformation(server *uint16, name **uint16, bufType *uint32) (neterr error) { -- r0, _, _ := syscall.Syscall(procNetGetJoinInformation.Addr(), 3, uintptr(unsafe.Pointer(server)), uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(bufType))) -- if r0 != 0 { -- neterr = syscall.Errno(r0) -+func setupDiEnumDeviceInfo(deviceInfoSet DevInfo, memberIndex uint32, deviceInfoData *DevInfoData) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetupDiEnumDeviceInfo.Addr(), 3, uintptr(deviceInfoSet), uintptr(memberIndex), uintptr(unsafe.Pointer(deviceInfoData))) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func NetApiBufferFree(buf *byte) (neterr error) { -- r0, _, _ := syscall.Syscall(procNetApiBufferFree.Addr(), 1, uintptr(unsafe.Pointer(buf)), 0, 0) -- if r0 != 0 { -- neterr = syscall.Errno(r0) -+func setupDiEnumDriverInfo(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, driverType SPDIT, memberIndex uint32, driverInfoData *DrvInfoData) (err error) { -+ r1, _, e1 := syscall.Syscall6(procSetupDiEnumDriverInfoW.Addr(), 5, uintptr(deviceInfoSet), uintptr(unsafe.Pointer(deviceInfoData)), uintptr(driverType), uintptr(memberIndex), uintptr(unsafe.Pointer(driverInfoData)), 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func LookupAccountSid(systemName *uint16, sid *SID, name *uint16, nameLen *uint32, refdDomainName *uint16, refdDomainNameLen *uint32, use *uint32) (err error) { -- r1, _, e1 := syscall.Syscall9(procLookupAccountSidW.Addr(), 7, uintptr(unsafe.Pointer(systemName)), uintptr(unsafe.Pointer(sid)), uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(nameLen)), uintptr(unsafe.Pointer(refdDomainName)), uintptr(unsafe.Pointer(refdDomainNameLen)), uintptr(unsafe.Pointer(use)), 0, 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func setupDiGetClassDevsEx(classGUID *GUID, Enumerator *uint16, hwndParent uintptr, Flags DIGCF, deviceInfoSet DevInfo, machineName *uint16, reserved uintptr) (handle DevInfo, err error) { -+ r0, _, e1 := syscall.Syscall9(procSetupDiGetClassDevsExW.Addr(), 7, uintptr(unsafe.Pointer(classGUID)), uintptr(unsafe.Pointer(Enumerator)), uintptr(hwndParent), uintptr(Flags), uintptr(deviceInfoSet), uintptr(unsafe.Pointer(machineName)), uintptr(reserved), 0, 0) -+ handle = DevInfo(r0) -+ if handle == DevInfo(InvalidHandle) { -+ err = errnoErr(e1) - } - return - } - --func LookupAccountName(systemName *uint16, accountName *uint16, sid *SID, sidLen *uint32, refdDomainName *uint16, refdDomainNameLen *uint32, use *uint32) (err error) { -- r1, _, e1 := syscall.Syscall9(procLookupAccountNameW.Addr(), 7, uintptr(unsafe.Pointer(systemName)), uintptr(unsafe.Pointer(accountName)), uintptr(unsafe.Pointer(sid)), uintptr(unsafe.Pointer(sidLen)), uintptr(unsafe.Pointer(refdDomainName)), uintptr(unsafe.Pointer(refdDomainNameLen)), uintptr(unsafe.Pointer(use)), 0, 0) -+func SetupDiGetClassInstallParams(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, classInstallParams *ClassInstallHeader, classInstallParamsSize uint32, requiredSize *uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procSetupDiGetClassInstallParamsW.Addr(), 5, uintptr(deviceInfoSet), uintptr(unsafe.Pointer(deviceInfoData)), uintptr(unsafe.Pointer(classInstallParams)), uintptr(classInstallParamsSize), uintptr(unsafe.Pointer(requiredSize)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func ConvertSidToStringSid(sid *SID, stringSid **uint16) (err error) { -- r1, _, e1 := syscall.Syscall(procConvertSidToStringSidW.Addr(), 2, uintptr(unsafe.Pointer(sid)), uintptr(unsafe.Pointer(stringSid)), 0) -+func setupDiGetDeviceInfoListDetail(deviceInfoSet DevInfo, deviceInfoSetDetailData *DevInfoListDetailData) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetupDiGetDeviceInfoListDetailW.Addr(), 2, uintptr(deviceInfoSet), uintptr(unsafe.Pointer(deviceInfoSetDetailData)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func ConvertStringSidToSid(stringSid *uint16, sid **SID) (err error) { -- r1, _, e1 := syscall.Syscall(procConvertStringSidToSidW.Addr(), 2, uintptr(unsafe.Pointer(stringSid)), uintptr(unsafe.Pointer(sid)), 0) -+func setupDiGetDeviceInstallParams(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, deviceInstallParams *DevInstallParams) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetupDiGetDeviceInstallParamsW.Addr(), 3, uintptr(deviceInfoSet), uintptr(unsafe.Pointer(deviceInfoData)), uintptr(unsafe.Pointer(deviceInstallParams))) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func GetLengthSid(sid *SID) (len uint32) { -- r0, _, _ := syscall.Syscall(procGetLengthSid.Addr(), 1, uintptr(unsafe.Pointer(sid)), 0, 0) -- len = uint32(r0) -+func setupDiGetDeviceInstanceId(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, instanceId *uint16, instanceIdSize uint32, instanceIdRequiredSize *uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procSetupDiGetDeviceInstanceIdW.Addr(), 5, uintptr(deviceInfoSet), uintptr(unsafe.Pointer(deviceInfoData)), uintptr(unsafe.Pointer(instanceId)), uintptr(instanceIdSize), uintptr(unsafe.Pointer(instanceIdRequiredSize)), 0) -+ if r1 == 0 { -+ err = errnoErr(e1) -+ } - return - } - --func CopySid(destSidLen uint32, destSid *SID, srcSid *SID) (err error) { -- r1, _, e1 := syscall.Syscall(procCopySid.Addr(), 3, uintptr(destSidLen), uintptr(unsafe.Pointer(destSid)), uintptr(unsafe.Pointer(srcSid))) -+func setupDiGetDeviceProperty(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, propertyKey *DEVPROPKEY, propertyType *DEVPROPTYPE, propertyBuffer *byte, propertyBufferSize uint32, requiredSize *uint32, flags uint32) (err error) { -+ r1, _, e1 := syscall.Syscall9(procSetupDiGetDevicePropertyW.Addr(), 8, uintptr(deviceInfoSet), uintptr(unsafe.Pointer(deviceInfoData)), uintptr(unsafe.Pointer(propertyKey)), uintptr(unsafe.Pointer(propertyType)), uintptr(unsafe.Pointer(propertyBuffer)), uintptr(propertyBufferSize), uintptr(unsafe.Pointer(requiredSize)), uintptr(flags), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func AllocateAndInitializeSid(identAuth *SidIdentifierAuthority, subAuth byte, subAuth0 uint32, subAuth1 uint32, subAuth2 uint32, subAuth3 uint32, subAuth4 uint32, subAuth5 uint32, subAuth6 uint32, subAuth7 uint32, sid **SID) (err error) { -- r1, _, e1 := syscall.Syscall12(procAllocateAndInitializeSid.Addr(), 11, uintptr(unsafe.Pointer(identAuth)), uintptr(subAuth), uintptr(subAuth0), uintptr(subAuth1), uintptr(subAuth2), uintptr(subAuth3), uintptr(subAuth4), uintptr(subAuth5), uintptr(subAuth6), uintptr(subAuth7), uintptr(unsafe.Pointer(sid)), 0) -+func setupDiGetDeviceRegistryProperty(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, property SPDRP, propertyRegDataType *uint32, propertyBuffer *byte, propertyBufferSize uint32, requiredSize *uint32) (err error) { -+ r1, _, e1 := syscall.Syscall9(procSetupDiGetDeviceRegistryPropertyW.Addr(), 7, uintptr(deviceInfoSet), uintptr(unsafe.Pointer(deviceInfoData)), uintptr(property), uintptr(unsafe.Pointer(propertyRegDataType)), uintptr(unsafe.Pointer(propertyBuffer)), uintptr(propertyBufferSize), uintptr(unsafe.Pointer(requiredSize)), 0, 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func createWellKnownSid(sidType WELL_KNOWN_SID_TYPE, domainSid *SID, sid *SID, sizeSid *uint32) (err error) { -- r1, _, e1 := syscall.Syscall6(procCreateWellKnownSid.Addr(), 4, uintptr(sidType), uintptr(unsafe.Pointer(domainSid)), uintptr(unsafe.Pointer(sid)), uintptr(unsafe.Pointer(sizeSid)), 0, 0) -+func setupDiGetDriverInfoDetail(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, driverInfoData *DrvInfoData, driverInfoDetailData *DrvInfoDetailData, driverInfoDetailDataSize uint32, requiredSize *uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procSetupDiGetDriverInfoDetailW.Addr(), 6, uintptr(deviceInfoSet), uintptr(unsafe.Pointer(deviceInfoData)), uintptr(unsafe.Pointer(driverInfoData)), uintptr(unsafe.Pointer(driverInfoDetailData)), uintptr(driverInfoDetailDataSize), uintptr(unsafe.Pointer(requiredSize))) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func isWellKnownSid(sid *SID, sidType WELL_KNOWN_SID_TYPE) (isWellKnown bool) { -- r0, _, _ := syscall.Syscall(procIsWellKnownSid.Addr(), 2, uintptr(unsafe.Pointer(sid)), uintptr(sidType), 0) -- isWellKnown = r0 != 0 -+func setupDiGetSelectedDevice(deviceInfoSet DevInfo, deviceInfoData *DevInfoData) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetupDiGetSelectedDevice.Addr(), 2, uintptr(deviceInfoSet), uintptr(unsafe.Pointer(deviceInfoData)), 0) -+ if r1 == 0 { -+ err = errnoErr(e1) -+ } - return - } - --func FreeSid(sid *SID) (err error) { -- r1, _, e1 := syscall.Syscall(procFreeSid.Addr(), 1, uintptr(unsafe.Pointer(sid)), 0, 0) -- if r1 != 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func setupDiGetSelectedDriver(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, driverInfoData *DrvInfoData) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetupDiGetSelectedDriverW.Addr(), 3, uintptr(deviceInfoSet), uintptr(unsafe.Pointer(deviceInfoData)), uintptr(unsafe.Pointer(driverInfoData))) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } - --func EqualSid(sid1 *SID, sid2 *SID) (isEqual bool) { -- r0, _, _ := syscall.Syscall(procEqualSid.Addr(), 2, uintptr(unsafe.Pointer(sid1)), uintptr(unsafe.Pointer(sid2)), 0) -- isEqual = r0 != 0 -+func SetupDiOpenDevRegKey(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, Scope DICS_FLAG, HwProfile uint32, KeyType DIREG, samDesired uint32) (key Handle, err error) { -+ r0, _, e1 := syscall.Syscall6(procSetupDiOpenDevRegKey.Addr(), 6, uintptr(deviceInfoSet), uintptr(unsafe.Pointer(deviceInfoData)), uintptr(Scope), uintptr(HwProfile), uintptr(KeyType), uintptr(samDesired)) -+ key = Handle(r0) -+ if key == InvalidHandle { -+ err = errnoErr(e1) -+ } - return - } - --func getSidIdentifierAuthority(sid *SID) (authority *SidIdentifierAuthority) { -- r0, _, _ := syscall.Syscall(procGetSidIdentifierAuthority.Addr(), 1, uintptr(unsafe.Pointer(sid)), 0, 0) -- authority = (*SidIdentifierAuthority)(unsafe.Pointer(r0)) -+func SetupDiSetClassInstallParams(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, classInstallParams *ClassInstallHeader, classInstallParamsSize uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procSetupDiSetClassInstallParamsW.Addr(), 4, uintptr(deviceInfoSet), uintptr(unsafe.Pointer(deviceInfoData)), uintptr(unsafe.Pointer(classInstallParams)), uintptr(classInstallParamsSize), 0, 0) -+ if r1 == 0 { -+ err = errnoErr(e1) -+ } - return - } - --func getSidSubAuthorityCount(sid *SID) (count *uint8) { -- r0, _, _ := syscall.Syscall(procGetSidSubAuthorityCount.Addr(), 1, uintptr(unsafe.Pointer(sid)), 0, 0) -- count = (*uint8)(unsafe.Pointer(r0)) -+func SetupDiSetDeviceInstallParams(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, deviceInstallParams *DevInstallParams) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetupDiSetDeviceInstallParamsW.Addr(), 3, uintptr(deviceInfoSet), uintptr(unsafe.Pointer(deviceInfoData)), uintptr(unsafe.Pointer(deviceInstallParams))) -+ if r1 == 0 { -+ err = errnoErr(e1) -+ } - return - } - --func getSidSubAuthority(sid *SID, index uint32) (subAuthority *uint32) { -- r0, _, _ := syscall.Syscall(procGetSidSubAuthority.Addr(), 2, uintptr(unsafe.Pointer(sid)), uintptr(index), 0) -- subAuthority = (*uint32)(unsafe.Pointer(r0)) -+func setupDiSetDeviceRegistryProperty(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, property SPDRP, propertyBuffer *byte, propertyBufferSize uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procSetupDiSetDeviceRegistryPropertyW.Addr(), 5, uintptr(deviceInfoSet), uintptr(unsafe.Pointer(deviceInfoData)), uintptr(property), uintptr(unsafe.Pointer(propertyBuffer)), uintptr(propertyBufferSize), 0) -+ if r1 == 0 { -+ err = errnoErr(e1) -+ } - return - } - --func isValidSid(sid *SID) (isValid bool) { -- r0, _, _ := syscall.Syscall(procIsValidSid.Addr(), 1, uintptr(unsafe.Pointer(sid)), 0, 0) -- isValid = r0 != 0 -+func SetupDiSetSelectedDevice(deviceInfoSet DevInfo, deviceInfoData *DevInfoData) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetupDiSetSelectedDevice.Addr(), 2, uintptr(deviceInfoSet), uintptr(unsafe.Pointer(deviceInfoData)), 0) -+ if r1 == 0 { -+ err = errnoErr(e1) -+ } - return - } - --func checkTokenMembership(tokenHandle Token, sidToCheck *SID, isMember *int32) (err error) { -- r1, _, e1 := syscall.Syscall(procCheckTokenMembership.Addr(), 3, uintptr(tokenHandle), uintptr(unsafe.Pointer(sidToCheck)), uintptr(unsafe.Pointer(isMember))) -+func SetupDiSetSelectedDriver(deviceInfoSet DevInfo, deviceInfoData *DevInfoData, driverInfoData *DrvInfoData) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetupDiSetSelectedDriverW.Addr(), 3, uintptr(deviceInfoSet), uintptr(unsafe.Pointer(deviceInfoData)), uintptr(unsafe.Pointer(driverInfoData))) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func OpenProcessToken(process Handle, access uint32, token *Token) (err error) { -- r1, _, e1 := syscall.Syscall(procOpenProcessToken.Addr(), 3, uintptr(process), uintptr(access), uintptr(unsafe.Pointer(token))) -+func setupUninstallOEMInf(infFileName *uint16, flags SUOI, reserved uintptr) (err error) { -+ r1, _, e1 := syscall.Syscall(procSetupUninstallOEMInfW.Addr(), 3, uintptr(unsafe.Pointer(infFileName)), uintptr(flags), uintptr(reserved)) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func OpenThreadToken(thread Handle, access uint32, openAsSelf bool, token *Token) (err error) { -- var _p0 uint32 -- if openAsSelf { -- _p0 = 1 -- } else { -- _p0 = 0 -+func CommandLineToArgv(cmd *uint16, argc *int32) (argv *[8192]*[8192]uint16, err error) { -+ r0, _, e1 := syscall.Syscall(procCommandLineToArgvW.Addr(), 2, uintptr(unsafe.Pointer(cmd)), uintptr(unsafe.Pointer(argc)), 0) -+ argv = (*[8192]*[8192]uint16)(unsafe.Pointer(r0)) -+ if argv == nil { -+ err = errnoErr(e1) - } -- r1, _, e1 := syscall.Syscall6(procOpenThreadToken.Addr(), 4, uintptr(thread), uintptr(access), uintptr(_p0), uintptr(unsafe.Pointer(token)), 0, 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ return -+} -+ -+func shGetKnownFolderPath(id *KNOWNFOLDERID, flags uint32, token Token, path **uint16) (ret error) { -+ r0, _, _ := syscall.Syscall6(procSHGetKnownFolderPath.Addr(), 4, uintptr(unsafe.Pointer(id)), uintptr(flags), uintptr(token), uintptr(unsafe.Pointer(path)), 0, 0) -+ if r0 != 0 { -+ ret = syscall.Errno(r0) - } - return - } - --func ImpersonateSelf(impersonationlevel uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procImpersonateSelf.Addr(), 1, uintptr(impersonationlevel), 0, 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func ShellExecute(hwnd Handle, verb *uint16, file *uint16, args *uint16, cwd *uint16, showCmd int32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procShellExecuteW.Addr(), 6, uintptr(hwnd), uintptr(unsafe.Pointer(verb)), uintptr(unsafe.Pointer(file)), uintptr(unsafe.Pointer(args)), uintptr(unsafe.Pointer(cwd)), uintptr(showCmd)) -+ if r1 <= 32 { -+ err = errnoErr(e1) - } - return - } - --func RevertToSelf() (err error) { -- r1, _, e1 := syscall.Syscall(procRevertToSelf.Addr(), 0, 0, 0, 0) -+func ExitWindowsEx(flags uint32, reason uint32) (err error) { -+ r1, _, e1 := syscall.Syscall(procExitWindowsEx.Addr(), 2, uintptr(flags), uintptr(reason), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func SetThreadToken(thread *Handle, token Token) (err error) { -- r1, _, e1 := syscall.Syscall(procSetThreadToken.Addr(), 2, uintptr(unsafe.Pointer(thread)), uintptr(token), 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func GetShellWindow() (shellWindow HWND) { -+ r0, _, _ := syscall.Syscall(procGetShellWindow.Addr(), 0, 0, 0, 0) -+ shellWindow = HWND(r0) -+ return -+} -+ -+func GetWindowThreadProcessId(hwnd HWND, pid *uint32) (tid uint32, err error) { -+ r0, _, e1 := syscall.Syscall(procGetWindowThreadProcessId.Addr(), 2, uintptr(hwnd), uintptr(unsafe.Pointer(pid)), 0) -+ tid = uint32(r0) -+ if tid == 0 { -+ err = errnoErr(e1) - } - return - } - --func LookupPrivilegeValue(systemname *uint16, name *uint16, luid *LUID) (err error) { -- r1, _, e1 := syscall.Syscall(procLookupPrivilegeValueW.Addr(), 3, uintptr(unsafe.Pointer(systemname)), uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(luid))) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func MessageBox(hwnd HWND, text *uint16, caption *uint16, boxtype uint32) (ret int32, err error) { -+ r0, _, e1 := syscall.Syscall6(procMessageBoxW.Addr(), 4, uintptr(hwnd), uintptr(unsafe.Pointer(text)), uintptr(unsafe.Pointer(caption)), uintptr(boxtype), 0, 0) -+ ret = int32(r0) -+ if ret == 0 { -+ err = errnoErr(e1) - } - return - } - --func AdjustTokenPrivileges(token Token, disableAllPrivileges bool, newstate *Tokenprivileges, buflen uint32, prevstate *Tokenprivileges, returnlen *uint32) (err error) { -+func CreateEnvironmentBlock(block **uint16, token Token, inheritExisting bool) (err error) { - var _p0 uint32 -- if disableAllPrivileges { -+ if inheritExisting { - _p0 = 1 -- } else { -- _p0 = 0 - } -- r1, _, e1 := syscall.Syscall6(procAdjustTokenPrivileges.Addr(), 6, uintptr(token), uintptr(_p0), uintptr(unsafe.Pointer(newstate)), uintptr(buflen), uintptr(unsafe.Pointer(prevstate)), uintptr(unsafe.Pointer(returnlen))) -+ r1, _, e1 := syscall.Syscall(procCreateEnvironmentBlock.Addr(), 3, uintptr(unsafe.Pointer(block)), uintptr(token), uintptr(_p0)) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func AdjustTokenGroups(token Token, resetToDefault bool, newstate *Tokengroups, buflen uint32, prevstate *Tokengroups, returnlen *uint32) (err error) { -- var _p0 uint32 -- if resetToDefault { -- _p0 = 1 -- } else { -- _p0 = 0 -- } -- r1, _, e1 := syscall.Syscall6(procAdjustTokenGroups.Addr(), 6, uintptr(token), uintptr(_p0), uintptr(unsafe.Pointer(newstate)), uintptr(buflen), uintptr(unsafe.Pointer(prevstate)), uintptr(unsafe.Pointer(returnlen))) -+func DestroyEnvironmentBlock(block *uint16) (err error) { -+ r1, _, e1 := syscall.Syscall(procDestroyEnvironmentBlock.Addr(), 1, uintptr(unsafe.Pointer(block)), 0, 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func GetTokenInformation(token Token, infoClass uint32, info *byte, infoLen uint32, returnedLen *uint32) (err error) { -- r1, _, e1 := syscall.Syscall6(procGetTokenInformation.Addr(), 5, uintptr(token), uintptr(infoClass), uintptr(unsafe.Pointer(info)), uintptr(infoLen), uintptr(unsafe.Pointer(returnedLen)), 0) -+func GetUserProfileDirectory(t Token, dir *uint16, dirLen *uint32) (err error) { -+ r1, _, e1 := syscall.Syscall(procGetUserProfileDirectoryW.Addr(), 3, uintptr(t), uintptr(unsafe.Pointer(dir)), uintptr(unsafe.Pointer(dirLen))) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func SetTokenInformation(token Token, infoClass uint32, info *byte, infoLen uint32) (err error) { -- r1, _, e1 := syscall.Syscall6(procSetTokenInformation.Addr(), 4, uintptr(token), uintptr(infoClass), uintptr(unsafe.Pointer(info)), uintptr(infoLen), 0, 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func GetFileVersionInfoSize(filename string, zeroHandle *Handle) (bufSize uint32, err error) { -+ var _p0 *uint16 -+ _p0, err = syscall.UTF16PtrFromString(filename) -+ if err != nil { -+ return -+ } -+ return _GetFileVersionInfoSize(_p0, zeroHandle) -+} -+ -+func _GetFileVersionInfoSize(filename *uint16, zeroHandle *Handle) (bufSize uint32, err error) { -+ r0, _, e1 := syscall.Syscall(procGetFileVersionInfoSizeW.Addr(), 2, uintptr(unsafe.Pointer(filename)), uintptr(unsafe.Pointer(zeroHandle)), 0) -+ bufSize = uint32(r0) -+ if bufSize == 0 { -+ err = errnoErr(e1) - } - return - } - --func DuplicateTokenEx(existingToken Token, desiredAccess uint32, tokenAttributes *SecurityAttributes, impersonationLevel uint32, tokenType uint32, newToken *Token) (err error) { -- r1, _, e1 := syscall.Syscall6(procDuplicateTokenEx.Addr(), 6, uintptr(existingToken), uintptr(desiredAccess), uintptr(unsafe.Pointer(tokenAttributes)), uintptr(impersonationLevel), uintptr(tokenType), uintptr(unsafe.Pointer(newToken))) -+func GetFileVersionInfo(filename string, handle uint32, bufSize uint32, buffer unsafe.Pointer) (err error) { -+ var _p0 *uint16 -+ _p0, err = syscall.UTF16PtrFromString(filename) -+ if err != nil { -+ return -+ } -+ return _GetFileVersionInfo(_p0, handle, bufSize, buffer) -+} -+ -+func _GetFileVersionInfo(filename *uint16, handle uint32, bufSize uint32, buffer unsafe.Pointer) (err error) { -+ r1, _, e1 := syscall.Syscall6(procGetFileVersionInfoW.Addr(), 4, uintptr(unsafe.Pointer(filename)), uintptr(handle), uintptr(bufSize), uintptr(buffer), 0, 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func GetUserProfileDirectory(t Token, dir *uint16, dirLen *uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procGetUserProfileDirectoryW.Addr(), 3, uintptr(t), uintptr(unsafe.Pointer(dir)), uintptr(unsafe.Pointer(dirLen))) -+func VerQueryValue(block unsafe.Pointer, subBlock string, pointerToBufferPointer unsafe.Pointer, bufSize *uint32) (err error) { -+ var _p0 *uint16 -+ _p0, err = syscall.UTF16PtrFromString(subBlock) -+ if err != nil { -+ return -+ } -+ return _VerQueryValue(block, _p0, pointerToBufferPointer, bufSize) -+} -+ -+func _VerQueryValue(block unsafe.Pointer, subBlock *uint16, pointerToBufferPointer unsafe.Pointer, bufSize *uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procVerQueryValueW.Addr(), 4, uintptr(block), uintptr(unsafe.Pointer(subBlock)), uintptr(pointerToBufferPointer), uintptr(unsafe.Pointer(bufSize)), 0, 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func getSystemDirectory(dir *uint16, dirLen uint32) (len uint32, err error) { -- r0, _, e1 := syscall.Syscall(procGetSystemDirectoryW.Addr(), 2, uintptr(unsafe.Pointer(dir)), uintptr(dirLen), 0) -- len = uint32(r0) -- if len == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func WinVerifyTrustEx(hwnd HWND, actionId *GUID, data *WinTrustData) (ret error) { -+ r0, _, _ := syscall.Syscall(procWinVerifyTrustEx.Addr(), 3, uintptr(hwnd), uintptr(unsafe.Pointer(actionId)), uintptr(unsafe.Pointer(data))) -+ if r0 != 0 { -+ ret = syscall.Errno(r0) - } - return - } - --func getWindowsDirectory(dir *uint16, dirLen uint32) (len uint32, err error) { -- r0, _, e1 := syscall.Syscall(procGetWindowsDirectoryW.Addr(), 2, uintptr(unsafe.Pointer(dir)), uintptr(dirLen), 0) -- len = uint32(r0) -- if len == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func FreeAddrInfoW(addrinfo *AddrinfoW) { -+ syscall.Syscall(procFreeAddrInfoW.Addr(), 1, uintptr(unsafe.Pointer(addrinfo)), 0, 0) -+ return -+} -+ -+func GetAddrInfoW(nodename *uint16, servicename *uint16, hints *AddrinfoW, result **AddrinfoW) (sockerr error) { -+ r0, _, _ := syscall.Syscall6(procGetAddrInfoW.Addr(), 4, uintptr(unsafe.Pointer(nodename)), uintptr(unsafe.Pointer(servicename)), uintptr(unsafe.Pointer(hints)), uintptr(unsafe.Pointer(result)), 0, 0) -+ if r0 != 0 { -+ sockerr = syscall.Errno(r0) - } - return - } - --func getSystemWindowsDirectory(dir *uint16, dirLen uint32) (len uint32, err error) { -- r0, _, e1 := syscall.Syscall(procGetSystemWindowsDirectoryW.Addr(), 2, uintptr(unsafe.Pointer(dir)), uintptr(dirLen), 0) -- len = uint32(r0) -- if len == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func WSACleanup() (err error) { -+ r1, _, e1 := syscall.Syscall(procWSACleanup.Addr(), 0, 0, 0, 0) -+ if r1 == socket_error { -+ err = errnoErr(e1) - } - return - } - --func WTSQueryUserToken(session uint32, token *Token) (err error) { -- r1, _, e1 := syscall.Syscall(procWTSQueryUserToken.Addr(), 2, uintptr(session), uintptr(unsafe.Pointer(token)), 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func WSAEnumProtocols(protocols *int32, protocolBuffer *WSAProtocolInfo, bufferLength *uint32) (n int32, err error) { -+ r0, _, e1 := syscall.Syscall(procWSAEnumProtocolsW.Addr(), 3, uintptr(unsafe.Pointer(protocols)), uintptr(unsafe.Pointer(protocolBuffer)), uintptr(unsafe.Pointer(bufferLength))) -+ n = int32(r0) -+ if n == -1 { -+ err = errnoErr(e1) - } - return - } - --func WTSEnumerateSessions(handle Handle, reserved uint32, version uint32, sessions **WTS_SESSION_INFO, count *uint32) (err error) { -- r1, _, e1 := syscall.Syscall6(procWTSEnumerateSessionsW.Addr(), 5, uintptr(handle), uintptr(reserved), uintptr(version), uintptr(unsafe.Pointer(sessions)), uintptr(unsafe.Pointer(count)), 0) -+func WSAGetOverlappedResult(h Handle, o *Overlapped, bytes *uint32, wait bool, flags *uint32) (err error) { -+ var _p0 uint32 -+ if wait { -+ _p0 = 1 -+ } -+ r1, _, e1 := syscall.Syscall6(procWSAGetOverlappedResult.Addr(), 5, uintptr(h), uintptr(unsafe.Pointer(o)), uintptr(unsafe.Pointer(bytes)), uintptr(_p0), uintptr(unsafe.Pointer(flags)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func WTSFreeMemory(ptr uintptr) { -- syscall.Syscall(procWTSFreeMemory.Addr(), 1, uintptr(ptr), 0, 0) -+func WSAIoctl(s Handle, iocc uint32, inbuf *byte, cbif uint32, outbuf *byte, cbob uint32, cbbr *uint32, overlapped *Overlapped, completionRoutine uintptr) (err error) { -+ r1, _, e1 := syscall.Syscall9(procWSAIoctl.Addr(), 9, uintptr(s), uintptr(iocc), uintptr(unsafe.Pointer(inbuf)), uintptr(cbif), uintptr(unsafe.Pointer(outbuf)), uintptr(cbob), uintptr(unsafe.Pointer(cbbr)), uintptr(unsafe.Pointer(overlapped)), uintptr(completionRoutine)) -+ if r1 == socket_error { -+ err = errnoErr(e1) -+ } - return - } - --func getSecurityInfo(handle Handle, objectType SE_OBJECT_TYPE, securityInformation SECURITY_INFORMATION, owner **SID, group **SID, dacl **ACL, sacl **ACL, sd **SECURITY_DESCRIPTOR) (ret error) { -- r0, _, _ := syscall.Syscall9(procGetSecurityInfo.Addr(), 8, uintptr(handle), uintptr(objectType), uintptr(securityInformation), uintptr(unsafe.Pointer(owner)), uintptr(unsafe.Pointer(group)), uintptr(unsafe.Pointer(dacl)), uintptr(unsafe.Pointer(sacl)), uintptr(unsafe.Pointer(sd)), 0) -- if r0 != 0 { -- ret = syscall.Errno(r0) -+func WSARecv(s Handle, bufs *WSABuf, bufcnt uint32, recvd *uint32, flags *uint32, overlapped *Overlapped, croutine *byte) (err error) { -+ r1, _, e1 := syscall.Syscall9(procWSARecv.Addr(), 7, uintptr(s), uintptr(unsafe.Pointer(bufs)), uintptr(bufcnt), uintptr(unsafe.Pointer(recvd)), uintptr(unsafe.Pointer(flags)), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(croutine)), 0, 0) -+ if r1 == socket_error { -+ err = errnoErr(e1) - } - return - } - --func SetSecurityInfo(handle Handle, objectType SE_OBJECT_TYPE, securityInformation SECURITY_INFORMATION, owner *SID, group *SID, dacl *ACL, sacl *ACL) { -- syscall.Syscall9(procSetSecurityInfo.Addr(), 7, uintptr(handle), uintptr(objectType), uintptr(securityInformation), uintptr(unsafe.Pointer(owner)), uintptr(unsafe.Pointer(group)), uintptr(unsafe.Pointer(dacl)), uintptr(unsafe.Pointer(sacl)), 0, 0) -+func WSARecvFrom(s Handle, bufs *WSABuf, bufcnt uint32, recvd *uint32, flags *uint32, from *RawSockaddrAny, fromlen *int32, overlapped *Overlapped, croutine *byte) (err error) { -+ r1, _, e1 := syscall.Syscall9(procWSARecvFrom.Addr(), 9, uintptr(s), uintptr(unsafe.Pointer(bufs)), uintptr(bufcnt), uintptr(unsafe.Pointer(recvd)), uintptr(unsafe.Pointer(flags)), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen)), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(croutine))) -+ if r1 == socket_error { -+ err = errnoErr(e1) -+ } - return - } - --func getNamedSecurityInfo(objectName string, objectType SE_OBJECT_TYPE, securityInformation SECURITY_INFORMATION, owner **SID, group **SID, dacl **ACL, sacl **ACL, sd **SECURITY_DESCRIPTOR) (ret error) { -- var _p0 *uint16 -- _p0, ret = syscall.UTF16PtrFromString(objectName) -- if ret != nil { -- return -+func WSASend(s Handle, bufs *WSABuf, bufcnt uint32, sent *uint32, flags uint32, overlapped *Overlapped, croutine *byte) (err error) { -+ r1, _, e1 := syscall.Syscall9(procWSASend.Addr(), 7, uintptr(s), uintptr(unsafe.Pointer(bufs)), uintptr(bufcnt), uintptr(unsafe.Pointer(sent)), uintptr(flags), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(croutine)), 0, 0) -+ if r1 == socket_error { -+ err = errnoErr(e1) - } -- return _getNamedSecurityInfo(_p0, objectType, securityInformation, owner, group, dacl, sacl, sd) -+ return - } - --func _getNamedSecurityInfo(objectName *uint16, objectType SE_OBJECT_TYPE, securityInformation SECURITY_INFORMATION, owner **SID, group **SID, dacl **ACL, sacl **ACL, sd **SECURITY_DESCRIPTOR) (ret error) { -- r0, _, _ := syscall.Syscall9(procGetNamedSecurityInfoW.Addr(), 8, uintptr(unsafe.Pointer(objectName)), uintptr(objectType), uintptr(securityInformation), uintptr(unsafe.Pointer(owner)), uintptr(unsafe.Pointer(group)), uintptr(unsafe.Pointer(dacl)), uintptr(unsafe.Pointer(sacl)), uintptr(unsafe.Pointer(sd)), 0) -- if r0 != 0 { -- ret = syscall.Errno(r0) -+func WSASendTo(s Handle, bufs *WSABuf, bufcnt uint32, sent *uint32, flags uint32, to *RawSockaddrAny, tolen int32, overlapped *Overlapped, croutine *byte) (err error) { -+ r1, _, e1 := syscall.Syscall9(procWSASendTo.Addr(), 9, uintptr(s), uintptr(unsafe.Pointer(bufs)), uintptr(bufcnt), uintptr(unsafe.Pointer(sent)), uintptr(flags), uintptr(unsafe.Pointer(to)), uintptr(tolen), uintptr(unsafe.Pointer(overlapped)), uintptr(unsafe.Pointer(croutine))) -+ if r1 == socket_error { -+ err = errnoErr(e1) - } - return - } - --func SetNamedSecurityInfo(objectName string, objectType SE_OBJECT_TYPE, securityInformation SECURITY_INFORMATION, owner *SID, group *SID, dacl *ACL, sacl *ACL) (ret error) { -- var _p0 *uint16 -- _p0, ret = syscall.UTF16PtrFromString(objectName) -- if ret != nil { -- return -+func WSASocket(af int32, typ int32, protocol int32, protoInfo *WSAProtocolInfo, group uint32, flags uint32) (handle Handle, err error) { -+ r0, _, e1 := syscall.Syscall6(procWSASocketW.Addr(), 6, uintptr(af), uintptr(typ), uintptr(protocol), uintptr(unsafe.Pointer(protoInfo)), uintptr(group), uintptr(flags)) -+ handle = Handle(r0) -+ if handle == InvalidHandle { -+ err = errnoErr(e1) - } -- return _SetNamedSecurityInfo(_p0, objectType, securityInformation, owner, group, dacl, sacl) -+ return - } - --func _SetNamedSecurityInfo(objectName *uint16, objectType SE_OBJECT_TYPE, securityInformation SECURITY_INFORMATION, owner *SID, group *SID, dacl *ACL, sacl *ACL) (ret error) { -- r0, _, _ := syscall.Syscall9(procSetNamedSecurityInfoW.Addr(), 7, uintptr(unsafe.Pointer(objectName)), uintptr(objectType), uintptr(securityInformation), uintptr(unsafe.Pointer(owner)), uintptr(unsafe.Pointer(group)), uintptr(unsafe.Pointer(dacl)), uintptr(unsafe.Pointer(sacl)), 0, 0) -+func WSAStartup(verreq uint32, data *WSAData) (sockerr error) { -+ r0, _, _ := syscall.Syscall(procWSAStartup.Addr(), 2, uintptr(verreq), uintptr(unsafe.Pointer(data)), 0) - if r0 != 0 { -- ret = syscall.Errno(r0) -+ sockerr = syscall.Errno(r0) - } - return - } - --func buildSecurityDescriptor(owner *TRUSTEE, group *TRUSTEE, countAccessEntries uint32, accessEntries *EXPLICIT_ACCESS, countAuditEntries uint32, auditEntries *EXPLICIT_ACCESS, oldSecurityDescriptor *SECURITY_DESCRIPTOR, sizeNewSecurityDescriptor *uint32, newSecurityDescriptor **SECURITY_DESCRIPTOR) (ret error) { -- r0, _, _ := syscall.Syscall9(procBuildSecurityDescriptorW.Addr(), 9, uintptr(unsafe.Pointer(owner)), uintptr(unsafe.Pointer(group)), uintptr(countAccessEntries), uintptr(unsafe.Pointer(accessEntries)), uintptr(countAuditEntries), uintptr(unsafe.Pointer(auditEntries)), uintptr(unsafe.Pointer(oldSecurityDescriptor)), uintptr(unsafe.Pointer(sizeNewSecurityDescriptor)), uintptr(unsafe.Pointer(newSecurityDescriptor))) -- if r0 != 0 { -- ret = syscall.Errno(r0) -+func bind(s Handle, name unsafe.Pointer, namelen int32) (err error) { -+ r1, _, e1 := syscall.Syscall(procbind.Addr(), 3, uintptr(s), uintptr(name), uintptr(namelen)) -+ if r1 == socket_error { -+ err = errnoErr(e1) - } - return - } - --func initializeSecurityDescriptor(absoluteSD *SECURITY_DESCRIPTOR, revision uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procInitializeSecurityDescriptor.Addr(), 2, uintptr(unsafe.Pointer(absoluteSD)), uintptr(revision), 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func Closesocket(s Handle) (err error) { -+ r1, _, e1 := syscall.Syscall(procclosesocket.Addr(), 1, uintptr(s), 0, 0) -+ if r1 == socket_error { -+ err = errnoErr(e1) - } - return - } - --func getSecurityDescriptorControl(sd *SECURITY_DESCRIPTOR, control *SECURITY_DESCRIPTOR_CONTROL, revision *uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procGetSecurityDescriptorControl.Addr(), 3, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(control)), uintptr(unsafe.Pointer(revision))) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func connect(s Handle, name unsafe.Pointer, namelen int32) (err error) { -+ r1, _, e1 := syscall.Syscall(procconnect.Addr(), 3, uintptr(s), uintptr(name), uintptr(namelen)) -+ if r1 == socket_error { -+ err = errnoErr(e1) - } - return - } - --func getSecurityDescriptorDacl(sd *SECURITY_DESCRIPTOR, daclPresent *bool, dacl **ACL, daclDefaulted *bool) (err error) { -- var _p0 uint32 -- if *daclPresent { -- _p0 = 1 -- } else { -- _p0 = 0 -- } -- var _p1 uint32 -- if *daclDefaulted { -- _p1 = 1 -- } else { -- _p1 = 0 -- } -- r1, _, e1 := syscall.Syscall6(procGetSecurityDescriptorDacl.Addr(), 4, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(&_p0)), uintptr(unsafe.Pointer(dacl)), uintptr(unsafe.Pointer(&_p1)), 0, 0) -- *daclPresent = _p0 != 0 -- *daclDefaulted = _p1 != 0 -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func GetHostByName(name string) (h *Hostent, err error) { -+ var _p0 *byte -+ _p0, err = syscall.BytePtrFromString(name) -+ if err != nil { -+ return - } -- return -+ return _GetHostByName(_p0) - } - --func getSecurityDescriptorSacl(sd *SECURITY_DESCRIPTOR, saclPresent *bool, sacl **ACL, saclDefaulted *bool) (err error) { -- var _p0 uint32 -- if *saclPresent { -- _p0 = 1 -- } else { -- _p0 = 0 -- } -- var _p1 uint32 -- if *saclDefaulted { -- _p1 = 1 -- } else { -- _p1 = 0 -- } -- r1, _, e1 := syscall.Syscall6(procGetSecurityDescriptorSacl.Addr(), 4, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(&_p0)), uintptr(unsafe.Pointer(sacl)), uintptr(unsafe.Pointer(&_p1)), 0, 0) -- *saclPresent = _p0 != 0 -- *saclDefaulted = _p1 != 0 -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func _GetHostByName(name *byte) (h *Hostent, err error) { -+ r0, _, e1 := syscall.Syscall(procgethostbyname.Addr(), 1, uintptr(unsafe.Pointer(name)), 0, 0) -+ h = (*Hostent)(unsafe.Pointer(r0)) -+ if h == nil { -+ err = errnoErr(e1) - } - return - } - --func getSecurityDescriptorOwner(sd *SECURITY_DESCRIPTOR, owner **SID, ownerDefaulted *bool) (err error) { -- var _p0 uint32 -- if *ownerDefaulted { -- _p0 = 1 -- } else { -- _p0 = 0 -- } -- r1, _, e1 := syscall.Syscall(procGetSecurityDescriptorOwner.Addr(), 3, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(owner)), uintptr(unsafe.Pointer(&_p0))) -- *ownerDefaulted = _p0 != 0 -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func getpeername(s Handle, rsa *RawSockaddrAny, addrlen *int32) (err error) { -+ r1, _, e1 := syscall.Syscall(procgetpeername.Addr(), 3, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ if r1 == socket_error { -+ err = errnoErr(e1) - } - return - } - --func getSecurityDescriptorGroup(sd *SECURITY_DESCRIPTOR, group **SID, groupDefaulted *bool) (err error) { -- var _p0 uint32 -- if *groupDefaulted { -- _p0 = 1 -- } else { -- _p0 = 0 -- } -- r1, _, e1 := syscall.Syscall(procGetSecurityDescriptorGroup.Addr(), 3, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(group)), uintptr(unsafe.Pointer(&_p0))) -- *groupDefaulted = _p0 != 0 -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func GetProtoByName(name string) (p *Protoent, err error) { -+ var _p0 *byte -+ _p0, err = syscall.BytePtrFromString(name) -+ if err != nil { -+ return - } -- return -+ return _GetProtoByName(_p0) - } - --func getSecurityDescriptorLength(sd *SECURITY_DESCRIPTOR) (len uint32) { -- r0, _, _ := syscall.Syscall(procGetSecurityDescriptorLength.Addr(), 1, uintptr(unsafe.Pointer(sd)), 0, 0) -- len = uint32(r0) -+func _GetProtoByName(name *byte) (p *Protoent, err error) { -+ r0, _, e1 := syscall.Syscall(procgetprotobyname.Addr(), 1, uintptr(unsafe.Pointer(name)), 0, 0) -+ p = (*Protoent)(unsafe.Pointer(r0)) -+ if p == nil { -+ err = errnoErr(e1) -+ } - return - } - --func getSecurityDescriptorRMControl(sd *SECURITY_DESCRIPTOR, rmControl *uint8) (ret error) { -- r0, _, _ := syscall.Syscall(procGetSecurityDescriptorRMControl.Addr(), 2, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(rmControl)), 0) -- if r0 != 0 { -- ret = syscall.Errno(r0) -+func GetServByName(name string, proto string) (s *Servent, err error) { -+ var _p0 *byte -+ _p0, err = syscall.BytePtrFromString(name) -+ if err != nil { -+ return - } -- return -+ var _p1 *byte -+ _p1, err = syscall.BytePtrFromString(proto) -+ if err != nil { -+ return -+ } -+ return _GetServByName(_p0, _p1) - } - --func isValidSecurityDescriptor(sd *SECURITY_DESCRIPTOR) (isValid bool) { -- r0, _, _ := syscall.Syscall(procIsValidSecurityDescriptor.Addr(), 1, uintptr(unsafe.Pointer(sd)), 0, 0) -- isValid = r0 != 0 -+func _GetServByName(name *byte, proto *byte) (s *Servent, err error) { -+ r0, _, e1 := syscall.Syscall(procgetservbyname.Addr(), 2, uintptr(unsafe.Pointer(name)), uintptr(unsafe.Pointer(proto)), 0) -+ s = (*Servent)(unsafe.Pointer(r0)) -+ if s == nil { -+ err = errnoErr(e1) -+ } - return - } - --func setSecurityDescriptorControl(sd *SECURITY_DESCRIPTOR, controlBitsOfInterest SECURITY_DESCRIPTOR_CONTROL, controlBitsToSet SECURITY_DESCRIPTOR_CONTROL) (err error) { -- r1, _, e1 := syscall.Syscall(procSetSecurityDescriptorControl.Addr(), 3, uintptr(unsafe.Pointer(sd)), uintptr(controlBitsOfInterest), uintptr(controlBitsToSet)) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func getsockname(s Handle, rsa *RawSockaddrAny, addrlen *int32) (err error) { -+ r1, _, e1 := syscall.Syscall(procgetsockname.Addr(), 3, uintptr(s), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen))) -+ if r1 == socket_error { -+ err = errnoErr(e1) - } - return - } - --func setSecurityDescriptorDacl(sd *SECURITY_DESCRIPTOR, daclPresent bool, dacl *ACL, daclDefaulted bool) (err error) { -- var _p0 uint32 -- if daclPresent { -- _p0 = 1 -- } else { -- _p0 = 0 -- } -- var _p1 uint32 -- if daclDefaulted { -- _p1 = 1 -- } else { -- _p1 = 0 -- } -- r1, _, e1 := syscall.Syscall6(procSetSecurityDescriptorDacl.Addr(), 4, uintptr(unsafe.Pointer(sd)), uintptr(_p0), uintptr(unsafe.Pointer(dacl)), uintptr(_p1), 0, 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func Getsockopt(s Handle, level int32, optname int32, optval *byte, optlen *int32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procgetsockopt.Addr(), 5, uintptr(s), uintptr(level), uintptr(optname), uintptr(unsafe.Pointer(optval)), uintptr(unsafe.Pointer(optlen)), 0) -+ if r1 == socket_error { -+ err = errnoErr(e1) - } - return - } - --func setSecurityDescriptorSacl(sd *SECURITY_DESCRIPTOR, saclPresent bool, sacl *ACL, saclDefaulted bool) (err error) { -- var _p0 uint32 -- if saclPresent { -- _p0 = 1 -- } else { -- _p0 = 0 -- } -- var _p1 uint32 -- if saclDefaulted { -- _p1 = 1 -- } else { -- _p1 = 0 -- } -- r1, _, e1 := syscall.Syscall6(procSetSecurityDescriptorSacl.Addr(), 4, uintptr(unsafe.Pointer(sd)), uintptr(_p0), uintptr(unsafe.Pointer(sacl)), uintptr(_p1), 0, 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func listen(s Handle, backlog int32) (err error) { -+ r1, _, e1 := syscall.Syscall(proclisten.Addr(), 2, uintptr(s), uintptr(backlog), 0) -+ if r1 == socket_error { -+ err = errnoErr(e1) - } - return - } - --func setSecurityDescriptorOwner(sd *SECURITY_DESCRIPTOR, owner *SID, ownerDefaulted bool) (err error) { -- var _p0 uint32 -- if ownerDefaulted { -- _p0 = 1 -- } else { -- _p0 = 0 -- } -- r1, _, e1 := syscall.Syscall(procSetSecurityDescriptorOwner.Addr(), 3, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(owner)), uintptr(_p0)) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -- } -+func Ntohs(netshort uint16) (u uint16) { -+ r0, _, _ := syscall.Syscall(procntohs.Addr(), 1, uintptr(netshort), 0, 0) -+ u = uint16(r0) - return - } - --func setSecurityDescriptorGroup(sd *SECURITY_DESCRIPTOR, group *SID, groupDefaulted bool) (err error) { -- var _p0 uint32 -- if groupDefaulted { -- _p0 = 1 -- } else { -- _p0 = 0 -+func recvfrom(s Handle, buf []byte, flags int32, from *RawSockaddrAny, fromlen *int32) (n int32, err error) { -+ var _p0 *byte -+ if len(buf) > 0 { -+ _p0 = &buf[0] - } -- r1, _, e1 := syscall.Syscall(procSetSecurityDescriptorGroup.Addr(), 3, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(group)), uintptr(_p0)) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ r0, _, e1 := syscall.Syscall6(procrecvfrom.Addr(), 6, uintptr(s), uintptr(unsafe.Pointer(_p0)), uintptr(len(buf)), uintptr(flags), uintptr(unsafe.Pointer(from)), uintptr(unsafe.Pointer(fromlen))) -+ n = int32(r0) -+ if n == -1 { -+ err = errnoErr(e1) - } - return - } - --func setSecurityDescriptorRMControl(sd *SECURITY_DESCRIPTOR, rmControl *uint8) { -- syscall.Syscall(procSetSecurityDescriptorRMControl.Addr(), 2, uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(rmControl)), 0) -+func sendto(s Handle, buf []byte, flags int32, to unsafe.Pointer, tolen int32) (err error) { -+ var _p0 *byte -+ if len(buf) > 0 { -+ _p0 = &buf[0] -+ } -+ r1, _, e1 := syscall.Syscall6(procsendto.Addr(), 6, uintptr(s), uintptr(unsafe.Pointer(_p0)), uintptr(len(buf)), uintptr(flags), uintptr(to), uintptr(tolen)) -+ if r1 == socket_error { -+ err = errnoErr(e1) -+ } - return - } - --func convertStringSecurityDescriptorToSecurityDescriptor(str string, revision uint32, sd **SECURITY_DESCRIPTOR, size *uint32) (err error) { -- var _p0 *uint16 -- _p0, err = syscall.UTF16PtrFromString(str) -- if err != nil { -- return -+func Setsockopt(s Handle, level int32, optname int32, optval *byte, optlen int32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procsetsockopt.Addr(), 5, uintptr(s), uintptr(level), uintptr(optname), uintptr(unsafe.Pointer(optval)), uintptr(optlen), 0) -+ if r1 == socket_error { -+ err = errnoErr(e1) - } -- return _convertStringSecurityDescriptorToSecurityDescriptor(_p0, revision, sd, size) -+ return - } - --func _convertStringSecurityDescriptorToSecurityDescriptor(str *uint16, revision uint32, sd **SECURITY_DESCRIPTOR, size *uint32) (err error) { -- r1, _, e1 := syscall.Syscall6(procConvertStringSecurityDescriptorToSecurityDescriptorW.Addr(), 4, uintptr(unsafe.Pointer(str)), uintptr(revision), uintptr(unsafe.Pointer(sd)), uintptr(unsafe.Pointer(size)), 0, 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func shutdown(s Handle, how int32) (err error) { -+ r1, _, e1 := syscall.Syscall(procshutdown.Addr(), 2, uintptr(s), uintptr(how), 0) -+ if r1 == socket_error { -+ err = errnoErr(e1) - } - return - } - --func convertSecurityDescriptorToStringSecurityDescriptor(sd *SECURITY_DESCRIPTOR, revision uint32, securityInformation SECURITY_INFORMATION, str **uint16, strLen *uint32) (err error) { -- r1, _, e1 := syscall.Syscall6(procConvertSecurityDescriptorToStringSecurityDescriptorW.Addr(), 5, uintptr(unsafe.Pointer(sd)), uintptr(revision), uintptr(securityInformation), uintptr(unsafe.Pointer(str)), uintptr(unsafe.Pointer(strLen)), 0) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+func socket(af int32, typ int32, protocol int32) (handle Handle, err error) { -+ r0, _, e1 := syscall.Syscall(procsocket.Addr(), 3, uintptr(af), uintptr(typ), uintptr(protocol)) -+ handle = Handle(r0) -+ if handle == InvalidHandle { -+ err = errnoErr(e1) - } - return - } - --func makeAbsoluteSD(selfRelativeSD *SECURITY_DESCRIPTOR, absoluteSD *SECURITY_DESCRIPTOR, absoluteSDSize *uint32, dacl *ACL, daclSize *uint32, sacl *ACL, saclSize *uint32, owner *SID, ownerSize *uint32, group *SID, groupSize *uint32) (err error) { -- r1, _, e1 := syscall.Syscall12(procMakeAbsoluteSD.Addr(), 11, uintptr(unsafe.Pointer(selfRelativeSD)), uintptr(unsafe.Pointer(absoluteSD)), uintptr(unsafe.Pointer(absoluteSDSize)), uintptr(unsafe.Pointer(dacl)), uintptr(unsafe.Pointer(daclSize)), uintptr(unsafe.Pointer(sacl)), uintptr(unsafe.Pointer(saclSize)), uintptr(unsafe.Pointer(owner)), uintptr(unsafe.Pointer(ownerSize)), uintptr(unsafe.Pointer(group)), uintptr(unsafe.Pointer(groupSize)), 0) -+func WTSEnumerateSessions(handle Handle, reserved uint32, version uint32, sessions **WTS_SESSION_INFO, count *uint32) (err error) { -+ r1, _, e1 := syscall.Syscall6(procWTSEnumerateSessionsW.Addr(), 5, uintptr(handle), uintptr(reserved), uintptr(version), uintptr(unsafe.Pointer(sessions)), uintptr(unsafe.Pointer(count)), 0) - if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -+ err = errnoErr(e1) - } - return - } - --func makeSelfRelativeSD(absoluteSD *SECURITY_DESCRIPTOR, selfRelativeSD *SECURITY_DESCRIPTOR, selfRelativeSDSize *uint32) (err error) { -- r1, _, e1 := syscall.Syscall(procMakeSelfRelativeSD.Addr(), 3, uintptr(unsafe.Pointer(absoluteSD)), uintptr(unsafe.Pointer(selfRelativeSD)), uintptr(unsafe.Pointer(selfRelativeSDSize))) -- if r1 == 0 { -- if e1 != 0 { -- err = errnoErr(e1) -- } else { -- err = syscall.EINVAL -- } -- } -+func WTSFreeMemory(ptr uintptr) { -+ syscall.Syscall(procWTSFreeMemory.Addr(), 1, uintptr(ptr), 0, 0) - return - } - --func setEntriesInAcl(countExplicitEntries uint32, explicitEntries *EXPLICIT_ACCESS, oldACL *ACL, newACL **ACL) (ret error) { -- r0, _, _ := syscall.Syscall6(procSetEntriesInAclW.Addr(), 4, uintptr(countExplicitEntries), uintptr(unsafe.Pointer(explicitEntries)), uintptr(unsafe.Pointer(oldACL)), uintptr(unsafe.Pointer(newACL)), 0, 0) -- if r0 != 0 { -- ret = syscall.Errno(r0) -+func WTSQueryUserToken(session uint32, token *Token) (err error) { -+ r1, _, e1 := syscall.Syscall(procWTSQueryUserToken.Addr(), 2, uintptr(session), uintptr(unsafe.Pointer(token)), 0) -+ if r1 == 0 { -+ err = errnoErr(e1) - } - return - } -diff --git a/vendor/golang.org/x/text/secure/bidirule/bidirule10.0.0.go b/vendor/golang.org/x/text/secure/bidirule/bidirule10.0.0.go -index e4c6228..8a7392c 100644 ---- a/vendor/golang.org/x/text/secure/bidirule/bidirule10.0.0.go -+++ b/vendor/golang.org/x/text/secure/bidirule/bidirule10.0.0.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build go1.10 - // +build go1.10 - - package bidirule -diff --git a/vendor/golang.org/x/text/secure/bidirule/bidirule9.0.0.go b/vendor/golang.org/x/text/secure/bidirule/bidirule9.0.0.go -index 02b9e1e..bb0a920 100644 ---- a/vendor/golang.org/x/text/secure/bidirule/bidirule9.0.0.go -+++ b/vendor/golang.org/x/text/secure/bidirule/bidirule9.0.0.go -@@ -2,6 +2,7 @@ - // Use of this source code is governed by a BSD-style - // license that can be found in the LICENSE file. - -+//go:build !go1.10 - // +build !go1.10 - - package bidirule -diff --git a/vendor/golang.org/x/text/transform/transform.go b/vendor/golang.org/x/text/transform/transform.go -index 520b9ad..48ec64b 100644 ---- a/vendor/golang.org/x/text/transform/transform.go -+++ b/vendor/golang.org/x/text/transform/transform.go -@@ -648,7 +648,8 @@ func String(t Transformer, s string) (result string, n int, err error) { - // Transform the remaining input, growing dst and src buffers as necessary. - for { - n := copy(src, s[pSrc:]) -- nDst, nSrc, err := t.Transform(dst[pDst:], src[:n], pSrc+n == len(s)) -+ atEOF := pSrc+n == len(s) -+ nDst, nSrc, err := t.Transform(dst[pDst:], src[:n], atEOF) - pDst += nDst - pSrc += nSrc - -@@ -659,6 +660,9 @@ func String(t Transformer, s string) (result string, n int, err error) { - dst = grow(dst, pDst) - } - } else if err == ErrShortSrc { -+ if atEOF { -+ return string(dst[:pDst]), pSrc, err -+ } - if nSrc == 0 { - src = grow(src, 0) - } -diff --git a/vendor/golang.org/x/text/unicode/bidi/bidi.go b/vendor/golang.org/x/text/unicode/bidi/bidi.go -index e8edc54..fd05760 100644 ---- a/vendor/golang.org/x/text/unicode/bidi/bidi.go -+++ b/vendor/golang.org/x/text/unicode/bidi/bidi.go -@@ -12,15 +12,14 @@ - // and without notice. - package bidi // import "golang.org/x/text/unicode/bidi" - --// TODO: --// The following functionality would not be hard to implement, but hinges on --// the definition of a Segmenter interface. For now this is up to the user. --// - Iterate over paragraphs --// - Segmenter to iterate over runs directly from a given text. --// Also: -+// TODO - // - Transformer for reordering? - // - Transformer (validator, really) for Bidi Rule. - -+import ( -+ "bytes" -+) -+ - // This API tries to avoid dealing with embedding levels for now. Under the hood - // these will be computed, but the question is to which extent the user should - // know they exist. We should at some point allow the user to specify an -@@ -49,7 +48,9 @@ const ( - Neutral - ) - --type options struct{} -+type options struct { -+ defaultDirection Direction -+} - - // An Option is an option for Bidi processing. - type Option func(*options) -@@ -66,12 +67,62 @@ type Option func(*options) - // DefaultDirection sets the default direction for a Paragraph. The direction is - // overridden if the text contains directional characters. - func DefaultDirection(d Direction) Option { -- panic("unimplemented") -+ return func(opts *options) { -+ opts.defaultDirection = d -+ } - } - - // A Paragraph holds a single Paragraph for Bidi processing. - type Paragraph struct { -- // buffers -+ p []byte -+ o Ordering -+ opts []Option -+ types []Class -+ pairTypes []bracketType -+ pairValues []rune -+ runes []rune -+ options options -+} -+ -+// Initialize the p.pairTypes, p.pairValues and p.types from the input previously -+// set by p.SetBytes() or p.SetString(). Also limit the input up to (and including) a paragraph -+// separator (bidi class B). -+// -+// The function p.Order() needs these values to be set, so this preparation could be postponed. -+// But since the SetBytes and SetStrings functions return the length of the input up to the paragraph -+// separator, the whole input needs to be processed anyway and should not be done twice. -+// -+// The function has the same return values as SetBytes() / SetString() -+func (p *Paragraph) prepareInput() (n int, err error) { -+ p.runes = bytes.Runes(p.p) -+ bytecount := 0 -+ // clear slices from previous SetString or SetBytes -+ p.pairTypes = nil -+ p.pairValues = nil -+ p.types = nil -+ -+ for _, r := range p.runes { -+ props, i := LookupRune(r) -+ bytecount += i -+ cls := props.Class() -+ if cls == B { -+ return bytecount, nil -+ } -+ p.types = append(p.types, cls) -+ if props.IsOpeningBracket() { -+ p.pairTypes = append(p.pairTypes, bpOpen) -+ p.pairValues = append(p.pairValues, r) -+ } else if props.IsBracket() { -+ // this must be a closing bracket, -+ // since IsOpeningBracket is not true -+ p.pairTypes = append(p.pairTypes, bpClose) -+ p.pairValues = append(p.pairValues, r) -+ } else { -+ p.pairTypes = append(p.pairTypes, bpNone) -+ p.pairValues = append(p.pairValues, 0) -+ } -+ } -+ return bytecount, nil - } - - // SetBytes configures p for the given paragraph text. It replaces text -@@ -80,70 +131,150 @@ type Paragraph struct { - // consumed from b including this separator. Error may be non-nil if options are - // given. - func (p *Paragraph) SetBytes(b []byte, opts ...Option) (n int, err error) { -- panic("unimplemented") -+ p.p = b -+ p.opts = opts -+ return p.prepareInput() - } - --// SetString configures p for the given paragraph text. It replaces text --// previously set by SetBytes or SetString. If b contains a paragraph separator -+// SetString configures s for the given paragraph text. It replaces text -+// previously set by SetBytes or SetString. If s contains a paragraph separator - // it will only process the first paragraph and report the number of bytes --// consumed from b including this separator. Error may be non-nil if options are -+// consumed from s including this separator. Error may be non-nil if options are - // given. - func (p *Paragraph) SetString(s string, opts ...Option) (n int, err error) { -- panic("unimplemented") -+ p.p = []byte(s) -+ p.opts = opts -+ return p.prepareInput() - } - - // IsLeftToRight reports whether the principle direction of rendering for this - // paragraphs is left-to-right. If this returns false, the principle direction - // of rendering is right-to-left. - func (p *Paragraph) IsLeftToRight() bool { -- panic("unimplemented") -+ return p.Direction() == LeftToRight - } - - // Direction returns the direction of the text of this paragraph. - // - // The direction may be LeftToRight, RightToLeft, Mixed, or Neutral. - func (p *Paragraph) Direction() Direction { -- panic("unimplemented") -+ return p.o.Direction() - } - -+// TODO: what happens if the position is > len(input)? This should return an error. -+ - // RunAt reports the Run at the given position of the input text. - // - // This method can be used for computing line breaks on paragraphs. - func (p *Paragraph) RunAt(pos int) Run { -- panic("unimplemented") -+ c := 0 -+ runNumber := 0 -+ for i, r := range p.o.runes { -+ c += len(r) -+ if pos < c { -+ runNumber = i -+ } -+ } -+ return p.o.Run(runNumber) -+} -+ -+func calculateOrdering(levels []level, runes []rune) Ordering { -+ var curDir Direction -+ -+ prevDir := Neutral -+ prevI := 0 -+ -+ o := Ordering{} -+ // lvl = 0,2,4,...: left to right -+ // lvl = 1,3,5,...: right to left -+ for i, lvl := range levels { -+ if lvl%2 == 0 { -+ curDir = LeftToRight -+ } else { -+ curDir = RightToLeft -+ } -+ if curDir != prevDir { -+ if i > 0 { -+ o.runes = append(o.runes, runes[prevI:i]) -+ o.directions = append(o.directions, prevDir) -+ o.startpos = append(o.startpos, prevI) -+ } -+ prevI = i -+ prevDir = curDir -+ } -+ } -+ o.runes = append(o.runes, runes[prevI:]) -+ o.directions = append(o.directions, prevDir) -+ o.startpos = append(o.startpos, prevI) -+ return o - } - - // Order computes the visual ordering of all the runs in a Paragraph. - func (p *Paragraph) Order() (Ordering, error) { -- panic("unimplemented") -+ if len(p.types) == 0 { -+ return Ordering{}, nil -+ } -+ -+ for _, fn := range p.opts { -+ fn(&p.options) -+ } -+ lvl := level(-1) -+ if p.options.defaultDirection == RightToLeft { -+ lvl = 1 -+ } -+ para, err := newParagraph(p.types, p.pairTypes, p.pairValues, lvl) -+ if err != nil { -+ return Ordering{}, err -+ } -+ -+ levels := para.getLevels([]int{len(p.types)}) -+ -+ p.o = calculateOrdering(levels, p.runes) -+ return p.o, nil - } - - // Line computes the visual ordering of runs for a single line starting and - // ending at the given positions in the original text. - func (p *Paragraph) Line(start, end int) (Ordering, error) { -- panic("unimplemented") -+ lineTypes := p.types[start:end] -+ para, err := newParagraph(lineTypes, p.pairTypes[start:end], p.pairValues[start:end], -1) -+ if err != nil { -+ return Ordering{}, err -+ } -+ levels := para.getLevels([]int{len(lineTypes)}) -+ o := calculateOrdering(levels, p.runes[start:end]) -+ return o, nil - } - - // An Ordering holds the computed visual order of runs of a Paragraph. Calling - // SetBytes or SetString on the originating Paragraph invalidates an Ordering. - // The methods of an Ordering should only be called by one goroutine at a time. --type Ordering struct{} -+type Ordering struct { -+ runes [][]rune -+ directions []Direction -+ startpos []int -+} - - // Direction reports the directionality of the runs. - // - // The direction may be LeftToRight, RightToLeft, Mixed, or Neutral. - func (o *Ordering) Direction() Direction { -- panic("unimplemented") -+ return o.directions[0] - } - - // NumRuns returns the number of runs. - func (o *Ordering) NumRuns() int { -- panic("unimplemented") -+ return len(o.runes) - } - - // Run returns the ith run within the ordering. - func (o *Ordering) Run(i int) Run { -- panic("unimplemented") -+ r := Run{ -+ runes: o.runes[i], -+ direction: o.directions[i], -+ startpos: o.startpos[i], -+ } -+ return r - } - - // TODO: perhaps with options. -@@ -155,16 +286,19 @@ func (o *Ordering) Run(i int) Run { - - // A Run is a continuous sequence of characters of a single direction. - type Run struct { -+ runes []rune -+ direction Direction -+ startpos int - } - - // String returns the text of the run in its original order. - func (r *Run) String() string { -- panic("unimplemented") -+ return string(r.runes) - } - - // Bytes returns the text of the run in its original order. - func (r *Run) Bytes() []byte { -- panic("unimplemented") -+ return []byte(r.String()) - } - - // TODO: methods for -@@ -174,25 +308,52 @@ func (r *Run) Bytes() []byte { - - // Direction reports the direction of the run. - func (r *Run) Direction() Direction { -- panic("unimplemented") -+ return r.direction - } - --// Position of the Run within the text passed to SetBytes or SetString of the -+// Pos returns the position of the Run within the text passed to SetBytes or SetString of the - // originating Paragraph value. - func (r *Run) Pos() (start, end int) { -- panic("unimplemented") -+ return r.startpos, r.startpos + len(r.runes) - 1 - } - - // AppendReverse reverses the order of characters of in, appends them to out, - // and returns the result. Modifiers will still follow the runes they modify. - // Brackets are replaced with their counterparts. - func AppendReverse(out, in []byte) []byte { -- panic("unimplemented") -+ ret := make([]byte, len(in)+len(out)) -+ copy(ret, out) -+ inRunes := bytes.Runes(in) -+ -+ for i, r := range inRunes { -+ prop, _ := LookupRune(r) -+ if prop.IsBracket() { -+ inRunes[i] = prop.reverseBracket(r) -+ } -+ } -+ -+ for i, j := 0, len(inRunes)-1; i < j; i, j = i+1, j-1 { -+ inRunes[i], inRunes[j] = inRunes[j], inRunes[i] -+ } -+ copy(ret[len(out):], string(inRunes)) -+ -+ return ret - } - - // ReverseString reverses the order of characters in s and returns a new string. - // Modifiers will still follow the runes they modify. Brackets are replaced with - // their counterparts. - func ReverseString(s string) string { -- panic("unimplemented") -+ input := []rune(s) -+ li := len(input) -+ ret := make([]rune, li) -+ for i, r := range input { -+ prop, _ := LookupRune(r) -+ if prop.IsBracket() { -+ ret[li-i-1] = prop.reverseBracket(r) -+ } else { -+ ret[li-i-1] = r -+ } -+ } -+ return string(ret) - } -diff --git a/vendor/golang.org/x/text/unicode/bidi/core.go b/vendor/golang.org/x/text/unicode/bidi/core.go -index 48d1440..e4c0811 100644 ---- a/vendor/golang.org/x/text/unicode/bidi/core.go -+++ b/vendor/golang.org/x/text/unicode/bidi/core.go -@@ -4,7 +4,10 @@ - - package bidi - --import "log" -+import ( -+ "fmt" -+ "log" -+) - - // This implementation is a port based on the reference implementation found at: - // https://www.unicode.org/Public/PROGRAMS/BidiReferenceJava/ -@@ -97,13 +100,20 @@ type paragraph struct { - // rune (suggested is the rune of the open bracket for opening and matching - // close brackets, after normalization). The embedding levels are optional, but - // may be supplied to encode embedding levels of styled text. --// --// TODO: return an error. --func newParagraph(types []Class, pairTypes []bracketType, pairValues []rune, levels level) *paragraph { -- validateTypes(types) -- validatePbTypes(pairTypes) -- validatePbValues(pairValues, pairTypes) -- validateParagraphEmbeddingLevel(levels) -+func newParagraph(types []Class, pairTypes []bracketType, pairValues []rune, levels level) (*paragraph, error) { -+ var err error -+ if err = validateTypes(types); err != nil { -+ return nil, err -+ } -+ if err = validatePbTypes(pairTypes); err != nil { -+ return nil, err -+ } -+ if err = validatePbValues(pairValues, pairTypes); err != nil { -+ return nil, err -+ } -+ if err = validateParagraphEmbeddingLevel(levels); err != nil { -+ return nil, err -+ } - - p := ¶graph{ - initialTypes: append([]Class(nil), types...), -@@ -115,7 +125,7 @@ func newParagraph(types []Class, pairTypes []bracketType, pairValues []rune, lev - resultTypes: append([]Class(nil), types...), - } - p.run() -- return p -+ return p, nil - } - - func (p *paragraph) Len() int { return len(p.initialTypes) } -@@ -480,15 +490,15 @@ func (s *isolatingRunSequence) resolveWeakTypes() { - - // Rule W1. - // Changes all NSMs. -- preceedingCharacterType := s.sos -+ precedingCharacterType := s.sos - for i, t := range s.types { - if t == NSM { -- s.types[i] = preceedingCharacterType -+ s.types[i] = precedingCharacterType - } else { - if t.in(LRI, RLI, FSI, PDI) { -- preceedingCharacterType = ON -+ precedingCharacterType = ON - } -- preceedingCharacterType = t -+ precedingCharacterType = t - } - } - -@@ -1001,58 +1011,61 @@ func typeForLevel(level level) Class { - return R - } - --// TODO: change validation to not panic -- --func validateTypes(types []Class) { -+func validateTypes(types []Class) error { - if len(types) == 0 { -- log.Panic("types is null") -+ return fmt.Errorf("types is null") - } - for i, t := range types[:len(types)-1] { - if t == B { -- log.Panicf("B type before end of paragraph at index: %d", i) -+ return fmt.Errorf("B type before end of paragraph at index: %d", i) - } - } -+ return nil - } - --func validateParagraphEmbeddingLevel(embeddingLevel level) { -+func validateParagraphEmbeddingLevel(embeddingLevel level) error { - if embeddingLevel != implicitLevel && - embeddingLevel != 0 && - embeddingLevel != 1 { -- log.Panicf("illegal paragraph embedding level: %d", embeddingLevel) -+ return fmt.Errorf("illegal paragraph embedding level: %d", embeddingLevel) - } -+ return nil - } - --func validateLineBreaks(linebreaks []int, textLength int) { -+func validateLineBreaks(linebreaks []int, textLength int) error { - prev := 0 - for i, next := range linebreaks { - if next <= prev { -- log.Panicf("bad linebreak: %d at index: %d", next, i) -+ return fmt.Errorf("bad linebreak: %d at index: %d", next, i) - } - prev = next - } - if prev != textLength { -- log.Panicf("last linebreak was %d, want %d", prev, textLength) -+ return fmt.Errorf("last linebreak was %d, want %d", prev, textLength) - } -+ return nil - } - --func validatePbTypes(pairTypes []bracketType) { -+func validatePbTypes(pairTypes []bracketType) error { - if len(pairTypes) == 0 { -- log.Panic("pairTypes is null") -+ return fmt.Errorf("pairTypes is null") - } - for i, pt := range pairTypes { - switch pt { - case bpNone, bpOpen, bpClose: - default: -- log.Panicf("illegal pairType value at %d: %v", i, pairTypes[i]) -+ return fmt.Errorf("illegal pairType value at %d: %v", i, pairTypes[i]) - } - } -+ return nil - } - --func validatePbValues(pairValues []rune, pairTypes []bracketType) { -+func validatePbValues(pairValues []rune, pairTypes []bracketType) error { - if pairValues == nil { -- log.Panic("pairValues is null") -+ return fmt.Errorf("pairValues is null") - } - if len(pairTypes) != len(pairValues) { -- log.Panic("pairTypes is different length from pairValues") -+ return fmt.Errorf("pairTypes is different length from pairValues") - } -+ return nil - } -diff --git a/vendor/golang.org/x/text/unicode/bidi/tables10.0.0.go b/vendor/golang.org/x/text/unicode/bidi/tables10.0.0.go -index d8c94e1..42fa8d7 100644 ---- a/vendor/golang.org/x/text/unicode/bidi/tables10.0.0.go -+++ b/vendor/golang.org/x/text/unicode/bidi/tables10.0.0.go -@@ -1,5 +1,6 @@ - // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. - -+//go:build go1.10 && !go1.13 - // +build go1.10,!go1.13 - - package bidi -diff --git a/vendor/golang.org/x/text/unicode/bidi/tables11.0.0.go b/vendor/golang.org/x/text/unicode/bidi/tables11.0.0.go -index 022e3c6..56a0e1e 100644 ---- a/vendor/golang.org/x/text/unicode/bidi/tables11.0.0.go -+++ b/vendor/golang.org/x/text/unicode/bidi/tables11.0.0.go -@@ -1,6 +1,7 @@ - // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. - --// +build go1.13 -+//go:build go1.13 && !go1.14 -+// +build go1.13,!go1.14 - - package bidi - -diff --git a/vendor/golang.org/x/text/unicode/bidi/tables12.0.0.go b/vendor/golang.org/x/text/unicode/bidi/tables12.0.0.go -new file mode 100644 -index 0000000..baacf32 ---- /dev/null -+++ b/vendor/golang.org/x/text/unicode/bidi/tables12.0.0.go -@@ -0,0 +1,1924 @@ -+// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. -+ -+//go:build go1.14 && !go1.16 -+// +build go1.14,!go1.16 -+ -+package bidi -+ -+// UnicodeVersion is the Unicode version from which the tables in this package are derived. -+const UnicodeVersion = "12.0.0" -+ -+// xorMasks contains masks to be xor-ed with brackets to get the reverse -+// version. -+var xorMasks = []int32{ // 8 elements -+ 0, 1, 6, 7, 3, 15, 29, 63, -+} // Size: 56 bytes -+ -+// lookup returns the trie value for the first UTF-8 encoding in s and -+// the width in bytes of this encoding. The size will be 0 if s does not -+// hold enough bytes to complete the encoding. len(s) must be greater than 0. -+func (t *bidiTrie) lookup(s []byte) (v uint8, sz int) { -+ c0 := s[0] -+ switch { -+ case c0 < 0x80: // is ASCII -+ return bidiValues[c0], 1 -+ case c0 < 0xC2: -+ return 0, 1 // Illegal UTF-8: not a starter, not ASCII. -+ case c0 < 0xE0: // 2-byte UTF-8 -+ if len(s) < 2 { -+ return 0, 0 -+ } -+ i := bidiIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c1), 2 -+ case c0 < 0xF0: // 3-byte UTF-8 -+ if len(s) < 3 { -+ return 0, 0 -+ } -+ i := bidiIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = bidiIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c2), 3 -+ case c0 < 0xF8: // 4-byte UTF-8 -+ if len(s) < 4 { -+ return 0, 0 -+ } -+ i := bidiIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = bidiIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ o = uint32(i)<<6 + uint32(c2) -+ i = bidiIndex[o] -+ c3 := s[3] -+ if c3 < 0x80 || 0xC0 <= c3 { -+ return 0, 3 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c3), 4 -+ } -+ // Illegal rune -+ return 0, 1 -+} -+ -+// lookupUnsafe returns the trie value for the first UTF-8 encoding in s. -+// s must start with a full and valid UTF-8 encoded rune. -+func (t *bidiTrie) lookupUnsafe(s []byte) uint8 { -+ c0 := s[0] -+ if c0 < 0x80 { // is ASCII -+ return bidiValues[c0] -+ } -+ i := bidiIndex[c0] -+ if c0 < 0xE0 { // 2-byte UTF-8 -+ return t.lookupValue(uint32(i), s[1]) -+ } -+ i = bidiIndex[uint32(i)<<6+uint32(s[1])] -+ if c0 < 0xF0 { // 3-byte UTF-8 -+ return t.lookupValue(uint32(i), s[2]) -+ } -+ i = bidiIndex[uint32(i)<<6+uint32(s[2])] -+ if c0 < 0xF8 { // 4-byte UTF-8 -+ return t.lookupValue(uint32(i), s[3]) -+ } -+ return 0 -+} -+ -+// lookupString returns the trie value for the first UTF-8 encoding in s and -+// the width in bytes of this encoding. The size will be 0 if s does not -+// hold enough bytes to complete the encoding. len(s) must be greater than 0. -+func (t *bidiTrie) lookupString(s string) (v uint8, sz int) { -+ c0 := s[0] -+ switch { -+ case c0 < 0x80: // is ASCII -+ return bidiValues[c0], 1 -+ case c0 < 0xC2: -+ return 0, 1 // Illegal UTF-8: not a starter, not ASCII. -+ case c0 < 0xE0: // 2-byte UTF-8 -+ if len(s) < 2 { -+ return 0, 0 -+ } -+ i := bidiIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c1), 2 -+ case c0 < 0xF0: // 3-byte UTF-8 -+ if len(s) < 3 { -+ return 0, 0 -+ } -+ i := bidiIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = bidiIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c2), 3 -+ case c0 < 0xF8: // 4-byte UTF-8 -+ if len(s) < 4 { -+ return 0, 0 -+ } -+ i := bidiIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = bidiIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ o = uint32(i)<<6 + uint32(c2) -+ i = bidiIndex[o] -+ c3 := s[3] -+ if c3 < 0x80 || 0xC0 <= c3 { -+ return 0, 3 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c3), 4 -+ } -+ // Illegal rune -+ return 0, 1 -+} -+ -+// lookupStringUnsafe returns the trie value for the first UTF-8 encoding in s. -+// s must start with a full and valid UTF-8 encoded rune. -+func (t *bidiTrie) lookupStringUnsafe(s string) uint8 { -+ c0 := s[0] -+ if c0 < 0x80 { // is ASCII -+ return bidiValues[c0] -+ } -+ i := bidiIndex[c0] -+ if c0 < 0xE0 { // 2-byte UTF-8 -+ return t.lookupValue(uint32(i), s[1]) -+ } -+ i = bidiIndex[uint32(i)<<6+uint32(s[1])] -+ if c0 < 0xF0 { // 3-byte UTF-8 -+ return t.lookupValue(uint32(i), s[2]) -+ } -+ i = bidiIndex[uint32(i)<<6+uint32(s[2])] -+ if c0 < 0xF8 { // 4-byte UTF-8 -+ return t.lookupValue(uint32(i), s[3]) -+ } -+ return 0 -+} -+ -+// bidiTrie. Total size: 16896 bytes (16.50 KiB). Checksum: 6f0927067913dc6d. -+type bidiTrie struct{} -+ -+func newBidiTrie(i int) *bidiTrie { -+ return &bidiTrie{} -+} -+ -+// lookupValue determines the type of block n and looks up the value for b. -+func (t *bidiTrie) lookupValue(n uint32, b byte) uint8 { -+ switch { -+ default: -+ return uint8(bidiValues[n<<6+uint32(b)]) -+ } -+} -+ -+// bidiValues: 240 blocks, 15360 entries, 15360 bytes -+// The third block is the zero block. -+var bidiValues = [15360]uint8{ -+ // Block 0x0, offset 0x0 -+ 0x00: 0x000b, 0x01: 0x000b, 0x02: 0x000b, 0x03: 0x000b, 0x04: 0x000b, 0x05: 0x000b, -+ 0x06: 0x000b, 0x07: 0x000b, 0x08: 0x000b, 0x09: 0x0008, 0x0a: 0x0007, 0x0b: 0x0008, -+ 0x0c: 0x0009, 0x0d: 0x0007, 0x0e: 0x000b, 0x0f: 0x000b, 0x10: 0x000b, 0x11: 0x000b, -+ 0x12: 0x000b, 0x13: 0x000b, 0x14: 0x000b, 0x15: 0x000b, 0x16: 0x000b, 0x17: 0x000b, -+ 0x18: 0x000b, 0x19: 0x000b, 0x1a: 0x000b, 0x1b: 0x000b, 0x1c: 0x0007, 0x1d: 0x0007, -+ 0x1e: 0x0007, 0x1f: 0x0008, 0x20: 0x0009, 0x21: 0x000a, 0x22: 0x000a, 0x23: 0x0004, -+ 0x24: 0x0004, 0x25: 0x0004, 0x26: 0x000a, 0x27: 0x000a, 0x28: 0x003a, 0x29: 0x002a, -+ 0x2a: 0x000a, 0x2b: 0x0003, 0x2c: 0x0006, 0x2d: 0x0003, 0x2e: 0x0006, 0x2f: 0x0006, -+ 0x30: 0x0002, 0x31: 0x0002, 0x32: 0x0002, 0x33: 0x0002, 0x34: 0x0002, 0x35: 0x0002, -+ 0x36: 0x0002, 0x37: 0x0002, 0x38: 0x0002, 0x39: 0x0002, 0x3a: 0x0006, 0x3b: 0x000a, -+ 0x3c: 0x000a, 0x3d: 0x000a, 0x3e: 0x000a, 0x3f: 0x000a, -+ // Block 0x1, offset 0x40 -+ 0x40: 0x000a, -+ 0x5b: 0x005a, 0x5c: 0x000a, 0x5d: 0x004a, -+ 0x5e: 0x000a, 0x5f: 0x000a, 0x60: 0x000a, -+ 0x7b: 0x005a, -+ 0x7c: 0x000a, 0x7d: 0x004a, 0x7e: 0x000a, 0x7f: 0x000b, -+ // Block 0x2, offset 0x80 -+ // Block 0x3, offset 0xc0 -+ 0xc0: 0x000b, 0xc1: 0x000b, 0xc2: 0x000b, 0xc3: 0x000b, 0xc4: 0x000b, 0xc5: 0x0007, -+ 0xc6: 0x000b, 0xc7: 0x000b, 0xc8: 0x000b, 0xc9: 0x000b, 0xca: 0x000b, 0xcb: 0x000b, -+ 0xcc: 0x000b, 0xcd: 0x000b, 0xce: 0x000b, 0xcf: 0x000b, 0xd0: 0x000b, 0xd1: 0x000b, -+ 0xd2: 0x000b, 0xd3: 0x000b, 0xd4: 0x000b, 0xd5: 0x000b, 0xd6: 0x000b, 0xd7: 0x000b, -+ 0xd8: 0x000b, 0xd9: 0x000b, 0xda: 0x000b, 0xdb: 0x000b, 0xdc: 0x000b, 0xdd: 0x000b, -+ 0xde: 0x000b, 0xdf: 0x000b, 0xe0: 0x0006, 0xe1: 0x000a, 0xe2: 0x0004, 0xe3: 0x0004, -+ 0xe4: 0x0004, 0xe5: 0x0004, 0xe6: 0x000a, 0xe7: 0x000a, 0xe8: 0x000a, 0xe9: 0x000a, -+ 0xeb: 0x000a, 0xec: 0x000a, 0xed: 0x000b, 0xee: 0x000a, 0xef: 0x000a, -+ 0xf0: 0x0004, 0xf1: 0x0004, 0xf2: 0x0002, 0xf3: 0x0002, 0xf4: 0x000a, -+ 0xf6: 0x000a, 0xf7: 0x000a, 0xf8: 0x000a, 0xf9: 0x0002, 0xfb: 0x000a, -+ 0xfc: 0x000a, 0xfd: 0x000a, 0xfe: 0x000a, 0xff: 0x000a, -+ // Block 0x4, offset 0x100 -+ 0x117: 0x000a, -+ 0x137: 0x000a, -+ // Block 0x5, offset 0x140 -+ 0x179: 0x000a, 0x17a: 0x000a, -+ // Block 0x6, offset 0x180 -+ 0x182: 0x000a, 0x183: 0x000a, 0x184: 0x000a, 0x185: 0x000a, -+ 0x186: 0x000a, 0x187: 0x000a, 0x188: 0x000a, 0x189: 0x000a, 0x18a: 0x000a, 0x18b: 0x000a, -+ 0x18c: 0x000a, 0x18d: 0x000a, 0x18e: 0x000a, 0x18f: 0x000a, -+ 0x192: 0x000a, 0x193: 0x000a, 0x194: 0x000a, 0x195: 0x000a, 0x196: 0x000a, 0x197: 0x000a, -+ 0x198: 0x000a, 0x199: 0x000a, 0x19a: 0x000a, 0x19b: 0x000a, 0x19c: 0x000a, 0x19d: 0x000a, -+ 0x19e: 0x000a, 0x19f: 0x000a, -+ 0x1a5: 0x000a, 0x1a6: 0x000a, 0x1a7: 0x000a, 0x1a8: 0x000a, 0x1a9: 0x000a, -+ 0x1aa: 0x000a, 0x1ab: 0x000a, 0x1ac: 0x000a, 0x1ad: 0x000a, 0x1af: 0x000a, -+ 0x1b0: 0x000a, 0x1b1: 0x000a, 0x1b2: 0x000a, 0x1b3: 0x000a, 0x1b4: 0x000a, 0x1b5: 0x000a, -+ 0x1b6: 0x000a, 0x1b7: 0x000a, 0x1b8: 0x000a, 0x1b9: 0x000a, 0x1ba: 0x000a, 0x1bb: 0x000a, -+ 0x1bc: 0x000a, 0x1bd: 0x000a, 0x1be: 0x000a, 0x1bf: 0x000a, -+ // Block 0x7, offset 0x1c0 -+ 0x1c0: 0x000c, 0x1c1: 0x000c, 0x1c2: 0x000c, 0x1c3: 0x000c, 0x1c4: 0x000c, 0x1c5: 0x000c, -+ 0x1c6: 0x000c, 0x1c7: 0x000c, 0x1c8: 0x000c, 0x1c9: 0x000c, 0x1ca: 0x000c, 0x1cb: 0x000c, -+ 0x1cc: 0x000c, 0x1cd: 0x000c, 0x1ce: 0x000c, 0x1cf: 0x000c, 0x1d0: 0x000c, 0x1d1: 0x000c, -+ 0x1d2: 0x000c, 0x1d3: 0x000c, 0x1d4: 0x000c, 0x1d5: 0x000c, 0x1d6: 0x000c, 0x1d7: 0x000c, -+ 0x1d8: 0x000c, 0x1d9: 0x000c, 0x1da: 0x000c, 0x1db: 0x000c, 0x1dc: 0x000c, 0x1dd: 0x000c, -+ 0x1de: 0x000c, 0x1df: 0x000c, 0x1e0: 0x000c, 0x1e1: 0x000c, 0x1e2: 0x000c, 0x1e3: 0x000c, -+ 0x1e4: 0x000c, 0x1e5: 0x000c, 0x1e6: 0x000c, 0x1e7: 0x000c, 0x1e8: 0x000c, 0x1e9: 0x000c, -+ 0x1ea: 0x000c, 0x1eb: 0x000c, 0x1ec: 0x000c, 0x1ed: 0x000c, 0x1ee: 0x000c, 0x1ef: 0x000c, -+ 0x1f0: 0x000c, 0x1f1: 0x000c, 0x1f2: 0x000c, 0x1f3: 0x000c, 0x1f4: 0x000c, 0x1f5: 0x000c, -+ 0x1f6: 0x000c, 0x1f7: 0x000c, 0x1f8: 0x000c, 0x1f9: 0x000c, 0x1fa: 0x000c, 0x1fb: 0x000c, -+ 0x1fc: 0x000c, 0x1fd: 0x000c, 0x1fe: 0x000c, 0x1ff: 0x000c, -+ // Block 0x8, offset 0x200 -+ 0x200: 0x000c, 0x201: 0x000c, 0x202: 0x000c, 0x203: 0x000c, 0x204: 0x000c, 0x205: 0x000c, -+ 0x206: 0x000c, 0x207: 0x000c, 0x208: 0x000c, 0x209: 0x000c, 0x20a: 0x000c, 0x20b: 0x000c, -+ 0x20c: 0x000c, 0x20d: 0x000c, 0x20e: 0x000c, 0x20f: 0x000c, 0x210: 0x000c, 0x211: 0x000c, -+ 0x212: 0x000c, 0x213: 0x000c, 0x214: 0x000c, 0x215: 0x000c, 0x216: 0x000c, 0x217: 0x000c, -+ 0x218: 0x000c, 0x219: 0x000c, 0x21a: 0x000c, 0x21b: 0x000c, 0x21c: 0x000c, 0x21d: 0x000c, -+ 0x21e: 0x000c, 0x21f: 0x000c, 0x220: 0x000c, 0x221: 0x000c, 0x222: 0x000c, 0x223: 0x000c, -+ 0x224: 0x000c, 0x225: 0x000c, 0x226: 0x000c, 0x227: 0x000c, 0x228: 0x000c, 0x229: 0x000c, -+ 0x22a: 0x000c, 0x22b: 0x000c, 0x22c: 0x000c, 0x22d: 0x000c, 0x22e: 0x000c, 0x22f: 0x000c, -+ 0x234: 0x000a, 0x235: 0x000a, -+ 0x23e: 0x000a, -+ // Block 0x9, offset 0x240 -+ 0x244: 0x000a, 0x245: 0x000a, -+ 0x247: 0x000a, -+ // Block 0xa, offset 0x280 -+ 0x2b6: 0x000a, -+ // Block 0xb, offset 0x2c0 -+ 0x2c3: 0x000c, 0x2c4: 0x000c, 0x2c5: 0x000c, -+ 0x2c6: 0x000c, 0x2c7: 0x000c, 0x2c8: 0x000c, 0x2c9: 0x000c, -+ // Block 0xc, offset 0x300 -+ 0x30a: 0x000a, -+ 0x30d: 0x000a, 0x30e: 0x000a, 0x30f: 0x0004, 0x310: 0x0001, 0x311: 0x000c, -+ 0x312: 0x000c, 0x313: 0x000c, 0x314: 0x000c, 0x315: 0x000c, 0x316: 0x000c, 0x317: 0x000c, -+ 0x318: 0x000c, 0x319: 0x000c, 0x31a: 0x000c, 0x31b: 0x000c, 0x31c: 0x000c, 0x31d: 0x000c, -+ 0x31e: 0x000c, 0x31f: 0x000c, 0x320: 0x000c, 0x321: 0x000c, 0x322: 0x000c, 0x323: 0x000c, -+ 0x324: 0x000c, 0x325: 0x000c, 0x326: 0x000c, 0x327: 0x000c, 0x328: 0x000c, 0x329: 0x000c, -+ 0x32a: 0x000c, 0x32b: 0x000c, 0x32c: 0x000c, 0x32d: 0x000c, 0x32e: 0x000c, 0x32f: 0x000c, -+ 0x330: 0x000c, 0x331: 0x000c, 0x332: 0x000c, 0x333: 0x000c, 0x334: 0x000c, 0x335: 0x000c, -+ 0x336: 0x000c, 0x337: 0x000c, 0x338: 0x000c, 0x339: 0x000c, 0x33a: 0x000c, 0x33b: 0x000c, -+ 0x33c: 0x000c, 0x33d: 0x000c, 0x33e: 0x0001, 0x33f: 0x000c, -+ // Block 0xd, offset 0x340 -+ 0x340: 0x0001, 0x341: 0x000c, 0x342: 0x000c, 0x343: 0x0001, 0x344: 0x000c, 0x345: 0x000c, -+ 0x346: 0x0001, 0x347: 0x000c, 0x348: 0x0001, 0x349: 0x0001, 0x34a: 0x0001, 0x34b: 0x0001, -+ 0x34c: 0x0001, 0x34d: 0x0001, 0x34e: 0x0001, 0x34f: 0x0001, 0x350: 0x0001, 0x351: 0x0001, -+ 0x352: 0x0001, 0x353: 0x0001, 0x354: 0x0001, 0x355: 0x0001, 0x356: 0x0001, 0x357: 0x0001, -+ 0x358: 0x0001, 0x359: 0x0001, 0x35a: 0x0001, 0x35b: 0x0001, 0x35c: 0x0001, 0x35d: 0x0001, -+ 0x35e: 0x0001, 0x35f: 0x0001, 0x360: 0x0001, 0x361: 0x0001, 0x362: 0x0001, 0x363: 0x0001, -+ 0x364: 0x0001, 0x365: 0x0001, 0x366: 0x0001, 0x367: 0x0001, 0x368: 0x0001, 0x369: 0x0001, -+ 0x36a: 0x0001, 0x36b: 0x0001, 0x36c: 0x0001, 0x36d: 0x0001, 0x36e: 0x0001, 0x36f: 0x0001, -+ 0x370: 0x0001, 0x371: 0x0001, 0x372: 0x0001, 0x373: 0x0001, 0x374: 0x0001, 0x375: 0x0001, -+ 0x376: 0x0001, 0x377: 0x0001, 0x378: 0x0001, 0x379: 0x0001, 0x37a: 0x0001, 0x37b: 0x0001, -+ 0x37c: 0x0001, 0x37d: 0x0001, 0x37e: 0x0001, 0x37f: 0x0001, -+ // Block 0xe, offset 0x380 -+ 0x380: 0x0005, 0x381: 0x0005, 0x382: 0x0005, 0x383: 0x0005, 0x384: 0x0005, 0x385: 0x0005, -+ 0x386: 0x000a, 0x387: 0x000a, 0x388: 0x000d, 0x389: 0x0004, 0x38a: 0x0004, 0x38b: 0x000d, -+ 0x38c: 0x0006, 0x38d: 0x000d, 0x38e: 0x000a, 0x38f: 0x000a, 0x390: 0x000c, 0x391: 0x000c, -+ 0x392: 0x000c, 0x393: 0x000c, 0x394: 0x000c, 0x395: 0x000c, 0x396: 0x000c, 0x397: 0x000c, -+ 0x398: 0x000c, 0x399: 0x000c, 0x39a: 0x000c, 0x39b: 0x000d, 0x39c: 0x000d, 0x39d: 0x000d, -+ 0x39e: 0x000d, 0x39f: 0x000d, 0x3a0: 0x000d, 0x3a1: 0x000d, 0x3a2: 0x000d, 0x3a3: 0x000d, -+ 0x3a4: 0x000d, 0x3a5: 0x000d, 0x3a6: 0x000d, 0x3a7: 0x000d, 0x3a8: 0x000d, 0x3a9: 0x000d, -+ 0x3aa: 0x000d, 0x3ab: 0x000d, 0x3ac: 0x000d, 0x3ad: 0x000d, 0x3ae: 0x000d, 0x3af: 0x000d, -+ 0x3b0: 0x000d, 0x3b1: 0x000d, 0x3b2: 0x000d, 0x3b3: 0x000d, 0x3b4: 0x000d, 0x3b5: 0x000d, -+ 0x3b6: 0x000d, 0x3b7: 0x000d, 0x3b8: 0x000d, 0x3b9: 0x000d, 0x3ba: 0x000d, 0x3bb: 0x000d, -+ 0x3bc: 0x000d, 0x3bd: 0x000d, 0x3be: 0x000d, 0x3bf: 0x000d, -+ // Block 0xf, offset 0x3c0 -+ 0x3c0: 0x000d, 0x3c1: 0x000d, 0x3c2: 0x000d, 0x3c3: 0x000d, 0x3c4: 0x000d, 0x3c5: 0x000d, -+ 0x3c6: 0x000d, 0x3c7: 0x000d, 0x3c8: 0x000d, 0x3c9: 0x000d, 0x3ca: 0x000d, 0x3cb: 0x000c, -+ 0x3cc: 0x000c, 0x3cd: 0x000c, 0x3ce: 0x000c, 0x3cf: 0x000c, 0x3d0: 0x000c, 0x3d1: 0x000c, -+ 0x3d2: 0x000c, 0x3d3: 0x000c, 0x3d4: 0x000c, 0x3d5: 0x000c, 0x3d6: 0x000c, 0x3d7: 0x000c, -+ 0x3d8: 0x000c, 0x3d9: 0x000c, 0x3da: 0x000c, 0x3db: 0x000c, 0x3dc: 0x000c, 0x3dd: 0x000c, -+ 0x3de: 0x000c, 0x3df: 0x000c, 0x3e0: 0x0005, 0x3e1: 0x0005, 0x3e2: 0x0005, 0x3e3: 0x0005, -+ 0x3e4: 0x0005, 0x3e5: 0x0005, 0x3e6: 0x0005, 0x3e7: 0x0005, 0x3e8: 0x0005, 0x3e9: 0x0005, -+ 0x3ea: 0x0004, 0x3eb: 0x0005, 0x3ec: 0x0005, 0x3ed: 0x000d, 0x3ee: 0x000d, 0x3ef: 0x000d, -+ 0x3f0: 0x000c, 0x3f1: 0x000d, 0x3f2: 0x000d, 0x3f3: 0x000d, 0x3f4: 0x000d, 0x3f5: 0x000d, -+ 0x3f6: 0x000d, 0x3f7: 0x000d, 0x3f8: 0x000d, 0x3f9: 0x000d, 0x3fa: 0x000d, 0x3fb: 0x000d, -+ 0x3fc: 0x000d, 0x3fd: 0x000d, 0x3fe: 0x000d, 0x3ff: 0x000d, -+ // Block 0x10, offset 0x400 -+ 0x400: 0x000d, 0x401: 0x000d, 0x402: 0x000d, 0x403: 0x000d, 0x404: 0x000d, 0x405: 0x000d, -+ 0x406: 0x000d, 0x407: 0x000d, 0x408: 0x000d, 0x409: 0x000d, 0x40a: 0x000d, 0x40b: 0x000d, -+ 0x40c: 0x000d, 0x40d: 0x000d, 0x40e: 0x000d, 0x40f: 0x000d, 0x410: 0x000d, 0x411: 0x000d, -+ 0x412: 0x000d, 0x413: 0x000d, 0x414: 0x000d, 0x415: 0x000d, 0x416: 0x000d, 0x417: 0x000d, -+ 0x418: 0x000d, 0x419: 0x000d, 0x41a: 0x000d, 0x41b: 0x000d, 0x41c: 0x000d, 0x41d: 0x000d, -+ 0x41e: 0x000d, 0x41f: 0x000d, 0x420: 0x000d, 0x421: 0x000d, 0x422: 0x000d, 0x423: 0x000d, -+ 0x424: 0x000d, 0x425: 0x000d, 0x426: 0x000d, 0x427: 0x000d, 0x428: 0x000d, 0x429: 0x000d, -+ 0x42a: 0x000d, 0x42b: 0x000d, 0x42c: 0x000d, 0x42d: 0x000d, 0x42e: 0x000d, 0x42f: 0x000d, -+ 0x430: 0x000d, 0x431: 0x000d, 0x432: 0x000d, 0x433: 0x000d, 0x434: 0x000d, 0x435: 0x000d, -+ 0x436: 0x000d, 0x437: 0x000d, 0x438: 0x000d, 0x439: 0x000d, 0x43a: 0x000d, 0x43b: 0x000d, -+ 0x43c: 0x000d, 0x43d: 0x000d, 0x43e: 0x000d, 0x43f: 0x000d, -+ // Block 0x11, offset 0x440 -+ 0x440: 0x000d, 0x441: 0x000d, 0x442: 0x000d, 0x443: 0x000d, 0x444: 0x000d, 0x445: 0x000d, -+ 0x446: 0x000d, 0x447: 0x000d, 0x448: 0x000d, 0x449: 0x000d, 0x44a: 0x000d, 0x44b: 0x000d, -+ 0x44c: 0x000d, 0x44d: 0x000d, 0x44e: 0x000d, 0x44f: 0x000d, 0x450: 0x000d, 0x451: 0x000d, -+ 0x452: 0x000d, 0x453: 0x000d, 0x454: 0x000d, 0x455: 0x000d, 0x456: 0x000c, 0x457: 0x000c, -+ 0x458: 0x000c, 0x459: 0x000c, 0x45a: 0x000c, 0x45b: 0x000c, 0x45c: 0x000c, 0x45d: 0x0005, -+ 0x45e: 0x000a, 0x45f: 0x000c, 0x460: 0x000c, 0x461: 0x000c, 0x462: 0x000c, 0x463: 0x000c, -+ 0x464: 0x000c, 0x465: 0x000d, 0x466: 0x000d, 0x467: 0x000c, 0x468: 0x000c, 0x469: 0x000a, -+ 0x46a: 0x000c, 0x46b: 0x000c, 0x46c: 0x000c, 0x46d: 0x000c, 0x46e: 0x000d, 0x46f: 0x000d, -+ 0x470: 0x0002, 0x471: 0x0002, 0x472: 0x0002, 0x473: 0x0002, 0x474: 0x0002, 0x475: 0x0002, -+ 0x476: 0x0002, 0x477: 0x0002, 0x478: 0x0002, 0x479: 0x0002, 0x47a: 0x000d, 0x47b: 0x000d, -+ 0x47c: 0x000d, 0x47d: 0x000d, 0x47e: 0x000d, 0x47f: 0x000d, -+ // Block 0x12, offset 0x480 -+ 0x480: 0x000d, 0x481: 0x000d, 0x482: 0x000d, 0x483: 0x000d, 0x484: 0x000d, 0x485: 0x000d, -+ 0x486: 0x000d, 0x487: 0x000d, 0x488: 0x000d, 0x489: 0x000d, 0x48a: 0x000d, 0x48b: 0x000d, -+ 0x48c: 0x000d, 0x48d: 0x000d, 0x48e: 0x000d, 0x48f: 0x000d, 0x490: 0x000d, 0x491: 0x000c, -+ 0x492: 0x000d, 0x493: 0x000d, 0x494: 0x000d, 0x495: 0x000d, 0x496: 0x000d, 0x497: 0x000d, -+ 0x498: 0x000d, 0x499: 0x000d, 0x49a: 0x000d, 0x49b: 0x000d, 0x49c: 0x000d, 0x49d: 0x000d, -+ 0x49e: 0x000d, 0x49f: 0x000d, 0x4a0: 0x000d, 0x4a1: 0x000d, 0x4a2: 0x000d, 0x4a3: 0x000d, -+ 0x4a4: 0x000d, 0x4a5: 0x000d, 0x4a6: 0x000d, 0x4a7: 0x000d, 0x4a8: 0x000d, 0x4a9: 0x000d, -+ 0x4aa: 0x000d, 0x4ab: 0x000d, 0x4ac: 0x000d, 0x4ad: 0x000d, 0x4ae: 0x000d, 0x4af: 0x000d, -+ 0x4b0: 0x000c, 0x4b1: 0x000c, 0x4b2: 0x000c, 0x4b3: 0x000c, 0x4b4: 0x000c, 0x4b5: 0x000c, -+ 0x4b6: 0x000c, 0x4b7: 0x000c, 0x4b8: 0x000c, 0x4b9: 0x000c, 0x4ba: 0x000c, 0x4bb: 0x000c, -+ 0x4bc: 0x000c, 0x4bd: 0x000c, 0x4be: 0x000c, 0x4bf: 0x000c, -+ // Block 0x13, offset 0x4c0 -+ 0x4c0: 0x000c, 0x4c1: 0x000c, 0x4c2: 0x000c, 0x4c3: 0x000c, 0x4c4: 0x000c, 0x4c5: 0x000c, -+ 0x4c6: 0x000c, 0x4c7: 0x000c, 0x4c8: 0x000c, 0x4c9: 0x000c, 0x4ca: 0x000c, 0x4cb: 0x000d, -+ 0x4cc: 0x000d, 0x4cd: 0x000d, 0x4ce: 0x000d, 0x4cf: 0x000d, 0x4d0: 0x000d, 0x4d1: 0x000d, -+ 0x4d2: 0x000d, 0x4d3: 0x000d, 0x4d4: 0x000d, 0x4d5: 0x000d, 0x4d6: 0x000d, 0x4d7: 0x000d, -+ 0x4d8: 0x000d, 0x4d9: 0x000d, 0x4da: 0x000d, 0x4db: 0x000d, 0x4dc: 0x000d, 0x4dd: 0x000d, -+ 0x4de: 0x000d, 0x4df: 0x000d, 0x4e0: 0x000d, 0x4e1: 0x000d, 0x4e2: 0x000d, 0x4e3: 0x000d, -+ 0x4e4: 0x000d, 0x4e5: 0x000d, 0x4e6: 0x000d, 0x4e7: 0x000d, 0x4e8: 0x000d, 0x4e9: 0x000d, -+ 0x4ea: 0x000d, 0x4eb: 0x000d, 0x4ec: 0x000d, 0x4ed: 0x000d, 0x4ee: 0x000d, 0x4ef: 0x000d, -+ 0x4f0: 0x000d, 0x4f1: 0x000d, 0x4f2: 0x000d, 0x4f3: 0x000d, 0x4f4: 0x000d, 0x4f5: 0x000d, -+ 0x4f6: 0x000d, 0x4f7: 0x000d, 0x4f8: 0x000d, 0x4f9: 0x000d, 0x4fa: 0x000d, 0x4fb: 0x000d, -+ 0x4fc: 0x000d, 0x4fd: 0x000d, 0x4fe: 0x000d, 0x4ff: 0x000d, -+ // Block 0x14, offset 0x500 -+ 0x500: 0x000d, 0x501: 0x000d, 0x502: 0x000d, 0x503: 0x000d, 0x504: 0x000d, 0x505: 0x000d, -+ 0x506: 0x000d, 0x507: 0x000d, 0x508: 0x000d, 0x509: 0x000d, 0x50a: 0x000d, 0x50b: 0x000d, -+ 0x50c: 0x000d, 0x50d: 0x000d, 0x50e: 0x000d, 0x50f: 0x000d, 0x510: 0x000d, 0x511: 0x000d, -+ 0x512: 0x000d, 0x513: 0x000d, 0x514: 0x000d, 0x515: 0x000d, 0x516: 0x000d, 0x517: 0x000d, -+ 0x518: 0x000d, 0x519: 0x000d, 0x51a: 0x000d, 0x51b: 0x000d, 0x51c: 0x000d, 0x51d: 0x000d, -+ 0x51e: 0x000d, 0x51f: 0x000d, 0x520: 0x000d, 0x521: 0x000d, 0x522: 0x000d, 0x523: 0x000d, -+ 0x524: 0x000d, 0x525: 0x000d, 0x526: 0x000c, 0x527: 0x000c, 0x528: 0x000c, 0x529: 0x000c, -+ 0x52a: 0x000c, 0x52b: 0x000c, 0x52c: 0x000c, 0x52d: 0x000c, 0x52e: 0x000c, 0x52f: 0x000c, -+ 0x530: 0x000c, 0x531: 0x000d, 0x532: 0x000d, 0x533: 0x000d, 0x534: 0x000d, 0x535: 0x000d, -+ 0x536: 0x000d, 0x537: 0x000d, 0x538: 0x000d, 0x539: 0x000d, 0x53a: 0x000d, 0x53b: 0x000d, -+ 0x53c: 0x000d, 0x53d: 0x000d, 0x53e: 0x000d, 0x53f: 0x000d, -+ // Block 0x15, offset 0x540 -+ 0x540: 0x0001, 0x541: 0x0001, 0x542: 0x0001, 0x543: 0x0001, 0x544: 0x0001, 0x545: 0x0001, -+ 0x546: 0x0001, 0x547: 0x0001, 0x548: 0x0001, 0x549: 0x0001, 0x54a: 0x0001, 0x54b: 0x0001, -+ 0x54c: 0x0001, 0x54d: 0x0001, 0x54e: 0x0001, 0x54f: 0x0001, 0x550: 0x0001, 0x551: 0x0001, -+ 0x552: 0x0001, 0x553: 0x0001, 0x554: 0x0001, 0x555: 0x0001, 0x556: 0x0001, 0x557: 0x0001, -+ 0x558: 0x0001, 0x559: 0x0001, 0x55a: 0x0001, 0x55b: 0x0001, 0x55c: 0x0001, 0x55d: 0x0001, -+ 0x55e: 0x0001, 0x55f: 0x0001, 0x560: 0x0001, 0x561: 0x0001, 0x562: 0x0001, 0x563: 0x0001, -+ 0x564: 0x0001, 0x565: 0x0001, 0x566: 0x0001, 0x567: 0x0001, 0x568: 0x0001, 0x569: 0x0001, -+ 0x56a: 0x0001, 0x56b: 0x000c, 0x56c: 0x000c, 0x56d: 0x000c, 0x56e: 0x000c, 0x56f: 0x000c, -+ 0x570: 0x000c, 0x571: 0x000c, 0x572: 0x000c, 0x573: 0x000c, 0x574: 0x0001, 0x575: 0x0001, -+ 0x576: 0x000a, 0x577: 0x000a, 0x578: 0x000a, 0x579: 0x000a, 0x57a: 0x0001, 0x57b: 0x0001, -+ 0x57c: 0x0001, 0x57d: 0x000c, 0x57e: 0x0001, 0x57f: 0x0001, -+ // Block 0x16, offset 0x580 -+ 0x580: 0x0001, 0x581: 0x0001, 0x582: 0x0001, 0x583: 0x0001, 0x584: 0x0001, 0x585: 0x0001, -+ 0x586: 0x0001, 0x587: 0x0001, 0x588: 0x0001, 0x589: 0x0001, 0x58a: 0x0001, 0x58b: 0x0001, -+ 0x58c: 0x0001, 0x58d: 0x0001, 0x58e: 0x0001, 0x58f: 0x0001, 0x590: 0x0001, 0x591: 0x0001, -+ 0x592: 0x0001, 0x593: 0x0001, 0x594: 0x0001, 0x595: 0x0001, 0x596: 0x000c, 0x597: 0x000c, -+ 0x598: 0x000c, 0x599: 0x000c, 0x59a: 0x0001, 0x59b: 0x000c, 0x59c: 0x000c, 0x59d: 0x000c, -+ 0x59e: 0x000c, 0x59f: 0x000c, 0x5a0: 0x000c, 0x5a1: 0x000c, 0x5a2: 0x000c, 0x5a3: 0x000c, -+ 0x5a4: 0x0001, 0x5a5: 0x000c, 0x5a6: 0x000c, 0x5a7: 0x000c, 0x5a8: 0x0001, 0x5a9: 0x000c, -+ 0x5aa: 0x000c, 0x5ab: 0x000c, 0x5ac: 0x000c, 0x5ad: 0x000c, 0x5ae: 0x0001, 0x5af: 0x0001, -+ 0x5b0: 0x0001, 0x5b1: 0x0001, 0x5b2: 0x0001, 0x5b3: 0x0001, 0x5b4: 0x0001, 0x5b5: 0x0001, -+ 0x5b6: 0x0001, 0x5b7: 0x0001, 0x5b8: 0x0001, 0x5b9: 0x0001, 0x5ba: 0x0001, 0x5bb: 0x0001, -+ 0x5bc: 0x0001, 0x5bd: 0x0001, 0x5be: 0x0001, 0x5bf: 0x0001, -+ // Block 0x17, offset 0x5c0 -+ 0x5c0: 0x0001, 0x5c1: 0x0001, 0x5c2: 0x0001, 0x5c3: 0x0001, 0x5c4: 0x0001, 0x5c5: 0x0001, -+ 0x5c6: 0x0001, 0x5c7: 0x0001, 0x5c8: 0x0001, 0x5c9: 0x0001, 0x5ca: 0x0001, 0x5cb: 0x0001, -+ 0x5cc: 0x0001, 0x5cd: 0x0001, 0x5ce: 0x0001, 0x5cf: 0x0001, 0x5d0: 0x0001, 0x5d1: 0x0001, -+ 0x5d2: 0x0001, 0x5d3: 0x0001, 0x5d4: 0x0001, 0x5d5: 0x0001, 0x5d6: 0x0001, 0x5d7: 0x0001, -+ 0x5d8: 0x0001, 0x5d9: 0x000c, 0x5da: 0x000c, 0x5db: 0x000c, 0x5dc: 0x0001, 0x5dd: 0x0001, -+ 0x5de: 0x0001, 0x5df: 0x0001, 0x5e0: 0x000d, 0x5e1: 0x000d, 0x5e2: 0x000d, 0x5e3: 0x000d, -+ 0x5e4: 0x000d, 0x5e5: 0x000d, 0x5e6: 0x000d, 0x5e7: 0x000d, 0x5e8: 0x000d, 0x5e9: 0x000d, -+ 0x5ea: 0x000d, 0x5eb: 0x000d, 0x5ec: 0x000d, 0x5ed: 0x000d, 0x5ee: 0x000d, 0x5ef: 0x000d, -+ 0x5f0: 0x0001, 0x5f1: 0x0001, 0x5f2: 0x0001, 0x5f3: 0x0001, 0x5f4: 0x0001, 0x5f5: 0x0001, -+ 0x5f6: 0x0001, 0x5f7: 0x0001, 0x5f8: 0x0001, 0x5f9: 0x0001, 0x5fa: 0x0001, 0x5fb: 0x0001, -+ 0x5fc: 0x0001, 0x5fd: 0x0001, 0x5fe: 0x0001, 0x5ff: 0x0001, -+ // Block 0x18, offset 0x600 -+ 0x600: 0x0001, 0x601: 0x0001, 0x602: 0x0001, 0x603: 0x0001, 0x604: 0x0001, 0x605: 0x0001, -+ 0x606: 0x0001, 0x607: 0x0001, 0x608: 0x0001, 0x609: 0x0001, 0x60a: 0x0001, 0x60b: 0x0001, -+ 0x60c: 0x0001, 0x60d: 0x0001, 0x60e: 0x0001, 0x60f: 0x0001, 0x610: 0x0001, 0x611: 0x0001, -+ 0x612: 0x0001, 0x613: 0x0001, 0x614: 0x0001, 0x615: 0x0001, 0x616: 0x0001, 0x617: 0x0001, -+ 0x618: 0x0001, 0x619: 0x0001, 0x61a: 0x0001, 0x61b: 0x0001, 0x61c: 0x0001, 0x61d: 0x0001, -+ 0x61e: 0x0001, 0x61f: 0x0001, 0x620: 0x000d, 0x621: 0x000d, 0x622: 0x000d, 0x623: 0x000d, -+ 0x624: 0x000d, 0x625: 0x000d, 0x626: 0x000d, 0x627: 0x000d, 0x628: 0x000d, 0x629: 0x000d, -+ 0x62a: 0x000d, 0x62b: 0x000d, 0x62c: 0x000d, 0x62d: 0x000d, 0x62e: 0x000d, 0x62f: 0x000d, -+ 0x630: 0x000d, 0x631: 0x000d, 0x632: 0x000d, 0x633: 0x000d, 0x634: 0x000d, 0x635: 0x000d, -+ 0x636: 0x000d, 0x637: 0x000d, 0x638: 0x000d, 0x639: 0x000d, 0x63a: 0x000d, 0x63b: 0x000d, -+ 0x63c: 0x000d, 0x63d: 0x000d, 0x63e: 0x000d, 0x63f: 0x000d, -+ // Block 0x19, offset 0x640 -+ 0x640: 0x000d, 0x641: 0x000d, 0x642: 0x000d, 0x643: 0x000d, 0x644: 0x000d, 0x645: 0x000d, -+ 0x646: 0x000d, 0x647: 0x000d, 0x648: 0x000d, 0x649: 0x000d, 0x64a: 0x000d, 0x64b: 0x000d, -+ 0x64c: 0x000d, 0x64d: 0x000d, 0x64e: 0x000d, 0x64f: 0x000d, 0x650: 0x000d, 0x651: 0x000d, -+ 0x652: 0x000d, 0x653: 0x000c, 0x654: 0x000c, 0x655: 0x000c, 0x656: 0x000c, 0x657: 0x000c, -+ 0x658: 0x000c, 0x659: 0x000c, 0x65a: 0x000c, 0x65b: 0x000c, 0x65c: 0x000c, 0x65d: 0x000c, -+ 0x65e: 0x000c, 0x65f: 0x000c, 0x660: 0x000c, 0x661: 0x000c, 0x662: 0x0005, 0x663: 0x000c, -+ 0x664: 0x000c, 0x665: 0x000c, 0x666: 0x000c, 0x667: 0x000c, 0x668: 0x000c, 0x669: 0x000c, -+ 0x66a: 0x000c, 0x66b: 0x000c, 0x66c: 0x000c, 0x66d: 0x000c, 0x66e: 0x000c, 0x66f: 0x000c, -+ 0x670: 0x000c, 0x671: 0x000c, 0x672: 0x000c, 0x673: 0x000c, 0x674: 0x000c, 0x675: 0x000c, -+ 0x676: 0x000c, 0x677: 0x000c, 0x678: 0x000c, 0x679: 0x000c, 0x67a: 0x000c, 0x67b: 0x000c, -+ 0x67c: 0x000c, 0x67d: 0x000c, 0x67e: 0x000c, 0x67f: 0x000c, -+ // Block 0x1a, offset 0x680 -+ 0x680: 0x000c, 0x681: 0x000c, 0x682: 0x000c, -+ 0x6ba: 0x000c, -+ 0x6bc: 0x000c, -+ // Block 0x1b, offset 0x6c0 -+ 0x6c1: 0x000c, 0x6c2: 0x000c, 0x6c3: 0x000c, 0x6c4: 0x000c, 0x6c5: 0x000c, -+ 0x6c6: 0x000c, 0x6c7: 0x000c, 0x6c8: 0x000c, -+ 0x6cd: 0x000c, 0x6d1: 0x000c, -+ 0x6d2: 0x000c, 0x6d3: 0x000c, 0x6d4: 0x000c, 0x6d5: 0x000c, 0x6d6: 0x000c, 0x6d7: 0x000c, -+ 0x6e2: 0x000c, 0x6e3: 0x000c, -+ // Block 0x1c, offset 0x700 -+ 0x701: 0x000c, -+ 0x73c: 0x000c, -+ // Block 0x1d, offset 0x740 -+ 0x741: 0x000c, 0x742: 0x000c, 0x743: 0x000c, 0x744: 0x000c, -+ 0x74d: 0x000c, -+ 0x762: 0x000c, 0x763: 0x000c, -+ 0x772: 0x0004, 0x773: 0x0004, -+ 0x77b: 0x0004, -+ 0x77e: 0x000c, -+ // Block 0x1e, offset 0x780 -+ 0x781: 0x000c, 0x782: 0x000c, -+ 0x7bc: 0x000c, -+ // Block 0x1f, offset 0x7c0 -+ 0x7c1: 0x000c, 0x7c2: 0x000c, -+ 0x7c7: 0x000c, 0x7c8: 0x000c, 0x7cb: 0x000c, -+ 0x7cc: 0x000c, 0x7cd: 0x000c, 0x7d1: 0x000c, -+ 0x7f0: 0x000c, 0x7f1: 0x000c, 0x7f5: 0x000c, -+ // Block 0x20, offset 0x800 -+ 0x801: 0x000c, 0x802: 0x000c, 0x803: 0x000c, 0x804: 0x000c, 0x805: 0x000c, -+ 0x807: 0x000c, 0x808: 0x000c, -+ 0x80d: 0x000c, -+ 0x822: 0x000c, 0x823: 0x000c, -+ 0x831: 0x0004, -+ 0x83a: 0x000c, 0x83b: 0x000c, -+ 0x83c: 0x000c, 0x83d: 0x000c, 0x83e: 0x000c, 0x83f: 0x000c, -+ // Block 0x21, offset 0x840 -+ 0x841: 0x000c, -+ 0x87c: 0x000c, 0x87f: 0x000c, -+ // Block 0x22, offset 0x880 -+ 0x881: 0x000c, 0x882: 0x000c, 0x883: 0x000c, 0x884: 0x000c, -+ 0x88d: 0x000c, -+ 0x896: 0x000c, -+ 0x8a2: 0x000c, 0x8a3: 0x000c, -+ // Block 0x23, offset 0x8c0 -+ 0x8c2: 0x000c, -+ // Block 0x24, offset 0x900 -+ 0x900: 0x000c, -+ 0x90d: 0x000c, -+ 0x933: 0x000a, 0x934: 0x000a, 0x935: 0x000a, -+ 0x936: 0x000a, 0x937: 0x000a, 0x938: 0x000a, 0x939: 0x0004, 0x93a: 0x000a, -+ // Block 0x25, offset 0x940 -+ 0x940: 0x000c, 0x944: 0x000c, -+ 0x97e: 0x000c, 0x97f: 0x000c, -+ // Block 0x26, offset 0x980 -+ 0x980: 0x000c, -+ 0x986: 0x000c, 0x987: 0x000c, 0x988: 0x000c, 0x98a: 0x000c, 0x98b: 0x000c, -+ 0x98c: 0x000c, 0x98d: 0x000c, -+ 0x995: 0x000c, 0x996: 0x000c, -+ 0x9a2: 0x000c, 0x9a3: 0x000c, -+ 0x9b8: 0x000a, 0x9b9: 0x000a, 0x9ba: 0x000a, 0x9bb: 0x000a, -+ 0x9bc: 0x000a, 0x9bd: 0x000a, 0x9be: 0x000a, -+ // Block 0x27, offset 0x9c0 -+ 0x9cc: 0x000c, 0x9cd: 0x000c, -+ 0x9e2: 0x000c, 0x9e3: 0x000c, -+ // Block 0x28, offset 0xa00 -+ 0xa00: 0x000c, 0xa01: 0x000c, -+ 0xa3b: 0x000c, -+ 0xa3c: 0x000c, -+ // Block 0x29, offset 0xa40 -+ 0xa41: 0x000c, 0xa42: 0x000c, 0xa43: 0x000c, 0xa44: 0x000c, -+ 0xa4d: 0x000c, -+ 0xa62: 0x000c, 0xa63: 0x000c, -+ // Block 0x2a, offset 0xa80 -+ 0xa8a: 0x000c, -+ 0xa92: 0x000c, 0xa93: 0x000c, 0xa94: 0x000c, 0xa96: 0x000c, -+ // Block 0x2b, offset 0xac0 -+ 0xaf1: 0x000c, 0xaf4: 0x000c, 0xaf5: 0x000c, -+ 0xaf6: 0x000c, 0xaf7: 0x000c, 0xaf8: 0x000c, 0xaf9: 0x000c, 0xafa: 0x000c, -+ 0xaff: 0x0004, -+ // Block 0x2c, offset 0xb00 -+ 0xb07: 0x000c, 0xb08: 0x000c, 0xb09: 0x000c, 0xb0a: 0x000c, 0xb0b: 0x000c, -+ 0xb0c: 0x000c, 0xb0d: 0x000c, 0xb0e: 0x000c, -+ // Block 0x2d, offset 0xb40 -+ 0xb71: 0x000c, 0xb74: 0x000c, 0xb75: 0x000c, -+ 0xb76: 0x000c, 0xb77: 0x000c, 0xb78: 0x000c, 0xb79: 0x000c, 0xb7a: 0x000c, 0xb7b: 0x000c, -+ 0xb7c: 0x000c, -+ // Block 0x2e, offset 0xb80 -+ 0xb88: 0x000c, 0xb89: 0x000c, 0xb8a: 0x000c, 0xb8b: 0x000c, -+ 0xb8c: 0x000c, 0xb8d: 0x000c, -+ // Block 0x2f, offset 0xbc0 -+ 0xbd8: 0x000c, 0xbd9: 0x000c, -+ 0xbf5: 0x000c, -+ 0xbf7: 0x000c, 0xbf9: 0x000c, 0xbfa: 0x003a, 0xbfb: 0x002a, -+ 0xbfc: 0x003a, 0xbfd: 0x002a, -+ // Block 0x30, offset 0xc00 -+ 0xc31: 0x000c, 0xc32: 0x000c, 0xc33: 0x000c, 0xc34: 0x000c, 0xc35: 0x000c, -+ 0xc36: 0x000c, 0xc37: 0x000c, 0xc38: 0x000c, 0xc39: 0x000c, 0xc3a: 0x000c, 0xc3b: 0x000c, -+ 0xc3c: 0x000c, 0xc3d: 0x000c, 0xc3e: 0x000c, -+ // Block 0x31, offset 0xc40 -+ 0xc40: 0x000c, 0xc41: 0x000c, 0xc42: 0x000c, 0xc43: 0x000c, 0xc44: 0x000c, -+ 0xc46: 0x000c, 0xc47: 0x000c, -+ 0xc4d: 0x000c, 0xc4e: 0x000c, 0xc4f: 0x000c, 0xc50: 0x000c, 0xc51: 0x000c, -+ 0xc52: 0x000c, 0xc53: 0x000c, 0xc54: 0x000c, 0xc55: 0x000c, 0xc56: 0x000c, 0xc57: 0x000c, -+ 0xc59: 0x000c, 0xc5a: 0x000c, 0xc5b: 0x000c, 0xc5c: 0x000c, 0xc5d: 0x000c, -+ 0xc5e: 0x000c, 0xc5f: 0x000c, 0xc60: 0x000c, 0xc61: 0x000c, 0xc62: 0x000c, 0xc63: 0x000c, -+ 0xc64: 0x000c, 0xc65: 0x000c, 0xc66: 0x000c, 0xc67: 0x000c, 0xc68: 0x000c, 0xc69: 0x000c, -+ 0xc6a: 0x000c, 0xc6b: 0x000c, 0xc6c: 0x000c, 0xc6d: 0x000c, 0xc6e: 0x000c, 0xc6f: 0x000c, -+ 0xc70: 0x000c, 0xc71: 0x000c, 0xc72: 0x000c, 0xc73: 0x000c, 0xc74: 0x000c, 0xc75: 0x000c, -+ 0xc76: 0x000c, 0xc77: 0x000c, 0xc78: 0x000c, 0xc79: 0x000c, 0xc7a: 0x000c, 0xc7b: 0x000c, -+ 0xc7c: 0x000c, -+ // Block 0x32, offset 0xc80 -+ 0xc86: 0x000c, -+ // Block 0x33, offset 0xcc0 -+ 0xced: 0x000c, 0xcee: 0x000c, 0xcef: 0x000c, -+ 0xcf0: 0x000c, 0xcf2: 0x000c, 0xcf3: 0x000c, 0xcf4: 0x000c, 0xcf5: 0x000c, -+ 0xcf6: 0x000c, 0xcf7: 0x000c, 0xcf9: 0x000c, 0xcfa: 0x000c, -+ 0xcfd: 0x000c, 0xcfe: 0x000c, -+ // Block 0x34, offset 0xd00 -+ 0xd18: 0x000c, 0xd19: 0x000c, -+ 0xd1e: 0x000c, 0xd1f: 0x000c, 0xd20: 0x000c, -+ 0xd31: 0x000c, 0xd32: 0x000c, 0xd33: 0x000c, 0xd34: 0x000c, -+ // Block 0x35, offset 0xd40 -+ 0xd42: 0x000c, 0xd45: 0x000c, -+ 0xd46: 0x000c, -+ 0xd4d: 0x000c, -+ 0xd5d: 0x000c, -+ // Block 0x36, offset 0xd80 -+ 0xd9d: 0x000c, -+ 0xd9e: 0x000c, 0xd9f: 0x000c, -+ // Block 0x37, offset 0xdc0 -+ 0xdd0: 0x000a, 0xdd1: 0x000a, -+ 0xdd2: 0x000a, 0xdd3: 0x000a, 0xdd4: 0x000a, 0xdd5: 0x000a, 0xdd6: 0x000a, 0xdd7: 0x000a, -+ 0xdd8: 0x000a, 0xdd9: 0x000a, -+ // Block 0x38, offset 0xe00 -+ 0xe00: 0x000a, -+ // Block 0x39, offset 0xe40 -+ 0xe40: 0x0009, -+ 0xe5b: 0x007a, 0xe5c: 0x006a, -+ // Block 0x3a, offset 0xe80 -+ 0xe92: 0x000c, 0xe93: 0x000c, 0xe94: 0x000c, -+ 0xeb2: 0x000c, 0xeb3: 0x000c, 0xeb4: 0x000c, -+ // Block 0x3b, offset 0xec0 -+ 0xed2: 0x000c, 0xed3: 0x000c, -+ 0xef2: 0x000c, 0xef3: 0x000c, -+ // Block 0x3c, offset 0xf00 -+ 0xf34: 0x000c, 0xf35: 0x000c, -+ 0xf37: 0x000c, 0xf38: 0x000c, 0xf39: 0x000c, 0xf3a: 0x000c, 0xf3b: 0x000c, -+ 0xf3c: 0x000c, 0xf3d: 0x000c, -+ // Block 0x3d, offset 0xf40 -+ 0xf46: 0x000c, 0xf49: 0x000c, 0xf4a: 0x000c, 0xf4b: 0x000c, -+ 0xf4c: 0x000c, 0xf4d: 0x000c, 0xf4e: 0x000c, 0xf4f: 0x000c, 0xf50: 0x000c, 0xf51: 0x000c, -+ 0xf52: 0x000c, 0xf53: 0x000c, -+ 0xf5b: 0x0004, 0xf5d: 0x000c, -+ 0xf70: 0x000a, 0xf71: 0x000a, 0xf72: 0x000a, 0xf73: 0x000a, 0xf74: 0x000a, 0xf75: 0x000a, -+ 0xf76: 0x000a, 0xf77: 0x000a, 0xf78: 0x000a, 0xf79: 0x000a, -+ // Block 0x3e, offset 0xf80 -+ 0xf80: 0x000a, 0xf81: 0x000a, 0xf82: 0x000a, 0xf83: 0x000a, 0xf84: 0x000a, 0xf85: 0x000a, -+ 0xf86: 0x000a, 0xf87: 0x000a, 0xf88: 0x000a, 0xf89: 0x000a, 0xf8a: 0x000a, 0xf8b: 0x000c, -+ 0xf8c: 0x000c, 0xf8d: 0x000c, 0xf8e: 0x000b, -+ // Block 0x3f, offset 0xfc0 -+ 0xfc5: 0x000c, -+ 0xfc6: 0x000c, -+ 0xfe9: 0x000c, -+ // Block 0x40, offset 0x1000 -+ 0x1020: 0x000c, 0x1021: 0x000c, 0x1022: 0x000c, -+ 0x1027: 0x000c, 0x1028: 0x000c, -+ 0x1032: 0x000c, -+ 0x1039: 0x000c, 0x103a: 0x000c, 0x103b: 0x000c, -+ // Block 0x41, offset 0x1040 -+ 0x1040: 0x000a, 0x1044: 0x000a, 0x1045: 0x000a, -+ // Block 0x42, offset 0x1080 -+ 0x109e: 0x000a, 0x109f: 0x000a, 0x10a0: 0x000a, 0x10a1: 0x000a, 0x10a2: 0x000a, 0x10a3: 0x000a, -+ 0x10a4: 0x000a, 0x10a5: 0x000a, 0x10a6: 0x000a, 0x10a7: 0x000a, 0x10a8: 0x000a, 0x10a9: 0x000a, -+ 0x10aa: 0x000a, 0x10ab: 0x000a, 0x10ac: 0x000a, 0x10ad: 0x000a, 0x10ae: 0x000a, 0x10af: 0x000a, -+ 0x10b0: 0x000a, 0x10b1: 0x000a, 0x10b2: 0x000a, 0x10b3: 0x000a, 0x10b4: 0x000a, 0x10b5: 0x000a, -+ 0x10b6: 0x000a, 0x10b7: 0x000a, 0x10b8: 0x000a, 0x10b9: 0x000a, 0x10ba: 0x000a, 0x10bb: 0x000a, -+ 0x10bc: 0x000a, 0x10bd: 0x000a, 0x10be: 0x000a, 0x10bf: 0x000a, -+ // Block 0x43, offset 0x10c0 -+ 0x10d7: 0x000c, -+ 0x10d8: 0x000c, 0x10db: 0x000c, -+ // Block 0x44, offset 0x1100 -+ 0x1116: 0x000c, -+ 0x1118: 0x000c, 0x1119: 0x000c, 0x111a: 0x000c, 0x111b: 0x000c, 0x111c: 0x000c, 0x111d: 0x000c, -+ 0x111e: 0x000c, 0x1120: 0x000c, 0x1122: 0x000c, -+ 0x1125: 0x000c, 0x1126: 0x000c, 0x1127: 0x000c, 0x1128: 0x000c, 0x1129: 0x000c, -+ 0x112a: 0x000c, 0x112b: 0x000c, 0x112c: 0x000c, -+ 0x1133: 0x000c, 0x1134: 0x000c, 0x1135: 0x000c, -+ 0x1136: 0x000c, 0x1137: 0x000c, 0x1138: 0x000c, 0x1139: 0x000c, 0x113a: 0x000c, 0x113b: 0x000c, -+ 0x113c: 0x000c, 0x113f: 0x000c, -+ // Block 0x45, offset 0x1140 -+ 0x1170: 0x000c, 0x1171: 0x000c, 0x1172: 0x000c, 0x1173: 0x000c, 0x1174: 0x000c, 0x1175: 0x000c, -+ 0x1176: 0x000c, 0x1177: 0x000c, 0x1178: 0x000c, 0x1179: 0x000c, 0x117a: 0x000c, 0x117b: 0x000c, -+ 0x117c: 0x000c, 0x117d: 0x000c, 0x117e: 0x000c, -+ // Block 0x46, offset 0x1180 -+ 0x1180: 0x000c, 0x1181: 0x000c, 0x1182: 0x000c, 0x1183: 0x000c, -+ 0x11b4: 0x000c, -+ 0x11b6: 0x000c, 0x11b7: 0x000c, 0x11b8: 0x000c, 0x11b9: 0x000c, 0x11ba: 0x000c, -+ 0x11bc: 0x000c, -+ // Block 0x47, offset 0x11c0 -+ 0x11c2: 0x000c, -+ 0x11eb: 0x000c, 0x11ec: 0x000c, 0x11ed: 0x000c, 0x11ee: 0x000c, 0x11ef: 0x000c, -+ 0x11f0: 0x000c, 0x11f1: 0x000c, 0x11f2: 0x000c, 0x11f3: 0x000c, -+ // Block 0x48, offset 0x1200 -+ 0x1200: 0x000c, 0x1201: 0x000c, -+ 0x1222: 0x000c, 0x1223: 0x000c, -+ 0x1224: 0x000c, 0x1225: 0x000c, 0x1228: 0x000c, 0x1229: 0x000c, -+ 0x122b: 0x000c, 0x122c: 0x000c, 0x122d: 0x000c, -+ // Block 0x49, offset 0x1240 -+ 0x1266: 0x000c, 0x1268: 0x000c, 0x1269: 0x000c, -+ 0x126d: 0x000c, 0x126f: 0x000c, -+ 0x1270: 0x000c, 0x1271: 0x000c, -+ // Block 0x4a, offset 0x1280 -+ 0x12ac: 0x000c, 0x12ad: 0x000c, 0x12ae: 0x000c, 0x12af: 0x000c, -+ 0x12b0: 0x000c, 0x12b1: 0x000c, 0x12b2: 0x000c, 0x12b3: 0x000c, -+ 0x12b6: 0x000c, 0x12b7: 0x000c, -+ // Block 0x4b, offset 0x12c0 -+ 0x12d0: 0x000c, 0x12d1: 0x000c, -+ 0x12d2: 0x000c, 0x12d4: 0x000c, 0x12d5: 0x000c, 0x12d6: 0x000c, 0x12d7: 0x000c, -+ 0x12d8: 0x000c, 0x12d9: 0x000c, 0x12da: 0x000c, 0x12db: 0x000c, 0x12dc: 0x000c, 0x12dd: 0x000c, -+ 0x12de: 0x000c, 0x12df: 0x000c, 0x12e0: 0x000c, 0x12e2: 0x000c, 0x12e3: 0x000c, -+ 0x12e4: 0x000c, 0x12e5: 0x000c, 0x12e6: 0x000c, 0x12e7: 0x000c, 0x12e8: 0x000c, -+ 0x12ed: 0x000c, -+ 0x12f4: 0x000c, -+ 0x12f8: 0x000c, 0x12f9: 0x000c, -+ // Block 0x4c, offset 0x1300 -+ 0x1300: 0x000c, 0x1301: 0x000c, 0x1302: 0x000c, 0x1303: 0x000c, 0x1304: 0x000c, 0x1305: 0x000c, -+ 0x1306: 0x000c, 0x1307: 0x000c, 0x1308: 0x000c, 0x1309: 0x000c, 0x130a: 0x000c, 0x130b: 0x000c, -+ 0x130c: 0x000c, 0x130d: 0x000c, 0x130e: 0x000c, 0x130f: 0x000c, 0x1310: 0x000c, 0x1311: 0x000c, -+ 0x1312: 0x000c, 0x1313: 0x000c, 0x1314: 0x000c, 0x1315: 0x000c, 0x1316: 0x000c, 0x1317: 0x000c, -+ 0x1318: 0x000c, 0x1319: 0x000c, 0x131a: 0x000c, 0x131b: 0x000c, 0x131c: 0x000c, 0x131d: 0x000c, -+ 0x131e: 0x000c, 0x131f: 0x000c, 0x1320: 0x000c, 0x1321: 0x000c, 0x1322: 0x000c, 0x1323: 0x000c, -+ 0x1324: 0x000c, 0x1325: 0x000c, 0x1326: 0x000c, 0x1327: 0x000c, 0x1328: 0x000c, 0x1329: 0x000c, -+ 0x132a: 0x000c, 0x132b: 0x000c, 0x132c: 0x000c, 0x132d: 0x000c, 0x132e: 0x000c, 0x132f: 0x000c, -+ 0x1330: 0x000c, 0x1331: 0x000c, 0x1332: 0x000c, 0x1333: 0x000c, 0x1334: 0x000c, 0x1335: 0x000c, -+ 0x1336: 0x000c, 0x1337: 0x000c, 0x1338: 0x000c, 0x1339: 0x000c, 0x133b: 0x000c, -+ 0x133c: 0x000c, 0x133d: 0x000c, 0x133e: 0x000c, 0x133f: 0x000c, -+ // Block 0x4d, offset 0x1340 -+ 0x137d: 0x000a, 0x137f: 0x000a, -+ // Block 0x4e, offset 0x1380 -+ 0x1380: 0x000a, 0x1381: 0x000a, -+ 0x138d: 0x000a, 0x138e: 0x000a, 0x138f: 0x000a, -+ 0x139d: 0x000a, -+ 0x139e: 0x000a, 0x139f: 0x000a, -+ 0x13ad: 0x000a, 0x13ae: 0x000a, 0x13af: 0x000a, -+ 0x13bd: 0x000a, 0x13be: 0x000a, -+ // Block 0x4f, offset 0x13c0 -+ 0x13c0: 0x0009, 0x13c1: 0x0009, 0x13c2: 0x0009, 0x13c3: 0x0009, 0x13c4: 0x0009, 0x13c5: 0x0009, -+ 0x13c6: 0x0009, 0x13c7: 0x0009, 0x13c8: 0x0009, 0x13c9: 0x0009, 0x13ca: 0x0009, 0x13cb: 0x000b, -+ 0x13cc: 0x000b, 0x13cd: 0x000b, 0x13cf: 0x0001, 0x13d0: 0x000a, 0x13d1: 0x000a, -+ 0x13d2: 0x000a, 0x13d3: 0x000a, 0x13d4: 0x000a, 0x13d5: 0x000a, 0x13d6: 0x000a, 0x13d7: 0x000a, -+ 0x13d8: 0x000a, 0x13d9: 0x000a, 0x13da: 0x000a, 0x13db: 0x000a, 0x13dc: 0x000a, 0x13dd: 0x000a, -+ 0x13de: 0x000a, 0x13df: 0x000a, 0x13e0: 0x000a, 0x13e1: 0x000a, 0x13e2: 0x000a, 0x13e3: 0x000a, -+ 0x13e4: 0x000a, 0x13e5: 0x000a, 0x13e6: 0x000a, 0x13e7: 0x000a, 0x13e8: 0x0009, 0x13e9: 0x0007, -+ 0x13ea: 0x000e, 0x13eb: 0x000e, 0x13ec: 0x000e, 0x13ed: 0x000e, 0x13ee: 0x000e, 0x13ef: 0x0006, -+ 0x13f0: 0x0004, 0x13f1: 0x0004, 0x13f2: 0x0004, 0x13f3: 0x0004, 0x13f4: 0x0004, 0x13f5: 0x000a, -+ 0x13f6: 0x000a, 0x13f7: 0x000a, 0x13f8: 0x000a, 0x13f9: 0x000a, 0x13fa: 0x000a, 0x13fb: 0x000a, -+ 0x13fc: 0x000a, 0x13fd: 0x000a, 0x13fe: 0x000a, 0x13ff: 0x000a, -+ // Block 0x50, offset 0x1400 -+ 0x1400: 0x000a, 0x1401: 0x000a, 0x1402: 0x000a, 0x1403: 0x000a, 0x1404: 0x0006, 0x1405: 0x009a, -+ 0x1406: 0x008a, 0x1407: 0x000a, 0x1408: 0x000a, 0x1409: 0x000a, 0x140a: 0x000a, 0x140b: 0x000a, -+ 0x140c: 0x000a, 0x140d: 0x000a, 0x140e: 0x000a, 0x140f: 0x000a, 0x1410: 0x000a, 0x1411: 0x000a, -+ 0x1412: 0x000a, 0x1413: 0x000a, 0x1414: 0x000a, 0x1415: 0x000a, 0x1416: 0x000a, 0x1417: 0x000a, -+ 0x1418: 0x000a, 0x1419: 0x000a, 0x141a: 0x000a, 0x141b: 0x000a, 0x141c: 0x000a, 0x141d: 0x000a, -+ 0x141e: 0x000a, 0x141f: 0x0009, 0x1420: 0x000b, 0x1421: 0x000b, 0x1422: 0x000b, 0x1423: 0x000b, -+ 0x1424: 0x000b, 0x1425: 0x000b, 0x1426: 0x000e, 0x1427: 0x000e, 0x1428: 0x000e, 0x1429: 0x000e, -+ 0x142a: 0x000b, 0x142b: 0x000b, 0x142c: 0x000b, 0x142d: 0x000b, 0x142e: 0x000b, 0x142f: 0x000b, -+ 0x1430: 0x0002, 0x1434: 0x0002, 0x1435: 0x0002, -+ 0x1436: 0x0002, 0x1437: 0x0002, 0x1438: 0x0002, 0x1439: 0x0002, 0x143a: 0x0003, 0x143b: 0x0003, -+ 0x143c: 0x000a, 0x143d: 0x009a, 0x143e: 0x008a, -+ // Block 0x51, offset 0x1440 -+ 0x1440: 0x0002, 0x1441: 0x0002, 0x1442: 0x0002, 0x1443: 0x0002, 0x1444: 0x0002, 0x1445: 0x0002, -+ 0x1446: 0x0002, 0x1447: 0x0002, 0x1448: 0x0002, 0x1449: 0x0002, 0x144a: 0x0003, 0x144b: 0x0003, -+ 0x144c: 0x000a, 0x144d: 0x009a, 0x144e: 0x008a, -+ 0x1460: 0x0004, 0x1461: 0x0004, 0x1462: 0x0004, 0x1463: 0x0004, -+ 0x1464: 0x0004, 0x1465: 0x0004, 0x1466: 0x0004, 0x1467: 0x0004, 0x1468: 0x0004, 0x1469: 0x0004, -+ 0x146a: 0x0004, 0x146b: 0x0004, 0x146c: 0x0004, 0x146d: 0x0004, 0x146e: 0x0004, 0x146f: 0x0004, -+ 0x1470: 0x0004, 0x1471: 0x0004, 0x1472: 0x0004, 0x1473: 0x0004, 0x1474: 0x0004, 0x1475: 0x0004, -+ 0x1476: 0x0004, 0x1477: 0x0004, 0x1478: 0x0004, 0x1479: 0x0004, 0x147a: 0x0004, 0x147b: 0x0004, -+ 0x147c: 0x0004, 0x147d: 0x0004, 0x147e: 0x0004, 0x147f: 0x0004, -+ // Block 0x52, offset 0x1480 -+ 0x1480: 0x0004, 0x1481: 0x0004, 0x1482: 0x0004, 0x1483: 0x0004, 0x1484: 0x0004, 0x1485: 0x0004, -+ 0x1486: 0x0004, 0x1487: 0x0004, 0x1488: 0x0004, 0x1489: 0x0004, 0x148a: 0x0004, 0x148b: 0x0004, -+ 0x148c: 0x0004, 0x148d: 0x0004, 0x148e: 0x0004, 0x148f: 0x0004, 0x1490: 0x000c, 0x1491: 0x000c, -+ 0x1492: 0x000c, 0x1493: 0x000c, 0x1494: 0x000c, 0x1495: 0x000c, 0x1496: 0x000c, 0x1497: 0x000c, -+ 0x1498: 0x000c, 0x1499: 0x000c, 0x149a: 0x000c, 0x149b: 0x000c, 0x149c: 0x000c, 0x149d: 0x000c, -+ 0x149e: 0x000c, 0x149f: 0x000c, 0x14a0: 0x000c, 0x14a1: 0x000c, 0x14a2: 0x000c, 0x14a3: 0x000c, -+ 0x14a4: 0x000c, 0x14a5: 0x000c, 0x14a6: 0x000c, 0x14a7: 0x000c, 0x14a8: 0x000c, 0x14a9: 0x000c, -+ 0x14aa: 0x000c, 0x14ab: 0x000c, 0x14ac: 0x000c, 0x14ad: 0x000c, 0x14ae: 0x000c, 0x14af: 0x000c, -+ 0x14b0: 0x000c, -+ // Block 0x53, offset 0x14c0 -+ 0x14c0: 0x000a, 0x14c1: 0x000a, 0x14c3: 0x000a, 0x14c4: 0x000a, 0x14c5: 0x000a, -+ 0x14c6: 0x000a, 0x14c8: 0x000a, 0x14c9: 0x000a, -+ 0x14d4: 0x000a, 0x14d6: 0x000a, 0x14d7: 0x000a, -+ 0x14d8: 0x000a, -+ 0x14de: 0x000a, 0x14df: 0x000a, 0x14e0: 0x000a, 0x14e1: 0x000a, 0x14e2: 0x000a, 0x14e3: 0x000a, -+ 0x14e5: 0x000a, 0x14e7: 0x000a, 0x14e9: 0x000a, -+ 0x14ee: 0x0004, -+ 0x14fa: 0x000a, 0x14fb: 0x000a, -+ // Block 0x54, offset 0x1500 -+ 0x1500: 0x000a, 0x1501: 0x000a, 0x1502: 0x000a, 0x1503: 0x000a, 0x1504: 0x000a, -+ 0x150a: 0x000a, 0x150b: 0x000a, -+ 0x150c: 0x000a, 0x150d: 0x000a, 0x1510: 0x000a, 0x1511: 0x000a, -+ 0x1512: 0x000a, 0x1513: 0x000a, 0x1514: 0x000a, 0x1515: 0x000a, 0x1516: 0x000a, 0x1517: 0x000a, -+ 0x1518: 0x000a, 0x1519: 0x000a, 0x151a: 0x000a, 0x151b: 0x000a, 0x151c: 0x000a, 0x151d: 0x000a, -+ 0x151e: 0x000a, 0x151f: 0x000a, -+ // Block 0x55, offset 0x1540 -+ 0x1549: 0x000a, 0x154a: 0x000a, 0x154b: 0x000a, -+ 0x1550: 0x000a, 0x1551: 0x000a, -+ 0x1552: 0x000a, 0x1553: 0x000a, 0x1554: 0x000a, 0x1555: 0x000a, 0x1556: 0x000a, 0x1557: 0x000a, -+ 0x1558: 0x000a, 0x1559: 0x000a, 0x155a: 0x000a, 0x155b: 0x000a, 0x155c: 0x000a, 0x155d: 0x000a, -+ 0x155e: 0x000a, 0x155f: 0x000a, 0x1560: 0x000a, 0x1561: 0x000a, 0x1562: 0x000a, 0x1563: 0x000a, -+ 0x1564: 0x000a, 0x1565: 0x000a, 0x1566: 0x000a, 0x1567: 0x000a, 0x1568: 0x000a, 0x1569: 0x000a, -+ 0x156a: 0x000a, 0x156b: 0x000a, 0x156c: 0x000a, 0x156d: 0x000a, 0x156e: 0x000a, 0x156f: 0x000a, -+ 0x1570: 0x000a, 0x1571: 0x000a, 0x1572: 0x000a, 0x1573: 0x000a, 0x1574: 0x000a, 0x1575: 0x000a, -+ 0x1576: 0x000a, 0x1577: 0x000a, 0x1578: 0x000a, 0x1579: 0x000a, 0x157a: 0x000a, 0x157b: 0x000a, -+ 0x157c: 0x000a, 0x157d: 0x000a, 0x157e: 0x000a, 0x157f: 0x000a, -+ // Block 0x56, offset 0x1580 -+ 0x1580: 0x000a, 0x1581: 0x000a, 0x1582: 0x000a, 0x1583: 0x000a, 0x1584: 0x000a, 0x1585: 0x000a, -+ 0x1586: 0x000a, 0x1587: 0x000a, 0x1588: 0x000a, 0x1589: 0x000a, 0x158a: 0x000a, 0x158b: 0x000a, -+ 0x158c: 0x000a, 0x158d: 0x000a, 0x158e: 0x000a, 0x158f: 0x000a, 0x1590: 0x000a, 0x1591: 0x000a, -+ 0x1592: 0x000a, 0x1593: 0x000a, 0x1594: 0x000a, 0x1595: 0x000a, 0x1596: 0x000a, 0x1597: 0x000a, -+ 0x1598: 0x000a, 0x1599: 0x000a, 0x159a: 0x000a, 0x159b: 0x000a, 0x159c: 0x000a, 0x159d: 0x000a, -+ 0x159e: 0x000a, 0x159f: 0x000a, 0x15a0: 0x000a, 0x15a1: 0x000a, 0x15a2: 0x000a, 0x15a3: 0x000a, -+ 0x15a4: 0x000a, 0x15a5: 0x000a, 0x15a6: 0x000a, 0x15a7: 0x000a, 0x15a8: 0x000a, 0x15a9: 0x000a, -+ 0x15aa: 0x000a, 0x15ab: 0x000a, 0x15ac: 0x000a, 0x15ad: 0x000a, 0x15ae: 0x000a, 0x15af: 0x000a, -+ 0x15b0: 0x000a, 0x15b1: 0x000a, 0x15b2: 0x000a, 0x15b3: 0x000a, 0x15b4: 0x000a, 0x15b5: 0x000a, -+ 0x15b6: 0x000a, 0x15b7: 0x000a, 0x15b8: 0x000a, 0x15b9: 0x000a, 0x15ba: 0x000a, 0x15bb: 0x000a, -+ 0x15bc: 0x000a, 0x15bd: 0x000a, 0x15be: 0x000a, 0x15bf: 0x000a, -+ // Block 0x57, offset 0x15c0 -+ 0x15c0: 0x000a, 0x15c1: 0x000a, 0x15c2: 0x000a, 0x15c3: 0x000a, 0x15c4: 0x000a, 0x15c5: 0x000a, -+ 0x15c6: 0x000a, 0x15c7: 0x000a, 0x15c8: 0x000a, 0x15c9: 0x000a, 0x15ca: 0x000a, 0x15cb: 0x000a, -+ 0x15cc: 0x000a, 0x15cd: 0x000a, 0x15ce: 0x000a, 0x15cf: 0x000a, 0x15d0: 0x000a, 0x15d1: 0x000a, -+ 0x15d2: 0x0003, 0x15d3: 0x0004, 0x15d4: 0x000a, 0x15d5: 0x000a, 0x15d6: 0x000a, 0x15d7: 0x000a, -+ 0x15d8: 0x000a, 0x15d9: 0x000a, 0x15da: 0x000a, 0x15db: 0x000a, 0x15dc: 0x000a, 0x15dd: 0x000a, -+ 0x15de: 0x000a, 0x15df: 0x000a, 0x15e0: 0x000a, 0x15e1: 0x000a, 0x15e2: 0x000a, 0x15e3: 0x000a, -+ 0x15e4: 0x000a, 0x15e5: 0x000a, 0x15e6: 0x000a, 0x15e7: 0x000a, 0x15e8: 0x000a, 0x15e9: 0x000a, -+ 0x15ea: 0x000a, 0x15eb: 0x000a, 0x15ec: 0x000a, 0x15ed: 0x000a, 0x15ee: 0x000a, 0x15ef: 0x000a, -+ 0x15f0: 0x000a, 0x15f1: 0x000a, 0x15f2: 0x000a, 0x15f3: 0x000a, 0x15f4: 0x000a, 0x15f5: 0x000a, -+ 0x15f6: 0x000a, 0x15f7: 0x000a, 0x15f8: 0x000a, 0x15f9: 0x000a, 0x15fa: 0x000a, 0x15fb: 0x000a, -+ 0x15fc: 0x000a, 0x15fd: 0x000a, 0x15fe: 0x000a, 0x15ff: 0x000a, -+ // Block 0x58, offset 0x1600 -+ 0x1600: 0x000a, 0x1601: 0x000a, 0x1602: 0x000a, 0x1603: 0x000a, 0x1604: 0x000a, 0x1605: 0x000a, -+ 0x1606: 0x000a, 0x1607: 0x000a, 0x1608: 0x003a, 0x1609: 0x002a, 0x160a: 0x003a, 0x160b: 0x002a, -+ 0x160c: 0x000a, 0x160d: 0x000a, 0x160e: 0x000a, 0x160f: 0x000a, 0x1610: 0x000a, 0x1611: 0x000a, -+ 0x1612: 0x000a, 0x1613: 0x000a, 0x1614: 0x000a, 0x1615: 0x000a, 0x1616: 0x000a, 0x1617: 0x000a, -+ 0x1618: 0x000a, 0x1619: 0x000a, 0x161a: 0x000a, 0x161b: 0x000a, 0x161c: 0x000a, 0x161d: 0x000a, -+ 0x161e: 0x000a, 0x161f: 0x000a, 0x1620: 0x000a, 0x1621: 0x000a, 0x1622: 0x000a, 0x1623: 0x000a, -+ 0x1624: 0x000a, 0x1625: 0x000a, 0x1626: 0x000a, 0x1627: 0x000a, 0x1628: 0x000a, 0x1629: 0x009a, -+ 0x162a: 0x008a, 0x162b: 0x000a, 0x162c: 0x000a, 0x162d: 0x000a, 0x162e: 0x000a, 0x162f: 0x000a, -+ 0x1630: 0x000a, 0x1631: 0x000a, 0x1632: 0x000a, 0x1633: 0x000a, 0x1634: 0x000a, 0x1635: 0x000a, -+ // Block 0x59, offset 0x1640 -+ 0x167b: 0x000a, -+ 0x167c: 0x000a, 0x167d: 0x000a, 0x167e: 0x000a, 0x167f: 0x000a, -+ // Block 0x5a, offset 0x1680 -+ 0x1680: 0x000a, 0x1681: 0x000a, 0x1682: 0x000a, 0x1683: 0x000a, 0x1684: 0x000a, 0x1685: 0x000a, -+ 0x1686: 0x000a, 0x1687: 0x000a, 0x1688: 0x000a, 0x1689: 0x000a, 0x168a: 0x000a, 0x168b: 0x000a, -+ 0x168c: 0x000a, 0x168d: 0x000a, 0x168e: 0x000a, 0x168f: 0x000a, 0x1690: 0x000a, 0x1691: 0x000a, -+ 0x1692: 0x000a, 0x1693: 0x000a, 0x1694: 0x000a, 0x1696: 0x000a, 0x1697: 0x000a, -+ 0x1698: 0x000a, 0x1699: 0x000a, 0x169a: 0x000a, 0x169b: 0x000a, 0x169c: 0x000a, 0x169d: 0x000a, -+ 0x169e: 0x000a, 0x169f: 0x000a, 0x16a0: 0x000a, 0x16a1: 0x000a, 0x16a2: 0x000a, 0x16a3: 0x000a, -+ 0x16a4: 0x000a, 0x16a5: 0x000a, 0x16a6: 0x000a, 0x16a7: 0x000a, 0x16a8: 0x000a, 0x16a9: 0x000a, -+ 0x16aa: 0x000a, 0x16ab: 0x000a, 0x16ac: 0x000a, 0x16ad: 0x000a, 0x16ae: 0x000a, 0x16af: 0x000a, -+ 0x16b0: 0x000a, 0x16b1: 0x000a, 0x16b2: 0x000a, 0x16b3: 0x000a, 0x16b4: 0x000a, 0x16b5: 0x000a, -+ 0x16b6: 0x000a, 0x16b7: 0x000a, 0x16b8: 0x000a, 0x16b9: 0x000a, 0x16ba: 0x000a, 0x16bb: 0x000a, -+ 0x16bc: 0x000a, 0x16bd: 0x000a, 0x16be: 0x000a, 0x16bf: 0x000a, -+ // Block 0x5b, offset 0x16c0 -+ 0x16c0: 0x000a, 0x16c1: 0x000a, 0x16c2: 0x000a, 0x16c3: 0x000a, 0x16c4: 0x000a, 0x16c5: 0x000a, -+ 0x16c6: 0x000a, 0x16c7: 0x000a, 0x16c8: 0x000a, 0x16c9: 0x000a, 0x16ca: 0x000a, 0x16cb: 0x000a, -+ 0x16cc: 0x000a, 0x16cd: 0x000a, 0x16ce: 0x000a, 0x16cf: 0x000a, 0x16d0: 0x000a, 0x16d1: 0x000a, -+ 0x16d2: 0x000a, 0x16d3: 0x000a, 0x16d4: 0x000a, 0x16d5: 0x000a, 0x16d6: 0x000a, 0x16d7: 0x000a, -+ 0x16d8: 0x000a, 0x16d9: 0x000a, 0x16da: 0x000a, 0x16db: 0x000a, 0x16dc: 0x000a, 0x16dd: 0x000a, -+ 0x16de: 0x000a, 0x16df: 0x000a, 0x16e0: 0x000a, 0x16e1: 0x000a, 0x16e2: 0x000a, 0x16e3: 0x000a, -+ 0x16e4: 0x000a, 0x16e5: 0x000a, 0x16e6: 0x000a, -+ // Block 0x5c, offset 0x1700 -+ 0x1700: 0x000a, 0x1701: 0x000a, 0x1702: 0x000a, 0x1703: 0x000a, 0x1704: 0x000a, 0x1705: 0x000a, -+ 0x1706: 0x000a, 0x1707: 0x000a, 0x1708: 0x000a, 0x1709: 0x000a, 0x170a: 0x000a, -+ 0x1720: 0x000a, 0x1721: 0x000a, 0x1722: 0x000a, 0x1723: 0x000a, -+ 0x1724: 0x000a, 0x1725: 0x000a, 0x1726: 0x000a, 0x1727: 0x000a, 0x1728: 0x000a, 0x1729: 0x000a, -+ 0x172a: 0x000a, 0x172b: 0x000a, 0x172c: 0x000a, 0x172d: 0x000a, 0x172e: 0x000a, 0x172f: 0x000a, -+ 0x1730: 0x000a, 0x1731: 0x000a, 0x1732: 0x000a, 0x1733: 0x000a, 0x1734: 0x000a, 0x1735: 0x000a, -+ 0x1736: 0x000a, 0x1737: 0x000a, 0x1738: 0x000a, 0x1739: 0x000a, 0x173a: 0x000a, 0x173b: 0x000a, -+ 0x173c: 0x000a, 0x173d: 0x000a, 0x173e: 0x000a, 0x173f: 0x000a, -+ // Block 0x5d, offset 0x1740 -+ 0x1740: 0x000a, 0x1741: 0x000a, 0x1742: 0x000a, 0x1743: 0x000a, 0x1744: 0x000a, 0x1745: 0x000a, -+ 0x1746: 0x000a, 0x1747: 0x000a, 0x1748: 0x0002, 0x1749: 0x0002, 0x174a: 0x0002, 0x174b: 0x0002, -+ 0x174c: 0x0002, 0x174d: 0x0002, 0x174e: 0x0002, 0x174f: 0x0002, 0x1750: 0x0002, 0x1751: 0x0002, -+ 0x1752: 0x0002, 0x1753: 0x0002, 0x1754: 0x0002, 0x1755: 0x0002, 0x1756: 0x0002, 0x1757: 0x0002, -+ 0x1758: 0x0002, 0x1759: 0x0002, 0x175a: 0x0002, 0x175b: 0x0002, -+ // Block 0x5e, offset 0x1780 -+ 0x17aa: 0x000a, 0x17ab: 0x000a, 0x17ac: 0x000a, 0x17ad: 0x000a, 0x17ae: 0x000a, 0x17af: 0x000a, -+ 0x17b0: 0x000a, 0x17b1: 0x000a, 0x17b2: 0x000a, 0x17b3: 0x000a, 0x17b4: 0x000a, 0x17b5: 0x000a, -+ 0x17b6: 0x000a, 0x17b7: 0x000a, 0x17b8: 0x000a, 0x17b9: 0x000a, 0x17ba: 0x000a, 0x17bb: 0x000a, -+ 0x17bc: 0x000a, 0x17bd: 0x000a, 0x17be: 0x000a, 0x17bf: 0x000a, -+ // Block 0x5f, offset 0x17c0 -+ 0x17c0: 0x000a, 0x17c1: 0x000a, 0x17c2: 0x000a, 0x17c3: 0x000a, 0x17c4: 0x000a, 0x17c5: 0x000a, -+ 0x17c6: 0x000a, 0x17c7: 0x000a, 0x17c8: 0x000a, 0x17c9: 0x000a, 0x17ca: 0x000a, 0x17cb: 0x000a, -+ 0x17cc: 0x000a, 0x17cd: 0x000a, 0x17ce: 0x000a, 0x17cf: 0x000a, 0x17d0: 0x000a, 0x17d1: 0x000a, -+ 0x17d2: 0x000a, 0x17d3: 0x000a, 0x17d4: 0x000a, 0x17d5: 0x000a, 0x17d6: 0x000a, 0x17d7: 0x000a, -+ 0x17d8: 0x000a, 0x17d9: 0x000a, 0x17da: 0x000a, 0x17db: 0x000a, 0x17dc: 0x000a, 0x17dd: 0x000a, -+ 0x17de: 0x000a, 0x17df: 0x000a, 0x17e0: 0x000a, 0x17e1: 0x000a, 0x17e2: 0x000a, 0x17e3: 0x000a, -+ 0x17e4: 0x000a, 0x17e5: 0x000a, 0x17e6: 0x000a, 0x17e7: 0x000a, 0x17e8: 0x000a, 0x17e9: 0x000a, -+ 0x17ea: 0x000a, 0x17eb: 0x000a, 0x17ed: 0x000a, 0x17ee: 0x000a, 0x17ef: 0x000a, -+ 0x17f0: 0x000a, 0x17f1: 0x000a, 0x17f2: 0x000a, 0x17f3: 0x000a, 0x17f4: 0x000a, 0x17f5: 0x000a, -+ 0x17f6: 0x000a, 0x17f7: 0x000a, 0x17f8: 0x000a, 0x17f9: 0x000a, 0x17fa: 0x000a, 0x17fb: 0x000a, -+ 0x17fc: 0x000a, 0x17fd: 0x000a, 0x17fe: 0x000a, 0x17ff: 0x000a, -+ // Block 0x60, offset 0x1800 -+ 0x1800: 0x000a, 0x1801: 0x000a, 0x1802: 0x000a, 0x1803: 0x000a, 0x1804: 0x000a, 0x1805: 0x000a, -+ 0x1806: 0x000a, 0x1807: 0x000a, 0x1808: 0x000a, 0x1809: 0x000a, 0x180a: 0x000a, 0x180b: 0x000a, -+ 0x180c: 0x000a, 0x180d: 0x000a, 0x180e: 0x000a, 0x180f: 0x000a, 0x1810: 0x000a, 0x1811: 0x000a, -+ 0x1812: 0x000a, 0x1813: 0x000a, 0x1814: 0x000a, 0x1815: 0x000a, 0x1816: 0x000a, 0x1817: 0x000a, -+ 0x1818: 0x000a, 0x1819: 0x000a, 0x181a: 0x000a, 0x181b: 0x000a, 0x181c: 0x000a, 0x181d: 0x000a, -+ 0x181e: 0x000a, 0x181f: 0x000a, 0x1820: 0x000a, 0x1821: 0x000a, 0x1822: 0x000a, 0x1823: 0x000a, -+ 0x1824: 0x000a, 0x1825: 0x000a, 0x1826: 0x000a, 0x1827: 0x000a, 0x1828: 0x003a, 0x1829: 0x002a, -+ 0x182a: 0x003a, 0x182b: 0x002a, 0x182c: 0x003a, 0x182d: 0x002a, 0x182e: 0x003a, 0x182f: 0x002a, -+ 0x1830: 0x003a, 0x1831: 0x002a, 0x1832: 0x003a, 0x1833: 0x002a, 0x1834: 0x003a, 0x1835: 0x002a, -+ 0x1836: 0x000a, 0x1837: 0x000a, 0x1838: 0x000a, 0x1839: 0x000a, 0x183a: 0x000a, 0x183b: 0x000a, -+ 0x183c: 0x000a, 0x183d: 0x000a, 0x183e: 0x000a, 0x183f: 0x000a, -+ // Block 0x61, offset 0x1840 -+ 0x1840: 0x000a, 0x1841: 0x000a, 0x1842: 0x000a, 0x1843: 0x000a, 0x1844: 0x000a, 0x1845: 0x009a, -+ 0x1846: 0x008a, 0x1847: 0x000a, 0x1848: 0x000a, 0x1849: 0x000a, 0x184a: 0x000a, 0x184b: 0x000a, -+ 0x184c: 0x000a, 0x184d: 0x000a, 0x184e: 0x000a, 0x184f: 0x000a, 0x1850: 0x000a, 0x1851: 0x000a, -+ 0x1852: 0x000a, 0x1853: 0x000a, 0x1854: 0x000a, 0x1855: 0x000a, 0x1856: 0x000a, 0x1857: 0x000a, -+ 0x1858: 0x000a, 0x1859: 0x000a, 0x185a: 0x000a, 0x185b: 0x000a, 0x185c: 0x000a, 0x185d: 0x000a, -+ 0x185e: 0x000a, 0x185f: 0x000a, 0x1860: 0x000a, 0x1861: 0x000a, 0x1862: 0x000a, 0x1863: 0x000a, -+ 0x1864: 0x000a, 0x1865: 0x000a, 0x1866: 0x003a, 0x1867: 0x002a, 0x1868: 0x003a, 0x1869: 0x002a, -+ 0x186a: 0x003a, 0x186b: 0x002a, 0x186c: 0x003a, 0x186d: 0x002a, 0x186e: 0x003a, 0x186f: 0x002a, -+ 0x1870: 0x000a, 0x1871: 0x000a, 0x1872: 0x000a, 0x1873: 0x000a, 0x1874: 0x000a, 0x1875: 0x000a, -+ 0x1876: 0x000a, 0x1877: 0x000a, 0x1878: 0x000a, 0x1879: 0x000a, 0x187a: 0x000a, 0x187b: 0x000a, -+ 0x187c: 0x000a, 0x187d: 0x000a, 0x187e: 0x000a, 0x187f: 0x000a, -+ // Block 0x62, offset 0x1880 -+ 0x1880: 0x000a, 0x1881: 0x000a, 0x1882: 0x000a, 0x1883: 0x007a, 0x1884: 0x006a, 0x1885: 0x009a, -+ 0x1886: 0x008a, 0x1887: 0x00ba, 0x1888: 0x00aa, 0x1889: 0x009a, 0x188a: 0x008a, 0x188b: 0x007a, -+ 0x188c: 0x006a, 0x188d: 0x00da, 0x188e: 0x002a, 0x188f: 0x003a, 0x1890: 0x00ca, 0x1891: 0x009a, -+ 0x1892: 0x008a, 0x1893: 0x007a, 0x1894: 0x006a, 0x1895: 0x009a, 0x1896: 0x008a, 0x1897: 0x00ba, -+ 0x1898: 0x00aa, 0x1899: 0x000a, 0x189a: 0x000a, 0x189b: 0x000a, 0x189c: 0x000a, 0x189d: 0x000a, -+ 0x189e: 0x000a, 0x189f: 0x000a, 0x18a0: 0x000a, 0x18a1: 0x000a, 0x18a2: 0x000a, 0x18a3: 0x000a, -+ 0x18a4: 0x000a, 0x18a5: 0x000a, 0x18a6: 0x000a, 0x18a7: 0x000a, 0x18a8: 0x000a, 0x18a9: 0x000a, -+ 0x18aa: 0x000a, 0x18ab: 0x000a, 0x18ac: 0x000a, 0x18ad: 0x000a, 0x18ae: 0x000a, 0x18af: 0x000a, -+ 0x18b0: 0x000a, 0x18b1: 0x000a, 0x18b2: 0x000a, 0x18b3: 0x000a, 0x18b4: 0x000a, 0x18b5: 0x000a, -+ 0x18b6: 0x000a, 0x18b7: 0x000a, 0x18b8: 0x000a, 0x18b9: 0x000a, 0x18ba: 0x000a, 0x18bb: 0x000a, -+ 0x18bc: 0x000a, 0x18bd: 0x000a, 0x18be: 0x000a, 0x18bf: 0x000a, -+ // Block 0x63, offset 0x18c0 -+ 0x18c0: 0x000a, 0x18c1: 0x000a, 0x18c2: 0x000a, 0x18c3: 0x000a, 0x18c4: 0x000a, 0x18c5: 0x000a, -+ 0x18c6: 0x000a, 0x18c7: 0x000a, 0x18c8: 0x000a, 0x18c9: 0x000a, 0x18ca: 0x000a, 0x18cb: 0x000a, -+ 0x18cc: 0x000a, 0x18cd: 0x000a, 0x18ce: 0x000a, 0x18cf: 0x000a, 0x18d0: 0x000a, 0x18d1: 0x000a, -+ 0x18d2: 0x000a, 0x18d3: 0x000a, 0x18d4: 0x000a, 0x18d5: 0x000a, 0x18d6: 0x000a, 0x18d7: 0x000a, -+ 0x18d8: 0x003a, 0x18d9: 0x002a, 0x18da: 0x003a, 0x18db: 0x002a, 0x18dc: 0x000a, 0x18dd: 0x000a, -+ 0x18de: 0x000a, 0x18df: 0x000a, 0x18e0: 0x000a, 0x18e1: 0x000a, 0x18e2: 0x000a, 0x18e3: 0x000a, -+ 0x18e4: 0x000a, 0x18e5: 0x000a, 0x18e6: 0x000a, 0x18e7: 0x000a, 0x18e8: 0x000a, 0x18e9: 0x000a, -+ 0x18ea: 0x000a, 0x18eb: 0x000a, 0x18ec: 0x000a, 0x18ed: 0x000a, 0x18ee: 0x000a, 0x18ef: 0x000a, -+ 0x18f0: 0x000a, 0x18f1: 0x000a, 0x18f2: 0x000a, 0x18f3: 0x000a, 0x18f4: 0x000a, 0x18f5: 0x000a, -+ 0x18f6: 0x000a, 0x18f7: 0x000a, 0x18f8: 0x000a, 0x18f9: 0x000a, 0x18fa: 0x000a, 0x18fb: 0x000a, -+ 0x18fc: 0x003a, 0x18fd: 0x002a, 0x18fe: 0x000a, 0x18ff: 0x000a, -+ // Block 0x64, offset 0x1900 -+ 0x1900: 0x000a, 0x1901: 0x000a, 0x1902: 0x000a, 0x1903: 0x000a, 0x1904: 0x000a, 0x1905: 0x000a, -+ 0x1906: 0x000a, 0x1907: 0x000a, 0x1908: 0x000a, 0x1909: 0x000a, 0x190a: 0x000a, 0x190b: 0x000a, -+ 0x190c: 0x000a, 0x190d: 0x000a, 0x190e: 0x000a, 0x190f: 0x000a, 0x1910: 0x000a, 0x1911: 0x000a, -+ 0x1912: 0x000a, 0x1913: 0x000a, 0x1914: 0x000a, 0x1915: 0x000a, 0x1916: 0x000a, 0x1917: 0x000a, -+ 0x1918: 0x000a, 0x1919: 0x000a, 0x191a: 0x000a, 0x191b: 0x000a, 0x191c: 0x000a, 0x191d: 0x000a, -+ 0x191e: 0x000a, 0x191f: 0x000a, 0x1920: 0x000a, 0x1921: 0x000a, 0x1922: 0x000a, 0x1923: 0x000a, -+ 0x1924: 0x000a, 0x1925: 0x000a, 0x1926: 0x000a, 0x1927: 0x000a, 0x1928: 0x000a, 0x1929: 0x000a, -+ 0x192a: 0x000a, 0x192b: 0x000a, 0x192c: 0x000a, 0x192d: 0x000a, 0x192e: 0x000a, 0x192f: 0x000a, -+ 0x1930: 0x000a, 0x1931: 0x000a, 0x1932: 0x000a, 0x1933: 0x000a, -+ 0x1936: 0x000a, 0x1937: 0x000a, 0x1938: 0x000a, 0x1939: 0x000a, 0x193a: 0x000a, 0x193b: 0x000a, -+ 0x193c: 0x000a, 0x193d: 0x000a, 0x193e: 0x000a, 0x193f: 0x000a, -+ // Block 0x65, offset 0x1940 -+ 0x1940: 0x000a, 0x1941: 0x000a, 0x1942: 0x000a, 0x1943: 0x000a, 0x1944: 0x000a, 0x1945: 0x000a, -+ 0x1946: 0x000a, 0x1947: 0x000a, 0x1948: 0x000a, 0x1949: 0x000a, 0x194a: 0x000a, 0x194b: 0x000a, -+ 0x194c: 0x000a, 0x194d: 0x000a, 0x194e: 0x000a, 0x194f: 0x000a, 0x1950: 0x000a, 0x1951: 0x000a, -+ 0x1952: 0x000a, 0x1953: 0x000a, 0x1954: 0x000a, 0x1955: 0x000a, -+ 0x1958: 0x000a, 0x1959: 0x000a, 0x195a: 0x000a, 0x195b: 0x000a, 0x195c: 0x000a, 0x195d: 0x000a, -+ 0x195e: 0x000a, 0x195f: 0x000a, 0x1960: 0x000a, 0x1961: 0x000a, 0x1962: 0x000a, 0x1963: 0x000a, -+ 0x1964: 0x000a, 0x1965: 0x000a, 0x1966: 0x000a, 0x1967: 0x000a, 0x1968: 0x000a, 0x1969: 0x000a, -+ 0x196a: 0x000a, 0x196b: 0x000a, 0x196c: 0x000a, 0x196d: 0x000a, 0x196e: 0x000a, 0x196f: 0x000a, -+ 0x1970: 0x000a, 0x1971: 0x000a, 0x1972: 0x000a, 0x1973: 0x000a, 0x1974: 0x000a, 0x1975: 0x000a, -+ 0x1976: 0x000a, 0x1977: 0x000a, 0x1978: 0x000a, 0x1979: 0x000a, 0x197a: 0x000a, 0x197b: 0x000a, -+ 0x197c: 0x000a, 0x197d: 0x000a, 0x197e: 0x000a, 0x197f: 0x000a, -+ // Block 0x66, offset 0x1980 -+ 0x19a5: 0x000a, 0x19a6: 0x000a, 0x19a7: 0x000a, 0x19a8: 0x000a, 0x19a9: 0x000a, -+ 0x19aa: 0x000a, 0x19af: 0x000c, -+ 0x19b0: 0x000c, 0x19b1: 0x000c, -+ 0x19b9: 0x000a, 0x19ba: 0x000a, 0x19bb: 0x000a, -+ 0x19bc: 0x000a, 0x19bd: 0x000a, 0x19be: 0x000a, 0x19bf: 0x000a, -+ // Block 0x67, offset 0x19c0 -+ 0x19ff: 0x000c, -+ // Block 0x68, offset 0x1a00 -+ 0x1a20: 0x000c, 0x1a21: 0x000c, 0x1a22: 0x000c, 0x1a23: 0x000c, -+ 0x1a24: 0x000c, 0x1a25: 0x000c, 0x1a26: 0x000c, 0x1a27: 0x000c, 0x1a28: 0x000c, 0x1a29: 0x000c, -+ 0x1a2a: 0x000c, 0x1a2b: 0x000c, 0x1a2c: 0x000c, 0x1a2d: 0x000c, 0x1a2e: 0x000c, 0x1a2f: 0x000c, -+ 0x1a30: 0x000c, 0x1a31: 0x000c, 0x1a32: 0x000c, 0x1a33: 0x000c, 0x1a34: 0x000c, 0x1a35: 0x000c, -+ 0x1a36: 0x000c, 0x1a37: 0x000c, 0x1a38: 0x000c, 0x1a39: 0x000c, 0x1a3a: 0x000c, 0x1a3b: 0x000c, -+ 0x1a3c: 0x000c, 0x1a3d: 0x000c, 0x1a3e: 0x000c, 0x1a3f: 0x000c, -+ // Block 0x69, offset 0x1a40 -+ 0x1a40: 0x000a, 0x1a41: 0x000a, 0x1a42: 0x000a, 0x1a43: 0x000a, 0x1a44: 0x000a, 0x1a45: 0x000a, -+ 0x1a46: 0x000a, 0x1a47: 0x000a, 0x1a48: 0x000a, 0x1a49: 0x000a, 0x1a4a: 0x000a, 0x1a4b: 0x000a, -+ 0x1a4c: 0x000a, 0x1a4d: 0x000a, 0x1a4e: 0x000a, 0x1a4f: 0x000a, 0x1a50: 0x000a, 0x1a51: 0x000a, -+ 0x1a52: 0x000a, 0x1a53: 0x000a, 0x1a54: 0x000a, 0x1a55: 0x000a, 0x1a56: 0x000a, 0x1a57: 0x000a, -+ 0x1a58: 0x000a, 0x1a59: 0x000a, 0x1a5a: 0x000a, 0x1a5b: 0x000a, 0x1a5c: 0x000a, 0x1a5d: 0x000a, -+ 0x1a5e: 0x000a, 0x1a5f: 0x000a, 0x1a60: 0x000a, 0x1a61: 0x000a, 0x1a62: 0x003a, 0x1a63: 0x002a, -+ 0x1a64: 0x003a, 0x1a65: 0x002a, 0x1a66: 0x003a, 0x1a67: 0x002a, 0x1a68: 0x003a, 0x1a69: 0x002a, -+ 0x1a6a: 0x000a, 0x1a6b: 0x000a, 0x1a6c: 0x000a, 0x1a6d: 0x000a, 0x1a6e: 0x000a, 0x1a6f: 0x000a, -+ 0x1a70: 0x000a, 0x1a71: 0x000a, 0x1a72: 0x000a, 0x1a73: 0x000a, 0x1a74: 0x000a, 0x1a75: 0x000a, -+ 0x1a76: 0x000a, 0x1a77: 0x000a, 0x1a78: 0x000a, 0x1a79: 0x000a, 0x1a7a: 0x000a, 0x1a7b: 0x000a, -+ 0x1a7c: 0x000a, 0x1a7d: 0x000a, 0x1a7e: 0x000a, 0x1a7f: 0x000a, -+ // Block 0x6a, offset 0x1a80 -+ 0x1a80: 0x000a, 0x1a81: 0x000a, 0x1a82: 0x000a, 0x1a83: 0x000a, 0x1a84: 0x000a, 0x1a85: 0x000a, -+ 0x1a86: 0x000a, 0x1a87: 0x000a, 0x1a88: 0x000a, 0x1a89: 0x000a, 0x1a8a: 0x000a, 0x1a8b: 0x000a, -+ 0x1a8c: 0x000a, 0x1a8d: 0x000a, 0x1a8e: 0x000a, 0x1a8f: 0x000a, -+ // Block 0x6b, offset 0x1ac0 -+ 0x1ac0: 0x000a, 0x1ac1: 0x000a, 0x1ac2: 0x000a, 0x1ac3: 0x000a, 0x1ac4: 0x000a, 0x1ac5: 0x000a, -+ 0x1ac6: 0x000a, 0x1ac7: 0x000a, 0x1ac8: 0x000a, 0x1ac9: 0x000a, 0x1aca: 0x000a, 0x1acb: 0x000a, -+ 0x1acc: 0x000a, 0x1acd: 0x000a, 0x1ace: 0x000a, 0x1acf: 0x000a, 0x1ad0: 0x000a, 0x1ad1: 0x000a, -+ 0x1ad2: 0x000a, 0x1ad3: 0x000a, 0x1ad4: 0x000a, 0x1ad5: 0x000a, 0x1ad6: 0x000a, 0x1ad7: 0x000a, -+ 0x1ad8: 0x000a, 0x1ad9: 0x000a, 0x1adb: 0x000a, 0x1adc: 0x000a, 0x1add: 0x000a, -+ 0x1ade: 0x000a, 0x1adf: 0x000a, 0x1ae0: 0x000a, 0x1ae1: 0x000a, 0x1ae2: 0x000a, 0x1ae3: 0x000a, -+ 0x1ae4: 0x000a, 0x1ae5: 0x000a, 0x1ae6: 0x000a, 0x1ae7: 0x000a, 0x1ae8: 0x000a, 0x1ae9: 0x000a, -+ 0x1aea: 0x000a, 0x1aeb: 0x000a, 0x1aec: 0x000a, 0x1aed: 0x000a, 0x1aee: 0x000a, 0x1aef: 0x000a, -+ 0x1af0: 0x000a, 0x1af1: 0x000a, 0x1af2: 0x000a, 0x1af3: 0x000a, 0x1af4: 0x000a, 0x1af5: 0x000a, -+ 0x1af6: 0x000a, 0x1af7: 0x000a, 0x1af8: 0x000a, 0x1af9: 0x000a, 0x1afa: 0x000a, 0x1afb: 0x000a, -+ 0x1afc: 0x000a, 0x1afd: 0x000a, 0x1afe: 0x000a, 0x1aff: 0x000a, -+ // Block 0x6c, offset 0x1b00 -+ 0x1b00: 0x000a, 0x1b01: 0x000a, 0x1b02: 0x000a, 0x1b03: 0x000a, 0x1b04: 0x000a, 0x1b05: 0x000a, -+ 0x1b06: 0x000a, 0x1b07: 0x000a, 0x1b08: 0x000a, 0x1b09: 0x000a, 0x1b0a: 0x000a, 0x1b0b: 0x000a, -+ 0x1b0c: 0x000a, 0x1b0d: 0x000a, 0x1b0e: 0x000a, 0x1b0f: 0x000a, 0x1b10: 0x000a, 0x1b11: 0x000a, -+ 0x1b12: 0x000a, 0x1b13: 0x000a, 0x1b14: 0x000a, 0x1b15: 0x000a, 0x1b16: 0x000a, 0x1b17: 0x000a, -+ 0x1b18: 0x000a, 0x1b19: 0x000a, 0x1b1a: 0x000a, 0x1b1b: 0x000a, 0x1b1c: 0x000a, 0x1b1d: 0x000a, -+ 0x1b1e: 0x000a, 0x1b1f: 0x000a, 0x1b20: 0x000a, 0x1b21: 0x000a, 0x1b22: 0x000a, 0x1b23: 0x000a, -+ 0x1b24: 0x000a, 0x1b25: 0x000a, 0x1b26: 0x000a, 0x1b27: 0x000a, 0x1b28: 0x000a, 0x1b29: 0x000a, -+ 0x1b2a: 0x000a, 0x1b2b: 0x000a, 0x1b2c: 0x000a, 0x1b2d: 0x000a, 0x1b2e: 0x000a, 0x1b2f: 0x000a, -+ 0x1b30: 0x000a, 0x1b31: 0x000a, 0x1b32: 0x000a, 0x1b33: 0x000a, -+ // Block 0x6d, offset 0x1b40 -+ 0x1b40: 0x000a, 0x1b41: 0x000a, 0x1b42: 0x000a, 0x1b43: 0x000a, 0x1b44: 0x000a, 0x1b45: 0x000a, -+ 0x1b46: 0x000a, 0x1b47: 0x000a, 0x1b48: 0x000a, 0x1b49: 0x000a, 0x1b4a: 0x000a, 0x1b4b: 0x000a, -+ 0x1b4c: 0x000a, 0x1b4d: 0x000a, 0x1b4e: 0x000a, 0x1b4f: 0x000a, 0x1b50: 0x000a, 0x1b51: 0x000a, -+ 0x1b52: 0x000a, 0x1b53: 0x000a, 0x1b54: 0x000a, 0x1b55: 0x000a, -+ 0x1b70: 0x000a, 0x1b71: 0x000a, 0x1b72: 0x000a, 0x1b73: 0x000a, 0x1b74: 0x000a, 0x1b75: 0x000a, -+ 0x1b76: 0x000a, 0x1b77: 0x000a, 0x1b78: 0x000a, 0x1b79: 0x000a, 0x1b7a: 0x000a, 0x1b7b: 0x000a, -+ // Block 0x6e, offset 0x1b80 -+ 0x1b80: 0x0009, 0x1b81: 0x000a, 0x1b82: 0x000a, 0x1b83: 0x000a, 0x1b84: 0x000a, -+ 0x1b88: 0x003a, 0x1b89: 0x002a, 0x1b8a: 0x003a, 0x1b8b: 0x002a, -+ 0x1b8c: 0x003a, 0x1b8d: 0x002a, 0x1b8e: 0x003a, 0x1b8f: 0x002a, 0x1b90: 0x003a, 0x1b91: 0x002a, -+ 0x1b92: 0x000a, 0x1b93: 0x000a, 0x1b94: 0x003a, 0x1b95: 0x002a, 0x1b96: 0x003a, 0x1b97: 0x002a, -+ 0x1b98: 0x003a, 0x1b99: 0x002a, 0x1b9a: 0x003a, 0x1b9b: 0x002a, 0x1b9c: 0x000a, 0x1b9d: 0x000a, -+ 0x1b9e: 0x000a, 0x1b9f: 0x000a, 0x1ba0: 0x000a, -+ 0x1baa: 0x000c, 0x1bab: 0x000c, 0x1bac: 0x000c, 0x1bad: 0x000c, -+ 0x1bb0: 0x000a, -+ 0x1bb6: 0x000a, 0x1bb7: 0x000a, -+ 0x1bbd: 0x000a, 0x1bbe: 0x000a, 0x1bbf: 0x000a, -+ // Block 0x6f, offset 0x1bc0 -+ 0x1bd9: 0x000c, 0x1bda: 0x000c, 0x1bdb: 0x000a, 0x1bdc: 0x000a, -+ 0x1be0: 0x000a, -+ // Block 0x70, offset 0x1c00 -+ 0x1c3b: 0x000a, -+ // Block 0x71, offset 0x1c40 -+ 0x1c40: 0x000a, 0x1c41: 0x000a, 0x1c42: 0x000a, 0x1c43: 0x000a, 0x1c44: 0x000a, 0x1c45: 0x000a, -+ 0x1c46: 0x000a, 0x1c47: 0x000a, 0x1c48: 0x000a, 0x1c49: 0x000a, 0x1c4a: 0x000a, 0x1c4b: 0x000a, -+ 0x1c4c: 0x000a, 0x1c4d: 0x000a, 0x1c4e: 0x000a, 0x1c4f: 0x000a, 0x1c50: 0x000a, 0x1c51: 0x000a, -+ 0x1c52: 0x000a, 0x1c53: 0x000a, 0x1c54: 0x000a, 0x1c55: 0x000a, 0x1c56: 0x000a, 0x1c57: 0x000a, -+ 0x1c58: 0x000a, 0x1c59: 0x000a, 0x1c5a: 0x000a, 0x1c5b: 0x000a, 0x1c5c: 0x000a, 0x1c5d: 0x000a, -+ 0x1c5e: 0x000a, 0x1c5f: 0x000a, 0x1c60: 0x000a, 0x1c61: 0x000a, 0x1c62: 0x000a, 0x1c63: 0x000a, -+ // Block 0x72, offset 0x1c80 -+ 0x1c9d: 0x000a, -+ 0x1c9e: 0x000a, -+ // Block 0x73, offset 0x1cc0 -+ 0x1cd0: 0x000a, 0x1cd1: 0x000a, -+ 0x1cd2: 0x000a, 0x1cd3: 0x000a, 0x1cd4: 0x000a, 0x1cd5: 0x000a, 0x1cd6: 0x000a, 0x1cd7: 0x000a, -+ 0x1cd8: 0x000a, 0x1cd9: 0x000a, 0x1cda: 0x000a, 0x1cdb: 0x000a, 0x1cdc: 0x000a, 0x1cdd: 0x000a, -+ 0x1cde: 0x000a, 0x1cdf: 0x000a, -+ 0x1cfc: 0x000a, 0x1cfd: 0x000a, 0x1cfe: 0x000a, -+ // Block 0x74, offset 0x1d00 -+ 0x1d31: 0x000a, 0x1d32: 0x000a, 0x1d33: 0x000a, 0x1d34: 0x000a, 0x1d35: 0x000a, -+ 0x1d36: 0x000a, 0x1d37: 0x000a, 0x1d38: 0x000a, 0x1d39: 0x000a, 0x1d3a: 0x000a, 0x1d3b: 0x000a, -+ 0x1d3c: 0x000a, 0x1d3d: 0x000a, 0x1d3e: 0x000a, 0x1d3f: 0x000a, -+ // Block 0x75, offset 0x1d40 -+ 0x1d4c: 0x000a, 0x1d4d: 0x000a, 0x1d4e: 0x000a, 0x1d4f: 0x000a, -+ // Block 0x76, offset 0x1d80 -+ 0x1db7: 0x000a, 0x1db8: 0x000a, 0x1db9: 0x000a, 0x1dba: 0x000a, -+ // Block 0x77, offset 0x1dc0 -+ 0x1dde: 0x000a, 0x1ddf: 0x000a, -+ 0x1dff: 0x000a, -+ // Block 0x78, offset 0x1e00 -+ 0x1e10: 0x000a, 0x1e11: 0x000a, -+ 0x1e12: 0x000a, 0x1e13: 0x000a, 0x1e14: 0x000a, 0x1e15: 0x000a, 0x1e16: 0x000a, 0x1e17: 0x000a, -+ 0x1e18: 0x000a, 0x1e19: 0x000a, 0x1e1a: 0x000a, 0x1e1b: 0x000a, 0x1e1c: 0x000a, 0x1e1d: 0x000a, -+ 0x1e1e: 0x000a, 0x1e1f: 0x000a, 0x1e20: 0x000a, 0x1e21: 0x000a, 0x1e22: 0x000a, 0x1e23: 0x000a, -+ 0x1e24: 0x000a, 0x1e25: 0x000a, 0x1e26: 0x000a, 0x1e27: 0x000a, 0x1e28: 0x000a, 0x1e29: 0x000a, -+ 0x1e2a: 0x000a, 0x1e2b: 0x000a, 0x1e2c: 0x000a, 0x1e2d: 0x000a, 0x1e2e: 0x000a, 0x1e2f: 0x000a, -+ 0x1e30: 0x000a, 0x1e31: 0x000a, 0x1e32: 0x000a, 0x1e33: 0x000a, 0x1e34: 0x000a, 0x1e35: 0x000a, -+ 0x1e36: 0x000a, 0x1e37: 0x000a, 0x1e38: 0x000a, 0x1e39: 0x000a, 0x1e3a: 0x000a, 0x1e3b: 0x000a, -+ 0x1e3c: 0x000a, 0x1e3d: 0x000a, 0x1e3e: 0x000a, 0x1e3f: 0x000a, -+ // Block 0x79, offset 0x1e40 -+ 0x1e40: 0x000a, 0x1e41: 0x000a, 0x1e42: 0x000a, 0x1e43: 0x000a, 0x1e44: 0x000a, 0x1e45: 0x000a, -+ 0x1e46: 0x000a, -+ // Block 0x7a, offset 0x1e80 -+ 0x1e8d: 0x000a, 0x1e8e: 0x000a, 0x1e8f: 0x000a, -+ // Block 0x7b, offset 0x1ec0 -+ 0x1eef: 0x000c, -+ 0x1ef0: 0x000c, 0x1ef1: 0x000c, 0x1ef2: 0x000c, 0x1ef3: 0x000a, 0x1ef4: 0x000c, 0x1ef5: 0x000c, -+ 0x1ef6: 0x000c, 0x1ef7: 0x000c, 0x1ef8: 0x000c, 0x1ef9: 0x000c, 0x1efa: 0x000c, 0x1efb: 0x000c, -+ 0x1efc: 0x000c, 0x1efd: 0x000c, 0x1efe: 0x000a, 0x1eff: 0x000a, -+ // Block 0x7c, offset 0x1f00 -+ 0x1f1e: 0x000c, 0x1f1f: 0x000c, -+ // Block 0x7d, offset 0x1f40 -+ 0x1f70: 0x000c, 0x1f71: 0x000c, -+ // Block 0x7e, offset 0x1f80 -+ 0x1f80: 0x000a, 0x1f81: 0x000a, 0x1f82: 0x000a, 0x1f83: 0x000a, 0x1f84: 0x000a, 0x1f85: 0x000a, -+ 0x1f86: 0x000a, 0x1f87: 0x000a, 0x1f88: 0x000a, 0x1f89: 0x000a, 0x1f8a: 0x000a, 0x1f8b: 0x000a, -+ 0x1f8c: 0x000a, 0x1f8d: 0x000a, 0x1f8e: 0x000a, 0x1f8f: 0x000a, 0x1f90: 0x000a, 0x1f91: 0x000a, -+ 0x1f92: 0x000a, 0x1f93: 0x000a, 0x1f94: 0x000a, 0x1f95: 0x000a, 0x1f96: 0x000a, 0x1f97: 0x000a, -+ 0x1f98: 0x000a, 0x1f99: 0x000a, 0x1f9a: 0x000a, 0x1f9b: 0x000a, 0x1f9c: 0x000a, 0x1f9d: 0x000a, -+ 0x1f9e: 0x000a, 0x1f9f: 0x000a, 0x1fa0: 0x000a, 0x1fa1: 0x000a, -+ // Block 0x7f, offset 0x1fc0 -+ 0x1fc8: 0x000a, -+ // Block 0x80, offset 0x2000 -+ 0x2002: 0x000c, -+ 0x2006: 0x000c, 0x200b: 0x000c, -+ 0x2025: 0x000c, 0x2026: 0x000c, 0x2028: 0x000a, 0x2029: 0x000a, -+ 0x202a: 0x000a, 0x202b: 0x000a, -+ 0x2038: 0x0004, 0x2039: 0x0004, -+ // Block 0x81, offset 0x2040 -+ 0x2074: 0x000a, 0x2075: 0x000a, -+ 0x2076: 0x000a, 0x2077: 0x000a, -+ // Block 0x82, offset 0x2080 -+ 0x2084: 0x000c, 0x2085: 0x000c, -+ 0x20a0: 0x000c, 0x20a1: 0x000c, 0x20a2: 0x000c, 0x20a3: 0x000c, -+ 0x20a4: 0x000c, 0x20a5: 0x000c, 0x20a6: 0x000c, 0x20a7: 0x000c, 0x20a8: 0x000c, 0x20a9: 0x000c, -+ 0x20aa: 0x000c, 0x20ab: 0x000c, 0x20ac: 0x000c, 0x20ad: 0x000c, 0x20ae: 0x000c, 0x20af: 0x000c, -+ 0x20b0: 0x000c, 0x20b1: 0x000c, -+ 0x20bf: 0x000c, -+ // Block 0x83, offset 0x20c0 -+ 0x20e6: 0x000c, 0x20e7: 0x000c, 0x20e8: 0x000c, 0x20e9: 0x000c, -+ 0x20ea: 0x000c, 0x20eb: 0x000c, 0x20ec: 0x000c, 0x20ed: 0x000c, -+ // Block 0x84, offset 0x2100 -+ 0x2107: 0x000c, 0x2108: 0x000c, 0x2109: 0x000c, 0x210a: 0x000c, 0x210b: 0x000c, -+ 0x210c: 0x000c, 0x210d: 0x000c, 0x210e: 0x000c, 0x210f: 0x000c, 0x2110: 0x000c, 0x2111: 0x000c, -+ // Block 0x85, offset 0x2140 -+ 0x2140: 0x000c, 0x2141: 0x000c, 0x2142: 0x000c, -+ 0x2173: 0x000c, -+ 0x2176: 0x000c, 0x2177: 0x000c, 0x2178: 0x000c, 0x2179: 0x000c, -+ 0x217c: 0x000c, 0x217d: 0x000c, -+ // Block 0x86, offset 0x2180 -+ 0x21a5: 0x000c, -+ // Block 0x87, offset 0x21c0 -+ 0x21e9: 0x000c, -+ 0x21ea: 0x000c, 0x21eb: 0x000c, 0x21ec: 0x000c, 0x21ed: 0x000c, 0x21ee: 0x000c, -+ 0x21f1: 0x000c, 0x21f2: 0x000c, 0x21f5: 0x000c, -+ 0x21f6: 0x000c, -+ // Block 0x88, offset 0x2200 -+ 0x2203: 0x000c, -+ 0x220c: 0x000c, -+ 0x223c: 0x000c, -+ // Block 0x89, offset 0x2240 -+ 0x2270: 0x000c, 0x2272: 0x000c, 0x2273: 0x000c, 0x2274: 0x000c, -+ 0x2277: 0x000c, 0x2278: 0x000c, -+ 0x227e: 0x000c, 0x227f: 0x000c, -+ // Block 0x8a, offset 0x2280 -+ 0x2281: 0x000c, -+ 0x22ac: 0x000c, 0x22ad: 0x000c, -+ 0x22b6: 0x000c, -+ // Block 0x8b, offset 0x22c0 -+ 0x22e5: 0x000c, 0x22e8: 0x000c, -+ 0x22ed: 0x000c, -+ // Block 0x8c, offset 0x2300 -+ 0x231d: 0x0001, -+ 0x231e: 0x000c, 0x231f: 0x0001, 0x2320: 0x0001, 0x2321: 0x0001, 0x2322: 0x0001, 0x2323: 0x0001, -+ 0x2324: 0x0001, 0x2325: 0x0001, 0x2326: 0x0001, 0x2327: 0x0001, 0x2328: 0x0001, 0x2329: 0x0003, -+ 0x232a: 0x0001, 0x232b: 0x0001, 0x232c: 0x0001, 0x232d: 0x0001, 0x232e: 0x0001, 0x232f: 0x0001, -+ 0x2330: 0x0001, 0x2331: 0x0001, 0x2332: 0x0001, 0x2333: 0x0001, 0x2334: 0x0001, 0x2335: 0x0001, -+ 0x2336: 0x0001, 0x2337: 0x0001, 0x2338: 0x0001, 0x2339: 0x0001, 0x233a: 0x0001, 0x233b: 0x0001, -+ 0x233c: 0x0001, 0x233d: 0x0001, 0x233e: 0x0001, 0x233f: 0x0001, -+ // Block 0x8d, offset 0x2340 -+ 0x2340: 0x0001, 0x2341: 0x0001, 0x2342: 0x0001, 0x2343: 0x0001, 0x2344: 0x0001, 0x2345: 0x0001, -+ 0x2346: 0x0001, 0x2347: 0x0001, 0x2348: 0x0001, 0x2349: 0x0001, 0x234a: 0x0001, 0x234b: 0x0001, -+ 0x234c: 0x0001, 0x234d: 0x0001, 0x234e: 0x0001, 0x234f: 0x0001, 0x2350: 0x000d, 0x2351: 0x000d, -+ 0x2352: 0x000d, 0x2353: 0x000d, 0x2354: 0x000d, 0x2355: 0x000d, 0x2356: 0x000d, 0x2357: 0x000d, -+ 0x2358: 0x000d, 0x2359: 0x000d, 0x235a: 0x000d, 0x235b: 0x000d, 0x235c: 0x000d, 0x235d: 0x000d, -+ 0x235e: 0x000d, 0x235f: 0x000d, 0x2360: 0x000d, 0x2361: 0x000d, 0x2362: 0x000d, 0x2363: 0x000d, -+ 0x2364: 0x000d, 0x2365: 0x000d, 0x2366: 0x000d, 0x2367: 0x000d, 0x2368: 0x000d, 0x2369: 0x000d, -+ 0x236a: 0x000d, 0x236b: 0x000d, 0x236c: 0x000d, 0x236d: 0x000d, 0x236e: 0x000d, 0x236f: 0x000d, -+ 0x2370: 0x000d, 0x2371: 0x000d, 0x2372: 0x000d, 0x2373: 0x000d, 0x2374: 0x000d, 0x2375: 0x000d, -+ 0x2376: 0x000d, 0x2377: 0x000d, 0x2378: 0x000d, 0x2379: 0x000d, 0x237a: 0x000d, 0x237b: 0x000d, -+ 0x237c: 0x000d, 0x237d: 0x000d, 0x237e: 0x000d, 0x237f: 0x000d, -+ // Block 0x8e, offset 0x2380 -+ 0x2380: 0x000d, 0x2381: 0x000d, 0x2382: 0x000d, 0x2383: 0x000d, 0x2384: 0x000d, 0x2385: 0x000d, -+ 0x2386: 0x000d, 0x2387: 0x000d, 0x2388: 0x000d, 0x2389: 0x000d, 0x238a: 0x000d, 0x238b: 0x000d, -+ 0x238c: 0x000d, 0x238d: 0x000d, 0x238e: 0x000d, 0x238f: 0x000d, 0x2390: 0x000d, 0x2391: 0x000d, -+ 0x2392: 0x000d, 0x2393: 0x000d, 0x2394: 0x000d, 0x2395: 0x000d, 0x2396: 0x000d, 0x2397: 0x000d, -+ 0x2398: 0x000d, 0x2399: 0x000d, 0x239a: 0x000d, 0x239b: 0x000d, 0x239c: 0x000d, 0x239d: 0x000d, -+ 0x239e: 0x000d, 0x239f: 0x000d, 0x23a0: 0x000d, 0x23a1: 0x000d, 0x23a2: 0x000d, 0x23a3: 0x000d, -+ 0x23a4: 0x000d, 0x23a5: 0x000d, 0x23a6: 0x000d, 0x23a7: 0x000d, 0x23a8: 0x000d, 0x23a9: 0x000d, -+ 0x23aa: 0x000d, 0x23ab: 0x000d, 0x23ac: 0x000d, 0x23ad: 0x000d, 0x23ae: 0x000d, 0x23af: 0x000d, -+ 0x23b0: 0x000d, 0x23b1: 0x000d, 0x23b2: 0x000d, 0x23b3: 0x000d, 0x23b4: 0x000d, 0x23b5: 0x000d, -+ 0x23b6: 0x000d, 0x23b7: 0x000d, 0x23b8: 0x000d, 0x23b9: 0x000d, 0x23ba: 0x000d, 0x23bb: 0x000d, -+ 0x23bc: 0x000d, 0x23bd: 0x000d, 0x23be: 0x000a, 0x23bf: 0x000a, -+ // Block 0x8f, offset 0x23c0 -+ 0x23c0: 0x000d, 0x23c1: 0x000d, 0x23c2: 0x000d, 0x23c3: 0x000d, 0x23c4: 0x000d, 0x23c5: 0x000d, -+ 0x23c6: 0x000d, 0x23c7: 0x000d, 0x23c8: 0x000d, 0x23c9: 0x000d, 0x23ca: 0x000d, 0x23cb: 0x000d, -+ 0x23cc: 0x000d, 0x23cd: 0x000d, 0x23ce: 0x000d, 0x23cf: 0x000d, 0x23d0: 0x000b, 0x23d1: 0x000b, -+ 0x23d2: 0x000b, 0x23d3: 0x000b, 0x23d4: 0x000b, 0x23d5: 0x000b, 0x23d6: 0x000b, 0x23d7: 0x000b, -+ 0x23d8: 0x000b, 0x23d9: 0x000b, 0x23da: 0x000b, 0x23db: 0x000b, 0x23dc: 0x000b, 0x23dd: 0x000b, -+ 0x23de: 0x000b, 0x23df: 0x000b, 0x23e0: 0x000b, 0x23e1: 0x000b, 0x23e2: 0x000b, 0x23e3: 0x000b, -+ 0x23e4: 0x000b, 0x23e5: 0x000b, 0x23e6: 0x000b, 0x23e7: 0x000b, 0x23e8: 0x000b, 0x23e9: 0x000b, -+ 0x23ea: 0x000b, 0x23eb: 0x000b, 0x23ec: 0x000b, 0x23ed: 0x000b, 0x23ee: 0x000b, 0x23ef: 0x000b, -+ 0x23f0: 0x000d, 0x23f1: 0x000d, 0x23f2: 0x000d, 0x23f3: 0x000d, 0x23f4: 0x000d, 0x23f5: 0x000d, -+ 0x23f6: 0x000d, 0x23f7: 0x000d, 0x23f8: 0x000d, 0x23f9: 0x000d, 0x23fa: 0x000d, 0x23fb: 0x000d, -+ 0x23fc: 0x000d, 0x23fd: 0x000a, 0x23fe: 0x000d, 0x23ff: 0x000d, -+ // Block 0x90, offset 0x2400 -+ 0x2400: 0x000c, 0x2401: 0x000c, 0x2402: 0x000c, 0x2403: 0x000c, 0x2404: 0x000c, 0x2405: 0x000c, -+ 0x2406: 0x000c, 0x2407: 0x000c, 0x2408: 0x000c, 0x2409: 0x000c, 0x240a: 0x000c, 0x240b: 0x000c, -+ 0x240c: 0x000c, 0x240d: 0x000c, 0x240e: 0x000c, 0x240f: 0x000c, 0x2410: 0x000a, 0x2411: 0x000a, -+ 0x2412: 0x000a, 0x2413: 0x000a, 0x2414: 0x000a, 0x2415: 0x000a, 0x2416: 0x000a, 0x2417: 0x000a, -+ 0x2418: 0x000a, 0x2419: 0x000a, -+ 0x2420: 0x000c, 0x2421: 0x000c, 0x2422: 0x000c, 0x2423: 0x000c, -+ 0x2424: 0x000c, 0x2425: 0x000c, 0x2426: 0x000c, 0x2427: 0x000c, 0x2428: 0x000c, 0x2429: 0x000c, -+ 0x242a: 0x000c, 0x242b: 0x000c, 0x242c: 0x000c, 0x242d: 0x000c, 0x242e: 0x000c, 0x242f: 0x000c, -+ 0x2430: 0x000a, 0x2431: 0x000a, 0x2432: 0x000a, 0x2433: 0x000a, 0x2434: 0x000a, 0x2435: 0x000a, -+ 0x2436: 0x000a, 0x2437: 0x000a, 0x2438: 0x000a, 0x2439: 0x000a, 0x243a: 0x000a, 0x243b: 0x000a, -+ 0x243c: 0x000a, 0x243d: 0x000a, 0x243e: 0x000a, 0x243f: 0x000a, -+ // Block 0x91, offset 0x2440 -+ 0x2440: 0x000a, 0x2441: 0x000a, 0x2442: 0x000a, 0x2443: 0x000a, 0x2444: 0x000a, 0x2445: 0x000a, -+ 0x2446: 0x000a, 0x2447: 0x000a, 0x2448: 0x000a, 0x2449: 0x000a, 0x244a: 0x000a, 0x244b: 0x000a, -+ 0x244c: 0x000a, 0x244d: 0x000a, 0x244e: 0x000a, 0x244f: 0x000a, 0x2450: 0x0006, 0x2451: 0x000a, -+ 0x2452: 0x0006, 0x2454: 0x000a, 0x2455: 0x0006, 0x2456: 0x000a, 0x2457: 0x000a, -+ 0x2458: 0x000a, 0x2459: 0x009a, 0x245a: 0x008a, 0x245b: 0x007a, 0x245c: 0x006a, 0x245d: 0x009a, -+ 0x245e: 0x008a, 0x245f: 0x0004, 0x2460: 0x000a, 0x2461: 0x000a, 0x2462: 0x0003, 0x2463: 0x0003, -+ 0x2464: 0x000a, 0x2465: 0x000a, 0x2466: 0x000a, 0x2468: 0x000a, 0x2469: 0x0004, -+ 0x246a: 0x0004, 0x246b: 0x000a, -+ 0x2470: 0x000d, 0x2471: 0x000d, 0x2472: 0x000d, 0x2473: 0x000d, 0x2474: 0x000d, 0x2475: 0x000d, -+ 0x2476: 0x000d, 0x2477: 0x000d, 0x2478: 0x000d, 0x2479: 0x000d, 0x247a: 0x000d, 0x247b: 0x000d, -+ 0x247c: 0x000d, 0x247d: 0x000d, 0x247e: 0x000d, 0x247f: 0x000d, -+ // Block 0x92, offset 0x2480 -+ 0x2480: 0x000d, 0x2481: 0x000d, 0x2482: 0x000d, 0x2483: 0x000d, 0x2484: 0x000d, 0x2485: 0x000d, -+ 0x2486: 0x000d, 0x2487: 0x000d, 0x2488: 0x000d, 0x2489: 0x000d, 0x248a: 0x000d, 0x248b: 0x000d, -+ 0x248c: 0x000d, 0x248d: 0x000d, 0x248e: 0x000d, 0x248f: 0x000d, 0x2490: 0x000d, 0x2491: 0x000d, -+ 0x2492: 0x000d, 0x2493: 0x000d, 0x2494: 0x000d, 0x2495: 0x000d, 0x2496: 0x000d, 0x2497: 0x000d, -+ 0x2498: 0x000d, 0x2499: 0x000d, 0x249a: 0x000d, 0x249b: 0x000d, 0x249c: 0x000d, 0x249d: 0x000d, -+ 0x249e: 0x000d, 0x249f: 0x000d, 0x24a0: 0x000d, 0x24a1: 0x000d, 0x24a2: 0x000d, 0x24a3: 0x000d, -+ 0x24a4: 0x000d, 0x24a5: 0x000d, 0x24a6: 0x000d, 0x24a7: 0x000d, 0x24a8: 0x000d, 0x24a9: 0x000d, -+ 0x24aa: 0x000d, 0x24ab: 0x000d, 0x24ac: 0x000d, 0x24ad: 0x000d, 0x24ae: 0x000d, 0x24af: 0x000d, -+ 0x24b0: 0x000d, 0x24b1: 0x000d, 0x24b2: 0x000d, 0x24b3: 0x000d, 0x24b4: 0x000d, 0x24b5: 0x000d, -+ 0x24b6: 0x000d, 0x24b7: 0x000d, 0x24b8: 0x000d, 0x24b9: 0x000d, 0x24ba: 0x000d, 0x24bb: 0x000d, -+ 0x24bc: 0x000d, 0x24bd: 0x000d, 0x24be: 0x000d, 0x24bf: 0x000b, -+ // Block 0x93, offset 0x24c0 -+ 0x24c1: 0x000a, 0x24c2: 0x000a, 0x24c3: 0x0004, 0x24c4: 0x0004, 0x24c5: 0x0004, -+ 0x24c6: 0x000a, 0x24c7: 0x000a, 0x24c8: 0x003a, 0x24c9: 0x002a, 0x24ca: 0x000a, 0x24cb: 0x0003, -+ 0x24cc: 0x0006, 0x24cd: 0x0003, 0x24ce: 0x0006, 0x24cf: 0x0006, 0x24d0: 0x0002, 0x24d1: 0x0002, -+ 0x24d2: 0x0002, 0x24d3: 0x0002, 0x24d4: 0x0002, 0x24d5: 0x0002, 0x24d6: 0x0002, 0x24d7: 0x0002, -+ 0x24d8: 0x0002, 0x24d9: 0x0002, 0x24da: 0x0006, 0x24db: 0x000a, 0x24dc: 0x000a, 0x24dd: 0x000a, -+ 0x24de: 0x000a, 0x24df: 0x000a, 0x24e0: 0x000a, -+ 0x24fb: 0x005a, -+ 0x24fc: 0x000a, 0x24fd: 0x004a, 0x24fe: 0x000a, 0x24ff: 0x000a, -+ // Block 0x94, offset 0x2500 -+ 0x2500: 0x000a, -+ 0x251b: 0x005a, 0x251c: 0x000a, 0x251d: 0x004a, -+ 0x251e: 0x000a, 0x251f: 0x00fa, 0x2520: 0x00ea, 0x2521: 0x000a, 0x2522: 0x003a, 0x2523: 0x002a, -+ 0x2524: 0x000a, 0x2525: 0x000a, -+ // Block 0x95, offset 0x2540 -+ 0x2560: 0x0004, 0x2561: 0x0004, 0x2562: 0x000a, 0x2563: 0x000a, -+ 0x2564: 0x000a, 0x2565: 0x0004, 0x2566: 0x0004, 0x2568: 0x000a, 0x2569: 0x000a, -+ 0x256a: 0x000a, 0x256b: 0x000a, 0x256c: 0x000a, 0x256d: 0x000a, 0x256e: 0x000a, -+ 0x2570: 0x000b, 0x2571: 0x000b, 0x2572: 0x000b, 0x2573: 0x000b, 0x2574: 0x000b, 0x2575: 0x000b, -+ 0x2576: 0x000b, 0x2577: 0x000b, 0x2578: 0x000b, 0x2579: 0x000a, 0x257a: 0x000a, 0x257b: 0x000a, -+ 0x257c: 0x000a, 0x257d: 0x000a, 0x257e: 0x000b, 0x257f: 0x000b, -+ // Block 0x96, offset 0x2580 -+ 0x2581: 0x000a, -+ // Block 0x97, offset 0x25c0 -+ 0x25c0: 0x000a, 0x25c1: 0x000a, 0x25c2: 0x000a, 0x25c3: 0x000a, 0x25c4: 0x000a, 0x25c5: 0x000a, -+ 0x25c6: 0x000a, 0x25c7: 0x000a, 0x25c8: 0x000a, 0x25c9: 0x000a, 0x25ca: 0x000a, 0x25cb: 0x000a, -+ 0x25cc: 0x000a, 0x25d0: 0x000a, 0x25d1: 0x000a, -+ 0x25d2: 0x000a, 0x25d3: 0x000a, 0x25d4: 0x000a, 0x25d5: 0x000a, 0x25d6: 0x000a, 0x25d7: 0x000a, -+ 0x25d8: 0x000a, 0x25d9: 0x000a, 0x25da: 0x000a, 0x25db: 0x000a, -+ 0x25e0: 0x000a, -+ // Block 0x98, offset 0x2600 -+ 0x263d: 0x000c, -+ // Block 0x99, offset 0x2640 -+ 0x2660: 0x000c, 0x2661: 0x0002, 0x2662: 0x0002, 0x2663: 0x0002, -+ 0x2664: 0x0002, 0x2665: 0x0002, 0x2666: 0x0002, 0x2667: 0x0002, 0x2668: 0x0002, 0x2669: 0x0002, -+ 0x266a: 0x0002, 0x266b: 0x0002, 0x266c: 0x0002, 0x266d: 0x0002, 0x266e: 0x0002, 0x266f: 0x0002, -+ 0x2670: 0x0002, 0x2671: 0x0002, 0x2672: 0x0002, 0x2673: 0x0002, 0x2674: 0x0002, 0x2675: 0x0002, -+ 0x2676: 0x0002, 0x2677: 0x0002, 0x2678: 0x0002, 0x2679: 0x0002, 0x267a: 0x0002, 0x267b: 0x0002, -+ // Block 0x9a, offset 0x2680 -+ 0x26b6: 0x000c, 0x26b7: 0x000c, 0x26b8: 0x000c, 0x26b9: 0x000c, 0x26ba: 0x000c, -+ // Block 0x9b, offset 0x26c0 -+ 0x26c0: 0x0001, 0x26c1: 0x0001, 0x26c2: 0x0001, 0x26c3: 0x0001, 0x26c4: 0x0001, 0x26c5: 0x0001, -+ 0x26c6: 0x0001, 0x26c7: 0x0001, 0x26c8: 0x0001, 0x26c9: 0x0001, 0x26ca: 0x0001, 0x26cb: 0x0001, -+ 0x26cc: 0x0001, 0x26cd: 0x0001, 0x26ce: 0x0001, 0x26cf: 0x0001, 0x26d0: 0x0001, 0x26d1: 0x0001, -+ 0x26d2: 0x0001, 0x26d3: 0x0001, 0x26d4: 0x0001, 0x26d5: 0x0001, 0x26d6: 0x0001, 0x26d7: 0x0001, -+ 0x26d8: 0x0001, 0x26d9: 0x0001, 0x26da: 0x0001, 0x26db: 0x0001, 0x26dc: 0x0001, 0x26dd: 0x0001, -+ 0x26de: 0x0001, 0x26df: 0x0001, 0x26e0: 0x0001, 0x26e1: 0x0001, 0x26e2: 0x0001, 0x26e3: 0x0001, -+ 0x26e4: 0x0001, 0x26e5: 0x0001, 0x26e6: 0x0001, 0x26e7: 0x0001, 0x26e8: 0x0001, 0x26e9: 0x0001, -+ 0x26ea: 0x0001, 0x26eb: 0x0001, 0x26ec: 0x0001, 0x26ed: 0x0001, 0x26ee: 0x0001, 0x26ef: 0x0001, -+ 0x26f0: 0x0001, 0x26f1: 0x0001, 0x26f2: 0x0001, 0x26f3: 0x0001, 0x26f4: 0x0001, 0x26f5: 0x0001, -+ 0x26f6: 0x0001, 0x26f7: 0x0001, 0x26f8: 0x0001, 0x26f9: 0x0001, 0x26fa: 0x0001, 0x26fb: 0x0001, -+ 0x26fc: 0x0001, 0x26fd: 0x0001, 0x26fe: 0x0001, 0x26ff: 0x0001, -+ // Block 0x9c, offset 0x2700 -+ 0x2700: 0x0001, 0x2701: 0x0001, 0x2702: 0x0001, 0x2703: 0x0001, 0x2704: 0x0001, 0x2705: 0x0001, -+ 0x2706: 0x0001, 0x2707: 0x0001, 0x2708: 0x0001, 0x2709: 0x0001, 0x270a: 0x0001, 0x270b: 0x0001, -+ 0x270c: 0x0001, 0x270d: 0x0001, 0x270e: 0x0001, 0x270f: 0x0001, 0x2710: 0x0001, 0x2711: 0x0001, -+ 0x2712: 0x0001, 0x2713: 0x0001, 0x2714: 0x0001, 0x2715: 0x0001, 0x2716: 0x0001, 0x2717: 0x0001, -+ 0x2718: 0x0001, 0x2719: 0x0001, 0x271a: 0x0001, 0x271b: 0x0001, 0x271c: 0x0001, 0x271d: 0x0001, -+ 0x271e: 0x0001, 0x271f: 0x000a, 0x2720: 0x0001, 0x2721: 0x0001, 0x2722: 0x0001, 0x2723: 0x0001, -+ 0x2724: 0x0001, 0x2725: 0x0001, 0x2726: 0x0001, 0x2727: 0x0001, 0x2728: 0x0001, 0x2729: 0x0001, -+ 0x272a: 0x0001, 0x272b: 0x0001, 0x272c: 0x0001, 0x272d: 0x0001, 0x272e: 0x0001, 0x272f: 0x0001, -+ 0x2730: 0x0001, 0x2731: 0x0001, 0x2732: 0x0001, 0x2733: 0x0001, 0x2734: 0x0001, 0x2735: 0x0001, -+ 0x2736: 0x0001, 0x2737: 0x0001, 0x2738: 0x0001, 0x2739: 0x0001, 0x273a: 0x0001, 0x273b: 0x0001, -+ 0x273c: 0x0001, 0x273d: 0x0001, 0x273e: 0x0001, 0x273f: 0x0001, -+ // Block 0x9d, offset 0x2740 -+ 0x2740: 0x0001, 0x2741: 0x000c, 0x2742: 0x000c, 0x2743: 0x000c, 0x2744: 0x0001, 0x2745: 0x000c, -+ 0x2746: 0x000c, 0x2747: 0x0001, 0x2748: 0x0001, 0x2749: 0x0001, 0x274a: 0x0001, 0x274b: 0x0001, -+ 0x274c: 0x000c, 0x274d: 0x000c, 0x274e: 0x000c, 0x274f: 0x000c, 0x2750: 0x0001, 0x2751: 0x0001, -+ 0x2752: 0x0001, 0x2753: 0x0001, 0x2754: 0x0001, 0x2755: 0x0001, 0x2756: 0x0001, 0x2757: 0x0001, -+ 0x2758: 0x0001, 0x2759: 0x0001, 0x275a: 0x0001, 0x275b: 0x0001, 0x275c: 0x0001, 0x275d: 0x0001, -+ 0x275e: 0x0001, 0x275f: 0x0001, 0x2760: 0x0001, 0x2761: 0x0001, 0x2762: 0x0001, 0x2763: 0x0001, -+ 0x2764: 0x0001, 0x2765: 0x0001, 0x2766: 0x0001, 0x2767: 0x0001, 0x2768: 0x0001, 0x2769: 0x0001, -+ 0x276a: 0x0001, 0x276b: 0x0001, 0x276c: 0x0001, 0x276d: 0x0001, 0x276e: 0x0001, 0x276f: 0x0001, -+ 0x2770: 0x0001, 0x2771: 0x0001, 0x2772: 0x0001, 0x2773: 0x0001, 0x2774: 0x0001, 0x2775: 0x0001, -+ 0x2776: 0x0001, 0x2777: 0x0001, 0x2778: 0x000c, 0x2779: 0x000c, 0x277a: 0x000c, 0x277b: 0x0001, -+ 0x277c: 0x0001, 0x277d: 0x0001, 0x277e: 0x0001, 0x277f: 0x000c, -+ // Block 0x9e, offset 0x2780 -+ 0x2780: 0x0001, 0x2781: 0x0001, 0x2782: 0x0001, 0x2783: 0x0001, 0x2784: 0x0001, 0x2785: 0x0001, -+ 0x2786: 0x0001, 0x2787: 0x0001, 0x2788: 0x0001, 0x2789: 0x0001, 0x278a: 0x0001, 0x278b: 0x0001, -+ 0x278c: 0x0001, 0x278d: 0x0001, 0x278e: 0x0001, 0x278f: 0x0001, 0x2790: 0x0001, 0x2791: 0x0001, -+ 0x2792: 0x0001, 0x2793: 0x0001, 0x2794: 0x0001, 0x2795: 0x0001, 0x2796: 0x0001, 0x2797: 0x0001, -+ 0x2798: 0x0001, 0x2799: 0x0001, 0x279a: 0x0001, 0x279b: 0x0001, 0x279c: 0x0001, 0x279d: 0x0001, -+ 0x279e: 0x0001, 0x279f: 0x0001, 0x27a0: 0x0001, 0x27a1: 0x0001, 0x27a2: 0x0001, 0x27a3: 0x0001, -+ 0x27a4: 0x0001, 0x27a5: 0x000c, 0x27a6: 0x000c, 0x27a7: 0x0001, 0x27a8: 0x0001, 0x27a9: 0x0001, -+ 0x27aa: 0x0001, 0x27ab: 0x0001, 0x27ac: 0x0001, 0x27ad: 0x0001, 0x27ae: 0x0001, 0x27af: 0x0001, -+ 0x27b0: 0x0001, 0x27b1: 0x0001, 0x27b2: 0x0001, 0x27b3: 0x0001, 0x27b4: 0x0001, 0x27b5: 0x0001, -+ 0x27b6: 0x0001, 0x27b7: 0x0001, 0x27b8: 0x0001, 0x27b9: 0x0001, 0x27ba: 0x0001, 0x27bb: 0x0001, -+ 0x27bc: 0x0001, 0x27bd: 0x0001, 0x27be: 0x0001, 0x27bf: 0x0001, -+ // Block 0x9f, offset 0x27c0 -+ 0x27c0: 0x0001, 0x27c1: 0x0001, 0x27c2: 0x0001, 0x27c3: 0x0001, 0x27c4: 0x0001, 0x27c5: 0x0001, -+ 0x27c6: 0x0001, 0x27c7: 0x0001, 0x27c8: 0x0001, 0x27c9: 0x0001, 0x27ca: 0x0001, 0x27cb: 0x0001, -+ 0x27cc: 0x0001, 0x27cd: 0x0001, 0x27ce: 0x0001, 0x27cf: 0x0001, 0x27d0: 0x0001, 0x27d1: 0x0001, -+ 0x27d2: 0x0001, 0x27d3: 0x0001, 0x27d4: 0x0001, 0x27d5: 0x0001, 0x27d6: 0x0001, 0x27d7: 0x0001, -+ 0x27d8: 0x0001, 0x27d9: 0x0001, 0x27da: 0x0001, 0x27db: 0x0001, 0x27dc: 0x0001, 0x27dd: 0x0001, -+ 0x27de: 0x0001, 0x27df: 0x0001, 0x27e0: 0x0001, 0x27e1: 0x0001, 0x27e2: 0x0001, 0x27e3: 0x0001, -+ 0x27e4: 0x0001, 0x27e5: 0x0001, 0x27e6: 0x0001, 0x27e7: 0x0001, 0x27e8: 0x0001, 0x27e9: 0x0001, -+ 0x27ea: 0x0001, 0x27eb: 0x0001, 0x27ec: 0x0001, 0x27ed: 0x0001, 0x27ee: 0x0001, 0x27ef: 0x0001, -+ 0x27f0: 0x0001, 0x27f1: 0x0001, 0x27f2: 0x0001, 0x27f3: 0x0001, 0x27f4: 0x0001, 0x27f5: 0x0001, -+ 0x27f6: 0x0001, 0x27f7: 0x0001, 0x27f8: 0x0001, 0x27f9: 0x000a, 0x27fa: 0x000a, 0x27fb: 0x000a, -+ 0x27fc: 0x000a, 0x27fd: 0x000a, 0x27fe: 0x000a, 0x27ff: 0x000a, -+ // Block 0xa0, offset 0x2800 -+ 0x2800: 0x000d, 0x2801: 0x000d, 0x2802: 0x000d, 0x2803: 0x000d, 0x2804: 0x000d, 0x2805: 0x000d, -+ 0x2806: 0x000d, 0x2807: 0x000d, 0x2808: 0x000d, 0x2809: 0x000d, 0x280a: 0x000d, 0x280b: 0x000d, -+ 0x280c: 0x000d, 0x280d: 0x000d, 0x280e: 0x000d, 0x280f: 0x000d, 0x2810: 0x000d, 0x2811: 0x000d, -+ 0x2812: 0x000d, 0x2813: 0x000d, 0x2814: 0x000d, 0x2815: 0x000d, 0x2816: 0x000d, 0x2817: 0x000d, -+ 0x2818: 0x000d, 0x2819: 0x000d, 0x281a: 0x000d, 0x281b: 0x000d, 0x281c: 0x000d, 0x281d: 0x000d, -+ 0x281e: 0x000d, 0x281f: 0x000d, 0x2820: 0x000d, 0x2821: 0x000d, 0x2822: 0x000d, 0x2823: 0x000d, -+ 0x2824: 0x000c, 0x2825: 0x000c, 0x2826: 0x000c, 0x2827: 0x000c, 0x2828: 0x000d, 0x2829: 0x000d, -+ 0x282a: 0x000d, 0x282b: 0x000d, 0x282c: 0x000d, 0x282d: 0x000d, 0x282e: 0x000d, 0x282f: 0x000d, -+ 0x2830: 0x0005, 0x2831: 0x0005, 0x2832: 0x0005, 0x2833: 0x0005, 0x2834: 0x0005, 0x2835: 0x0005, -+ 0x2836: 0x0005, 0x2837: 0x0005, 0x2838: 0x0005, 0x2839: 0x0005, 0x283a: 0x000d, 0x283b: 0x000d, -+ 0x283c: 0x000d, 0x283d: 0x000d, 0x283e: 0x000d, 0x283f: 0x000d, -+ // Block 0xa1, offset 0x2840 -+ 0x2840: 0x0001, 0x2841: 0x0001, 0x2842: 0x0001, 0x2843: 0x0001, 0x2844: 0x0001, 0x2845: 0x0001, -+ 0x2846: 0x0001, 0x2847: 0x0001, 0x2848: 0x0001, 0x2849: 0x0001, 0x284a: 0x0001, 0x284b: 0x0001, -+ 0x284c: 0x0001, 0x284d: 0x0001, 0x284e: 0x0001, 0x284f: 0x0001, 0x2850: 0x0001, 0x2851: 0x0001, -+ 0x2852: 0x0001, 0x2853: 0x0001, 0x2854: 0x0001, 0x2855: 0x0001, 0x2856: 0x0001, 0x2857: 0x0001, -+ 0x2858: 0x0001, 0x2859: 0x0001, 0x285a: 0x0001, 0x285b: 0x0001, 0x285c: 0x0001, 0x285d: 0x0001, -+ 0x285e: 0x0001, 0x285f: 0x0001, 0x2860: 0x0005, 0x2861: 0x0005, 0x2862: 0x0005, 0x2863: 0x0005, -+ 0x2864: 0x0005, 0x2865: 0x0005, 0x2866: 0x0005, 0x2867: 0x0005, 0x2868: 0x0005, 0x2869: 0x0005, -+ 0x286a: 0x0005, 0x286b: 0x0005, 0x286c: 0x0005, 0x286d: 0x0005, 0x286e: 0x0005, 0x286f: 0x0005, -+ 0x2870: 0x0005, 0x2871: 0x0005, 0x2872: 0x0005, 0x2873: 0x0005, 0x2874: 0x0005, 0x2875: 0x0005, -+ 0x2876: 0x0005, 0x2877: 0x0005, 0x2878: 0x0005, 0x2879: 0x0005, 0x287a: 0x0005, 0x287b: 0x0005, -+ 0x287c: 0x0005, 0x287d: 0x0005, 0x287e: 0x0005, 0x287f: 0x0001, -+ // Block 0xa2, offset 0x2880 -+ 0x2880: 0x0001, 0x2881: 0x0001, 0x2882: 0x0001, 0x2883: 0x0001, 0x2884: 0x0001, 0x2885: 0x0001, -+ 0x2886: 0x0001, 0x2887: 0x0001, 0x2888: 0x0001, 0x2889: 0x0001, 0x288a: 0x0001, 0x288b: 0x0001, -+ 0x288c: 0x0001, 0x288d: 0x0001, 0x288e: 0x0001, 0x288f: 0x0001, 0x2890: 0x0001, 0x2891: 0x0001, -+ 0x2892: 0x0001, 0x2893: 0x0001, 0x2894: 0x0001, 0x2895: 0x0001, 0x2896: 0x0001, 0x2897: 0x0001, -+ 0x2898: 0x0001, 0x2899: 0x0001, 0x289a: 0x0001, 0x289b: 0x0001, 0x289c: 0x0001, 0x289d: 0x0001, -+ 0x289e: 0x0001, 0x289f: 0x0001, 0x28a0: 0x0001, 0x28a1: 0x0001, 0x28a2: 0x0001, 0x28a3: 0x0001, -+ 0x28a4: 0x0001, 0x28a5: 0x0001, 0x28a6: 0x0001, 0x28a7: 0x0001, 0x28a8: 0x0001, 0x28a9: 0x0001, -+ 0x28aa: 0x0001, 0x28ab: 0x0001, 0x28ac: 0x0001, 0x28ad: 0x0001, 0x28ae: 0x0001, 0x28af: 0x0001, -+ 0x28b0: 0x000d, 0x28b1: 0x000d, 0x28b2: 0x000d, 0x28b3: 0x000d, 0x28b4: 0x000d, 0x28b5: 0x000d, -+ 0x28b6: 0x000d, 0x28b7: 0x000d, 0x28b8: 0x000d, 0x28b9: 0x000d, 0x28ba: 0x000d, 0x28bb: 0x000d, -+ 0x28bc: 0x000d, 0x28bd: 0x000d, 0x28be: 0x000d, 0x28bf: 0x000d, -+ // Block 0xa3, offset 0x28c0 -+ 0x28c0: 0x000d, 0x28c1: 0x000d, 0x28c2: 0x000d, 0x28c3: 0x000d, 0x28c4: 0x000d, 0x28c5: 0x000d, -+ 0x28c6: 0x000c, 0x28c7: 0x000c, 0x28c8: 0x000c, 0x28c9: 0x000c, 0x28ca: 0x000c, 0x28cb: 0x000c, -+ 0x28cc: 0x000c, 0x28cd: 0x000c, 0x28ce: 0x000c, 0x28cf: 0x000c, 0x28d0: 0x000c, 0x28d1: 0x000d, -+ 0x28d2: 0x000d, 0x28d3: 0x000d, 0x28d4: 0x000d, 0x28d5: 0x000d, 0x28d6: 0x000d, 0x28d7: 0x000d, -+ 0x28d8: 0x000d, 0x28d9: 0x000d, 0x28da: 0x000d, 0x28db: 0x000d, 0x28dc: 0x000d, 0x28dd: 0x000d, -+ 0x28de: 0x000d, 0x28df: 0x000d, 0x28e0: 0x000d, 0x28e1: 0x000d, 0x28e2: 0x000d, 0x28e3: 0x000d, -+ 0x28e4: 0x000d, 0x28e5: 0x000d, 0x28e6: 0x000d, 0x28e7: 0x000d, 0x28e8: 0x000d, 0x28e9: 0x000d, -+ 0x28ea: 0x000d, 0x28eb: 0x000d, 0x28ec: 0x000d, 0x28ed: 0x000d, 0x28ee: 0x000d, 0x28ef: 0x000d, -+ 0x28f0: 0x0001, 0x28f1: 0x0001, 0x28f2: 0x0001, 0x28f3: 0x0001, 0x28f4: 0x0001, 0x28f5: 0x0001, -+ 0x28f6: 0x0001, 0x28f7: 0x0001, 0x28f8: 0x0001, 0x28f9: 0x0001, 0x28fa: 0x0001, 0x28fb: 0x0001, -+ 0x28fc: 0x0001, 0x28fd: 0x0001, 0x28fe: 0x0001, 0x28ff: 0x0001, -+ // Block 0xa4, offset 0x2900 -+ 0x2901: 0x000c, -+ 0x2938: 0x000c, 0x2939: 0x000c, 0x293a: 0x000c, 0x293b: 0x000c, -+ 0x293c: 0x000c, 0x293d: 0x000c, 0x293e: 0x000c, 0x293f: 0x000c, -+ // Block 0xa5, offset 0x2940 -+ 0x2940: 0x000c, 0x2941: 0x000c, 0x2942: 0x000c, 0x2943: 0x000c, 0x2944: 0x000c, 0x2945: 0x000c, -+ 0x2946: 0x000c, -+ 0x2952: 0x000a, 0x2953: 0x000a, 0x2954: 0x000a, 0x2955: 0x000a, 0x2956: 0x000a, 0x2957: 0x000a, -+ 0x2958: 0x000a, 0x2959: 0x000a, 0x295a: 0x000a, 0x295b: 0x000a, 0x295c: 0x000a, 0x295d: 0x000a, -+ 0x295e: 0x000a, 0x295f: 0x000a, 0x2960: 0x000a, 0x2961: 0x000a, 0x2962: 0x000a, 0x2963: 0x000a, -+ 0x2964: 0x000a, 0x2965: 0x000a, -+ 0x297f: 0x000c, -+ // Block 0xa6, offset 0x2980 -+ 0x2980: 0x000c, 0x2981: 0x000c, -+ 0x29b3: 0x000c, 0x29b4: 0x000c, 0x29b5: 0x000c, -+ 0x29b6: 0x000c, 0x29b9: 0x000c, 0x29ba: 0x000c, -+ // Block 0xa7, offset 0x29c0 -+ 0x29c0: 0x000c, 0x29c1: 0x000c, 0x29c2: 0x000c, -+ 0x29e7: 0x000c, 0x29e8: 0x000c, 0x29e9: 0x000c, -+ 0x29ea: 0x000c, 0x29eb: 0x000c, 0x29ed: 0x000c, 0x29ee: 0x000c, 0x29ef: 0x000c, -+ 0x29f0: 0x000c, 0x29f1: 0x000c, 0x29f2: 0x000c, 0x29f3: 0x000c, 0x29f4: 0x000c, -+ // Block 0xa8, offset 0x2a00 -+ 0x2a33: 0x000c, -+ // Block 0xa9, offset 0x2a40 -+ 0x2a40: 0x000c, 0x2a41: 0x000c, -+ 0x2a76: 0x000c, 0x2a77: 0x000c, 0x2a78: 0x000c, 0x2a79: 0x000c, 0x2a7a: 0x000c, 0x2a7b: 0x000c, -+ 0x2a7c: 0x000c, 0x2a7d: 0x000c, 0x2a7e: 0x000c, -+ // Block 0xaa, offset 0x2a80 -+ 0x2a89: 0x000c, 0x2a8a: 0x000c, 0x2a8b: 0x000c, -+ 0x2a8c: 0x000c, -+ // Block 0xab, offset 0x2ac0 -+ 0x2aef: 0x000c, -+ 0x2af0: 0x000c, 0x2af1: 0x000c, 0x2af4: 0x000c, -+ 0x2af6: 0x000c, 0x2af7: 0x000c, -+ 0x2afe: 0x000c, -+ // Block 0xac, offset 0x2b00 -+ 0x2b1f: 0x000c, 0x2b23: 0x000c, -+ 0x2b24: 0x000c, 0x2b25: 0x000c, 0x2b26: 0x000c, 0x2b27: 0x000c, 0x2b28: 0x000c, 0x2b29: 0x000c, -+ 0x2b2a: 0x000c, -+ // Block 0xad, offset 0x2b40 -+ 0x2b40: 0x000c, -+ 0x2b66: 0x000c, 0x2b67: 0x000c, 0x2b68: 0x000c, 0x2b69: 0x000c, -+ 0x2b6a: 0x000c, 0x2b6b: 0x000c, 0x2b6c: 0x000c, -+ 0x2b70: 0x000c, 0x2b71: 0x000c, 0x2b72: 0x000c, 0x2b73: 0x000c, 0x2b74: 0x000c, -+ // Block 0xae, offset 0x2b80 -+ 0x2bb8: 0x000c, 0x2bb9: 0x000c, 0x2bba: 0x000c, 0x2bbb: 0x000c, -+ 0x2bbc: 0x000c, 0x2bbd: 0x000c, 0x2bbe: 0x000c, 0x2bbf: 0x000c, -+ // Block 0xaf, offset 0x2bc0 -+ 0x2bc2: 0x000c, 0x2bc3: 0x000c, 0x2bc4: 0x000c, -+ 0x2bc6: 0x000c, -+ 0x2bde: 0x000c, -+ // Block 0xb0, offset 0x2c00 -+ 0x2c33: 0x000c, 0x2c34: 0x000c, 0x2c35: 0x000c, -+ 0x2c36: 0x000c, 0x2c37: 0x000c, 0x2c38: 0x000c, 0x2c3a: 0x000c, -+ 0x2c3f: 0x000c, -+ // Block 0xb1, offset 0x2c40 -+ 0x2c40: 0x000c, 0x2c42: 0x000c, 0x2c43: 0x000c, -+ // Block 0xb2, offset 0x2c80 -+ 0x2cb2: 0x000c, 0x2cb3: 0x000c, 0x2cb4: 0x000c, 0x2cb5: 0x000c, -+ 0x2cbc: 0x000c, 0x2cbd: 0x000c, 0x2cbf: 0x000c, -+ // Block 0xb3, offset 0x2cc0 -+ 0x2cc0: 0x000c, -+ 0x2cdc: 0x000c, 0x2cdd: 0x000c, -+ // Block 0xb4, offset 0x2d00 -+ 0x2d33: 0x000c, 0x2d34: 0x000c, 0x2d35: 0x000c, -+ 0x2d36: 0x000c, 0x2d37: 0x000c, 0x2d38: 0x000c, 0x2d39: 0x000c, 0x2d3a: 0x000c, -+ 0x2d3d: 0x000c, 0x2d3f: 0x000c, -+ // Block 0xb5, offset 0x2d40 -+ 0x2d40: 0x000c, -+ 0x2d60: 0x000a, 0x2d61: 0x000a, 0x2d62: 0x000a, 0x2d63: 0x000a, -+ 0x2d64: 0x000a, 0x2d65: 0x000a, 0x2d66: 0x000a, 0x2d67: 0x000a, 0x2d68: 0x000a, 0x2d69: 0x000a, -+ 0x2d6a: 0x000a, 0x2d6b: 0x000a, 0x2d6c: 0x000a, -+ // Block 0xb6, offset 0x2d80 -+ 0x2dab: 0x000c, 0x2dad: 0x000c, -+ 0x2db0: 0x000c, 0x2db1: 0x000c, 0x2db2: 0x000c, 0x2db3: 0x000c, 0x2db4: 0x000c, 0x2db5: 0x000c, -+ 0x2db7: 0x000c, -+ // Block 0xb7, offset 0x2dc0 -+ 0x2ddd: 0x000c, -+ 0x2dde: 0x000c, 0x2ddf: 0x000c, 0x2de2: 0x000c, 0x2de3: 0x000c, -+ 0x2de4: 0x000c, 0x2de5: 0x000c, 0x2de7: 0x000c, 0x2de8: 0x000c, 0x2de9: 0x000c, -+ 0x2dea: 0x000c, 0x2deb: 0x000c, -+ // Block 0xb8, offset 0x2e00 -+ 0x2e2f: 0x000c, -+ 0x2e30: 0x000c, 0x2e31: 0x000c, 0x2e32: 0x000c, 0x2e33: 0x000c, 0x2e34: 0x000c, 0x2e35: 0x000c, -+ 0x2e36: 0x000c, 0x2e37: 0x000c, 0x2e39: 0x000c, 0x2e3a: 0x000c, -+ // Block 0xb9, offset 0x2e40 -+ 0x2e54: 0x000c, 0x2e55: 0x000c, 0x2e56: 0x000c, 0x2e57: 0x000c, -+ 0x2e5a: 0x000c, 0x2e5b: 0x000c, -+ 0x2e60: 0x000c, -+ // Block 0xba, offset 0x2e80 -+ 0x2e81: 0x000c, 0x2e82: 0x000c, 0x2e83: 0x000c, 0x2e84: 0x000c, 0x2e85: 0x000c, -+ 0x2e86: 0x000c, 0x2e89: 0x000c, 0x2e8a: 0x000c, -+ 0x2eb3: 0x000c, 0x2eb4: 0x000c, 0x2eb5: 0x000c, -+ 0x2eb6: 0x000c, 0x2eb7: 0x000c, 0x2eb8: 0x000c, 0x2ebb: 0x000c, -+ 0x2ebc: 0x000c, 0x2ebd: 0x000c, 0x2ebe: 0x000c, -+ // Block 0xbb, offset 0x2ec0 -+ 0x2ec7: 0x000c, -+ 0x2ed1: 0x000c, -+ 0x2ed2: 0x000c, 0x2ed3: 0x000c, 0x2ed4: 0x000c, 0x2ed5: 0x000c, 0x2ed6: 0x000c, -+ 0x2ed9: 0x000c, 0x2eda: 0x000c, 0x2edb: 0x000c, -+ // Block 0xbc, offset 0x2f00 -+ 0x2f0a: 0x000c, 0x2f0b: 0x000c, -+ 0x2f0c: 0x000c, 0x2f0d: 0x000c, 0x2f0e: 0x000c, 0x2f0f: 0x000c, 0x2f10: 0x000c, 0x2f11: 0x000c, -+ 0x2f12: 0x000c, 0x2f13: 0x000c, 0x2f14: 0x000c, 0x2f15: 0x000c, 0x2f16: 0x000c, -+ 0x2f18: 0x000c, 0x2f19: 0x000c, -+ // Block 0xbd, offset 0x2f40 -+ 0x2f70: 0x000c, 0x2f71: 0x000c, 0x2f72: 0x000c, 0x2f73: 0x000c, 0x2f74: 0x000c, 0x2f75: 0x000c, -+ 0x2f76: 0x000c, 0x2f78: 0x000c, 0x2f79: 0x000c, 0x2f7a: 0x000c, 0x2f7b: 0x000c, -+ 0x2f7c: 0x000c, 0x2f7d: 0x000c, -+ // Block 0xbe, offset 0x2f80 -+ 0x2f92: 0x000c, 0x2f93: 0x000c, 0x2f94: 0x000c, 0x2f95: 0x000c, 0x2f96: 0x000c, 0x2f97: 0x000c, -+ 0x2f98: 0x000c, 0x2f99: 0x000c, 0x2f9a: 0x000c, 0x2f9b: 0x000c, 0x2f9c: 0x000c, 0x2f9d: 0x000c, -+ 0x2f9e: 0x000c, 0x2f9f: 0x000c, 0x2fa0: 0x000c, 0x2fa1: 0x000c, 0x2fa2: 0x000c, 0x2fa3: 0x000c, -+ 0x2fa4: 0x000c, 0x2fa5: 0x000c, 0x2fa6: 0x000c, 0x2fa7: 0x000c, -+ 0x2faa: 0x000c, 0x2fab: 0x000c, 0x2fac: 0x000c, 0x2fad: 0x000c, 0x2fae: 0x000c, 0x2faf: 0x000c, -+ 0x2fb0: 0x000c, 0x2fb2: 0x000c, 0x2fb3: 0x000c, 0x2fb5: 0x000c, -+ 0x2fb6: 0x000c, -+ // Block 0xbf, offset 0x2fc0 -+ 0x2ff1: 0x000c, 0x2ff2: 0x000c, 0x2ff3: 0x000c, 0x2ff4: 0x000c, 0x2ff5: 0x000c, -+ 0x2ff6: 0x000c, 0x2ffa: 0x000c, -+ 0x2ffc: 0x000c, 0x2ffd: 0x000c, 0x2fff: 0x000c, -+ // Block 0xc0, offset 0x3000 -+ 0x3000: 0x000c, 0x3001: 0x000c, 0x3002: 0x000c, 0x3003: 0x000c, 0x3004: 0x000c, 0x3005: 0x000c, -+ 0x3007: 0x000c, -+ // Block 0xc1, offset 0x3040 -+ 0x3050: 0x000c, 0x3051: 0x000c, -+ 0x3055: 0x000c, 0x3057: 0x000c, -+ // Block 0xc2, offset 0x3080 -+ 0x30b3: 0x000c, 0x30b4: 0x000c, -+ // Block 0xc3, offset 0x30c0 -+ 0x30d5: 0x000a, 0x30d6: 0x000a, 0x30d7: 0x000a, -+ 0x30d8: 0x000a, 0x30d9: 0x000a, 0x30da: 0x000a, 0x30db: 0x000a, 0x30dc: 0x000a, 0x30dd: 0x0004, -+ 0x30de: 0x0004, 0x30df: 0x0004, 0x30e0: 0x0004, 0x30e1: 0x000a, 0x30e2: 0x000a, 0x30e3: 0x000a, -+ 0x30e4: 0x000a, 0x30e5: 0x000a, 0x30e6: 0x000a, 0x30e7: 0x000a, 0x30e8: 0x000a, 0x30e9: 0x000a, -+ 0x30ea: 0x000a, 0x30eb: 0x000a, 0x30ec: 0x000a, 0x30ed: 0x000a, 0x30ee: 0x000a, 0x30ef: 0x000a, -+ 0x30f0: 0x000a, 0x30f1: 0x000a, -+ // Block 0xc4, offset 0x3100 -+ 0x3130: 0x000c, 0x3131: 0x000c, 0x3132: 0x000c, 0x3133: 0x000c, 0x3134: 0x000c, -+ // Block 0xc5, offset 0x3140 -+ 0x3170: 0x000c, 0x3171: 0x000c, 0x3172: 0x000c, 0x3173: 0x000c, 0x3174: 0x000c, 0x3175: 0x000c, -+ 0x3176: 0x000c, -+ // Block 0xc6, offset 0x3180 -+ 0x318f: 0x000c, -+ // Block 0xc7, offset 0x31c0 -+ 0x31cf: 0x000c, 0x31d0: 0x000c, 0x31d1: 0x000c, -+ 0x31d2: 0x000c, -+ // Block 0xc8, offset 0x3200 -+ 0x3222: 0x000a, -+ // Block 0xc9, offset 0x3240 -+ 0x325d: 0x000c, -+ 0x325e: 0x000c, 0x3260: 0x000b, 0x3261: 0x000b, 0x3262: 0x000b, 0x3263: 0x000b, -+ // Block 0xca, offset 0x3280 -+ 0x32a7: 0x000c, 0x32a8: 0x000c, 0x32a9: 0x000c, -+ 0x32b3: 0x000b, 0x32b4: 0x000b, 0x32b5: 0x000b, -+ 0x32b6: 0x000b, 0x32b7: 0x000b, 0x32b8: 0x000b, 0x32b9: 0x000b, 0x32ba: 0x000b, 0x32bb: 0x000c, -+ 0x32bc: 0x000c, 0x32bd: 0x000c, 0x32be: 0x000c, 0x32bf: 0x000c, -+ // Block 0xcb, offset 0x32c0 -+ 0x32c0: 0x000c, 0x32c1: 0x000c, 0x32c2: 0x000c, 0x32c5: 0x000c, -+ 0x32c6: 0x000c, 0x32c7: 0x000c, 0x32c8: 0x000c, 0x32c9: 0x000c, 0x32ca: 0x000c, 0x32cb: 0x000c, -+ 0x32ea: 0x000c, 0x32eb: 0x000c, 0x32ec: 0x000c, 0x32ed: 0x000c, -+ // Block 0xcc, offset 0x3300 -+ 0x3300: 0x000a, 0x3301: 0x000a, 0x3302: 0x000c, 0x3303: 0x000c, 0x3304: 0x000c, 0x3305: 0x000a, -+ // Block 0xcd, offset 0x3340 -+ 0x3340: 0x000a, 0x3341: 0x000a, 0x3342: 0x000a, 0x3343: 0x000a, 0x3344: 0x000a, 0x3345: 0x000a, -+ 0x3346: 0x000a, 0x3347: 0x000a, 0x3348: 0x000a, 0x3349: 0x000a, 0x334a: 0x000a, 0x334b: 0x000a, -+ 0x334c: 0x000a, 0x334d: 0x000a, 0x334e: 0x000a, 0x334f: 0x000a, 0x3350: 0x000a, 0x3351: 0x000a, -+ 0x3352: 0x000a, 0x3353: 0x000a, 0x3354: 0x000a, 0x3355: 0x000a, 0x3356: 0x000a, -+ // Block 0xce, offset 0x3380 -+ 0x339b: 0x000a, -+ // Block 0xcf, offset 0x33c0 -+ 0x33d5: 0x000a, -+ // Block 0xd0, offset 0x3400 -+ 0x340f: 0x000a, -+ // Block 0xd1, offset 0x3440 -+ 0x3449: 0x000a, -+ // Block 0xd2, offset 0x3480 -+ 0x3483: 0x000a, -+ 0x348e: 0x0002, 0x348f: 0x0002, 0x3490: 0x0002, 0x3491: 0x0002, -+ 0x3492: 0x0002, 0x3493: 0x0002, 0x3494: 0x0002, 0x3495: 0x0002, 0x3496: 0x0002, 0x3497: 0x0002, -+ 0x3498: 0x0002, 0x3499: 0x0002, 0x349a: 0x0002, 0x349b: 0x0002, 0x349c: 0x0002, 0x349d: 0x0002, -+ 0x349e: 0x0002, 0x349f: 0x0002, 0x34a0: 0x0002, 0x34a1: 0x0002, 0x34a2: 0x0002, 0x34a3: 0x0002, -+ 0x34a4: 0x0002, 0x34a5: 0x0002, 0x34a6: 0x0002, 0x34a7: 0x0002, 0x34a8: 0x0002, 0x34a9: 0x0002, -+ 0x34aa: 0x0002, 0x34ab: 0x0002, 0x34ac: 0x0002, 0x34ad: 0x0002, 0x34ae: 0x0002, 0x34af: 0x0002, -+ 0x34b0: 0x0002, 0x34b1: 0x0002, 0x34b2: 0x0002, 0x34b3: 0x0002, 0x34b4: 0x0002, 0x34b5: 0x0002, -+ 0x34b6: 0x0002, 0x34b7: 0x0002, 0x34b8: 0x0002, 0x34b9: 0x0002, 0x34ba: 0x0002, 0x34bb: 0x0002, -+ 0x34bc: 0x0002, 0x34bd: 0x0002, 0x34be: 0x0002, 0x34bf: 0x0002, -+ // Block 0xd3, offset 0x34c0 -+ 0x34c0: 0x000c, 0x34c1: 0x000c, 0x34c2: 0x000c, 0x34c3: 0x000c, 0x34c4: 0x000c, 0x34c5: 0x000c, -+ 0x34c6: 0x000c, 0x34c7: 0x000c, 0x34c8: 0x000c, 0x34c9: 0x000c, 0x34ca: 0x000c, 0x34cb: 0x000c, -+ 0x34cc: 0x000c, 0x34cd: 0x000c, 0x34ce: 0x000c, 0x34cf: 0x000c, 0x34d0: 0x000c, 0x34d1: 0x000c, -+ 0x34d2: 0x000c, 0x34d3: 0x000c, 0x34d4: 0x000c, 0x34d5: 0x000c, 0x34d6: 0x000c, 0x34d7: 0x000c, -+ 0x34d8: 0x000c, 0x34d9: 0x000c, 0x34da: 0x000c, 0x34db: 0x000c, 0x34dc: 0x000c, 0x34dd: 0x000c, -+ 0x34de: 0x000c, 0x34df: 0x000c, 0x34e0: 0x000c, 0x34e1: 0x000c, 0x34e2: 0x000c, 0x34e3: 0x000c, -+ 0x34e4: 0x000c, 0x34e5: 0x000c, 0x34e6: 0x000c, 0x34e7: 0x000c, 0x34e8: 0x000c, 0x34e9: 0x000c, -+ 0x34ea: 0x000c, 0x34eb: 0x000c, 0x34ec: 0x000c, 0x34ed: 0x000c, 0x34ee: 0x000c, 0x34ef: 0x000c, -+ 0x34f0: 0x000c, 0x34f1: 0x000c, 0x34f2: 0x000c, 0x34f3: 0x000c, 0x34f4: 0x000c, 0x34f5: 0x000c, -+ 0x34f6: 0x000c, 0x34fb: 0x000c, -+ 0x34fc: 0x000c, 0x34fd: 0x000c, 0x34fe: 0x000c, 0x34ff: 0x000c, -+ // Block 0xd4, offset 0x3500 -+ 0x3500: 0x000c, 0x3501: 0x000c, 0x3502: 0x000c, 0x3503: 0x000c, 0x3504: 0x000c, 0x3505: 0x000c, -+ 0x3506: 0x000c, 0x3507: 0x000c, 0x3508: 0x000c, 0x3509: 0x000c, 0x350a: 0x000c, 0x350b: 0x000c, -+ 0x350c: 0x000c, 0x350d: 0x000c, 0x350e: 0x000c, 0x350f: 0x000c, 0x3510: 0x000c, 0x3511: 0x000c, -+ 0x3512: 0x000c, 0x3513: 0x000c, 0x3514: 0x000c, 0x3515: 0x000c, 0x3516: 0x000c, 0x3517: 0x000c, -+ 0x3518: 0x000c, 0x3519: 0x000c, 0x351a: 0x000c, 0x351b: 0x000c, 0x351c: 0x000c, 0x351d: 0x000c, -+ 0x351e: 0x000c, 0x351f: 0x000c, 0x3520: 0x000c, 0x3521: 0x000c, 0x3522: 0x000c, 0x3523: 0x000c, -+ 0x3524: 0x000c, 0x3525: 0x000c, 0x3526: 0x000c, 0x3527: 0x000c, 0x3528: 0x000c, 0x3529: 0x000c, -+ 0x352a: 0x000c, 0x352b: 0x000c, 0x352c: 0x000c, -+ 0x3535: 0x000c, -+ // Block 0xd5, offset 0x3540 -+ 0x3544: 0x000c, -+ 0x355b: 0x000c, 0x355c: 0x000c, 0x355d: 0x000c, -+ 0x355e: 0x000c, 0x355f: 0x000c, 0x3561: 0x000c, 0x3562: 0x000c, 0x3563: 0x000c, -+ 0x3564: 0x000c, 0x3565: 0x000c, 0x3566: 0x000c, 0x3567: 0x000c, 0x3568: 0x000c, 0x3569: 0x000c, -+ 0x356a: 0x000c, 0x356b: 0x000c, 0x356c: 0x000c, 0x356d: 0x000c, 0x356e: 0x000c, 0x356f: 0x000c, -+ // Block 0xd6, offset 0x3580 -+ 0x3580: 0x000c, 0x3581: 0x000c, 0x3582: 0x000c, 0x3583: 0x000c, 0x3584: 0x000c, 0x3585: 0x000c, -+ 0x3586: 0x000c, 0x3588: 0x000c, 0x3589: 0x000c, 0x358a: 0x000c, 0x358b: 0x000c, -+ 0x358c: 0x000c, 0x358d: 0x000c, 0x358e: 0x000c, 0x358f: 0x000c, 0x3590: 0x000c, 0x3591: 0x000c, -+ 0x3592: 0x000c, 0x3593: 0x000c, 0x3594: 0x000c, 0x3595: 0x000c, 0x3596: 0x000c, 0x3597: 0x000c, -+ 0x3598: 0x000c, 0x359b: 0x000c, 0x359c: 0x000c, 0x359d: 0x000c, -+ 0x359e: 0x000c, 0x359f: 0x000c, 0x35a0: 0x000c, 0x35a1: 0x000c, 0x35a3: 0x000c, -+ 0x35a4: 0x000c, 0x35a6: 0x000c, 0x35a7: 0x000c, 0x35a8: 0x000c, 0x35a9: 0x000c, -+ 0x35aa: 0x000c, -+ // Block 0xd7, offset 0x35c0 -+ 0x35ec: 0x000c, 0x35ed: 0x000c, 0x35ee: 0x000c, 0x35ef: 0x000c, -+ 0x35ff: 0x0004, -+ // Block 0xd8, offset 0x3600 -+ 0x3600: 0x0001, 0x3601: 0x0001, 0x3602: 0x0001, 0x3603: 0x0001, 0x3604: 0x0001, 0x3605: 0x0001, -+ 0x3606: 0x0001, 0x3607: 0x0001, 0x3608: 0x0001, 0x3609: 0x0001, 0x360a: 0x0001, 0x360b: 0x0001, -+ 0x360c: 0x0001, 0x360d: 0x0001, 0x360e: 0x0001, 0x360f: 0x0001, 0x3610: 0x000c, 0x3611: 0x000c, -+ 0x3612: 0x000c, 0x3613: 0x000c, 0x3614: 0x000c, 0x3615: 0x000c, 0x3616: 0x000c, 0x3617: 0x0001, -+ 0x3618: 0x0001, 0x3619: 0x0001, 0x361a: 0x0001, 0x361b: 0x0001, 0x361c: 0x0001, 0x361d: 0x0001, -+ 0x361e: 0x0001, 0x361f: 0x0001, 0x3620: 0x0001, 0x3621: 0x0001, 0x3622: 0x0001, 0x3623: 0x0001, -+ 0x3624: 0x0001, 0x3625: 0x0001, 0x3626: 0x0001, 0x3627: 0x0001, 0x3628: 0x0001, 0x3629: 0x0001, -+ 0x362a: 0x0001, 0x362b: 0x0001, 0x362c: 0x0001, 0x362d: 0x0001, 0x362e: 0x0001, 0x362f: 0x0001, -+ 0x3630: 0x0001, 0x3631: 0x0001, 0x3632: 0x0001, 0x3633: 0x0001, 0x3634: 0x0001, 0x3635: 0x0001, -+ 0x3636: 0x0001, 0x3637: 0x0001, 0x3638: 0x0001, 0x3639: 0x0001, 0x363a: 0x0001, 0x363b: 0x0001, -+ 0x363c: 0x0001, 0x363d: 0x0001, 0x363e: 0x0001, 0x363f: 0x0001, -+ // Block 0xd9, offset 0x3640 -+ 0x3640: 0x0001, 0x3641: 0x0001, 0x3642: 0x0001, 0x3643: 0x0001, 0x3644: 0x000c, 0x3645: 0x000c, -+ 0x3646: 0x000c, 0x3647: 0x000c, 0x3648: 0x000c, 0x3649: 0x000c, 0x364a: 0x000c, 0x364b: 0x0001, -+ 0x364c: 0x0001, 0x364d: 0x0001, 0x364e: 0x0001, 0x364f: 0x0001, 0x3650: 0x0001, 0x3651: 0x0001, -+ 0x3652: 0x0001, 0x3653: 0x0001, 0x3654: 0x0001, 0x3655: 0x0001, 0x3656: 0x0001, 0x3657: 0x0001, -+ 0x3658: 0x0001, 0x3659: 0x0001, 0x365a: 0x0001, 0x365b: 0x0001, 0x365c: 0x0001, 0x365d: 0x0001, -+ 0x365e: 0x0001, 0x365f: 0x0001, 0x3660: 0x0001, 0x3661: 0x0001, 0x3662: 0x0001, 0x3663: 0x0001, -+ 0x3664: 0x0001, 0x3665: 0x0001, 0x3666: 0x0001, 0x3667: 0x0001, 0x3668: 0x0001, 0x3669: 0x0001, -+ 0x366a: 0x0001, 0x366b: 0x0001, 0x366c: 0x0001, 0x366d: 0x0001, 0x366e: 0x0001, 0x366f: 0x0001, -+ 0x3670: 0x0001, 0x3671: 0x0001, 0x3672: 0x0001, 0x3673: 0x0001, 0x3674: 0x0001, 0x3675: 0x0001, -+ 0x3676: 0x0001, 0x3677: 0x0001, 0x3678: 0x0001, 0x3679: 0x0001, 0x367a: 0x0001, 0x367b: 0x0001, -+ 0x367c: 0x0001, 0x367d: 0x0001, 0x367e: 0x0001, 0x367f: 0x0001, -+ // Block 0xda, offset 0x3680 -+ 0x3680: 0x000d, 0x3681: 0x000d, 0x3682: 0x000d, 0x3683: 0x000d, 0x3684: 0x000d, 0x3685: 0x000d, -+ 0x3686: 0x000d, 0x3687: 0x000d, 0x3688: 0x000d, 0x3689: 0x000d, 0x368a: 0x000d, 0x368b: 0x000d, -+ 0x368c: 0x000d, 0x368d: 0x000d, 0x368e: 0x000d, 0x368f: 0x000d, 0x3690: 0x0001, 0x3691: 0x0001, -+ 0x3692: 0x0001, 0x3693: 0x0001, 0x3694: 0x0001, 0x3695: 0x0001, 0x3696: 0x0001, 0x3697: 0x0001, -+ 0x3698: 0x0001, 0x3699: 0x0001, 0x369a: 0x0001, 0x369b: 0x0001, 0x369c: 0x0001, 0x369d: 0x0001, -+ 0x369e: 0x0001, 0x369f: 0x0001, 0x36a0: 0x0001, 0x36a1: 0x0001, 0x36a2: 0x0001, 0x36a3: 0x0001, -+ 0x36a4: 0x0001, 0x36a5: 0x0001, 0x36a6: 0x0001, 0x36a7: 0x0001, 0x36a8: 0x0001, 0x36a9: 0x0001, -+ 0x36aa: 0x0001, 0x36ab: 0x0001, 0x36ac: 0x0001, 0x36ad: 0x0001, 0x36ae: 0x0001, 0x36af: 0x0001, -+ 0x36b0: 0x0001, 0x36b1: 0x0001, 0x36b2: 0x0001, 0x36b3: 0x0001, 0x36b4: 0x0001, 0x36b5: 0x0001, -+ 0x36b6: 0x0001, 0x36b7: 0x0001, 0x36b8: 0x0001, 0x36b9: 0x0001, 0x36ba: 0x0001, 0x36bb: 0x0001, -+ 0x36bc: 0x0001, 0x36bd: 0x0001, 0x36be: 0x0001, 0x36bf: 0x0001, -+ // Block 0xdb, offset 0x36c0 -+ 0x36c0: 0x000d, 0x36c1: 0x000d, 0x36c2: 0x000d, 0x36c3: 0x000d, 0x36c4: 0x000d, 0x36c5: 0x000d, -+ 0x36c6: 0x000d, 0x36c7: 0x000d, 0x36c8: 0x000d, 0x36c9: 0x000d, 0x36ca: 0x000d, 0x36cb: 0x000d, -+ 0x36cc: 0x000d, 0x36cd: 0x000d, 0x36ce: 0x000d, 0x36cf: 0x000d, 0x36d0: 0x000d, 0x36d1: 0x000d, -+ 0x36d2: 0x000d, 0x36d3: 0x000d, 0x36d4: 0x000d, 0x36d5: 0x000d, 0x36d6: 0x000d, 0x36d7: 0x000d, -+ 0x36d8: 0x000d, 0x36d9: 0x000d, 0x36da: 0x000d, 0x36db: 0x000d, 0x36dc: 0x000d, 0x36dd: 0x000d, -+ 0x36de: 0x000d, 0x36df: 0x000d, 0x36e0: 0x000d, 0x36e1: 0x000d, 0x36e2: 0x000d, 0x36e3: 0x000d, -+ 0x36e4: 0x000d, 0x36e5: 0x000d, 0x36e6: 0x000d, 0x36e7: 0x000d, 0x36e8: 0x000d, 0x36e9: 0x000d, -+ 0x36ea: 0x000d, 0x36eb: 0x000d, 0x36ec: 0x000d, 0x36ed: 0x000d, 0x36ee: 0x000d, 0x36ef: 0x000d, -+ 0x36f0: 0x000a, 0x36f1: 0x000a, 0x36f2: 0x000d, 0x36f3: 0x000d, 0x36f4: 0x000d, 0x36f5: 0x000d, -+ 0x36f6: 0x000d, 0x36f7: 0x000d, 0x36f8: 0x000d, 0x36f9: 0x000d, 0x36fa: 0x000d, 0x36fb: 0x000d, -+ 0x36fc: 0x000d, 0x36fd: 0x000d, 0x36fe: 0x000d, 0x36ff: 0x000d, -+ // Block 0xdc, offset 0x3700 -+ 0x3700: 0x000a, 0x3701: 0x000a, 0x3702: 0x000a, 0x3703: 0x000a, 0x3704: 0x000a, 0x3705: 0x000a, -+ 0x3706: 0x000a, 0x3707: 0x000a, 0x3708: 0x000a, 0x3709: 0x000a, 0x370a: 0x000a, 0x370b: 0x000a, -+ 0x370c: 0x000a, 0x370d: 0x000a, 0x370e: 0x000a, 0x370f: 0x000a, 0x3710: 0x000a, 0x3711: 0x000a, -+ 0x3712: 0x000a, 0x3713: 0x000a, 0x3714: 0x000a, 0x3715: 0x000a, 0x3716: 0x000a, 0x3717: 0x000a, -+ 0x3718: 0x000a, 0x3719: 0x000a, 0x371a: 0x000a, 0x371b: 0x000a, 0x371c: 0x000a, 0x371d: 0x000a, -+ 0x371e: 0x000a, 0x371f: 0x000a, 0x3720: 0x000a, 0x3721: 0x000a, 0x3722: 0x000a, 0x3723: 0x000a, -+ 0x3724: 0x000a, 0x3725: 0x000a, 0x3726: 0x000a, 0x3727: 0x000a, 0x3728: 0x000a, 0x3729: 0x000a, -+ 0x372a: 0x000a, 0x372b: 0x000a, -+ 0x3730: 0x000a, 0x3731: 0x000a, 0x3732: 0x000a, 0x3733: 0x000a, 0x3734: 0x000a, 0x3735: 0x000a, -+ 0x3736: 0x000a, 0x3737: 0x000a, 0x3738: 0x000a, 0x3739: 0x000a, 0x373a: 0x000a, 0x373b: 0x000a, -+ 0x373c: 0x000a, 0x373d: 0x000a, 0x373e: 0x000a, 0x373f: 0x000a, -+ // Block 0xdd, offset 0x3740 -+ 0x3740: 0x000a, 0x3741: 0x000a, 0x3742: 0x000a, 0x3743: 0x000a, 0x3744: 0x000a, 0x3745: 0x000a, -+ 0x3746: 0x000a, 0x3747: 0x000a, 0x3748: 0x000a, 0x3749: 0x000a, 0x374a: 0x000a, 0x374b: 0x000a, -+ 0x374c: 0x000a, 0x374d: 0x000a, 0x374e: 0x000a, 0x374f: 0x000a, 0x3750: 0x000a, 0x3751: 0x000a, -+ 0x3752: 0x000a, 0x3753: 0x000a, -+ 0x3760: 0x000a, 0x3761: 0x000a, 0x3762: 0x000a, 0x3763: 0x000a, -+ 0x3764: 0x000a, 0x3765: 0x000a, 0x3766: 0x000a, 0x3767: 0x000a, 0x3768: 0x000a, 0x3769: 0x000a, -+ 0x376a: 0x000a, 0x376b: 0x000a, 0x376c: 0x000a, 0x376d: 0x000a, 0x376e: 0x000a, -+ 0x3771: 0x000a, 0x3772: 0x000a, 0x3773: 0x000a, 0x3774: 0x000a, 0x3775: 0x000a, -+ 0x3776: 0x000a, 0x3777: 0x000a, 0x3778: 0x000a, 0x3779: 0x000a, 0x377a: 0x000a, 0x377b: 0x000a, -+ 0x377c: 0x000a, 0x377d: 0x000a, 0x377e: 0x000a, 0x377f: 0x000a, -+ // Block 0xde, offset 0x3780 -+ 0x3781: 0x000a, 0x3782: 0x000a, 0x3783: 0x000a, 0x3784: 0x000a, 0x3785: 0x000a, -+ 0x3786: 0x000a, 0x3787: 0x000a, 0x3788: 0x000a, 0x3789: 0x000a, 0x378a: 0x000a, 0x378b: 0x000a, -+ 0x378c: 0x000a, 0x378d: 0x000a, 0x378e: 0x000a, 0x378f: 0x000a, 0x3791: 0x000a, -+ 0x3792: 0x000a, 0x3793: 0x000a, 0x3794: 0x000a, 0x3795: 0x000a, 0x3796: 0x000a, 0x3797: 0x000a, -+ 0x3798: 0x000a, 0x3799: 0x000a, 0x379a: 0x000a, 0x379b: 0x000a, 0x379c: 0x000a, 0x379d: 0x000a, -+ 0x379e: 0x000a, 0x379f: 0x000a, 0x37a0: 0x000a, 0x37a1: 0x000a, 0x37a2: 0x000a, 0x37a3: 0x000a, -+ 0x37a4: 0x000a, 0x37a5: 0x000a, 0x37a6: 0x000a, 0x37a7: 0x000a, 0x37a8: 0x000a, 0x37a9: 0x000a, -+ 0x37aa: 0x000a, 0x37ab: 0x000a, 0x37ac: 0x000a, 0x37ad: 0x000a, 0x37ae: 0x000a, 0x37af: 0x000a, -+ 0x37b0: 0x000a, 0x37b1: 0x000a, 0x37b2: 0x000a, 0x37b3: 0x000a, 0x37b4: 0x000a, 0x37b5: 0x000a, -+ // Block 0xdf, offset 0x37c0 -+ 0x37c0: 0x0002, 0x37c1: 0x0002, 0x37c2: 0x0002, 0x37c3: 0x0002, 0x37c4: 0x0002, 0x37c5: 0x0002, -+ 0x37c6: 0x0002, 0x37c7: 0x0002, 0x37c8: 0x0002, 0x37c9: 0x0002, 0x37ca: 0x0002, 0x37cb: 0x000a, -+ 0x37cc: 0x000a, -+ 0x37ef: 0x000a, -+ // Block 0xe0, offset 0x3800 -+ 0x382a: 0x000a, 0x382b: 0x000a, 0x382c: 0x000a, -+ // Block 0xe1, offset 0x3840 -+ 0x3860: 0x000a, 0x3861: 0x000a, 0x3862: 0x000a, 0x3863: 0x000a, -+ 0x3864: 0x000a, 0x3865: 0x000a, -+ // Block 0xe2, offset 0x3880 -+ 0x3880: 0x000a, 0x3881: 0x000a, 0x3882: 0x000a, 0x3883: 0x000a, 0x3884: 0x000a, 0x3885: 0x000a, -+ 0x3886: 0x000a, 0x3887: 0x000a, 0x3888: 0x000a, 0x3889: 0x000a, 0x388a: 0x000a, 0x388b: 0x000a, -+ 0x388c: 0x000a, 0x388d: 0x000a, 0x388e: 0x000a, 0x388f: 0x000a, 0x3890: 0x000a, 0x3891: 0x000a, -+ 0x3892: 0x000a, 0x3893: 0x000a, 0x3894: 0x000a, 0x3895: 0x000a, -+ 0x38a0: 0x000a, 0x38a1: 0x000a, 0x38a2: 0x000a, 0x38a3: 0x000a, -+ 0x38a4: 0x000a, 0x38a5: 0x000a, 0x38a6: 0x000a, 0x38a7: 0x000a, 0x38a8: 0x000a, 0x38a9: 0x000a, -+ 0x38aa: 0x000a, 0x38ab: 0x000a, 0x38ac: 0x000a, -+ 0x38b0: 0x000a, 0x38b1: 0x000a, 0x38b2: 0x000a, 0x38b3: 0x000a, 0x38b4: 0x000a, 0x38b5: 0x000a, -+ 0x38b6: 0x000a, 0x38b7: 0x000a, 0x38b8: 0x000a, 0x38b9: 0x000a, 0x38ba: 0x000a, -+ // Block 0xe3, offset 0x38c0 -+ 0x38c0: 0x000a, 0x38c1: 0x000a, 0x38c2: 0x000a, 0x38c3: 0x000a, 0x38c4: 0x000a, 0x38c5: 0x000a, -+ 0x38c6: 0x000a, 0x38c7: 0x000a, 0x38c8: 0x000a, 0x38c9: 0x000a, 0x38ca: 0x000a, 0x38cb: 0x000a, -+ 0x38cc: 0x000a, 0x38cd: 0x000a, 0x38ce: 0x000a, 0x38cf: 0x000a, 0x38d0: 0x000a, 0x38d1: 0x000a, -+ 0x38d2: 0x000a, 0x38d3: 0x000a, 0x38d4: 0x000a, 0x38d5: 0x000a, 0x38d6: 0x000a, 0x38d7: 0x000a, -+ 0x38d8: 0x000a, -+ 0x38e0: 0x000a, 0x38e1: 0x000a, 0x38e2: 0x000a, 0x38e3: 0x000a, -+ 0x38e4: 0x000a, 0x38e5: 0x000a, 0x38e6: 0x000a, 0x38e7: 0x000a, 0x38e8: 0x000a, 0x38e9: 0x000a, -+ 0x38ea: 0x000a, 0x38eb: 0x000a, -+ // Block 0xe4, offset 0x3900 -+ 0x3900: 0x000a, 0x3901: 0x000a, 0x3902: 0x000a, 0x3903: 0x000a, 0x3904: 0x000a, 0x3905: 0x000a, -+ 0x3906: 0x000a, 0x3907: 0x000a, 0x3908: 0x000a, 0x3909: 0x000a, 0x390a: 0x000a, 0x390b: 0x000a, -+ 0x3910: 0x000a, 0x3911: 0x000a, -+ 0x3912: 0x000a, 0x3913: 0x000a, 0x3914: 0x000a, 0x3915: 0x000a, 0x3916: 0x000a, 0x3917: 0x000a, -+ 0x3918: 0x000a, 0x3919: 0x000a, 0x391a: 0x000a, 0x391b: 0x000a, 0x391c: 0x000a, 0x391d: 0x000a, -+ 0x391e: 0x000a, 0x391f: 0x000a, 0x3920: 0x000a, 0x3921: 0x000a, 0x3922: 0x000a, 0x3923: 0x000a, -+ 0x3924: 0x000a, 0x3925: 0x000a, 0x3926: 0x000a, 0x3927: 0x000a, 0x3928: 0x000a, 0x3929: 0x000a, -+ 0x392a: 0x000a, 0x392b: 0x000a, 0x392c: 0x000a, 0x392d: 0x000a, 0x392e: 0x000a, 0x392f: 0x000a, -+ 0x3930: 0x000a, 0x3931: 0x000a, 0x3932: 0x000a, 0x3933: 0x000a, 0x3934: 0x000a, 0x3935: 0x000a, -+ 0x3936: 0x000a, 0x3937: 0x000a, 0x3938: 0x000a, 0x3939: 0x000a, 0x393a: 0x000a, 0x393b: 0x000a, -+ 0x393c: 0x000a, 0x393d: 0x000a, 0x393e: 0x000a, 0x393f: 0x000a, -+ // Block 0xe5, offset 0x3940 -+ 0x3940: 0x000a, 0x3941: 0x000a, 0x3942: 0x000a, 0x3943: 0x000a, 0x3944: 0x000a, 0x3945: 0x000a, -+ 0x3946: 0x000a, 0x3947: 0x000a, -+ 0x3950: 0x000a, 0x3951: 0x000a, -+ 0x3952: 0x000a, 0x3953: 0x000a, 0x3954: 0x000a, 0x3955: 0x000a, 0x3956: 0x000a, 0x3957: 0x000a, -+ 0x3958: 0x000a, 0x3959: 0x000a, -+ 0x3960: 0x000a, 0x3961: 0x000a, 0x3962: 0x000a, 0x3963: 0x000a, -+ 0x3964: 0x000a, 0x3965: 0x000a, 0x3966: 0x000a, 0x3967: 0x000a, 0x3968: 0x000a, 0x3969: 0x000a, -+ 0x396a: 0x000a, 0x396b: 0x000a, 0x396c: 0x000a, 0x396d: 0x000a, 0x396e: 0x000a, 0x396f: 0x000a, -+ 0x3970: 0x000a, 0x3971: 0x000a, 0x3972: 0x000a, 0x3973: 0x000a, 0x3974: 0x000a, 0x3975: 0x000a, -+ 0x3976: 0x000a, 0x3977: 0x000a, 0x3978: 0x000a, 0x3979: 0x000a, 0x397a: 0x000a, 0x397b: 0x000a, -+ 0x397c: 0x000a, 0x397d: 0x000a, 0x397e: 0x000a, 0x397f: 0x000a, -+ // Block 0xe6, offset 0x3980 -+ 0x3980: 0x000a, 0x3981: 0x000a, 0x3982: 0x000a, 0x3983: 0x000a, 0x3984: 0x000a, 0x3985: 0x000a, -+ 0x3986: 0x000a, 0x3987: 0x000a, -+ 0x3990: 0x000a, 0x3991: 0x000a, -+ 0x3992: 0x000a, 0x3993: 0x000a, 0x3994: 0x000a, 0x3995: 0x000a, 0x3996: 0x000a, 0x3997: 0x000a, -+ 0x3998: 0x000a, 0x3999: 0x000a, 0x399a: 0x000a, 0x399b: 0x000a, 0x399c: 0x000a, 0x399d: 0x000a, -+ 0x399e: 0x000a, 0x399f: 0x000a, 0x39a0: 0x000a, 0x39a1: 0x000a, 0x39a2: 0x000a, 0x39a3: 0x000a, -+ 0x39a4: 0x000a, 0x39a5: 0x000a, 0x39a6: 0x000a, 0x39a7: 0x000a, 0x39a8: 0x000a, 0x39a9: 0x000a, -+ 0x39aa: 0x000a, 0x39ab: 0x000a, 0x39ac: 0x000a, 0x39ad: 0x000a, -+ // Block 0xe7, offset 0x39c0 -+ 0x39c0: 0x000a, 0x39c1: 0x000a, 0x39c2: 0x000a, 0x39c3: 0x000a, 0x39c4: 0x000a, 0x39c5: 0x000a, -+ 0x39c6: 0x000a, 0x39c7: 0x000a, 0x39c8: 0x000a, 0x39c9: 0x000a, 0x39ca: 0x000a, 0x39cb: 0x000a, -+ 0x39cd: 0x000a, 0x39ce: 0x000a, 0x39cf: 0x000a, 0x39d0: 0x000a, 0x39d1: 0x000a, -+ 0x39d2: 0x000a, 0x39d3: 0x000a, 0x39d4: 0x000a, 0x39d5: 0x000a, 0x39d6: 0x000a, 0x39d7: 0x000a, -+ 0x39d8: 0x000a, 0x39d9: 0x000a, 0x39da: 0x000a, 0x39db: 0x000a, 0x39dc: 0x000a, 0x39dd: 0x000a, -+ 0x39de: 0x000a, 0x39df: 0x000a, 0x39e0: 0x000a, 0x39e1: 0x000a, 0x39e2: 0x000a, 0x39e3: 0x000a, -+ 0x39e4: 0x000a, 0x39e5: 0x000a, 0x39e6: 0x000a, 0x39e7: 0x000a, 0x39e8: 0x000a, 0x39e9: 0x000a, -+ 0x39ea: 0x000a, 0x39eb: 0x000a, 0x39ec: 0x000a, 0x39ed: 0x000a, 0x39ee: 0x000a, 0x39ef: 0x000a, -+ 0x39f0: 0x000a, 0x39f1: 0x000a, 0x39f2: 0x000a, 0x39f3: 0x000a, 0x39f4: 0x000a, 0x39f5: 0x000a, -+ 0x39f6: 0x000a, 0x39f7: 0x000a, 0x39f8: 0x000a, 0x39f9: 0x000a, 0x39fa: 0x000a, 0x39fb: 0x000a, -+ 0x39fc: 0x000a, 0x39fd: 0x000a, 0x39fe: 0x000a, 0x39ff: 0x000a, -+ // Block 0xe8, offset 0x3a00 -+ 0x3a00: 0x000a, 0x3a01: 0x000a, 0x3a02: 0x000a, 0x3a03: 0x000a, 0x3a04: 0x000a, 0x3a05: 0x000a, -+ 0x3a06: 0x000a, 0x3a07: 0x000a, 0x3a08: 0x000a, 0x3a09: 0x000a, 0x3a0a: 0x000a, 0x3a0b: 0x000a, -+ 0x3a0c: 0x000a, 0x3a0d: 0x000a, 0x3a0e: 0x000a, 0x3a0f: 0x000a, 0x3a10: 0x000a, 0x3a11: 0x000a, -+ 0x3a12: 0x000a, 0x3a13: 0x000a, 0x3a14: 0x000a, 0x3a15: 0x000a, 0x3a16: 0x000a, 0x3a17: 0x000a, -+ 0x3a18: 0x000a, 0x3a19: 0x000a, 0x3a1a: 0x000a, 0x3a1b: 0x000a, 0x3a1c: 0x000a, 0x3a1d: 0x000a, -+ 0x3a1e: 0x000a, 0x3a1f: 0x000a, 0x3a20: 0x000a, 0x3a21: 0x000a, 0x3a22: 0x000a, 0x3a23: 0x000a, -+ 0x3a24: 0x000a, 0x3a25: 0x000a, 0x3a26: 0x000a, 0x3a27: 0x000a, 0x3a28: 0x000a, 0x3a29: 0x000a, -+ 0x3a2a: 0x000a, 0x3a2b: 0x000a, 0x3a2c: 0x000a, 0x3a2d: 0x000a, 0x3a2e: 0x000a, 0x3a2f: 0x000a, -+ 0x3a30: 0x000a, 0x3a31: 0x000a, 0x3a33: 0x000a, 0x3a34: 0x000a, 0x3a35: 0x000a, -+ 0x3a36: 0x000a, 0x3a3a: 0x000a, 0x3a3b: 0x000a, -+ 0x3a3c: 0x000a, 0x3a3d: 0x000a, 0x3a3e: 0x000a, 0x3a3f: 0x000a, -+ // Block 0xe9, offset 0x3a40 -+ 0x3a40: 0x000a, 0x3a41: 0x000a, 0x3a42: 0x000a, 0x3a43: 0x000a, 0x3a44: 0x000a, 0x3a45: 0x000a, -+ 0x3a46: 0x000a, 0x3a47: 0x000a, 0x3a48: 0x000a, 0x3a49: 0x000a, 0x3a4a: 0x000a, 0x3a4b: 0x000a, -+ 0x3a4c: 0x000a, 0x3a4d: 0x000a, 0x3a4e: 0x000a, 0x3a4f: 0x000a, 0x3a50: 0x000a, 0x3a51: 0x000a, -+ 0x3a52: 0x000a, 0x3a53: 0x000a, 0x3a54: 0x000a, 0x3a55: 0x000a, 0x3a56: 0x000a, 0x3a57: 0x000a, -+ 0x3a58: 0x000a, 0x3a59: 0x000a, 0x3a5a: 0x000a, 0x3a5b: 0x000a, 0x3a5c: 0x000a, 0x3a5d: 0x000a, -+ 0x3a5e: 0x000a, 0x3a5f: 0x000a, 0x3a60: 0x000a, 0x3a61: 0x000a, 0x3a62: 0x000a, -+ 0x3a65: 0x000a, 0x3a66: 0x000a, 0x3a67: 0x000a, 0x3a68: 0x000a, 0x3a69: 0x000a, -+ 0x3a6a: 0x000a, 0x3a6e: 0x000a, 0x3a6f: 0x000a, -+ 0x3a70: 0x000a, 0x3a71: 0x000a, 0x3a72: 0x000a, 0x3a73: 0x000a, 0x3a74: 0x000a, 0x3a75: 0x000a, -+ 0x3a76: 0x000a, 0x3a77: 0x000a, 0x3a78: 0x000a, 0x3a79: 0x000a, 0x3a7a: 0x000a, 0x3a7b: 0x000a, -+ 0x3a7c: 0x000a, 0x3a7d: 0x000a, 0x3a7e: 0x000a, 0x3a7f: 0x000a, -+ // Block 0xea, offset 0x3a80 -+ 0x3a80: 0x000a, 0x3a81: 0x000a, 0x3a82: 0x000a, 0x3a83: 0x000a, 0x3a84: 0x000a, 0x3a85: 0x000a, -+ 0x3a86: 0x000a, 0x3a87: 0x000a, 0x3a88: 0x000a, 0x3a89: 0x000a, 0x3a8a: 0x000a, -+ 0x3a8d: 0x000a, 0x3a8e: 0x000a, 0x3a8f: 0x000a, 0x3a90: 0x000a, 0x3a91: 0x000a, -+ 0x3a92: 0x000a, 0x3a93: 0x000a, 0x3a94: 0x000a, 0x3a95: 0x000a, 0x3a96: 0x000a, 0x3a97: 0x000a, -+ 0x3a98: 0x000a, 0x3a99: 0x000a, 0x3a9a: 0x000a, 0x3a9b: 0x000a, 0x3a9c: 0x000a, 0x3a9d: 0x000a, -+ 0x3a9e: 0x000a, 0x3a9f: 0x000a, 0x3aa0: 0x000a, 0x3aa1: 0x000a, 0x3aa2: 0x000a, 0x3aa3: 0x000a, -+ 0x3aa4: 0x000a, 0x3aa5: 0x000a, 0x3aa6: 0x000a, 0x3aa7: 0x000a, 0x3aa8: 0x000a, 0x3aa9: 0x000a, -+ 0x3aaa: 0x000a, 0x3aab: 0x000a, 0x3aac: 0x000a, 0x3aad: 0x000a, 0x3aae: 0x000a, 0x3aaf: 0x000a, -+ 0x3ab0: 0x000a, 0x3ab1: 0x000a, 0x3ab2: 0x000a, 0x3ab3: 0x000a, 0x3ab4: 0x000a, 0x3ab5: 0x000a, -+ 0x3ab6: 0x000a, 0x3ab7: 0x000a, 0x3ab8: 0x000a, 0x3ab9: 0x000a, 0x3aba: 0x000a, 0x3abb: 0x000a, -+ 0x3abc: 0x000a, 0x3abd: 0x000a, 0x3abe: 0x000a, 0x3abf: 0x000a, -+ // Block 0xeb, offset 0x3ac0 -+ 0x3ac0: 0x000a, 0x3ac1: 0x000a, 0x3ac2: 0x000a, 0x3ac3: 0x000a, 0x3ac4: 0x000a, 0x3ac5: 0x000a, -+ 0x3ac6: 0x000a, 0x3ac7: 0x000a, 0x3ac8: 0x000a, 0x3ac9: 0x000a, 0x3aca: 0x000a, 0x3acb: 0x000a, -+ 0x3acc: 0x000a, 0x3acd: 0x000a, 0x3ace: 0x000a, 0x3acf: 0x000a, 0x3ad0: 0x000a, 0x3ad1: 0x000a, -+ 0x3ad2: 0x000a, 0x3ad3: 0x000a, -+ 0x3ae0: 0x000a, 0x3ae1: 0x000a, 0x3ae2: 0x000a, 0x3ae3: 0x000a, -+ 0x3ae4: 0x000a, 0x3ae5: 0x000a, 0x3ae6: 0x000a, 0x3ae7: 0x000a, 0x3ae8: 0x000a, 0x3ae9: 0x000a, -+ 0x3aea: 0x000a, 0x3aeb: 0x000a, 0x3aec: 0x000a, 0x3aed: 0x000a, -+ 0x3af0: 0x000a, 0x3af1: 0x000a, 0x3af2: 0x000a, 0x3af3: 0x000a, -+ 0x3af8: 0x000a, 0x3af9: 0x000a, 0x3afa: 0x000a, -+ // Block 0xec, offset 0x3b00 -+ 0x3b00: 0x000a, 0x3b01: 0x000a, 0x3b02: 0x000a, -+ 0x3b10: 0x000a, 0x3b11: 0x000a, -+ 0x3b12: 0x000a, 0x3b13: 0x000a, 0x3b14: 0x000a, 0x3b15: 0x000a, -+ // Block 0xed, offset 0x3b40 -+ 0x3b7e: 0x000b, 0x3b7f: 0x000b, -+ // Block 0xee, offset 0x3b80 -+ 0x3b80: 0x000b, 0x3b81: 0x000b, 0x3b82: 0x000b, 0x3b83: 0x000b, 0x3b84: 0x000b, 0x3b85: 0x000b, -+ 0x3b86: 0x000b, 0x3b87: 0x000b, 0x3b88: 0x000b, 0x3b89: 0x000b, 0x3b8a: 0x000b, 0x3b8b: 0x000b, -+ 0x3b8c: 0x000b, 0x3b8d: 0x000b, 0x3b8e: 0x000b, 0x3b8f: 0x000b, 0x3b90: 0x000b, 0x3b91: 0x000b, -+ 0x3b92: 0x000b, 0x3b93: 0x000b, 0x3b94: 0x000b, 0x3b95: 0x000b, 0x3b96: 0x000b, 0x3b97: 0x000b, -+ 0x3b98: 0x000b, 0x3b99: 0x000b, 0x3b9a: 0x000b, 0x3b9b: 0x000b, 0x3b9c: 0x000b, 0x3b9d: 0x000b, -+ 0x3b9e: 0x000b, 0x3b9f: 0x000b, 0x3ba0: 0x000b, 0x3ba1: 0x000b, 0x3ba2: 0x000b, 0x3ba3: 0x000b, -+ 0x3ba4: 0x000b, 0x3ba5: 0x000b, 0x3ba6: 0x000b, 0x3ba7: 0x000b, 0x3ba8: 0x000b, 0x3ba9: 0x000b, -+ 0x3baa: 0x000b, 0x3bab: 0x000b, 0x3bac: 0x000b, 0x3bad: 0x000b, 0x3bae: 0x000b, 0x3baf: 0x000b, -+ 0x3bb0: 0x000b, 0x3bb1: 0x000b, 0x3bb2: 0x000b, 0x3bb3: 0x000b, 0x3bb4: 0x000b, 0x3bb5: 0x000b, -+ 0x3bb6: 0x000b, 0x3bb7: 0x000b, 0x3bb8: 0x000b, 0x3bb9: 0x000b, 0x3bba: 0x000b, 0x3bbb: 0x000b, -+ 0x3bbc: 0x000b, 0x3bbd: 0x000b, 0x3bbe: 0x000b, 0x3bbf: 0x000b, -+ // Block 0xef, offset 0x3bc0 -+ 0x3bc0: 0x000c, 0x3bc1: 0x000c, 0x3bc2: 0x000c, 0x3bc3: 0x000c, 0x3bc4: 0x000c, 0x3bc5: 0x000c, -+ 0x3bc6: 0x000c, 0x3bc7: 0x000c, 0x3bc8: 0x000c, 0x3bc9: 0x000c, 0x3bca: 0x000c, 0x3bcb: 0x000c, -+ 0x3bcc: 0x000c, 0x3bcd: 0x000c, 0x3bce: 0x000c, 0x3bcf: 0x000c, 0x3bd0: 0x000c, 0x3bd1: 0x000c, -+ 0x3bd2: 0x000c, 0x3bd3: 0x000c, 0x3bd4: 0x000c, 0x3bd5: 0x000c, 0x3bd6: 0x000c, 0x3bd7: 0x000c, -+ 0x3bd8: 0x000c, 0x3bd9: 0x000c, 0x3bda: 0x000c, 0x3bdb: 0x000c, 0x3bdc: 0x000c, 0x3bdd: 0x000c, -+ 0x3bde: 0x000c, 0x3bdf: 0x000c, 0x3be0: 0x000c, 0x3be1: 0x000c, 0x3be2: 0x000c, 0x3be3: 0x000c, -+ 0x3be4: 0x000c, 0x3be5: 0x000c, 0x3be6: 0x000c, 0x3be7: 0x000c, 0x3be8: 0x000c, 0x3be9: 0x000c, -+ 0x3bea: 0x000c, 0x3beb: 0x000c, 0x3bec: 0x000c, 0x3bed: 0x000c, 0x3bee: 0x000c, 0x3bef: 0x000c, -+ 0x3bf0: 0x000b, 0x3bf1: 0x000b, 0x3bf2: 0x000b, 0x3bf3: 0x000b, 0x3bf4: 0x000b, 0x3bf5: 0x000b, -+ 0x3bf6: 0x000b, 0x3bf7: 0x000b, 0x3bf8: 0x000b, 0x3bf9: 0x000b, 0x3bfa: 0x000b, 0x3bfb: 0x000b, -+ 0x3bfc: 0x000b, 0x3bfd: 0x000b, 0x3bfe: 0x000b, 0x3bff: 0x000b, -+} -+ -+// bidiIndex: 24 blocks, 1536 entries, 1536 bytes -+// Block 0 is the zero block. -+var bidiIndex = [1536]uint8{ -+ // Block 0x0, offset 0x0 -+ // Block 0x1, offset 0x40 -+ // Block 0x2, offset 0x80 -+ // Block 0x3, offset 0xc0 -+ 0xc2: 0x01, 0xc3: 0x02, -+ 0xca: 0x03, 0xcb: 0x04, 0xcc: 0x05, 0xcd: 0x06, 0xce: 0x07, 0xcf: 0x08, -+ 0xd2: 0x09, 0xd6: 0x0a, 0xd7: 0x0b, -+ 0xd8: 0x0c, 0xd9: 0x0d, 0xda: 0x0e, 0xdb: 0x0f, 0xdc: 0x10, 0xdd: 0x11, 0xde: 0x12, 0xdf: 0x13, -+ 0xe0: 0x02, 0xe1: 0x03, 0xe2: 0x04, 0xe3: 0x05, 0xe4: 0x06, -+ 0xea: 0x07, 0xef: 0x08, -+ 0xf0: 0x11, 0xf1: 0x12, 0xf2: 0x12, 0xf3: 0x14, 0xf4: 0x15, -+ // Block 0x4, offset 0x100 -+ 0x120: 0x14, 0x121: 0x15, 0x122: 0x16, 0x123: 0x17, 0x124: 0x18, 0x125: 0x19, 0x126: 0x1a, 0x127: 0x1b, -+ 0x128: 0x1c, 0x129: 0x1d, 0x12a: 0x1c, 0x12b: 0x1e, 0x12c: 0x1f, 0x12d: 0x20, 0x12e: 0x21, 0x12f: 0x22, -+ 0x130: 0x23, 0x131: 0x24, 0x132: 0x1a, 0x133: 0x25, 0x134: 0x26, 0x135: 0x27, 0x137: 0x28, -+ 0x138: 0x29, 0x139: 0x2a, 0x13a: 0x2b, 0x13b: 0x2c, 0x13c: 0x2d, 0x13d: 0x2e, 0x13e: 0x2f, 0x13f: 0x30, -+ // Block 0x5, offset 0x140 -+ 0x140: 0x31, 0x141: 0x32, 0x142: 0x33, -+ 0x14d: 0x34, 0x14e: 0x35, -+ 0x150: 0x36, -+ 0x15a: 0x37, 0x15c: 0x38, 0x15d: 0x39, 0x15e: 0x3a, 0x15f: 0x3b, -+ 0x160: 0x3c, 0x162: 0x3d, 0x164: 0x3e, 0x165: 0x3f, 0x167: 0x40, -+ 0x168: 0x41, 0x169: 0x42, 0x16a: 0x43, 0x16c: 0x44, 0x16d: 0x45, 0x16e: 0x46, 0x16f: 0x47, -+ 0x170: 0x48, 0x173: 0x49, 0x177: 0x4a, -+ 0x17e: 0x4b, 0x17f: 0x4c, -+ // Block 0x6, offset 0x180 -+ 0x180: 0x4d, 0x181: 0x4e, 0x182: 0x4f, 0x183: 0x50, 0x184: 0x51, 0x185: 0x52, 0x186: 0x53, 0x187: 0x54, -+ 0x188: 0x55, 0x189: 0x54, 0x18a: 0x54, 0x18b: 0x54, 0x18c: 0x56, 0x18d: 0x57, 0x18e: 0x58, 0x18f: 0x54, -+ 0x190: 0x59, 0x191: 0x5a, 0x192: 0x5b, 0x193: 0x5c, 0x194: 0x54, 0x195: 0x54, 0x196: 0x54, 0x197: 0x54, -+ 0x198: 0x54, 0x199: 0x54, 0x19a: 0x5d, 0x19b: 0x54, 0x19c: 0x54, 0x19d: 0x5e, 0x19e: 0x54, 0x19f: 0x5f, -+ 0x1a4: 0x54, 0x1a5: 0x54, 0x1a6: 0x60, 0x1a7: 0x61, -+ 0x1a8: 0x54, 0x1a9: 0x54, 0x1aa: 0x54, 0x1ab: 0x54, 0x1ac: 0x54, 0x1ad: 0x62, 0x1ae: 0x63, 0x1af: 0x54, -+ 0x1b3: 0x64, 0x1b5: 0x65, 0x1b7: 0x66, -+ 0x1b8: 0x67, 0x1b9: 0x68, 0x1ba: 0x69, 0x1bb: 0x6a, 0x1bc: 0x54, 0x1bd: 0x54, 0x1be: 0x54, 0x1bf: 0x6b, -+ // Block 0x7, offset 0x1c0 -+ 0x1c0: 0x6c, 0x1c2: 0x6d, 0x1c3: 0x6e, 0x1c7: 0x6f, -+ 0x1c8: 0x70, 0x1c9: 0x71, 0x1ca: 0x72, 0x1cb: 0x73, 0x1cd: 0x74, 0x1cf: 0x75, -+ // Block 0x8, offset 0x200 -+ 0x237: 0x54, -+ // Block 0x9, offset 0x240 -+ 0x252: 0x76, 0x253: 0x77, -+ 0x258: 0x78, 0x259: 0x79, 0x25a: 0x7a, 0x25b: 0x7b, 0x25c: 0x7c, 0x25e: 0x7d, -+ 0x260: 0x7e, 0x261: 0x7f, 0x263: 0x80, 0x264: 0x81, 0x265: 0x82, 0x266: 0x83, 0x267: 0x84, -+ 0x268: 0x85, 0x269: 0x86, 0x26a: 0x87, 0x26b: 0x88, 0x26f: 0x89, -+ // Block 0xa, offset 0x280 -+ 0x2ac: 0x8a, 0x2ad: 0x8b, 0x2ae: 0x0e, 0x2af: 0x0e, -+ 0x2b0: 0x0e, 0x2b1: 0x0e, 0x2b2: 0x0e, 0x2b3: 0x0e, 0x2b4: 0x8c, 0x2b5: 0x0e, 0x2b6: 0x0e, 0x2b7: 0x8d, -+ 0x2b8: 0x8e, 0x2b9: 0x8f, 0x2ba: 0x0e, 0x2bb: 0x90, 0x2bc: 0x91, 0x2bd: 0x92, 0x2bf: 0x93, -+ // Block 0xb, offset 0x2c0 -+ 0x2c4: 0x94, 0x2c5: 0x54, 0x2c6: 0x95, 0x2c7: 0x96, -+ 0x2cb: 0x97, 0x2cd: 0x98, -+ 0x2e0: 0x99, 0x2e1: 0x99, 0x2e2: 0x99, 0x2e3: 0x99, 0x2e4: 0x9a, 0x2e5: 0x99, 0x2e6: 0x99, 0x2e7: 0x99, -+ 0x2e8: 0x9b, 0x2e9: 0x99, 0x2ea: 0x99, 0x2eb: 0x9c, 0x2ec: 0x9d, 0x2ed: 0x99, 0x2ee: 0x99, 0x2ef: 0x99, -+ 0x2f0: 0x99, 0x2f1: 0x99, 0x2f2: 0x99, 0x2f3: 0x99, 0x2f4: 0x9e, 0x2f5: 0x99, 0x2f6: 0x99, 0x2f7: 0x99, -+ 0x2f8: 0x99, 0x2f9: 0x9f, 0x2fa: 0x99, 0x2fb: 0x99, 0x2fc: 0xa0, 0x2fd: 0xa1, 0x2fe: 0x99, 0x2ff: 0x99, -+ // Block 0xc, offset 0x300 -+ 0x300: 0xa2, 0x301: 0xa3, 0x302: 0xa4, 0x304: 0xa5, 0x305: 0xa6, 0x306: 0xa7, 0x307: 0xa8, -+ 0x308: 0xa9, 0x30b: 0xaa, 0x30c: 0x26, 0x30d: 0xab, -+ 0x310: 0xac, 0x311: 0xad, 0x312: 0xae, 0x313: 0xaf, 0x316: 0xb0, 0x317: 0xb1, -+ 0x318: 0xb2, 0x319: 0xb3, 0x31a: 0xb4, 0x31c: 0xb5, -+ 0x320: 0xb6, 0x327: 0xb7, -+ 0x328: 0xb8, 0x329: 0xb9, 0x32a: 0xba, -+ 0x330: 0xbb, 0x332: 0xbc, 0x334: 0xbd, 0x335: 0xbe, 0x336: 0xbf, -+ 0x33b: 0xc0, 0x33f: 0xc1, -+ // Block 0xd, offset 0x340 -+ 0x36b: 0xc2, 0x36c: 0xc3, -+ 0x37d: 0xc4, 0x37e: 0xc5, 0x37f: 0xc6, -+ // Block 0xe, offset 0x380 -+ 0x3b2: 0xc7, -+ // Block 0xf, offset 0x3c0 -+ 0x3c5: 0xc8, 0x3c6: 0xc9, -+ 0x3c8: 0x54, 0x3c9: 0xca, 0x3cc: 0x54, 0x3cd: 0xcb, -+ 0x3db: 0xcc, 0x3dc: 0xcd, 0x3dd: 0xce, 0x3de: 0xcf, 0x3df: 0xd0, -+ 0x3e8: 0xd1, 0x3e9: 0xd2, 0x3ea: 0xd3, -+ // Block 0x10, offset 0x400 -+ 0x400: 0xd4, 0x404: 0xc3, -+ 0x40b: 0xd5, -+ 0x420: 0x99, 0x421: 0x99, 0x422: 0x99, 0x423: 0xd6, 0x424: 0x99, 0x425: 0xd7, 0x426: 0x99, 0x427: 0x99, -+ 0x428: 0x99, 0x429: 0x99, 0x42a: 0x99, 0x42b: 0x99, 0x42c: 0x99, 0x42d: 0x99, 0x42e: 0x99, 0x42f: 0x99, -+ 0x430: 0x99, 0x431: 0xa0, 0x432: 0x0e, 0x433: 0x99, 0x434: 0x0e, 0x435: 0xd8, 0x436: 0x99, 0x437: 0x99, -+ 0x438: 0x0e, 0x439: 0x0e, 0x43a: 0x0e, 0x43b: 0xd9, 0x43c: 0x99, 0x43d: 0x99, 0x43e: 0x99, 0x43f: 0x99, -+ // Block 0x11, offset 0x440 -+ 0x440: 0xda, 0x441: 0x54, 0x442: 0xdb, 0x443: 0xdc, 0x444: 0xdd, 0x445: 0xde, -+ 0x449: 0xdf, 0x44c: 0x54, 0x44d: 0x54, 0x44e: 0x54, 0x44f: 0x54, -+ 0x450: 0x54, 0x451: 0x54, 0x452: 0x54, 0x453: 0x54, 0x454: 0x54, 0x455: 0x54, 0x456: 0x54, 0x457: 0x54, -+ 0x458: 0x54, 0x459: 0x54, 0x45a: 0x54, 0x45b: 0xe0, 0x45c: 0x54, 0x45d: 0x6a, 0x45e: 0x54, 0x45f: 0xe1, -+ 0x460: 0xe2, 0x461: 0xe3, 0x462: 0xe4, 0x464: 0xe5, 0x465: 0xe6, 0x466: 0xe7, 0x467: 0xe8, -+ 0x468: 0x54, 0x469: 0xe9, 0x46a: 0xea, -+ 0x47f: 0xeb, -+ // Block 0x12, offset 0x480 -+ 0x4bf: 0xeb, -+ // Block 0x13, offset 0x4c0 -+ 0x4d0: 0x09, 0x4d1: 0x0a, 0x4d6: 0x0b, -+ 0x4db: 0x0c, 0x4dd: 0x0d, 0x4de: 0x0e, 0x4df: 0x0f, -+ 0x4ef: 0x10, -+ 0x4ff: 0x10, -+ // Block 0x14, offset 0x500 -+ 0x50f: 0x10, -+ 0x51f: 0x10, -+ 0x52f: 0x10, -+ 0x53f: 0x10, -+ // Block 0x15, offset 0x540 -+ 0x540: 0xec, 0x541: 0xec, 0x542: 0xec, 0x543: 0xec, 0x544: 0x05, 0x545: 0x05, 0x546: 0x05, 0x547: 0xed, -+ 0x548: 0xec, 0x549: 0xec, 0x54a: 0xec, 0x54b: 0xec, 0x54c: 0xec, 0x54d: 0xec, 0x54e: 0xec, 0x54f: 0xec, -+ 0x550: 0xec, 0x551: 0xec, 0x552: 0xec, 0x553: 0xec, 0x554: 0xec, 0x555: 0xec, 0x556: 0xec, 0x557: 0xec, -+ 0x558: 0xec, 0x559: 0xec, 0x55a: 0xec, 0x55b: 0xec, 0x55c: 0xec, 0x55d: 0xec, 0x55e: 0xec, 0x55f: 0xec, -+ 0x560: 0xec, 0x561: 0xec, 0x562: 0xec, 0x563: 0xec, 0x564: 0xec, 0x565: 0xec, 0x566: 0xec, 0x567: 0xec, -+ 0x568: 0xec, 0x569: 0xec, 0x56a: 0xec, 0x56b: 0xec, 0x56c: 0xec, 0x56d: 0xec, 0x56e: 0xec, 0x56f: 0xec, -+ 0x570: 0xec, 0x571: 0xec, 0x572: 0xec, 0x573: 0xec, 0x574: 0xec, 0x575: 0xec, 0x576: 0xec, 0x577: 0xec, -+ 0x578: 0xec, 0x579: 0xec, 0x57a: 0xec, 0x57b: 0xec, 0x57c: 0xec, 0x57d: 0xec, 0x57e: 0xec, 0x57f: 0xec, -+ // Block 0x16, offset 0x580 -+ 0x58f: 0x10, -+ 0x59f: 0x10, -+ 0x5a0: 0x13, -+ 0x5af: 0x10, -+ 0x5bf: 0x10, -+ // Block 0x17, offset 0x5c0 -+ 0x5cf: 0x10, -+} -+ -+// Total table size 16952 bytes (16KiB); checksum: F50EF68C -diff --git a/vendor/golang.org/x/text/unicode/bidi/tables13.0.0.go b/vendor/golang.org/x/text/unicode/bidi/tables13.0.0.go -new file mode 100644 -index 0000000..f248eff ---- /dev/null -+++ b/vendor/golang.org/x/text/unicode/bidi/tables13.0.0.go -@@ -0,0 +1,1956 @@ -+// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. -+ -+//go:build go1.16 -+// +build go1.16 -+ -+package bidi -+ -+// UnicodeVersion is the Unicode version from which the tables in this package are derived. -+const UnicodeVersion = "13.0.0" -+ -+// xorMasks contains masks to be xor-ed with brackets to get the reverse -+// version. -+var xorMasks = []int32{ // 8 elements -+ 0, 1, 6, 7, 3, 15, 29, 63, -+} // Size: 56 bytes -+ -+// lookup returns the trie value for the first UTF-8 encoding in s and -+// the width in bytes of this encoding. The size will be 0 if s does not -+// hold enough bytes to complete the encoding. len(s) must be greater than 0. -+func (t *bidiTrie) lookup(s []byte) (v uint8, sz int) { -+ c0 := s[0] -+ switch { -+ case c0 < 0x80: // is ASCII -+ return bidiValues[c0], 1 -+ case c0 < 0xC2: -+ return 0, 1 // Illegal UTF-8: not a starter, not ASCII. -+ case c0 < 0xE0: // 2-byte UTF-8 -+ if len(s) < 2 { -+ return 0, 0 -+ } -+ i := bidiIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c1), 2 -+ case c0 < 0xF0: // 3-byte UTF-8 -+ if len(s) < 3 { -+ return 0, 0 -+ } -+ i := bidiIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = bidiIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c2), 3 -+ case c0 < 0xF8: // 4-byte UTF-8 -+ if len(s) < 4 { -+ return 0, 0 -+ } -+ i := bidiIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = bidiIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ o = uint32(i)<<6 + uint32(c2) -+ i = bidiIndex[o] -+ c3 := s[3] -+ if c3 < 0x80 || 0xC0 <= c3 { -+ return 0, 3 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c3), 4 -+ } -+ // Illegal rune -+ return 0, 1 -+} -+ -+// lookupUnsafe returns the trie value for the first UTF-8 encoding in s. -+// s must start with a full and valid UTF-8 encoded rune. -+func (t *bidiTrie) lookupUnsafe(s []byte) uint8 { -+ c0 := s[0] -+ if c0 < 0x80 { // is ASCII -+ return bidiValues[c0] -+ } -+ i := bidiIndex[c0] -+ if c0 < 0xE0 { // 2-byte UTF-8 -+ return t.lookupValue(uint32(i), s[1]) -+ } -+ i = bidiIndex[uint32(i)<<6+uint32(s[1])] -+ if c0 < 0xF0 { // 3-byte UTF-8 -+ return t.lookupValue(uint32(i), s[2]) -+ } -+ i = bidiIndex[uint32(i)<<6+uint32(s[2])] -+ if c0 < 0xF8 { // 4-byte UTF-8 -+ return t.lookupValue(uint32(i), s[3]) -+ } -+ return 0 -+} -+ -+// lookupString returns the trie value for the first UTF-8 encoding in s and -+// the width in bytes of this encoding. The size will be 0 if s does not -+// hold enough bytes to complete the encoding. len(s) must be greater than 0. -+func (t *bidiTrie) lookupString(s string) (v uint8, sz int) { -+ c0 := s[0] -+ switch { -+ case c0 < 0x80: // is ASCII -+ return bidiValues[c0], 1 -+ case c0 < 0xC2: -+ return 0, 1 // Illegal UTF-8: not a starter, not ASCII. -+ case c0 < 0xE0: // 2-byte UTF-8 -+ if len(s) < 2 { -+ return 0, 0 -+ } -+ i := bidiIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c1), 2 -+ case c0 < 0xF0: // 3-byte UTF-8 -+ if len(s) < 3 { -+ return 0, 0 -+ } -+ i := bidiIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = bidiIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c2), 3 -+ case c0 < 0xF8: // 4-byte UTF-8 -+ if len(s) < 4 { -+ return 0, 0 -+ } -+ i := bidiIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = bidiIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ o = uint32(i)<<6 + uint32(c2) -+ i = bidiIndex[o] -+ c3 := s[3] -+ if c3 < 0x80 || 0xC0 <= c3 { -+ return 0, 3 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c3), 4 -+ } -+ // Illegal rune -+ return 0, 1 -+} -+ -+// lookupStringUnsafe returns the trie value for the first UTF-8 encoding in s. -+// s must start with a full and valid UTF-8 encoded rune. -+func (t *bidiTrie) lookupStringUnsafe(s string) uint8 { -+ c0 := s[0] -+ if c0 < 0x80 { // is ASCII -+ return bidiValues[c0] -+ } -+ i := bidiIndex[c0] -+ if c0 < 0xE0 { // 2-byte UTF-8 -+ return t.lookupValue(uint32(i), s[1]) -+ } -+ i = bidiIndex[uint32(i)<<6+uint32(s[1])] -+ if c0 < 0xF0 { // 3-byte UTF-8 -+ return t.lookupValue(uint32(i), s[2]) -+ } -+ i = bidiIndex[uint32(i)<<6+uint32(s[2])] -+ if c0 < 0xF8 { // 4-byte UTF-8 -+ return t.lookupValue(uint32(i), s[3]) -+ } -+ return 0 -+} -+ -+// bidiTrie. Total size: 17408 bytes (17.00 KiB). Checksum: df85fcbfe9b8377f. -+type bidiTrie struct{} -+ -+func newBidiTrie(i int) *bidiTrie { -+ return &bidiTrie{} -+} -+ -+// lookupValue determines the type of block n and looks up the value for b. -+func (t *bidiTrie) lookupValue(n uint32, b byte) uint8 { -+ switch { -+ default: -+ return uint8(bidiValues[n<<6+uint32(b)]) -+ } -+} -+ -+// bidiValues: 248 blocks, 15872 entries, 15872 bytes -+// The third block is the zero block. -+var bidiValues = [15872]uint8{ -+ // Block 0x0, offset 0x0 -+ 0x00: 0x000b, 0x01: 0x000b, 0x02: 0x000b, 0x03: 0x000b, 0x04: 0x000b, 0x05: 0x000b, -+ 0x06: 0x000b, 0x07: 0x000b, 0x08: 0x000b, 0x09: 0x0008, 0x0a: 0x0007, 0x0b: 0x0008, -+ 0x0c: 0x0009, 0x0d: 0x0007, 0x0e: 0x000b, 0x0f: 0x000b, 0x10: 0x000b, 0x11: 0x000b, -+ 0x12: 0x000b, 0x13: 0x000b, 0x14: 0x000b, 0x15: 0x000b, 0x16: 0x000b, 0x17: 0x000b, -+ 0x18: 0x000b, 0x19: 0x000b, 0x1a: 0x000b, 0x1b: 0x000b, 0x1c: 0x0007, 0x1d: 0x0007, -+ 0x1e: 0x0007, 0x1f: 0x0008, 0x20: 0x0009, 0x21: 0x000a, 0x22: 0x000a, 0x23: 0x0004, -+ 0x24: 0x0004, 0x25: 0x0004, 0x26: 0x000a, 0x27: 0x000a, 0x28: 0x003a, 0x29: 0x002a, -+ 0x2a: 0x000a, 0x2b: 0x0003, 0x2c: 0x0006, 0x2d: 0x0003, 0x2e: 0x0006, 0x2f: 0x0006, -+ 0x30: 0x0002, 0x31: 0x0002, 0x32: 0x0002, 0x33: 0x0002, 0x34: 0x0002, 0x35: 0x0002, -+ 0x36: 0x0002, 0x37: 0x0002, 0x38: 0x0002, 0x39: 0x0002, 0x3a: 0x0006, 0x3b: 0x000a, -+ 0x3c: 0x000a, 0x3d: 0x000a, 0x3e: 0x000a, 0x3f: 0x000a, -+ // Block 0x1, offset 0x40 -+ 0x40: 0x000a, -+ 0x5b: 0x005a, 0x5c: 0x000a, 0x5d: 0x004a, -+ 0x5e: 0x000a, 0x5f: 0x000a, 0x60: 0x000a, -+ 0x7b: 0x005a, -+ 0x7c: 0x000a, 0x7d: 0x004a, 0x7e: 0x000a, 0x7f: 0x000b, -+ // Block 0x2, offset 0x80 -+ // Block 0x3, offset 0xc0 -+ 0xc0: 0x000b, 0xc1: 0x000b, 0xc2: 0x000b, 0xc3: 0x000b, 0xc4: 0x000b, 0xc5: 0x0007, -+ 0xc6: 0x000b, 0xc7: 0x000b, 0xc8: 0x000b, 0xc9: 0x000b, 0xca: 0x000b, 0xcb: 0x000b, -+ 0xcc: 0x000b, 0xcd: 0x000b, 0xce: 0x000b, 0xcf: 0x000b, 0xd0: 0x000b, 0xd1: 0x000b, -+ 0xd2: 0x000b, 0xd3: 0x000b, 0xd4: 0x000b, 0xd5: 0x000b, 0xd6: 0x000b, 0xd7: 0x000b, -+ 0xd8: 0x000b, 0xd9: 0x000b, 0xda: 0x000b, 0xdb: 0x000b, 0xdc: 0x000b, 0xdd: 0x000b, -+ 0xde: 0x000b, 0xdf: 0x000b, 0xe0: 0x0006, 0xe1: 0x000a, 0xe2: 0x0004, 0xe3: 0x0004, -+ 0xe4: 0x0004, 0xe5: 0x0004, 0xe6: 0x000a, 0xe7: 0x000a, 0xe8: 0x000a, 0xe9: 0x000a, -+ 0xeb: 0x000a, 0xec: 0x000a, 0xed: 0x000b, 0xee: 0x000a, 0xef: 0x000a, -+ 0xf0: 0x0004, 0xf1: 0x0004, 0xf2: 0x0002, 0xf3: 0x0002, 0xf4: 0x000a, -+ 0xf6: 0x000a, 0xf7: 0x000a, 0xf8: 0x000a, 0xf9: 0x0002, 0xfb: 0x000a, -+ 0xfc: 0x000a, 0xfd: 0x000a, 0xfe: 0x000a, 0xff: 0x000a, -+ // Block 0x4, offset 0x100 -+ 0x117: 0x000a, -+ 0x137: 0x000a, -+ // Block 0x5, offset 0x140 -+ 0x179: 0x000a, 0x17a: 0x000a, -+ // Block 0x6, offset 0x180 -+ 0x182: 0x000a, 0x183: 0x000a, 0x184: 0x000a, 0x185: 0x000a, -+ 0x186: 0x000a, 0x187: 0x000a, 0x188: 0x000a, 0x189: 0x000a, 0x18a: 0x000a, 0x18b: 0x000a, -+ 0x18c: 0x000a, 0x18d: 0x000a, 0x18e: 0x000a, 0x18f: 0x000a, -+ 0x192: 0x000a, 0x193: 0x000a, 0x194: 0x000a, 0x195: 0x000a, 0x196: 0x000a, 0x197: 0x000a, -+ 0x198: 0x000a, 0x199: 0x000a, 0x19a: 0x000a, 0x19b: 0x000a, 0x19c: 0x000a, 0x19d: 0x000a, -+ 0x19e: 0x000a, 0x19f: 0x000a, -+ 0x1a5: 0x000a, 0x1a6: 0x000a, 0x1a7: 0x000a, 0x1a8: 0x000a, 0x1a9: 0x000a, -+ 0x1aa: 0x000a, 0x1ab: 0x000a, 0x1ac: 0x000a, 0x1ad: 0x000a, 0x1af: 0x000a, -+ 0x1b0: 0x000a, 0x1b1: 0x000a, 0x1b2: 0x000a, 0x1b3: 0x000a, 0x1b4: 0x000a, 0x1b5: 0x000a, -+ 0x1b6: 0x000a, 0x1b7: 0x000a, 0x1b8: 0x000a, 0x1b9: 0x000a, 0x1ba: 0x000a, 0x1bb: 0x000a, -+ 0x1bc: 0x000a, 0x1bd: 0x000a, 0x1be: 0x000a, 0x1bf: 0x000a, -+ // Block 0x7, offset 0x1c0 -+ 0x1c0: 0x000c, 0x1c1: 0x000c, 0x1c2: 0x000c, 0x1c3: 0x000c, 0x1c4: 0x000c, 0x1c5: 0x000c, -+ 0x1c6: 0x000c, 0x1c7: 0x000c, 0x1c8: 0x000c, 0x1c9: 0x000c, 0x1ca: 0x000c, 0x1cb: 0x000c, -+ 0x1cc: 0x000c, 0x1cd: 0x000c, 0x1ce: 0x000c, 0x1cf: 0x000c, 0x1d0: 0x000c, 0x1d1: 0x000c, -+ 0x1d2: 0x000c, 0x1d3: 0x000c, 0x1d4: 0x000c, 0x1d5: 0x000c, 0x1d6: 0x000c, 0x1d7: 0x000c, -+ 0x1d8: 0x000c, 0x1d9: 0x000c, 0x1da: 0x000c, 0x1db: 0x000c, 0x1dc: 0x000c, 0x1dd: 0x000c, -+ 0x1de: 0x000c, 0x1df: 0x000c, 0x1e0: 0x000c, 0x1e1: 0x000c, 0x1e2: 0x000c, 0x1e3: 0x000c, -+ 0x1e4: 0x000c, 0x1e5: 0x000c, 0x1e6: 0x000c, 0x1e7: 0x000c, 0x1e8: 0x000c, 0x1e9: 0x000c, -+ 0x1ea: 0x000c, 0x1eb: 0x000c, 0x1ec: 0x000c, 0x1ed: 0x000c, 0x1ee: 0x000c, 0x1ef: 0x000c, -+ 0x1f0: 0x000c, 0x1f1: 0x000c, 0x1f2: 0x000c, 0x1f3: 0x000c, 0x1f4: 0x000c, 0x1f5: 0x000c, -+ 0x1f6: 0x000c, 0x1f7: 0x000c, 0x1f8: 0x000c, 0x1f9: 0x000c, 0x1fa: 0x000c, 0x1fb: 0x000c, -+ 0x1fc: 0x000c, 0x1fd: 0x000c, 0x1fe: 0x000c, 0x1ff: 0x000c, -+ // Block 0x8, offset 0x200 -+ 0x200: 0x000c, 0x201: 0x000c, 0x202: 0x000c, 0x203: 0x000c, 0x204: 0x000c, 0x205: 0x000c, -+ 0x206: 0x000c, 0x207: 0x000c, 0x208: 0x000c, 0x209: 0x000c, 0x20a: 0x000c, 0x20b: 0x000c, -+ 0x20c: 0x000c, 0x20d: 0x000c, 0x20e: 0x000c, 0x20f: 0x000c, 0x210: 0x000c, 0x211: 0x000c, -+ 0x212: 0x000c, 0x213: 0x000c, 0x214: 0x000c, 0x215: 0x000c, 0x216: 0x000c, 0x217: 0x000c, -+ 0x218: 0x000c, 0x219: 0x000c, 0x21a: 0x000c, 0x21b: 0x000c, 0x21c: 0x000c, 0x21d: 0x000c, -+ 0x21e: 0x000c, 0x21f: 0x000c, 0x220: 0x000c, 0x221: 0x000c, 0x222: 0x000c, 0x223: 0x000c, -+ 0x224: 0x000c, 0x225: 0x000c, 0x226: 0x000c, 0x227: 0x000c, 0x228: 0x000c, 0x229: 0x000c, -+ 0x22a: 0x000c, 0x22b: 0x000c, 0x22c: 0x000c, 0x22d: 0x000c, 0x22e: 0x000c, 0x22f: 0x000c, -+ 0x234: 0x000a, 0x235: 0x000a, -+ 0x23e: 0x000a, -+ // Block 0x9, offset 0x240 -+ 0x244: 0x000a, 0x245: 0x000a, -+ 0x247: 0x000a, -+ // Block 0xa, offset 0x280 -+ 0x2b6: 0x000a, -+ // Block 0xb, offset 0x2c0 -+ 0x2c3: 0x000c, 0x2c4: 0x000c, 0x2c5: 0x000c, -+ 0x2c6: 0x000c, 0x2c7: 0x000c, 0x2c8: 0x000c, 0x2c9: 0x000c, -+ // Block 0xc, offset 0x300 -+ 0x30a: 0x000a, -+ 0x30d: 0x000a, 0x30e: 0x000a, 0x30f: 0x0004, 0x310: 0x0001, 0x311: 0x000c, -+ 0x312: 0x000c, 0x313: 0x000c, 0x314: 0x000c, 0x315: 0x000c, 0x316: 0x000c, 0x317: 0x000c, -+ 0x318: 0x000c, 0x319: 0x000c, 0x31a: 0x000c, 0x31b: 0x000c, 0x31c: 0x000c, 0x31d: 0x000c, -+ 0x31e: 0x000c, 0x31f: 0x000c, 0x320: 0x000c, 0x321: 0x000c, 0x322: 0x000c, 0x323: 0x000c, -+ 0x324: 0x000c, 0x325: 0x000c, 0x326: 0x000c, 0x327: 0x000c, 0x328: 0x000c, 0x329: 0x000c, -+ 0x32a: 0x000c, 0x32b: 0x000c, 0x32c: 0x000c, 0x32d: 0x000c, 0x32e: 0x000c, 0x32f: 0x000c, -+ 0x330: 0x000c, 0x331: 0x000c, 0x332: 0x000c, 0x333: 0x000c, 0x334: 0x000c, 0x335: 0x000c, -+ 0x336: 0x000c, 0x337: 0x000c, 0x338: 0x000c, 0x339: 0x000c, 0x33a: 0x000c, 0x33b: 0x000c, -+ 0x33c: 0x000c, 0x33d: 0x000c, 0x33e: 0x0001, 0x33f: 0x000c, -+ // Block 0xd, offset 0x340 -+ 0x340: 0x0001, 0x341: 0x000c, 0x342: 0x000c, 0x343: 0x0001, 0x344: 0x000c, 0x345: 0x000c, -+ 0x346: 0x0001, 0x347: 0x000c, 0x348: 0x0001, 0x349: 0x0001, 0x34a: 0x0001, 0x34b: 0x0001, -+ 0x34c: 0x0001, 0x34d: 0x0001, 0x34e: 0x0001, 0x34f: 0x0001, 0x350: 0x0001, 0x351: 0x0001, -+ 0x352: 0x0001, 0x353: 0x0001, 0x354: 0x0001, 0x355: 0x0001, 0x356: 0x0001, 0x357: 0x0001, -+ 0x358: 0x0001, 0x359: 0x0001, 0x35a: 0x0001, 0x35b: 0x0001, 0x35c: 0x0001, 0x35d: 0x0001, -+ 0x35e: 0x0001, 0x35f: 0x0001, 0x360: 0x0001, 0x361: 0x0001, 0x362: 0x0001, 0x363: 0x0001, -+ 0x364: 0x0001, 0x365: 0x0001, 0x366: 0x0001, 0x367: 0x0001, 0x368: 0x0001, 0x369: 0x0001, -+ 0x36a: 0x0001, 0x36b: 0x0001, 0x36c: 0x0001, 0x36d: 0x0001, 0x36e: 0x0001, 0x36f: 0x0001, -+ 0x370: 0x0001, 0x371: 0x0001, 0x372: 0x0001, 0x373: 0x0001, 0x374: 0x0001, 0x375: 0x0001, -+ 0x376: 0x0001, 0x377: 0x0001, 0x378: 0x0001, 0x379: 0x0001, 0x37a: 0x0001, 0x37b: 0x0001, -+ 0x37c: 0x0001, 0x37d: 0x0001, 0x37e: 0x0001, 0x37f: 0x0001, -+ // Block 0xe, offset 0x380 -+ 0x380: 0x0005, 0x381: 0x0005, 0x382: 0x0005, 0x383: 0x0005, 0x384: 0x0005, 0x385: 0x0005, -+ 0x386: 0x000a, 0x387: 0x000a, 0x388: 0x000d, 0x389: 0x0004, 0x38a: 0x0004, 0x38b: 0x000d, -+ 0x38c: 0x0006, 0x38d: 0x000d, 0x38e: 0x000a, 0x38f: 0x000a, 0x390: 0x000c, 0x391: 0x000c, -+ 0x392: 0x000c, 0x393: 0x000c, 0x394: 0x000c, 0x395: 0x000c, 0x396: 0x000c, 0x397: 0x000c, -+ 0x398: 0x000c, 0x399: 0x000c, 0x39a: 0x000c, 0x39b: 0x000d, 0x39c: 0x000d, 0x39d: 0x000d, -+ 0x39e: 0x000d, 0x39f: 0x000d, 0x3a0: 0x000d, 0x3a1: 0x000d, 0x3a2: 0x000d, 0x3a3: 0x000d, -+ 0x3a4: 0x000d, 0x3a5: 0x000d, 0x3a6: 0x000d, 0x3a7: 0x000d, 0x3a8: 0x000d, 0x3a9: 0x000d, -+ 0x3aa: 0x000d, 0x3ab: 0x000d, 0x3ac: 0x000d, 0x3ad: 0x000d, 0x3ae: 0x000d, 0x3af: 0x000d, -+ 0x3b0: 0x000d, 0x3b1: 0x000d, 0x3b2: 0x000d, 0x3b3: 0x000d, 0x3b4: 0x000d, 0x3b5: 0x000d, -+ 0x3b6: 0x000d, 0x3b7: 0x000d, 0x3b8: 0x000d, 0x3b9: 0x000d, 0x3ba: 0x000d, 0x3bb: 0x000d, -+ 0x3bc: 0x000d, 0x3bd: 0x000d, 0x3be: 0x000d, 0x3bf: 0x000d, -+ // Block 0xf, offset 0x3c0 -+ 0x3c0: 0x000d, 0x3c1: 0x000d, 0x3c2: 0x000d, 0x3c3: 0x000d, 0x3c4: 0x000d, 0x3c5: 0x000d, -+ 0x3c6: 0x000d, 0x3c7: 0x000d, 0x3c8: 0x000d, 0x3c9: 0x000d, 0x3ca: 0x000d, 0x3cb: 0x000c, -+ 0x3cc: 0x000c, 0x3cd: 0x000c, 0x3ce: 0x000c, 0x3cf: 0x000c, 0x3d0: 0x000c, 0x3d1: 0x000c, -+ 0x3d2: 0x000c, 0x3d3: 0x000c, 0x3d4: 0x000c, 0x3d5: 0x000c, 0x3d6: 0x000c, 0x3d7: 0x000c, -+ 0x3d8: 0x000c, 0x3d9: 0x000c, 0x3da: 0x000c, 0x3db: 0x000c, 0x3dc: 0x000c, 0x3dd: 0x000c, -+ 0x3de: 0x000c, 0x3df: 0x000c, 0x3e0: 0x0005, 0x3e1: 0x0005, 0x3e2: 0x0005, 0x3e3: 0x0005, -+ 0x3e4: 0x0005, 0x3e5: 0x0005, 0x3e6: 0x0005, 0x3e7: 0x0005, 0x3e8: 0x0005, 0x3e9: 0x0005, -+ 0x3ea: 0x0004, 0x3eb: 0x0005, 0x3ec: 0x0005, 0x3ed: 0x000d, 0x3ee: 0x000d, 0x3ef: 0x000d, -+ 0x3f0: 0x000c, 0x3f1: 0x000d, 0x3f2: 0x000d, 0x3f3: 0x000d, 0x3f4: 0x000d, 0x3f5: 0x000d, -+ 0x3f6: 0x000d, 0x3f7: 0x000d, 0x3f8: 0x000d, 0x3f9: 0x000d, 0x3fa: 0x000d, 0x3fb: 0x000d, -+ 0x3fc: 0x000d, 0x3fd: 0x000d, 0x3fe: 0x000d, 0x3ff: 0x000d, -+ // Block 0x10, offset 0x400 -+ 0x400: 0x000d, 0x401: 0x000d, 0x402: 0x000d, 0x403: 0x000d, 0x404: 0x000d, 0x405: 0x000d, -+ 0x406: 0x000d, 0x407: 0x000d, 0x408: 0x000d, 0x409: 0x000d, 0x40a: 0x000d, 0x40b: 0x000d, -+ 0x40c: 0x000d, 0x40d: 0x000d, 0x40e: 0x000d, 0x40f: 0x000d, 0x410: 0x000d, 0x411: 0x000d, -+ 0x412: 0x000d, 0x413: 0x000d, 0x414: 0x000d, 0x415: 0x000d, 0x416: 0x000d, 0x417: 0x000d, -+ 0x418: 0x000d, 0x419: 0x000d, 0x41a: 0x000d, 0x41b: 0x000d, 0x41c: 0x000d, 0x41d: 0x000d, -+ 0x41e: 0x000d, 0x41f: 0x000d, 0x420: 0x000d, 0x421: 0x000d, 0x422: 0x000d, 0x423: 0x000d, -+ 0x424: 0x000d, 0x425: 0x000d, 0x426: 0x000d, 0x427: 0x000d, 0x428: 0x000d, 0x429: 0x000d, -+ 0x42a: 0x000d, 0x42b: 0x000d, 0x42c: 0x000d, 0x42d: 0x000d, 0x42e: 0x000d, 0x42f: 0x000d, -+ 0x430: 0x000d, 0x431: 0x000d, 0x432: 0x000d, 0x433: 0x000d, 0x434: 0x000d, 0x435: 0x000d, -+ 0x436: 0x000d, 0x437: 0x000d, 0x438: 0x000d, 0x439: 0x000d, 0x43a: 0x000d, 0x43b: 0x000d, -+ 0x43c: 0x000d, 0x43d: 0x000d, 0x43e: 0x000d, 0x43f: 0x000d, -+ // Block 0x11, offset 0x440 -+ 0x440: 0x000d, 0x441: 0x000d, 0x442: 0x000d, 0x443: 0x000d, 0x444: 0x000d, 0x445: 0x000d, -+ 0x446: 0x000d, 0x447: 0x000d, 0x448: 0x000d, 0x449: 0x000d, 0x44a: 0x000d, 0x44b: 0x000d, -+ 0x44c: 0x000d, 0x44d: 0x000d, 0x44e: 0x000d, 0x44f: 0x000d, 0x450: 0x000d, 0x451: 0x000d, -+ 0x452: 0x000d, 0x453: 0x000d, 0x454: 0x000d, 0x455: 0x000d, 0x456: 0x000c, 0x457: 0x000c, -+ 0x458: 0x000c, 0x459: 0x000c, 0x45a: 0x000c, 0x45b: 0x000c, 0x45c: 0x000c, 0x45d: 0x0005, -+ 0x45e: 0x000a, 0x45f: 0x000c, 0x460: 0x000c, 0x461: 0x000c, 0x462: 0x000c, 0x463: 0x000c, -+ 0x464: 0x000c, 0x465: 0x000d, 0x466: 0x000d, 0x467: 0x000c, 0x468: 0x000c, 0x469: 0x000a, -+ 0x46a: 0x000c, 0x46b: 0x000c, 0x46c: 0x000c, 0x46d: 0x000c, 0x46e: 0x000d, 0x46f: 0x000d, -+ 0x470: 0x0002, 0x471: 0x0002, 0x472: 0x0002, 0x473: 0x0002, 0x474: 0x0002, 0x475: 0x0002, -+ 0x476: 0x0002, 0x477: 0x0002, 0x478: 0x0002, 0x479: 0x0002, 0x47a: 0x000d, 0x47b: 0x000d, -+ 0x47c: 0x000d, 0x47d: 0x000d, 0x47e: 0x000d, 0x47f: 0x000d, -+ // Block 0x12, offset 0x480 -+ 0x480: 0x000d, 0x481: 0x000d, 0x482: 0x000d, 0x483: 0x000d, 0x484: 0x000d, 0x485: 0x000d, -+ 0x486: 0x000d, 0x487: 0x000d, 0x488: 0x000d, 0x489: 0x000d, 0x48a: 0x000d, 0x48b: 0x000d, -+ 0x48c: 0x000d, 0x48d: 0x000d, 0x48e: 0x000d, 0x48f: 0x000d, 0x490: 0x000d, 0x491: 0x000c, -+ 0x492: 0x000d, 0x493: 0x000d, 0x494: 0x000d, 0x495: 0x000d, 0x496: 0x000d, 0x497: 0x000d, -+ 0x498: 0x000d, 0x499: 0x000d, 0x49a: 0x000d, 0x49b: 0x000d, 0x49c: 0x000d, 0x49d: 0x000d, -+ 0x49e: 0x000d, 0x49f: 0x000d, 0x4a0: 0x000d, 0x4a1: 0x000d, 0x4a2: 0x000d, 0x4a3: 0x000d, -+ 0x4a4: 0x000d, 0x4a5: 0x000d, 0x4a6: 0x000d, 0x4a7: 0x000d, 0x4a8: 0x000d, 0x4a9: 0x000d, -+ 0x4aa: 0x000d, 0x4ab: 0x000d, 0x4ac: 0x000d, 0x4ad: 0x000d, 0x4ae: 0x000d, 0x4af: 0x000d, -+ 0x4b0: 0x000c, 0x4b1: 0x000c, 0x4b2: 0x000c, 0x4b3: 0x000c, 0x4b4: 0x000c, 0x4b5: 0x000c, -+ 0x4b6: 0x000c, 0x4b7: 0x000c, 0x4b8: 0x000c, 0x4b9: 0x000c, 0x4ba: 0x000c, 0x4bb: 0x000c, -+ 0x4bc: 0x000c, 0x4bd: 0x000c, 0x4be: 0x000c, 0x4bf: 0x000c, -+ // Block 0x13, offset 0x4c0 -+ 0x4c0: 0x000c, 0x4c1: 0x000c, 0x4c2: 0x000c, 0x4c3: 0x000c, 0x4c4: 0x000c, 0x4c5: 0x000c, -+ 0x4c6: 0x000c, 0x4c7: 0x000c, 0x4c8: 0x000c, 0x4c9: 0x000c, 0x4ca: 0x000c, 0x4cb: 0x000d, -+ 0x4cc: 0x000d, 0x4cd: 0x000d, 0x4ce: 0x000d, 0x4cf: 0x000d, 0x4d0: 0x000d, 0x4d1: 0x000d, -+ 0x4d2: 0x000d, 0x4d3: 0x000d, 0x4d4: 0x000d, 0x4d5: 0x000d, 0x4d6: 0x000d, 0x4d7: 0x000d, -+ 0x4d8: 0x000d, 0x4d9: 0x000d, 0x4da: 0x000d, 0x4db: 0x000d, 0x4dc: 0x000d, 0x4dd: 0x000d, -+ 0x4de: 0x000d, 0x4df: 0x000d, 0x4e0: 0x000d, 0x4e1: 0x000d, 0x4e2: 0x000d, 0x4e3: 0x000d, -+ 0x4e4: 0x000d, 0x4e5: 0x000d, 0x4e6: 0x000d, 0x4e7: 0x000d, 0x4e8: 0x000d, 0x4e9: 0x000d, -+ 0x4ea: 0x000d, 0x4eb: 0x000d, 0x4ec: 0x000d, 0x4ed: 0x000d, 0x4ee: 0x000d, 0x4ef: 0x000d, -+ 0x4f0: 0x000d, 0x4f1: 0x000d, 0x4f2: 0x000d, 0x4f3: 0x000d, 0x4f4: 0x000d, 0x4f5: 0x000d, -+ 0x4f6: 0x000d, 0x4f7: 0x000d, 0x4f8: 0x000d, 0x4f9: 0x000d, 0x4fa: 0x000d, 0x4fb: 0x000d, -+ 0x4fc: 0x000d, 0x4fd: 0x000d, 0x4fe: 0x000d, 0x4ff: 0x000d, -+ // Block 0x14, offset 0x500 -+ 0x500: 0x000d, 0x501: 0x000d, 0x502: 0x000d, 0x503: 0x000d, 0x504: 0x000d, 0x505: 0x000d, -+ 0x506: 0x000d, 0x507: 0x000d, 0x508: 0x000d, 0x509: 0x000d, 0x50a: 0x000d, 0x50b: 0x000d, -+ 0x50c: 0x000d, 0x50d: 0x000d, 0x50e: 0x000d, 0x50f: 0x000d, 0x510: 0x000d, 0x511: 0x000d, -+ 0x512: 0x000d, 0x513: 0x000d, 0x514: 0x000d, 0x515: 0x000d, 0x516: 0x000d, 0x517: 0x000d, -+ 0x518: 0x000d, 0x519: 0x000d, 0x51a: 0x000d, 0x51b: 0x000d, 0x51c: 0x000d, 0x51d: 0x000d, -+ 0x51e: 0x000d, 0x51f: 0x000d, 0x520: 0x000d, 0x521: 0x000d, 0x522: 0x000d, 0x523: 0x000d, -+ 0x524: 0x000d, 0x525: 0x000d, 0x526: 0x000c, 0x527: 0x000c, 0x528: 0x000c, 0x529: 0x000c, -+ 0x52a: 0x000c, 0x52b: 0x000c, 0x52c: 0x000c, 0x52d: 0x000c, 0x52e: 0x000c, 0x52f: 0x000c, -+ 0x530: 0x000c, 0x531: 0x000d, 0x532: 0x000d, 0x533: 0x000d, 0x534: 0x000d, 0x535: 0x000d, -+ 0x536: 0x000d, 0x537: 0x000d, 0x538: 0x000d, 0x539: 0x000d, 0x53a: 0x000d, 0x53b: 0x000d, -+ 0x53c: 0x000d, 0x53d: 0x000d, 0x53e: 0x000d, 0x53f: 0x000d, -+ // Block 0x15, offset 0x540 -+ 0x540: 0x0001, 0x541: 0x0001, 0x542: 0x0001, 0x543: 0x0001, 0x544: 0x0001, 0x545: 0x0001, -+ 0x546: 0x0001, 0x547: 0x0001, 0x548: 0x0001, 0x549: 0x0001, 0x54a: 0x0001, 0x54b: 0x0001, -+ 0x54c: 0x0001, 0x54d: 0x0001, 0x54e: 0x0001, 0x54f: 0x0001, 0x550: 0x0001, 0x551: 0x0001, -+ 0x552: 0x0001, 0x553: 0x0001, 0x554: 0x0001, 0x555: 0x0001, 0x556: 0x0001, 0x557: 0x0001, -+ 0x558: 0x0001, 0x559: 0x0001, 0x55a: 0x0001, 0x55b: 0x0001, 0x55c: 0x0001, 0x55d: 0x0001, -+ 0x55e: 0x0001, 0x55f: 0x0001, 0x560: 0x0001, 0x561: 0x0001, 0x562: 0x0001, 0x563: 0x0001, -+ 0x564: 0x0001, 0x565: 0x0001, 0x566: 0x0001, 0x567: 0x0001, 0x568: 0x0001, 0x569: 0x0001, -+ 0x56a: 0x0001, 0x56b: 0x000c, 0x56c: 0x000c, 0x56d: 0x000c, 0x56e: 0x000c, 0x56f: 0x000c, -+ 0x570: 0x000c, 0x571: 0x000c, 0x572: 0x000c, 0x573: 0x000c, 0x574: 0x0001, 0x575: 0x0001, -+ 0x576: 0x000a, 0x577: 0x000a, 0x578: 0x000a, 0x579: 0x000a, 0x57a: 0x0001, 0x57b: 0x0001, -+ 0x57c: 0x0001, 0x57d: 0x000c, 0x57e: 0x0001, 0x57f: 0x0001, -+ // Block 0x16, offset 0x580 -+ 0x580: 0x0001, 0x581: 0x0001, 0x582: 0x0001, 0x583: 0x0001, 0x584: 0x0001, 0x585: 0x0001, -+ 0x586: 0x0001, 0x587: 0x0001, 0x588: 0x0001, 0x589: 0x0001, 0x58a: 0x0001, 0x58b: 0x0001, -+ 0x58c: 0x0001, 0x58d: 0x0001, 0x58e: 0x0001, 0x58f: 0x0001, 0x590: 0x0001, 0x591: 0x0001, -+ 0x592: 0x0001, 0x593: 0x0001, 0x594: 0x0001, 0x595: 0x0001, 0x596: 0x000c, 0x597: 0x000c, -+ 0x598: 0x000c, 0x599: 0x000c, 0x59a: 0x0001, 0x59b: 0x000c, 0x59c: 0x000c, 0x59d: 0x000c, -+ 0x59e: 0x000c, 0x59f: 0x000c, 0x5a0: 0x000c, 0x5a1: 0x000c, 0x5a2: 0x000c, 0x5a3: 0x000c, -+ 0x5a4: 0x0001, 0x5a5: 0x000c, 0x5a6: 0x000c, 0x5a7: 0x000c, 0x5a8: 0x0001, 0x5a9: 0x000c, -+ 0x5aa: 0x000c, 0x5ab: 0x000c, 0x5ac: 0x000c, 0x5ad: 0x000c, 0x5ae: 0x0001, 0x5af: 0x0001, -+ 0x5b0: 0x0001, 0x5b1: 0x0001, 0x5b2: 0x0001, 0x5b3: 0x0001, 0x5b4: 0x0001, 0x5b5: 0x0001, -+ 0x5b6: 0x0001, 0x5b7: 0x0001, 0x5b8: 0x0001, 0x5b9: 0x0001, 0x5ba: 0x0001, 0x5bb: 0x0001, -+ 0x5bc: 0x0001, 0x5bd: 0x0001, 0x5be: 0x0001, 0x5bf: 0x0001, -+ // Block 0x17, offset 0x5c0 -+ 0x5c0: 0x0001, 0x5c1: 0x0001, 0x5c2: 0x0001, 0x5c3: 0x0001, 0x5c4: 0x0001, 0x5c5: 0x0001, -+ 0x5c6: 0x0001, 0x5c7: 0x0001, 0x5c8: 0x0001, 0x5c9: 0x0001, 0x5ca: 0x0001, 0x5cb: 0x0001, -+ 0x5cc: 0x0001, 0x5cd: 0x0001, 0x5ce: 0x0001, 0x5cf: 0x0001, 0x5d0: 0x0001, 0x5d1: 0x0001, -+ 0x5d2: 0x0001, 0x5d3: 0x0001, 0x5d4: 0x0001, 0x5d5: 0x0001, 0x5d6: 0x0001, 0x5d7: 0x0001, -+ 0x5d8: 0x0001, 0x5d9: 0x000c, 0x5da: 0x000c, 0x5db: 0x000c, 0x5dc: 0x0001, 0x5dd: 0x0001, -+ 0x5de: 0x0001, 0x5df: 0x0001, 0x5e0: 0x000d, 0x5e1: 0x000d, 0x5e2: 0x000d, 0x5e3: 0x000d, -+ 0x5e4: 0x000d, 0x5e5: 0x000d, 0x5e6: 0x000d, 0x5e7: 0x000d, 0x5e8: 0x000d, 0x5e9: 0x000d, -+ 0x5ea: 0x000d, 0x5eb: 0x000d, 0x5ec: 0x000d, 0x5ed: 0x000d, 0x5ee: 0x000d, 0x5ef: 0x000d, -+ 0x5f0: 0x0001, 0x5f1: 0x0001, 0x5f2: 0x0001, 0x5f3: 0x0001, 0x5f4: 0x0001, 0x5f5: 0x0001, -+ 0x5f6: 0x0001, 0x5f7: 0x0001, 0x5f8: 0x0001, 0x5f9: 0x0001, 0x5fa: 0x0001, 0x5fb: 0x0001, -+ 0x5fc: 0x0001, 0x5fd: 0x0001, 0x5fe: 0x0001, 0x5ff: 0x0001, -+ // Block 0x18, offset 0x600 -+ 0x600: 0x0001, 0x601: 0x0001, 0x602: 0x0001, 0x603: 0x0001, 0x604: 0x0001, 0x605: 0x0001, -+ 0x606: 0x0001, 0x607: 0x0001, 0x608: 0x0001, 0x609: 0x0001, 0x60a: 0x0001, 0x60b: 0x0001, -+ 0x60c: 0x0001, 0x60d: 0x0001, 0x60e: 0x0001, 0x60f: 0x0001, 0x610: 0x0001, 0x611: 0x0001, -+ 0x612: 0x0001, 0x613: 0x0001, 0x614: 0x0001, 0x615: 0x0001, 0x616: 0x0001, 0x617: 0x0001, -+ 0x618: 0x0001, 0x619: 0x0001, 0x61a: 0x0001, 0x61b: 0x0001, 0x61c: 0x0001, 0x61d: 0x0001, -+ 0x61e: 0x0001, 0x61f: 0x0001, 0x620: 0x000d, 0x621: 0x000d, 0x622: 0x000d, 0x623: 0x000d, -+ 0x624: 0x000d, 0x625: 0x000d, 0x626: 0x000d, 0x627: 0x000d, 0x628: 0x000d, 0x629: 0x000d, -+ 0x62a: 0x000d, 0x62b: 0x000d, 0x62c: 0x000d, 0x62d: 0x000d, 0x62e: 0x000d, 0x62f: 0x000d, -+ 0x630: 0x000d, 0x631: 0x000d, 0x632: 0x000d, 0x633: 0x000d, 0x634: 0x000d, 0x635: 0x000d, -+ 0x636: 0x000d, 0x637: 0x000d, 0x638: 0x000d, 0x639: 0x000d, 0x63a: 0x000d, 0x63b: 0x000d, -+ 0x63c: 0x000d, 0x63d: 0x000d, 0x63e: 0x000d, 0x63f: 0x000d, -+ // Block 0x19, offset 0x640 -+ 0x640: 0x000d, 0x641: 0x000d, 0x642: 0x000d, 0x643: 0x000d, 0x644: 0x000d, 0x645: 0x000d, -+ 0x646: 0x000d, 0x647: 0x000d, 0x648: 0x000d, 0x649: 0x000d, 0x64a: 0x000d, 0x64b: 0x000d, -+ 0x64c: 0x000d, 0x64d: 0x000d, 0x64e: 0x000d, 0x64f: 0x000d, 0x650: 0x000d, 0x651: 0x000d, -+ 0x652: 0x000d, 0x653: 0x000c, 0x654: 0x000c, 0x655: 0x000c, 0x656: 0x000c, 0x657: 0x000c, -+ 0x658: 0x000c, 0x659: 0x000c, 0x65a: 0x000c, 0x65b: 0x000c, 0x65c: 0x000c, 0x65d: 0x000c, -+ 0x65e: 0x000c, 0x65f: 0x000c, 0x660: 0x000c, 0x661: 0x000c, 0x662: 0x0005, 0x663: 0x000c, -+ 0x664: 0x000c, 0x665: 0x000c, 0x666: 0x000c, 0x667: 0x000c, 0x668: 0x000c, 0x669: 0x000c, -+ 0x66a: 0x000c, 0x66b: 0x000c, 0x66c: 0x000c, 0x66d: 0x000c, 0x66e: 0x000c, 0x66f: 0x000c, -+ 0x670: 0x000c, 0x671: 0x000c, 0x672: 0x000c, 0x673: 0x000c, 0x674: 0x000c, 0x675: 0x000c, -+ 0x676: 0x000c, 0x677: 0x000c, 0x678: 0x000c, 0x679: 0x000c, 0x67a: 0x000c, 0x67b: 0x000c, -+ 0x67c: 0x000c, 0x67d: 0x000c, 0x67e: 0x000c, 0x67f: 0x000c, -+ // Block 0x1a, offset 0x680 -+ 0x680: 0x000c, 0x681: 0x000c, 0x682: 0x000c, -+ 0x6ba: 0x000c, -+ 0x6bc: 0x000c, -+ // Block 0x1b, offset 0x6c0 -+ 0x6c1: 0x000c, 0x6c2: 0x000c, 0x6c3: 0x000c, 0x6c4: 0x000c, 0x6c5: 0x000c, -+ 0x6c6: 0x000c, 0x6c7: 0x000c, 0x6c8: 0x000c, -+ 0x6cd: 0x000c, 0x6d1: 0x000c, -+ 0x6d2: 0x000c, 0x6d3: 0x000c, 0x6d4: 0x000c, 0x6d5: 0x000c, 0x6d6: 0x000c, 0x6d7: 0x000c, -+ 0x6e2: 0x000c, 0x6e3: 0x000c, -+ // Block 0x1c, offset 0x700 -+ 0x701: 0x000c, -+ 0x73c: 0x000c, -+ // Block 0x1d, offset 0x740 -+ 0x741: 0x000c, 0x742: 0x000c, 0x743: 0x000c, 0x744: 0x000c, -+ 0x74d: 0x000c, -+ 0x762: 0x000c, 0x763: 0x000c, -+ 0x772: 0x0004, 0x773: 0x0004, -+ 0x77b: 0x0004, -+ 0x77e: 0x000c, -+ // Block 0x1e, offset 0x780 -+ 0x781: 0x000c, 0x782: 0x000c, -+ 0x7bc: 0x000c, -+ // Block 0x1f, offset 0x7c0 -+ 0x7c1: 0x000c, 0x7c2: 0x000c, -+ 0x7c7: 0x000c, 0x7c8: 0x000c, 0x7cb: 0x000c, -+ 0x7cc: 0x000c, 0x7cd: 0x000c, 0x7d1: 0x000c, -+ 0x7f0: 0x000c, 0x7f1: 0x000c, 0x7f5: 0x000c, -+ // Block 0x20, offset 0x800 -+ 0x801: 0x000c, 0x802: 0x000c, 0x803: 0x000c, 0x804: 0x000c, 0x805: 0x000c, -+ 0x807: 0x000c, 0x808: 0x000c, -+ 0x80d: 0x000c, -+ 0x822: 0x000c, 0x823: 0x000c, -+ 0x831: 0x0004, -+ 0x83a: 0x000c, 0x83b: 0x000c, -+ 0x83c: 0x000c, 0x83d: 0x000c, 0x83e: 0x000c, 0x83f: 0x000c, -+ // Block 0x21, offset 0x840 -+ 0x841: 0x000c, -+ 0x87c: 0x000c, 0x87f: 0x000c, -+ // Block 0x22, offset 0x880 -+ 0x881: 0x000c, 0x882: 0x000c, 0x883: 0x000c, 0x884: 0x000c, -+ 0x88d: 0x000c, -+ 0x895: 0x000c, 0x896: 0x000c, -+ 0x8a2: 0x000c, 0x8a3: 0x000c, -+ // Block 0x23, offset 0x8c0 -+ 0x8c2: 0x000c, -+ // Block 0x24, offset 0x900 -+ 0x900: 0x000c, -+ 0x90d: 0x000c, -+ 0x933: 0x000a, 0x934: 0x000a, 0x935: 0x000a, -+ 0x936: 0x000a, 0x937: 0x000a, 0x938: 0x000a, 0x939: 0x0004, 0x93a: 0x000a, -+ // Block 0x25, offset 0x940 -+ 0x940: 0x000c, 0x944: 0x000c, -+ 0x97e: 0x000c, 0x97f: 0x000c, -+ // Block 0x26, offset 0x980 -+ 0x980: 0x000c, -+ 0x986: 0x000c, 0x987: 0x000c, 0x988: 0x000c, 0x98a: 0x000c, 0x98b: 0x000c, -+ 0x98c: 0x000c, 0x98d: 0x000c, -+ 0x995: 0x000c, 0x996: 0x000c, -+ 0x9a2: 0x000c, 0x9a3: 0x000c, -+ 0x9b8: 0x000a, 0x9b9: 0x000a, 0x9ba: 0x000a, 0x9bb: 0x000a, -+ 0x9bc: 0x000a, 0x9bd: 0x000a, 0x9be: 0x000a, -+ // Block 0x27, offset 0x9c0 -+ 0x9cc: 0x000c, 0x9cd: 0x000c, -+ 0x9e2: 0x000c, 0x9e3: 0x000c, -+ // Block 0x28, offset 0xa00 -+ 0xa00: 0x000c, 0xa01: 0x000c, -+ 0xa3b: 0x000c, -+ 0xa3c: 0x000c, -+ // Block 0x29, offset 0xa40 -+ 0xa41: 0x000c, 0xa42: 0x000c, 0xa43: 0x000c, 0xa44: 0x000c, -+ 0xa4d: 0x000c, -+ 0xa62: 0x000c, 0xa63: 0x000c, -+ // Block 0x2a, offset 0xa80 -+ 0xa81: 0x000c, -+ // Block 0x2b, offset 0xac0 -+ 0xaca: 0x000c, -+ 0xad2: 0x000c, 0xad3: 0x000c, 0xad4: 0x000c, 0xad6: 0x000c, -+ // Block 0x2c, offset 0xb00 -+ 0xb31: 0x000c, 0xb34: 0x000c, 0xb35: 0x000c, -+ 0xb36: 0x000c, 0xb37: 0x000c, 0xb38: 0x000c, 0xb39: 0x000c, 0xb3a: 0x000c, -+ 0xb3f: 0x0004, -+ // Block 0x2d, offset 0xb40 -+ 0xb47: 0x000c, 0xb48: 0x000c, 0xb49: 0x000c, 0xb4a: 0x000c, 0xb4b: 0x000c, -+ 0xb4c: 0x000c, 0xb4d: 0x000c, 0xb4e: 0x000c, -+ // Block 0x2e, offset 0xb80 -+ 0xbb1: 0x000c, 0xbb4: 0x000c, 0xbb5: 0x000c, -+ 0xbb6: 0x000c, 0xbb7: 0x000c, 0xbb8: 0x000c, 0xbb9: 0x000c, 0xbba: 0x000c, 0xbbb: 0x000c, -+ 0xbbc: 0x000c, -+ // Block 0x2f, offset 0xbc0 -+ 0xbc8: 0x000c, 0xbc9: 0x000c, 0xbca: 0x000c, 0xbcb: 0x000c, -+ 0xbcc: 0x000c, 0xbcd: 0x000c, -+ // Block 0x30, offset 0xc00 -+ 0xc18: 0x000c, 0xc19: 0x000c, -+ 0xc35: 0x000c, -+ 0xc37: 0x000c, 0xc39: 0x000c, 0xc3a: 0x003a, 0xc3b: 0x002a, -+ 0xc3c: 0x003a, 0xc3d: 0x002a, -+ // Block 0x31, offset 0xc40 -+ 0xc71: 0x000c, 0xc72: 0x000c, 0xc73: 0x000c, 0xc74: 0x000c, 0xc75: 0x000c, -+ 0xc76: 0x000c, 0xc77: 0x000c, 0xc78: 0x000c, 0xc79: 0x000c, 0xc7a: 0x000c, 0xc7b: 0x000c, -+ 0xc7c: 0x000c, 0xc7d: 0x000c, 0xc7e: 0x000c, -+ // Block 0x32, offset 0xc80 -+ 0xc80: 0x000c, 0xc81: 0x000c, 0xc82: 0x000c, 0xc83: 0x000c, 0xc84: 0x000c, -+ 0xc86: 0x000c, 0xc87: 0x000c, -+ 0xc8d: 0x000c, 0xc8e: 0x000c, 0xc8f: 0x000c, 0xc90: 0x000c, 0xc91: 0x000c, -+ 0xc92: 0x000c, 0xc93: 0x000c, 0xc94: 0x000c, 0xc95: 0x000c, 0xc96: 0x000c, 0xc97: 0x000c, -+ 0xc99: 0x000c, 0xc9a: 0x000c, 0xc9b: 0x000c, 0xc9c: 0x000c, 0xc9d: 0x000c, -+ 0xc9e: 0x000c, 0xc9f: 0x000c, 0xca0: 0x000c, 0xca1: 0x000c, 0xca2: 0x000c, 0xca3: 0x000c, -+ 0xca4: 0x000c, 0xca5: 0x000c, 0xca6: 0x000c, 0xca7: 0x000c, 0xca8: 0x000c, 0xca9: 0x000c, -+ 0xcaa: 0x000c, 0xcab: 0x000c, 0xcac: 0x000c, 0xcad: 0x000c, 0xcae: 0x000c, 0xcaf: 0x000c, -+ 0xcb0: 0x000c, 0xcb1: 0x000c, 0xcb2: 0x000c, 0xcb3: 0x000c, 0xcb4: 0x000c, 0xcb5: 0x000c, -+ 0xcb6: 0x000c, 0xcb7: 0x000c, 0xcb8: 0x000c, 0xcb9: 0x000c, 0xcba: 0x000c, 0xcbb: 0x000c, -+ 0xcbc: 0x000c, -+ // Block 0x33, offset 0xcc0 -+ 0xcc6: 0x000c, -+ // Block 0x34, offset 0xd00 -+ 0xd2d: 0x000c, 0xd2e: 0x000c, 0xd2f: 0x000c, -+ 0xd30: 0x000c, 0xd32: 0x000c, 0xd33: 0x000c, 0xd34: 0x000c, 0xd35: 0x000c, -+ 0xd36: 0x000c, 0xd37: 0x000c, 0xd39: 0x000c, 0xd3a: 0x000c, -+ 0xd3d: 0x000c, 0xd3e: 0x000c, -+ // Block 0x35, offset 0xd40 -+ 0xd58: 0x000c, 0xd59: 0x000c, -+ 0xd5e: 0x000c, 0xd5f: 0x000c, 0xd60: 0x000c, -+ 0xd71: 0x000c, 0xd72: 0x000c, 0xd73: 0x000c, 0xd74: 0x000c, -+ // Block 0x36, offset 0xd80 -+ 0xd82: 0x000c, 0xd85: 0x000c, -+ 0xd86: 0x000c, -+ 0xd8d: 0x000c, -+ 0xd9d: 0x000c, -+ // Block 0x37, offset 0xdc0 -+ 0xddd: 0x000c, -+ 0xdde: 0x000c, 0xddf: 0x000c, -+ // Block 0x38, offset 0xe00 -+ 0xe10: 0x000a, 0xe11: 0x000a, -+ 0xe12: 0x000a, 0xe13: 0x000a, 0xe14: 0x000a, 0xe15: 0x000a, 0xe16: 0x000a, 0xe17: 0x000a, -+ 0xe18: 0x000a, 0xe19: 0x000a, -+ // Block 0x39, offset 0xe40 -+ 0xe40: 0x000a, -+ // Block 0x3a, offset 0xe80 -+ 0xe80: 0x0009, -+ 0xe9b: 0x007a, 0xe9c: 0x006a, -+ // Block 0x3b, offset 0xec0 -+ 0xed2: 0x000c, 0xed3: 0x000c, 0xed4: 0x000c, -+ 0xef2: 0x000c, 0xef3: 0x000c, 0xef4: 0x000c, -+ // Block 0x3c, offset 0xf00 -+ 0xf12: 0x000c, 0xf13: 0x000c, -+ 0xf32: 0x000c, 0xf33: 0x000c, -+ // Block 0x3d, offset 0xf40 -+ 0xf74: 0x000c, 0xf75: 0x000c, -+ 0xf77: 0x000c, 0xf78: 0x000c, 0xf79: 0x000c, 0xf7a: 0x000c, 0xf7b: 0x000c, -+ 0xf7c: 0x000c, 0xf7d: 0x000c, -+ // Block 0x3e, offset 0xf80 -+ 0xf86: 0x000c, 0xf89: 0x000c, 0xf8a: 0x000c, 0xf8b: 0x000c, -+ 0xf8c: 0x000c, 0xf8d: 0x000c, 0xf8e: 0x000c, 0xf8f: 0x000c, 0xf90: 0x000c, 0xf91: 0x000c, -+ 0xf92: 0x000c, 0xf93: 0x000c, -+ 0xf9b: 0x0004, 0xf9d: 0x000c, -+ 0xfb0: 0x000a, 0xfb1: 0x000a, 0xfb2: 0x000a, 0xfb3: 0x000a, 0xfb4: 0x000a, 0xfb5: 0x000a, -+ 0xfb6: 0x000a, 0xfb7: 0x000a, 0xfb8: 0x000a, 0xfb9: 0x000a, -+ // Block 0x3f, offset 0xfc0 -+ 0xfc0: 0x000a, 0xfc1: 0x000a, 0xfc2: 0x000a, 0xfc3: 0x000a, 0xfc4: 0x000a, 0xfc5: 0x000a, -+ 0xfc6: 0x000a, 0xfc7: 0x000a, 0xfc8: 0x000a, 0xfc9: 0x000a, 0xfca: 0x000a, 0xfcb: 0x000c, -+ 0xfcc: 0x000c, 0xfcd: 0x000c, 0xfce: 0x000b, -+ // Block 0x40, offset 0x1000 -+ 0x1005: 0x000c, -+ 0x1006: 0x000c, -+ 0x1029: 0x000c, -+ // Block 0x41, offset 0x1040 -+ 0x1060: 0x000c, 0x1061: 0x000c, 0x1062: 0x000c, -+ 0x1067: 0x000c, 0x1068: 0x000c, -+ 0x1072: 0x000c, -+ 0x1079: 0x000c, 0x107a: 0x000c, 0x107b: 0x000c, -+ // Block 0x42, offset 0x1080 -+ 0x1080: 0x000a, 0x1084: 0x000a, 0x1085: 0x000a, -+ // Block 0x43, offset 0x10c0 -+ 0x10de: 0x000a, 0x10df: 0x000a, 0x10e0: 0x000a, 0x10e1: 0x000a, 0x10e2: 0x000a, 0x10e3: 0x000a, -+ 0x10e4: 0x000a, 0x10e5: 0x000a, 0x10e6: 0x000a, 0x10e7: 0x000a, 0x10e8: 0x000a, 0x10e9: 0x000a, -+ 0x10ea: 0x000a, 0x10eb: 0x000a, 0x10ec: 0x000a, 0x10ed: 0x000a, 0x10ee: 0x000a, 0x10ef: 0x000a, -+ 0x10f0: 0x000a, 0x10f1: 0x000a, 0x10f2: 0x000a, 0x10f3: 0x000a, 0x10f4: 0x000a, 0x10f5: 0x000a, -+ 0x10f6: 0x000a, 0x10f7: 0x000a, 0x10f8: 0x000a, 0x10f9: 0x000a, 0x10fa: 0x000a, 0x10fb: 0x000a, -+ 0x10fc: 0x000a, 0x10fd: 0x000a, 0x10fe: 0x000a, 0x10ff: 0x000a, -+ // Block 0x44, offset 0x1100 -+ 0x1117: 0x000c, -+ 0x1118: 0x000c, 0x111b: 0x000c, -+ // Block 0x45, offset 0x1140 -+ 0x1156: 0x000c, -+ 0x1158: 0x000c, 0x1159: 0x000c, 0x115a: 0x000c, 0x115b: 0x000c, 0x115c: 0x000c, 0x115d: 0x000c, -+ 0x115e: 0x000c, 0x1160: 0x000c, 0x1162: 0x000c, -+ 0x1165: 0x000c, 0x1166: 0x000c, 0x1167: 0x000c, 0x1168: 0x000c, 0x1169: 0x000c, -+ 0x116a: 0x000c, 0x116b: 0x000c, 0x116c: 0x000c, -+ 0x1173: 0x000c, 0x1174: 0x000c, 0x1175: 0x000c, -+ 0x1176: 0x000c, 0x1177: 0x000c, 0x1178: 0x000c, 0x1179: 0x000c, 0x117a: 0x000c, 0x117b: 0x000c, -+ 0x117c: 0x000c, 0x117f: 0x000c, -+ // Block 0x46, offset 0x1180 -+ 0x11b0: 0x000c, 0x11b1: 0x000c, 0x11b2: 0x000c, 0x11b3: 0x000c, 0x11b4: 0x000c, 0x11b5: 0x000c, -+ 0x11b6: 0x000c, 0x11b7: 0x000c, 0x11b8: 0x000c, 0x11b9: 0x000c, 0x11ba: 0x000c, 0x11bb: 0x000c, -+ 0x11bc: 0x000c, 0x11bd: 0x000c, 0x11be: 0x000c, 0x11bf: 0x000c, -+ // Block 0x47, offset 0x11c0 -+ 0x11c0: 0x000c, -+ // Block 0x48, offset 0x1200 -+ 0x1200: 0x000c, 0x1201: 0x000c, 0x1202: 0x000c, 0x1203: 0x000c, -+ 0x1234: 0x000c, -+ 0x1236: 0x000c, 0x1237: 0x000c, 0x1238: 0x000c, 0x1239: 0x000c, 0x123a: 0x000c, -+ 0x123c: 0x000c, -+ // Block 0x49, offset 0x1240 -+ 0x1242: 0x000c, -+ 0x126b: 0x000c, 0x126c: 0x000c, 0x126d: 0x000c, 0x126e: 0x000c, 0x126f: 0x000c, -+ 0x1270: 0x000c, 0x1271: 0x000c, 0x1272: 0x000c, 0x1273: 0x000c, -+ // Block 0x4a, offset 0x1280 -+ 0x1280: 0x000c, 0x1281: 0x000c, -+ 0x12a2: 0x000c, 0x12a3: 0x000c, -+ 0x12a4: 0x000c, 0x12a5: 0x000c, 0x12a8: 0x000c, 0x12a9: 0x000c, -+ 0x12ab: 0x000c, 0x12ac: 0x000c, 0x12ad: 0x000c, -+ // Block 0x4b, offset 0x12c0 -+ 0x12e6: 0x000c, 0x12e8: 0x000c, 0x12e9: 0x000c, -+ 0x12ed: 0x000c, 0x12ef: 0x000c, -+ 0x12f0: 0x000c, 0x12f1: 0x000c, -+ // Block 0x4c, offset 0x1300 -+ 0x132c: 0x000c, 0x132d: 0x000c, 0x132e: 0x000c, 0x132f: 0x000c, -+ 0x1330: 0x000c, 0x1331: 0x000c, 0x1332: 0x000c, 0x1333: 0x000c, -+ 0x1336: 0x000c, 0x1337: 0x000c, -+ // Block 0x4d, offset 0x1340 -+ 0x1350: 0x000c, 0x1351: 0x000c, -+ 0x1352: 0x000c, 0x1354: 0x000c, 0x1355: 0x000c, 0x1356: 0x000c, 0x1357: 0x000c, -+ 0x1358: 0x000c, 0x1359: 0x000c, 0x135a: 0x000c, 0x135b: 0x000c, 0x135c: 0x000c, 0x135d: 0x000c, -+ 0x135e: 0x000c, 0x135f: 0x000c, 0x1360: 0x000c, 0x1362: 0x000c, 0x1363: 0x000c, -+ 0x1364: 0x000c, 0x1365: 0x000c, 0x1366: 0x000c, 0x1367: 0x000c, 0x1368: 0x000c, -+ 0x136d: 0x000c, -+ 0x1374: 0x000c, -+ 0x1378: 0x000c, 0x1379: 0x000c, -+ // Block 0x4e, offset 0x1380 -+ 0x1380: 0x000c, 0x1381: 0x000c, 0x1382: 0x000c, 0x1383: 0x000c, 0x1384: 0x000c, 0x1385: 0x000c, -+ 0x1386: 0x000c, 0x1387: 0x000c, 0x1388: 0x000c, 0x1389: 0x000c, 0x138a: 0x000c, 0x138b: 0x000c, -+ 0x138c: 0x000c, 0x138d: 0x000c, 0x138e: 0x000c, 0x138f: 0x000c, 0x1390: 0x000c, 0x1391: 0x000c, -+ 0x1392: 0x000c, 0x1393: 0x000c, 0x1394: 0x000c, 0x1395: 0x000c, 0x1396: 0x000c, 0x1397: 0x000c, -+ 0x1398: 0x000c, 0x1399: 0x000c, 0x139a: 0x000c, 0x139b: 0x000c, 0x139c: 0x000c, 0x139d: 0x000c, -+ 0x139e: 0x000c, 0x139f: 0x000c, 0x13a0: 0x000c, 0x13a1: 0x000c, 0x13a2: 0x000c, 0x13a3: 0x000c, -+ 0x13a4: 0x000c, 0x13a5: 0x000c, 0x13a6: 0x000c, 0x13a7: 0x000c, 0x13a8: 0x000c, 0x13a9: 0x000c, -+ 0x13aa: 0x000c, 0x13ab: 0x000c, 0x13ac: 0x000c, 0x13ad: 0x000c, 0x13ae: 0x000c, 0x13af: 0x000c, -+ 0x13b0: 0x000c, 0x13b1: 0x000c, 0x13b2: 0x000c, 0x13b3: 0x000c, 0x13b4: 0x000c, 0x13b5: 0x000c, -+ 0x13b6: 0x000c, 0x13b7: 0x000c, 0x13b8: 0x000c, 0x13b9: 0x000c, 0x13bb: 0x000c, -+ 0x13bc: 0x000c, 0x13bd: 0x000c, 0x13be: 0x000c, 0x13bf: 0x000c, -+ // Block 0x4f, offset 0x13c0 -+ 0x13fd: 0x000a, 0x13ff: 0x000a, -+ // Block 0x50, offset 0x1400 -+ 0x1400: 0x000a, 0x1401: 0x000a, -+ 0x140d: 0x000a, 0x140e: 0x000a, 0x140f: 0x000a, -+ 0x141d: 0x000a, -+ 0x141e: 0x000a, 0x141f: 0x000a, -+ 0x142d: 0x000a, 0x142e: 0x000a, 0x142f: 0x000a, -+ 0x143d: 0x000a, 0x143e: 0x000a, -+ // Block 0x51, offset 0x1440 -+ 0x1440: 0x0009, 0x1441: 0x0009, 0x1442: 0x0009, 0x1443: 0x0009, 0x1444: 0x0009, 0x1445: 0x0009, -+ 0x1446: 0x0009, 0x1447: 0x0009, 0x1448: 0x0009, 0x1449: 0x0009, 0x144a: 0x0009, 0x144b: 0x000b, -+ 0x144c: 0x000b, 0x144d: 0x000b, 0x144f: 0x0001, 0x1450: 0x000a, 0x1451: 0x000a, -+ 0x1452: 0x000a, 0x1453: 0x000a, 0x1454: 0x000a, 0x1455: 0x000a, 0x1456: 0x000a, 0x1457: 0x000a, -+ 0x1458: 0x000a, 0x1459: 0x000a, 0x145a: 0x000a, 0x145b: 0x000a, 0x145c: 0x000a, 0x145d: 0x000a, -+ 0x145e: 0x000a, 0x145f: 0x000a, 0x1460: 0x000a, 0x1461: 0x000a, 0x1462: 0x000a, 0x1463: 0x000a, -+ 0x1464: 0x000a, 0x1465: 0x000a, 0x1466: 0x000a, 0x1467: 0x000a, 0x1468: 0x0009, 0x1469: 0x0007, -+ 0x146a: 0x000e, 0x146b: 0x000e, 0x146c: 0x000e, 0x146d: 0x000e, 0x146e: 0x000e, 0x146f: 0x0006, -+ 0x1470: 0x0004, 0x1471: 0x0004, 0x1472: 0x0004, 0x1473: 0x0004, 0x1474: 0x0004, 0x1475: 0x000a, -+ 0x1476: 0x000a, 0x1477: 0x000a, 0x1478: 0x000a, 0x1479: 0x000a, 0x147a: 0x000a, 0x147b: 0x000a, -+ 0x147c: 0x000a, 0x147d: 0x000a, 0x147e: 0x000a, 0x147f: 0x000a, -+ // Block 0x52, offset 0x1480 -+ 0x1480: 0x000a, 0x1481: 0x000a, 0x1482: 0x000a, 0x1483: 0x000a, 0x1484: 0x0006, 0x1485: 0x009a, -+ 0x1486: 0x008a, 0x1487: 0x000a, 0x1488: 0x000a, 0x1489: 0x000a, 0x148a: 0x000a, 0x148b: 0x000a, -+ 0x148c: 0x000a, 0x148d: 0x000a, 0x148e: 0x000a, 0x148f: 0x000a, 0x1490: 0x000a, 0x1491: 0x000a, -+ 0x1492: 0x000a, 0x1493: 0x000a, 0x1494: 0x000a, 0x1495: 0x000a, 0x1496: 0x000a, 0x1497: 0x000a, -+ 0x1498: 0x000a, 0x1499: 0x000a, 0x149a: 0x000a, 0x149b: 0x000a, 0x149c: 0x000a, 0x149d: 0x000a, -+ 0x149e: 0x000a, 0x149f: 0x0009, 0x14a0: 0x000b, 0x14a1: 0x000b, 0x14a2: 0x000b, 0x14a3: 0x000b, -+ 0x14a4: 0x000b, 0x14a5: 0x000b, 0x14a6: 0x000e, 0x14a7: 0x000e, 0x14a8: 0x000e, 0x14a9: 0x000e, -+ 0x14aa: 0x000b, 0x14ab: 0x000b, 0x14ac: 0x000b, 0x14ad: 0x000b, 0x14ae: 0x000b, 0x14af: 0x000b, -+ 0x14b0: 0x0002, 0x14b4: 0x0002, 0x14b5: 0x0002, -+ 0x14b6: 0x0002, 0x14b7: 0x0002, 0x14b8: 0x0002, 0x14b9: 0x0002, 0x14ba: 0x0003, 0x14bb: 0x0003, -+ 0x14bc: 0x000a, 0x14bd: 0x009a, 0x14be: 0x008a, -+ // Block 0x53, offset 0x14c0 -+ 0x14c0: 0x0002, 0x14c1: 0x0002, 0x14c2: 0x0002, 0x14c3: 0x0002, 0x14c4: 0x0002, 0x14c5: 0x0002, -+ 0x14c6: 0x0002, 0x14c7: 0x0002, 0x14c8: 0x0002, 0x14c9: 0x0002, 0x14ca: 0x0003, 0x14cb: 0x0003, -+ 0x14cc: 0x000a, 0x14cd: 0x009a, 0x14ce: 0x008a, -+ 0x14e0: 0x0004, 0x14e1: 0x0004, 0x14e2: 0x0004, 0x14e3: 0x0004, -+ 0x14e4: 0x0004, 0x14e5: 0x0004, 0x14e6: 0x0004, 0x14e7: 0x0004, 0x14e8: 0x0004, 0x14e9: 0x0004, -+ 0x14ea: 0x0004, 0x14eb: 0x0004, 0x14ec: 0x0004, 0x14ed: 0x0004, 0x14ee: 0x0004, 0x14ef: 0x0004, -+ 0x14f0: 0x0004, 0x14f1: 0x0004, 0x14f2: 0x0004, 0x14f3: 0x0004, 0x14f4: 0x0004, 0x14f5: 0x0004, -+ 0x14f6: 0x0004, 0x14f7: 0x0004, 0x14f8: 0x0004, 0x14f9: 0x0004, 0x14fa: 0x0004, 0x14fb: 0x0004, -+ 0x14fc: 0x0004, 0x14fd: 0x0004, 0x14fe: 0x0004, 0x14ff: 0x0004, -+ // Block 0x54, offset 0x1500 -+ 0x1500: 0x0004, 0x1501: 0x0004, 0x1502: 0x0004, 0x1503: 0x0004, 0x1504: 0x0004, 0x1505: 0x0004, -+ 0x1506: 0x0004, 0x1507: 0x0004, 0x1508: 0x0004, 0x1509: 0x0004, 0x150a: 0x0004, 0x150b: 0x0004, -+ 0x150c: 0x0004, 0x150d: 0x0004, 0x150e: 0x0004, 0x150f: 0x0004, 0x1510: 0x000c, 0x1511: 0x000c, -+ 0x1512: 0x000c, 0x1513: 0x000c, 0x1514: 0x000c, 0x1515: 0x000c, 0x1516: 0x000c, 0x1517: 0x000c, -+ 0x1518: 0x000c, 0x1519: 0x000c, 0x151a: 0x000c, 0x151b: 0x000c, 0x151c: 0x000c, 0x151d: 0x000c, -+ 0x151e: 0x000c, 0x151f: 0x000c, 0x1520: 0x000c, 0x1521: 0x000c, 0x1522: 0x000c, 0x1523: 0x000c, -+ 0x1524: 0x000c, 0x1525: 0x000c, 0x1526: 0x000c, 0x1527: 0x000c, 0x1528: 0x000c, 0x1529: 0x000c, -+ 0x152a: 0x000c, 0x152b: 0x000c, 0x152c: 0x000c, 0x152d: 0x000c, 0x152e: 0x000c, 0x152f: 0x000c, -+ 0x1530: 0x000c, -+ // Block 0x55, offset 0x1540 -+ 0x1540: 0x000a, 0x1541: 0x000a, 0x1543: 0x000a, 0x1544: 0x000a, 0x1545: 0x000a, -+ 0x1546: 0x000a, 0x1548: 0x000a, 0x1549: 0x000a, -+ 0x1554: 0x000a, 0x1556: 0x000a, 0x1557: 0x000a, -+ 0x1558: 0x000a, -+ 0x155e: 0x000a, 0x155f: 0x000a, 0x1560: 0x000a, 0x1561: 0x000a, 0x1562: 0x000a, 0x1563: 0x000a, -+ 0x1565: 0x000a, 0x1567: 0x000a, 0x1569: 0x000a, -+ 0x156e: 0x0004, -+ 0x157a: 0x000a, 0x157b: 0x000a, -+ // Block 0x56, offset 0x1580 -+ 0x1580: 0x000a, 0x1581: 0x000a, 0x1582: 0x000a, 0x1583: 0x000a, 0x1584: 0x000a, -+ 0x158a: 0x000a, 0x158b: 0x000a, -+ 0x158c: 0x000a, 0x158d: 0x000a, 0x1590: 0x000a, 0x1591: 0x000a, -+ 0x1592: 0x000a, 0x1593: 0x000a, 0x1594: 0x000a, 0x1595: 0x000a, 0x1596: 0x000a, 0x1597: 0x000a, -+ 0x1598: 0x000a, 0x1599: 0x000a, 0x159a: 0x000a, 0x159b: 0x000a, 0x159c: 0x000a, 0x159d: 0x000a, -+ 0x159e: 0x000a, 0x159f: 0x000a, -+ // Block 0x57, offset 0x15c0 -+ 0x15c9: 0x000a, 0x15ca: 0x000a, 0x15cb: 0x000a, -+ 0x15d0: 0x000a, 0x15d1: 0x000a, -+ 0x15d2: 0x000a, 0x15d3: 0x000a, 0x15d4: 0x000a, 0x15d5: 0x000a, 0x15d6: 0x000a, 0x15d7: 0x000a, -+ 0x15d8: 0x000a, 0x15d9: 0x000a, 0x15da: 0x000a, 0x15db: 0x000a, 0x15dc: 0x000a, 0x15dd: 0x000a, -+ 0x15de: 0x000a, 0x15df: 0x000a, 0x15e0: 0x000a, 0x15e1: 0x000a, 0x15e2: 0x000a, 0x15e3: 0x000a, -+ 0x15e4: 0x000a, 0x15e5: 0x000a, 0x15e6: 0x000a, 0x15e7: 0x000a, 0x15e8: 0x000a, 0x15e9: 0x000a, -+ 0x15ea: 0x000a, 0x15eb: 0x000a, 0x15ec: 0x000a, 0x15ed: 0x000a, 0x15ee: 0x000a, 0x15ef: 0x000a, -+ 0x15f0: 0x000a, 0x15f1: 0x000a, 0x15f2: 0x000a, 0x15f3: 0x000a, 0x15f4: 0x000a, 0x15f5: 0x000a, -+ 0x15f6: 0x000a, 0x15f7: 0x000a, 0x15f8: 0x000a, 0x15f9: 0x000a, 0x15fa: 0x000a, 0x15fb: 0x000a, -+ 0x15fc: 0x000a, 0x15fd: 0x000a, 0x15fe: 0x000a, 0x15ff: 0x000a, -+ // Block 0x58, offset 0x1600 -+ 0x1600: 0x000a, 0x1601: 0x000a, 0x1602: 0x000a, 0x1603: 0x000a, 0x1604: 0x000a, 0x1605: 0x000a, -+ 0x1606: 0x000a, 0x1607: 0x000a, 0x1608: 0x000a, 0x1609: 0x000a, 0x160a: 0x000a, 0x160b: 0x000a, -+ 0x160c: 0x000a, 0x160d: 0x000a, 0x160e: 0x000a, 0x160f: 0x000a, 0x1610: 0x000a, 0x1611: 0x000a, -+ 0x1612: 0x000a, 0x1613: 0x000a, 0x1614: 0x000a, 0x1615: 0x000a, 0x1616: 0x000a, 0x1617: 0x000a, -+ 0x1618: 0x000a, 0x1619: 0x000a, 0x161a: 0x000a, 0x161b: 0x000a, 0x161c: 0x000a, 0x161d: 0x000a, -+ 0x161e: 0x000a, 0x161f: 0x000a, 0x1620: 0x000a, 0x1621: 0x000a, 0x1622: 0x000a, 0x1623: 0x000a, -+ 0x1624: 0x000a, 0x1625: 0x000a, 0x1626: 0x000a, 0x1627: 0x000a, 0x1628: 0x000a, 0x1629: 0x000a, -+ 0x162a: 0x000a, 0x162b: 0x000a, 0x162c: 0x000a, 0x162d: 0x000a, 0x162e: 0x000a, 0x162f: 0x000a, -+ 0x1630: 0x000a, 0x1631: 0x000a, 0x1632: 0x000a, 0x1633: 0x000a, 0x1634: 0x000a, 0x1635: 0x000a, -+ 0x1636: 0x000a, 0x1637: 0x000a, 0x1638: 0x000a, 0x1639: 0x000a, 0x163a: 0x000a, 0x163b: 0x000a, -+ 0x163c: 0x000a, 0x163d: 0x000a, 0x163e: 0x000a, 0x163f: 0x000a, -+ // Block 0x59, offset 0x1640 -+ 0x1640: 0x000a, 0x1641: 0x000a, 0x1642: 0x000a, 0x1643: 0x000a, 0x1644: 0x000a, 0x1645: 0x000a, -+ 0x1646: 0x000a, 0x1647: 0x000a, 0x1648: 0x000a, 0x1649: 0x000a, 0x164a: 0x000a, 0x164b: 0x000a, -+ 0x164c: 0x000a, 0x164d: 0x000a, 0x164e: 0x000a, 0x164f: 0x000a, 0x1650: 0x000a, 0x1651: 0x000a, -+ 0x1652: 0x0003, 0x1653: 0x0004, 0x1654: 0x000a, 0x1655: 0x000a, 0x1656: 0x000a, 0x1657: 0x000a, -+ 0x1658: 0x000a, 0x1659: 0x000a, 0x165a: 0x000a, 0x165b: 0x000a, 0x165c: 0x000a, 0x165d: 0x000a, -+ 0x165e: 0x000a, 0x165f: 0x000a, 0x1660: 0x000a, 0x1661: 0x000a, 0x1662: 0x000a, 0x1663: 0x000a, -+ 0x1664: 0x000a, 0x1665: 0x000a, 0x1666: 0x000a, 0x1667: 0x000a, 0x1668: 0x000a, 0x1669: 0x000a, -+ 0x166a: 0x000a, 0x166b: 0x000a, 0x166c: 0x000a, 0x166d: 0x000a, 0x166e: 0x000a, 0x166f: 0x000a, -+ 0x1670: 0x000a, 0x1671: 0x000a, 0x1672: 0x000a, 0x1673: 0x000a, 0x1674: 0x000a, 0x1675: 0x000a, -+ 0x1676: 0x000a, 0x1677: 0x000a, 0x1678: 0x000a, 0x1679: 0x000a, 0x167a: 0x000a, 0x167b: 0x000a, -+ 0x167c: 0x000a, 0x167d: 0x000a, 0x167e: 0x000a, 0x167f: 0x000a, -+ // Block 0x5a, offset 0x1680 -+ 0x1680: 0x000a, 0x1681: 0x000a, 0x1682: 0x000a, 0x1683: 0x000a, 0x1684: 0x000a, 0x1685: 0x000a, -+ 0x1686: 0x000a, 0x1687: 0x000a, 0x1688: 0x003a, 0x1689: 0x002a, 0x168a: 0x003a, 0x168b: 0x002a, -+ 0x168c: 0x000a, 0x168d: 0x000a, 0x168e: 0x000a, 0x168f: 0x000a, 0x1690: 0x000a, 0x1691: 0x000a, -+ 0x1692: 0x000a, 0x1693: 0x000a, 0x1694: 0x000a, 0x1695: 0x000a, 0x1696: 0x000a, 0x1697: 0x000a, -+ 0x1698: 0x000a, 0x1699: 0x000a, 0x169a: 0x000a, 0x169b: 0x000a, 0x169c: 0x000a, 0x169d: 0x000a, -+ 0x169e: 0x000a, 0x169f: 0x000a, 0x16a0: 0x000a, 0x16a1: 0x000a, 0x16a2: 0x000a, 0x16a3: 0x000a, -+ 0x16a4: 0x000a, 0x16a5: 0x000a, 0x16a6: 0x000a, 0x16a7: 0x000a, 0x16a8: 0x000a, 0x16a9: 0x009a, -+ 0x16aa: 0x008a, 0x16ab: 0x000a, 0x16ac: 0x000a, 0x16ad: 0x000a, 0x16ae: 0x000a, 0x16af: 0x000a, -+ 0x16b0: 0x000a, 0x16b1: 0x000a, 0x16b2: 0x000a, 0x16b3: 0x000a, 0x16b4: 0x000a, 0x16b5: 0x000a, -+ // Block 0x5b, offset 0x16c0 -+ 0x16fb: 0x000a, -+ 0x16fc: 0x000a, 0x16fd: 0x000a, 0x16fe: 0x000a, 0x16ff: 0x000a, -+ // Block 0x5c, offset 0x1700 -+ 0x1700: 0x000a, 0x1701: 0x000a, 0x1702: 0x000a, 0x1703: 0x000a, 0x1704: 0x000a, 0x1705: 0x000a, -+ 0x1706: 0x000a, 0x1707: 0x000a, 0x1708: 0x000a, 0x1709: 0x000a, 0x170a: 0x000a, 0x170b: 0x000a, -+ 0x170c: 0x000a, 0x170d: 0x000a, 0x170e: 0x000a, 0x170f: 0x000a, 0x1710: 0x000a, 0x1711: 0x000a, -+ 0x1712: 0x000a, 0x1713: 0x000a, 0x1714: 0x000a, 0x1716: 0x000a, 0x1717: 0x000a, -+ 0x1718: 0x000a, 0x1719: 0x000a, 0x171a: 0x000a, 0x171b: 0x000a, 0x171c: 0x000a, 0x171d: 0x000a, -+ 0x171e: 0x000a, 0x171f: 0x000a, 0x1720: 0x000a, 0x1721: 0x000a, 0x1722: 0x000a, 0x1723: 0x000a, -+ 0x1724: 0x000a, 0x1725: 0x000a, 0x1726: 0x000a, 0x1727: 0x000a, 0x1728: 0x000a, 0x1729: 0x000a, -+ 0x172a: 0x000a, 0x172b: 0x000a, 0x172c: 0x000a, 0x172d: 0x000a, 0x172e: 0x000a, 0x172f: 0x000a, -+ 0x1730: 0x000a, 0x1731: 0x000a, 0x1732: 0x000a, 0x1733: 0x000a, 0x1734: 0x000a, 0x1735: 0x000a, -+ 0x1736: 0x000a, 0x1737: 0x000a, 0x1738: 0x000a, 0x1739: 0x000a, 0x173a: 0x000a, 0x173b: 0x000a, -+ 0x173c: 0x000a, 0x173d: 0x000a, 0x173e: 0x000a, 0x173f: 0x000a, -+ // Block 0x5d, offset 0x1740 -+ 0x1740: 0x000a, 0x1741: 0x000a, 0x1742: 0x000a, 0x1743: 0x000a, 0x1744: 0x000a, 0x1745: 0x000a, -+ 0x1746: 0x000a, 0x1747: 0x000a, 0x1748: 0x000a, 0x1749: 0x000a, 0x174a: 0x000a, 0x174b: 0x000a, -+ 0x174c: 0x000a, 0x174d: 0x000a, 0x174e: 0x000a, 0x174f: 0x000a, 0x1750: 0x000a, 0x1751: 0x000a, -+ 0x1752: 0x000a, 0x1753: 0x000a, 0x1754: 0x000a, 0x1755: 0x000a, 0x1756: 0x000a, 0x1757: 0x000a, -+ 0x1758: 0x000a, 0x1759: 0x000a, 0x175a: 0x000a, 0x175b: 0x000a, 0x175c: 0x000a, 0x175d: 0x000a, -+ 0x175e: 0x000a, 0x175f: 0x000a, 0x1760: 0x000a, 0x1761: 0x000a, 0x1762: 0x000a, 0x1763: 0x000a, -+ 0x1764: 0x000a, 0x1765: 0x000a, 0x1766: 0x000a, -+ // Block 0x5e, offset 0x1780 -+ 0x1780: 0x000a, 0x1781: 0x000a, 0x1782: 0x000a, 0x1783: 0x000a, 0x1784: 0x000a, 0x1785: 0x000a, -+ 0x1786: 0x000a, 0x1787: 0x000a, 0x1788: 0x000a, 0x1789: 0x000a, 0x178a: 0x000a, -+ 0x17a0: 0x000a, 0x17a1: 0x000a, 0x17a2: 0x000a, 0x17a3: 0x000a, -+ 0x17a4: 0x000a, 0x17a5: 0x000a, 0x17a6: 0x000a, 0x17a7: 0x000a, 0x17a8: 0x000a, 0x17a9: 0x000a, -+ 0x17aa: 0x000a, 0x17ab: 0x000a, 0x17ac: 0x000a, 0x17ad: 0x000a, 0x17ae: 0x000a, 0x17af: 0x000a, -+ 0x17b0: 0x000a, 0x17b1: 0x000a, 0x17b2: 0x000a, 0x17b3: 0x000a, 0x17b4: 0x000a, 0x17b5: 0x000a, -+ 0x17b6: 0x000a, 0x17b7: 0x000a, 0x17b8: 0x000a, 0x17b9: 0x000a, 0x17ba: 0x000a, 0x17bb: 0x000a, -+ 0x17bc: 0x000a, 0x17bd: 0x000a, 0x17be: 0x000a, 0x17bf: 0x000a, -+ // Block 0x5f, offset 0x17c0 -+ 0x17c0: 0x000a, 0x17c1: 0x000a, 0x17c2: 0x000a, 0x17c3: 0x000a, 0x17c4: 0x000a, 0x17c5: 0x000a, -+ 0x17c6: 0x000a, 0x17c7: 0x000a, 0x17c8: 0x0002, 0x17c9: 0x0002, 0x17ca: 0x0002, 0x17cb: 0x0002, -+ 0x17cc: 0x0002, 0x17cd: 0x0002, 0x17ce: 0x0002, 0x17cf: 0x0002, 0x17d0: 0x0002, 0x17d1: 0x0002, -+ 0x17d2: 0x0002, 0x17d3: 0x0002, 0x17d4: 0x0002, 0x17d5: 0x0002, 0x17d6: 0x0002, 0x17d7: 0x0002, -+ 0x17d8: 0x0002, 0x17d9: 0x0002, 0x17da: 0x0002, 0x17db: 0x0002, -+ // Block 0x60, offset 0x1800 -+ 0x182a: 0x000a, 0x182b: 0x000a, 0x182c: 0x000a, 0x182d: 0x000a, 0x182e: 0x000a, 0x182f: 0x000a, -+ 0x1830: 0x000a, 0x1831: 0x000a, 0x1832: 0x000a, 0x1833: 0x000a, 0x1834: 0x000a, 0x1835: 0x000a, -+ 0x1836: 0x000a, 0x1837: 0x000a, 0x1838: 0x000a, 0x1839: 0x000a, 0x183a: 0x000a, 0x183b: 0x000a, -+ 0x183c: 0x000a, 0x183d: 0x000a, 0x183e: 0x000a, 0x183f: 0x000a, -+ // Block 0x61, offset 0x1840 -+ 0x1840: 0x000a, 0x1841: 0x000a, 0x1842: 0x000a, 0x1843: 0x000a, 0x1844: 0x000a, 0x1845: 0x000a, -+ 0x1846: 0x000a, 0x1847: 0x000a, 0x1848: 0x000a, 0x1849: 0x000a, 0x184a: 0x000a, 0x184b: 0x000a, -+ 0x184c: 0x000a, 0x184d: 0x000a, 0x184e: 0x000a, 0x184f: 0x000a, 0x1850: 0x000a, 0x1851: 0x000a, -+ 0x1852: 0x000a, 0x1853: 0x000a, 0x1854: 0x000a, 0x1855: 0x000a, 0x1856: 0x000a, 0x1857: 0x000a, -+ 0x1858: 0x000a, 0x1859: 0x000a, 0x185a: 0x000a, 0x185b: 0x000a, 0x185c: 0x000a, 0x185d: 0x000a, -+ 0x185e: 0x000a, 0x185f: 0x000a, 0x1860: 0x000a, 0x1861: 0x000a, 0x1862: 0x000a, 0x1863: 0x000a, -+ 0x1864: 0x000a, 0x1865: 0x000a, 0x1866: 0x000a, 0x1867: 0x000a, 0x1868: 0x000a, 0x1869: 0x000a, -+ 0x186a: 0x000a, 0x186b: 0x000a, 0x186d: 0x000a, 0x186e: 0x000a, 0x186f: 0x000a, -+ 0x1870: 0x000a, 0x1871: 0x000a, 0x1872: 0x000a, 0x1873: 0x000a, 0x1874: 0x000a, 0x1875: 0x000a, -+ 0x1876: 0x000a, 0x1877: 0x000a, 0x1878: 0x000a, 0x1879: 0x000a, 0x187a: 0x000a, 0x187b: 0x000a, -+ 0x187c: 0x000a, 0x187d: 0x000a, 0x187e: 0x000a, 0x187f: 0x000a, -+ // Block 0x62, offset 0x1880 -+ 0x1880: 0x000a, 0x1881: 0x000a, 0x1882: 0x000a, 0x1883: 0x000a, 0x1884: 0x000a, 0x1885: 0x000a, -+ 0x1886: 0x000a, 0x1887: 0x000a, 0x1888: 0x000a, 0x1889: 0x000a, 0x188a: 0x000a, 0x188b: 0x000a, -+ 0x188c: 0x000a, 0x188d: 0x000a, 0x188e: 0x000a, 0x188f: 0x000a, 0x1890: 0x000a, 0x1891: 0x000a, -+ 0x1892: 0x000a, 0x1893: 0x000a, 0x1894: 0x000a, 0x1895: 0x000a, 0x1896: 0x000a, 0x1897: 0x000a, -+ 0x1898: 0x000a, 0x1899: 0x000a, 0x189a: 0x000a, 0x189b: 0x000a, 0x189c: 0x000a, 0x189d: 0x000a, -+ 0x189e: 0x000a, 0x189f: 0x000a, 0x18a0: 0x000a, 0x18a1: 0x000a, 0x18a2: 0x000a, 0x18a3: 0x000a, -+ 0x18a4: 0x000a, 0x18a5: 0x000a, 0x18a6: 0x000a, 0x18a7: 0x000a, 0x18a8: 0x003a, 0x18a9: 0x002a, -+ 0x18aa: 0x003a, 0x18ab: 0x002a, 0x18ac: 0x003a, 0x18ad: 0x002a, 0x18ae: 0x003a, 0x18af: 0x002a, -+ 0x18b0: 0x003a, 0x18b1: 0x002a, 0x18b2: 0x003a, 0x18b3: 0x002a, 0x18b4: 0x003a, 0x18b5: 0x002a, -+ 0x18b6: 0x000a, 0x18b7: 0x000a, 0x18b8: 0x000a, 0x18b9: 0x000a, 0x18ba: 0x000a, 0x18bb: 0x000a, -+ 0x18bc: 0x000a, 0x18bd: 0x000a, 0x18be: 0x000a, 0x18bf: 0x000a, -+ // Block 0x63, offset 0x18c0 -+ 0x18c0: 0x000a, 0x18c1: 0x000a, 0x18c2: 0x000a, 0x18c3: 0x000a, 0x18c4: 0x000a, 0x18c5: 0x009a, -+ 0x18c6: 0x008a, 0x18c7: 0x000a, 0x18c8: 0x000a, 0x18c9: 0x000a, 0x18ca: 0x000a, 0x18cb: 0x000a, -+ 0x18cc: 0x000a, 0x18cd: 0x000a, 0x18ce: 0x000a, 0x18cf: 0x000a, 0x18d0: 0x000a, 0x18d1: 0x000a, -+ 0x18d2: 0x000a, 0x18d3: 0x000a, 0x18d4: 0x000a, 0x18d5: 0x000a, 0x18d6: 0x000a, 0x18d7: 0x000a, -+ 0x18d8: 0x000a, 0x18d9: 0x000a, 0x18da: 0x000a, 0x18db: 0x000a, 0x18dc: 0x000a, 0x18dd: 0x000a, -+ 0x18de: 0x000a, 0x18df: 0x000a, 0x18e0: 0x000a, 0x18e1: 0x000a, 0x18e2: 0x000a, 0x18e3: 0x000a, -+ 0x18e4: 0x000a, 0x18e5: 0x000a, 0x18e6: 0x003a, 0x18e7: 0x002a, 0x18e8: 0x003a, 0x18e9: 0x002a, -+ 0x18ea: 0x003a, 0x18eb: 0x002a, 0x18ec: 0x003a, 0x18ed: 0x002a, 0x18ee: 0x003a, 0x18ef: 0x002a, -+ 0x18f0: 0x000a, 0x18f1: 0x000a, 0x18f2: 0x000a, 0x18f3: 0x000a, 0x18f4: 0x000a, 0x18f5: 0x000a, -+ 0x18f6: 0x000a, 0x18f7: 0x000a, 0x18f8: 0x000a, 0x18f9: 0x000a, 0x18fa: 0x000a, 0x18fb: 0x000a, -+ 0x18fc: 0x000a, 0x18fd: 0x000a, 0x18fe: 0x000a, 0x18ff: 0x000a, -+ // Block 0x64, offset 0x1900 -+ 0x1900: 0x000a, 0x1901: 0x000a, 0x1902: 0x000a, 0x1903: 0x007a, 0x1904: 0x006a, 0x1905: 0x009a, -+ 0x1906: 0x008a, 0x1907: 0x00ba, 0x1908: 0x00aa, 0x1909: 0x009a, 0x190a: 0x008a, 0x190b: 0x007a, -+ 0x190c: 0x006a, 0x190d: 0x00da, 0x190e: 0x002a, 0x190f: 0x003a, 0x1910: 0x00ca, 0x1911: 0x009a, -+ 0x1912: 0x008a, 0x1913: 0x007a, 0x1914: 0x006a, 0x1915: 0x009a, 0x1916: 0x008a, 0x1917: 0x00ba, -+ 0x1918: 0x00aa, 0x1919: 0x000a, 0x191a: 0x000a, 0x191b: 0x000a, 0x191c: 0x000a, 0x191d: 0x000a, -+ 0x191e: 0x000a, 0x191f: 0x000a, 0x1920: 0x000a, 0x1921: 0x000a, 0x1922: 0x000a, 0x1923: 0x000a, -+ 0x1924: 0x000a, 0x1925: 0x000a, 0x1926: 0x000a, 0x1927: 0x000a, 0x1928: 0x000a, 0x1929: 0x000a, -+ 0x192a: 0x000a, 0x192b: 0x000a, 0x192c: 0x000a, 0x192d: 0x000a, 0x192e: 0x000a, 0x192f: 0x000a, -+ 0x1930: 0x000a, 0x1931: 0x000a, 0x1932: 0x000a, 0x1933: 0x000a, 0x1934: 0x000a, 0x1935: 0x000a, -+ 0x1936: 0x000a, 0x1937: 0x000a, 0x1938: 0x000a, 0x1939: 0x000a, 0x193a: 0x000a, 0x193b: 0x000a, -+ 0x193c: 0x000a, 0x193d: 0x000a, 0x193e: 0x000a, 0x193f: 0x000a, -+ // Block 0x65, offset 0x1940 -+ 0x1940: 0x000a, 0x1941: 0x000a, 0x1942: 0x000a, 0x1943: 0x000a, 0x1944: 0x000a, 0x1945: 0x000a, -+ 0x1946: 0x000a, 0x1947: 0x000a, 0x1948: 0x000a, 0x1949: 0x000a, 0x194a: 0x000a, 0x194b: 0x000a, -+ 0x194c: 0x000a, 0x194d: 0x000a, 0x194e: 0x000a, 0x194f: 0x000a, 0x1950: 0x000a, 0x1951: 0x000a, -+ 0x1952: 0x000a, 0x1953: 0x000a, 0x1954: 0x000a, 0x1955: 0x000a, 0x1956: 0x000a, 0x1957: 0x000a, -+ 0x1958: 0x003a, 0x1959: 0x002a, 0x195a: 0x003a, 0x195b: 0x002a, 0x195c: 0x000a, 0x195d: 0x000a, -+ 0x195e: 0x000a, 0x195f: 0x000a, 0x1960: 0x000a, 0x1961: 0x000a, 0x1962: 0x000a, 0x1963: 0x000a, -+ 0x1964: 0x000a, 0x1965: 0x000a, 0x1966: 0x000a, 0x1967: 0x000a, 0x1968: 0x000a, 0x1969: 0x000a, -+ 0x196a: 0x000a, 0x196b: 0x000a, 0x196c: 0x000a, 0x196d: 0x000a, 0x196e: 0x000a, 0x196f: 0x000a, -+ 0x1970: 0x000a, 0x1971: 0x000a, 0x1972: 0x000a, 0x1973: 0x000a, 0x1974: 0x000a, 0x1975: 0x000a, -+ 0x1976: 0x000a, 0x1977: 0x000a, 0x1978: 0x000a, 0x1979: 0x000a, 0x197a: 0x000a, 0x197b: 0x000a, -+ 0x197c: 0x003a, 0x197d: 0x002a, 0x197e: 0x000a, 0x197f: 0x000a, -+ // Block 0x66, offset 0x1980 -+ 0x1980: 0x000a, 0x1981: 0x000a, 0x1982: 0x000a, 0x1983: 0x000a, 0x1984: 0x000a, 0x1985: 0x000a, -+ 0x1986: 0x000a, 0x1987: 0x000a, 0x1988: 0x000a, 0x1989: 0x000a, 0x198a: 0x000a, 0x198b: 0x000a, -+ 0x198c: 0x000a, 0x198d: 0x000a, 0x198e: 0x000a, 0x198f: 0x000a, 0x1990: 0x000a, 0x1991: 0x000a, -+ 0x1992: 0x000a, 0x1993: 0x000a, 0x1994: 0x000a, 0x1995: 0x000a, 0x1996: 0x000a, 0x1997: 0x000a, -+ 0x1998: 0x000a, 0x1999: 0x000a, 0x199a: 0x000a, 0x199b: 0x000a, 0x199c: 0x000a, 0x199d: 0x000a, -+ 0x199e: 0x000a, 0x199f: 0x000a, 0x19a0: 0x000a, 0x19a1: 0x000a, 0x19a2: 0x000a, 0x19a3: 0x000a, -+ 0x19a4: 0x000a, 0x19a5: 0x000a, 0x19a6: 0x000a, 0x19a7: 0x000a, 0x19a8: 0x000a, 0x19a9: 0x000a, -+ 0x19aa: 0x000a, 0x19ab: 0x000a, 0x19ac: 0x000a, 0x19ad: 0x000a, 0x19ae: 0x000a, 0x19af: 0x000a, -+ 0x19b0: 0x000a, 0x19b1: 0x000a, 0x19b2: 0x000a, 0x19b3: 0x000a, -+ 0x19b6: 0x000a, 0x19b7: 0x000a, 0x19b8: 0x000a, 0x19b9: 0x000a, 0x19ba: 0x000a, 0x19bb: 0x000a, -+ 0x19bc: 0x000a, 0x19bd: 0x000a, 0x19be: 0x000a, 0x19bf: 0x000a, -+ // Block 0x67, offset 0x19c0 -+ 0x19c0: 0x000a, 0x19c1: 0x000a, 0x19c2: 0x000a, 0x19c3: 0x000a, 0x19c4: 0x000a, 0x19c5: 0x000a, -+ 0x19c6: 0x000a, 0x19c7: 0x000a, 0x19c8: 0x000a, 0x19c9: 0x000a, 0x19ca: 0x000a, 0x19cb: 0x000a, -+ 0x19cc: 0x000a, 0x19cd: 0x000a, 0x19ce: 0x000a, 0x19cf: 0x000a, 0x19d0: 0x000a, 0x19d1: 0x000a, -+ 0x19d2: 0x000a, 0x19d3: 0x000a, 0x19d4: 0x000a, 0x19d5: 0x000a, 0x19d7: 0x000a, -+ 0x19d8: 0x000a, 0x19d9: 0x000a, 0x19da: 0x000a, 0x19db: 0x000a, 0x19dc: 0x000a, 0x19dd: 0x000a, -+ 0x19de: 0x000a, 0x19df: 0x000a, 0x19e0: 0x000a, 0x19e1: 0x000a, 0x19e2: 0x000a, 0x19e3: 0x000a, -+ 0x19e4: 0x000a, 0x19e5: 0x000a, 0x19e6: 0x000a, 0x19e7: 0x000a, 0x19e8: 0x000a, 0x19e9: 0x000a, -+ 0x19ea: 0x000a, 0x19eb: 0x000a, 0x19ec: 0x000a, 0x19ed: 0x000a, 0x19ee: 0x000a, 0x19ef: 0x000a, -+ 0x19f0: 0x000a, 0x19f1: 0x000a, 0x19f2: 0x000a, 0x19f3: 0x000a, 0x19f4: 0x000a, 0x19f5: 0x000a, -+ 0x19f6: 0x000a, 0x19f7: 0x000a, 0x19f8: 0x000a, 0x19f9: 0x000a, 0x19fa: 0x000a, 0x19fb: 0x000a, -+ 0x19fc: 0x000a, 0x19fd: 0x000a, 0x19fe: 0x000a, 0x19ff: 0x000a, -+ // Block 0x68, offset 0x1a00 -+ 0x1a25: 0x000a, 0x1a26: 0x000a, 0x1a27: 0x000a, 0x1a28: 0x000a, 0x1a29: 0x000a, -+ 0x1a2a: 0x000a, 0x1a2f: 0x000c, -+ 0x1a30: 0x000c, 0x1a31: 0x000c, -+ 0x1a39: 0x000a, 0x1a3a: 0x000a, 0x1a3b: 0x000a, -+ 0x1a3c: 0x000a, 0x1a3d: 0x000a, 0x1a3e: 0x000a, 0x1a3f: 0x000a, -+ // Block 0x69, offset 0x1a40 -+ 0x1a7f: 0x000c, -+ // Block 0x6a, offset 0x1a80 -+ 0x1aa0: 0x000c, 0x1aa1: 0x000c, 0x1aa2: 0x000c, 0x1aa3: 0x000c, -+ 0x1aa4: 0x000c, 0x1aa5: 0x000c, 0x1aa6: 0x000c, 0x1aa7: 0x000c, 0x1aa8: 0x000c, 0x1aa9: 0x000c, -+ 0x1aaa: 0x000c, 0x1aab: 0x000c, 0x1aac: 0x000c, 0x1aad: 0x000c, 0x1aae: 0x000c, 0x1aaf: 0x000c, -+ 0x1ab0: 0x000c, 0x1ab1: 0x000c, 0x1ab2: 0x000c, 0x1ab3: 0x000c, 0x1ab4: 0x000c, 0x1ab5: 0x000c, -+ 0x1ab6: 0x000c, 0x1ab7: 0x000c, 0x1ab8: 0x000c, 0x1ab9: 0x000c, 0x1aba: 0x000c, 0x1abb: 0x000c, -+ 0x1abc: 0x000c, 0x1abd: 0x000c, 0x1abe: 0x000c, 0x1abf: 0x000c, -+ // Block 0x6b, offset 0x1ac0 -+ 0x1ac0: 0x000a, 0x1ac1: 0x000a, 0x1ac2: 0x000a, 0x1ac3: 0x000a, 0x1ac4: 0x000a, 0x1ac5: 0x000a, -+ 0x1ac6: 0x000a, 0x1ac7: 0x000a, 0x1ac8: 0x000a, 0x1ac9: 0x000a, 0x1aca: 0x000a, 0x1acb: 0x000a, -+ 0x1acc: 0x000a, 0x1acd: 0x000a, 0x1ace: 0x000a, 0x1acf: 0x000a, 0x1ad0: 0x000a, 0x1ad1: 0x000a, -+ 0x1ad2: 0x000a, 0x1ad3: 0x000a, 0x1ad4: 0x000a, 0x1ad5: 0x000a, 0x1ad6: 0x000a, 0x1ad7: 0x000a, -+ 0x1ad8: 0x000a, 0x1ad9: 0x000a, 0x1ada: 0x000a, 0x1adb: 0x000a, 0x1adc: 0x000a, 0x1add: 0x000a, -+ 0x1ade: 0x000a, 0x1adf: 0x000a, 0x1ae0: 0x000a, 0x1ae1: 0x000a, 0x1ae2: 0x003a, 0x1ae3: 0x002a, -+ 0x1ae4: 0x003a, 0x1ae5: 0x002a, 0x1ae6: 0x003a, 0x1ae7: 0x002a, 0x1ae8: 0x003a, 0x1ae9: 0x002a, -+ 0x1aea: 0x000a, 0x1aeb: 0x000a, 0x1aec: 0x000a, 0x1aed: 0x000a, 0x1aee: 0x000a, 0x1aef: 0x000a, -+ 0x1af0: 0x000a, 0x1af1: 0x000a, 0x1af2: 0x000a, 0x1af3: 0x000a, 0x1af4: 0x000a, 0x1af5: 0x000a, -+ 0x1af6: 0x000a, 0x1af7: 0x000a, 0x1af8: 0x000a, 0x1af9: 0x000a, 0x1afa: 0x000a, 0x1afb: 0x000a, -+ 0x1afc: 0x000a, 0x1afd: 0x000a, 0x1afe: 0x000a, 0x1aff: 0x000a, -+ // Block 0x6c, offset 0x1b00 -+ 0x1b00: 0x000a, 0x1b01: 0x000a, 0x1b02: 0x000a, 0x1b03: 0x000a, 0x1b04: 0x000a, 0x1b05: 0x000a, -+ 0x1b06: 0x000a, 0x1b07: 0x000a, 0x1b08: 0x000a, 0x1b09: 0x000a, 0x1b0a: 0x000a, 0x1b0b: 0x000a, -+ 0x1b0c: 0x000a, 0x1b0d: 0x000a, 0x1b0e: 0x000a, 0x1b0f: 0x000a, 0x1b10: 0x000a, 0x1b11: 0x000a, -+ 0x1b12: 0x000a, -+ // Block 0x6d, offset 0x1b40 -+ 0x1b40: 0x000a, 0x1b41: 0x000a, 0x1b42: 0x000a, 0x1b43: 0x000a, 0x1b44: 0x000a, 0x1b45: 0x000a, -+ 0x1b46: 0x000a, 0x1b47: 0x000a, 0x1b48: 0x000a, 0x1b49: 0x000a, 0x1b4a: 0x000a, 0x1b4b: 0x000a, -+ 0x1b4c: 0x000a, 0x1b4d: 0x000a, 0x1b4e: 0x000a, 0x1b4f: 0x000a, 0x1b50: 0x000a, 0x1b51: 0x000a, -+ 0x1b52: 0x000a, 0x1b53: 0x000a, 0x1b54: 0x000a, 0x1b55: 0x000a, 0x1b56: 0x000a, 0x1b57: 0x000a, -+ 0x1b58: 0x000a, 0x1b59: 0x000a, 0x1b5b: 0x000a, 0x1b5c: 0x000a, 0x1b5d: 0x000a, -+ 0x1b5e: 0x000a, 0x1b5f: 0x000a, 0x1b60: 0x000a, 0x1b61: 0x000a, 0x1b62: 0x000a, 0x1b63: 0x000a, -+ 0x1b64: 0x000a, 0x1b65: 0x000a, 0x1b66: 0x000a, 0x1b67: 0x000a, 0x1b68: 0x000a, 0x1b69: 0x000a, -+ 0x1b6a: 0x000a, 0x1b6b: 0x000a, 0x1b6c: 0x000a, 0x1b6d: 0x000a, 0x1b6e: 0x000a, 0x1b6f: 0x000a, -+ 0x1b70: 0x000a, 0x1b71: 0x000a, 0x1b72: 0x000a, 0x1b73: 0x000a, 0x1b74: 0x000a, 0x1b75: 0x000a, -+ 0x1b76: 0x000a, 0x1b77: 0x000a, 0x1b78: 0x000a, 0x1b79: 0x000a, 0x1b7a: 0x000a, 0x1b7b: 0x000a, -+ 0x1b7c: 0x000a, 0x1b7d: 0x000a, 0x1b7e: 0x000a, 0x1b7f: 0x000a, -+ // Block 0x6e, offset 0x1b80 -+ 0x1b80: 0x000a, 0x1b81: 0x000a, 0x1b82: 0x000a, 0x1b83: 0x000a, 0x1b84: 0x000a, 0x1b85: 0x000a, -+ 0x1b86: 0x000a, 0x1b87: 0x000a, 0x1b88: 0x000a, 0x1b89: 0x000a, 0x1b8a: 0x000a, 0x1b8b: 0x000a, -+ 0x1b8c: 0x000a, 0x1b8d: 0x000a, 0x1b8e: 0x000a, 0x1b8f: 0x000a, 0x1b90: 0x000a, 0x1b91: 0x000a, -+ 0x1b92: 0x000a, 0x1b93: 0x000a, 0x1b94: 0x000a, 0x1b95: 0x000a, 0x1b96: 0x000a, 0x1b97: 0x000a, -+ 0x1b98: 0x000a, 0x1b99: 0x000a, 0x1b9a: 0x000a, 0x1b9b: 0x000a, 0x1b9c: 0x000a, 0x1b9d: 0x000a, -+ 0x1b9e: 0x000a, 0x1b9f: 0x000a, 0x1ba0: 0x000a, 0x1ba1: 0x000a, 0x1ba2: 0x000a, 0x1ba3: 0x000a, -+ 0x1ba4: 0x000a, 0x1ba5: 0x000a, 0x1ba6: 0x000a, 0x1ba7: 0x000a, 0x1ba8: 0x000a, 0x1ba9: 0x000a, -+ 0x1baa: 0x000a, 0x1bab: 0x000a, 0x1bac: 0x000a, 0x1bad: 0x000a, 0x1bae: 0x000a, 0x1baf: 0x000a, -+ 0x1bb0: 0x000a, 0x1bb1: 0x000a, 0x1bb2: 0x000a, 0x1bb3: 0x000a, -+ // Block 0x6f, offset 0x1bc0 -+ 0x1bc0: 0x000a, 0x1bc1: 0x000a, 0x1bc2: 0x000a, 0x1bc3: 0x000a, 0x1bc4: 0x000a, 0x1bc5: 0x000a, -+ 0x1bc6: 0x000a, 0x1bc7: 0x000a, 0x1bc8: 0x000a, 0x1bc9: 0x000a, 0x1bca: 0x000a, 0x1bcb: 0x000a, -+ 0x1bcc: 0x000a, 0x1bcd: 0x000a, 0x1bce: 0x000a, 0x1bcf: 0x000a, 0x1bd0: 0x000a, 0x1bd1: 0x000a, -+ 0x1bd2: 0x000a, 0x1bd3: 0x000a, 0x1bd4: 0x000a, 0x1bd5: 0x000a, -+ 0x1bf0: 0x000a, 0x1bf1: 0x000a, 0x1bf2: 0x000a, 0x1bf3: 0x000a, 0x1bf4: 0x000a, 0x1bf5: 0x000a, -+ 0x1bf6: 0x000a, 0x1bf7: 0x000a, 0x1bf8: 0x000a, 0x1bf9: 0x000a, 0x1bfa: 0x000a, 0x1bfb: 0x000a, -+ // Block 0x70, offset 0x1c00 -+ 0x1c00: 0x0009, 0x1c01: 0x000a, 0x1c02: 0x000a, 0x1c03: 0x000a, 0x1c04: 0x000a, -+ 0x1c08: 0x003a, 0x1c09: 0x002a, 0x1c0a: 0x003a, 0x1c0b: 0x002a, -+ 0x1c0c: 0x003a, 0x1c0d: 0x002a, 0x1c0e: 0x003a, 0x1c0f: 0x002a, 0x1c10: 0x003a, 0x1c11: 0x002a, -+ 0x1c12: 0x000a, 0x1c13: 0x000a, 0x1c14: 0x003a, 0x1c15: 0x002a, 0x1c16: 0x003a, 0x1c17: 0x002a, -+ 0x1c18: 0x003a, 0x1c19: 0x002a, 0x1c1a: 0x003a, 0x1c1b: 0x002a, 0x1c1c: 0x000a, 0x1c1d: 0x000a, -+ 0x1c1e: 0x000a, 0x1c1f: 0x000a, 0x1c20: 0x000a, -+ 0x1c2a: 0x000c, 0x1c2b: 0x000c, 0x1c2c: 0x000c, 0x1c2d: 0x000c, -+ 0x1c30: 0x000a, -+ 0x1c36: 0x000a, 0x1c37: 0x000a, -+ 0x1c3d: 0x000a, 0x1c3e: 0x000a, 0x1c3f: 0x000a, -+ // Block 0x71, offset 0x1c40 -+ 0x1c59: 0x000c, 0x1c5a: 0x000c, 0x1c5b: 0x000a, 0x1c5c: 0x000a, -+ 0x1c60: 0x000a, -+ // Block 0x72, offset 0x1c80 -+ 0x1cbb: 0x000a, -+ // Block 0x73, offset 0x1cc0 -+ 0x1cc0: 0x000a, 0x1cc1: 0x000a, 0x1cc2: 0x000a, 0x1cc3: 0x000a, 0x1cc4: 0x000a, 0x1cc5: 0x000a, -+ 0x1cc6: 0x000a, 0x1cc7: 0x000a, 0x1cc8: 0x000a, 0x1cc9: 0x000a, 0x1cca: 0x000a, 0x1ccb: 0x000a, -+ 0x1ccc: 0x000a, 0x1ccd: 0x000a, 0x1cce: 0x000a, 0x1ccf: 0x000a, 0x1cd0: 0x000a, 0x1cd1: 0x000a, -+ 0x1cd2: 0x000a, 0x1cd3: 0x000a, 0x1cd4: 0x000a, 0x1cd5: 0x000a, 0x1cd6: 0x000a, 0x1cd7: 0x000a, -+ 0x1cd8: 0x000a, 0x1cd9: 0x000a, 0x1cda: 0x000a, 0x1cdb: 0x000a, 0x1cdc: 0x000a, 0x1cdd: 0x000a, -+ 0x1cde: 0x000a, 0x1cdf: 0x000a, 0x1ce0: 0x000a, 0x1ce1: 0x000a, 0x1ce2: 0x000a, 0x1ce3: 0x000a, -+ // Block 0x74, offset 0x1d00 -+ 0x1d1d: 0x000a, -+ 0x1d1e: 0x000a, -+ // Block 0x75, offset 0x1d40 -+ 0x1d50: 0x000a, 0x1d51: 0x000a, -+ 0x1d52: 0x000a, 0x1d53: 0x000a, 0x1d54: 0x000a, 0x1d55: 0x000a, 0x1d56: 0x000a, 0x1d57: 0x000a, -+ 0x1d58: 0x000a, 0x1d59: 0x000a, 0x1d5a: 0x000a, 0x1d5b: 0x000a, 0x1d5c: 0x000a, 0x1d5d: 0x000a, -+ 0x1d5e: 0x000a, 0x1d5f: 0x000a, -+ 0x1d7c: 0x000a, 0x1d7d: 0x000a, 0x1d7e: 0x000a, -+ // Block 0x76, offset 0x1d80 -+ 0x1db1: 0x000a, 0x1db2: 0x000a, 0x1db3: 0x000a, 0x1db4: 0x000a, 0x1db5: 0x000a, -+ 0x1db6: 0x000a, 0x1db7: 0x000a, 0x1db8: 0x000a, 0x1db9: 0x000a, 0x1dba: 0x000a, 0x1dbb: 0x000a, -+ 0x1dbc: 0x000a, 0x1dbd: 0x000a, 0x1dbe: 0x000a, 0x1dbf: 0x000a, -+ // Block 0x77, offset 0x1dc0 -+ 0x1dcc: 0x000a, 0x1dcd: 0x000a, 0x1dce: 0x000a, 0x1dcf: 0x000a, -+ // Block 0x78, offset 0x1e00 -+ 0x1e37: 0x000a, 0x1e38: 0x000a, 0x1e39: 0x000a, 0x1e3a: 0x000a, -+ // Block 0x79, offset 0x1e40 -+ 0x1e5e: 0x000a, 0x1e5f: 0x000a, -+ 0x1e7f: 0x000a, -+ // Block 0x7a, offset 0x1e80 -+ 0x1e90: 0x000a, 0x1e91: 0x000a, -+ 0x1e92: 0x000a, 0x1e93: 0x000a, 0x1e94: 0x000a, 0x1e95: 0x000a, 0x1e96: 0x000a, 0x1e97: 0x000a, -+ 0x1e98: 0x000a, 0x1e99: 0x000a, 0x1e9a: 0x000a, 0x1e9b: 0x000a, 0x1e9c: 0x000a, 0x1e9d: 0x000a, -+ 0x1e9e: 0x000a, 0x1e9f: 0x000a, 0x1ea0: 0x000a, 0x1ea1: 0x000a, 0x1ea2: 0x000a, 0x1ea3: 0x000a, -+ 0x1ea4: 0x000a, 0x1ea5: 0x000a, 0x1ea6: 0x000a, 0x1ea7: 0x000a, 0x1ea8: 0x000a, 0x1ea9: 0x000a, -+ 0x1eaa: 0x000a, 0x1eab: 0x000a, 0x1eac: 0x000a, 0x1ead: 0x000a, 0x1eae: 0x000a, 0x1eaf: 0x000a, -+ 0x1eb0: 0x000a, 0x1eb1: 0x000a, 0x1eb2: 0x000a, 0x1eb3: 0x000a, 0x1eb4: 0x000a, 0x1eb5: 0x000a, -+ 0x1eb6: 0x000a, 0x1eb7: 0x000a, 0x1eb8: 0x000a, 0x1eb9: 0x000a, 0x1eba: 0x000a, 0x1ebb: 0x000a, -+ 0x1ebc: 0x000a, 0x1ebd: 0x000a, 0x1ebe: 0x000a, 0x1ebf: 0x000a, -+ // Block 0x7b, offset 0x1ec0 -+ 0x1ec0: 0x000a, 0x1ec1: 0x000a, 0x1ec2: 0x000a, 0x1ec3: 0x000a, 0x1ec4: 0x000a, 0x1ec5: 0x000a, -+ 0x1ec6: 0x000a, -+ // Block 0x7c, offset 0x1f00 -+ 0x1f0d: 0x000a, 0x1f0e: 0x000a, 0x1f0f: 0x000a, -+ // Block 0x7d, offset 0x1f40 -+ 0x1f6f: 0x000c, -+ 0x1f70: 0x000c, 0x1f71: 0x000c, 0x1f72: 0x000c, 0x1f73: 0x000a, 0x1f74: 0x000c, 0x1f75: 0x000c, -+ 0x1f76: 0x000c, 0x1f77: 0x000c, 0x1f78: 0x000c, 0x1f79: 0x000c, 0x1f7a: 0x000c, 0x1f7b: 0x000c, -+ 0x1f7c: 0x000c, 0x1f7d: 0x000c, 0x1f7e: 0x000a, 0x1f7f: 0x000a, -+ // Block 0x7e, offset 0x1f80 -+ 0x1f9e: 0x000c, 0x1f9f: 0x000c, -+ // Block 0x7f, offset 0x1fc0 -+ 0x1ff0: 0x000c, 0x1ff1: 0x000c, -+ // Block 0x80, offset 0x2000 -+ 0x2000: 0x000a, 0x2001: 0x000a, 0x2002: 0x000a, 0x2003: 0x000a, 0x2004: 0x000a, 0x2005: 0x000a, -+ 0x2006: 0x000a, 0x2007: 0x000a, 0x2008: 0x000a, 0x2009: 0x000a, 0x200a: 0x000a, 0x200b: 0x000a, -+ 0x200c: 0x000a, 0x200d: 0x000a, 0x200e: 0x000a, 0x200f: 0x000a, 0x2010: 0x000a, 0x2011: 0x000a, -+ 0x2012: 0x000a, 0x2013: 0x000a, 0x2014: 0x000a, 0x2015: 0x000a, 0x2016: 0x000a, 0x2017: 0x000a, -+ 0x2018: 0x000a, 0x2019: 0x000a, 0x201a: 0x000a, 0x201b: 0x000a, 0x201c: 0x000a, 0x201d: 0x000a, -+ 0x201e: 0x000a, 0x201f: 0x000a, 0x2020: 0x000a, 0x2021: 0x000a, -+ // Block 0x81, offset 0x2040 -+ 0x2048: 0x000a, -+ // Block 0x82, offset 0x2080 -+ 0x2082: 0x000c, -+ 0x2086: 0x000c, 0x208b: 0x000c, -+ 0x20a5: 0x000c, 0x20a6: 0x000c, 0x20a8: 0x000a, 0x20a9: 0x000a, -+ 0x20aa: 0x000a, 0x20ab: 0x000a, 0x20ac: 0x000c, -+ 0x20b8: 0x0004, 0x20b9: 0x0004, -+ // Block 0x83, offset 0x20c0 -+ 0x20f4: 0x000a, 0x20f5: 0x000a, -+ 0x20f6: 0x000a, 0x20f7: 0x000a, -+ // Block 0x84, offset 0x2100 -+ 0x2104: 0x000c, 0x2105: 0x000c, -+ 0x2120: 0x000c, 0x2121: 0x000c, 0x2122: 0x000c, 0x2123: 0x000c, -+ 0x2124: 0x000c, 0x2125: 0x000c, 0x2126: 0x000c, 0x2127: 0x000c, 0x2128: 0x000c, 0x2129: 0x000c, -+ 0x212a: 0x000c, 0x212b: 0x000c, 0x212c: 0x000c, 0x212d: 0x000c, 0x212e: 0x000c, 0x212f: 0x000c, -+ 0x2130: 0x000c, 0x2131: 0x000c, -+ 0x213f: 0x000c, -+ // Block 0x85, offset 0x2140 -+ 0x2166: 0x000c, 0x2167: 0x000c, 0x2168: 0x000c, 0x2169: 0x000c, -+ 0x216a: 0x000c, 0x216b: 0x000c, 0x216c: 0x000c, 0x216d: 0x000c, -+ // Block 0x86, offset 0x2180 -+ 0x2187: 0x000c, 0x2188: 0x000c, 0x2189: 0x000c, 0x218a: 0x000c, 0x218b: 0x000c, -+ 0x218c: 0x000c, 0x218d: 0x000c, 0x218e: 0x000c, 0x218f: 0x000c, 0x2190: 0x000c, 0x2191: 0x000c, -+ // Block 0x87, offset 0x21c0 -+ 0x21c0: 0x000c, 0x21c1: 0x000c, 0x21c2: 0x000c, -+ 0x21f3: 0x000c, -+ 0x21f6: 0x000c, 0x21f7: 0x000c, 0x21f8: 0x000c, 0x21f9: 0x000c, -+ 0x21fc: 0x000c, 0x21fd: 0x000c, -+ // Block 0x88, offset 0x2200 -+ 0x2225: 0x000c, -+ // Block 0x89, offset 0x2240 -+ 0x2269: 0x000c, -+ 0x226a: 0x000c, 0x226b: 0x000c, 0x226c: 0x000c, 0x226d: 0x000c, 0x226e: 0x000c, -+ 0x2271: 0x000c, 0x2272: 0x000c, 0x2275: 0x000c, -+ 0x2276: 0x000c, -+ // Block 0x8a, offset 0x2280 -+ 0x2283: 0x000c, -+ 0x228c: 0x000c, -+ 0x22bc: 0x000c, -+ // Block 0x8b, offset 0x22c0 -+ 0x22f0: 0x000c, 0x22f2: 0x000c, 0x22f3: 0x000c, 0x22f4: 0x000c, -+ 0x22f7: 0x000c, 0x22f8: 0x000c, -+ 0x22fe: 0x000c, 0x22ff: 0x000c, -+ // Block 0x8c, offset 0x2300 -+ 0x2301: 0x000c, -+ 0x232c: 0x000c, 0x232d: 0x000c, -+ 0x2336: 0x000c, -+ // Block 0x8d, offset 0x2340 -+ 0x236a: 0x000a, 0x236b: 0x000a, -+ // Block 0x8e, offset 0x2380 -+ 0x23a5: 0x000c, 0x23a8: 0x000c, -+ 0x23ad: 0x000c, -+ // Block 0x8f, offset 0x23c0 -+ 0x23dd: 0x0001, -+ 0x23de: 0x000c, 0x23df: 0x0001, 0x23e0: 0x0001, 0x23e1: 0x0001, 0x23e2: 0x0001, 0x23e3: 0x0001, -+ 0x23e4: 0x0001, 0x23e5: 0x0001, 0x23e6: 0x0001, 0x23e7: 0x0001, 0x23e8: 0x0001, 0x23e9: 0x0003, -+ 0x23ea: 0x0001, 0x23eb: 0x0001, 0x23ec: 0x0001, 0x23ed: 0x0001, 0x23ee: 0x0001, 0x23ef: 0x0001, -+ 0x23f0: 0x0001, 0x23f1: 0x0001, 0x23f2: 0x0001, 0x23f3: 0x0001, 0x23f4: 0x0001, 0x23f5: 0x0001, -+ 0x23f6: 0x0001, 0x23f7: 0x0001, 0x23f8: 0x0001, 0x23f9: 0x0001, 0x23fa: 0x0001, 0x23fb: 0x0001, -+ 0x23fc: 0x0001, 0x23fd: 0x0001, 0x23fe: 0x0001, 0x23ff: 0x0001, -+ // Block 0x90, offset 0x2400 -+ 0x2400: 0x0001, 0x2401: 0x0001, 0x2402: 0x0001, 0x2403: 0x0001, 0x2404: 0x0001, 0x2405: 0x0001, -+ 0x2406: 0x0001, 0x2407: 0x0001, 0x2408: 0x0001, 0x2409: 0x0001, 0x240a: 0x0001, 0x240b: 0x0001, -+ 0x240c: 0x0001, 0x240d: 0x0001, 0x240e: 0x0001, 0x240f: 0x0001, 0x2410: 0x000d, 0x2411: 0x000d, -+ 0x2412: 0x000d, 0x2413: 0x000d, 0x2414: 0x000d, 0x2415: 0x000d, 0x2416: 0x000d, 0x2417: 0x000d, -+ 0x2418: 0x000d, 0x2419: 0x000d, 0x241a: 0x000d, 0x241b: 0x000d, 0x241c: 0x000d, 0x241d: 0x000d, -+ 0x241e: 0x000d, 0x241f: 0x000d, 0x2420: 0x000d, 0x2421: 0x000d, 0x2422: 0x000d, 0x2423: 0x000d, -+ 0x2424: 0x000d, 0x2425: 0x000d, 0x2426: 0x000d, 0x2427: 0x000d, 0x2428: 0x000d, 0x2429: 0x000d, -+ 0x242a: 0x000d, 0x242b: 0x000d, 0x242c: 0x000d, 0x242d: 0x000d, 0x242e: 0x000d, 0x242f: 0x000d, -+ 0x2430: 0x000d, 0x2431: 0x000d, 0x2432: 0x000d, 0x2433: 0x000d, 0x2434: 0x000d, 0x2435: 0x000d, -+ 0x2436: 0x000d, 0x2437: 0x000d, 0x2438: 0x000d, 0x2439: 0x000d, 0x243a: 0x000d, 0x243b: 0x000d, -+ 0x243c: 0x000d, 0x243d: 0x000d, 0x243e: 0x000d, 0x243f: 0x000d, -+ // Block 0x91, offset 0x2440 -+ 0x2440: 0x000d, 0x2441: 0x000d, 0x2442: 0x000d, 0x2443: 0x000d, 0x2444: 0x000d, 0x2445: 0x000d, -+ 0x2446: 0x000d, 0x2447: 0x000d, 0x2448: 0x000d, 0x2449: 0x000d, 0x244a: 0x000d, 0x244b: 0x000d, -+ 0x244c: 0x000d, 0x244d: 0x000d, 0x244e: 0x000d, 0x244f: 0x000d, 0x2450: 0x000d, 0x2451: 0x000d, -+ 0x2452: 0x000d, 0x2453: 0x000d, 0x2454: 0x000d, 0x2455: 0x000d, 0x2456: 0x000d, 0x2457: 0x000d, -+ 0x2458: 0x000d, 0x2459: 0x000d, 0x245a: 0x000d, 0x245b: 0x000d, 0x245c: 0x000d, 0x245d: 0x000d, -+ 0x245e: 0x000d, 0x245f: 0x000d, 0x2460: 0x000d, 0x2461: 0x000d, 0x2462: 0x000d, 0x2463: 0x000d, -+ 0x2464: 0x000d, 0x2465: 0x000d, 0x2466: 0x000d, 0x2467: 0x000d, 0x2468: 0x000d, 0x2469: 0x000d, -+ 0x246a: 0x000d, 0x246b: 0x000d, 0x246c: 0x000d, 0x246d: 0x000d, 0x246e: 0x000d, 0x246f: 0x000d, -+ 0x2470: 0x000d, 0x2471: 0x000d, 0x2472: 0x000d, 0x2473: 0x000d, 0x2474: 0x000d, 0x2475: 0x000d, -+ 0x2476: 0x000d, 0x2477: 0x000d, 0x2478: 0x000d, 0x2479: 0x000d, 0x247a: 0x000d, 0x247b: 0x000d, -+ 0x247c: 0x000d, 0x247d: 0x000d, 0x247e: 0x000a, 0x247f: 0x000a, -+ // Block 0x92, offset 0x2480 -+ 0x2480: 0x000d, 0x2481: 0x000d, 0x2482: 0x000d, 0x2483: 0x000d, 0x2484: 0x000d, 0x2485: 0x000d, -+ 0x2486: 0x000d, 0x2487: 0x000d, 0x2488: 0x000d, 0x2489: 0x000d, 0x248a: 0x000d, 0x248b: 0x000d, -+ 0x248c: 0x000d, 0x248d: 0x000d, 0x248e: 0x000d, 0x248f: 0x000d, 0x2490: 0x000b, 0x2491: 0x000b, -+ 0x2492: 0x000b, 0x2493: 0x000b, 0x2494: 0x000b, 0x2495: 0x000b, 0x2496: 0x000b, 0x2497: 0x000b, -+ 0x2498: 0x000b, 0x2499: 0x000b, 0x249a: 0x000b, 0x249b: 0x000b, 0x249c: 0x000b, 0x249d: 0x000b, -+ 0x249e: 0x000b, 0x249f: 0x000b, 0x24a0: 0x000b, 0x24a1: 0x000b, 0x24a2: 0x000b, 0x24a3: 0x000b, -+ 0x24a4: 0x000b, 0x24a5: 0x000b, 0x24a6: 0x000b, 0x24a7: 0x000b, 0x24a8: 0x000b, 0x24a9: 0x000b, -+ 0x24aa: 0x000b, 0x24ab: 0x000b, 0x24ac: 0x000b, 0x24ad: 0x000b, 0x24ae: 0x000b, 0x24af: 0x000b, -+ 0x24b0: 0x000d, 0x24b1: 0x000d, 0x24b2: 0x000d, 0x24b3: 0x000d, 0x24b4: 0x000d, 0x24b5: 0x000d, -+ 0x24b6: 0x000d, 0x24b7: 0x000d, 0x24b8: 0x000d, 0x24b9: 0x000d, 0x24ba: 0x000d, 0x24bb: 0x000d, -+ 0x24bc: 0x000d, 0x24bd: 0x000a, 0x24be: 0x000d, 0x24bf: 0x000d, -+ // Block 0x93, offset 0x24c0 -+ 0x24c0: 0x000c, 0x24c1: 0x000c, 0x24c2: 0x000c, 0x24c3: 0x000c, 0x24c4: 0x000c, 0x24c5: 0x000c, -+ 0x24c6: 0x000c, 0x24c7: 0x000c, 0x24c8: 0x000c, 0x24c9: 0x000c, 0x24ca: 0x000c, 0x24cb: 0x000c, -+ 0x24cc: 0x000c, 0x24cd: 0x000c, 0x24ce: 0x000c, 0x24cf: 0x000c, 0x24d0: 0x000a, 0x24d1: 0x000a, -+ 0x24d2: 0x000a, 0x24d3: 0x000a, 0x24d4: 0x000a, 0x24d5: 0x000a, 0x24d6: 0x000a, 0x24d7: 0x000a, -+ 0x24d8: 0x000a, 0x24d9: 0x000a, -+ 0x24e0: 0x000c, 0x24e1: 0x000c, 0x24e2: 0x000c, 0x24e3: 0x000c, -+ 0x24e4: 0x000c, 0x24e5: 0x000c, 0x24e6: 0x000c, 0x24e7: 0x000c, 0x24e8: 0x000c, 0x24e9: 0x000c, -+ 0x24ea: 0x000c, 0x24eb: 0x000c, 0x24ec: 0x000c, 0x24ed: 0x000c, 0x24ee: 0x000c, 0x24ef: 0x000c, -+ 0x24f0: 0x000a, 0x24f1: 0x000a, 0x24f2: 0x000a, 0x24f3: 0x000a, 0x24f4: 0x000a, 0x24f5: 0x000a, -+ 0x24f6: 0x000a, 0x24f7: 0x000a, 0x24f8: 0x000a, 0x24f9: 0x000a, 0x24fa: 0x000a, 0x24fb: 0x000a, -+ 0x24fc: 0x000a, 0x24fd: 0x000a, 0x24fe: 0x000a, 0x24ff: 0x000a, -+ // Block 0x94, offset 0x2500 -+ 0x2500: 0x000a, 0x2501: 0x000a, 0x2502: 0x000a, 0x2503: 0x000a, 0x2504: 0x000a, 0x2505: 0x000a, -+ 0x2506: 0x000a, 0x2507: 0x000a, 0x2508: 0x000a, 0x2509: 0x000a, 0x250a: 0x000a, 0x250b: 0x000a, -+ 0x250c: 0x000a, 0x250d: 0x000a, 0x250e: 0x000a, 0x250f: 0x000a, 0x2510: 0x0006, 0x2511: 0x000a, -+ 0x2512: 0x0006, 0x2514: 0x000a, 0x2515: 0x0006, 0x2516: 0x000a, 0x2517: 0x000a, -+ 0x2518: 0x000a, 0x2519: 0x009a, 0x251a: 0x008a, 0x251b: 0x007a, 0x251c: 0x006a, 0x251d: 0x009a, -+ 0x251e: 0x008a, 0x251f: 0x0004, 0x2520: 0x000a, 0x2521: 0x000a, 0x2522: 0x0003, 0x2523: 0x0003, -+ 0x2524: 0x000a, 0x2525: 0x000a, 0x2526: 0x000a, 0x2528: 0x000a, 0x2529: 0x0004, -+ 0x252a: 0x0004, 0x252b: 0x000a, -+ 0x2530: 0x000d, 0x2531: 0x000d, 0x2532: 0x000d, 0x2533: 0x000d, 0x2534: 0x000d, 0x2535: 0x000d, -+ 0x2536: 0x000d, 0x2537: 0x000d, 0x2538: 0x000d, 0x2539: 0x000d, 0x253a: 0x000d, 0x253b: 0x000d, -+ 0x253c: 0x000d, 0x253d: 0x000d, 0x253e: 0x000d, 0x253f: 0x000d, -+ // Block 0x95, offset 0x2540 -+ 0x2540: 0x000d, 0x2541: 0x000d, 0x2542: 0x000d, 0x2543: 0x000d, 0x2544: 0x000d, 0x2545: 0x000d, -+ 0x2546: 0x000d, 0x2547: 0x000d, 0x2548: 0x000d, 0x2549: 0x000d, 0x254a: 0x000d, 0x254b: 0x000d, -+ 0x254c: 0x000d, 0x254d: 0x000d, 0x254e: 0x000d, 0x254f: 0x000d, 0x2550: 0x000d, 0x2551: 0x000d, -+ 0x2552: 0x000d, 0x2553: 0x000d, 0x2554: 0x000d, 0x2555: 0x000d, 0x2556: 0x000d, 0x2557: 0x000d, -+ 0x2558: 0x000d, 0x2559: 0x000d, 0x255a: 0x000d, 0x255b: 0x000d, 0x255c: 0x000d, 0x255d: 0x000d, -+ 0x255e: 0x000d, 0x255f: 0x000d, 0x2560: 0x000d, 0x2561: 0x000d, 0x2562: 0x000d, 0x2563: 0x000d, -+ 0x2564: 0x000d, 0x2565: 0x000d, 0x2566: 0x000d, 0x2567: 0x000d, 0x2568: 0x000d, 0x2569: 0x000d, -+ 0x256a: 0x000d, 0x256b: 0x000d, 0x256c: 0x000d, 0x256d: 0x000d, 0x256e: 0x000d, 0x256f: 0x000d, -+ 0x2570: 0x000d, 0x2571: 0x000d, 0x2572: 0x000d, 0x2573: 0x000d, 0x2574: 0x000d, 0x2575: 0x000d, -+ 0x2576: 0x000d, 0x2577: 0x000d, 0x2578: 0x000d, 0x2579: 0x000d, 0x257a: 0x000d, 0x257b: 0x000d, -+ 0x257c: 0x000d, 0x257d: 0x000d, 0x257e: 0x000d, 0x257f: 0x000b, -+ // Block 0x96, offset 0x2580 -+ 0x2581: 0x000a, 0x2582: 0x000a, 0x2583: 0x0004, 0x2584: 0x0004, 0x2585: 0x0004, -+ 0x2586: 0x000a, 0x2587: 0x000a, 0x2588: 0x003a, 0x2589: 0x002a, 0x258a: 0x000a, 0x258b: 0x0003, -+ 0x258c: 0x0006, 0x258d: 0x0003, 0x258e: 0x0006, 0x258f: 0x0006, 0x2590: 0x0002, 0x2591: 0x0002, -+ 0x2592: 0x0002, 0x2593: 0x0002, 0x2594: 0x0002, 0x2595: 0x0002, 0x2596: 0x0002, 0x2597: 0x0002, -+ 0x2598: 0x0002, 0x2599: 0x0002, 0x259a: 0x0006, 0x259b: 0x000a, 0x259c: 0x000a, 0x259d: 0x000a, -+ 0x259e: 0x000a, 0x259f: 0x000a, 0x25a0: 0x000a, -+ 0x25bb: 0x005a, -+ 0x25bc: 0x000a, 0x25bd: 0x004a, 0x25be: 0x000a, 0x25bf: 0x000a, -+ // Block 0x97, offset 0x25c0 -+ 0x25c0: 0x000a, -+ 0x25db: 0x005a, 0x25dc: 0x000a, 0x25dd: 0x004a, -+ 0x25de: 0x000a, 0x25df: 0x00fa, 0x25e0: 0x00ea, 0x25e1: 0x000a, 0x25e2: 0x003a, 0x25e3: 0x002a, -+ 0x25e4: 0x000a, 0x25e5: 0x000a, -+ // Block 0x98, offset 0x2600 -+ 0x2620: 0x0004, 0x2621: 0x0004, 0x2622: 0x000a, 0x2623: 0x000a, -+ 0x2624: 0x000a, 0x2625: 0x0004, 0x2626: 0x0004, 0x2628: 0x000a, 0x2629: 0x000a, -+ 0x262a: 0x000a, 0x262b: 0x000a, 0x262c: 0x000a, 0x262d: 0x000a, 0x262e: 0x000a, -+ 0x2630: 0x000b, 0x2631: 0x000b, 0x2632: 0x000b, 0x2633: 0x000b, 0x2634: 0x000b, 0x2635: 0x000b, -+ 0x2636: 0x000b, 0x2637: 0x000b, 0x2638: 0x000b, 0x2639: 0x000a, 0x263a: 0x000a, 0x263b: 0x000a, -+ 0x263c: 0x000a, 0x263d: 0x000a, 0x263e: 0x000b, 0x263f: 0x000b, -+ // Block 0x99, offset 0x2640 -+ 0x2641: 0x000a, -+ // Block 0x9a, offset 0x2680 -+ 0x2680: 0x000a, 0x2681: 0x000a, 0x2682: 0x000a, 0x2683: 0x000a, 0x2684: 0x000a, 0x2685: 0x000a, -+ 0x2686: 0x000a, 0x2687: 0x000a, 0x2688: 0x000a, 0x2689: 0x000a, 0x268a: 0x000a, 0x268b: 0x000a, -+ 0x268c: 0x000a, 0x2690: 0x000a, 0x2691: 0x000a, -+ 0x2692: 0x000a, 0x2693: 0x000a, 0x2694: 0x000a, 0x2695: 0x000a, 0x2696: 0x000a, 0x2697: 0x000a, -+ 0x2698: 0x000a, 0x2699: 0x000a, 0x269a: 0x000a, 0x269b: 0x000a, 0x269c: 0x000a, -+ 0x26a0: 0x000a, -+ // Block 0x9b, offset 0x26c0 -+ 0x26fd: 0x000c, -+ // Block 0x9c, offset 0x2700 -+ 0x2720: 0x000c, 0x2721: 0x0002, 0x2722: 0x0002, 0x2723: 0x0002, -+ 0x2724: 0x0002, 0x2725: 0x0002, 0x2726: 0x0002, 0x2727: 0x0002, 0x2728: 0x0002, 0x2729: 0x0002, -+ 0x272a: 0x0002, 0x272b: 0x0002, 0x272c: 0x0002, 0x272d: 0x0002, 0x272e: 0x0002, 0x272f: 0x0002, -+ 0x2730: 0x0002, 0x2731: 0x0002, 0x2732: 0x0002, 0x2733: 0x0002, 0x2734: 0x0002, 0x2735: 0x0002, -+ 0x2736: 0x0002, 0x2737: 0x0002, 0x2738: 0x0002, 0x2739: 0x0002, 0x273a: 0x0002, 0x273b: 0x0002, -+ // Block 0x9d, offset 0x2740 -+ 0x2776: 0x000c, 0x2777: 0x000c, 0x2778: 0x000c, 0x2779: 0x000c, 0x277a: 0x000c, -+ // Block 0x9e, offset 0x2780 -+ 0x2780: 0x0001, 0x2781: 0x0001, 0x2782: 0x0001, 0x2783: 0x0001, 0x2784: 0x0001, 0x2785: 0x0001, -+ 0x2786: 0x0001, 0x2787: 0x0001, 0x2788: 0x0001, 0x2789: 0x0001, 0x278a: 0x0001, 0x278b: 0x0001, -+ 0x278c: 0x0001, 0x278d: 0x0001, 0x278e: 0x0001, 0x278f: 0x0001, 0x2790: 0x0001, 0x2791: 0x0001, -+ 0x2792: 0x0001, 0x2793: 0x0001, 0x2794: 0x0001, 0x2795: 0x0001, 0x2796: 0x0001, 0x2797: 0x0001, -+ 0x2798: 0x0001, 0x2799: 0x0001, 0x279a: 0x0001, 0x279b: 0x0001, 0x279c: 0x0001, 0x279d: 0x0001, -+ 0x279e: 0x0001, 0x279f: 0x0001, 0x27a0: 0x0001, 0x27a1: 0x0001, 0x27a2: 0x0001, 0x27a3: 0x0001, -+ 0x27a4: 0x0001, 0x27a5: 0x0001, 0x27a6: 0x0001, 0x27a7: 0x0001, 0x27a8: 0x0001, 0x27a9: 0x0001, -+ 0x27aa: 0x0001, 0x27ab: 0x0001, 0x27ac: 0x0001, 0x27ad: 0x0001, 0x27ae: 0x0001, 0x27af: 0x0001, -+ 0x27b0: 0x0001, 0x27b1: 0x0001, 0x27b2: 0x0001, 0x27b3: 0x0001, 0x27b4: 0x0001, 0x27b5: 0x0001, -+ 0x27b6: 0x0001, 0x27b7: 0x0001, 0x27b8: 0x0001, 0x27b9: 0x0001, 0x27ba: 0x0001, 0x27bb: 0x0001, -+ 0x27bc: 0x0001, 0x27bd: 0x0001, 0x27be: 0x0001, 0x27bf: 0x0001, -+ // Block 0x9f, offset 0x27c0 -+ 0x27c0: 0x0001, 0x27c1: 0x0001, 0x27c2: 0x0001, 0x27c3: 0x0001, 0x27c4: 0x0001, 0x27c5: 0x0001, -+ 0x27c6: 0x0001, 0x27c7: 0x0001, 0x27c8: 0x0001, 0x27c9: 0x0001, 0x27ca: 0x0001, 0x27cb: 0x0001, -+ 0x27cc: 0x0001, 0x27cd: 0x0001, 0x27ce: 0x0001, 0x27cf: 0x0001, 0x27d0: 0x0001, 0x27d1: 0x0001, -+ 0x27d2: 0x0001, 0x27d3: 0x0001, 0x27d4: 0x0001, 0x27d5: 0x0001, 0x27d6: 0x0001, 0x27d7: 0x0001, -+ 0x27d8: 0x0001, 0x27d9: 0x0001, 0x27da: 0x0001, 0x27db: 0x0001, 0x27dc: 0x0001, 0x27dd: 0x0001, -+ 0x27de: 0x0001, 0x27df: 0x000a, 0x27e0: 0x0001, 0x27e1: 0x0001, 0x27e2: 0x0001, 0x27e3: 0x0001, -+ 0x27e4: 0x0001, 0x27e5: 0x0001, 0x27e6: 0x0001, 0x27e7: 0x0001, 0x27e8: 0x0001, 0x27e9: 0x0001, -+ 0x27ea: 0x0001, 0x27eb: 0x0001, 0x27ec: 0x0001, 0x27ed: 0x0001, 0x27ee: 0x0001, 0x27ef: 0x0001, -+ 0x27f0: 0x0001, 0x27f1: 0x0001, 0x27f2: 0x0001, 0x27f3: 0x0001, 0x27f4: 0x0001, 0x27f5: 0x0001, -+ 0x27f6: 0x0001, 0x27f7: 0x0001, 0x27f8: 0x0001, 0x27f9: 0x0001, 0x27fa: 0x0001, 0x27fb: 0x0001, -+ 0x27fc: 0x0001, 0x27fd: 0x0001, 0x27fe: 0x0001, 0x27ff: 0x0001, -+ // Block 0xa0, offset 0x2800 -+ 0x2800: 0x0001, 0x2801: 0x000c, 0x2802: 0x000c, 0x2803: 0x000c, 0x2804: 0x0001, 0x2805: 0x000c, -+ 0x2806: 0x000c, 0x2807: 0x0001, 0x2808: 0x0001, 0x2809: 0x0001, 0x280a: 0x0001, 0x280b: 0x0001, -+ 0x280c: 0x000c, 0x280d: 0x000c, 0x280e: 0x000c, 0x280f: 0x000c, 0x2810: 0x0001, 0x2811: 0x0001, -+ 0x2812: 0x0001, 0x2813: 0x0001, 0x2814: 0x0001, 0x2815: 0x0001, 0x2816: 0x0001, 0x2817: 0x0001, -+ 0x2818: 0x0001, 0x2819: 0x0001, 0x281a: 0x0001, 0x281b: 0x0001, 0x281c: 0x0001, 0x281d: 0x0001, -+ 0x281e: 0x0001, 0x281f: 0x0001, 0x2820: 0x0001, 0x2821: 0x0001, 0x2822: 0x0001, 0x2823: 0x0001, -+ 0x2824: 0x0001, 0x2825: 0x0001, 0x2826: 0x0001, 0x2827: 0x0001, 0x2828: 0x0001, 0x2829: 0x0001, -+ 0x282a: 0x0001, 0x282b: 0x0001, 0x282c: 0x0001, 0x282d: 0x0001, 0x282e: 0x0001, 0x282f: 0x0001, -+ 0x2830: 0x0001, 0x2831: 0x0001, 0x2832: 0x0001, 0x2833: 0x0001, 0x2834: 0x0001, 0x2835: 0x0001, -+ 0x2836: 0x0001, 0x2837: 0x0001, 0x2838: 0x000c, 0x2839: 0x000c, 0x283a: 0x000c, 0x283b: 0x0001, -+ 0x283c: 0x0001, 0x283d: 0x0001, 0x283e: 0x0001, 0x283f: 0x000c, -+ // Block 0xa1, offset 0x2840 -+ 0x2840: 0x0001, 0x2841: 0x0001, 0x2842: 0x0001, 0x2843: 0x0001, 0x2844: 0x0001, 0x2845: 0x0001, -+ 0x2846: 0x0001, 0x2847: 0x0001, 0x2848: 0x0001, 0x2849: 0x0001, 0x284a: 0x0001, 0x284b: 0x0001, -+ 0x284c: 0x0001, 0x284d: 0x0001, 0x284e: 0x0001, 0x284f: 0x0001, 0x2850: 0x0001, 0x2851: 0x0001, -+ 0x2852: 0x0001, 0x2853: 0x0001, 0x2854: 0x0001, 0x2855: 0x0001, 0x2856: 0x0001, 0x2857: 0x0001, -+ 0x2858: 0x0001, 0x2859: 0x0001, 0x285a: 0x0001, 0x285b: 0x0001, 0x285c: 0x0001, 0x285d: 0x0001, -+ 0x285e: 0x0001, 0x285f: 0x0001, 0x2860: 0x0001, 0x2861: 0x0001, 0x2862: 0x0001, 0x2863: 0x0001, -+ 0x2864: 0x0001, 0x2865: 0x000c, 0x2866: 0x000c, 0x2867: 0x0001, 0x2868: 0x0001, 0x2869: 0x0001, -+ 0x286a: 0x0001, 0x286b: 0x0001, 0x286c: 0x0001, 0x286d: 0x0001, 0x286e: 0x0001, 0x286f: 0x0001, -+ 0x2870: 0x0001, 0x2871: 0x0001, 0x2872: 0x0001, 0x2873: 0x0001, 0x2874: 0x0001, 0x2875: 0x0001, -+ 0x2876: 0x0001, 0x2877: 0x0001, 0x2878: 0x0001, 0x2879: 0x0001, 0x287a: 0x0001, 0x287b: 0x0001, -+ 0x287c: 0x0001, 0x287d: 0x0001, 0x287e: 0x0001, 0x287f: 0x0001, -+ // Block 0xa2, offset 0x2880 -+ 0x2880: 0x0001, 0x2881: 0x0001, 0x2882: 0x0001, 0x2883: 0x0001, 0x2884: 0x0001, 0x2885: 0x0001, -+ 0x2886: 0x0001, 0x2887: 0x0001, 0x2888: 0x0001, 0x2889: 0x0001, 0x288a: 0x0001, 0x288b: 0x0001, -+ 0x288c: 0x0001, 0x288d: 0x0001, 0x288e: 0x0001, 0x288f: 0x0001, 0x2890: 0x0001, 0x2891: 0x0001, -+ 0x2892: 0x0001, 0x2893: 0x0001, 0x2894: 0x0001, 0x2895: 0x0001, 0x2896: 0x0001, 0x2897: 0x0001, -+ 0x2898: 0x0001, 0x2899: 0x0001, 0x289a: 0x0001, 0x289b: 0x0001, 0x289c: 0x0001, 0x289d: 0x0001, -+ 0x289e: 0x0001, 0x289f: 0x0001, 0x28a0: 0x0001, 0x28a1: 0x0001, 0x28a2: 0x0001, 0x28a3: 0x0001, -+ 0x28a4: 0x0001, 0x28a5: 0x0001, 0x28a6: 0x0001, 0x28a7: 0x0001, 0x28a8: 0x0001, 0x28a9: 0x0001, -+ 0x28aa: 0x0001, 0x28ab: 0x0001, 0x28ac: 0x0001, 0x28ad: 0x0001, 0x28ae: 0x0001, 0x28af: 0x0001, -+ 0x28b0: 0x0001, 0x28b1: 0x0001, 0x28b2: 0x0001, 0x28b3: 0x0001, 0x28b4: 0x0001, 0x28b5: 0x0001, -+ 0x28b6: 0x0001, 0x28b7: 0x0001, 0x28b8: 0x0001, 0x28b9: 0x000a, 0x28ba: 0x000a, 0x28bb: 0x000a, -+ 0x28bc: 0x000a, 0x28bd: 0x000a, 0x28be: 0x000a, 0x28bf: 0x000a, -+ // Block 0xa3, offset 0x28c0 -+ 0x28c0: 0x000d, 0x28c1: 0x000d, 0x28c2: 0x000d, 0x28c3: 0x000d, 0x28c4: 0x000d, 0x28c5: 0x000d, -+ 0x28c6: 0x000d, 0x28c7: 0x000d, 0x28c8: 0x000d, 0x28c9: 0x000d, 0x28ca: 0x000d, 0x28cb: 0x000d, -+ 0x28cc: 0x000d, 0x28cd: 0x000d, 0x28ce: 0x000d, 0x28cf: 0x000d, 0x28d0: 0x000d, 0x28d1: 0x000d, -+ 0x28d2: 0x000d, 0x28d3: 0x000d, 0x28d4: 0x000d, 0x28d5: 0x000d, 0x28d6: 0x000d, 0x28d7: 0x000d, -+ 0x28d8: 0x000d, 0x28d9: 0x000d, 0x28da: 0x000d, 0x28db: 0x000d, 0x28dc: 0x000d, 0x28dd: 0x000d, -+ 0x28de: 0x000d, 0x28df: 0x000d, 0x28e0: 0x000d, 0x28e1: 0x000d, 0x28e2: 0x000d, 0x28e3: 0x000d, -+ 0x28e4: 0x000c, 0x28e5: 0x000c, 0x28e6: 0x000c, 0x28e7: 0x000c, 0x28e8: 0x000d, 0x28e9: 0x000d, -+ 0x28ea: 0x000d, 0x28eb: 0x000d, 0x28ec: 0x000d, 0x28ed: 0x000d, 0x28ee: 0x000d, 0x28ef: 0x000d, -+ 0x28f0: 0x0005, 0x28f1: 0x0005, 0x28f2: 0x0005, 0x28f3: 0x0005, 0x28f4: 0x0005, 0x28f5: 0x0005, -+ 0x28f6: 0x0005, 0x28f7: 0x0005, 0x28f8: 0x0005, 0x28f9: 0x0005, 0x28fa: 0x000d, 0x28fb: 0x000d, -+ 0x28fc: 0x000d, 0x28fd: 0x000d, 0x28fe: 0x000d, 0x28ff: 0x000d, -+ // Block 0xa4, offset 0x2900 -+ 0x2900: 0x0001, 0x2901: 0x0001, 0x2902: 0x0001, 0x2903: 0x0001, 0x2904: 0x0001, 0x2905: 0x0001, -+ 0x2906: 0x0001, 0x2907: 0x0001, 0x2908: 0x0001, 0x2909: 0x0001, 0x290a: 0x0001, 0x290b: 0x0001, -+ 0x290c: 0x0001, 0x290d: 0x0001, 0x290e: 0x0001, 0x290f: 0x0001, 0x2910: 0x0001, 0x2911: 0x0001, -+ 0x2912: 0x0001, 0x2913: 0x0001, 0x2914: 0x0001, 0x2915: 0x0001, 0x2916: 0x0001, 0x2917: 0x0001, -+ 0x2918: 0x0001, 0x2919: 0x0001, 0x291a: 0x0001, 0x291b: 0x0001, 0x291c: 0x0001, 0x291d: 0x0001, -+ 0x291e: 0x0001, 0x291f: 0x0001, 0x2920: 0x0005, 0x2921: 0x0005, 0x2922: 0x0005, 0x2923: 0x0005, -+ 0x2924: 0x0005, 0x2925: 0x0005, 0x2926: 0x0005, 0x2927: 0x0005, 0x2928: 0x0005, 0x2929: 0x0005, -+ 0x292a: 0x0005, 0x292b: 0x0005, 0x292c: 0x0005, 0x292d: 0x0005, 0x292e: 0x0005, 0x292f: 0x0005, -+ 0x2930: 0x0005, 0x2931: 0x0005, 0x2932: 0x0005, 0x2933: 0x0005, 0x2934: 0x0005, 0x2935: 0x0005, -+ 0x2936: 0x0005, 0x2937: 0x0005, 0x2938: 0x0005, 0x2939: 0x0005, 0x293a: 0x0005, 0x293b: 0x0005, -+ 0x293c: 0x0005, 0x293d: 0x0005, 0x293e: 0x0005, 0x293f: 0x0001, -+ // Block 0xa5, offset 0x2940 -+ 0x2940: 0x0001, 0x2941: 0x0001, 0x2942: 0x0001, 0x2943: 0x0001, 0x2944: 0x0001, 0x2945: 0x0001, -+ 0x2946: 0x0001, 0x2947: 0x0001, 0x2948: 0x0001, 0x2949: 0x0001, 0x294a: 0x0001, 0x294b: 0x0001, -+ 0x294c: 0x0001, 0x294d: 0x0001, 0x294e: 0x0001, 0x294f: 0x0001, 0x2950: 0x0001, 0x2951: 0x0001, -+ 0x2952: 0x0001, 0x2953: 0x0001, 0x2954: 0x0001, 0x2955: 0x0001, 0x2956: 0x0001, 0x2957: 0x0001, -+ 0x2958: 0x0001, 0x2959: 0x0001, 0x295a: 0x0001, 0x295b: 0x0001, 0x295c: 0x0001, 0x295d: 0x0001, -+ 0x295e: 0x0001, 0x295f: 0x0001, 0x2960: 0x0001, 0x2961: 0x0001, 0x2962: 0x0001, 0x2963: 0x0001, -+ 0x2964: 0x0001, 0x2965: 0x0001, 0x2966: 0x0001, 0x2967: 0x0001, 0x2968: 0x0001, 0x2969: 0x0001, -+ 0x296a: 0x0001, 0x296b: 0x000c, 0x296c: 0x000c, 0x296d: 0x0001, 0x296e: 0x0001, 0x296f: 0x0001, -+ 0x2970: 0x0001, 0x2971: 0x0001, 0x2972: 0x0001, 0x2973: 0x0001, 0x2974: 0x0001, 0x2975: 0x0001, -+ 0x2976: 0x0001, 0x2977: 0x0001, 0x2978: 0x0001, 0x2979: 0x0001, 0x297a: 0x0001, 0x297b: 0x0001, -+ 0x297c: 0x0001, 0x297d: 0x0001, 0x297e: 0x0001, 0x297f: 0x0001, -+ // Block 0xa6, offset 0x2980 -+ 0x2980: 0x0001, 0x2981: 0x0001, 0x2982: 0x0001, 0x2983: 0x0001, 0x2984: 0x0001, 0x2985: 0x0001, -+ 0x2986: 0x0001, 0x2987: 0x0001, 0x2988: 0x0001, 0x2989: 0x0001, 0x298a: 0x0001, 0x298b: 0x0001, -+ 0x298c: 0x0001, 0x298d: 0x0001, 0x298e: 0x0001, 0x298f: 0x0001, 0x2990: 0x0001, 0x2991: 0x0001, -+ 0x2992: 0x0001, 0x2993: 0x0001, 0x2994: 0x0001, 0x2995: 0x0001, 0x2996: 0x0001, 0x2997: 0x0001, -+ 0x2998: 0x0001, 0x2999: 0x0001, 0x299a: 0x0001, 0x299b: 0x0001, 0x299c: 0x0001, 0x299d: 0x0001, -+ 0x299e: 0x0001, 0x299f: 0x0001, 0x29a0: 0x0001, 0x29a1: 0x0001, 0x29a2: 0x0001, 0x29a3: 0x0001, -+ 0x29a4: 0x0001, 0x29a5: 0x0001, 0x29a6: 0x0001, 0x29a7: 0x0001, 0x29a8: 0x0001, 0x29a9: 0x0001, -+ 0x29aa: 0x0001, 0x29ab: 0x0001, 0x29ac: 0x0001, 0x29ad: 0x0001, 0x29ae: 0x0001, 0x29af: 0x0001, -+ 0x29b0: 0x000d, 0x29b1: 0x000d, 0x29b2: 0x000d, 0x29b3: 0x000d, 0x29b4: 0x000d, 0x29b5: 0x000d, -+ 0x29b6: 0x000d, 0x29b7: 0x000d, 0x29b8: 0x000d, 0x29b9: 0x000d, 0x29ba: 0x000d, 0x29bb: 0x000d, -+ 0x29bc: 0x000d, 0x29bd: 0x000d, 0x29be: 0x000d, 0x29bf: 0x000d, -+ // Block 0xa7, offset 0x29c0 -+ 0x29c0: 0x000d, 0x29c1: 0x000d, 0x29c2: 0x000d, 0x29c3: 0x000d, 0x29c4: 0x000d, 0x29c5: 0x000d, -+ 0x29c6: 0x000c, 0x29c7: 0x000c, 0x29c8: 0x000c, 0x29c9: 0x000c, 0x29ca: 0x000c, 0x29cb: 0x000c, -+ 0x29cc: 0x000c, 0x29cd: 0x000c, 0x29ce: 0x000c, 0x29cf: 0x000c, 0x29d0: 0x000c, 0x29d1: 0x000d, -+ 0x29d2: 0x000d, 0x29d3: 0x000d, 0x29d4: 0x000d, 0x29d5: 0x000d, 0x29d6: 0x000d, 0x29d7: 0x000d, -+ 0x29d8: 0x000d, 0x29d9: 0x000d, 0x29da: 0x000d, 0x29db: 0x000d, 0x29dc: 0x000d, 0x29dd: 0x000d, -+ 0x29de: 0x000d, 0x29df: 0x000d, 0x29e0: 0x000d, 0x29e1: 0x000d, 0x29e2: 0x000d, 0x29e3: 0x000d, -+ 0x29e4: 0x000d, 0x29e5: 0x000d, 0x29e6: 0x000d, 0x29e7: 0x000d, 0x29e8: 0x000d, 0x29e9: 0x000d, -+ 0x29ea: 0x000d, 0x29eb: 0x000d, 0x29ec: 0x000d, 0x29ed: 0x000d, 0x29ee: 0x000d, 0x29ef: 0x000d, -+ 0x29f0: 0x0001, 0x29f1: 0x0001, 0x29f2: 0x0001, 0x29f3: 0x0001, 0x29f4: 0x0001, 0x29f5: 0x0001, -+ 0x29f6: 0x0001, 0x29f7: 0x0001, 0x29f8: 0x0001, 0x29f9: 0x0001, 0x29fa: 0x0001, 0x29fb: 0x0001, -+ 0x29fc: 0x0001, 0x29fd: 0x0001, 0x29fe: 0x0001, 0x29ff: 0x0001, -+ // Block 0xa8, offset 0x2a00 -+ 0x2a01: 0x000c, -+ 0x2a38: 0x000c, 0x2a39: 0x000c, 0x2a3a: 0x000c, 0x2a3b: 0x000c, -+ 0x2a3c: 0x000c, 0x2a3d: 0x000c, 0x2a3e: 0x000c, 0x2a3f: 0x000c, -+ // Block 0xa9, offset 0x2a40 -+ 0x2a40: 0x000c, 0x2a41: 0x000c, 0x2a42: 0x000c, 0x2a43: 0x000c, 0x2a44: 0x000c, 0x2a45: 0x000c, -+ 0x2a46: 0x000c, -+ 0x2a52: 0x000a, 0x2a53: 0x000a, 0x2a54: 0x000a, 0x2a55: 0x000a, 0x2a56: 0x000a, 0x2a57: 0x000a, -+ 0x2a58: 0x000a, 0x2a59: 0x000a, 0x2a5a: 0x000a, 0x2a5b: 0x000a, 0x2a5c: 0x000a, 0x2a5d: 0x000a, -+ 0x2a5e: 0x000a, 0x2a5f: 0x000a, 0x2a60: 0x000a, 0x2a61: 0x000a, 0x2a62: 0x000a, 0x2a63: 0x000a, -+ 0x2a64: 0x000a, 0x2a65: 0x000a, -+ 0x2a7f: 0x000c, -+ // Block 0xaa, offset 0x2a80 -+ 0x2a80: 0x000c, 0x2a81: 0x000c, -+ 0x2ab3: 0x000c, 0x2ab4: 0x000c, 0x2ab5: 0x000c, -+ 0x2ab6: 0x000c, 0x2ab9: 0x000c, 0x2aba: 0x000c, -+ // Block 0xab, offset 0x2ac0 -+ 0x2ac0: 0x000c, 0x2ac1: 0x000c, 0x2ac2: 0x000c, -+ 0x2ae7: 0x000c, 0x2ae8: 0x000c, 0x2ae9: 0x000c, -+ 0x2aea: 0x000c, 0x2aeb: 0x000c, 0x2aed: 0x000c, 0x2aee: 0x000c, 0x2aef: 0x000c, -+ 0x2af0: 0x000c, 0x2af1: 0x000c, 0x2af2: 0x000c, 0x2af3: 0x000c, 0x2af4: 0x000c, -+ // Block 0xac, offset 0x2b00 -+ 0x2b33: 0x000c, -+ // Block 0xad, offset 0x2b40 -+ 0x2b40: 0x000c, 0x2b41: 0x000c, -+ 0x2b76: 0x000c, 0x2b77: 0x000c, 0x2b78: 0x000c, 0x2b79: 0x000c, 0x2b7a: 0x000c, 0x2b7b: 0x000c, -+ 0x2b7c: 0x000c, 0x2b7d: 0x000c, 0x2b7e: 0x000c, -+ // Block 0xae, offset 0x2b80 -+ 0x2b89: 0x000c, 0x2b8a: 0x000c, 0x2b8b: 0x000c, -+ 0x2b8c: 0x000c, 0x2b8f: 0x000c, -+ // Block 0xaf, offset 0x2bc0 -+ 0x2bef: 0x000c, -+ 0x2bf0: 0x000c, 0x2bf1: 0x000c, 0x2bf4: 0x000c, -+ 0x2bf6: 0x000c, 0x2bf7: 0x000c, -+ 0x2bfe: 0x000c, -+ // Block 0xb0, offset 0x2c00 -+ 0x2c1f: 0x000c, 0x2c23: 0x000c, -+ 0x2c24: 0x000c, 0x2c25: 0x000c, 0x2c26: 0x000c, 0x2c27: 0x000c, 0x2c28: 0x000c, 0x2c29: 0x000c, -+ 0x2c2a: 0x000c, -+ // Block 0xb1, offset 0x2c40 -+ 0x2c40: 0x000c, -+ 0x2c66: 0x000c, 0x2c67: 0x000c, 0x2c68: 0x000c, 0x2c69: 0x000c, -+ 0x2c6a: 0x000c, 0x2c6b: 0x000c, 0x2c6c: 0x000c, -+ 0x2c70: 0x000c, 0x2c71: 0x000c, 0x2c72: 0x000c, 0x2c73: 0x000c, 0x2c74: 0x000c, -+ // Block 0xb2, offset 0x2c80 -+ 0x2cb8: 0x000c, 0x2cb9: 0x000c, 0x2cba: 0x000c, 0x2cbb: 0x000c, -+ 0x2cbc: 0x000c, 0x2cbd: 0x000c, 0x2cbe: 0x000c, 0x2cbf: 0x000c, -+ // Block 0xb3, offset 0x2cc0 -+ 0x2cc2: 0x000c, 0x2cc3: 0x000c, 0x2cc4: 0x000c, -+ 0x2cc6: 0x000c, -+ 0x2cde: 0x000c, -+ // Block 0xb4, offset 0x2d00 -+ 0x2d33: 0x000c, 0x2d34: 0x000c, 0x2d35: 0x000c, -+ 0x2d36: 0x000c, 0x2d37: 0x000c, 0x2d38: 0x000c, 0x2d3a: 0x000c, -+ 0x2d3f: 0x000c, -+ // Block 0xb5, offset 0x2d40 -+ 0x2d40: 0x000c, 0x2d42: 0x000c, 0x2d43: 0x000c, -+ // Block 0xb6, offset 0x2d80 -+ 0x2db2: 0x000c, 0x2db3: 0x000c, 0x2db4: 0x000c, 0x2db5: 0x000c, -+ 0x2dbc: 0x000c, 0x2dbd: 0x000c, 0x2dbf: 0x000c, -+ // Block 0xb7, offset 0x2dc0 -+ 0x2dc0: 0x000c, -+ 0x2ddc: 0x000c, 0x2ddd: 0x000c, -+ // Block 0xb8, offset 0x2e00 -+ 0x2e33: 0x000c, 0x2e34: 0x000c, 0x2e35: 0x000c, -+ 0x2e36: 0x000c, 0x2e37: 0x000c, 0x2e38: 0x000c, 0x2e39: 0x000c, 0x2e3a: 0x000c, -+ 0x2e3d: 0x000c, 0x2e3f: 0x000c, -+ // Block 0xb9, offset 0x2e40 -+ 0x2e40: 0x000c, -+ 0x2e60: 0x000a, 0x2e61: 0x000a, 0x2e62: 0x000a, 0x2e63: 0x000a, -+ 0x2e64: 0x000a, 0x2e65: 0x000a, 0x2e66: 0x000a, 0x2e67: 0x000a, 0x2e68: 0x000a, 0x2e69: 0x000a, -+ 0x2e6a: 0x000a, 0x2e6b: 0x000a, 0x2e6c: 0x000a, -+ // Block 0xba, offset 0x2e80 -+ 0x2eab: 0x000c, 0x2ead: 0x000c, -+ 0x2eb0: 0x000c, 0x2eb1: 0x000c, 0x2eb2: 0x000c, 0x2eb3: 0x000c, 0x2eb4: 0x000c, 0x2eb5: 0x000c, -+ 0x2eb7: 0x000c, -+ // Block 0xbb, offset 0x2ec0 -+ 0x2edd: 0x000c, -+ 0x2ede: 0x000c, 0x2edf: 0x000c, 0x2ee2: 0x000c, 0x2ee3: 0x000c, -+ 0x2ee4: 0x000c, 0x2ee5: 0x000c, 0x2ee7: 0x000c, 0x2ee8: 0x000c, 0x2ee9: 0x000c, -+ 0x2eea: 0x000c, 0x2eeb: 0x000c, -+ // Block 0xbc, offset 0x2f00 -+ 0x2f2f: 0x000c, -+ 0x2f30: 0x000c, 0x2f31: 0x000c, 0x2f32: 0x000c, 0x2f33: 0x000c, 0x2f34: 0x000c, 0x2f35: 0x000c, -+ 0x2f36: 0x000c, 0x2f37: 0x000c, 0x2f39: 0x000c, 0x2f3a: 0x000c, -+ // Block 0xbd, offset 0x2f40 -+ 0x2f7b: 0x000c, -+ 0x2f7c: 0x000c, 0x2f7e: 0x000c, -+ // Block 0xbe, offset 0x2f80 -+ 0x2f83: 0x000c, -+ // Block 0xbf, offset 0x2fc0 -+ 0x2fd4: 0x000c, 0x2fd5: 0x000c, 0x2fd6: 0x000c, 0x2fd7: 0x000c, -+ 0x2fda: 0x000c, 0x2fdb: 0x000c, -+ 0x2fe0: 0x000c, -+ // Block 0xc0, offset 0x3000 -+ 0x3001: 0x000c, 0x3002: 0x000c, 0x3003: 0x000c, 0x3004: 0x000c, 0x3005: 0x000c, -+ 0x3006: 0x000c, 0x3009: 0x000c, 0x300a: 0x000c, -+ 0x3033: 0x000c, 0x3034: 0x000c, 0x3035: 0x000c, -+ 0x3036: 0x000c, 0x3037: 0x000c, 0x3038: 0x000c, 0x303b: 0x000c, -+ 0x303c: 0x000c, 0x303d: 0x000c, 0x303e: 0x000c, -+ // Block 0xc1, offset 0x3040 -+ 0x3047: 0x000c, -+ 0x3051: 0x000c, -+ 0x3052: 0x000c, 0x3053: 0x000c, 0x3054: 0x000c, 0x3055: 0x000c, 0x3056: 0x000c, -+ 0x3059: 0x000c, 0x305a: 0x000c, 0x305b: 0x000c, -+ // Block 0xc2, offset 0x3080 -+ 0x308a: 0x000c, 0x308b: 0x000c, -+ 0x308c: 0x000c, 0x308d: 0x000c, 0x308e: 0x000c, 0x308f: 0x000c, 0x3090: 0x000c, 0x3091: 0x000c, -+ 0x3092: 0x000c, 0x3093: 0x000c, 0x3094: 0x000c, 0x3095: 0x000c, 0x3096: 0x000c, -+ 0x3098: 0x000c, 0x3099: 0x000c, -+ // Block 0xc3, offset 0x30c0 -+ 0x30f0: 0x000c, 0x30f1: 0x000c, 0x30f2: 0x000c, 0x30f3: 0x000c, 0x30f4: 0x000c, 0x30f5: 0x000c, -+ 0x30f6: 0x000c, 0x30f8: 0x000c, 0x30f9: 0x000c, 0x30fa: 0x000c, 0x30fb: 0x000c, -+ 0x30fc: 0x000c, 0x30fd: 0x000c, -+ // Block 0xc4, offset 0x3100 -+ 0x3112: 0x000c, 0x3113: 0x000c, 0x3114: 0x000c, 0x3115: 0x000c, 0x3116: 0x000c, 0x3117: 0x000c, -+ 0x3118: 0x000c, 0x3119: 0x000c, 0x311a: 0x000c, 0x311b: 0x000c, 0x311c: 0x000c, 0x311d: 0x000c, -+ 0x311e: 0x000c, 0x311f: 0x000c, 0x3120: 0x000c, 0x3121: 0x000c, 0x3122: 0x000c, 0x3123: 0x000c, -+ 0x3124: 0x000c, 0x3125: 0x000c, 0x3126: 0x000c, 0x3127: 0x000c, -+ 0x312a: 0x000c, 0x312b: 0x000c, 0x312c: 0x000c, 0x312d: 0x000c, 0x312e: 0x000c, 0x312f: 0x000c, -+ 0x3130: 0x000c, 0x3132: 0x000c, 0x3133: 0x000c, 0x3135: 0x000c, -+ 0x3136: 0x000c, -+ // Block 0xc5, offset 0x3140 -+ 0x3171: 0x000c, 0x3172: 0x000c, 0x3173: 0x000c, 0x3174: 0x000c, 0x3175: 0x000c, -+ 0x3176: 0x000c, 0x317a: 0x000c, -+ 0x317c: 0x000c, 0x317d: 0x000c, 0x317f: 0x000c, -+ // Block 0xc6, offset 0x3180 -+ 0x3180: 0x000c, 0x3181: 0x000c, 0x3182: 0x000c, 0x3183: 0x000c, 0x3184: 0x000c, 0x3185: 0x000c, -+ 0x3187: 0x000c, -+ // Block 0xc7, offset 0x31c0 -+ 0x31d0: 0x000c, 0x31d1: 0x000c, -+ 0x31d5: 0x000c, 0x31d7: 0x000c, -+ // Block 0xc8, offset 0x3200 -+ 0x3233: 0x000c, 0x3234: 0x000c, -+ // Block 0xc9, offset 0x3240 -+ 0x3255: 0x000a, 0x3256: 0x000a, 0x3257: 0x000a, -+ 0x3258: 0x000a, 0x3259: 0x000a, 0x325a: 0x000a, 0x325b: 0x000a, 0x325c: 0x000a, 0x325d: 0x0004, -+ 0x325e: 0x0004, 0x325f: 0x0004, 0x3260: 0x0004, 0x3261: 0x000a, 0x3262: 0x000a, 0x3263: 0x000a, -+ 0x3264: 0x000a, 0x3265: 0x000a, 0x3266: 0x000a, 0x3267: 0x000a, 0x3268: 0x000a, 0x3269: 0x000a, -+ 0x326a: 0x000a, 0x326b: 0x000a, 0x326c: 0x000a, 0x326d: 0x000a, 0x326e: 0x000a, 0x326f: 0x000a, -+ 0x3270: 0x000a, 0x3271: 0x000a, -+ // Block 0xca, offset 0x3280 -+ 0x32b0: 0x000c, 0x32b1: 0x000c, 0x32b2: 0x000c, 0x32b3: 0x000c, 0x32b4: 0x000c, -+ // Block 0xcb, offset 0x32c0 -+ 0x32f0: 0x000c, 0x32f1: 0x000c, 0x32f2: 0x000c, 0x32f3: 0x000c, 0x32f4: 0x000c, 0x32f5: 0x000c, -+ 0x32f6: 0x000c, -+ // Block 0xcc, offset 0x3300 -+ 0x330f: 0x000c, -+ // Block 0xcd, offset 0x3340 -+ 0x334f: 0x000c, 0x3350: 0x000c, 0x3351: 0x000c, -+ 0x3352: 0x000c, -+ // Block 0xce, offset 0x3380 -+ 0x33a2: 0x000a, -+ 0x33a4: 0x000c, -+ // Block 0xcf, offset 0x33c0 -+ 0x33dd: 0x000c, -+ 0x33de: 0x000c, 0x33e0: 0x000b, 0x33e1: 0x000b, 0x33e2: 0x000b, 0x33e3: 0x000b, -+ // Block 0xd0, offset 0x3400 -+ 0x3427: 0x000c, 0x3428: 0x000c, 0x3429: 0x000c, -+ 0x3433: 0x000b, 0x3434: 0x000b, 0x3435: 0x000b, -+ 0x3436: 0x000b, 0x3437: 0x000b, 0x3438: 0x000b, 0x3439: 0x000b, 0x343a: 0x000b, 0x343b: 0x000c, -+ 0x343c: 0x000c, 0x343d: 0x000c, 0x343e: 0x000c, 0x343f: 0x000c, -+ // Block 0xd1, offset 0x3440 -+ 0x3440: 0x000c, 0x3441: 0x000c, 0x3442: 0x000c, 0x3445: 0x000c, -+ 0x3446: 0x000c, 0x3447: 0x000c, 0x3448: 0x000c, 0x3449: 0x000c, 0x344a: 0x000c, 0x344b: 0x000c, -+ 0x346a: 0x000c, 0x346b: 0x000c, 0x346c: 0x000c, 0x346d: 0x000c, -+ // Block 0xd2, offset 0x3480 -+ 0x3480: 0x000a, 0x3481: 0x000a, 0x3482: 0x000c, 0x3483: 0x000c, 0x3484: 0x000c, 0x3485: 0x000a, -+ // Block 0xd3, offset 0x34c0 -+ 0x34c0: 0x000a, 0x34c1: 0x000a, 0x34c2: 0x000a, 0x34c3: 0x000a, 0x34c4: 0x000a, 0x34c5: 0x000a, -+ 0x34c6: 0x000a, 0x34c7: 0x000a, 0x34c8: 0x000a, 0x34c9: 0x000a, 0x34ca: 0x000a, 0x34cb: 0x000a, -+ 0x34cc: 0x000a, 0x34cd: 0x000a, 0x34ce: 0x000a, 0x34cf: 0x000a, 0x34d0: 0x000a, 0x34d1: 0x000a, -+ 0x34d2: 0x000a, 0x34d3: 0x000a, 0x34d4: 0x000a, 0x34d5: 0x000a, 0x34d6: 0x000a, -+ // Block 0xd4, offset 0x3500 -+ 0x351b: 0x000a, -+ // Block 0xd5, offset 0x3540 -+ 0x3555: 0x000a, -+ // Block 0xd6, offset 0x3580 -+ 0x358f: 0x000a, -+ // Block 0xd7, offset 0x35c0 -+ 0x35c9: 0x000a, -+ // Block 0xd8, offset 0x3600 -+ 0x3603: 0x000a, -+ 0x360e: 0x0002, 0x360f: 0x0002, 0x3610: 0x0002, 0x3611: 0x0002, -+ 0x3612: 0x0002, 0x3613: 0x0002, 0x3614: 0x0002, 0x3615: 0x0002, 0x3616: 0x0002, 0x3617: 0x0002, -+ 0x3618: 0x0002, 0x3619: 0x0002, 0x361a: 0x0002, 0x361b: 0x0002, 0x361c: 0x0002, 0x361d: 0x0002, -+ 0x361e: 0x0002, 0x361f: 0x0002, 0x3620: 0x0002, 0x3621: 0x0002, 0x3622: 0x0002, 0x3623: 0x0002, -+ 0x3624: 0x0002, 0x3625: 0x0002, 0x3626: 0x0002, 0x3627: 0x0002, 0x3628: 0x0002, 0x3629: 0x0002, -+ 0x362a: 0x0002, 0x362b: 0x0002, 0x362c: 0x0002, 0x362d: 0x0002, 0x362e: 0x0002, 0x362f: 0x0002, -+ 0x3630: 0x0002, 0x3631: 0x0002, 0x3632: 0x0002, 0x3633: 0x0002, 0x3634: 0x0002, 0x3635: 0x0002, -+ 0x3636: 0x0002, 0x3637: 0x0002, 0x3638: 0x0002, 0x3639: 0x0002, 0x363a: 0x0002, 0x363b: 0x0002, -+ 0x363c: 0x0002, 0x363d: 0x0002, 0x363e: 0x0002, 0x363f: 0x0002, -+ // Block 0xd9, offset 0x3640 -+ 0x3640: 0x000c, 0x3641: 0x000c, 0x3642: 0x000c, 0x3643: 0x000c, 0x3644: 0x000c, 0x3645: 0x000c, -+ 0x3646: 0x000c, 0x3647: 0x000c, 0x3648: 0x000c, 0x3649: 0x000c, 0x364a: 0x000c, 0x364b: 0x000c, -+ 0x364c: 0x000c, 0x364d: 0x000c, 0x364e: 0x000c, 0x364f: 0x000c, 0x3650: 0x000c, 0x3651: 0x000c, -+ 0x3652: 0x000c, 0x3653: 0x000c, 0x3654: 0x000c, 0x3655: 0x000c, 0x3656: 0x000c, 0x3657: 0x000c, -+ 0x3658: 0x000c, 0x3659: 0x000c, 0x365a: 0x000c, 0x365b: 0x000c, 0x365c: 0x000c, 0x365d: 0x000c, -+ 0x365e: 0x000c, 0x365f: 0x000c, 0x3660: 0x000c, 0x3661: 0x000c, 0x3662: 0x000c, 0x3663: 0x000c, -+ 0x3664: 0x000c, 0x3665: 0x000c, 0x3666: 0x000c, 0x3667: 0x000c, 0x3668: 0x000c, 0x3669: 0x000c, -+ 0x366a: 0x000c, 0x366b: 0x000c, 0x366c: 0x000c, 0x366d: 0x000c, 0x366e: 0x000c, 0x366f: 0x000c, -+ 0x3670: 0x000c, 0x3671: 0x000c, 0x3672: 0x000c, 0x3673: 0x000c, 0x3674: 0x000c, 0x3675: 0x000c, -+ 0x3676: 0x000c, 0x367b: 0x000c, -+ 0x367c: 0x000c, 0x367d: 0x000c, 0x367e: 0x000c, 0x367f: 0x000c, -+ // Block 0xda, offset 0x3680 -+ 0x3680: 0x000c, 0x3681: 0x000c, 0x3682: 0x000c, 0x3683: 0x000c, 0x3684: 0x000c, 0x3685: 0x000c, -+ 0x3686: 0x000c, 0x3687: 0x000c, 0x3688: 0x000c, 0x3689: 0x000c, 0x368a: 0x000c, 0x368b: 0x000c, -+ 0x368c: 0x000c, 0x368d: 0x000c, 0x368e: 0x000c, 0x368f: 0x000c, 0x3690: 0x000c, 0x3691: 0x000c, -+ 0x3692: 0x000c, 0x3693: 0x000c, 0x3694: 0x000c, 0x3695: 0x000c, 0x3696: 0x000c, 0x3697: 0x000c, -+ 0x3698: 0x000c, 0x3699: 0x000c, 0x369a: 0x000c, 0x369b: 0x000c, 0x369c: 0x000c, 0x369d: 0x000c, -+ 0x369e: 0x000c, 0x369f: 0x000c, 0x36a0: 0x000c, 0x36a1: 0x000c, 0x36a2: 0x000c, 0x36a3: 0x000c, -+ 0x36a4: 0x000c, 0x36a5: 0x000c, 0x36a6: 0x000c, 0x36a7: 0x000c, 0x36a8: 0x000c, 0x36a9: 0x000c, -+ 0x36aa: 0x000c, 0x36ab: 0x000c, 0x36ac: 0x000c, -+ 0x36b5: 0x000c, -+ // Block 0xdb, offset 0x36c0 -+ 0x36c4: 0x000c, -+ 0x36db: 0x000c, 0x36dc: 0x000c, 0x36dd: 0x000c, -+ 0x36de: 0x000c, 0x36df: 0x000c, 0x36e1: 0x000c, 0x36e2: 0x000c, 0x36e3: 0x000c, -+ 0x36e4: 0x000c, 0x36e5: 0x000c, 0x36e6: 0x000c, 0x36e7: 0x000c, 0x36e8: 0x000c, 0x36e9: 0x000c, -+ 0x36ea: 0x000c, 0x36eb: 0x000c, 0x36ec: 0x000c, 0x36ed: 0x000c, 0x36ee: 0x000c, 0x36ef: 0x000c, -+ // Block 0xdc, offset 0x3700 -+ 0x3700: 0x000c, 0x3701: 0x000c, 0x3702: 0x000c, 0x3703: 0x000c, 0x3704: 0x000c, 0x3705: 0x000c, -+ 0x3706: 0x000c, 0x3708: 0x000c, 0x3709: 0x000c, 0x370a: 0x000c, 0x370b: 0x000c, -+ 0x370c: 0x000c, 0x370d: 0x000c, 0x370e: 0x000c, 0x370f: 0x000c, 0x3710: 0x000c, 0x3711: 0x000c, -+ 0x3712: 0x000c, 0x3713: 0x000c, 0x3714: 0x000c, 0x3715: 0x000c, 0x3716: 0x000c, 0x3717: 0x000c, -+ 0x3718: 0x000c, 0x371b: 0x000c, 0x371c: 0x000c, 0x371d: 0x000c, -+ 0x371e: 0x000c, 0x371f: 0x000c, 0x3720: 0x000c, 0x3721: 0x000c, 0x3723: 0x000c, -+ 0x3724: 0x000c, 0x3726: 0x000c, 0x3727: 0x000c, 0x3728: 0x000c, 0x3729: 0x000c, -+ 0x372a: 0x000c, -+ // Block 0xdd, offset 0x3740 -+ 0x376c: 0x000c, 0x376d: 0x000c, 0x376e: 0x000c, 0x376f: 0x000c, -+ 0x377f: 0x0004, -+ // Block 0xde, offset 0x3780 -+ 0x3780: 0x0001, 0x3781: 0x0001, 0x3782: 0x0001, 0x3783: 0x0001, 0x3784: 0x0001, 0x3785: 0x0001, -+ 0x3786: 0x0001, 0x3787: 0x0001, 0x3788: 0x0001, 0x3789: 0x0001, 0x378a: 0x0001, 0x378b: 0x0001, -+ 0x378c: 0x0001, 0x378d: 0x0001, 0x378e: 0x0001, 0x378f: 0x0001, 0x3790: 0x000c, 0x3791: 0x000c, -+ 0x3792: 0x000c, 0x3793: 0x000c, 0x3794: 0x000c, 0x3795: 0x000c, 0x3796: 0x000c, 0x3797: 0x0001, -+ 0x3798: 0x0001, 0x3799: 0x0001, 0x379a: 0x0001, 0x379b: 0x0001, 0x379c: 0x0001, 0x379d: 0x0001, -+ 0x379e: 0x0001, 0x379f: 0x0001, 0x37a0: 0x0001, 0x37a1: 0x0001, 0x37a2: 0x0001, 0x37a3: 0x0001, -+ 0x37a4: 0x0001, 0x37a5: 0x0001, 0x37a6: 0x0001, 0x37a7: 0x0001, 0x37a8: 0x0001, 0x37a9: 0x0001, -+ 0x37aa: 0x0001, 0x37ab: 0x0001, 0x37ac: 0x0001, 0x37ad: 0x0001, 0x37ae: 0x0001, 0x37af: 0x0001, -+ 0x37b0: 0x0001, 0x37b1: 0x0001, 0x37b2: 0x0001, 0x37b3: 0x0001, 0x37b4: 0x0001, 0x37b5: 0x0001, -+ 0x37b6: 0x0001, 0x37b7: 0x0001, 0x37b8: 0x0001, 0x37b9: 0x0001, 0x37ba: 0x0001, 0x37bb: 0x0001, -+ 0x37bc: 0x0001, 0x37bd: 0x0001, 0x37be: 0x0001, 0x37bf: 0x0001, -+ // Block 0xdf, offset 0x37c0 -+ 0x37c0: 0x0001, 0x37c1: 0x0001, 0x37c2: 0x0001, 0x37c3: 0x0001, 0x37c4: 0x000c, 0x37c5: 0x000c, -+ 0x37c6: 0x000c, 0x37c7: 0x000c, 0x37c8: 0x000c, 0x37c9: 0x000c, 0x37ca: 0x000c, 0x37cb: 0x0001, -+ 0x37cc: 0x0001, 0x37cd: 0x0001, 0x37ce: 0x0001, 0x37cf: 0x0001, 0x37d0: 0x0001, 0x37d1: 0x0001, -+ 0x37d2: 0x0001, 0x37d3: 0x0001, 0x37d4: 0x0001, 0x37d5: 0x0001, 0x37d6: 0x0001, 0x37d7: 0x0001, -+ 0x37d8: 0x0001, 0x37d9: 0x0001, 0x37da: 0x0001, 0x37db: 0x0001, 0x37dc: 0x0001, 0x37dd: 0x0001, -+ 0x37de: 0x0001, 0x37df: 0x0001, 0x37e0: 0x0001, 0x37e1: 0x0001, 0x37e2: 0x0001, 0x37e3: 0x0001, -+ 0x37e4: 0x0001, 0x37e5: 0x0001, 0x37e6: 0x0001, 0x37e7: 0x0001, 0x37e8: 0x0001, 0x37e9: 0x0001, -+ 0x37ea: 0x0001, 0x37eb: 0x0001, 0x37ec: 0x0001, 0x37ed: 0x0001, 0x37ee: 0x0001, 0x37ef: 0x0001, -+ 0x37f0: 0x0001, 0x37f1: 0x0001, 0x37f2: 0x0001, 0x37f3: 0x0001, 0x37f4: 0x0001, 0x37f5: 0x0001, -+ 0x37f6: 0x0001, 0x37f7: 0x0001, 0x37f8: 0x0001, 0x37f9: 0x0001, 0x37fa: 0x0001, 0x37fb: 0x0001, -+ 0x37fc: 0x0001, 0x37fd: 0x0001, 0x37fe: 0x0001, 0x37ff: 0x0001, -+ // Block 0xe0, offset 0x3800 -+ 0x3800: 0x000d, 0x3801: 0x000d, 0x3802: 0x000d, 0x3803: 0x000d, 0x3804: 0x000d, 0x3805: 0x000d, -+ 0x3806: 0x000d, 0x3807: 0x000d, 0x3808: 0x000d, 0x3809: 0x000d, 0x380a: 0x000d, 0x380b: 0x000d, -+ 0x380c: 0x000d, 0x380d: 0x000d, 0x380e: 0x000d, 0x380f: 0x000d, 0x3810: 0x0001, 0x3811: 0x0001, -+ 0x3812: 0x0001, 0x3813: 0x0001, 0x3814: 0x0001, 0x3815: 0x0001, 0x3816: 0x0001, 0x3817: 0x0001, -+ 0x3818: 0x0001, 0x3819: 0x0001, 0x381a: 0x0001, 0x381b: 0x0001, 0x381c: 0x0001, 0x381d: 0x0001, -+ 0x381e: 0x0001, 0x381f: 0x0001, 0x3820: 0x0001, 0x3821: 0x0001, 0x3822: 0x0001, 0x3823: 0x0001, -+ 0x3824: 0x0001, 0x3825: 0x0001, 0x3826: 0x0001, 0x3827: 0x0001, 0x3828: 0x0001, 0x3829: 0x0001, -+ 0x382a: 0x0001, 0x382b: 0x0001, 0x382c: 0x0001, 0x382d: 0x0001, 0x382e: 0x0001, 0x382f: 0x0001, -+ 0x3830: 0x0001, 0x3831: 0x0001, 0x3832: 0x0001, 0x3833: 0x0001, 0x3834: 0x0001, 0x3835: 0x0001, -+ 0x3836: 0x0001, 0x3837: 0x0001, 0x3838: 0x0001, 0x3839: 0x0001, 0x383a: 0x0001, 0x383b: 0x0001, -+ 0x383c: 0x0001, 0x383d: 0x0001, 0x383e: 0x0001, 0x383f: 0x0001, -+ // Block 0xe1, offset 0x3840 -+ 0x3840: 0x000d, 0x3841: 0x000d, 0x3842: 0x000d, 0x3843: 0x000d, 0x3844: 0x000d, 0x3845: 0x000d, -+ 0x3846: 0x000d, 0x3847: 0x000d, 0x3848: 0x000d, 0x3849: 0x000d, 0x384a: 0x000d, 0x384b: 0x000d, -+ 0x384c: 0x000d, 0x384d: 0x000d, 0x384e: 0x000d, 0x384f: 0x000d, 0x3850: 0x000d, 0x3851: 0x000d, -+ 0x3852: 0x000d, 0x3853: 0x000d, 0x3854: 0x000d, 0x3855: 0x000d, 0x3856: 0x000d, 0x3857: 0x000d, -+ 0x3858: 0x000d, 0x3859: 0x000d, 0x385a: 0x000d, 0x385b: 0x000d, 0x385c: 0x000d, 0x385d: 0x000d, -+ 0x385e: 0x000d, 0x385f: 0x000d, 0x3860: 0x000d, 0x3861: 0x000d, 0x3862: 0x000d, 0x3863: 0x000d, -+ 0x3864: 0x000d, 0x3865: 0x000d, 0x3866: 0x000d, 0x3867: 0x000d, 0x3868: 0x000d, 0x3869: 0x000d, -+ 0x386a: 0x000d, 0x386b: 0x000d, 0x386c: 0x000d, 0x386d: 0x000d, 0x386e: 0x000d, 0x386f: 0x000d, -+ 0x3870: 0x000a, 0x3871: 0x000a, 0x3872: 0x000d, 0x3873: 0x000d, 0x3874: 0x000d, 0x3875: 0x000d, -+ 0x3876: 0x000d, 0x3877: 0x000d, 0x3878: 0x000d, 0x3879: 0x000d, 0x387a: 0x000d, 0x387b: 0x000d, -+ 0x387c: 0x000d, 0x387d: 0x000d, 0x387e: 0x000d, 0x387f: 0x000d, -+ // Block 0xe2, offset 0x3880 -+ 0x3880: 0x000a, 0x3881: 0x000a, 0x3882: 0x000a, 0x3883: 0x000a, 0x3884: 0x000a, 0x3885: 0x000a, -+ 0x3886: 0x000a, 0x3887: 0x000a, 0x3888: 0x000a, 0x3889: 0x000a, 0x388a: 0x000a, 0x388b: 0x000a, -+ 0x388c: 0x000a, 0x388d: 0x000a, 0x388e: 0x000a, 0x388f: 0x000a, 0x3890: 0x000a, 0x3891: 0x000a, -+ 0x3892: 0x000a, 0x3893: 0x000a, 0x3894: 0x000a, 0x3895: 0x000a, 0x3896: 0x000a, 0x3897: 0x000a, -+ 0x3898: 0x000a, 0x3899: 0x000a, 0x389a: 0x000a, 0x389b: 0x000a, 0x389c: 0x000a, 0x389d: 0x000a, -+ 0x389e: 0x000a, 0x389f: 0x000a, 0x38a0: 0x000a, 0x38a1: 0x000a, 0x38a2: 0x000a, 0x38a3: 0x000a, -+ 0x38a4: 0x000a, 0x38a5: 0x000a, 0x38a6: 0x000a, 0x38a7: 0x000a, 0x38a8: 0x000a, 0x38a9: 0x000a, -+ 0x38aa: 0x000a, 0x38ab: 0x000a, -+ 0x38b0: 0x000a, 0x38b1: 0x000a, 0x38b2: 0x000a, 0x38b3: 0x000a, 0x38b4: 0x000a, 0x38b5: 0x000a, -+ 0x38b6: 0x000a, 0x38b7: 0x000a, 0x38b8: 0x000a, 0x38b9: 0x000a, 0x38ba: 0x000a, 0x38bb: 0x000a, -+ 0x38bc: 0x000a, 0x38bd: 0x000a, 0x38be: 0x000a, 0x38bf: 0x000a, -+ // Block 0xe3, offset 0x38c0 -+ 0x38c0: 0x000a, 0x38c1: 0x000a, 0x38c2: 0x000a, 0x38c3: 0x000a, 0x38c4: 0x000a, 0x38c5: 0x000a, -+ 0x38c6: 0x000a, 0x38c7: 0x000a, 0x38c8: 0x000a, 0x38c9: 0x000a, 0x38ca: 0x000a, 0x38cb: 0x000a, -+ 0x38cc: 0x000a, 0x38cd: 0x000a, 0x38ce: 0x000a, 0x38cf: 0x000a, 0x38d0: 0x000a, 0x38d1: 0x000a, -+ 0x38d2: 0x000a, 0x38d3: 0x000a, -+ 0x38e0: 0x000a, 0x38e1: 0x000a, 0x38e2: 0x000a, 0x38e3: 0x000a, -+ 0x38e4: 0x000a, 0x38e5: 0x000a, 0x38e6: 0x000a, 0x38e7: 0x000a, 0x38e8: 0x000a, 0x38e9: 0x000a, -+ 0x38ea: 0x000a, 0x38eb: 0x000a, 0x38ec: 0x000a, 0x38ed: 0x000a, 0x38ee: 0x000a, -+ 0x38f1: 0x000a, 0x38f2: 0x000a, 0x38f3: 0x000a, 0x38f4: 0x000a, 0x38f5: 0x000a, -+ 0x38f6: 0x000a, 0x38f7: 0x000a, 0x38f8: 0x000a, 0x38f9: 0x000a, 0x38fa: 0x000a, 0x38fb: 0x000a, -+ 0x38fc: 0x000a, 0x38fd: 0x000a, 0x38fe: 0x000a, 0x38ff: 0x000a, -+ // Block 0xe4, offset 0x3900 -+ 0x3901: 0x000a, 0x3902: 0x000a, 0x3903: 0x000a, 0x3904: 0x000a, 0x3905: 0x000a, -+ 0x3906: 0x000a, 0x3907: 0x000a, 0x3908: 0x000a, 0x3909: 0x000a, 0x390a: 0x000a, 0x390b: 0x000a, -+ 0x390c: 0x000a, 0x390d: 0x000a, 0x390e: 0x000a, 0x390f: 0x000a, 0x3911: 0x000a, -+ 0x3912: 0x000a, 0x3913: 0x000a, 0x3914: 0x000a, 0x3915: 0x000a, 0x3916: 0x000a, 0x3917: 0x000a, -+ 0x3918: 0x000a, 0x3919: 0x000a, 0x391a: 0x000a, 0x391b: 0x000a, 0x391c: 0x000a, 0x391d: 0x000a, -+ 0x391e: 0x000a, 0x391f: 0x000a, 0x3920: 0x000a, 0x3921: 0x000a, 0x3922: 0x000a, 0x3923: 0x000a, -+ 0x3924: 0x000a, 0x3925: 0x000a, 0x3926: 0x000a, 0x3927: 0x000a, 0x3928: 0x000a, 0x3929: 0x000a, -+ 0x392a: 0x000a, 0x392b: 0x000a, 0x392c: 0x000a, 0x392d: 0x000a, 0x392e: 0x000a, 0x392f: 0x000a, -+ 0x3930: 0x000a, 0x3931: 0x000a, 0x3932: 0x000a, 0x3933: 0x000a, 0x3934: 0x000a, 0x3935: 0x000a, -+ // Block 0xe5, offset 0x3940 -+ 0x3940: 0x0002, 0x3941: 0x0002, 0x3942: 0x0002, 0x3943: 0x0002, 0x3944: 0x0002, 0x3945: 0x0002, -+ 0x3946: 0x0002, 0x3947: 0x0002, 0x3948: 0x0002, 0x3949: 0x0002, 0x394a: 0x0002, 0x394b: 0x000a, -+ 0x394c: 0x000a, 0x394d: 0x000a, 0x394e: 0x000a, 0x394f: 0x000a, -+ 0x396f: 0x000a, -+ // Block 0xe6, offset 0x3980 -+ 0x39aa: 0x000a, 0x39ab: 0x000a, 0x39ac: 0x000a, 0x39ad: 0x000a, 0x39ae: 0x000a, 0x39af: 0x000a, -+ // Block 0xe7, offset 0x39c0 -+ 0x39ed: 0x000a, -+ // Block 0xe8, offset 0x3a00 -+ 0x3a20: 0x000a, 0x3a21: 0x000a, 0x3a22: 0x000a, 0x3a23: 0x000a, -+ 0x3a24: 0x000a, 0x3a25: 0x000a, -+ // Block 0xe9, offset 0x3a40 -+ 0x3a40: 0x000a, 0x3a41: 0x000a, 0x3a42: 0x000a, 0x3a43: 0x000a, 0x3a44: 0x000a, 0x3a45: 0x000a, -+ 0x3a46: 0x000a, 0x3a47: 0x000a, 0x3a48: 0x000a, 0x3a49: 0x000a, 0x3a4a: 0x000a, 0x3a4b: 0x000a, -+ 0x3a4c: 0x000a, 0x3a4d: 0x000a, 0x3a4e: 0x000a, 0x3a4f: 0x000a, 0x3a50: 0x000a, 0x3a51: 0x000a, -+ 0x3a52: 0x000a, 0x3a53: 0x000a, 0x3a54: 0x000a, 0x3a55: 0x000a, 0x3a56: 0x000a, 0x3a57: 0x000a, -+ 0x3a60: 0x000a, 0x3a61: 0x000a, 0x3a62: 0x000a, 0x3a63: 0x000a, -+ 0x3a64: 0x000a, 0x3a65: 0x000a, 0x3a66: 0x000a, 0x3a67: 0x000a, 0x3a68: 0x000a, 0x3a69: 0x000a, -+ 0x3a6a: 0x000a, 0x3a6b: 0x000a, 0x3a6c: 0x000a, -+ 0x3a70: 0x000a, 0x3a71: 0x000a, 0x3a72: 0x000a, 0x3a73: 0x000a, 0x3a74: 0x000a, 0x3a75: 0x000a, -+ 0x3a76: 0x000a, 0x3a77: 0x000a, 0x3a78: 0x000a, 0x3a79: 0x000a, 0x3a7a: 0x000a, 0x3a7b: 0x000a, -+ 0x3a7c: 0x000a, -+ // Block 0xea, offset 0x3a80 -+ 0x3a80: 0x000a, 0x3a81: 0x000a, 0x3a82: 0x000a, 0x3a83: 0x000a, 0x3a84: 0x000a, 0x3a85: 0x000a, -+ 0x3a86: 0x000a, 0x3a87: 0x000a, 0x3a88: 0x000a, 0x3a89: 0x000a, 0x3a8a: 0x000a, 0x3a8b: 0x000a, -+ 0x3a8c: 0x000a, 0x3a8d: 0x000a, 0x3a8e: 0x000a, 0x3a8f: 0x000a, 0x3a90: 0x000a, 0x3a91: 0x000a, -+ 0x3a92: 0x000a, 0x3a93: 0x000a, 0x3a94: 0x000a, 0x3a95: 0x000a, 0x3a96: 0x000a, 0x3a97: 0x000a, -+ 0x3a98: 0x000a, -+ 0x3aa0: 0x000a, 0x3aa1: 0x000a, 0x3aa2: 0x000a, 0x3aa3: 0x000a, -+ 0x3aa4: 0x000a, 0x3aa5: 0x000a, 0x3aa6: 0x000a, 0x3aa7: 0x000a, 0x3aa8: 0x000a, 0x3aa9: 0x000a, -+ 0x3aaa: 0x000a, 0x3aab: 0x000a, -+ // Block 0xeb, offset 0x3ac0 -+ 0x3ac0: 0x000a, 0x3ac1: 0x000a, 0x3ac2: 0x000a, 0x3ac3: 0x000a, 0x3ac4: 0x000a, 0x3ac5: 0x000a, -+ 0x3ac6: 0x000a, 0x3ac7: 0x000a, 0x3ac8: 0x000a, 0x3ac9: 0x000a, 0x3aca: 0x000a, 0x3acb: 0x000a, -+ 0x3ad0: 0x000a, 0x3ad1: 0x000a, -+ 0x3ad2: 0x000a, 0x3ad3: 0x000a, 0x3ad4: 0x000a, 0x3ad5: 0x000a, 0x3ad6: 0x000a, 0x3ad7: 0x000a, -+ 0x3ad8: 0x000a, 0x3ad9: 0x000a, 0x3ada: 0x000a, 0x3adb: 0x000a, 0x3adc: 0x000a, 0x3add: 0x000a, -+ 0x3ade: 0x000a, 0x3adf: 0x000a, 0x3ae0: 0x000a, 0x3ae1: 0x000a, 0x3ae2: 0x000a, 0x3ae3: 0x000a, -+ 0x3ae4: 0x000a, 0x3ae5: 0x000a, 0x3ae6: 0x000a, 0x3ae7: 0x000a, 0x3ae8: 0x000a, 0x3ae9: 0x000a, -+ 0x3aea: 0x000a, 0x3aeb: 0x000a, 0x3aec: 0x000a, 0x3aed: 0x000a, 0x3aee: 0x000a, 0x3aef: 0x000a, -+ 0x3af0: 0x000a, 0x3af1: 0x000a, 0x3af2: 0x000a, 0x3af3: 0x000a, 0x3af4: 0x000a, 0x3af5: 0x000a, -+ 0x3af6: 0x000a, 0x3af7: 0x000a, 0x3af8: 0x000a, 0x3af9: 0x000a, 0x3afa: 0x000a, 0x3afb: 0x000a, -+ 0x3afc: 0x000a, 0x3afd: 0x000a, 0x3afe: 0x000a, 0x3aff: 0x000a, -+ // Block 0xec, offset 0x3b00 -+ 0x3b00: 0x000a, 0x3b01: 0x000a, 0x3b02: 0x000a, 0x3b03: 0x000a, 0x3b04: 0x000a, 0x3b05: 0x000a, -+ 0x3b06: 0x000a, 0x3b07: 0x000a, -+ 0x3b10: 0x000a, 0x3b11: 0x000a, -+ 0x3b12: 0x000a, 0x3b13: 0x000a, 0x3b14: 0x000a, 0x3b15: 0x000a, 0x3b16: 0x000a, 0x3b17: 0x000a, -+ 0x3b18: 0x000a, 0x3b19: 0x000a, -+ 0x3b20: 0x000a, 0x3b21: 0x000a, 0x3b22: 0x000a, 0x3b23: 0x000a, -+ 0x3b24: 0x000a, 0x3b25: 0x000a, 0x3b26: 0x000a, 0x3b27: 0x000a, 0x3b28: 0x000a, 0x3b29: 0x000a, -+ 0x3b2a: 0x000a, 0x3b2b: 0x000a, 0x3b2c: 0x000a, 0x3b2d: 0x000a, 0x3b2e: 0x000a, 0x3b2f: 0x000a, -+ 0x3b30: 0x000a, 0x3b31: 0x000a, 0x3b32: 0x000a, 0x3b33: 0x000a, 0x3b34: 0x000a, 0x3b35: 0x000a, -+ 0x3b36: 0x000a, 0x3b37: 0x000a, 0x3b38: 0x000a, 0x3b39: 0x000a, 0x3b3a: 0x000a, 0x3b3b: 0x000a, -+ 0x3b3c: 0x000a, 0x3b3d: 0x000a, 0x3b3e: 0x000a, 0x3b3f: 0x000a, -+ // Block 0xed, offset 0x3b40 -+ 0x3b40: 0x000a, 0x3b41: 0x000a, 0x3b42: 0x000a, 0x3b43: 0x000a, 0x3b44: 0x000a, 0x3b45: 0x000a, -+ 0x3b46: 0x000a, 0x3b47: 0x000a, -+ 0x3b50: 0x000a, 0x3b51: 0x000a, -+ 0x3b52: 0x000a, 0x3b53: 0x000a, 0x3b54: 0x000a, 0x3b55: 0x000a, 0x3b56: 0x000a, 0x3b57: 0x000a, -+ 0x3b58: 0x000a, 0x3b59: 0x000a, 0x3b5a: 0x000a, 0x3b5b: 0x000a, 0x3b5c: 0x000a, 0x3b5d: 0x000a, -+ 0x3b5e: 0x000a, 0x3b5f: 0x000a, 0x3b60: 0x000a, 0x3b61: 0x000a, 0x3b62: 0x000a, 0x3b63: 0x000a, -+ 0x3b64: 0x000a, 0x3b65: 0x000a, 0x3b66: 0x000a, 0x3b67: 0x000a, 0x3b68: 0x000a, 0x3b69: 0x000a, -+ 0x3b6a: 0x000a, 0x3b6b: 0x000a, 0x3b6c: 0x000a, 0x3b6d: 0x000a, -+ 0x3b70: 0x000a, 0x3b71: 0x000a, -+ // Block 0xee, offset 0x3b80 -+ 0x3b80: 0x000a, 0x3b81: 0x000a, 0x3b82: 0x000a, 0x3b83: 0x000a, 0x3b84: 0x000a, 0x3b85: 0x000a, -+ 0x3b86: 0x000a, 0x3b87: 0x000a, 0x3b88: 0x000a, 0x3b89: 0x000a, 0x3b8a: 0x000a, 0x3b8b: 0x000a, -+ 0x3b8c: 0x000a, 0x3b8d: 0x000a, 0x3b8e: 0x000a, 0x3b8f: 0x000a, 0x3b90: 0x000a, 0x3b91: 0x000a, -+ 0x3b92: 0x000a, 0x3b93: 0x000a, 0x3b94: 0x000a, 0x3b95: 0x000a, 0x3b96: 0x000a, 0x3b97: 0x000a, -+ 0x3b98: 0x000a, 0x3b99: 0x000a, 0x3b9a: 0x000a, 0x3b9b: 0x000a, 0x3b9c: 0x000a, 0x3b9d: 0x000a, -+ 0x3b9e: 0x000a, 0x3b9f: 0x000a, 0x3ba0: 0x000a, 0x3ba1: 0x000a, 0x3ba2: 0x000a, 0x3ba3: 0x000a, -+ 0x3ba4: 0x000a, 0x3ba5: 0x000a, 0x3ba6: 0x000a, 0x3ba7: 0x000a, 0x3ba8: 0x000a, 0x3ba9: 0x000a, -+ 0x3baa: 0x000a, 0x3bab: 0x000a, 0x3bac: 0x000a, 0x3bad: 0x000a, 0x3bae: 0x000a, 0x3baf: 0x000a, -+ 0x3bb0: 0x000a, 0x3bb1: 0x000a, 0x3bb2: 0x000a, 0x3bb3: 0x000a, 0x3bb4: 0x000a, 0x3bb5: 0x000a, -+ 0x3bb6: 0x000a, 0x3bb7: 0x000a, 0x3bb8: 0x000a, 0x3bba: 0x000a, 0x3bbb: 0x000a, -+ 0x3bbc: 0x000a, 0x3bbd: 0x000a, 0x3bbe: 0x000a, 0x3bbf: 0x000a, -+ // Block 0xef, offset 0x3bc0 -+ 0x3bc0: 0x000a, 0x3bc1: 0x000a, 0x3bc2: 0x000a, 0x3bc3: 0x000a, 0x3bc4: 0x000a, 0x3bc5: 0x000a, -+ 0x3bc6: 0x000a, 0x3bc7: 0x000a, 0x3bc8: 0x000a, 0x3bc9: 0x000a, 0x3bca: 0x000a, 0x3bcb: 0x000a, -+ 0x3bcd: 0x000a, 0x3bce: 0x000a, 0x3bcf: 0x000a, 0x3bd0: 0x000a, 0x3bd1: 0x000a, -+ 0x3bd2: 0x000a, 0x3bd3: 0x000a, 0x3bd4: 0x000a, 0x3bd5: 0x000a, 0x3bd6: 0x000a, 0x3bd7: 0x000a, -+ 0x3bd8: 0x000a, 0x3bd9: 0x000a, 0x3bda: 0x000a, 0x3bdb: 0x000a, 0x3bdc: 0x000a, 0x3bdd: 0x000a, -+ 0x3bde: 0x000a, 0x3bdf: 0x000a, 0x3be0: 0x000a, 0x3be1: 0x000a, 0x3be2: 0x000a, 0x3be3: 0x000a, -+ 0x3be4: 0x000a, 0x3be5: 0x000a, 0x3be6: 0x000a, 0x3be7: 0x000a, 0x3be8: 0x000a, 0x3be9: 0x000a, -+ 0x3bea: 0x000a, 0x3beb: 0x000a, 0x3bec: 0x000a, 0x3bed: 0x000a, 0x3bee: 0x000a, 0x3bef: 0x000a, -+ 0x3bf0: 0x000a, 0x3bf1: 0x000a, 0x3bf2: 0x000a, 0x3bf3: 0x000a, 0x3bf4: 0x000a, 0x3bf5: 0x000a, -+ 0x3bf6: 0x000a, 0x3bf7: 0x000a, 0x3bf8: 0x000a, 0x3bf9: 0x000a, 0x3bfa: 0x000a, 0x3bfb: 0x000a, -+ 0x3bfc: 0x000a, 0x3bfd: 0x000a, 0x3bfe: 0x000a, 0x3bff: 0x000a, -+ // Block 0xf0, offset 0x3c00 -+ 0x3c00: 0x000a, 0x3c01: 0x000a, 0x3c02: 0x000a, 0x3c03: 0x000a, 0x3c04: 0x000a, 0x3c05: 0x000a, -+ 0x3c06: 0x000a, 0x3c07: 0x000a, 0x3c08: 0x000a, 0x3c09: 0x000a, 0x3c0a: 0x000a, 0x3c0b: 0x000a, -+ 0x3c0c: 0x000a, 0x3c0d: 0x000a, 0x3c0e: 0x000a, 0x3c0f: 0x000a, 0x3c10: 0x000a, 0x3c11: 0x000a, -+ 0x3c12: 0x000a, 0x3c13: 0x000a, -+ 0x3c20: 0x000a, 0x3c21: 0x000a, 0x3c22: 0x000a, 0x3c23: 0x000a, -+ 0x3c24: 0x000a, 0x3c25: 0x000a, 0x3c26: 0x000a, 0x3c27: 0x000a, 0x3c28: 0x000a, 0x3c29: 0x000a, -+ 0x3c2a: 0x000a, 0x3c2b: 0x000a, 0x3c2c: 0x000a, 0x3c2d: 0x000a, -+ 0x3c30: 0x000a, 0x3c31: 0x000a, 0x3c32: 0x000a, 0x3c33: 0x000a, 0x3c34: 0x000a, -+ 0x3c38: 0x000a, 0x3c39: 0x000a, 0x3c3a: 0x000a, -+ // Block 0xf1, offset 0x3c40 -+ 0x3c40: 0x000a, 0x3c41: 0x000a, 0x3c42: 0x000a, 0x3c43: 0x000a, 0x3c44: 0x000a, 0x3c45: 0x000a, -+ 0x3c46: 0x000a, -+ 0x3c50: 0x000a, 0x3c51: 0x000a, -+ 0x3c52: 0x000a, 0x3c53: 0x000a, 0x3c54: 0x000a, 0x3c55: 0x000a, 0x3c56: 0x000a, 0x3c57: 0x000a, -+ 0x3c58: 0x000a, 0x3c59: 0x000a, 0x3c5a: 0x000a, 0x3c5b: 0x000a, 0x3c5c: 0x000a, 0x3c5d: 0x000a, -+ 0x3c5e: 0x000a, 0x3c5f: 0x000a, 0x3c60: 0x000a, 0x3c61: 0x000a, 0x3c62: 0x000a, 0x3c63: 0x000a, -+ 0x3c64: 0x000a, 0x3c65: 0x000a, 0x3c66: 0x000a, 0x3c67: 0x000a, 0x3c68: 0x000a, -+ 0x3c70: 0x000a, 0x3c71: 0x000a, 0x3c72: 0x000a, 0x3c73: 0x000a, 0x3c74: 0x000a, 0x3c75: 0x000a, -+ 0x3c76: 0x000a, -+ // Block 0xf2, offset 0x3c80 -+ 0x3c80: 0x000a, 0x3c81: 0x000a, 0x3c82: 0x000a, -+ 0x3c90: 0x000a, 0x3c91: 0x000a, -+ 0x3c92: 0x000a, 0x3c93: 0x000a, 0x3c94: 0x000a, 0x3c95: 0x000a, 0x3c96: 0x000a, -+ // Block 0xf3, offset 0x3cc0 -+ 0x3cc0: 0x000a, 0x3cc1: 0x000a, 0x3cc2: 0x000a, 0x3cc3: 0x000a, 0x3cc4: 0x000a, 0x3cc5: 0x000a, -+ 0x3cc6: 0x000a, 0x3cc7: 0x000a, 0x3cc8: 0x000a, 0x3cc9: 0x000a, 0x3cca: 0x000a, 0x3ccb: 0x000a, -+ 0x3ccc: 0x000a, 0x3ccd: 0x000a, 0x3cce: 0x000a, 0x3ccf: 0x000a, 0x3cd0: 0x000a, 0x3cd1: 0x000a, -+ 0x3cd2: 0x000a, 0x3cd4: 0x000a, 0x3cd5: 0x000a, 0x3cd6: 0x000a, 0x3cd7: 0x000a, -+ 0x3cd8: 0x000a, 0x3cd9: 0x000a, 0x3cda: 0x000a, 0x3cdb: 0x000a, 0x3cdc: 0x000a, 0x3cdd: 0x000a, -+ 0x3cde: 0x000a, 0x3cdf: 0x000a, 0x3ce0: 0x000a, 0x3ce1: 0x000a, 0x3ce2: 0x000a, 0x3ce3: 0x000a, -+ 0x3ce4: 0x000a, 0x3ce5: 0x000a, 0x3ce6: 0x000a, 0x3ce7: 0x000a, 0x3ce8: 0x000a, 0x3ce9: 0x000a, -+ 0x3cea: 0x000a, 0x3ceb: 0x000a, 0x3cec: 0x000a, 0x3ced: 0x000a, 0x3cee: 0x000a, 0x3cef: 0x000a, -+ 0x3cf0: 0x000a, 0x3cf1: 0x000a, 0x3cf2: 0x000a, 0x3cf3: 0x000a, 0x3cf4: 0x000a, 0x3cf5: 0x000a, -+ 0x3cf6: 0x000a, 0x3cf7: 0x000a, 0x3cf8: 0x000a, 0x3cf9: 0x000a, 0x3cfa: 0x000a, 0x3cfb: 0x000a, -+ 0x3cfc: 0x000a, 0x3cfd: 0x000a, 0x3cfe: 0x000a, 0x3cff: 0x000a, -+ // Block 0xf4, offset 0x3d00 -+ 0x3d00: 0x000a, 0x3d01: 0x000a, 0x3d02: 0x000a, 0x3d03: 0x000a, 0x3d04: 0x000a, 0x3d05: 0x000a, -+ 0x3d06: 0x000a, 0x3d07: 0x000a, 0x3d08: 0x000a, 0x3d09: 0x000a, 0x3d0a: 0x000a, -+ 0x3d30: 0x0002, 0x3d31: 0x0002, 0x3d32: 0x0002, 0x3d33: 0x0002, 0x3d34: 0x0002, 0x3d35: 0x0002, -+ 0x3d36: 0x0002, 0x3d37: 0x0002, 0x3d38: 0x0002, 0x3d39: 0x0002, -+ // Block 0xf5, offset 0x3d40 -+ 0x3d7e: 0x000b, 0x3d7f: 0x000b, -+ // Block 0xf6, offset 0x3d80 -+ 0x3d80: 0x000b, 0x3d81: 0x000b, 0x3d82: 0x000b, 0x3d83: 0x000b, 0x3d84: 0x000b, 0x3d85: 0x000b, -+ 0x3d86: 0x000b, 0x3d87: 0x000b, 0x3d88: 0x000b, 0x3d89: 0x000b, 0x3d8a: 0x000b, 0x3d8b: 0x000b, -+ 0x3d8c: 0x000b, 0x3d8d: 0x000b, 0x3d8e: 0x000b, 0x3d8f: 0x000b, 0x3d90: 0x000b, 0x3d91: 0x000b, -+ 0x3d92: 0x000b, 0x3d93: 0x000b, 0x3d94: 0x000b, 0x3d95: 0x000b, 0x3d96: 0x000b, 0x3d97: 0x000b, -+ 0x3d98: 0x000b, 0x3d99: 0x000b, 0x3d9a: 0x000b, 0x3d9b: 0x000b, 0x3d9c: 0x000b, 0x3d9d: 0x000b, -+ 0x3d9e: 0x000b, 0x3d9f: 0x000b, 0x3da0: 0x000b, 0x3da1: 0x000b, 0x3da2: 0x000b, 0x3da3: 0x000b, -+ 0x3da4: 0x000b, 0x3da5: 0x000b, 0x3da6: 0x000b, 0x3da7: 0x000b, 0x3da8: 0x000b, 0x3da9: 0x000b, -+ 0x3daa: 0x000b, 0x3dab: 0x000b, 0x3dac: 0x000b, 0x3dad: 0x000b, 0x3dae: 0x000b, 0x3daf: 0x000b, -+ 0x3db0: 0x000b, 0x3db1: 0x000b, 0x3db2: 0x000b, 0x3db3: 0x000b, 0x3db4: 0x000b, 0x3db5: 0x000b, -+ 0x3db6: 0x000b, 0x3db7: 0x000b, 0x3db8: 0x000b, 0x3db9: 0x000b, 0x3dba: 0x000b, 0x3dbb: 0x000b, -+ 0x3dbc: 0x000b, 0x3dbd: 0x000b, 0x3dbe: 0x000b, 0x3dbf: 0x000b, -+ // Block 0xf7, offset 0x3dc0 -+ 0x3dc0: 0x000c, 0x3dc1: 0x000c, 0x3dc2: 0x000c, 0x3dc3: 0x000c, 0x3dc4: 0x000c, 0x3dc5: 0x000c, -+ 0x3dc6: 0x000c, 0x3dc7: 0x000c, 0x3dc8: 0x000c, 0x3dc9: 0x000c, 0x3dca: 0x000c, 0x3dcb: 0x000c, -+ 0x3dcc: 0x000c, 0x3dcd: 0x000c, 0x3dce: 0x000c, 0x3dcf: 0x000c, 0x3dd0: 0x000c, 0x3dd1: 0x000c, -+ 0x3dd2: 0x000c, 0x3dd3: 0x000c, 0x3dd4: 0x000c, 0x3dd5: 0x000c, 0x3dd6: 0x000c, 0x3dd7: 0x000c, -+ 0x3dd8: 0x000c, 0x3dd9: 0x000c, 0x3dda: 0x000c, 0x3ddb: 0x000c, 0x3ddc: 0x000c, 0x3ddd: 0x000c, -+ 0x3dde: 0x000c, 0x3ddf: 0x000c, 0x3de0: 0x000c, 0x3de1: 0x000c, 0x3de2: 0x000c, 0x3de3: 0x000c, -+ 0x3de4: 0x000c, 0x3de5: 0x000c, 0x3de6: 0x000c, 0x3de7: 0x000c, 0x3de8: 0x000c, 0x3de9: 0x000c, -+ 0x3dea: 0x000c, 0x3deb: 0x000c, 0x3dec: 0x000c, 0x3ded: 0x000c, 0x3dee: 0x000c, 0x3def: 0x000c, -+ 0x3df0: 0x000b, 0x3df1: 0x000b, 0x3df2: 0x000b, 0x3df3: 0x000b, 0x3df4: 0x000b, 0x3df5: 0x000b, -+ 0x3df6: 0x000b, 0x3df7: 0x000b, 0x3df8: 0x000b, 0x3df9: 0x000b, 0x3dfa: 0x000b, 0x3dfb: 0x000b, -+ 0x3dfc: 0x000b, 0x3dfd: 0x000b, 0x3dfe: 0x000b, 0x3dff: 0x000b, -+} -+ -+// bidiIndex: 24 blocks, 1536 entries, 1536 bytes -+// Block 0 is the zero block. -+var bidiIndex = [1536]uint8{ -+ // Block 0x0, offset 0x0 -+ // Block 0x1, offset 0x40 -+ // Block 0x2, offset 0x80 -+ // Block 0x3, offset 0xc0 -+ 0xc2: 0x01, 0xc3: 0x02, -+ 0xca: 0x03, 0xcb: 0x04, 0xcc: 0x05, 0xcd: 0x06, 0xce: 0x07, 0xcf: 0x08, -+ 0xd2: 0x09, 0xd6: 0x0a, 0xd7: 0x0b, -+ 0xd8: 0x0c, 0xd9: 0x0d, 0xda: 0x0e, 0xdb: 0x0f, 0xdc: 0x10, 0xdd: 0x11, 0xde: 0x12, 0xdf: 0x13, -+ 0xe0: 0x02, 0xe1: 0x03, 0xe2: 0x04, 0xe3: 0x05, 0xe4: 0x06, -+ 0xea: 0x07, 0xef: 0x08, -+ 0xf0: 0x11, 0xf1: 0x12, 0xf2: 0x12, 0xf3: 0x14, 0xf4: 0x15, -+ // Block 0x4, offset 0x100 -+ 0x120: 0x14, 0x121: 0x15, 0x122: 0x16, 0x123: 0x17, 0x124: 0x18, 0x125: 0x19, 0x126: 0x1a, 0x127: 0x1b, -+ 0x128: 0x1c, 0x129: 0x1d, 0x12a: 0x1c, 0x12b: 0x1e, 0x12c: 0x1f, 0x12d: 0x20, 0x12e: 0x21, 0x12f: 0x22, -+ 0x130: 0x23, 0x131: 0x24, 0x132: 0x1a, 0x133: 0x25, 0x134: 0x26, 0x135: 0x27, 0x136: 0x28, 0x137: 0x29, -+ 0x138: 0x2a, 0x139: 0x2b, 0x13a: 0x2c, 0x13b: 0x2d, 0x13c: 0x2e, 0x13d: 0x2f, 0x13e: 0x30, 0x13f: 0x31, -+ // Block 0x5, offset 0x140 -+ 0x140: 0x32, 0x141: 0x33, 0x142: 0x34, -+ 0x14d: 0x35, 0x14e: 0x36, -+ 0x150: 0x37, -+ 0x15a: 0x38, 0x15c: 0x39, 0x15d: 0x3a, 0x15e: 0x3b, 0x15f: 0x3c, -+ 0x160: 0x3d, 0x162: 0x3e, 0x164: 0x3f, 0x165: 0x40, 0x167: 0x41, -+ 0x168: 0x42, 0x169: 0x43, 0x16a: 0x44, 0x16b: 0x45, 0x16c: 0x46, 0x16d: 0x47, 0x16e: 0x48, 0x16f: 0x49, -+ 0x170: 0x4a, 0x173: 0x4b, 0x177: 0x4c, -+ 0x17e: 0x4d, 0x17f: 0x4e, -+ // Block 0x6, offset 0x180 -+ 0x180: 0x4f, 0x181: 0x50, 0x182: 0x51, 0x183: 0x52, 0x184: 0x53, 0x185: 0x54, 0x186: 0x55, 0x187: 0x56, -+ 0x188: 0x57, 0x189: 0x56, 0x18a: 0x56, 0x18b: 0x56, 0x18c: 0x58, 0x18d: 0x59, 0x18e: 0x5a, 0x18f: 0x56, -+ 0x190: 0x5b, 0x191: 0x5c, 0x192: 0x5d, 0x193: 0x5e, 0x194: 0x56, 0x195: 0x56, 0x196: 0x56, 0x197: 0x56, -+ 0x198: 0x56, 0x199: 0x56, 0x19a: 0x5f, 0x19b: 0x56, 0x19c: 0x56, 0x19d: 0x60, 0x19e: 0x56, 0x19f: 0x61, -+ 0x1a4: 0x56, 0x1a5: 0x56, 0x1a6: 0x62, 0x1a7: 0x63, -+ 0x1a8: 0x56, 0x1a9: 0x56, 0x1aa: 0x56, 0x1ab: 0x56, 0x1ac: 0x56, 0x1ad: 0x64, 0x1ae: 0x65, 0x1af: 0x56, -+ 0x1b3: 0x66, 0x1b5: 0x67, 0x1b7: 0x68, -+ 0x1b8: 0x69, 0x1b9: 0x6a, 0x1ba: 0x6b, 0x1bb: 0x6c, 0x1bc: 0x56, 0x1bd: 0x56, 0x1be: 0x56, 0x1bf: 0x6d, -+ // Block 0x7, offset 0x1c0 -+ 0x1c0: 0x6e, 0x1c2: 0x6f, 0x1c3: 0x70, 0x1c7: 0x71, -+ 0x1c8: 0x72, 0x1c9: 0x73, 0x1ca: 0x74, 0x1cb: 0x75, 0x1cd: 0x76, 0x1cf: 0x77, -+ // Block 0x8, offset 0x200 -+ 0x237: 0x56, -+ // Block 0x9, offset 0x240 -+ 0x252: 0x78, 0x253: 0x79, -+ 0x258: 0x7a, 0x259: 0x7b, 0x25a: 0x7c, 0x25b: 0x7d, 0x25c: 0x7e, 0x25e: 0x7f, -+ 0x260: 0x80, 0x261: 0x81, 0x263: 0x82, 0x264: 0x83, 0x265: 0x84, 0x266: 0x85, 0x267: 0x86, -+ 0x268: 0x87, 0x269: 0x88, 0x26a: 0x89, 0x26b: 0x8a, 0x26d: 0x8b, 0x26f: 0x8c, -+ // Block 0xa, offset 0x280 -+ 0x2ac: 0x8d, 0x2ad: 0x8e, 0x2ae: 0x0e, 0x2af: 0x0e, -+ 0x2b0: 0x0e, 0x2b1: 0x0e, 0x2b2: 0x0e, 0x2b3: 0x0e, 0x2b4: 0x8f, 0x2b5: 0x0e, 0x2b6: 0x0e, 0x2b7: 0x90, -+ 0x2b8: 0x91, 0x2b9: 0x92, 0x2ba: 0x0e, 0x2bb: 0x93, 0x2bc: 0x94, 0x2bd: 0x95, 0x2bf: 0x96, -+ // Block 0xb, offset 0x2c0 -+ 0x2c4: 0x97, 0x2c5: 0x56, 0x2c6: 0x98, 0x2c7: 0x99, -+ 0x2cb: 0x9a, 0x2cd: 0x9b, -+ 0x2e0: 0x9c, 0x2e1: 0x9c, 0x2e2: 0x9c, 0x2e3: 0x9c, 0x2e4: 0x9d, 0x2e5: 0x9c, 0x2e6: 0x9c, 0x2e7: 0x9c, -+ 0x2e8: 0x9e, 0x2e9: 0x9c, 0x2ea: 0x9c, 0x2eb: 0x9f, 0x2ec: 0xa0, 0x2ed: 0x9c, 0x2ee: 0x9c, 0x2ef: 0x9c, -+ 0x2f0: 0x9c, 0x2f1: 0x9c, 0x2f2: 0x9c, 0x2f3: 0x9c, 0x2f4: 0xa1, 0x2f5: 0x9c, 0x2f6: 0x9c, 0x2f7: 0x9c, -+ 0x2f8: 0x9c, 0x2f9: 0xa2, 0x2fa: 0xa3, 0x2fb: 0x9c, 0x2fc: 0xa4, 0x2fd: 0xa5, 0x2fe: 0x9c, 0x2ff: 0x9c, -+ // Block 0xc, offset 0x300 -+ 0x300: 0xa6, 0x301: 0xa7, 0x302: 0xa8, 0x304: 0xa9, 0x305: 0xaa, 0x306: 0xab, 0x307: 0xac, -+ 0x308: 0xad, 0x30b: 0xae, 0x30c: 0x26, 0x30d: 0xaf, -+ 0x310: 0xb0, 0x311: 0xb1, 0x312: 0xb2, 0x313: 0xb3, 0x316: 0xb4, 0x317: 0xb5, -+ 0x318: 0xb6, 0x319: 0xb7, 0x31a: 0xb8, 0x31c: 0xb9, -+ 0x320: 0xba, 0x324: 0xbb, 0x325: 0xbc, 0x327: 0xbd, -+ 0x328: 0xbe, 0x329: 0xbf, 0x32a: 0xc0, -+ 0x330: 0xc1, 0x332: 0xc2, 0x334: 0xc3, 0x335: 0xc4, 0x336: 0xc5, -+ 0x33b: 0xc6, 0x33f: 0xc7, -+ // Block 0xd, offset 0x340 -+ 0x36b: 0xc8, 0x36c: 0xc9, -+ 0x37d: 0xca, 0x37e: 0xcb, 0x37f: 0xcc, -+ // Block 0xe, offset 0x380 -+ 0x3b2: 0xcd, -+ // Block 0xf, offset 0x3c0 -+ 0x3c5: 0xce, 0x3c6: 0xcf, -+ 0x3c8: 0x56, 0x3c9: 0xd0, 0x3cc: 0x56, 0x3cd: 0xd1, -+ 0x3db: 0xd2, 0x3dc: 0xd3, 0x3dd: 0xd4, 0x3de: 0xd5, 0x3df: 0xd6, -+ 0x3e8: 0xd7, 0x3e9: 0xd8, 0x3ea: 0xd9, -+ // Block 0x10, offset 0x400 -+ 0x400: 0xda, 0x404: 0xc9, -+ 0x40b: 0xdb, -+ 0x420: 0x9c, 0x421: 0x9c, 0x422: 0x9c, 0x423: 0xdc, 0x424: 0x9c, 0x425: 0xdd, 0x426: 0x9c, 0x427: 0x9c, -+ 0x428: 0x9c, 0x429: 0x9c, 0x42a: 0x9c, 0x42b: 0x9c, 0x42c: 0x9c, 0x42d: 0x9c, 0x42e: 0x9c, 0x42f: 0x9c, -+ 0x430: 0x9c, 0x431: 0xa4, 0x432: 0x0e, 0x433: 0x9c, 0x434: 0x0e, 0x435: 0xde, 0x436: 0x9c, 0x437: 0x9c, -+ 0x438: 0x0e, 0x439: 0x0e, 0x43a: 0x0e, 0x43b: 0xdf, 0x43c: 0x9c, 0x43d: 0x9c, 0x43e: 0x9c, 0x43f: 0x9c, -+ // Block 0x11, offset 0x440 -+ 0x440: 0xe0, 0x441: 0x56, 0x442: 0xe1, 0x443: 0xe2, 0x444: 0xe3, 0x445: 0xe4, 0x446: 0xe5, -+ 0x449: 0xe6, 0x44c: 0x56, 0x44d: 0x56, 0x44e: 0x56, 0x44f: 0x56, -+ 0x450: 0x56, 0x451: 0x56, 0x452: 0x56, 0x453: 0x56, 0x454: 0x56, 0x455: 0x56, 0x456: 0x56, 0x457: 0x56, -+ 0x458: 0x56, 0x459: 0x56, 0x45a: 0x56, 0x45b: 0xe7, 0x45c: 0x56, 0x45d: 0x6c, 0x45e: 0x56, 0x45f: 0xe8, -+ 0x460: 0xe9, 0x461: 0xea, 0x462: 0xeb, 0x464: 0x56, 0x465: 0xec, 0x466: 0x56, 0x467: 0xed, -+ 0x468: 0x56, 0x469: 0xee, 0x46a: 0xef, 0x46b: 0xf0, 0x46c: 0x56, 0x46d: 0x56, 0x46e: 0xf1, 0x46f: 0xf2, -+ 0x47f: 0xf3, -+ // Block 0x12, offset 0x480 -+ 0x4bf: 0xf3, -+ // Block 0x13, offset 0x4c0 -+ 0x4d0: 0x09, 0x4d1: 0x0a, 0x4d6: 0x0b, -+ 0x4db: 0x0c, 0x4dd: 0x0d, 0x4de: 0x0e, 0x4df: 0x0f, -+ 0x4ef: 0x10, -+ 0x4ff: 0x10, -+ // Block 0x14, offset 0x500 -+ 0x50f: 0x10, -+ 0x51f: 0x10, -+ 0x52f: 0x10, -+ 0x53f: 0x10, -+ // Block 0x15, offset 0x540 -+ 0x540: 0xf4, 0x541: 0xf4, 0x542: 0xf4, 0x543: 0xf4, 0x544: 0x05, 0x545: 0x05, 0x546: 0x05, 0x547: 0xf5, -+ 0x548: 0xf4, 0x549: 0xf4, 0x54a: 0xf4, 0x54b: 0xf4, 0x54c: 0xf4, 0x54d: 0xf4, 0x54e: 0xf4, 0x54f: 0xf4, -+ 0x550: 0xf4, 0x551: 0xf4, 0x552: 0xf4, 0x553: 0xf4, 0x554: 0xf4, 0x555: 0xf4, 0x556: 0xf4, 0x557: 0xf4, -+ 0x558: 0xf4, 0x559: 0xf4, 0x55a: 0xf4, 0x55b: 0xf4, 0x55c: 0xf4, 0x55d: 0xf4, 0x55e: 0xf4, 0x55f: 0xf4, -+ 0x560: 0xf4, 0x561: 0xf4, 0x562: 0xf4, 0x563: 0xf4, 0x564: 0xf4, 0x565: 0xf4, 0x566: 0xf4, 0x567: 0xf4, -+ 0x568: 0xf4, 0x569: 0xf4, 0x56a: 0xf4, 0x56b: 0xf4, 0x56c: 0xf4, 0x56d: 0xf4, 0x56e: 0xf4, 0x56f: 0xf4, -+ 0x570: 0xf4, 0x571: 0xf4, 0x572: 0xf4, 0x573: 0xf4, 0x574: 0xf4, 0x575: 0xf4, 0x576: 0xf4, 0x577: 0xf4, -+ 0x578: 0xf4, 0x579: 0xf4, 0x57a: 0xf4, 0x57b: 0xf4, 0x57c: 0xf4, 0x57d: 0xf4, 0x57e: 0xf4, 0x57f: 0xf4, -+ // Block 0x16, offset 0x580 -+ 0x58f: 0x10, -+ 0x59f: 0x10, -+ 0x5a0: 0x13, -+ 0x5af: 0x10, -+ 0x5bf: 0x10, -+ // Block 0x17, offset 0x5c0 -+ 0x5cf: 0x10, -+} -+ -+// Total table size 17464 bytes (17KiB); checksum: F50EF68C -diff --git a/vendor/golang.org/x/text/unicode/bidi/tables9.0.0.go b/vendor/golang.org/x/text/unicode/bidi/tables9.0.0.go -index 0ca0193..f517fdb 100644 ---- a/vendor/golang.org/x/text/unicode/bidi/tables9.0.0.go -+++ b/vendor/golang.org/x/text/unicode/bidi/tables9.0.0.go -@@ -1,5 +1,6 @@ - // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. - -+//go:build !go1.10 - // +build !go1.10 - - package bidi -diff --git a/vendor/golang.org/x/text/unicode/norm/tables10.0.0.go b/vendor/golang.org/x/text/unicode/norm/tables10.0.0.go -index 26fbd55..f5a0788 100644 ---- a/vendor/golang.org/x/text/unicode/norm/tables10.0.0.go -+++ b/vendor/golang.org/x/text/unicode/norm/tables10.0.0.go -@@ -1,5 +1,6 @@ - // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. - -+//go:build go1.10 && !go1.13 - // +build go1.10,!go1.13 - - package norm -diff --git a/vendor/golang.org/x/text/unicode/norm/tables11.0.0.go b/vendor/golang.org/x/text/unicode/norm/tables11.0.0.go -index 7297cce..cb7239c 100644 ---- a/vendor/golang.org/x/text/unicode/norm/tables11.0.0.go -+++ b/vendor/golang.org/x/text/unicode/norm/tables11.0.0.go -@@ -1,6 +1,7 @@ - // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. - --// +build go1.13 -+//go:build go1.13 && !go1.14 -+// +build go1.13,!go1.14 - - package norm - -diff --git a/vendor/golang.org/x/text/unicode/norm/tables12.0.0.go b/vendor/golang.org/x/text/unicode/norm/tables12.0.0.go -new file mode 100644 -index 0000000..11b2733 ---- /dev/null -+++ b/vendor/golang.org/x/text/unicode/norm/tables12.0.0.go -@@ -0,0 +1,7711 @@ -+// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. -+ -+//go:build go1.14 && !go1.16 -+// +build go1.14,!go1.16 -+ -+package norm -+ -+import "sync" -+ -+const ( -+ // Version is the Unicode edition from which the tables are derived. -+ Version = "12.0.0" -+ -+ // MaxTransformChunkSize indicates the maximum number of bytes that Transform -+ // may need to write atomically for any Form. Making a destination buffer at -+ // least this size ensures that Transform can always make progress and that -+ // the user does not need to grow the buffer on an ErrShortDst. -+ MaxTransformChunkSize = 35 + maxNonStarters*4 -+) -+ -+var ccc = [55]uint8{ -+ 0, 1, 7, 8, 9, 10, 11, 12, -+ 13, 14, 15, 16, 17, 18, 19, 20, -+ 21, 22, 23, 24, 25, 26, 27, 28, -+ 29, 30, 31, 32, 33, 34, 35, 36, -+ 84, 91, 103, 107, 118, 122, 129, 130, -+ 132, 202, 214, 216, 218, 220, 222, 224, -+ 226, 228, 230, 232, 233, 234, 240, -+} -+ -+const ( -+ firstMulti = 0x186D -+ firstCCC = 0x2CA1 -+ endMulti = 0x2F63 -+ firstLeadingCCC = 0x49B1 -+ firstCCCZeroExcept = 0x4A7B -+ firstStarterWithNLead = 0x4AA2 -+ lastDecomp = 0x4AA4 -+ maxDecomp = 0x8000 -+) -+ -+// decomps: 19108 bytes -+var decomps = [...]byte{ -+ // Bytes 0 - 3f -+ 0x00, 0x41, 0x20, 0x41, 0x21, 0x41, 0x22, 0x41, -+ 0x23, 0x41, 0x24, 0x41, 0x25, 0x41, 0x26, 0x41, -+ 0x27, 0x41, 0x28, 0x41, 0x29, 0x41, 0x2A, 0x41, -+ 0x2B, 0x41, 0x2C, 0x41, 0x2D, 0x41, 0x2E, 0x41, -+ 0x2F, 0x41, 0x30, 0x41, 0x31, 0x41, 0x32, 0x41, -+ 0x33, 0x41, 0x34, 0x41, 0x35, 0x41, 0x36, 0x41, -+ 0x37, 0x41, 0x38, 0x41, 0x39, 0x41, 0x3A, 0x41, -+ 0x3B, 0x41, 0x3C, 0x41, 0x3D, 0x41, 0x3E, 0x41, -+ // Bytes 40 - 7f -+ 0x3F, 0x41, 0x40, 0x41, 0x41, 0x41, 0x42, 0x41, -+ 0x43, 0x41, 0x44, 0x41, 0x45, 0x41, 0x46, 0x41, -+ 0x47, 0x41, 0x48, 0x41, 0x49, 0x41, 0x4A, 0x41, -+ 0x4B, 0x41, 0x4C, 0x41, 0x4D, 0x41, 0x4E, 0x41, -+ 0x4F, 0x41, 0x50, 0x41, 0x51, 0x41, 0x52, 0x41, -+ 0x53, 0x41, 0x54, 0x41, 0x55, 0x41, 0x56, 0x41, -+ 0x57, 0x41, 0x58, 0x41, 0x59, 0x41, 0x5A, 0x41, -+ 0x5B, 0x41, 0x5C, 0x41, 0x5D, 0x41, 0x5E, 0x41, -+ // Bytes 80 - bf -+ 0x5F, 0x41, 0x60, 0x41, 0x61, 0x41, 0x62, 0x41, -+ 0x63, 0x41, 0x64, 0x41, 0x65, 0x41, 0x66, 0x41, -+ 0x67, 0x41, 0x68, 0x41, 0x69, 0x41, 0x6A, 0x41, -+ 0x6B, 0x41, 0x6C, 0x41, 0x6D, 0x41, 0x6E, 0x41, -+ 0x6F, 0x41, 0x70, 0x41, 0x71, 0x41, 0x72, 0x41, -+ 0x73, 0x41, 0x74, 0x41, 0x75, 0x41, 0x76, 0x41, -+ 0x77, 0x41, 0x78, 0x41, 0x79, 0x41, 0x7A, 0x41, -+ 0x7B, 0x41, 0x7C, 0x41, 0x7D, 0x41, 0x7E, 0x42, -+ // Bytes c0 - ff -+ 0xC2, 0xA2, 0x42, 0xC2, 0xA3, 0x42, 0xC2, 0xA5, -+ 0x42, 0xC2, 0xA6, 0x42, 0xC2, 0xAC, 0x42, 0xC2, -+ 0xB7, 0x42, 0xC3, 0x86, 0x42, 0xC3, 0xB0, 0x42, -+ 0xC4, 0xA6, 0x42, 0xC4, 0xA7, 0x42, 0xC4, 0xB1, -+ 0x42, 0xC5, 0x8B, 0x42, 0xC5, 0x93, 0x42, 0xC6, -+ 0x8E, 0x42, 0xC6, 0x90, 0x42, 0xC6, 0xAB, 0x42, -+ 0xC8, 0xA2, 0x42, 0xC8, 0xB7, 0x42, 0xC9, 0x90, -+ 0x42, 0xC9, 0x91, 0x42, 0xC9, 0x92, 0x42, 0xC9, -+ // Bytes 100 - 13f -+ 0x94, 0x42, 0xC9, 0x95, 0x42, 0xC9, 0x99, 0x42, -+ 0xC9, 0x9B, 0x42, 0xC9, 0x9C, 0x42, 0xC9, 0x9F, -+ 0x42, 0xC9, 0xA1, 0x42, 0xC9, 0xA3, 0x42, 0xC9, -+ 0xA5, 0x42, 0xC9, 0xA6, 0x42, 0xC9, 0xA8, 0x42, -+ 0xC9, 0xA9, 0x42, 0xC9, 0xAA, 0x42, 0xC9, 0xAB, -+ 0x42, 0xC9, 0xAD, 0x42, 0xC9, 0xAF, 0x42, 0xC9, -+ 0xB0, 0x42, 0xC9, 0xB1, 0x42, 0xC9, 0xB2, 0x42, -+ 0xC9, 0xB3, 0x42, 0xC9, 0xB4, 0x42, 0xC9, 0xB5, -+ // Bytes 140 - 17f -+ 0x42, 0xC9, 0xB8, 0x42, 0xC9, 0xB9, 0x42, 0xC9, -+ 0xBB, 0x42, 0xCA, 0x81, 0x42, 0xCA, 0x82, 0x42, -+ 0xCA, 0x83, 0x42, 0xCA, 0x89, 0x42, 0xCA, 0x8A, -+ 0x42, 0xCA, 0x8B, 0x42, 0xCA, 0x8C, 0x42, 0xCA, -+ 0x90, 0x42, 0xCA, 0x91, 0x42, 0xCA, 0x92, 0x42, -+ 0xCA, 0x95, 0x42, 0xCA, 0x9D, 0x42, 0xCA, 0x9F, -+ 0x42, 0xCA, 0xB9, 0x42, 0xCE, 0x91, 0x42, 0xCE, -+ 0x92, 0x42, 0xCE, 0x93, 0x42, 0xCE, 0x94, 0x42, -+ // Bytes 180 - 1bf -+ 0xCE, 0x95, 0x42, 0xCE, 0x96, 0x42, 0xCE, 0x97, -+ 0x42, 0xCE, 0x98, 0x42, 0xCE, 0x99, 0x42, 0xCE, -+ 0x9A, 0x42, 0xCE, 0x9B, 0x42, 0xCE, 0x9C, 0x42, -+ 0xCE, 0x9D, 0x42, 0xCE, 0x9E, 0x42, 0xCE, 0x9F, -+ 0x42, 0xCE, 0xA0, 0x42, 0xCE, 0xA1, 0x42, 0xCE, -+ 0xA3, 0x42, 0xCE, 0xA4, 0x42, 0xCE, 0xA5, 0x42, -+ 0xCE, 0xA6, 0x42, 0xCE, 0xA7, 0x42, 0xCE, 0xA8, -+ 0x42, 0xCE, 0xA9, 0x42, 0xCE, 0xB1, 0x42, 0xCE, -+ // Bytes 1c0 - 1ff -+ 0xB2, 0x42, 0xCE, 0xB3, 0x42, 0xCE, 0xB4, 0x42, -+ 0xCE, 0xB5, 0x42, 0xCE, 0xB6, 0x42, 0xCE, 0xB7, -+ 0x42, 0xCE, 0xB8, 0x42, 0xCE, 0xB9, 0x42, 0xCE, -+ 0xBA, 0x42, 0xCE, 0xBB, 0x42, 0xCE, 0xBC, 0x42, -+ 0xCE, 0xBD, 0x42, 0xCE, 0xBE, 0x42, 0xCE, 0xBF, -+ 0x42, 0xCF, 0x80, 0x42, 0xCF, 0x81, 0x42, 0xCF, -+ 0x82, 0x42, 0xCF, 0x83, 0x42, 0xCF, 0x84, 0x42, -+ 0xCF, 0x85, 0x42, 0xCF, 0x86, 0x42, 0xCF, 0x87, -+ // Bytes 200 - 23f -+ 0x42, 0xCF, 0x88, 0x42, 0xCF, 0x89, 0x42, 0xCF, -+ 0x9C, 0x42, 0xCF, 0x9D, 0x42, 0xD0, 0xBD, 0x42, -+ 0xD1, 0x8A, 0x42, 0xD1, 0x8C, 0x42, 0xD7, 0x90, -+ 0x42, 0xD7, 0x91, 0x42, 0xD7, 0x92, 0x42, 0xD7, -+ 0x93, 0x42, 0xD7, 0x94, 0x42, 0xD7, 0x9B, 0x42, -+ 0xD7, 0x9C, 0x42, 0xD7, 0x9D, 0x42, 0xD7, 0xA2, -+ 0x42, 0xD7, 0xA8, 0x42, 0xD7, 0xAA, 0x42, 0xD8, -+ 0xA1, 0x42, 0xD8, 0xA7, 0x42, 0xD8, 0xA8, 0x42, -+ // Bytes 240 - 27f -+ 0xD8, 0xA9, 0x42, 0xD8, 0xAA, 0x42, 0xD8, 0xAB, -+ 0x42, 0xD8, 0xAC, 0x42, 0xD8, 0xAD, 0x42, 0xD8, -+ 0xAE, 0x42, 0xD8, 0xAF, 0x42, 0xD8, 0xB0, 0x42, -+ 0xD8, 0xB1, 0x42, 0xD8, 0xB2, 0x42, 0xD8, 0xB3, -+ 0x42, 0xD8, 0xB4, 0x42, 0xD8, 0xB5, 0x42, 0xD8, -+ 0xB6, 0x42, 0xD8, 0xB7, 0x42, 0xD8, 0xB8, 0x42, -+ 0xD8, 0xB9, 0x42, 0xD8, 0xBA, 0x42, 0xD9, 0x81, -+ 0x42, 0xD9, 0x82, 0x42, 0xD9, 0x83, 0x42, 0xD9, -+ // Bytes 280 - 2bf -+ 0x84, 0x42, 0xD9, 0x85, 0x42, 0xD9, 0x86, 0x42, -+ 0xD9, 0x87, 0x42, 0xD9, 0x88, 0x42, 0xD9, 0x89, -+ 0x42, 0xD9, 0x8A, 0x42, 0xD9, 0xAE, 0x42, 0xD9, -+ 0xAF, 0x42, 0xD9, 0xB1, 0x42, 0xD9, 0xB9, 0x42, -+ 0xD9, 0xBA, 0x42, 0xD9, 0xBB, 0x42, 0xD9, 0xBE, -+ 0x42, 0xD9, 0xBF, 0x42, 0xDA, 0x80, 0x42, 0xDA, -+ 0x83, 0x42, 0xDA, 0x84, 0x42, 0xDA, 0x86, 0x42, -+ 0xDA, 0x87, 0x42, 0xDA, 0x88, 0x42, 0xDA, 0x8C, -+ // Bytes 2c0 - 2ff -+ 0x42, 0xDA, 0x8D, 0x42, 0xDA, 0x8E, 0x42, 0xDA, -+ 0x91, 0x42, 0xDA, 0x98, 0x42, 0xDA, 0xA1, 0x42, -+ 0xDA, 0xA4, 0x42, 0xDA, 0xA6, 0x42, 0xDA, 0xA9, -+ 0x42, 0xDA, 0xAD, 0x42, 0xDA, 0xAF, 0x42, 0xDA, -+ 0xB1, 0x42, 0xDA, 0xB3, 0x42, 0xDA, 0xBA, 0x42, -+ 0xDA, 0xBB, 0x42, 0xDA, 0xBE, 0x42, 0xDB, 0x81, -+ 0x42, 0xDB, 0x85, 0x42, 0xDB, 0x86, 0x42, 0xDB, -+ 0x87, 0x42, 0xDB, 0x88, 0x42, 0xDB, 0x89, 0x42, -+ // Bytes 300 - 33f -+ 0xDB, 0x8B, 0x42, 0xDB, 0x8C, 0x42, 0xDB, 0x90, -+ 0x42, 0xDB, 0x92, 0x43, 0xE0, 0xBC, 0x8B, 0x43, -+ 0xE1, 0x83, 0x9C, 0x43, 0xE1, 0x84, 0x80, 0x43, -+ 0xE1, 0x84, 0x81, 0x43, 0xE1, 0x84, 0x82, 0x43, -+ 0xE1, 0x84, 0x83, 0x43, 0xE1, 0x84, 0x84, 0x43, -+ 0xE1, 0x84, 0x85, 0x43, 0xE1, 0x84, 0x86, 0x43, -+ 0xE1, 0x84, 0x87, 0x43, 0xE1, 0x84, 0x88, 0x43, -+ 0xE1, 0x84, 0x89, 0x43, 0xE1, 0x84, 0x8A, 0x43, -+ // Bytes 340 - 37f -+ 0xE1, 0x84, 0x8B, 0x43, 0xE1, 0x84, 0x8C, 0x43, -+ 0xE1, 0x84, 0x8D, 0x43, 0xE1, 0x84, 0x8E, 0x43, -+ 0xE1, 0x84, 0x8F, 0x43, 0xE1, 0x84, 0x90, 0x43, -+ 0xE1, 0x84, 0x91, 0x43, 0xE1, 0x84, 0x92, 0x43, -+ 0xE1, 0x84, 0x94, 0x43, 0xE1, 0x84, 0x95, 0x43, -+ 0xE1, 0x84, 0x9A, 0x43, 0xE1, 0x84, 0x9C, 0x43, -+ 0xE1, 0x84, 0x9D, 0x43, 0xE1, 0x84, 0x9E, 0x43, -+ 0xE1, 0x84, 0xA0, 0x43, 0xE1, 0x84, 0xA1, 0x43, -+ // Bytes 380 - 3bf -+ 0xE1, 0x84, 0xA2, 0x43, 0xE1, 0x84, 0xA3, 0x43, -+ 0xE1, 0x84, 0xA7, 0x43, 0xE1, 0x84, 0xA9, 0x43, -+ 0xE1, 0x84, 0xAB, 0x43, 0xE1, 0x84, 0xAC, 0x43, -+ 0xE1, 0x84, 0xAD, 0x43, 0xE1, 0x84, 0xAE, 0x43, -+ 0xE1, 0x84, 0xAF, 0x43, 0xE1, 0x84, 0xB2, 0x43, -+ 0xE1, 0x84, 0xB6, 0x43, 0xE1, 0x85, 0x80, 0x43, -+ 0xE1, 0x85, 0x87, 0x43, 0xE1, 0x85, 0x8C, 0x43, -+ 0xE1, 0x85, 0x97, 0x43, 0xE1, 0x85, 0x98, 0x43, -+ // Bytes 3c0 - 3ff -+ 0xE1, 0x85, 0x99, 0x43, 0xE1, 0x85, 0xA0, 0x43, -+ 0xE1, 0x86, 0x84, 0x43, 0xE1, 0x86, 0x85, 0x43, -+ 0xE1, 0x86, 0x88, 0x43, 0xE1, 0x86, 0x91, 0x43, -+ 0xE1, 0x86, 0x92, 0x43, 0xE1, 0x86, 0x94, 0x43, -+ 0xE1, 0x86, 0x9E, 0x43, 0xE1, 0x86, 0xA1, 0x43, -+ 0xE1, 0x87, 0x87, 0x43, 0xE1, 0x87, 0x88, 0x43, -+ 0xE1, 0x87, 0x8C, 0x43, 0xE1, 0x87, 0x8E, 0x43, -+ 0xE1, 0x87, 0x93, 0x43, 0xE1, 0x87, 0x97, 0x43, -+ // Bytes 400 - 43f -+ 0xE1, 0x87, 0x99, 0x43, 0xE1, 0x87, 0x9D, 0x43, -+ 0xE1, 0x87, 0x9F, 0x43, 0xE1, 0x87, 0xB1, 0x43, -+ 0xE1, 0x87, 0xB2, 0x43, 0xE1, 0xB4, 0x82, 0x43, -+ 0xE1, 0xB4, 0x96, 0x43, 0xE1, 0xB4, 0x97, 0x43, -+ 0xE1, 0xB4, 0x9C, 0x43, 0xE1, 0xB4, 0x9D, 0x43, -+ 0xE1, 0xB4, 0xA5, 0x43, 0xE1, 0xB5, 0xBB, 0x43, -+ 0xE1, 0xB6, 0x85, 0x43, 0xE2, 0x80, 0x82, 0x43, -+ 0xE2, 0x80, 0x83, 0x43, 0xE2, 0x80, 0x90, 0x43, -+ // Bytes 440 - 47f -+ 0xE2, 0x80, 0x93, 0x43, 0xE2, 0x80, 0x94, 0x43, -+ 0xE2, 0x82, 0xA9, 0x43, 0xE2, 0x86, 0x90, 0x43, -+ 0xE2, 0x86, 0x91, 0x43, 0xE2, 0x86, 0x92, 0x43, -+ 0xE2, 0x86, 0x93, 0x43, 0xE2, 0x88, 0x82, 0x43, -+ 0xE2, 0x88, 0x87, 0x43, 0xE2, 0x88, 0x91, 0x43, -+ 0xE2, 0x88, 0x92, 0x43, 0xE2, 0x94, 0x82, 0x43, -+ 0xE2, 0x96, 0xA0, 0x43, 0xE2, 0x97, 0x8B, 0x43, -+ 0xE2, 0xA6, 0x85, 0x43, 0xE2, 0xA6, 0x86, 0x43, -+ // Bytes 480 - 4bf -+ 0xE2, 0xB5, 0xA1, 0x43, 0xE3, 0x80, 0x81, 0x43, -+ 0xE3, 0x80, 0x82, 0x43, 0xE3, 0x80, 0x88, 0x43, -+ 0xE3, 0x80, 0x89, 0x43, 0xE3, 0x80, 0x8A, 0x43, -+ 0xE3, 0x80, 0x8B, 0x43, 0xE3, 0x80, 0x8C, 0x43, -+ 0xE3, 0x80, 0x8D, 0x43, 0xE3, 0x80, 0x8E, 0x43, -+ 0xE3, 0x80, 0x8F, 0x43, 0xE3, 0x80, 0x90, 0x43, -+ 0xE3, 0x80, 0x91, 0x43, 0xE3, 0x80, 0x92, 0x43, -+ 0xE3, 0x80, 0x94, 0x43, 0xE3, 0x80, 0x95, 0x43, -+ // Bytes 4c0 - 4ff -+ 0xE3, 0x80, 0x96, 0x43, 0xE3, 0x80, 0x97, 0x43, -+ 0xE3, 0x82, 0xA1, 0x43, 0xE3, 0x82, 0xA2, 0x43, -+ 0xE3, 0x82, 0xA3, 0x43, 0xE3, 0x82, 0xA4, 0x43, -+ 0xE3, 0x82, 0xA5, 0x43, 0xE3, 0x82, 0xA6, 0x43, -+ 0xE3, 0x82, 0xA7, 0x43, 0xE3, 0x82, 0xA8, 0x43, -+ 0xE3, 0x82, 0xA9, 0x43, 0xE3, 0x82, 0xAA, 0x43, -+ 0xE3, 0x82, 0xAB, 0x43, 0xE3, 0x82, 0xAD, 0x43, -+ 0xE3, 0x82, 0xAF, 0x43, 0xE3, 0x82, 0xB1, 0x43, -+ // Bytes 500 - 53f -+ 0xE3, 0x82, 0xB3, 0x43, 0xE3, 0x82, 0xB5, 0x43, -+ 0xE3, 0x82, 0xB7, 0x43, 0xE3, 0x82, 0xB9, 0x43, -+ 0xE3, 0x82, 0xBB, 0x43, 0xE3, 0x82, 0xBD, 0x43, -+ 0xE3, 0x82, 0xBF, 0x43, 0xE3, 0x83, 0x81, 0x43, -+ 0xE3, 0x83, 0x83, 0x43, 0xE3, 0x83, 0x84, 0x43, -+ 0xE3, 0x83, 0x86, 0x43, 0xE3, 0x83, 0x88, 0x43, -+ 0xE3, 0x83, 0x8A, 0x43, 0xE3, 0x83, 0x8B, 0x43, -+ 0xE3, 0x83, 0x8C, 0x43, 0xE3, 0x83, 0x8D, 0x43, -+ // Bytes 540 - 57f -+ 0xE3, 0x83, 0x8E, 0x43, 0xE3, 0x83, 0x8F, 0x43, -+ 0xE3, 0x83, 0x92, 0x43, 0xE3, 0x83, 0x95, 0x43, -+ 0xE3, 0x83, 0x98, 0x43, 0xE3, 0x83, 0x9B, 0x43, -+ 0xE3, 0x83, 0x9E, 0x43, 0xE3, 0x83, 0x9F, 0x43, -+ 0xE3, 0x83, 0xA0, 0x43, 0xE3, 0x83, 0xA1, 0x43, -+ 0xE3, 0x83, 0xA2, 0x43, 0xE3, 0x83, 0xA3, 0x43, -+ 0xE3, 0x83, 0xA4, 0x43, 0xE3, 0x83, 0xA5, 0x43, -+ 0xE3, 0x83, 0xA6, 0x43, 0xE3, 0x83, 0xA7, 0x43, -+ // Bytes 580 - 5bf -+ 0xE3, 0x83, 0xA8, 0x43, 0xE3, 0x83, 0xA9, 0x43, -+ 0xE3, 0x83, 0xAA, 0x43, 0xE3, 0x83, 0xAB, 0x43, -+ 0xE3, 0x83, 0xAC, 0x43, 0xE3, 0x83, 0xAD, 0x43, -+ 0xE3, 0x83, 0xAF, 0x43, 0xE3, 0x83, 0xB0, 0x43, -+ 0xE3, 0x83, 0xB1, 0x43, 0xE3, 0x83, 0xB2, 0x43, -+ 0xE3, 0x83, 0xB3, 0x43, 0xE3, 0x83, 0xBB, 0x43, -+ 0xE3, 0x83, 0xBC, 0x43, 0xE3, 0x92, 0x9E, 0x43, -+ 0xE3, 0x92, 0xB9, 0x43, 0xE3, 0x92, 0xBB, 0x43, -+ // Bytes 5c0 - 5ff -+ 0xE3, 0x93, 0x9F, 0x43, 0xE3, 0x94, 0x95, 0x43, -+ 0xE3, 0x9B, 0xAE, 0x43, 0xE3, 0x9B, 0xBC, 0x43, -+ 0xE3, 0x9E, 0x81, 0x43, 0xE3, 0xA0, 0xAF, 0x43, -+ 0xE3, 0xA1, 0xA2, 0x43, 0xE3, 0xA1, 0xBC, 0x43, -+ 0xE3, 0xA3, 0x87, 0x43, 0xE3, 0xA3, 0xA3, 0x43, -+ 0xE3, 0xA4, 0x9C, 0x43, 0xE3, 0xA4, 0xBA, 0x43, -+ 0xE3, 0xA8, 0xAE, 0x43, 0xE3, 0xA9, 0xAC, 0x43, -+ 0xE3, 0xAB, 0xA4, 0x43, 0xE3, 0xAC, 0x88, 0x43, -+ // Bytes 600 - 63f -+ 0xE3, 0xAC, 0x99, 0x43, 0xE3, 0xAD, 0x89, 0x43, -+ 0xE3, 0xAE, 0x9D, 0x43, 0xE3, 0xB0, 0x98, 0x43, -+ 0xE3, 0xB1, 0x8E, 0x43, 0xE3, 0xB4, 0xB3, 0x43, -+ 0xE3, 0xB6, 0x96, 0x43, 0xE3, 0xBA, 0xAC, 0x43, -+ 0xE3, 0xBA, 0xB8, 0x43, 0xE3, 0xBC, 0x9B, 0x43, -+ 0xE3, 0xBF, 0xBC, 0x43, 0xE4, 0x80, 0x88, 0x43, -+ 0xE4, 0x80, 0x98, 0x43, 0xE4, 0x80, 0xB9, 0x43, -+ 0xE4, 0x81, 0x86, 0x43, 0xE4, 0x82, 0x96, 0x43, -+ // Bytes 640 - 67f -+ 0xE4, 0x83, 0xA3, 0x43, 0xE4, 0x84, 0xAF, 0x43, -+ 0xE4, 0x88, 0x82, 0x43, 0xE4, 0x88, 0xA7, 0x43, -+ 0xE4, 0x8A, 0xA0, 0x43, 0xE4, 0x8C, 0x81, 0x43, -+ 0xE4, 0x8C, 0xB4, 0x43, 0xE4, 0x8D, 0x99, 0x43, -+ 0xE4, 0x8F, 0x95, 0x43, 0xE4, 0x8F, 0x99, 0x43, -+ 0xE4, 0x90, 0x8B, 0x43, 0xE4, 0x91, 0xAB, 0x43, -+ 0xE4, 0x94, 0xAB, 0x43, 0xE4, 0x95, 0x9D, 0x43, -+ 0xE4, 0x95, 0xA1, 0x43, 0xE4, 0x95, 0xAB, 0x43, -+ // Bytes 680 - 6bf -+ 0xE4, 0x97, 0x97, 0x43, 0xE4, 0x97, 0xB9, 0x43, -+ 0xE4, 0x98, 0xB5, 0x43, 0xE4, 0x9A, 0xBE, 0x43, -+ 0xE4, 0x9B, 0x87, 0x43, 0xE4, 0xA6, 0x95, 0x43, -+ 0xE4, 0xA7, 0xA6, 0x43, 0xE4, 0xA9, 0xAE, 0x43, -+ 0xE4, 0xA9, 0xB6, 0x43, 0xE4, 0xAA, 0xB2, 0x43, -+ 0xE4, 0xAC, 0xB3, 0x43, 0xE4, 0xAF, 0x8E, 0x43, -+ 0xE4, 0xB3, 0x8E, 0x43, 0xE4, 0xB3, 0xAD, 0x43, -+ 0xE4, 0xB3, 0xB8, 0x43, 0xE4, 0xB5, 0x96, 0x43, -+ // Bytes 6c0 - 6ff -+ 0xE4, 0xB8, 0x80, 0x43, 0xE4, 0xB8, 0x81, 0x43, -+ 0xE4, 0xB8, 0x83, 0x43, 0xE4, 0xB8, 0x89, 0x43, -+ 0xE4, 0xB8, 0x8A, 0x43, 0xE4, 0xB8, 0x8B, 0x43, -+ 0xE4, 0xB8, 0x8D, 0x43, 0xE4, 0xB8, 0x99, 0x43, -+ 0xE4, 0xB8, 0xA6, 0x43, 0xE4, 0xB8, 0xA8, 0x43, -+ 0xE4, 0xB8, 0xAD, 0x43, 0xE4, 0xB8, 0xB2, 0x43, -+ 0xE4, 0xB8, 0xB6, 0x43, 0xE4, 0xB8, 0xB8, 0x43, -+ 0xE4, 0xB8, 0xB9, 0x43, 0xE4, 0xB8, 0xBD, 0x43, -+ // Bytes 700 - 73f -+ 0xE4, 0xB8, 0xBF, 0x43, 0xE4, 0xB9, 0x81, 0x43, -+ 0xE4, 0xB9, 0x99, 0x43, 0xE4, 0xB9, 0x9D, 0x43, -+ 0xE4, 0xBA, 0x82, 0x43, 0xE4, 0xBA, 0x85, 0x43, -+ 0xE4, 0xBA, 0x86, 0x43, 0xE4, 0xBA, 0x8C, 0x43, -+ 0xE4, 0xBA, 0x94, 0x43, 0xE4, 0xBA, 0xA0, 0x43, -+ 0xE4, 0xBA, 0xA4, 0x43, 0xE4, 0xBA, 0xAE, 0x43, -+ 0xE4, 0xBA, 0xBA, 0x43, 0xE4, 0xBB, 0x80, 0x43, -+ 0xE4, 0xBB, 0x8C, 0x43, 0xE4, 0xBB, 0xA4, 0x43, -+ // Bytes 740 - 77f -+ 0xE4, 0xBC, 0x81, 0x43, 0xE4, 0xBC, 0x91, 0x43, -+ 0xE4, 0xBD, 0xA0, 0x43, 0xE4, 0xBE, 0x80, 0x43, -+ 0xE4, 0xBE, 0x86, 0x43, 0xE4, 0xBE, 0x8B, 0x43, -+ 0xE4, 0xBE, 0xAE, 0x43, 0xE4, 0xBE, 0xBB, 0x43, -+ 0xE4, 0xBE, 0xBF, 0x43, 0xE5, 0x80, 0x82, 0x43, -+ 0xE5, 0x80, 0xAB, 0x43, 0xE5, 0x81, 0xBA, 0x43, -+ 0xE5, 0x82, 0x99, 0x43, 0xE5, 0x83, 0x8F, 0x43, -+ 0xE5, 0x83, 0x9A, 0x43, 0xE5, 0x83, 0xA7, 0x43, -+ // Bytes 780 - 7bf -+ 0xE5, 0x84, 0xAA, 0x43, 0xE5, 0x84, 0xBF, 0x43, -+ 0xE5, 0x85, 0x80, 0x43, 0xE5, 0x85, 0x85, 0x43, -+ 0xE5, 0x85, 0x8D, 0x43, 0xE5, 0x85, 0x94, 0x43, -+ 0xE5, 0x85, 0xA4, 0x43, 0xE5, 0x85, 0xA5, 0x43, -+ 0xE5, 0x85, 0xA7, 0x43, 0xE5, 0x85, 0xA8, 0x43, -+ 0xE5, 0x85, 0xA9, 0x43, 0xE5, 0x85, 0xAB, 0x43, -+ 0xE5, 0x85, 0xAD, 0x43, 0xE5, 0x85, 0xB7, 0x43, -+ 0xE5, 0x86, 0x80, 0x43, 0xE5, 0x86, 0x82, 0x43, -+ // Bytes 7c0 - 7ff -+ 0xE5, 0x86, 0x8D, 0x43, 0xE5, 0x86, 0x92, 0x43, -+ 0xE5, 0x86, 0x95, 0x43, 0xE5, 0x86, 0x96, 0x43, -+ 0xE5, 0x86, 0x97, 0x43, 0xE5, 0x86, 0x99, 0x43, -+ 0xE5, 0x86, 0xA4, 0x43, 0xE5, 0x86, 0xAB, 0x43, -+ 0xE5, 0x86, 0xAC, 0x43, 0xE5, 0x86, 0xB5, 0x43, -+ 0xE5, 0x86, 0xB7, 0x43, 0xE5, 0x87, 0x89, 0x43, -+ 0xE5, 0x87, 0x8C, 0x43, 0xE5, 0x87, 0x9C, 0x43, -+ 0xE5, 0x87, 0x9E, 0x43, 0xE5, 0x87, 0xA0, 0x43, -+ // Bytes 800 - 83f -+ 0xE5, 0x87, 0xB5, 0x43, 0xE5, 0x88, 0x80, 0x43, -+ 0xE5, 0x88, 0x83, 0x43, 0xE5, 0x88, 0x87, 0x43, -+ 0xE5, 0x88, 0x97, 0x43, 0xE5, 0x88, 0x9D, 0x43, -+ 0xE5, 0x88, 0xA9, 0x43, 0xE5, 0x88, 0xBA, 0x43, -+ 0xE5, 0x88, 0xBB, 0x43, 0xE5, 0x89, 0x86, 0x43, -+ 0xE5, 0x89, 0x8D, 0x43, 0xE5, 0x89, 0xB2, 0x43, -+ 0xE5, 0x89, 0xB7, 0x43, 0xE5, 0x8A, 0x89, 0x43, -+ 0xE5, 0x8A, 0x9B, 0x43, 0xE5, 0x8A, 0xA3, 0x43, -+ // Bytes 840 - 87f -+ 0xE5, 0x8A, 0xB3, 0x43, 0xE5, 0x8A, 0xB4, 0x43, -+ 0xE5, 0x8B, 0x87, 0x43, 0xE5, 0x8B, 0x89, 0x43, -+ 0xE5, 0x8B, 0x92, 0x43, 0xE5, 0x8B, 0x9E, 0x43, -+ 0xE5, 0x8B, 0xA4, 0x43, 0xE5, 0x8B, 0xB5, 0x43, -+ 0xE5, 0x8B, 0xB9, 0x43, 0xE5, 0x8B, 0xBA, 0x43, -+ 0xE5, 0x8C, 0x85, 0x43, 0xE5, 0x8C, 0x86, 0x43, -+ 0xE5, 0x8C, 0x95, 0x43, 0xE5, 0x8C, 0x97, 0x43, -+ 0xE5, 0x8C, 0x9A, 0x43, 0xE5, 0x8C, 0xB8, 0x43, -+ // Bytes 880 - 8bf -+ 0xE5, 0x8C, 0xBB, 0x43, 0xE5, 0x8C, 0xBF, 0x43, -+ 0xE5, 0x8D, 0x81, 0x43, 0xE5, 0x8D, 0x84, 0x43, -+ 0xE5, 0x8D, 0x85, 0x43, 0xE5, 0x8D, 0x89, 0x43, -+ 0xE5, 0x8D, 0x91, 0x43, 0xE5, 0x8D, 0x94, 0x43, -+ 0xE5, 0x8D, 0x9A, 0x43, 0xE5, 0x8D, 0x9C, 0x43, -+ 0xE5, 0x8D, 0xA9, 0x43, 0xE5, 0x8D, 0xB0, 0x43, -+ 0xE5, 0x8D, 0xB3, 0x43, 0xE5, 0x8D, 0xB5, 0x43, -+ 0xE5, 0x8D, 0xBD, 0x43, 0xE5, 0x8D, 0xBF, 0x43, -+ // Bytes 8c0 - 8ff -+ 0xE5, 0x8E, 0x82, 0x43, 0xE5, 0x8E, 0xB6, 0x43, -+ 0xE5, 0x8F, 0x83, 0x43, 0xE5, 0x8F, 0x88, 0x43, -+ 0xE5, 0x8F, 0x8A, 0x43, 0xE5, 0x8F, 0x8C, 0x43, -+ 0xE5, 0x8F, 0x9F, 0x43, 0xE5, 0x8F, 0xA3, 0x43, -+ 0xE5, 0x8F, 0xA5, 0x43, 0xE5, 0x8F, 0xAB, 0x43, -+ 0xE5, 0x8F, 0xAF, 0x43, 0xE5, 0x8F, 0xB1, 0x43, -+ 0xE5, 0x8F, 0xB3, 0x43, 0xE5, 0x90, 0x86, 0x43, -+ 0xE5, 0x90, 0x88, 0x43, 0xE5, 0x90, 0x8D, 0x43, -+ // Bytes 900 - 93f -+ 0xE5, 0x90, 0x8F, 0x43, 0xE5, 0x90, 0x9D, 0x43, -+ 0xE5, 0x90, 0xB8, 0x43, 0xE5, 0x90, 0xB9, 0x43, -+ 0xE5, 0x91, 0x82, 0x43, 0xE5, 0x91, 0x88, 0x43, -+ 0xE5, 0x91, 0xA8, 0x43, 0xE5, 0x92, 0x9E, 0x43, -+ 0xE5, 0x92, 0xA2, 0x43, 0xE5, 0x92, 0xBD, 0x43, -+ 0xE5, 0x93, 0xB6, 0x43, 0xE5, 0x94, 0x90, 0x43, -+ 0xE5, 0x95, 0x8F, 0x43, 0xE5, 0x95, 0x93, 0x43, -+ 0xE5, 0x95, 0x95, 0x43, 0xE5, 0x95, 0xA3, 0x43, -+ // Bytes 940 - 97f -+ 0xE5, 0x96, 0x84, 0x43, 0xE5, 0x96, 0x87, 0x43, -+ 0xE5, 0x96, 0x99, 0x43, 0xE5, 0x96, 0x9D, 0x43, -+ 0xE5, 0x96, 0xAB, 0x43, 0xE5, 0x96, 0xB3, 0x43, -+ 0xE5, 0x96, 0xB6, 0x43, 0xE5, 0x97, 0x80, 0x43, -+ 0xE5, 0x97, 0x82, 0x43, 0xE5, 0x97, 0xA2, 0x43, -+ 0xE5, 0x98, 0x86, 0x43, 0xE5, 0x99, 0x91, 0x43, -+ 0xE5, 0x99, 0xA8, 0x43, 0xE5, 0x99, 0xB4, 0x43, -+ 0xE5, 0x9B, 0x97, 0x43, 0xE5, 0x9B, 0x9B, 0x43, -+ // Bytes 980 - 9bf -+ 0xE5, 0x9B, 0xB9, 0x43, 0xE5, 0x9C, 0x96, 0x43, -+ 0xE5, 0x9C, 0x97, 0x43, 0xE5, 0x9C, 0x9F, 0x43, -+ 0xE5, 0x9C, 0xB0, 0x43, 0xE5, 0x9E, 0x8B, 0x43, -+ 0xE5, 0x9F, 0x8E, 0x43, 0xE5, 0x9F, 0xB4, 0x43, -+ 0xE5, 0xA0, 0x8D, 0x43, 0xE5, 0xA0, 0xB1, 0x43, -+ 0xE5, 0xA0, 0xB2, 0x43, 0xE5, 0xA1, 0x80, 0x43, -+ 0xE5, 0xA1, 0x9A, 0x43, 0xE5, 0xA1, 0x9E, 0x43, -+ 0xE5, 0xA2, 0xA8, 0x43, 0xE5, 0xA2, 0xAC, 0x43, -+ // Bytes 9c0 - 9ff -+ 0xE5, 0xA2, 0xB3, 0x43, 0xE5, 0xA3, 0x98, 0x43, -+ 0xE5, 0xA3, 0x9F, 0x43, 0xE5, 0xA3, 0xAB, 0x43, -+ 0xE5, 0xA3, 0xAE, 0x43, 0xE5, 0xA3, 0xB0, 0x43, -+ 0xE5, 0xA3, 0xB2, 0x43, 0xE5, 0xA3, 0xB7, 0x43, -+ 0xE5, 0xA4, 0x82, 0x43, 0xE5, 0xA4, 0x86, 0x43, -+ 0xE5, 0xA4, 0x8A, 0x43, 0xE5, 0xA4, 0x95, 0x43, -+ 0xE5, 0xA4, 0x9A, 0x43, 0xE5, 0xA4, 0x9C, 0x43, -+ 0xE5, 0xA4, 0xA2, 0x43, 0xE5, 0xA4, 0xA7, 0x43, -+ // Bytes a00 - a3f -+ 0xE5, 0xA4, 0xA9, 0x43, 0xE5, 0xA5, 0x84, 0x43, -+ 0xE5, 0xA5, 0x88, 0x43, 0xE5, 0xA5, 0x91, 0x43, -+ 0xE5, 0xA5, 0x94, 0x43, 0xE5, 0xA5, 0xA2, 0x43, -+ 0xE5, 0xA5, 0xB3, 0x43, 0xE5, 0xA7, 0x98, 0x43, -+ 0xE5, 0xA7, 0xAC, 0x43, 0xE5, 0xA8, 0x9B, 0x43, -+ 0xE5, 0xA8, 0xA7, 0x43, 0xE5, 0xA9, 0xA2, 0x43, -+ 0xE5, 0xA9, 0xA6, 0x43, 0xE5, 0xAA, 0xB5, 0x43, -+ 0xE5, 0xAC, 0x88, 0x43, 0xE5, 0xAC, 0xA8, 0x43, -+ // Bytes a40 - a7f -+ 0xE5, 0xAC, 0xBE, 0x43, 0xE5, 0xAD, 0x90, 0x43, -+ 0xE5, 0xAD, 0x97, 0x43, 0xE5, 0xAD, 0xA6, 0x43, -+ 0xE5, 0xAE, 0x80, 0x43, 0xE5, 0xAE, 0x85, 0x43, -+ 0xE5, 0xAE, 0x97, 0x43, 0xE5, 0xAF, 0x83, 0x43, -+ 0xE5, 0xAF, 0x98, 0x43, 0xE5, 0xAF, 0xA7, 0x43, -+ 0xE5, 0xAF, 0xAE, 0x43, 0xE5, 0xAF, 0xB3, 0x43, -+ 0xE5, 0xAF, 0xB8, 0x43, 0xE5, 0xAF, 0xBF, 0x43, -+ 0xE5, 0xB0, 0x86, 0x43, 0xE5, 0xB0, 0x8F, 0x43, -+ // Bytes a80 - abf -+ 0xE5, 0xB0, 0xA2, 0x43, 0xE5, 0xB0, 0xB8, 0x43, -+ 0xE5, 0xB0, 0xBF, 0x43, 0xE5, 0xB1, 0xA0, 0x43, -+ 0xE5, 0xB1, 0xA2, 0x43, 0xE5, 0xB1, 0xA4, 0x43, -+ 0xE5, 0xB1, 0xA5, 0x43, 0xE5, 0xB1, 0xAE, 0x43, -+ 0xE5, 0xB1, 0xB1, 0x43, 0xE5, 0xB2, 0x8D, 0x43, -+ 0xE5, 0xB3, 0x80, 0x43, 0xE5, 0xB4, 0x99, 0x43, -+ 0xE5, 0xB5, 0x83, 0x43, 0xE5, 0xB5, 0x90, 0x43, -+ 0xE5, 0xB5, 0xAB, 0x43, 0xE5, 0xB5, 0xAE, 0x43, -+ // Bytes ac0 - aff -+ 0xE5, 0xB5, 0xBC, 0x43, 0xE5, 0xB6, 0xB2, 0x43, -+ 0xE5, 0xB6, 0xBA, 0x43, 0xE5, 0xB7, 0x9B, 0x43, -+ 0xE5, 0xB7, 0xA1, 0x43, 0xE5, 0xB7, 0xA2, 0x43, -+ 0xE5, 0xB7, 0xA5, 0x43, 0xE5, 0xB7, 0xA6, 0x43, -+ 0xE5, 0xB7, 0xB1, 0x43, 0xE5, 0xB7, 0xBD, 0x43, -+ 0xE5, 0xB7, 0xBE, 0x43, 0xE5, 0xB8, 0xA8, 0x43, -+ 0xE5, 0xB8, 0xBD, 0x43, 0xE5, 0xB9, 0xA9, 0x43, -+ 0xE5, 0xB9, 0xB2, 0x43, 0xE5, 0xB9, 0xB4, 0x43, -+ // Bytes b00 - b3f -+ 0xE5, 0xB9, 0xBA, 0x43, 0xE5, 0xB9, 0xBC, 0x43, -+ 0xE5, 0xB9, 0xBF, 0x43, 0xE5, 0xBA, 0xA6, 0x43, -+ 0xE5, 0xBA, 0xB0, 0x43, 0xE5, 0xBA, 0xB3, 0x43, -+ 0xE5, 0xBA, 0xB6, 0x43, 0xE5, 0xBB, 0x89, 0x43, -+ 0xE5, 0xBB, 0x8A, 0x43, 0xE5, 0xBB, 0x92, 0x43, -+ 0xE5, 0xBB, 0x93, 0x43, 0xE5, 0xBB, 0x99, 0x43, -+ 0xE5, 0xBB, 0xAC, 0x43, 0xE5, 0xBB, 0xB4, 0x43, -+ 0xE5, 0xBB, 0xBE, 0x43, 0xE5, 0xBC, 0x84, 0x43, -+ // Bytes b40 - b7f -+ 0xE5, 0xBC, 0x8B, 0x43, 0xE5, 0xBC, 0x93, 0x43, -+ 0xE5, 0xBC, 0xA2, 0x43, 0xE5, 0xBD, 0x90, 0x43, -+ 0xE5, 0xBD, 0x93, 0x43, 0xE5, 0xBD, 0xA1, 0x43, -+ 0xE5, 0xBD, 0xA2, 0x43, 0xE5, 0xBD, 0xA9, 0x43, -+ 0xE5, 0xBD, 0xAB, 0x43, 0xE5, 0xBD, 0xB3, 0x43, -+ 0xE5, 0xBE, 0x8B, 0x43, 0xE5, 0xBE, 0x8C, 0x43, -+ 0xE5, 0xBE, 0x97, 0x43, 0xE5, 0xBE, 0x9A, 0x43, -+ 0xE5, 0xBE, 0xA9, 0x43, 0xE5, 0xBE, 0xAD, 0x43, -+ // Bytes b80 - bbf -+ 0xE5, 0xBF, 0x83, 0x43, 0xE5, 0xBF, 0x8D, 0x43, -+ 0xE5, 0xBF, 0x97, 0x43, 0xE5, 0xBF, 0xB5, 0x43, -+ 0xE5, 0xBF, 0xB9, 0x43, 0xE6, 0x80, 0x92, 0x43, -+ 0xE6, 0x80, 0x9C, 0x43, 0xE6, 0x81, 0xB5, 0x43, -+ 0xE6, 0x82, 0x81, 0x43, 0xE6, 0x82, 0x94, 0x43, -+ 0xE6, 0x83, 0x87, 0x43, 0xE6, 0x83, 0x98, 0x43, -+ 0xE6, 0x83, 0xA1, 0x43, 0xE6, 0x84, 0x88, 0x43, -+ 0xE6, 0x85, 0x84, 0x43, 0xE6, 0x85, 0x88, 0x43, -+ // Bytes bc0 - bff -+ 0xE6, 0x85, 0x8C, 0x43, 0xE6, 0x85, 0x8E, 0x43, -+ 0xE6, 0x85, 0xA0, 0x43, 0xE6, 0x85, 0xA8, 0x43, -+ 0xE6, 0x85, 0xBA, 0x43, 0xE6, 0x86, 0x8E, 0x43, -+ 0xE6, 0x86, 0x90, 0x43, 0xE6, 0x86, 0xA4, 0x43, -+ 0xE6, 0x86, 0xAF, 0x43, 0xE6, 0x86, 0xB2, 0x43, -+ 0xE6, 0x87, 0x9E, 0x43, 0xE6, 0x87, 0xB2, 0x43, -+ 0xE6, 0x87, 0xB6, 0x43, 0xE6, 0x88, 0x80, 0x43, -+ 0xE6, 0x88, 0x88, 0x43, 0xE6, 0x88, 0x90, 0x43, -+ // Bytes c00 - c3f -+ 0xE6, 0x88, 0x9B, 0x43, 0xE6, 0x88, 0xAE, 0x43, -+ 0xE6, 0x88, 0xB4, 0x43, 0xE6, 0x88, 0xB6, 0x43, -+ 0xE6, 0x89, 0x8B, 0x43, 0xE6, 0x89, 0x93, 0x43, -+ 0xE6, 0x89, 0x9D, 0x43, 0xE6, 0x8A, 0x95, 0x43, -+ 0xE6, 0x8A, 0xB1, 0x43, 0xE6, 0x8B, 0x89, 0x43, -+ 0xE6, 0x8B, 0x8F, 0x43, 0xE6, 0x8B, 0x93, 0x43, -+ 0xE6, 0x8B, 0x94, 0x43, 0xE6, 0x8B, 0xBC, 0x43, -+ 0xE6, 0x8B, 0xBE, 0x43, 0xE6, 0x8C, 0x87, 0x43, -+ // Bytes c40 - c7f -+ 0xE6, 0x8C, 0xBD, 0x43, 0xE6, 0x8D, 0x90, 0x43, -+ 0xE6, 0x8D, 0x95, 0x43, 0xE6, 0x8D, 0xA8, 0x43, -+ 0xE6, 0x8D, 0xBB, 0x43, 0xE6, 0x8E, 0x83, 0x43, -+ 0xE6, 0x8E, 0xA0, 0x43, 0xE6, 0x8E, 0xA9, 0x43, -+ 0xE6, 0x8F, 0x84, 0x43, 0xE6, 0x8F, 0x85, 0x43, -+ 0xE6, 0x8F, 0xA4, 0x43, 0xE6, 0x90, 0x9C, 0x43, -+ 0xE6, 0x90, 0xA2, 0x43, 0xE6, 0x91, 0x92, 0x43, -+ 0xE6, 0x91, 0xA9, 0x43, 0xE6, 0x91, 0xB7, 0x43, -+ // Bytes c80 - cbf -+ 0xE6, 0x91, 0xBE, 0x43, 0xE6, 0x92, 0x9A, 0x43, -+ 0xE6, 0x92, 0x9D, 0x43, 0xE6, 0x93, 0x84, 0x43, -+ 0xE6, 0x94, 0xAF, 0x43, 0xE6, 0x94, 0xB4, 0x43, -+ 0xE6, 0x95, 0x8F, 0x43, 0xE6, 0x95, 0x96, 0x43, -+ 0xE6, 0x95, 0xAC, 0x43, 0xE6, 0x95, 0xB8, 0x43, -+ 0xE6, 0x96, 0x87, 0x43, 0xE6, 0x96, 0x97, 0x43, -+ 0xE6, 0x96, 0x99, 0x43, 0xE6, 0x96, 0xA4, 0x43, -+ 0xE6, 0x96, 0xB0, 0x43, 0xE6, 0x96, 0xB9, 0x43, -+ // Bytes cc0 - cff -+ 0xE6, 0x97, 0x85, 0x43, 0xE6, 0x97, 0xA0, 0x43, -+ 0xE6, 0x97, 0xA2, 0x43, 0xE6, 0x97, 0xA3, 0x43, -+ 0xE6, 0x97, 0xA5, 0x43, 0xE6, 0x98, 0x93, 0x43, -+ 0xE6, 0x98, 0xA0, 0x43, 0xE6, 0x99, 0x89, 0x43, -+ 0xE6, 0x99, 0xB4, 0x43, 0xE6, 0x9A, 0x88, 0x43, -+ 0xE6, 0x9A, 0x91, 0x43, 0xE6, 0x9A, 0x9C, 0x43, -+ 0xE6, 0x9A, 0xB4, 0x43, 0xE6, 0x9B, 0x86, 0x43, -+ 0xE6, 0x9B, 0xB0, 0x43, 0xE6, 0x9B, 0xB4, 0x43, -+ // Bytes d00 - d3f -+ 0xE6, 0x9B, 0xB8, 0x43, 0xE6, 0x9C, 0x80, 0x43, -+ 0xE6, 0x9C, 0x88, 0x43, 0xE6, 0x9C, 0x89, 0x43, -+ 0xE6, 0x9C, 0x97, 0x43, 0xE6, 0x9C, 0x9B, 0x43, -+ 0xE6, 0x9C, 0xA1, 0x43, 0xE6, 0x9C, 0xA8, 0x43, -+ 0xE6, 0x9D, 0x8E, 0x43, 0xE6, 0x9D, 0x93, 0x43, -+ 0xE6, 0x9D, 0x96, 0x43, 0xE6, 0x9D, 0x9E, 0x43, -+ 0xE6, 0x9D, 0xBB, 0x43, 0xE6, 0x9E, 0x85, 0x43, -+ 0xE6, 0x9E, 0x97, 0x43, 0xE6, 0x9F, 0xB3, 0x43, -+ // Bytes d40 - d7f -+ 0xE6, 0x9F, 0xBA, 0x43, 0xE6, 0xA0, 0x97, 0x43, -+ 0xE6, 0xA0, 0x9F, 0x43, 0xE6, 0xA0, 0xAA, 0x43, -+ 0xE6, 0xA1, 0x92, 0x43, 0xE6, 0xA2, 0x81, 0x43, -+ 0xE6, 0xA2, 0x85, 0x43, 0xE6, 0xA2, 0x8E, 0x43, -+ 0xE6, 0xA2, 0xA8, 0x43, 0xE6, 0xA4, 0x94, 0x43, -+ 0xE6, 0xA5, 0x82, 0x43, 0xE6, 0xA6, 0xA3, 0x43, -+ 0xE6, 0xA7, 0xAA, 0x43, 0xE6, 0xA8, 0x82, 0x43, -+ 0xE6, 0xA8, 0x93, 0x43, 0xE6, 0xAA, 0xA8, 0x43, -+ // Bytes d80 - dbf -+ 0xE6, 0xAB, 0x93, 0x43, 0xE6, 0xAB, 0x9B, 0x43, -+ 0xE6, 0xAC, 0x84, 0x43, 0xE6, 0xAC, 0xA0, 0x43, -+ 0xE6, 0xAC, 0xA1, 0x43, 0xE6, 0xAD, 0x94, 0x43, -+ 0xE6, 0xAD, 0xA2, 0x43, 0xE6, 0xAD, 0xA3, 0x43, -+ 0xE6, 0xAD, 0xB2, 0x43, 0xE6, 0xAD, 0xB7, 0x43, -+ 0xE6, 0xAD, 0xB9, 0x43, 0xE6, 0xAE, 0x9F, 0x43, -+ 0xE6, 0xAE, 0xAE, 0x43, 0xE6, 0xAE, 0xB3, 0x43, -+ 0xE6, 0xAE, 0xBA, 0x43, 0xE6, 0xAE, 0xBB, 0x43, -+ // Bytes dc0 - dff -+ 0xE6, 0xAF, 0x8B, 0x43, 0xE6, 0xAF, 0x8D, 0x43, -+ 0xE6, 0xAF, 0x94, 0x43, 0xE6, 0xAF, 0x9B, 0x43, -+ 0xE6, 0xB0, 0x8F, 0x43, 0xE6, 0xB0, 0x94, 0x43, -+ 0xE6, 0xB0, 0xB4, 0x43, 0xE6, 0xB1, 0x8E, 0x43, -+ 0xE6, 0xB1, 0xA7, 0x43, 0xE6, 0xB2, 0x88, 0x43, -+ 0xE6, 0xB2, 0xBF, 0x43, 0xE6, 0xB3, 0x8C, 0x43, -+ 0xE6, 0xB3, 0x8D, 0x43, 0xE6, 0xB3, 0xA5, 0x43, -+ 0xE6, 0xB3, 0xA8, 0x43, 0xE6, 0xB4, 0x96, 0x43, -+ // Bytes e00 - e3f -+ 0xE6, 0xB4, 0x9B, 0x43, 0xE6, 0xB4, 0x9E, 0x43, -+ 0xE6, 0xB4, 0xB4, 0x43, 0xE6, 0xB4, 0xBE, 0x43, -+ 0xE6, 0xB5, 0x81, 0x43, 0xE6, 0xB5, 0xA9, 0x43, -+ 0xE6, 0xB5, 0xAA, 0x43, 0xE6, 0xB5, 0xB7, 0x43, -+ 0xE6, 0xB5, 0xB8, 0x43, 0xE6, 0xB6, 0x85, 0x43, -+ 0xE6, 0xB7, 0x8B, 0x43, 0xE6, 0xB7, 0x9A, 0x43, -+ 0xE6, 0xB7, 0xAA, 0x43, 0xE6, 0xB7, 0xB9, 0x43, -+ 0xE6, 0xB8, 0x9A, 0x43, 0xE6, 0xB8, 0xAF, 0x43, -+ // Bytes e40 - e7f -+ 0xE6, 0xB9, 0xAE, 0x43, 0xE6, 0xBA, 0x80, 0x43, -+ 0xE6, 0xBA, 0x9C, 0x43, 0xE6, 0xBA, 0xBA, 0x43, -+ 0xE6, 0xBB, 0x87, 0x43, 0xE6, 0xBB, 0x8B, 0x43, -+ 0xE6, 0xBB, 0x91, 0x43, 0xE6, 0xBB, 0x9B, 0x43, -+ 0xE6, 0xBC, 0x8F, 0x43, 0xE6, 0xBC, 0x94, 0x43, -+ 0xE6, 0xBC, 0xA2, 0x43, 0xE6, 0xBC, 0xA3, 0x43, -+ 0xE6, 0xBD, 0xAE, 0x43, 0xE6, 0xBF, 0x86, 0x43, -+ 0xE6, 0xBF, 0xAB, 0x43, 0xE6, 0xBF, 0xBE, 0x43, -+ // Bytes e80 - ebf -+ 0xE7, 0x80, 0x9B, 0x43, 0xE7, 0x80, 0x9E, 0x43, -+ 0xE7, 0x80, 0xB9, 0x43, 0xE7, 0x81, 0x8A, 0x43, -+ 0xE7, 0x81, 0xAB, 0x43, 0xE7, 0x81, 0xB0, 0x43, -+ 0xE7, 0x81, 0xB7, 0x43, 0xE7, 0x81, 0xBD, 0x43, -+ 0xE7, 0x82, 0x99, 0x43, 0xE7, 0x82, 0xAD, 0x43, -+ 0xE7, 0x83, 0x88, 0x43, 0xE7, 0x83, 0x99, 0x43, -+ 0xE7, 0x84, 0xA1, 0x43, 0xE7, 0x85, 0x85, 0x43, -+ 0xE7, 0x85, 0x89, 0x43, 0xE7, 0x85, 0xAE, 0x43, -+ // Bytes ec0 - eff -+ 0xE7, 0x86, 0x9C, 0x43, 0xE7, 0x87, 0x8E, 0x43, -+ 0xE7, 0x87, 0x90, 0x43, 0xE7, 0x88, 0x90, 0x43, -+ 0xE7, 0x88, 0x9B, 0x43, 0xE7, 0x88, 0xA8, 0x43, -+ 0xE7, 0x88, 0xAA, 0x43, 0xE7, 0x88, 0xAB, 0x43, -+ 0xE7, 0x88, 0xB5, 0x43, 0xE7, 0x88, 0xB6, 0x43, -+ 0xE7, 0x88, 0xBB, 0x43, 0xE7, 0x88, 0xBF, 0x43, -+ 0xE7, 0x89, 0x87, 0x43, 0xE7, 0x89, 0x90, 0x43, -+ 0xE7, 0x89, 0x99, 0x43, 0xE7, 0x89, 0x9B, 0x43, -+ // Bytes f00 - f3f -+ 0xE7, 0x89, 0xA2, 0x43, 0xE7, 0x89, 0xB9, 0x43, -+ 0xE7, 0x8A, 0x80, 0x43, 0xE7, 0x8A, 0x95, 0x43, -+ 0xE7, 0x8A, 0xAC, 0x43, 0xE7, 0x8A, 0xAF, 0x43, -+ 0xE7, 0x8B, 0x80, 0x43, 0xE7, 0x8B, 0xBC, 0x43, -+ 0xE7, 0x8C, 0xAA, 0x43, 0xE7, 0x8D, 0xB5, 0x43, -+ 0xE7, 0x8D, 0xBA, 0x43, 0xE7, 0x8E, 0x84, 0x43, -+ 0xE7, 0x8E, 0x87, 0x43, 0xE7, 0x8E, 0x89, 0x43, -+ 0xE7, 0x8E, 0x8B, 0x43, 0xE7, 0x8E, 0xA5, 0x43, -+ // Bytes f40 - f7f -+ 0xE7, 0x8E, 0xB2, 0x43, 0xE7, 0x8F, 0x9E, 0x43, -+ 0xE7, 0x90, 0x86, 0x43, 0xE7, 0x90, 0x89, 0x43, -+ 0xE7, 0x90, 0xA2, 0x43, 0xE7, 0x91, 0x87, 0x43, -+ 0xE7, 0x91, 0x9C, 0x43, 0xE7, 0x91, 0xA9, 0x43, -+ 0xE7, 0x91, 0xB1, 0x43, 0xE7, 0x92, 0x85, 0x43, -+ 0xE7, 0x92, 0x89, 0x43, 0xE7, 0x92, 0x98, 0x43, -+ 0xE7, 0x93, 0x8A, 0x43, 0xE7, 0x93, 0x9C, 0x43, -+ 0xE7, 0x93, 0xA6, 0x43, 0xE7, 0x94, 0x86, 0x43, -+ // Bytes f80 - fbf -+ 0xE7, 0x94, 0x98, 0x43, 0xE7, 0x94, 0x9F, 0x43, -+ 0xE7, 0x94, 0xA4, 0x43, 0xE7, 0x94, 0xA8, 0x43, -+ 0xE7, 0x94, 0xB0, 0x43, 0xE7, 0x94, 0xB2, 0x43, -+ 0xE7, 0x94, 0xB3, 0x43, 0xE7, 0x94, 0xB7, 0x43, -+ 0xE7, 0x94, 0xBB, 0x43, 0xE7, 0x94, 0xBE, 0x43, -+ 0xE7, 0x95, 0x99, 0x43, 0xE7, 0x95, 0xA5, 0x43, -+ 0xE7, 0x95, 0xB0, 0x43, 0xE7, 0x96, 0x8B, 0x43, -+ 0xE7, 0x96, 0x92, 0x43, 0xE7, 0x97, 0xA2, 0x43, -+ // Bytes fc0 - fff -+ 0xE7, 0x98, 0x90, 0x43, 0xE7, 0x98, 0x9D, 0x43, -+ 0xE7, 0x98, 0x9F, 0x43, 0xE7, 0x99, 0x82, 0x43, -+ 0xE7, 0x99, 0xA9, 0x43, 0xE7, 0x99, 0xB6, 0x43, -+ 0xE7, 0x99, 0xBD, 0x43, 0xE7, 0x9A, 0xAE, 0x43, -+ 0xE7, 0x9A, 0xBF, 0x43, 0xE7, 0x9B, 0x8A, 0x43, -+ 0xE7, 0x9B, 0x9B, 0x43, 0xE7, 0x9B, 0xA3, 0x43, -+ 0xE7, 0x9B, 0xA7, 0x43, 0xE7, 0x9B, 0xAE, 0x43, -+ 0xE7, 0x9B, 0xB4, 0x43, 0xE7, 0x9C, 0x81, 0x43, -+ // Bytes 1000 - 103f -+ 0xE7, 0x9C, 0x9E, 0x43, 0xE7, 0x9C, 0x9F, 0x43, -+ 0xE7, 0x9D, 0x80, 0x43, 0xE7, 0x9D, 0x8A, 0x43, -+ 0xE7, 0x9E, 0x8B, 0x43, 0xE7, 0x9E, 0xA7, 0x43, -+ 0xE7, 0x9F, 0x9B, 0x43, 0xE7, 0x9F, 0xA2, 0x43, -+ 0xE7, 0x9F, 0xB3, 0x43, 0xE7, 0xA1, 0x8E, 0x43, -+ 0xE7, 0xA1, 0xAB, 0x43, 0xE7, 0xA2, 0x8C, 0x43, -+ 0xE7, 0xA2, 0x91, 0x43, 0xE7, 0xA3, 0x8A, 0x43, -+ 0xE7, 0xA3, 0x8C, 0x43, 0xE7, 0xA3, 0xBB, 0x43, -+ // Bytes 1040 - 107f -+ 0xE7, 0xA4, 0xAA, 0x43, 0xE7, 0xA4, 0xBA, 0x43, -+ 0xE7, 0xA4, 0xBC, 0x43, 0xE7, 0xA4, 0xBE, 0x43, -+ 0xE7, 0xA5, 0x88, 0x43, 0xE7, 0xA5, 0x89, 0x43, -+ 0xE7, 0xA5, 0x90, 0x43, 0xE7, 0xA5, 0x96, 0x43, -+ 0xE7, 0xA5, 0x9D, 0x43, 0xE7, 0xA5, 0x9E, 0x43, -+ 0xE7, 0xA5, 0xA5, 0x43, 0xE7, 0xA5, 0xBF, 0x43, -+ 0xE7, 0xA6, 0x81, 0x43, 0xE7, 0xA6, 0x8D, 0x43, -+ 0xE7, 0xA6, 0x8E, 0x43, 0xE7, 0xA6, 0x8F, 0x43, -+ // Bytes 1080 - 10bf -+ 0xE7, 0xA6, 0xAE, 0x43, 0xE7, 0xA6, 0xB8, 0x43, -+ 0xE7, 0xA6, 0xBE, 0x43, 0xE7, 0xA7, 0x8A, 0x43, -+ 0xE7, 0xA7, 0x98, 0x43, 0xE7, 0xA7, 0xAB, 0x43, -+ 0xE7, 0xA8, 0x9C, 0x43, 0xE7, 0xA9, 0x80, 0x43, -+ 0xE7, 0xA9, 0x8A, 0x43, 0xE7, 0xA9, 0x8F, 0x43, -+ 0xE7, 0xA9, 0xB4, 0x43, 0xE7, 0xA9, 0xBA, 0x43, -+ 0xE7, 0xAA, 0x81, 0x43, 0xE7, 0xAA, 0xB1, 0x43, -+ 0xE7, 0xAB, 0x8B, 0x43, 0xE7, 0xAB, 0xAE, 0x43, -+ // Bytes 10c0 - 10ff -+ 0xE7, 0xAB, 0xB9, 0x43, 0xE7, 0xAC, 0xA0, 0x43, -+ 0xE7, 0xAE, 0x8F, 0x43, 0xE7, 0xAF, 0x80, 0x43, -+ 0xE7, 0xAF, 0x86, 0x43, 0xE7, 0xAF, 0x89, 0x43, -+ 0xE7, 0xB0, 0xBE, 0x43, 0xE7, 0xB1, 0xA0, 0x43, -+ 0xE7, 0xB1, 0xB3, 0x43, 0xE7, 0xB1, 0xBB, 0x43, -+ 0xE7, 0xB2, 0x92, 0x43, 0xE7, 0xB2, 0xBE, 0x43, -+ 0xE7, 0xB3, 0x92, 0x43, 0xE7, 0xB3, 0x96, 0x43, -+ 0xE7, 0xB3, 0xA3, 0x43, 0xE7, 0xB3, 0xA7, 0x43, -+ // Bytes 1100 - 113f -+ 0xE7, 0xB3, 0xA8, 0x43, 0xE7, 0xB3, 0xB8, 0x43, -+ 0xE7, 0xB4, 0x80, 0x43, 0xE7, 0xB4, 0x90, 0x43, -+ 0xE7, 0xB4, 0xA2, 0x43, 0xE7, 0xB4, 0xAF, 0x43, -+ 0xE7, 0xB5, 0x82, 0x43, 0xE7, 0xB5, 0x9B, 0x43, -+ 0xE7, 0xB5, 0xA3, 0x43, 0xE7, 0xB6, 0xA0, 0x43, -+ 0xE7, 0xB6, 0xBE, 0x43, 0xE7, 0xB7, 0x87, 0x43, -+ 0xE7, 0xB7, 0xB4, 0x43, 0xE7, 0xB8, 0x82, 0x43, -+ 0xE7, 0xB8, 0x89, 0x43, 0xE7, 0xB8, 0xB7, 0x43, -+ // Bytes 1140 - 117f -+ 0xE7, 0xB9, 0x81, 0x43, 0xE7, 0xB9, 0x85, 0x43, -+ 0xE7, 0xBC, 0xB6, 0x43, 0xE7, 0xBC, 0xBE, 0x43, -+ 0xE7, 0xBD, 0x91, 0x43, 0xE7, 0xBD, 0xB2, 0x43, -+ 0xE7, 0xBD, 0xB9, 0x43, 0xE7, 0xBD, 0xBA, 0x43, -+ 0xE7, 0xBE, 0x85, 0x43, 0xE7, 0xBE, 0x8A, 0x43, -+ 0xE7, 0xBE, 0x95, 0x43, 0xE7, 0xBE, 0x9A, 0x43, -+ 0xE7, 0xBE, 0xBD, 0x43, 0xE7, 0xBF, 0xBA, 0x43, -+ 0xE8, 0x80, 0x81, 0x43, 0xE8, 0x80, 0x85, 0x43, -+ // Bytes 1180 - 11bf -+ 0xE8, 0x80, 0x8C, 0x43, 0xE8, 0x80, 0x92, 0x43, -+ 0xE8, 0x80, 0xB3, 0x43, 0xE8, 0x81, 0x86, 0x43, -+ 0xE8, 0x81, 0xA0, 0x43, 0xE8, 0x81, 0xAF, 0x43, -+ 0xE8, 0x81, 0xB0, 0x43, 0xE8, 0x81, 0xBE, 0x43, -+ 0xE8, 0x81, 0xBF, 0x43, 0xE8, 0x82, 0x89, 0x43, -+ 0xE8, 0x82, 0x8B, 0x43, 0xE8, 0x82, 0xAD, 0x43, -+ 0xE8, 0x82, 0xB2, 0x43, 0xE8, 0x84, 0x83, 0x43, -+ 0xE8, 0x84, 0xBE, 0x43, 0xE8, 0x87, 0x98, 0x43, -+ // Bytes 11c0 - 11ff -+ 0xE8, 0x87, 0xA3, 0x43, 0xE8, 0x87, 0xA8, 0x43, -+ 0xE8, 0x87, 0xAA, 0x43, 0xE8, 0x87, 0xAD, 0x43, -+ 0xE8, 0x87, 0xB3, 0x43, 0xE8, 0x87, 0xBC, 0x43, -+ 0xE8, 0x88, 0x81, 0x43, 0xE8, 0x88, 0x84, 0x43, -+ 0xE8, 0x88, 0x8C, 0x43, 0xE8, 0x88, 0x98, 0x43, -+ 0xE8, 0x88, 0x9B, 0x43, 0xE8, 0x88, 0x9F, 0x43, -+ 0xE8, 0x89, 0xAE, 0x43, 0xE8, 0x89, 0xAF, 0x43, -+ 0xE8, 0x89, 0xB2, 0x43, 0xE8, 0x89, 0xB8, 0x43, -+ // Bytes 1200 - 123f -+ 0xE8, 0x89, 0xB9, 0x43, 0xE8, 0x8A, 0x8B, 0x43, -+ 0xE8, 0x8A, 0x91, 0x43, 0xE8, 0x8A, 0x9D, 0x43, -+ 0xE8, 0x8A, 0xB1, 0x43, 0xE8, 0x8A, 0xB3, 0x43, -+ 0xE8, 0x8A, 0xBD, 0x43, 0xE8, 0x8B, 0xA5, 0x43, -+ 0xE8, 0x8B, 0xA6, 0x43, 0xE8, 0x8C, 0x9D, 0x43, -+ 0xE8, 0x8C, 0xA3, 0x43, 0xE8, 0x8C, 0xB6, 0x43, -+ 0xE8, 0x8D, 0x92, 0x43, 0xE8, 0x8D, 0x93, 0x43, -+ 0xE8, 0x8D, 0xA3, 0x43, 0xE8, 0x8E, 0xAD, 0x43, -+ // Bytes 1240 - 127f -+ 0xE8, 0x8E, 0xBD, 0x43, 0xE8, 0x8F, 0x89, 0x43, -+ 0xE8, 0x8F, 0x8A, 0x43, 0xE8, 0x8F, 0x8C, 0x43, -+ 0xE8, 0x8F, 0x9C, 0x43, 0xE8, 0x8F, 0xA7, 0x43, -+ 0xE8, 0x8F, 0xAF, 0x43, 0xE8, 0x8F, 0xB1, 0x43, -+ 0xE8, 0x90, 0xBD, 0x43, 0xE8, 0x91, 0x89, 0x43, -+ 0xE8, 0x91, 0x97, 0x43, 0xE8, 0x93, 0xAE, 0x43, -+ 0xE8, 0x93, 0xB1, 0x43, 0xE8, 0x93, 0xB3, 0x43, -+ 0xE8, 0x93, 0xBC, 0x43, 0xE8, 0x94, 0x96, 0x43, -+ // Bytes 1280 - 12bf -+ 0xE8, 0x95, 0xA4, 0x43, 0xE8, 0x97, 0x8D, 0x43, -+ 0xE8, 0x97, 0xBA, 0x43, 0xE8, 0x98, 0x86, 0x43, -+ 0xE8, 0x98, 0x92, 0x43, 0xE8, 0x98, 0xAD, 0x43, -+ 0xE8, 0x98, 0xBF, 0x43, 0xE8, 0x99, 0x8D, 0x43, -+ 0xE8, 0x99, 0x90, 0x43, 0xE8, 0x99, 0x9C, 0x43, -+ 0xE8, 0x99, 0xA7, 0x43, 0xE8, 0x99, 0xA9, 0x43, -+ 0xE8, 0x99, 0xAB, 0x43, 0xE8, 0x9A, 0x88, 0x43, -+ 0xE8, 0x9A, 0xA9, 0x43, 0xE8, 0x9B, 0xA2, 0x43, -+ // Bytes 12c0 - 12ff -+ 0xE8, 0x9C, 0x8E, 0x43, 0xE8, 0x9C, 0xA8, 0x43, -+ 0xE8, 0x9D, 0xAB, 0x43, 0xE8, 0x9D, 0xB9, 0x43, -+ 0xE8, 0x9E, 0x86, 0x43, 0xE8, 0x9E, 0xBA, 0x43, -+ 0xE8, 0x9F, 0xA1, 0x43, 0xE8, 0xA0, 0x81, 0x43, -+ 0xE8, 0xA0, 0x9F, 0x43, 0xE8, 0xA1, 0x80, 0x43, -+ 0xE8, 0xA1, 0x8C, 0x43, 0xE8, 0xA1, 0xA0, 0x43, -+ 0xE8, 0xA1, 0xA3, 0x43, 0xE8, 0xA3, 0x82, 0x43, -+ 0xE8, 0xA3, 0x8F, 0x43, 0xE8, 0xA3, 0x97, 0x43, -+ // Bytes 1300 - 133f -+ 0xE8, 0xA3, 0x9E, 0x43, 0xE8, 0xA3, 0xA1, 0x43, -+ 0xE8, 0xA3, 0xB8, 0x43, 0xE8, 0xA3, 0xBA, 0x43, -+ 0xE8, 0xA4, 0x90, 0x43, 0xE8, 0xA5, 0x81, 0x43, -+ 0xE8, 0xA5, 0xA4, 0x43, 0xE8, 0xA5, 0xBE, 0x43, -+ 0xE8, 0xA6, 0x86, 0x43, 0xE8, 0xA6, 0x8B, 0x43, -+ 0xE8, 0xA6, 0x96, 0x43, 0xE8, 0xA7, 0x92, 0x43, -+ 0xE8, 0xA7, 0xA3, 0x43, 0xE8, 0xA8, 0x80, 0x43, -+ 0xE8, 0xAA, 0xA0, 0x43, 0xE8, 0xAA, 0xAA, 0x43, -+ // Bytes 1340 - 137f -+ 0xE8, 0xAA, 0xBF, 0x43, 0xE8, 0xAB, 0x8B, 0x43, -+ 0xE8, 0xAB, 0x92, 0x43, 0xE8, 0xAB, 0x96, 0x43, -+ 0xE8, 0xAB, 0xAD, 0x43, 0xE8, 0xAB, 0xB8, 0x43, -+ 0xE8, 0xAB, 0xBE, 0x43, 0xE8, 0xAC, 0x81, 0x43, -+ 0xE8, 0xAC, 0xB9, 0x43, 0xE8, 0xAD, 0x98, 0x43, -+ 0xE8, 0xAE, 0x80, 0x43, 0xE8, 0xAE, 0x8A, 0x43, -+ 0xE8, 0xB0, 0xB7, 0x43, 0xE8, 0xB1, 0x86, 0x43, -+ 0xE8, 0xB1, 0x88, 0x43, 0xE8, 0xB1, 0x95, 0x43, -+ // Bytes 1380 - 13bf -+ 0xE8, 0xB1, 0xB8, 0x43, 0xE8, 0xB2, 0x9D, 0x43, -+ 0xE8, 0xB2, 0xA1, 0x43, 0xE8, 0xB2, 0xA9, 0x43, -+ 0xE8, 0xB2, 0xAB, 0x43, 0xE8, 0xB3, 0x81, 0x43, -+ 0xE8, 0xB3, 0x82, 0x43, 0xE8, 0xB3, 0x87, 0x43, -+ 0xE8, 0xB3, 0x88, 0x43, 0xE8, 0xB3, 0x93, 0x43, -+ 0xE8, 0xB4, 0x88, 0x43, 0xE8, 0xB4, 0x9B, 0x43, -+ 0xE8, 0xB5, 0xA4, 0x43, 0xE8, 0xB5, 0xB0, 0x43, -+ 0xE8, 0xB5, 0xB7, 0x43, 0xE8, 0xB6, 0xB3, 0x43, -+ // Bytes 13c0 - 13ff -+ 0xE8, 0xB6, 0xBC, 0x43, 0xE8, 0xB7, 0x8B, 0x43, -+ 0xE8, 0xB7, 0xAF, 0x43, 0xE8, 0xB7, 0xB0, 0x43, -+ 0xE8, 0xBA, 0xAB, 0x43, 0xE8, 0xBB, 0x8A, 0x43, -+ 0xE8, 0xBB, 0x94, 0x43, 0xE8, 0xBC, 0xA6, 0x43, -+ 0xE8, 0xBC, 0xAA, 0x43, 0xE8, 0xBC, 0xB8, 0x43, -+ 0xE8, 0xBC, 0xBB, 0x43, 0xE8, 0xBD, 0xA2, 0x43, -+ 0xE8, 0xBE, 0x9B, 0x43, 0xE8, 0xBE, 0x9E, 0x43, -+ 0xE8, 0xBE, 0xB0, 0x43, 0xE8, 0xBE, 0xB5, 0x43, -+ // Bytes 1400 - 143f -+ 0xE8, 0xBE, 0xB6, 0x43, 0xE9, 0x80, 0xA3, 0x43, -+ 0xE9, 0x80, 0xB8, 0x43, 0xE9, 0x81, 0x8A, 0x43, -+ 0xE9, 0x81, 0xA9, 0x43, 0xE9, 0x81, 0xB2, 0x43, -+ 0xE9, 0x81, 0xBC, 0x43, 0xE9, 0x82, 0x8F, 0x43, -+ 0xE9, 0x82, 0x91, 0x43, 0xE9, 0x82, 0x94, 0x43, -+ 0xE9, 0x83, 0x8E, 0x43, 0xE9, 0x83, 0x9E, 0x43, -+ 0xE9, 0x83, 0xB1, 0x43, 0xE9, 0x83, 0xBD, 0x43, -+ 0xE9, 0x84, 0x91, 0x43, 0xE9, 0x84, 0x9B, 0x43, -+ // Bytes 1440 - 147f -+ 0xE9, 0x85, 0x89, 0x43, 0xE9, 0x85, 0x8D, 0x43, -+ 0xE9, 0x85, 0xAA, 0x43, 0xE9, 0x86, 0x99, 0x43, -+ 0xE9, 0x86, 0xB4, 0x43, 0xE9, 0x87, 0x86, 0x43, -+ 0xE9, 0x87, 0x8C, 0x43, 0xE9, 0x87, 0x8F, 0x43, -+ 0xE9, 0x87, 0x91, 0x43, 0xE9, 0x88, 0xB4, 0x43, -+ 0xE9, 0x88, 0xB8, 0x43, 0xE9, 0x89, 0xB6, 0x43, -+ 0xE9, 0x89, 0xBC, 0x43, 0xE9, 0x8B, 0x97, 0x43, -+ 0xE9, 0x8B, 0x98, 0x43, 0xE9, 0x8C, 0x84, 0x43, -+ // Bytes 1480 - 14bf -+ 0xE9, 0x8D, 0x8A, 0x43, 0xE9, 0x8F, 0xB9, 0x43, -+ 0xE9, 0x90, 0x95, 0x43, 0xE9, 0x95, 0xB7, 0x43, -+ 0xE9, 0x96, 0x80, 0x43, 0xE9, 0x96, 0x8B, 0x43, -+ 0xE9, 0x96, 0xAD, 0x43, 0xE9, 0x96, 0xB7, 0x43, -+ 0xE9, 0x98, 0x9C, 0x43, 0xE9, 0x98, 0xAE, 0x43, -+ 0xE9, 0x99, 0x8B, 0x43, 0xE9, 0x99, 0x8D, 0x43, -+ 0xE9, 0x99, 0xB5, 0x43, 0xE9, 0x99, 0xB8, 0x43, -+ 0xE9, 0x99, 0xBC, 0x43, 0xE9, 0x9A, 0x86, 0x43, -+ // Bytes 14c0 - 14ff -+ 0xE9, 0x9A, 0xA3, 0x43, 0xE9, 0x9A, 0xB6, 0x43, -+ 0xE9, 0x9A, 0xB7, 0x43, 0xE9, 0x9A, 0xB8, 0x43, -+ 0xE9, 0x9A, 0xB9, 0x43, 0xE9, 0x9B, 0x83, 0x43, -+ 0xE9, 0x9B, 0xA2, 0x43, 0xE9, 0x9B, 0xA3, 0x43, -+ 0xE9, 0x9B, 0xA8, 0x43, 0xE9, 0x9B, 0xB6, 0x43, -+ 0xE9, 0x9B, 0xB7, 0x43, 0xE9, 0x9C, 0xA3, 0x43, -+ 0xE9, 0x9C, 0xB2, 0x43, 0xE9, 0x9D, 0x88, 0x43, -+ 0xE9, 0x9D, 0x91, 0x43, 0xE9, 0x9D, 0x96, 0x43, -+ // Bytes 1500 - 153f -+ 0xE9, 0x9D, 0x9E, 0x43, 0xE9, 0x9D, 0xA2, 0x43, -+ 0xE9, 0x9D, 0xA9, 0x43, 0xE9, 0x9F, 0x8B, 0x43, -+ 0xE9, 0x9F, 0x9B, 0x43, 0xE9, 0x9F, 0xA0, 0x43, -+ 0xE9, 0x9F, 0xAD, 0x43, 0xE9, 0x9F, 0xB3, 0x43, -+ 0xE9, 0x9F, 0xBF, 0x43, 0xE9, 0xA0, 0x81, 0x43, -+ 0xE9, 0xA0, 0x85, 0x43, 0xE9, 0xA0, 0x8B, 0x43, -+ 0xE9, 0xA0, 0x98, 0x43, 0xE9, 0xA0, 0xA9, 0x43, -+ 0xE9, 0xA0, 0xBB, 0x43, 0xE9, 0xA1, 0x9E, 0x43, -+ // Bytes 1540 - 157f -+ 0xE9, 0xA2, 0xA8, 0x43, 0xE9, 0xA3, 0x9B, 0x43, -+ 0xE9, 0xA3, 0x9F, 0x43, 0xE9, 0xA3, 0xA2, 0x43, -+ 0xE9, 0xA3, 0xAF, 0x43, 0xE9, 0xA3, 0xBC, 0x43, -+ 0xE9, 0xA4, 0xA8, 0x43, 0xE9, 0xA4, 0xA9, 0x43, -+ 0xE9, 0xA6, 0x96, 0x43, 0xE9, 0xA6, 0x99, 0x43, -+ 0xE9, 0xA6, 0xA7, 0x43, 0xE9, 0xA6, 0xAC, 0x43, -+ 0xE9, 0xA7, 0x82, 0x43, 0xE9, 0xA7, 0xB1, 0x43, -+ 0xE9, 0xA7, 0xBE, 0x43, 0xE9, 0xA9, 0xAA, 0x43, -+ // Bytes 1580 - 15bf -+ 0xE9, 0xAA, 0xA8, 0x43, 0xE9, 0xAB, 0x98, 0x43, -+ 0xE9, 0xAB, 0x9F, 0x43, 0xE9, 0xAC, 0x92, 0x43, -+ 0xE9, 0xAC, 0xA5, 0x43, 0xE9, 0xAC, 0xAF, 0x43, -+ 0xE9, 0xAC, 0xB2, 0x43, 0xE9, 0xAC, 0xBC, 0x43, -+ 0xE9, 0xAD, 0x9A, 0x43, 0xE9, 0xAD, 0xAF, 0x43, -+ 0xE9, 0xB1, 0x80, 0x43, 0xE9, 0xB1, 0x97, 0x43, -+ 0xE9, 0xB3, 0xA5, 0x43, 0xE9, 0xB3, 0xBD, 0x43, -+ 0xE9, 0xB5, 0xA7, 0x43, 0xE9, 0xB6, 0xB4, 0x43, -+ // Bytes 15c0 - 15ff -+ 0xE9, 0xB7, 0xBA, 0x43, 0xE9, 0xB8, 0x9E, 0x43, -+ 0xE9, 0xB9, 0xB5, 0x43, 0xE9, 0xB9, 0xBF, 0x43, -+ 0xE9, 0xBA, 0x97, 0x43, 0xE9, 0xBA, 0x9F, 0x43, -+ 0xE9, 0xBA, 0xA5, 0x43, 0xE9, 0xBA, 0xBB, 0x43, -+ 0xE9, 0xBB, 0x83, 0x43, 0xE9, 0xBB, 0x8D, 0x43, -+ 0xE9, 0xBB, 0x8E, 0x43, 0xE9, 0xBB, 0x91, 0x43, -+ 0xE9, 0xBB, 0xB9, 0x43, 0xE9, 0xBB, 0xBD, 0x43, -+ 0xE9, 0xBB, 0xBE, 0x43, 0xE9, 0xBC, 0x85, 0x43, -+ // Bytes 1600 - 163f -+ 0xE9, 0xBC, 0x8E, 0x43, 0xE9, 0xBC, 0x8F, 0x43, -+ 0xE9, 0xBC, 0x93, 0x43, 0xE9, 0xBC, 0x96, 0x43, -+ 0xE9, 0xBC, 0xA0, 0x43, 0xE9, 0xBC, 0xBB, 0x43, -+ 0xE9, 0xBD, 0x83, 0x43, 0xE9, 0xBD, 0x8A, 0x43, -+ 0xE9, 0xBD, 0x92, 0x43, 0xE9, 0xBE, 0x8D, 0x43, -+ 0xE9, 0xBE, 0x8E, 0x43, 0xE9, 0xBE, 0x9C, 0x43, -+ 0xE9, 0xBE, 0x9F, 0x43, 0xE9, 0xBE, 0xA0, 0x43, -+ 0xEA, 0x9C, 0xA7, 0x43, 0xEA, 0x9D, 0xAF, 0x43, -+ // Bytes 1640 - 167f -+ 0xEA, 0xAC, 0xB7, 0x43, 0xEA, 0xAD, 0x92, 0x44, -+ 0xF0, 0xA0, 0x84, 0xA2, 0x44, 0xF0, 0xA0, 0x94, -+ 0x9C, 0x44, 0xF0, 0xA0, 0x94, 0xA5, 0x44, 0xF0, -+ 0xA0, 0x95, 0x8B, 0x44, 0xF0, 0xA0, 0x98, 0xBA, -+ 0x44, 0xF0, 0xA0, 0xA0, 0x84, 0x44, 0xF0, 0xA0, -+ 0xA3, 0x9E, 0x44, 0xF0, 0xA0, 0xA8, 0xAC, 0x44, -+ 0xF0, 0xA0, 0xAD, 0xA3, 0x44, 0xF0, 0xA1, 0x93, -+ 0xA4, 0x44, 0xF0, 0xA1, 0x9A, 0xA8, 0x44, 0xF0, -+ // Bytes 1680 - 16bf -+ 0xA1, 0x9B, 0xAA, 0x44, 0xF0, 0xA1, 0xA7, 0x88, -+ 0x44, 0xF0, 0xA1, 0xAC, 0x98, 0x44, 0xF0, 0xA1, -+ 0xB4, 0x8B, 0x44, 0xF0, 0xA1, 0xB7, 0xA4, 0x44, -+ 0xF0, 0xA1, 0xB7, 0xA6, 0x44, 0xF0, 0xA2, 0x86, -+ 0x83, 0x44, 0xF0, 0xA2, 0x86, 0x9F, 0x44, 0xF0, -+ 0xA2, 0x8C, 0xB1, 0x44, 0xF0, 0xA2, 0x9B, 0x94, -+ 0x44, 0xF0, 0xA2, 0xA1, 0x84, 0x44, 0xF0, 0xA2, -+ 0xA1, 0x8A, 0x44, 0xF0, 0xA2, 0xAC, 0x8C, 0x44, -+ // Bytes 16c0 - 16ff -+ 0xF0, 0xA2, 0xAF, 0xB1, 0x44, 0xF0, 0xA3, 0x80, -+ 0x8A, 0x44, 0xF0, 0xA3, 0x8A, 0xB8, 0x44, 0xF0, -+ 0xA3, 0x8D, 0x9F, 0x44, 0xF0, 0xA3, 0x8E, 0x93, -+ 0x44, 0xF0, 0xA3, 0x8E, 0x9C, 0x44, 0xF0, 0xA3, -+ 0x8F, 0x83, 0x44, 0xF0, 0xA3, 0x8F, 0x95, 0x44, -+ 0xF0, 0xA3, 0x91, 0xAD, 0x44, 0xF0, 0xA3, 0x9A, -+ 0xA3, 0x44, 0xF0, 0xA3, 0xA2, 0xA7, 0x44, 0xF0, -+ 0xA3, 0xAA, 0x8D, 0x44, 0xF0, 0xA3, 0xAB, 0xBA, -+ // Bytes 1700 - 173f -+ 0x44, 0xF0, 0xA3, 0xB2, 0xBC, 0x44, 0xF0, 0xA3, -+ 0xB4, 0x9E, 0x44, 0xF0, 0xA3, 0xBB, 0x91, 0x44, -+ 0xF0, 0xA3, 0xBD, 0x9E, 0x44, 0xF0, 0xA3, 0xBE, -+ 0x8E, 0x44, 0xF0, 0xA4, 0x89, 0xA3, 0x44, 0xF0, -+ 0xA4, 0x8B, 0xAE, 0x44, 0xF0, 0xA4, 0x8E, 0xAB, -+ 0x44, 0xF0, 0xA4, 0x98, 0x88, 0x44, 0xF0, 0xA4, -+ 0x9C, 0xB5, 0x44, 0xF0, 0xA4, 0xA0, 0x94, 0x44, -+ 0xF0, 0xA4, 0xB0, 0xB6, 0x44, 0xF0, 0xA4, 0xB2, -+ // Bytes 1740 - 177f -+ 0x92, 0x44, 0xF0, 0xA4, 0xBE, 0xA1, 0x44, 0xF0, -+ 0xA4, 0xBE, 0xB8, 0x44, 0xF0, 0xA5, 0x81, 0x84, -+ 0x44, 0xF0, 0xA5, 0x83, 0xB2, 0x44, 0xF0, 0xA5, -+ 0x83, 0xB3, 0x44, 0xF0, 0xA5, 0x84, 0x99, 0x44, -+ 0xF0, 0xA5, 0x84, 0xB3, 0x44, 0xF0, 0xA5, 0x89, -+ 0x89, 0x44, 0xF0, 0xA5, 0x90, 0x9D, 0x44, 0xF0, -+ 0xA5, 0x98, 0xA6, 0x44, 0xF0, 0xA5, 0x9A, 0x9A, -+ 0x44, 0xF0, 0xA5, 0x9B, 0x85, 0x44, 0xF0, 0xA5, -+ // Bytes 1780 - 17bf -+ 0xA5, 0xBC, 0x44, 0xF0, 0xA5, 0xAA, 0xA7, 0x44, -+ 0xF0, 0xA5, 0xAE, 0xAB, 0x44, 0xF0, 0xA5, 0xB2, -+ 0x80, 0x44, 0xF0, 0xA5, 0xB3, 0x90, 0x44, 0xF0, -+ 0xA5, 0xBE, 0x86, 0x44, 0xF0, 0xA6, 0x87, 0x9A, -+ 0x44, 0xF0, 0xA6, 0x88, 0xA8, 0x44, 0xF0, 0xA6, -+ 0x89, 0x87, 0x44, 0xF0, 0xA6, 0x8B, 0x99, 0x44, -+ 0xF0, 0xA6, 0x8C, 0xBE, 0x44, 0xF0, 0xA6, 0x93, -+ 0x9A, 0x44, 0xF0, 0xA6, 0x94, 0xA3, 0x44, 0xF0, -+ // Bytes 17c0 - 17ff -+ 0xA6, 0x96, 0xA8, 0x44, 0xF0, 0xA6, 0x9E, 0xA7, -+ 0x44, 0xF0, 0xA6, 0x9E, 0xB5, 0x44, 0xF0, 0xA6, -+ 0xAC, 0xBC, 0x44, 0xF0, 0xA6, 0xB0, 0xB6, 0x44, -+ 0xF0, 0xA6, 0xB3, 0x95, 0x44, 0xF0, 0xA6, 0xB5, -+ 0xAB, 0x44, 0xF0, 0xA6, 0xBC, 0xAC, 0x44, 0xF0, -+ 0xA6, 0xBE, 0xB1, 0x44, 0xF0, 0xA7, 0x83, 0x92, -+ 0x44, 0xF0, 0xA7, 0x8F, 0x8A, 0x44, 0xF0, 0xA7, -+ 0x99, 0xA7, 0x44, 0xF0, 0xA7, 0xA2, 0xAE, 0x44, -+ // Bytes 1800 - 183f -+ 0xF0, 0xA7, 0xA5, 0xA6, 0x44, 0xF0, 0xA7, 0xB2, -+ 0xA8, 0x44, 0xF0, 0xA7, 0xBB, 0x93, 0x44, 0xF0, -+ 0xA7, 0xBC, 0xAF, 0x44, 0xF0, 0xA8, 0x97, 0x92, -+ 0x44, 0xF0, 0xA8, 0x97, 0xAD, 0x44, 0xF0, 0xA8, -+ 0x9C, 0xAE, 0x44, 0xF0, 0xA8, 0xAF, 0xBA, 0x44, -+ 0xF0, 0xA8, 0xB5, 0xB7, 0x44, 0xF0, 0xA9, 0x85, -+ 0x85, 0x44, 0xF0, 0xA9, 0x87, 0x9F, 0x44, 0xF0, -+ 0xA9, 0x88, 0x9A, 0x44, 0xF0, 0xA9, 0x90, 0x8A, -+ // Bytes 1840 - 187f -+ 0x44, 0xF0, 0xA9, 0x92, 0x96, 0x44, 0xF0, 0xA9, -+ 0x96, 0xB6, 0x44, 0xF0, 0xA9, 0xAC, 0xB0, 0x44, -+ 0xF0, 0xAA, 0x83, 0x8E, 0x44, 0xF0, 0xAA, 0x84, -+ 0x85, 0x44, 0xF0, 0xAA, 0x88, 0x8E, 0x44, 0xF0, -+ 0xAA, 0x8A, 0x91, 0x44, 0xF0, 0xAA, 0x8E, 0x92, -+ 0x44, 0xF0, 0xAA, 0x98, 0x80, 0x42, 0x21, 0x21, -+ 0x42, 0x21, 0x3F, 0x42, 0x2E, 0x2E, 0x42, 0x30, -+ 0x2C, 0x42, 0x30, 0x2E, 0x42, 0x31, 0x2C, 0x42, -+ // Bytes 1880 - 18bf -+ 0x31, 0x2E, 0x42, 0x31, 0x30, 0x42, 0x31, 0x31, -+ 0x42, 0x31, 0x32, 0x42, 0x31, 0x33, 0x42, 0x31, -+ 0x34, 0x42, 0x31, 0x35, 0x42, 0x31, 0x36, 0x42, -+ 0x31, 0x37, 0x42, 0x31, 0x38, 0x42, 0x31, 0x39, -+ 0x42, 0x32, 0x2C, 0x42, 0x32, 0x2E, 0x42, 0x32, -+ 0x30, 0x42, 0x32, 0x31, 0x42, 0x32, 0x32, 0x42, -+ 0x32, 0x33, 0x42, 0x32, 0x34, 0x42, 0x32, 0x35, -+ 0x42, 0x32, 0x36, 0x42, 0x32, 0x37, 0x42, 0x32, -+ // Bytes 18c0 - 18ff -+ 0x38, 0x42, 0x32, 0x39, 0x42, 0x33, 0x2C, 0x42, -+ 0x33, 0x2E, 0x42, 0x33, 0x30, 0x42, 0x33, 0x31, -+ 0x42, 0x33, 0x32, 0x42, 0x33, 0x33, 0x42, 0x33, -+ 0x34, 0x42, 0x33, 0x35, 0x42, 0x33, 0x36, 0x42, -+ 0x33, 0x37, 0x42, 0x33, 0x38, 0x42, 0x33, 0x39, -+ 0x42, 0x34, 0x2C, 0x42, 0x34, 0x2E, 0x42, 0x34, -+ 0x30, 0x42, 0x34, 0x31, 0x42, 0x34, 0x32, 0x42, -+ 0x34, 0x33, 0x42, 0x34, 0x34, 0x42, 0x34, 0x35, -+ // Bytes 1900 - 193f -+ 0x42, 0x34, 0x36, 0x42, 0x34, 0x37, 0x42, 0x34, -+ 0x38, 0x42, 0x34, 0x39, 0x42, 0x35, 0x2C, 0x42, -+ 0x35, 0x2E, 0x42, 0x35, 0x30, 0x42, 0x36, 0x2C, -+ 0x42, 0x36, 0x2E, 0x42, 0x37, 0x2C, 0x42, 0x37, -+ 0x2E, 0x42, 0x38, 0x2C, 0x42, 0x38, 0x2E, 0x42, -+ 0x39, 0x2C, 0x42, 0x39, 0x2E, 0x42, 0x3D, 0x3D, -+ 0x42, 0x3F, 0x21, 0x42, 0x3F, 0x3F, 0x42, 0x41, -+ 0x55, 0x42, 0x42, 0x71, 0x42, 0x43, 0x44, 0x42, -+ // Bytes 1940 - 197f -+ 0x44, 0x4A, 0x42, 0x44, 0x5A, 0x42, 0x44, 0x7A, -+ 0x42, 0x47, 0x42, 0x42, 0x47, 0x79, 0x42, 0x48, -+ 0x50, 0x42, 0x48, 0x56, 0x42, 0x48, 0x67, 0x42, -+ 0x48, 0x7A, 0x42, 0x49, 0x49, 0x42, 0x49, 0x4A, -+ 0x42, 0x49, 0x55, 0x42, 0x49, 0x56, 0x42, 0x49, -+ 0x58, 0x42, 0x4B, 0x42, 0x42, 0x4B, 0x4B, 0x42, -+ 0x4B, 0x4D, 0x42, 0x4C, 0x4A, 0x42, 0x4C, 0x6A, -+ 0x42, 0x4D, 0x42, 0x42, 0x4D, 0x43, 0x42, 0x4D, -+ // Bytes 1980 - 19bf -+ 0x44, 0x42, 0x4D, 0x52, 0x42, 0x4D, 0x56, 0x42, -+ 0x4D, 0x57, 0x42, 0x4E, 0x4A, 0x42, 0x4E, 0x6A, -+ 0x42, 0x4E, 0x6F, 0x42, 0x50, 0x48, 0x42, 0x50, -+ 0x52, 0x42, 0x50, 0x61, 0x42, 0x52, 0x73, 0x42, -+ 0x53, 0x44, 0x42, 0x53, 0x4D, 0x42, 0x53, 0x53, -+ 0x42, 0x53, 0x76, 0x42, 0x54, 0x4D, 0x42, 0x56, -+ 0x49, 0x42, 0x57, 0x43, 0x42, 0x57, 0x5A, 0x42, -+ 0x57, 0x62, 0x42, 0x58, 0x49, 0x42, 0x63, 0x63, -+ // Bytes 19c0 - 19ff -+ 0x42, 0x63, 0x64, 0x42, 0x63, 0x6D, 0x42, 0x64, -+ 0x42, 0x42, 0x64, 0x61, 0x42, 0x64, 0x6C, 0x42, -+ 0x64, 0x6D, 0x42, 0x64, 0x7A, 0x42, 0x65, 0x56, -+ 0x42, 0x66, 0x66, 0x42, 0x66, 0x69, 0x42, 0x66, -+ 0x6C, 0x42, 0x66, 0x6D, 0x42, 0x68, 0x61, 0x42, -+ 0x69, 0x69, 0x42, 0x69, 0x6A, 0x42, 0x69, 0x6E, -+ 0x42, 0x69, 0x76, 0x42, 0x69, 0x78, 0x42, 0x6B, -+ 0x41, 0x42, 0x6B, 0x56, 0x42, 0x6B, 0x57, 0x42, -+ // Bytes 1a00 - 1a3f -+ 0x6B, 0x67, 0x42, 0x6B, 0x6C, 0x42, 0x6B, 0x6D, -+ 0x42, 0x6B, 0x74, 0x42, 0x6C, 0x6A, 0x42, 0x6C, -+ 0x6D, 0x42, 0x6C, 0x6E, 0x42, 0x6C, 0x78, 0x42, -+ 0x6D, 0x32, 0x42, 0x6D, 0x33, 0x42, 0x6D, 0x41, -+ 0x42, 0x6D, 0x56, 0x42, 0x6D, 0x57, 0x42, 0x6D, -+ 0x62, 0x42, 0x6D, 0x67, 0x42, 0x6D, 0x6C, 0x42, -+ 0x6D, 0x6D, 0x42, 0x6D, 0x73, 0x42, 0x6E, 0x41, -+ 0x42, 0x6E, 0x46, 0x42, 0x6E, 0x56, 0x42, 0x6E, -+ // Bytes 1a40 - 1a7f -+ 0x57, 0x42, 0x6E, 0x6A, 0x42, 0x6E, 0x6D, 0x42, -+ 0x6E, 0x73, 0x42, 0x6F, 0x56, 0x42, 0x70, 0x41, -+ 0x42, 0x70, 0x46, 0x42, 0x70, 0x56, 0x42, 0x70, -+ 0x57, 0x42, 0x70, 0x63, 0x42, 0x70, 0x73, 0x42, -+ 0x73, 0x72, 0x42, 0x73, 0x74, 0x42, 0x76, 0x69, -+ 0x42, 0x78, 0x69, 0x43, 0x28, 0x31, 0x29, 0x43, -+ 0x28, 0x32, 0x29, 0x43, 0x28, 0x33, 0x29, 0x43, -+ 0x28, 0x34, 0x29, 0x43, 0x28, 0x35, 0x29, 0x43, -+ // Bytes 1a80 - 1abf -+ 0x28, 0x36, 0x29, 0x43, 0x28, 0x37, 0x29, 0x43, -+ 0x28, 0x38, 0x29, 0x43, 0x28, 0x39, 0x29, 0x43, -+ 0x28, 0x41, 0x29, 0x43, 0x28, 0x42, 0x29, 0x43, -+ 0x28, 0x43, 0x29, 0x43, 0x28, 0x44, 0x29, 0x43, -+ 0x28, 0x45, 0x29, 0x43, 0x28, 0x46, 0x29, 0x43, -+ 0x28, 0x47, 0x29, 0x43, 0x28, 0x48, 0x29, 0x43, -+ 0x28, 0x49, 0x29, 0x43, 0x28, 0x4A, 0x29, 0x43, -+ 0x28, 0x4B, 0x29, 0x43, 0x28, 0x4C, 0x29, 0x43, -+ // Bytes 1ac0 - 1aff -+ 0x28, 0x4D, 0x29, 0x43, 0x28, 0x4E, 0x29, 0x43, -+ 0x28, 0x4F, 0x29, 0x43, 0x28, 0x50, 0x29, 0x43, -+ 0x28, 0x51, 0x29, 0x43, 0x28, 0x52, 0x29, 0x43, -+ 0x28, 0x53, 0x29, 0x43, 0x28, 0x54, 0x29, 0x43, -+ 0x28, 0x55, 0x29, 0x43, 0x28, 0x56, 0x29, 0x43, -+ 0x28, 0x57, 0x29, 0x43, 0x28, 0x58, 0x29, 0x43, -+ 0x28, 0x59, 0x29, 0x43, 0x28, 0x5A, 0x29, 0x43, -+ 0x28, 0x61, 0x29, 0x43, 0x28, 0x62, 0x29, 0x43, -+ // Bytes 1b00 - 1b3f -+ 0x28, 0x63, 0x29, 0x43, 0x28, 0x64, 0x29, 0x43, -+ 0x28, 0x65, 0x29, 0x43, 0x28, 0x66, 0x29, 0x43, -+ 0x28, 0x67, 0x29, 0x43, 0x28, 0x68, 0x29, 0x43, -+ 0x28, 0x69, 0x29, 0x43, 0x28, 0x6A, 0x29, 0x43, -+ 0x28, 0x6B, 0x29, 0x43, 0x28, 0x6C, 0x29, 0x43, -+ 0x28, 0x6D, 0x29, 0x43, 0x28, 0x6E, 0x29, 0x43, -+ 0x28, 0x6F, 0x29, 0x43, 0x28, 0x70, 0x29, 0x43, -+ 0x28, 0x71, 0x29, 0x43, 0x28, 0x72, 0x29, 0x43, -+ // Bytes 1b40 - 1b7f -+ 0x28, 0x73, 0x29, 0x43, 0x28, 0x74, 0x29, 0x43, -+ 0x28, 0x75, 0x29, 0x43, 0x28, 0x76, 0x29, 0x43, -+ 0x28, 0x77, 0x29, 0x43, 0x28, 0x78, 0x29, 0x43, -+ 0x28, 0x79, 0x29, 0x43, 0x28, 0x7A, 0x29, 0x43, -+ 0x2E, 0x2E, 0x2E, 0x43, 0x31, 0x30, 0x2E, 0x43, -+ 0x31, 0x31, 0x2E, 0x43, 0x31, 0x32, 0x2E, 0x43, -+ 0x31, 0x33, 0x2E, 0x43, 0x31, 0x34, 0x2E, 0x43, -+ 0x31, 0x35, 0x2E, 0x43, 0x31, 0x36, 0x2E, 0x43, -+ // Bytes 1b80 - 1bbf -+ 0x31, 0x37, 0x2E, 0x43, 0x31, 0x38, 0x2E, 0x43, -+ 0x31, 0x39, 0x2E, 0x43, 0x32, 0x30, 0x2E, 0x43, -+ 0x3A, 0x3A, 0x3D, 0x43, 0x3D, 0x3D, 0x3D, 0x43, -+ 0x43, 0x6F, 0x2E, 0x43, 0x46, 0x41, 0x58, 0x43, -+ 0x47, 0x48, 0x7A, 0x43, 0x47, 0x50, 0x61, 0x43, -+ 0x49, 0x49, 0x49, 0x43, 0x4C, 0x54, 0x44, 0x43, -+ 0x4C, 0xC2, 0xB7, 0x43, 0x4D, 0x48, 0x7A, 0x43, -+ 0x4D, 0x50, 0x61, 0x43, 0x4D, 0xCE, 0xA9, 0x43, -+ // Bytes 1bc0 - 1bff -+ 0x50, 0x50, 0x4D, 0x43, 0x50, 0x50, 0x56, 0x43, -+ 0x50, 0x54, 0x45, 0x43, 0x54, 0x45, 0x4C, 0x43, -+ 0x54, 0x48, 0x7A, 0x43, 0x56, 0x49, 0x49, 0x43, -+ 0x58, 0x49, 0x49, 0x43, 0x61, 0x2F, 0x63, 0x43, -+ 0x61, 0x2F, 0x73, 0x43, 0x61, 0xCA, 0xBE, 0x43, -+ 0x62, 0x61, 0x72, 0x43, 0x63, 0x2F, 0x6F, 0x43, -+ 0x63, 0x2F, 0x75, 0x43, 0x63, 0x61, 0x6C, 0x43, -+ 0x63, 0x6D, 0x32, 0x43, 0x63, 0x6D, 0x33, 0x43, -+ // Bytes 1c00 - 1c3f -+ 0x64, 0x6D, 0x32, 0x43, 0x64, 0x6D, 0x33, 0x43, -+ 0x65, 0x72, 0x67, 0x43, 0x66, 0x66, 0x69, 0x43, -+ 0x66, 0x66, 0x6C, 0x43, 0x67, 0x61, 0x6C, 0x43, -+ 0x68, 0x50, 0x61, 0x43, 0x69, 0x69, 0x69, 0x43, -+ 0x6B, 0x48, 0x7A, 0x43, 0x6B, 0x50, 0x61, 0x43, -+ 0x6B, 0x6D, 0x32, 0x43, 0x6B, 0x6D, 0x33, 0x43, -+ 0x6B, 0xCE, 0xA9, 0x43, 0x6C, 0x6F, 0x67, 0x43, -+ 0x6C, 0xC2, 0xB7, 0x43, 0x6D, 0x69, 0x6C, 0x43, -+ // Bytes 1c40 - 1c7f -+ 0x6D, 0x6D, 0x32, 0x43, 0x6D, 0x6D, 0x33, 0x43, -+ 0x6D, 0x6F, 0x6C, 0x43, 0x72, 0x61, 0x64, 0x43, -+ 0x76, 0x69, 0x69, 0x43, 0x78, 0x69, 0x69, 0x43, -+ 0xC2, 0xB0, 0x43, 0x43, 0xC2, 0xB0, 0x46, 0x43, -+ 0xCA, 0xBC, 0x6E, 0x43, 0xCE, 0xBC, 0x41, 0x43, -+ 0xCE, 0xBC, 0x46, 0x43, 0xCE, 0xBC, 0x56, 0x43, -+ 0xCE, 0xBC, 0x57, 0x43, 0xCE, 0xBC, 0x67, 0x43, -+ 0xCE, 0xBC, 0x6C, 0x43, 0xCE, 0xBC, 0x6D, 0x43, -+ // Bytes 1c80 - 1cbf -+ 0xCE, 0xBC, 0x73, 0x44, 0x28, 0x31, 0x30, 0x29, -+ 0x44, 0x28, 0x31, 0x31, 0x29, 0x44, 0x28, 0x31, -+ 0x32, 0x29, 0x44, 0x28, 0x31, 0x33, 0x29, 0x44, -+ 0x28, 0x31, 0x34, 0x29, 0x44, 0x28, 0x31, 0x35, -+ 0x29, 0x44, 0x28, 0x31, 0x36, 0x29, 0x44, 0x28, -+ 0x31, 0x37, 0x29, 0x44, 0x28, 0x31, 0x38, 0x29, -+ 0x44, 0x28, 0x31, 0x39, 0x29, 0x44, 0x28, 0x32, -+ 0x30, 0x29, 0x44, 0x30, 0xE7, 0x82, 0xB9, 0x44, -+ // Bytes 1cc0 - 1cff -+ 0x31, 0xE2, 0x81, 0x84, 0x44, 0x31, 0xE6, 0x97, -+ 0xA5, 0x44, 0x31, 0xE6, 0x9C, 0x88, 0x44, 0x31, -+ 0xE7, 0x82, 0xB9, 0x44, 0x32, 0xE6, 0x97, 0xA5, -+ 0x44, 0x32, 0xE6, 0x9C, 0x88, 0x44, 0x32, 0xE7, -+ 0x82, 0xB9, 0x44, 0x33, 0xE6, 0x97, 0xA5, 0x44, -+ 0x33, 0xE6, 0x9C, 0x88, 0x44, 0x33, 0xE7, 0x82, -+ 0xB9, 0x44, 0x34, 0xE6, 0x97, 0xA5, 0x44, 0x34, -+ 0xE6, 0x9C, 0x88, 0x44, 0x34, 0xE7, 0x82, 0xB9, -+ // Bytes 1d00 - 1d3f -+ 0x44, 0x35, 0xE6, 0x97, 0xA5, 0x44, 0x35, 0xE6, -+ 0x9C, 0x88, 0x44, 0x35, 0xE7, 0x82, 0xB9, 0x44, -+ 0x36, 0xE6, 0x97, 0xA5, 0x44, 0x36, 0xE6, 0x9C, -+ 0x88, 0x44, 0x36, 0xE7, 0x82, 0xB9, 0x44, 0x37, -+ 0xE6, 0x97, 0xA5, 0x44, 0x37, 0xE6, 0x9C, 0x88, -+ 0x44, 0x37, 0xE7, 0x82, 0xB9, 0x44, 0x38, 0xE6, -+ 0x97, 0xA5, 0x44, 0x38, 0xE6, 0x9C, 0x88, 0x44, -+ 0x38, 0xE7, 0x82, 0xB9, 0x44, 0x39, 0xE6, 0x97, -+ // Bytes 1d40 - 1d7f -+ 0xA5, 0x44, 0x39, 0xE6, 0x9C, 0x88, 0x44, 0x39, -+ 0xE7, 0x82, 0xB9, 0x44, 0x56, 0x49, 0x49, 0x49, -+ 0x44, 0x61, 0x2E, 0x6D, 0x2E, 0x44, 0x6B, 0x63, -+ 0x61, 0x6C, 0x44, 0x70, 0x2E, 0x6D, 0x2E, 0x44, -+ 0x76, 0x69, 0x69, 0x69, 0x44, 0xD5, 0xA5, 0xD6, -+ 0x82, 0x44, 0xD5, 0xB4, 0xD5, 0xA5, 0x44, 0xD5, -+ 0xB4, 0xD5, 0xAB, 0x44, 0xD5, 0xB4, 0xD5, 0xAD, -+ 0x44, 0xD5, 0xB4, 0xD5, 0xB6, 0x44, 0xD5, 0xBE, -+ // Bytes 1d80 - 1dbf -+ 0xD5, 0xB6, 0x44, 0xD7, 0x90, 0xD7, 0x9C, 0x44, -+ 0xD8, 0xA7, 0xD9, 0xB4, 0x44, 0xD8, 0xA8, 0xD8, -+ 0xAC, 0x44, 0xD8, 0xA8, 0xD8, 0xAD, 0x44, 0xD8, -+ 0xA8, 0xD8, 0xAE, 0x44, 0xD8, 0xA8, 0xD8, 0xB1, -+ 0x44, 0xD8, 0xA8, 0xD8, 0xB2, 0x44, 0xD8, 0xA8, -+ 0xD9, 0x85, 0x44, 0xD8, 0xA8, 0xD9, 0x86, 0x44, -+ 0xD8, 0xA8, 0xD9, 0x87, 0x44, 0xD8, 0xA8, 0xD9, -+ 0x89, 0x44, 0xD8, 0xA8, 0xD9, 0x8A, 0x44, 0xD8, -+ // Bytes 1dc0 - 1dff -+ 0xAA, 0xD8, 0xAC, 0x44, 0xD8, 0xAA, 0xD8, 0xAD, -+ 0x44, 0xD8, 0xAA, 0xD8, 0xAE, 0x44, 0xD8, 0xAA, -+ 0xD8, 0xB1, 0x44, 0xD8, 0xAA, 0xD8, 0xB2, 0x44, -+ 0xD8, 0xAA, 0xD9, 0x85, 0x44, 0xD8, 0xAA, 0xD9, -+ 0x86, 0x44, 0xD8, 0xAA, 0xD9, 0x87, 0x44, 0xD8, -+ 0xAA, 0xD9, 0x89, 0x44, 0xD8, 0xAA, 0xD9, 0x8A, -+ 0x44, 0xD8, 0xAB, 0xD8, 0xAC, 0x44, 0xD8, 0xAB, -+ 0xD8, 0xB1, 0x44, 0xD8, 0xAB, 0xD8, 0xB2, 0x44, -+ // Bytes 1e00 - 1e3f -+ 0xD8, 0xAB, 0xD9, 0x85, 0x44, 0xD8, 0xAB, 0xD9, -+ 0x86, 0x44, 0xD8, 0xAB, 0xD9, 0x87, 0x44, 0xD8, -+ 0xAB, 0xD9, 0x89, 0x44, 0xD8, 0xAB, 0xD9, 0x8A, -+ 0x44, 0xD8, 0xAC, 0xD8, 0xAD, 0x44, 0xD8, 0xAC, -+ 0xD9, 0x85, 0x44, 0xD8, 0xAC, 0xD9, 0x89, 0x44, -+ 0xD8, 0xAC, 0xD9, 0x8A, 0x44, 0xD8, 0xAD, 0xD8, -+ 0xAC, 0x44, 0xD8, 0xAD, 0xD9, 0x85, 0x44, 0xD8, -+ 0xAD, 0xD9, 0x89, 0x44, 0xD8, 0xAD, 0xD9, 0x8A, -+ // Bytes 1e40 - 1e7f -+ 0x44, 0xD8, 0xAE, 0xD8, 0xAC, 0x44, 0xD8, 0xAE, -+ 0xD8, 0xAD, 0x44, 0xD8, 0xAE, 0xD9, 0x85, 0x44, -+ 0xD8, 0xAE, 0xD9, 0x89, 0x44, 0xD8, 0xAE, 0xD9, -+ 0x8A, 0x44, 0xD8, 0xB3, 0xD8, 0xAC, 0x44, 0xD8, -+ 0xB3, 0xD8, 0xAD, 0x44, 0xD8, 0xB3, 0xD8, 0xAE, -+ 0x44, 0xD8, 0xB3, 0xD8, 0xB1, 0x44, 0xD8, 0xB3, -+ 0xD9, 0x85, 0x44, 0xD8, 0xB3, 0xD9, 0x87, 0x44, -+ 0xD8, 0xB3, 0xD9, 0x89, 0x44, 0xD8, 0xB3, 0xD9, -+ // Bytes 1e80 - 1ebf -+ 0x8A, 0x44, 0xD8, 0xB4, 0xD8, 0xAC, 0x44, 0xD8, -+ 0xB4, 0xD8, 0xAD, 0x44, 0xD8, 0xB4, 0xD8, 0xAE, -+ 0x44, 0xD8, 0xB4, 0xD8, 0xB1, 0x44, 0xD8, 0xB4, -+ 0xD9, 0x85, 0x44, 0xD8, 0xB4, 0xD9, 0x87, 0x44, -+ 0xD8, 0xB4, 0xD9, 0x89, 0x44, 0xD8, 0xB4, 0xD9, -+ 0x8A, 0x44, 0xD8, 0xB5, 0xD8, 0xAD, 0x44, 0xD8, -+ 0xB5, 0xD8, 0xAE, 0x44, 0xD8, 0xB5, 0xD8, 0xB1, -+ 0x44, 0xD8, 0xB5, 0xD9, 0x85, 0x44, 0xD8, 0xB5, -+ // Bytes 1ec0 - 1eff -+ 0xD9, 0x89, 0x44, 0xD8, 0xB5, 0xD9, 0x8A, 0x44, -+ 0xD8, 0xB6, 0xD8, 0xAC, 0x44, 0xD8, 0xB6, 0xD8, -+ 0xAD, 0x44, 0xD8, 0xB6, 0xD8, 0xAE, 0x44, 0xD8, -+ 0xB6, 0xD8, 0xB1, 0x44, 0xD8, 0xB6, 0xD9, 0x85, -+ 0x44, 0xD8, 0xB6, 0xD9, 0x89, 0x44, 0xD8, 0xB6, -+ 0xD9, 0x8A, 0x44, 0xD8, 0xB7, 0xD8, 0xAD, 0x44, -+ 0xD8, 0xB7, 0xD9, 0x85, 0x44, 0xD8, 0xB7, 0xD9, -+ 0x89, 0x44, 0xD8, 0xB7, 0xD9, 0x8A, 0x44, 0xD8, -+ // Bytes 1f00 - 1f3f -+ 0xB8, 0xD9, 0x85, 0x44, 0xD8, 0xB9, 0xD8, 0xAC, -+ 0x44, 0xD8, 0xB9, 0xD9, 0x85, 0x44, 0xD8, 0xB9, -+ 0xD9, 0x89, 0x44, 0xD8, 0xB9, 0xD9, 0x8A, 0x44, -+ 0xD8, 0xBA, 0xD8, 0xAC, 0x44, 0xD8, 0xBA, 0xD9, -+ 0x85, 0x44, 0xD8, 0xBA, 0xD9, 0x89, 0x44, 0xD8, -+ 0xBA, 0xD9, 0x8A, 0x44, 0xD9, 0x81, 0xD8, 0xAC, -+ 0x44, 0xD9, 0x81, 0xD8, 0xAD, 0x44, 0xD9, 0x81, -+ 0xD8, 0xAE, 0x44, 0xD9, 0x81, 0xD9, 0x85, 0x44, -+ // Bytes 1f40 - 1f7f -+ 0xD9, 0x81, 0xD9, 0x89, 0x44, 0xD9, 0x81, 0xD9, -+ 0x8A, 0x44, 0xD9, 0x82, 0xD8, 0xAD, 0x44, 0xD9, -+ 0x82, 0xD9, 0x85, 0x44, 0xD9, 0x82, 0xD9, 0x89, -+ 0x44, 0xD9, 0x82, 0xD9, 0x8A, 0x44, 0xD9, 0x83, -+ 0xD8, 0xA7, 0x44, 0xD9, 0x83, 0xD8, 0xAC, 0x44, -+ 0xD9, 0x83, 0xD8, 0xAD, 0x44, 0xD9, 0x83, 0xD8, -+ 0xAE, 0x44, 0xD9, 0x83, 0xD9, 0x84, 0x44, 0xD9, -+ 0x83, 0xD9, 0x85, 0x44, 0xD9, 0x83, 0xD9, 0x89, -+ // Bytes 1f80 - 1fbf -+ 0x44, 0xD9, 0x83, 0xD9, 0x8A, 0x44, 0xD9, 0x84, -+ 0xD8, 0xA7, 0x44, 0xD9, 0x84, 0xD8, 0xAC, 0x44, -+ 0xD9, 0x84, 0xD8, 0xAD, 0x44, 0xD9, 0x84, 0xD8, -+ 0xAE, 0x44, 0xD9, 0x84, 0xD9, 0x85, 0x44, 0xD9, -+ 0x84, 0xD9, 0x87, 0x44, 0xD9, 0x84, 0xD9, 0x89, -+ 0x44, 0xD9, 0x84, 0xD9, 0x8A, 0x44, 0xD9, 0x85, -+ 0xD8, 0xA7, 0x44, 0xD9, 0x85, 0xD8, 0xAC, 0x44, -+ 0xD9, 0x85, 0xD8, 0xAD, 0x44, 0xD9, 0x85, 0xD8, -+ // Bytes 1fc0 - 1fff -+ 0xAE, 0x44, 0xD9, 0x85, 0xD9, 0x85, 0x44, 0xD9, -+ 0x85, 0xD9, 0x89, 0x44, 0xD9, 0x85, 0xD9, 0x8A, -+ 0x44, 0xD9, 0x86, 0xD8, 0xAC, 0x44, 0xD9, 0x86, -+ 0xD8, 0xAD, 0x44, 0xD9, 0x86, 0xD8, 0xAE, 0x44, -+ 0xD9, 0x86, 0xD8, 0xB1, 0x44, 0xD9, 0x86, 0xD8, -+ 0xB2, 0x44, 0xD9, 0x86, 0xD9, 0x85, 0x44, 0xD9, -+ 0x86, 0xD9, 0x86, 0x44, 0xD9, 0x86, 0xD9, 0x87, -+ 0x44, 0xD9, 0x86, 0xD9, 0x89, 0x44, 0xD9, 0x86, -+ // Bytes 2000 - 203f -+ 0xD9, 0x8A, 0x44, 0xD9, 0x87, 0xD8, 0xAC, 0x44, -+ 0xD9, 0x87, 0xD9, 0x85, 0x44, 0xD9, 0x87, 0xD9, -+ 0x89, 0x44, 0xD9, 0x87, 0xD9, 0x8A, 0x44, 0xD9, -+ 0x88, 0xD9, 0xB4, 0x44, 0xD9, 0x8A, 0xD8, 0xAC, -+ 0x44, 0xD9, 0x8A, 0xD8, 0xAD, 0x44, 0xD9, 0x8A, -+ 0xD8, 0xAE, 0x44, 0xD9, 0x8A, 0xD8, 0xB1, 0x44, -+ 0xD9, 0x8A, 0xD8, 0xB2, 0x44, 0xD9, 0x8A, 0xD9, -+ 0x85, 0x44, 0xD9, 0x8A, 0xD9, 0x86, 0x44, 0xD9, -+ // Bytes 2040 - 207f -+ 0x8A, 0xD9, 0x87, 0x44, 0xD9, 0x8A, 0xD9, 0x89, -+ 0x44, 0xD9, 0x8A, 0xD9, 0x8A, 0x44, 0xD9, 0x8A, -+ 0xD9, 0xB4, 0x44, 0xDB, 0x87, 0xD9, 0xB4, 0x45, -+ 0x28, 0xE1, 0x84, 0x80, 0x29, 0x45, 0x28, 0xE1, -+ 0x84, 0x82, 0x29, 0x45, 0x28, 0xE1, 0x84, 0x83, -+ 0x29, 0x45, 0x28, 0xE1, 0x84, 0x85, 0x29, 0x45, -+ 0x28, 0xE1, 0x84, 0x86, 0x29, 0x45, 0x28, 0xE1, -+ 0x84, 0x87, 0x29, 0x45, 0x28, 0xE1, 0x84, 0x89, -+ // Bytes 2080 - 20bf -+ 0x29, 0x45, 0x28, 0xE1, 0x84, 0x8B, 0x29, 0x45, -+ 0x28, 0xE1, 0x84, 0x8C, 0x29, 0x45, 0x28, 0xE1, -+ 0x84, 0x8E, 0x29, 0x45, 0x28, 0xE1, 0x84, 0x8F, -+ 0x29, 0x45, 0x28, 0xE1, 0x84, 0x90, 0x29, 0x45, -+ 0x28, 0xE1, 0x84, 0x91, 0x29, 0x45, 0x28, 0xE1, -+ 0x84, 0x92, 0x29, 0x45, 0x28, 0xE4, 0xB8, 0x80, -+ 0x29, 0x45, 0x28, 0xE4, 0xB8, 0x83, 0x29, 0x45, -+ 0x28, 0xE4, 0xB8, 0x89, 0x29, 0x45, 0x28, 0xE4, -+ // Bytes 20c0 - 20ff -+ 0xB9, 0x9D, 0x29, 0x45, 0x28, 0xE4, 0xBA, 0x8C, -+ 0x29, 0x45, 0x28, 0xE4, 0xBA, 0x94, 0x29, 0x45, -+ 0x28, 0xE4, 0xBB, 0xA3, 0x29, 0x45, 0x28, 0xE4, -+ 0xBC, 0x81, 0x29, 0x45, 0x28, 0xE4, 0xBC, 0x91, -+ 0x29, 0x45, 0x28, 0xE5, 0x85, 0xAB, 0x29, 0x45, -+ 0x28, 0xE5, 0x85, 0xAD, 0x29, 0x45, 0x28, 0xE5, -+ 0x8A, 0xB4, 0x29, 0x45, 0x28, 0xE5, 0x8D, 0x81, -+ 0x29, 0x45, 0x28, 0xE5, 0x8D, 0x94, 0x29, 0x45, -+ // Bytes 2100 - 213f -+ 0x28, 0xE5, 0x90, 0x8D, 0x29, 0x45, 0x28, 0xE5, -+ 0x91, 0xBC, 0x29, 0x45, 0x28, 0xE5, 0x9B, 0x9B, -+ 0x29, 0x45, 0x28, 0xE5, 0x9C, 0x9F, 0x29, 0x45, -+ 0x28, 0xE5, 0xAD, 0xA6, 0x29, 0x45, 0x28, 0xE6, -+ 0x97, 0xA5, 0x29, 0x45, 0x28, 0xE6, 0x9C, 0x88, -+ 0x29, 0x45, 0x28, 0xE6, 0x9C, 0x89, 0x29, 0x45, -+ 0x28, 0xE6, 0x9C, 0xA8, 0x29, 0x45, 0x28, 0xE6, -+ 0xA0, 0xAA, 0x29, 0x45, 0x28, 0xE6, 0xB0, 0xB4, -+ // Bytes 2140 - 217f -+ 0x29, 0x45, 0x28, 0xE7, 0x81, 0xAB, 0x29, 0x45, -+ 0x28, 0xE7, 0x89, 0xB9, 0x29, 0x45, 0x28, 0xE7, -+ 0x9B, 0xA3, 0x29, 0x45, 0x28, 0xE7, 0xA4, 0xBE, -+ 0x29, 0x45, 0x28, 0xE7, 0xA5, 0x9D, 0x29, 0x45, -+ 0x28, 0xE7, 0xA5, 0xAD, 0x29, 0x45, 0x28, 0xE8, -+ 0x87, 0xAA, 0x29, 0x45, 0x28, 0xE8, 0x87, 0xB3, -+ 0x29, 0x45, 0x28, 0xE8, 0xB2, 0xA1, 0x29, 0x45, -+ 0x28, 0xE8, 0xB3, 0x87, 0x29, 0x45, 0x28, 0xE9, -+ // Bytes 2180 - 21bf -+ 0x87, 0x91, 0x29, 0x45, 0x30, 0xE2, 0x81, 0x84, -+ 0x33, 0x45, 0x31, 0x30, 0xE6, 0x97, 0xA5, 0x45, -+ 0x31, 0x30, 0xE6, 0x9C, 0x88, 0x45, 0x31, 0x30, -+ 0xE7, 0x82, 0xB9, 0x45, 0x31, 0x31, 0xE6, 0x97, -+ 0xA5, 0x45, 0x31, 0x31, 0xE6, 0x9C, 0x88, 0x45, -+ 0x31, 0x31, 0xE7, 0x82, 0xB9, 0x45, 0x31, 0x32, -+ 0xE6, 0x97, 0xA5, 0x45, 0x31, 0x32, 0xE6, 0x9C, -+ 0x88, 0x45, 0x31, 0x32, 0xE7, 0x82, 0xB9, 0x45, -+ // Bytes 21c0 - 21ff -+ 0x31, 0x33, 0xE6, 0x97, 0xA5, 0x45, 0x31, 0x33, -+ 0xE7, 0x82, 0xB9, 0x45, 0x31, 0x34, 0xE6, 0x97, -+ 0xA5, 0x45, 0x31, 0x34, 0xE7, 0x82, 0xB9, 0x45, -+ 0x31, 0x35, 0xE6, 0x97, 0xA5, 0x45, 0x31, 0x35, -+ 0xE7, 0x82, 0xB9, 0x45, 0x31, 0x36, 0xE6, 0x97, -+ 0xA5, 0x45, 0x31, 0x36, 0xE7, 0x82, 0xB9, 0x45, -+ 0x31, 0x37, 0xE6, 0x97, 0xA5, 0x45, 0x31, 0x37, -+ 0xE7, 0x82, 0xB9, 0x45, 0x31, 0x38, 0xE6, 0x97, -+ // Bytes 2200 - 223f -+ 0xA5, 0x45, 0x31, 0x38, 0xE7, 0x82, 0xB9, 0x45, -+ 0x31, 0x39, 0xE6, 0x97, 0xA5, 0x45, 0x31, 0x39, -+ 0xE7, 0x82, 0xB9, 0x45, 0x31, 0xE2, 0x81, 0x84, -+ 0x32, 0x45, 0x31, 0xE2, 0x81, 0x84, 0x33, 0x45, -+ 0x31, 0xE2, 0x81, 0x84, 0x34, 0x45, 0x31, 0xE2, -+ 0x81, 0x84, 0x35, 0x45, 0x31, 0xE2, 0x81, 0x84, -+ 0x36, 0x45, 0x31, 0xE2, 0x81, 0x84, 0x37, 0x45, -+ 0x31, 0xE2, 0x81, 0x84, 0x38, 0x45, 0x31, 0xE2, -+ // Bytes 2240 - 227f -+ 0x81, 0x84, 0x39, 0x45, 0x32, 0x30, 0xE6, 0x97, -+ 0xA5, 0x45, 0x32, 0x30, 0xE7, 0x82, 0xB9, 0x45, -+ 0x32, 0x31, 0xE6, 0x97, 0xA5, 0x45, 0x32, 0x31, -+ 0xE7, 0x82, 0xB9, 0x45, 0x32, 0x32, 0xE6, 0x97, -+ 0xA5, 0x45, 0x32, 0x32, 0xE7, 0x82, 0xB9, 0x45, -+ 0x32, 0x33, 0xE6, 0x97, 0xA5, 0x45, 0x32, 0x33, -+ 0xE7, 0x82, 0xB9, 0x45, 0x32, 0x34, 0xE6, 0x97, -+ 0xA5, 0x45, 0x32, 0x34, 0xE7, 0x82, 0xB9, 0x45, -+ // Bytes 2280 - 22bf -+ 0x32, 0x35, 0xE6, 0x97, 0xA5, 0x45, 0x32, 0x36, -+ 0xE6, 0x97, 0xA5, 0x45, 0x32, 0x37, 0xE6, 0x97, -+ 0xA5, 0x45, 0x32, 0x38, 0xE6, 0x97, 0xA5, 0x45, -+ 0x32, 0x39, 0xE6, 0x97, 0xA5, 0x45, 0x32, 0xE2, -+ 0x81, 0x84, 0x33, 0x45, 0x32, 0xE2, 0x81, 0x84, -+ 0x35, 0x45, 0x33, 0x30, 0xE6, 0x97, 0xA5, 0x45, -+ 0x33, 0x31, 0xE6, 0x97, 0xA5, 0x45, 0x33, 0xE2, -+ 0x81, 0x84, 0x34, 0x45, 0x33, 0xE2, 0x81, 0x84, -+ // Bytes 22c0 - 22ff -+ 0x35, 0x45, 0x33, 0xE2, 0x81, 0x84, 0x38, 0x45, -+ 0x34, 0xE2, 0x81, 0x84, 0x35, 0x45, 0x35, 0xE2, -+ 0x81, 0x84, 0x36, 0x45, 0x35, 0xE2, 0x81, 0x84, -+ 0x38, 0x45, 0x37, 0xE2, 0x81, 0x84, 0x38, 0x45, -+ 0x41, 0xE2, 0x88, 0x95, 0x6D, 0x45, 0x56, 0xE2, -+ 0x88, 0x95, 0x6D, 0x45, 0x6D, 0xE2, 0x88, 0x95, -+ 0x73, 0x46, 0x31, 0xE2, 0x81, 0x84, 0x31, 0x30, -+ 0x46, 0x43, 0xE2, 0x88, 0x95, 0x6B, 0x67, 0x46, -+ // Bytes 2300 - 233f -+ 0x6D, 0xE2, 0x88, 0x95, 0x73, 0x32, 0x46, 0xD8, -+ 0xA8, 0xD8, 0xAD, 0xD9, 0x8A, 0x46, 0xD8, 0xA8, -+ 0xD8, 0xAE, 0xD9, 0x8A, 0x46, 0xD8, 0xAA, 0xD8, -+ 0xAC, 0xD9, 0x85, 0x46, 0xD8, 0xAA, 0xD8, 0xAC, -+ 0xD9, 0x89, 0x46, 0xD8, 0xAA, 0xD8, 0xAC, 0xD9, -+ 0x8A, 0x46, 0xD8, 0xAA, 0xD8, 0xAD, 0xD8, 0xAC, -+ 0x46, 0xD8, 0xAA, 0xD8, 0xAD, 0xD9, 0x85, 0x46, -+ 0xD8, 0xAA, 0xD8, 0xAE, 0xD9, 0x85, 0x46, 0xD8, -+ // Bytes 2340 - 237f -+ 0xAA, 0xD8, 0xAE, 0xD9, 0x89, 0x46, 0xD8, 0xAA, -+ 0xD8, 0xAE, 0xD9, 0x8A, 0x46, 0xD8, 0xAA, 0xD9, -+ 0x85, 0xD8, 0xAC, 0x46, 0xD8, 0xAA, 0xD9, 0x85, -+ 0xD8, 0xAD, 0x46, 0xD8, 0xAA, 0xD9, 0x85, 0xD8, -+ 0xAE, 0x46, 0xD8, 0xAA, 0xD9, 0x85, 0xD9, 0x89, -+ 0x46, 0xD8, 0xAA, 0xD9, 0x85, 0xD9, 0x8A, 0x46, -+ 0xD8, 0xAC, 0xD8, 0xAD, 0xD9, 0x89, 0x46, 0xD8, -+ 0xAC, 0xD8, 0xAD, 0xD9, 0x8A, 0x46, 0xD8, 0xAC, -+ // Bytes 2380 - 23bf -+ 0xD9, 0x85, 0xD8, 0xAD, 0x46, 0xD8, 0xAC, 0xD9, -+ 0x85, 0xD9, 0x89, 0x46, 0xD8, 0xAC, 0xD9, 0x85, -+ 0xD9, 0x8A, 0x46, 0xD8, 0xAD, 0xD8, 0xAC, 0xD9, -+ 0x8A, 0x46, 0xD8, 0xAD, 0xD9, 0x85, 0xD9, 0x89, -+ 0x46, 0xD8, 0xAD, 0xD9, 0x85, 0xD9, 0x8A, 0x46, -+ 0xD8, 0xB3, 0xD8, 0xAC, 0xD8, 0xAD, 0x46, 0xD8, -+ 0xB3, 0xD8, 0xAC, 0xD9, 0x89, 0x46, 0xD8, 0xB3, -+ 0xD8, 0xAD, 0xD8, 0xAC, 0x46, 0xD8, 0xB3, 0xD8, -+ // Bytes 23c0 - 23ff -+ 0xAE, 0xD9, 0x89, 0x46, 0xD8, 0xB3, 0xD8, 0xAE, -+ 0xD9, 0x8A, 0x46, 0xD8, 0xB3, 0xD9, 0x85, 0xD8, -+ 0xAC, 0x46, 0xD8, 0xB3, 0xD9, 0x85, 0xD8, 0xAD, -+ 0x46, 0xD8, 0xB3, 0xD9, 0x85, 0xD9, 0x85, 0x46, -+ 0xD8, 0xB4, 0xD8, 0xAC, 0xD9, 0x8A, 0x46, 0xD8, -+ 0xB4, 0xD8, 0xAD, 0xD9, 0x85, 0x46, 0xD8, 0xB4, -+ 0xD8, 0xAD, 0xD9, 0x8A, 0x46, 0xD8, 0xB4, 0xD9, -+ 0x85, 0xD8, 0xAE, 0x46, 0xD8, 0xB4, 0xD9, 0x85, -+ // Bytes 2400 - 243f -+ 0xD9, 0x85, 0x46, 0xD8, 0xB5, 0xD8, 0xAD, 0xD8, -+ 0xAD, 0x46, 0xD8, 0xB5, 0xD8, 0xAD, 0xD9, 0x8A, -+ 0x46, 0xD8, 0xB5, 0xD9, 0x84, 0xD9, 0x89, 0x46, -+ 0xD8, 0xB5, 0xD9, 0x84, 0xDB, 0x92, 0x46, 0xD8, -+ 0xB5, 0xD9, 0x85, 0xD9, 0x85, 0x46, 0xD8, 0xB6, -+ 0xD8, 0xAD, 0xD9, 0x89, 0x46, 0xD8, 0xB6, 0xD8, -+ 0xAD, 0xD9, 0x8A, 0x46, 0xD8, 0xB6, 0xD8, 0xAE, -+ 0xD9, 0x85, 0x46, 0xD8, 0xB7, 0xD9, 0x85, 0xD8, -+ // Bytes 2440 - 247f -+ 0xAD, 0x46, 0xD8, 0xB7, 0xD9, 0x85, 0xD9, 0x85, -+ 0x46, 0xD8, 0xB7, 0xD9, 0x85, 0xD9, 0x8A, 0x46, -+ 0xD8, 0xB9, 0xD8, 0xAC, 0xD9, 0x85, 0x46, 0xD8, -+ 0xB9, 0xD9, 0x85, 0xD9, 0x85, 0x46, 0xD8, 0xB9, -+ 0xD9, 0x85, 0xD9, 0x89, 0x46, 0xD8, 0xB9, 0xD9, -+ 0x85, 0xD9, 0x8A, 0x46, 0xD8, 0xBA, 0xD9, 0x85, -+ 0xD9, 0x85, 0x46, 0xD8, 0xBA, 0xD9, 0x85, 0xD9, -+ 0x89, 0x46, 0xD8, 0xBA, 0xD9, 0x85, 0xD9, 0x8A, -+ // Bytes 2480 - 24bf -+ 0x46, 0xD9, 0x81, 0xD8, 0xAE, 0xD9, 0x85, 0x46, -+ 0xD9, 0x81, 0xD9, 0x85, 0xD9, 0x8A, 0x46, 0xD9, -+ 0x82, 0xD9, 0x84, 0xDB, 0x92, 0x46, 0xD9, 0x82, -+ 0xD9, 0x85, 0xD8, 0xAD, 0x46, 0xD9, 0x82, 0xD9, -+ 0x85, 0xD9, 0x85, 0x46, 0xD9, 0x82, 0xD9, 0x85, -+ 0xD9, 0x8A, 0x46, 0xD9, 0x83, 0xD9, 0x85, 0xD9, -+ 0x85, 0x46, 0xD9, 0x83, 0xD9, 0x85, 0xD9, 0x8A, -+ 0x46, 0xD9, 0x84, 0xD8, 0xAC, 0xD8, 0xAC, 0x46, -+ // Bytes 24c0 - 24ff -+ 0xD9, 0x84, 0xD8, 0xAC, 0xD9, 0x85, 0x46, 0xD9, -+ 0x84, 0xD8, 0xAC, 0xD9, 0x8A, 0x46, 0xD9, 0x84, -+ 0xD8, 0xAD, 0xD9, 0x85, 0x46, 0xD9, 0x84, 0xD8, -+ 0xAD, 0xD9, 0x89, 0x46, 0xD9, 0x84, 0xD8, 0xAD, -+ 0xD9, 0x8A, 0x46, 0xD9, 0x84, 0xD8, 0xAE, 0xD9, -+ 0x85, 0x46, 0xD9, 0x84, 0xD9, 0x85, 0xD8, 0xAD, -+ 0x46, 0xD9, 0x84, 0xD9, 0x85, 0xD9, 0x8A, 0x46, -+ 0xD9, 0x85, 0xD8, 0xAC, 0xD8, 0xAD, 0x46, 0xD9, -+ // Bytes 2500 - 253f -+ 0x85, 0xD8, 0xAC, 0xD8, 0xAE, 0x46, 0xD9, 0x85, -+ 0xD8, 0xAC, 0xD9, 0x85, 0x46, 0xD9, 0x85, 0xD8, -+ 0xAC, 0xD9, 0x8A, 0x46, 0xD9, 0x85, 0xD8, 0xAD, -+ 0xD8, 0xAC, 0x46, 0xD9, 0x85, 0xD8, 0xAD, 0xD9, -+ 0x85, 0x46, 0xD9, 0x85, 0xD8, 0xAD, 0xD9, 0x8A, -+ 0x46, 0xD9, 0x85, 0xD8, 0xAE, 0xD8, 0xAC, 0x46, -+ 0xD9, 0x85, 0xD8, 0xAE, 0xD9, 0x85, 0x46, 0xD9, -+ 0x85, 0xD8, 0xAE, 0xD9, 0x8A, 0x46, 0xD9, 0x85, -+ // Bytes 2540 - 257f -+ 0xD9, 0x85, 0xD9, 0x8A, 0x46, 0xD9, 0x86, 0xD8, -+ 0xAC, 0xD8, 0xAD, 0x46, 0xD9, 0x86, 0xD8, 0xAC, -+ 0xD9, 0x85, 0x46, 0xD9, 0x86, 0xD8, 0xAC, 0xD9, -+ 0x89, 0x46, 0xD9, 0x86, 0xD8, 0xAC, 0xD9, 0x8A, -+ 0x46, 0xD9, 0x86, 0xD8, 0xAD, 0xD9, 0x85, 0x46, -+ 0xD9, 0x86, 0xD8, 0xAD, 0xD9, 0x89, 0x46, 0xD9, -+ 0x86, 0xD8, 0xAD, 0xD9, 0x8A, 0x46, 0xD9, 0x86, -+ 0xD9, 0x85, 0xD9, 0x89, 0x46, 0xD9, 0x86, 0xD9, -+ // Bytes 2580 - 25bf -+ 0x85, 0xD9, 0x8A, 0x46, 0xD9, 0x87, 0xD9, 0x85, -+ 0xD8, 0xAC, 0x46, 0xD9, 0x87, 0xD9, 0x85, 0xD9, -+ 0x85, 0x46, 0xD9, 0x8A, 0xD8, 0xAC, 0xD9, 0x8A, -+ 0x46, 0xD9, 0x8A, 0xD8, 0xAD, 0xD9, 0x8A, 0x46, -+ 0xD9, 0x8A, 0xD9, 0x85, 0xD9, 0x85, 0x46, 0xD9, -+ 0x8A, 0xD9, 0x85, 0xD9, 0x8A, 0x46, 0xD9, 0x8A, -+ 0xD9, 0x94, 0xD8, 0xA7, 0x46, 0xD9, 0x8A, 0xD9, -+ 0x94, 0xD8, 0xAC, 0x46, 0xD9, 0x8A, 0xD9, 0x94, -+ // Bytes 25c0 - 25ff -+ 0xD8, 0xAD, 0x46, 0xD9, 0x8A, 0xD9, 0x94, 0xD8, -+ 0xAE, 0x46, 0xD9, 0x8A, 0xD9, 0x94, 0xD8, 0xB1, -+ 0x46, 0xD9, 0x8A, 0xD9, 0x94, 0xD8, 0xB2, 0x46, -+ 0xD9, 0x8A, 0xD9, 0x94, 0xD9, 0x85, 0x46, 0xD9, -+ 0x8A, 0xD9, 0x94, 0xD9, 0x86, 0x46, 0xD9, 0x8A, -+ 0xD9, 0x94, 0xD9, 0x87, 0x46, 0xD9, 0x8A, 0xD9, -+ 0x94, 0xD9, 0x88, 0x46, 0xD9, 0x8A, 0xD9, 0x94, -+ 0xD9, 0x89, 0x46, 0xD9, 0x8A, 0xD9, 0x94, 0xD9, -+ // Bytes 2600 - 263f -+ 0x8A, 0x46, 0xD9, 0x8A, 0xD9, 0x94, 0xDB, 0x86, -+ 0x46, 0xD9, 0x8A, 0xD9, 0x94, 0xDB, 0x87, 0x46, -+ 0xD9, 0x8A, 0xD9, 0x94, 0xDB, 0x88, 0x46, 0xD9, -+ 0x8A, 0xD9, 0x94, 0xDB, 0x90, 0x46, 0xD9, 0x8A, -+ 0xD9, 0x94, 0xDB, 0x95, 0x46, 0xE0, 0xB9, 0x8D, -+ 0xE0, 0xB8, 0xB2, 0x46, 0xE0, 0xBA, 0xAB, 0xE0, -+ 0xBA, 0x99, 0x46, 0xE0, 0xBA, 0xAB, 0xE0, 0xBA, -+ 0xA1, 0x46, 0xE0, 0xBB, 0x8D, 0xE0, 0xBA, 0xB2, -+ // Bytes 2640 - 267f -+ 0x46, 0xE0, 0xBD, 0x80, 0xE0, 0xBE, 0xB5, 0x46, -+ 0xE0, 0xBD, 0x82, 0xE0, 0xBE, 0xB7, 0x46, 0xE0, -+ 0xBD, 0x8C, 0xE0, 0xBE, 0xB7, 0x46, 0xE0, 0xBD, -+ 0x91, 0xE0, 0xBE, 0xB7, 0x46, 0xE0, 0xBD, 0x96, -+ 0xE0, 0xBE, 0xB7, 0x46, 0xE0, 0xBD, 0x9B, 0xE0, -+ 0xBE, 0xB7, 0x46, 0xE0, 0xBE, 0x90, 0xE0, 0xBE, -+ 0xB5, 0x46, 0xE0, 0xBE, 0x92, 0xE0, 0xBE, 0xB7, -+ 0x46, 0xE0, 0xBE, 0x9C, 0xE0, 0xBE, 0xB7, 0x46, -+ // Bytes 2680 - 26bf -+ 0xE0, 0xBE, 0xA1, 0xE0, 0xBE, 0xB7, 0x46, 0xE0, -+ 0xBE, 0xA6, 0xE0, 0xBE, 0xB7, 0x46, 0xE0, 0xBE, -+ 0xAB, 0xE0, 0xBE, 0xB7, 0x46, 0xE2, 0x80, 0xB2, -+ 0xE2, 0x80, 0xB2, 0x46, 0xE2, 0x80, 0xB5, 0xE2, -+ 0x80, 0xB5, 0x46, 0xE2, 0x88, 0xAB, 0xE2, 0x88, -+ 0xAB, 0x46, 0xE2, 0x88, 0xAE, 0xE2, 0x88, 0xAE, -+ 0x46, 0xE3, 0x81, 0xBB, 0xE3, 0x81, 0x8B, 0x46, -+ 0xE3, 0x82, 0x88, 0xE3, 0x82, 0x8A, 0x46, 0xE3, -+ // Bytes 26c0 - 26ff -+ 0x82, 0xAD, 0xE3, 0x83, 0xAD, 0x46, 0xE3, 0x82, -+ 0xB3, 0xE3, 0x82, 0xB3, 0x46, 0xE3, 0x82, 0xB3, -+ 0xE3, 0x83, 0x88, 0x46, 0xE3, 0x83, 0x88, 0xE3, -+ 0x83, 0xB3, 0x46, 0xE3, 0x83, 0x8A, 0xE3, 0x83, -+ 0x8E, 0x46, 0xE3, 0x83, 0x9B, 0xE3, 0x83, 0xB3, -+ 0x46, 0xE3, 0x83, 0x9F, 0xE3, 0x83, 0xAA, 0x46, -+ 0xE3, 0x83, 0xAA, 0xE3, 0x83, 0xA9, 0x46, 0xE3, -+ 0x83, 0xAC, 0xE3, 0x83, 0xA0, 0x46, 0xE5, 0xA4, -+ // Bytes 2700 - 273f -+ 0xA7, 0xE6, 0xAD, 0xA3, 0x46, 0xE5, 0xB9, 0xB3, -+ 0xE6, 0x88, 0x90, 0x46, 0xE6, 0x98, 0x8E, 0xE6, -+ 0xB2, 0xBB, 0x46, 0xE6, 0x98, 0xAD, 0xE5, 0x92, -+ 0x8C, 0x47, 0x72, 0x61, 0x64, 0xE2, 0x88, 0x95, -+ 0x73, 0x47, 0xE3, 0x80, 0x94, 0x53, 0xE3, 0x80, -+ 0x95, 0x48, 0x28, 0xE1, 0x84, 0x80, 0xE1, 0x85, -+ 0xA1, 0x29, 0x48, 0x28, 0xE1, 0x84, 0x82, 0xE1, -+ 0x85, 0xA1, 0x29, 0x48, 0x28, 0xE1, 0x84, 0x83, -+ // Bytes 2740 - 277f -+ 0xE1, 0x85, 0xA1, 0x29, 0x48, 0x28, 0xE1, 0x84, -+ 0x85, 0xE1, 0x85, 0xA1, 0x29, 0x48, 0x28, 0xE1, -+ 0x84, 0x86, 0xE1, 0x85, 0xA1, 0x29, 0x48, 0x28, -+ 0xE1, 0x84, 0x87, 0xE1, 0x85, 0xA1, 0x29, 0x48, -+ 0x28, 0xE1, 0x84, 0x89, 0xE1, 0x85, 0xA1, 0x29, -+ 0x48, 0x28, 0xE1, 0x84, 0x8B, 0xE1, 0x85, 0xA1, -+ 0x29, 0x48, 0x28, 0xE1, 0x84, 0x8C, 0xE1, 0x85, -+ 0xA1, 0x29, 0x48, 0x28, 0xE1, 0x84, 0x8C, 0xE1, -+ // Bytes 2780 - 27bf -+ 0x85, 0xAE, 0x29, 0x48, 0x28, 0xE1, 0x84, 0x8E, -+ 0xE1, 0x85, 0xA1, 0x29, 0x48, 0x28, 0xE1, 0x84, -+ 0x8F, 0xE1, 0x85, 0xA1, 0x29, 0x48, 0x28, 0xE1, -+ 0x84, 0x90, 0xE1, 0x85, 0xA1, 0x29, 0x48, 0x28, -+ 0xE1, 0x84, 0x91, 0xE1, 0x85, 0xA1, 0x29, 0x48, -+ 0x28, 0xE1, 0x84, 0x92, 0xE1, 0x85, 0xA1, 0x29, -+ 0x48, 0x72, 0x61, 0x64, 0xE2, 0x88, 0x95, 0x73, -+ 0x32, 0x48, 0xD8, 0xA7, 0xD9, 0x83, 0xD8, 0xA8, -+ // Bytes 27c0 - 27ff -+ 0xD8, 0xB1, 0x48, 0xD8, 0xA7, 0xD9, 0x84, 0xD9, -+ 0x84, 0xD9, 0x87, 0x48, 0xD8, 0xB1, 0xD8, 0xB3, -+ 0xD9, 0x88, 0xD9, 0x84, 0x48, 0xD8, 0xB1, 0xDB, -+ 0x8C, 0xD8, 0xA7, 0xD9, 0x84, 0x48, 0xD8, 0xB5, -+ 0xD9, 0x84, 0xD8, 0xB9, 0xD9, 0x85, 0x48, 0xD8, -+ 0xB9, 0xD9, 0x84, 0xD9, 0x8A, 0xD9, 0x87, 0x48, -+ 0xD9, 0x85, 0xD8, 0xAD, 0xD9, 0x85, 0xD8, 0xAF, -+ 0x48, 0xD9, 0x88, 0xD8, 0xB3, 0xD9, 0x84, 0xD9, -+ // Bytes 2800 - 283f -+ 0x85, 0x49, 0xE2, 0x80, 0xB2, 0xE2, 0x80, 0xB2, -+ 0xE2, 0x80, 0xB2, 0x49, 0xE2, 0x80, 0xB5, 0xE2, -+ 0x80, 0xB5, 0xE2, 0x80, 0xB5, 0x49, 0xE2, 0x88, -+ 0xAB, 0xE2, 0x88, 0xAB, 0xE2, 0x88, 0xAB, 0x49, -+ 0xE2, 0x88, 0xAE, 0xE2, 0x88, 0xAE, 0xE2, 0x88, -+ 0xAE, 0x49, 0xE3, 0x80, 0x94, 0xE4, 0xB8, 0x89, -+ 0xE3, 0x80, 0x95, 0x49, 0xE3, 0x80, 0x94, 0xE4, -+ 0xBA, 0x8C, 0xE3, 0x80, 0x95, 0x49, 0xE3, 0x80, -+ // Bytes 2840 - 287f -+ 0x94, 0xE5, 0x8B, 0x9D, 0xE3, 0x80, 0x95, 0x49, -+ 0xE3, 0x80, 0x94, 0xE5, 0xAE, 0x89, 0xE3, 0x80, -+ 0x95, 0x49, 0xE3, 0x80, 0x94, 0xE6, 0x89, 0x93, -+ 0xE3, 0x80, 0x95, 0x49, 0xE3, 0x80, 0x94, 0xE6, -+ 0x95, 0x97, 0xE3, 0x80, 0x95, 0x49, 0xE3, 0x80, -+ 0x94, 0xE6, 0x9C, 0xAC, 0xE3, 0x80, 0x95, 0x49, -+ 0xE3, 0x80, 0x94, 0xE7, 0x82, 0xB9, 0xE3, 0x80, -+ 0x95, 0x49, 0xE3, 0x80, 0x94, 0xE7, 0x9B, 0x97, -+ // Bytes 2880 - 28bf -+ 0xE3, 0x80, 0x95, 0x49, 0xE3, 0x82, 0xA2, 0xE3, -+ 0x83, 0xBC, 0xE3, 0x83, 0xAB, 0x49, 0xE3, 0x82, -+ 0xA4, 0xE3, 0x83, 0xB3, 0xE3, 0x83, 0x81, 0x49, -+ 0xE3, 0x82, 0xA6, 0xE3, 0x82, 0xA9, 0xE3, 0x83, -+ 0xB3, 0x49, 0xE3, 0x82, 0xAA, 0xE3, 0x83, 0xB3, -+ 0xE3, 0x82, 0xB9, 0x49, 0xE3, 0x82, 0xAA, 0xE3, -+ 0x83, 0xBC, 0xE3, 0x83, 0xA0, 0x49, 0xE3, 0x82, -+ 0xAB, 0xE3, 0x82, 0xA4, 0xE3, 0x83, 0xAA, 0x49, -+ // Bytes 28c0 - 28ff -+ 0xE3, 0x82, 0xB1, 0xE3, 0x83, 0xBC, 0xE3, 0x82, -+ 0xB9, 0x49, 0xE3, 0x82, 0xB3, 0xE3, 0x83, 0xAB, -+ 0xE3, 0x83, 0x8A, 0x49, 0xE3, 0x82, 0xBB, 0xE3, -+ 0x83, 0xB3, 0xE3, 0x83, 0x81, 0x49, 0xE3, 0x82, -+ 0xBB, 0xE3, 0x83, 0xB3, 0xE3, 0x83, 0x88, 0x49, -+ 0xE3, 0x83, 0x86, 0xE3, 0x82, 0x99, 0xE3, 0x82, -+ 0xB7, 0x49, 0xE3, 0x83, 0x88, 0xE3, 0x82, 0x99, -+ 0xE3, 0x83, 0xAB, 0x49, 0xE3, 0x83, 0x8E, 0xE3, -+ // Bytes 2900 - 293f -+ 0x83, 0x83, 0xE3, 0x83, 0x88, 0x49, 0xE3, 0x83, -+ 0x8F, 0xE3, 0x82, 0xA4, 0xE3, 0x83, 0x84, 0x49, -+ 0xE3, 0x83, 0x92, 0xE3, 0x82, 0x99, 0xE3, 0x83, -+ 0xAB, 0x49, 0xE3, 0x83, 0x92, 0xE3, 0x82, 0x9A, -+ 0xE3, 0x82, 0xB3, 0x49, 0xE3, 0x83, 0x95, 0xE3, -+ 0x83, 0xA9, 0xE3, 0x83, 0xB3, 0x49, 0xE3, 0x83, -+ 0x98, 0xE3, 0x82, 0x9A, 0xE3, 0x82, 0xBD, 0x49, -+ 0xE3, 0x83, 0x98, 0xE3, 0x83, 0xAB, 0xE3, 0x83, -+ // Bytes 2940 - 297f -+ 0x84, 0x49, 0xE3, 0x83, 0x9B, 0xE3, 0x83, 0xBC, -+ 0xE3, 0x83, 0xAB, 0x49, 0xE3, 0x83, 0x9B, 0xE3, -+ 0x83, 0xBC, 0xE3, 0x83, 0xB3, 0x49, 0xE3, 0x83, -+ 0x9E, 0xE3, 0x82, 0xA4, 0xE3, 0x83, 0xAB, 0x49, -+ 0xE3, 0x83, 0x9E, 0xE3, 0x83, 0x83, 0xE3, 0x83, -+ 0x8F, 0x49, 0xE3, 0x83, 0x9E, 0xE3, 0x83, 0xAB, -+ 0xE3, 0x82, 0xAF, 0x49, 0xE3, 0x83, 0xA4, 0xE3, -+ 0x83, 0xBC, 0xE3, 0x83, 0xAB, 0x49, 0xE3, 0x83, -+ // Bytes 2980 - 29bf -+ 0xA6, 0xE3, 0x82, 0xA2, 0xE3, 0x83, 0xB3, 0x49, -+ 0xE3, 0x83, 0xAF, 0xE3, 0x83, 0x83, 0xE3, 0x83, -+ 0x88, 0x4C, 0xE2, 0x80, 0xB2, 0xE2, 0x80, 0xB2, -+ 0xE2, 0x80, 0xB2, 0xE2, 0x80, 0xB2, 0x4C, 0xE2, -+ 0x88, 0xAB, 0xE2, 0x88, 0xAB, 0xE2, 0x88, 0xAB, -+ 0xE2, 0x88, 0xAB, 0x4C, 0xE3, 0x82, 0xA2, 0xE3, -+ 0x83, 0xAB, 0xE3, 0x83, 0x95, 0xE3, 0x82, 0xA1, -+ 0x4C, 0xE3, 0x82, 0xA8, 0xE3, 0x83, 0xBC, 0xE3, -+ // Bytes 29c0 - 29ff -+ 0x82, 0xAB, 0xE3, 0x83, 0xBC, 0x4C, 0xE3, 0x82, -+ 0xAB, 0xE3, 0x82, 0x99, 0xE3, 0x83, 0xAD, 0xE3, -+ 0x83, 0xB3, 0x4C, 0xE3, 0x82, 0xAB, 0xE3, 0x82, -+ 0x99, 0xE3, 0x83, 0xB3, 0xE3, 0x83, 0x9E, 0x4C, -+ 0xE3, 0x82, 0xAB, 0xE3, 0x83, 0xA9, 0xE3, 0x83, -+ 0x83, 0xE3, 0x83, 0x88, 0x4C, 0xE3, 0x82, 0xAB, -+ 0xE3, 0x83, 0xAD, 0xE3, 0x83, 0xAA, 0xE3, 0x83, -+ 0xBC, 0x4C, 0xE3, 0x82, 0xAD, 0xE3, 0x82, 0x99, -+ // Bytes 2a00 - 2a3f -+ 0xE3, 0x83, 0x8B, 0xE3, 0x83, 0xBC, 0x4C, 0xE3, -+ 0x82, 0xAD, 0xE3, 0x83, 0xA5, 0xE3, 0x83, 0xAA, -+ 0xE3, 0x83, 0xBC, 0x4C, 0xE3, 0x82, 0xAF, 0xE3, -+ 0x82, 0x99, 0xE3, 0x83, 0xA9, 0xE3, 0x83, 0xA0, -+ 0x4C, 0xE3, 0x82, 0xAF, 0xE3, 0x83, 0xAD, 0xE3, -+ 0x83, 0xBC, 0xE3, 0x83, 0x8D, 0x4C, 0xE3, 0x82, -+ 0xB5, 0xE3, 0x82, 0xA4, 0xE3, 0x82, 0xAF, 0xE3, -+ 0x83, 0xAB, 0x4C, 0xE3, 0x82, 0xBF, 0xE3, 0x82, -+ // Bytes 2a40 - 2a7f -+ 0x99, 0xE3, 0x83, 0xBC, 0xE3, 0x82, 0xB9, 0x4C, -+ 0xE3, 0x83, 0x8F, 0xE3, 0x82, 0x9A, 0xE3, 0x83, -+ 0xBC, 0xE3, 0x83, 0x84, 0x4C, 0xE3, 0x83, 0x92, -+ 0xE3, 0x82, 0x9A, 0xE3, 0x82, 0xAF, 0xE3, 0x83, -+ 0xAB, 0x4C, 0xE3, 0x83, 0x95, 0xE3, 0x82, 0xA3, -+ 0xE3, 0x83, 0xBC, 0xE3, 0x83, 0x88, 0x4C, 0xE3, -+ 0x83, 0x98, 0xE3, 0x82, 0x99, 0xE3, 0x83, 0xBC, -+ 0xE3, 0x82, 0xBF, 0x4C, 0xE3, 0x83, 0x98, 0xE3, -+ // Bytes 2a80 - 2abf -+ 0x82, 0x9A, 0xE3, 0x83, 0x8B, 0xE3, 0x83, 0x92, -+ 0x4C, 0xE3, 0x83, 0x98, 0xE3, 0x82, 0x9A, 0xE3, -+ 0x83, 0xB3, 0xE3, 0x82, 0xB9, 0x4C, 0xE3, 0x83, -+ 0x9B, 0xE3, 0x82, 0x99, 0xE3, 0x83, 0xAB, 0xE3, -+ 0x83, 0x88, 0x4C, 0xE3, 0x83, 0x9E, 0xE3, 0x82, -+ 0xA4, 0xE3, 0x82, 0xAF, 0xE3, 0x83, 0xAD, 0x4C, -+ 0xE3, 0x83, 0x9F, 0xE3, 0x82, 0xAF, 0xE3, 0x83, -+ 0xAD, 0xE3, 0x83, 0xB3, 0x4C, 0xE3, 0x83, 0xA1, -+ // Bytes 2ac0 - 2aff -+ 0xE3, 0x83, 0xBC, 0xE3, 0x83, 0x88, 0xE3, 0x83, -+ 0xAB, 0x4C, 0xE3, 0x83, 0xAA, 0xE3, 0x83, 0x83, -+ 0xE3, 0x83, 0x88, 0xE3, 0x83, 0xAB, 0x4C, 0xE3, -+ 0x83, 0xAB, 0xE3, 0x83, 0x92, 0xE3, 0x82, 0x9A, -+ 0xE3, 0x83, 0xBC, 0x4C, 0xE6, 0xA0, 0xAA, 0xE5, -+ 0xBC, 0x8F, 0xE4, 0xBC, 0x9A, 0xE7, 0xA4, 0xBE, -+ 0x4E, 0x28, 0xE1, 0x84, 0x8B, 0xE1, 0x85, 0xA9, -+ 0xE1, 0x84, 0x92, 0xE1, 0x85, 0xAE, 0x29, 0x4F, -+ // Bytes 2b00 - 2b3f -+ 0xD8, 0xAC, 0xD9, 0x84, 0x20, 0xD8, 0xAC, 0xD9, -+ 0x84, 0xD8, 0xA7, 0xD9, 0x84, 0xD9, 0x87, 0x4F, -+ 0xE3, 0x82, 0xA2, 0xE3, 0x83, 0x8F, 0xE3, 0x82, -+ 0x9A, 0xE3, 0x83, 0xBC, 0xE3, 0x83, 0x88, 0x4F, -+ 0xE3, 0x82, 0xA2, 0xE3, 0x83, 0xB3, 0xE3, 0x83, -+ 0x98, 0xE3, 0x82, 0x9A, 0xE3, 0x82, 0xA2, 0x4F, -+ 0xE3, 0x82, 0xAD, 0xE3, 0x83, 0xAD, 0xE3, 0x83, -+ 0xAF, 0xE3, 0x83, 0x83, 0xE3, 0x83, 0x88, 0x4F, -+ // Bytes 2b40 - 2b7f -+ 0xE3, 0x82, 0xB5, 0xE3, 0x83, 0xB3, 0xE3, 0x83, -+ 0x81, 0xE3, 0x83, 0xBC, 0xE3, 0x83, 0xA0, 0x4F, -+ 0xE3, 0x83, 0x8F, 0xE3, 0x82, 0x99, 0xE3, 0x83, -+ 0xBC, 0xE3, 0x83, 0xAC, 0xE3, 0x83, 0xAB, 0x4F, -+ 0xE3, 0x83, 0x98, 0xE3, 0x82, 0xAF, 0xE3, 0x82, -+ 0xBF, 0xE3, 0x83, 0xBC, 0xE3, 0x83, 0xAB, 0x4F, -+ 0xE3, 0x83, 0x9B, 0xE3, 0x82, 0x9A, 0xE3, 0x82, -+ 0xA4, 0xE3, 0x83, 0xB3, 0xE3, 0x83, 0x88, 0x4F, -+ // Bytes 2b80 - 2bbf -+ 0xE3, 0x83, 0x9E, 0xE3, 0x83, 0xB3, 0xE3, 0x82, -+ 0xB7, 0xE3, 0x83, 0xA7, 0xE3, 0x83, 0xB3, 0x4F, -+ 0xE3, 0x83, 0xA1, 0xE3, 0x82, 0xAB, 0xE3, 0x82, -+ 0x99, 0xE3, 0x83, 0x88, 0xE3, 0x83, 0xB3, 0x4F, -+ 0xE3, 0x83, 0xAB, 0xE3, 0x83, 0xBC, 0xE3, 0x83, -+ 0x95, 0xE3, 0x82, 0x99, 0xE3, 0x83, 0xAB, 0x51, -+ 0x28, 0xE1, 0x84, 0x8B, 0xE1, 0x85, 0xA9, 0xE1, -+ 0x84, 0x8C, 0xE1, 0x85, 0xA5, 0xE1, 0x86, 0xAB, -+ // Bytes 2bc0 - 2bff -+ 0x29, 0x52, 0xE3, 0x82, 0xAD, 0xE3, 0x82, 0x99, -+ 0xE3, 0x83, 0xAB, 0xE3, 0x82, 0xBF, 0xE3, 0x82, -+ 0x99, 0xE3, 0x83, 0xBC, 0x52, 0xE3, 0x82, 0xAD, -+ 0xE3, 0x83, 0xAD, 0xE3, 0x82, 0xAF, 0xE3, 0x82, -+ 0x99, 0xE3, 0x83, 0xA9, 0xE3, 0x83, 0xA0, 0x52, -+ 0xE3, 0x82, 0xAD, 0xE3, 0x83, 0xAD, 0xE3, 0x83, -+ 0xA1, 0xE3, 0x83, 0xBC, 0xE3, 0x83, 0x88, 0xE3, -+ 0x83, 0xAB, 0x52, 0xE3, 0x82, 0xAF, 0xE3, 0x82, -+ // Bytes 2c00 - 2c3f -+ 0x99, 0xE3, 0x83, 0xA9, 0xE3, 0x83, 0xA0, 0xE3, -+ 0x83, 0x88, 0xE3, 0x83, 0xB3, 0x52, 0xE3, 0x82, -+ 0xAF, 0xE3, 0x83, 0xAB, 0xE3, 0x82, 0xBB, 0xE3, -+ 0x82, 0x99, 0xE3, 0x82, 0xA4, 0xE3, 0x83, 0xAD, -+ 0x52, 0xE3, 0x83, 0x8F, 0xE3, 0x82, 0x9A, 0xE3, -+ 0x83, 0xBC, 0xE3, 0x82, 0xBB, 0xE3, 0x83, 0xB3, -+ 0xE3, 0x83, 0x88, 0x52, 0xE3, 0x83, 0x92, 0xE3, -+ 0x82, 0x9A, 0xE3, 0x82, 0xA2, 0xE3, 0x82, 0xB9, -+ // Bytes 2c40 - 2c7f -+ 0xE3, 0x83, 0x88, 0xE3, 0x83, 0xAB, 0x52, 0xE3, -+ 0x83, 0x95, 0xE3, 0x82, 0x99, 0xE3, 0x83, 0x83, -+ 0xE3, 0x82, 0xB7, 0xE3, 0x82, 0xA7, 0xE3, 0x83, -+ 0xAB, 0x52, 0xE3, 0x83, 0x9F, 0xE3, 0x83, 0xAA, -+ 0xE3, 0x83, 0x8F, 0xE3, 0x82, 0x99, 0xE3, 0x83, -+ 0xBC, 0xE3, 0x83, 0xAB, 0x52, 0xE3, 0x83, 0xAC, -+ 0xE3, 0x83, 0xB3, 0xE3, 0x83, 0x88, 0xE3, 0x82, -+ 0xB1, 0xE3, 0x82, 0x99, 0xE3, 0x83, 0xB3, 0x61, -+ // Bytes 2c80 - 2cbf -+ 0xD8, 0xB5, 0xD9, 0x84, 0xD9, 0x89, 0x20, 0xD8, -+ 0xA7, 0xD9, 0x84, 0xD9, 0x84, 0xD9, 0x87, 0x20, -+ 0xD8, 0xB9, 0xD9, 0x84, 0xD9, 0x8A, 0xD9, 0x87, -+ 0x20, 0xD9, 0x88, 0xD8, 0xB3, 0xD9, 0x84, 0xD9, -+ 0x85, 0x06, 0xE0, 0xA7, 0x87, 0xE0, 0xA6, 0xBE, -+ 0x01, 0x06, 0xE0, 0xA7, 0x87, 0xE0, 0xA7, 0x97, -+ 0x01, 0x06, 0xE0, 0xAD, 0x87, 0xE0, 0xAC, 0xBE, -+ 0x01, 0x06, 0xE0, 0xAD, 0x87, 0xE0, 0xAD, 0x96, -+ // Bytes 2cc0 - 2cff -+ 0x01, 0x06, 0xE0, 0xAD, 0x87, 0xE0, 0xAD, 0x97, -+ 0x01, 0x06, 0xE0, 0xAE, 0x92, 0xE0, 0xAF, 0x97, -+ 0x01, 0x06, 0xE0, 0xAF, 0x86, 0xE0, 0xAE, 0xBE, -+ 0x01, 0x06, 0xE0, 0xAF, 0x86, 0xE0, 0xAF, 0x97, -+ 0x01, 0x06, 0xE0, 0xAF, 0x87, 0xE0, 0xAE, 0xBE, -+ 0x01, 0x06, 0xE0, 0xB2, 0xBF, 0xE0, 0xB3, 0x95, -+ 0x01, 0x06, 0xE0, 0xB3, 0x86, 0xE0, 0xB3, 0x95, -+ 0x01, 0x06, 0xE0, 0xB3, 0x86, 0xE0, 0xB3, 0x96, -+ // Bytes 2d00 - 2d3f -+ 0x01, 0x06, 0xE0, 0xB5, 0x86, 0xE0, 0xB4, 0xBE, -+ 0x01, 0x06, 0xE0, 0xB5, 0x86, 0xE0, 0xB5, 0x97, -+ 0x01, 0x06, 0xE0, 0xB5, 0x87, 0xE0, 0xB4, 0xBE, -+ 0x01, 0x06, 0xE0, 0xB7, 0x99, 0xE0, 0xB7, 0x9F, -+ 0x01, 0x06, 0xE1, 0x80, 0xA5, 0xE1, 0x80, 0xAE, -+ 0x01, 0x06, 0xE1, 0xAC, 0x85, 0xE1, 0xAC, 0xB5, -+ 0x01, 0x06, 0xE1, 0xAC, 0x87, 0xE1, 0xAC, 0xB5, -+ 0x01, 0x06, 0xE1, 0xAC, 0x89, 0xE1, 0xAC, 0xB5, -+ // Bytes 2d40 - 2d7f -+ 0x01, 0x06, 0xE1, 0xAC, 0x8B, 0xE1, 0xAC, 0xB5, -+ 0x01, 0x06, 0xE1, 0xAC, 0x8D, 0xE1, 0xAC, 0xB5, -+ 0x01, 0x06, 0xE1, 0xAC, 0x91, 0xE1, 0xAC, 0xB5, -+ 0x01, 0x06, 0xE1, 0xAC, 0xBA, 0xE1, 0xAC, 0xB5, -+ 0x01, 0x06, 0xE1, 0xAC, 0xBC, 0xE1, 0xAC, 0xB5, -+ 0x01, 0x06, 0xE1, 0xAC, 0xBE, 0xE1, 0xAC, 0xB5, -+ 0x01, 0x06, 0xE1, 0xAC, 0xBF, 0xE1, 0xAC, 0xB5, -+ 0x01, 0x06, 0xE1, 0xAD, 0x82, 0xE1, 0xAC, 0xB5, -+ // Bytes 2d80 - 2dbf -+ 0x01, 0x08, 0xF0, 0x91, 0x84, 0xB1, 0xF0, 0x91, -+ 0x84, 0xA7, 0x01, 0x08, 0xF0, 0x91, 0x84, 0xB2, -+ 0xF0, 0x91, 0x84, 0xA7, 0x01, 0x08, 0xF0, 0x91, -+ 0x8D, 0x87, 0xF0, 0x91, 0x8C, 0xBE, 0x01, 0x08, -+ 0xF0, 0x91, 0x8D, 0x87, 0xF0, 0x91, 0x8D, 0x97, -+ 0x01, 0x08, 0xF0, 0x91, 0x92, 0xB9, 0xF0, 0x91, -+ 0x92, 0xB0, 0x01, 0x08, 0xF0, 0x91, 0x92, 0xB9, -+ 0xF0, 0x91, 0x92, 0xBA, 0x01, 0x08, 0xF0, 0x91, -+ // Bytes 2dc0 - 2dff -+ 0x92, 0xB9, 0xF0, 0x91, 0x92, 0xBD, 0x01, 0x08, -+ 0xF0, 0x91, 0x96, 0xB8, 0xF0, 0x91, 0x96, 0xAF, -+ 0x01, 0x08, 0xF0, 0x91, 0x96, 0xB9, 0xF0, 0x91, -+ 0x96, 0xAF, 0x01, 0x09, 0xE0, 0xB3, 0x86, 0xE0, -+ 0xB3, 0x82, 0xE0, 0xB3, 0x95, 0x02, 0x09, 0xE0, -+ 0xB7, 0x99, 0xE0, 0xB7, 0x8F, 0xE0, 0xB7, 0x8A, -+ 0x12, 0x44, 0x44, 0x5A, 0xCC, 0x8C, 0xC9, 0x44, -+ 0x44, 0x7A, 0xCC, 0x8C, 0xC9, 0x44, 0x64, 0x7A, -+ // Bytes 2e00 - 2e3f -+ 0xCC, 0x8C, 0xC9, 0x46, 0xD9, 0x84, 0xD8, 0xA7, -+ 0xD9, 0x93, 0xC9, 0x46, 0xD9, 0x84, 0xD8, 0xA7, -+ 0xD9, 0x94, 0xC9, 0x46, 0xD9, 0x84, 0xD8, 0xA7, -+ 0xD9, 0x95, 0xB5, 0x46, 0xE1, 0x84, 0x80, 0xE1, -+ 0x85, 0xA1, 0x01, 0x46, 0xE1, 0x84, 0x82, 0xE1, -+ 0x85, 0xA1, 0x01, 0x46, 0xE1, 0x84, 0x83, 0xE1, -+ 0x85, 0xA1, 0x01, 0x46, 0xE1, 0x84, 0x85, 0xE1, -+ 0x85, 0xA1, 0x01, 0x46, 0xE1, 0x84, 0x86, 0xE1, -+ // Bytes 2e40 - 2e7f -+ 0x85, 0xA1, 0x01, 0x46, 0xE1, 0x84, 0x87, 0xE1, -+ 0x85, 0xA1, 0x01, 0x46, 0xE1, 0x84, 0x89, 0xE1, -+ 0x85, 0xA1, 0x01, 0x46, 0xE1, 0x84, 0x8B, 0xE1, -+ 0x85, 0xA1, 0x01, 0x46, 0xE1, 0x84, 0x8B, 0xE1, -+ 0x85, 0xAE, 0x01, 0x46, 0xE1, 0x84, 0x8C, 0xE1, -+ 0x85, 0xA1, 0x01, 0x46, 0xE1, 0x84, 0x8E, 0xE1, -+ 0x85, 0xA1, 0x01, 0x46, 0xE1, 0x84, 0x8F, 0xE1, -+ 0x85, 0xA1, 0x01, 0x46, 0xE1, 0x84, 0x90, 0xE1, -+ // Bytes 2e80 - 2ebf -+ 0x85, 0xA1, 0x01, 0x46, 0xE1, 0x84, 0x91, 0xE1, -+ 0x85, 0xA1, 0x01, 0x46, 0xE1, 0x84, 0x92, 0xE1, -+ 0x85, 0xA1, 0x01, 0x49, 0xE3, 0x83, 0xA1, 0xE3, -+ 0x82, 0xAB, 0xE3, 0x82, 0x99, 0x0D, 0x4C, 0xE1, -+ 0x84, 0x8C, 0xE1, 0x85, 0xAE, 0xE1, 0x84, 0x8B, -+ 0xE1, 0x85, 0xB4, 0x01, 0x4C, 0xE3, 0x82, 0xAD, -+ 0xE3, 0x82, 0x99, 0xE3, 0x82, 0xAB, 0xE3, 0x82, -+ 0x99, 0x0D, 0x4C, 0xE3, 0x82, 0xB3, 0xE3, 0x83, -+ // Bytes 2ec0 - 2eff -+ 0xBC, 0xE3, 0x83, 0x9B, 0xE3, 0x82, 0x9A, 0x0D, -+ 0x4C, 0xE3, 0x83, 0xA4, 0xE3, 0x83, 0xBC, 0xE3, -+ 0x83, 0x88, 0xE3, 0x82, 0x99, 0x0D, 0x4F, 0xE1, -+ 0x84, 0x8E, 0xE1, 0x85, 0xA1, 0xE1, 0x86, 0xB7, -+ 0xE1, 0x84, 0x80, 0xE1, 0x85, 0xA9, 0x01, 0x4F, -+ 0xE3, 0x82, 0xA4, 0xE3, 0x83, 0x8B, 0xE3, 0x83, -+ 0xB3, 0xE3, 0x82, 0xAF, 0xE3, 0x82, 0x99, 0x0D, -+ 0x4F, 0xE3, 0x82, 0xB7, 0xE3, 0x83, 0xAA, 0xE3, -+ // Bytes 2f00 - 2f3f -+ 0x83, 0xB3, 0xE3, 0x82, 0xAF, 0xE3, 0x82, 0x99, -+ 0x0D, 0x4F, 0xE3, 0x83, 0x98, 0xE3, 0x82, 0x9A, -+ 0xE3, 0x83, 0xBC, 0xE3, 0x82, 0xB7, 0xE3, 0x82, -+ 0x99, 0x0D, 0x4F, 0xE3, 0x83, 0x9B, 0xE3, 0x82, -+ 0x9A, 0xE3, 0x83, 0xB3, 0xE3, 0x83, 0x88, 0xE3, -+ 0x82, 0x99, 0x0D, 0x52, 0xE3, 0x82, 0xA8, 0xE3, -+ 0x82, 0xB9, 0xE3, 0x82, 0xAF, 0xE3, 0x83, 0xBC, -+ 0xE3, 0x83, 0x88, 0xE3, 0x82, 0x99, 0x0D, 0x52, -+ // Bytes 2f40 - 2f7f -+ 0xE3, 0x83, 0x95, 0xE3, 0x82, 0xA1, 0xE3, 0x83, -+ 0xA9, 0xE3, 0x83, 0x83, 0xE3, 0x83, 0x88, 0xE3, -+ 0x82, 0x99, 0x0D, 0x86, 0xE0, 0xB3, 0x86, 0xE0, -+ 0xB3, 0x82, 0x01, 0x86, 0xE0, 0xB7, 0x99, 0xE0, -+ 0xB7, 0x8F, 0x01, 0x03, 0x3C, 0xCC, 0xB8, 0x05, -+ 0x03, 0x3D, 0xCC, 0xB8, 0x05, 0x03, 0x3E, 0xCC, -+ 0xB8, 0x05, 0x03, 0x41, 0xCC, 0x80, 0xC9, 0x03, -+ 0x41, 0xCC, 0x81, 0xC9, 0x03, 0x41, 0xCC, 0x83, -+ // Bytes 2f80 - 2fbf -+ 0xC9, 0x03, 0x41, 0xCC, 0x84, 0xC9, 0x03, 0x41, -+ 0xCC, 0x89, 0xC9, 0x03, 0x41, 0xCC, 0x8C, 0xC9, -+ 0x03, 0x41, 0xCC, 0x8F, 0xC9, 0x03, 0x41, 0xCC, -+ 0x91, 0xC9, 0x03, 0x41, 0xCC, 0xA5, 0xB5, 0x03, -+ 0x41, 0xCC, 0xA8, 0xA5, 0x03, 0x42, 0xCC, 0x87, -+ 0xC9, 0x03, 0x42, 0xCC, 0xA3, 0xB5, 0x03, 0x42, -+ 0xCC, 0xB1, 0xB5, 0x03, 0x43, 0xCC, 0x81, 0xC9, -+ 0x03, 0x43, 0xCC, 0x82, 0xC9, 0x03, 0x43, 0xCC, -+ // Bytes 2fc0 - 2fff -+ 0x87, 0xC9, 0x03, 0x43, 0xCC, 0x8C, 0xC9, 0x03, -+ 0x44, 0xCC, 0x87, 0xC9, 0x03, 0x44, 0xCC, 0x8C, -+ 0xC9, 0x03, 0x44, 0xCC, 0xA3, 0xB5, 0x03, 0x44, -+ 0xCC, 0xA7, 0xA5, 0x03, 0x44, 0xCC, 0xAD, 0xB5, -+ 0x03, 0x44, 0xCC, 0xB1, 0xB5, 0x03, 0x45, 0xCC, -+ 0x80, 0xC9, 0x03, 0x45, 0xCC, 0x81, 0xC9, 0x03, -+ 0x45, 0xCC, 0x83, 0xC9, 0x03, 0x45, 0xCC, 0x86, -+ 0xC9, 0x03, 0x45, 0xCC, 0x87, 0xC9, 0x03, 0x45, -+ // Bytes 3000 - 303f -+ 0xCC, 0x88, 0xC9, 0x03, 0x45, 0xCC, 0x89, 0xC9, -+ 0x03, 0x45, 0xCC, 0x8C, 0xC9, 0x03, 0x45, 0xCC, -+ 0x8F, 0xC9, 0x03, 0x45, 0xCC, 0x91, 0xC9, 0x03, -+ 0x45, 0xCC, 0xA8, 0xA5, 0x03, 0x45, 0xCC, 0xAD, -+ 0xB5, 0x03, 0x45, 0xCC, 0xB0, 0xB5, 0x03, 0x46, -+ 0xCC, 0x87, 0xC9, 0x03, 0x47, 0xCC, 0x81, 0xC9, -+ 0x03, 0x47, 0xCC, 0x82, 0xC9, 0x03, 0x47, 0xCC, -+ 0x84, 0xC9, 0x03, 0x47, 0xCC, 0x86, 0xC9, 0x03, -+ // Bytes 3040 - 307f -+ 0x47, 0xCC, 0x87, 0xC9, 0x03, 0x47, 0xCC, 0x8C, -+ 0xC9, 0x03, 0x47, 0xCC, 0xA7, 0xA5, 0x03, 0x48, -+ 0xCC, 0x82, 0xC9, 0x03, 0x48, 0xCC, 0x87, 0xC9, -+ 0x03, 0x48, 0xCC, 0x88, 0xC9, 0x03, 0x48, 0xCC, -+ 0x8C, 0xC9, 0x03, 0x48, 0xCC, 0xA3, 0xB5, 0x03, -+ 0x48, 0xCC, 0xA7, 0xA5, 0x03, 0x48, 0xCC, 0xAE, -+ 0xB5, 0x03, 0x49, 0xCC, 0x80, 0xC9, 0x03, 0x49, -+ 0xCC, 0x81, 0xC9, 0x03, 0x49, 0xCC, 0x82, 0xC9, -+ // Bytes 3080 - 30bf -+ 0x03, 0x49, 0xCC, 0x83, 0xC9, 0x03, 0x49, 0xCC, -+ 0x84, 0xC9, 0x03, 0x49, 0xCC, 0x86, 0xC9, 0x03, -+ 0x49, 0xCC, 0x87, 0xC9, 0x03, 0x49, 0xCC, 0x89, -+ 0xC9, 0x03, 0x49, 0xCC, 0x8C, 0xC9, 0x03, 0x49, -+ 0xCC, 0x8F, 0xC9, 0x03, 0x49, 0xCC, 0x91, 0xC9, -+ 0x03, 0x49, 0xCC, 0xA3, 0xB5, 0x03, 0x49, 0xCC, -+ 0xA8, 0xA5, 0x03, 0x49, 0xCC, 0xB0, 0xB5, 0x03, -+ 0x4A, 0xCC, 0x82, 0xC9, 0x03, 0x4B, 0xCC, 0x81, -+ // Bytes 30c0 - 30ff -+ 0xC9, 0x03, 0x4B, 0xCC, 0x8C, 0xC9, 0x03, 0x4B, -+ 0xCC, 0xA3, 0xB5, 0x03, 0x4B, 0xCC, 0xA7, 0xA5, -+ 0x03, 0x4B, 0xCC, 0xB1, 0xB5, 0x03, 0x4C, 0xCC, -+ 0x81, 0xC9, 0x03, 0x4C, 0xCC, 0x8C, 0xC9, 0x03, -+ 0x4C, 0xCC, 0xA7, 0xA5, 0x03, 0x4C, 0xCC, 0xAD, -+ 0xB5, 0x03, 0x4C, 0xCC, 0xB1, 0xB5, 0x03, 0x4D, -+ 0xCC, 0x81, 0xC9, 0x03, 0x4D, 0xCC, 0x87, 0xC9, -+ 0x03, 0x4D, 0xCC, 0xA3, 0xB5, 0x03, 0x4E, 0xCC, -+ // Bytes 3100 - 313f -+ 0x80, 0xC9, 0x03, 0x4E, 0xCC, 0x81, 0xC9, 0x03, -+ 0x4E, 0xCC, 0x83, 0xC9, 0x03, 0x4E, 0xCC, 0x87, -+ 0xC9, 0x03, 0x4E, 0xCC, 0x8C, 0xC9, 0x03, 0x4E, -+ 0xCC, 0xA3, 0xB5, 0x03, 0x4E, 0xCC, 0xA7, 0xA5, -+ 0x03, 0x4E, 0xCC, 0xAD, 0xB5, 0x03, 0x4E, 0xCC, -+ 0xB1, 0xB5, 0x03, 0x4F, 0xCC, 0x80, 0xC9, 0x03, -+ 0x4F, 0xCC, 0x81, 0xC9, 0x03, 0x4F, 0xCC, 0x86, -+ 0xC9, 0x03, 0x4F, 0xCC, 0x89, 0xC9, 0x03, 0x4F, -+ // Bytes 3140 - 317f -+ 0xCC, 0x8B, 0xC9, 0x03, 0x4F, 0xCC, 0x8C, 0xC9, -+ 0x03, 0x4F, 0xCC, 0x8F, 0xC9, 0x03, 0x4F, 0xCC, -+ 0x91, 0xC9, 0x03, 0x50, 0xCC, 0x81, 0xC9, 0x03, -+ 0x50, 0xCC, 0x87, 0xC9, 0x03, 0x52, 0xCC, 0x81, -+ 0xC9, 0x03, 0x52, 0xCC, 0x87, 0xC9, 0x03, 0x52, -+ 0xCC, 0x8C, 0xC9, 0x03, 0x52, 0xCC, 0x8F, 0xC9, -+ 0x03, 0x52, 0xCC, 0x91, 0xC9, 0x03, 0x52, 0xCC, -+ 0xA7, 0xA5, 0x03, 0x52, 0xCC, 0xB1, 0xB5, 0x03, -+ // Bytes 3180 - 31bf -+ 0x53, 0xCC, 0x82, 0xC9, 0x03, 0x53, 0xCC, 0x87, -+ 0xC9, 0x03, 0x53, 0xCC, 0xA6, 0xB5, 0x03, 0x53, -+ 0xCC, 0xA7, 0xA5, 0x03, 0x54, 0xCC, 0x87, 0xC9, -+ 0x03, 0x54, 0xCC, 0x8C, 0xC9, 0x03, 0x54, 0xCC, -+ 0xA3, 0xB5, 0x03, 0x54, 0xCC, 0xA6, 0xB5, 0x03, -+ 0x54, 0xCC, 0xA7, 0xA5, 0x03, 0x54, 0xCC, 0xAD, -+ 0xB5, 0x03, 0x54, 0xCC, 0xB1, 0xB5, 0x03, 0x55, -+ 0xCC, 0x80, 0xC9, 0x03, 0x55, 0xCC, 0x81, 0xC9, -+ // Bytes 31c0 - 31ff -+ 0x03, 0x55, 0xCC, 0x82, 0xC9, 0x03, 0x55, 0xCC, -+ 0x86, 0xC9, 0x03, 0x55, 0xCC, 0x89, 0xC9, 0x03, -+ 0x55, 0xCC, 0x8A, 0xC9, 0x03, 0x55, 0xCC, 0x8B, -+ 0xC9, 0x03, 0x55, 0xCC, 0x8C, 0xC9, 0x03, 0x55, -+ 0xCC, 0x8F, 0xC9, 0x03, 0x55, 0xCC, 0x91, 0xC9, -+ 0x03, 0x55, 0xCC, 0xA3, 0xB5, 0x03, 0x55, 0xCC, -+ 0xA4, 0xB5, 0x03, 0x55, 0xCC, 0xA8, 0xA5, 0x03, -+ 0x55, 0xCC, 0xAD, 0xB5, 0x03, 0x55, 0xCC, 0xB0, -+ // Bytes 3200 - 323f -+ 0xB5, 0x03, 0x56, 0xCC, 0x83, 0xC9, 0x03, 0x56, -+ 0xCC, 0xA3, 0xB5, 0x03, 0x57, 0xCC, 0x80, 0xC9, -+ 0x03, 0x57, 0xCC, 0x81, 0xC9, 0x03, 0x57, 0xCC, -+ 0x82, 0xC9, 0x03, 0x57, 0xCC, 0x87, 0xC9, 0x03, -+ 0x57, 0xCC, 0x88, 0xC9, 0x03, 0x57, 0xCC, 0xA3, -+ 0xB5, 0x03, 0x58, 0xCC, 0x87, 0xC9, 0x03, 0x58, -+ 0xCC, 0x88, 0xC9, 0x03, 0x59, 0xCC, 0x80, 0xC9, -+ 0x03, 0x59, 0xCC, 0x81, 0xC9, 0x03, 0x59, 0xCC, -+ // Bytes 3240 - 327f -+ 0x82, 0xC9, 0x03, 0x59, 0xCC, 0x83, 0xC9, 0x03, -+ 0x59, 0xCC, 0x84, 0xC9, 0x03, 0x59, 0xCC, 0x87, -+ 0xC9, 0x03, 0x59, 0xCC, 0x88, 0xC9, 0x03, 0x59, -+ 0xCC, 0x89, 0xC9, 0x03, 0x59, 0xCC, 0xA3, 0xB5, -+ 0x03, 0x5A, 0xCC, 0x81, 0xC9, 0x03, 0x5A, 0xCC, -+ 0x82, 0xC9, 0x03, 0x5A, 0xCC, 0x87, 0xC9, 0x03, -+ 0x5A, 0xCC, 0x8C, 0xC9, 0x03, 0x5A, 0xCC, 0xA3, -+ 0xB5, 0x03, 0x5A, 0xCC, 0xB1, 0xB5, 0x03, 0x61, -+ // Bytes 3280 - 32bf -+ 0xCC, 0x80, 0xC9, 0x03, 0x61, 0xCC, 0x81, 0xC9, -+ 0x03, 0x61, 0xCC, 0x83, 0xC9, 0x03, 0x61, 0xCC, -+ 0x84, 0xC9, 0x03, 0x61, 0xCC, 0x89, 0xC9, 0x03, -+ 0x61, 0xCC, 0x8C, 0xC9, 0x03, 0x61, 0xCC, 0x8F, -+ 0xC9, 0x03, 0x61, 0xCC, 0x91, 0xC9, 0x03, 0x61, -+ 0xCC, 0xA5, 0xB5, 0x03, 0x61, 0xCC, 0xA8, 0xA5, -+ 0x03, 0x62, 0xCC, 0x87, 0xC9, 0x03, 0x62, 0xCC, -+ 0xA3, 0xB5, 0x03, 0x62, 0xCC, 0xB1, 0xB5, 0x03, -+ // Bytes 32c0 - 32ff -+ 0x63, 0xCC, 0x81, 0xC9, 0x03, 0x63, 0xCC, 0x82, -+ 0xC9, 0x03, 0x63, 0xCC, 0x87, 0xC9, 0x03, 0x63, -+ 0xCC, 0x8C, 0xC9, 0x03, 0x64, 0xCC, 0x87, 0xC9, -+ 0x03, 0x64, 0xCC, 0x8C, 0xC9, 0x03, 0x64, 0xCC, -+ 0xA3, 0xB5, 0x03, 0x64, 0xCC, 0xA7, 0xA5, 0x03, -+ 0x64, 0xCC, 0xAD, 0xB5, 0x03, 0x64, 0xCC, 0xB1, -+ 0xB5, 0x03, 0x65, 0xCC, 0x80, 0xC9, 0x03, 0x65, -+ 0xCC, 0x81, 0xC9, 0x03, 0x65, 0xCC, 0x83, 0xC9, -+ // Bytes 3300 - 333f -+ 0x03, 0x65, 0xCC, 0x86, 0xC9, 0x03, 0x65, 0xCC, -+ 0x87, 0xC9, 0x03, 0x65, 0xCC, 0x88, 0xC9, 0x03, -+ 0x65, 0xCC, 0x89, 0xC9, 0x03, 0x65, 0xCC, 0x8C, -+ 0xC9, 0x03, 0x65, 0xCC, 0x8F, 0xC9, 0x03, 0x65, -+ 0xCC, 0x91, 0xC9, 0x03, 0x65, 0xCC, 0xA8, 0xA5, -+ 0x03, 0x65, 0xCC, 0xAD, 0xB5, 0x03, 0x65, 0xCC, -+ 0xB0, 0xB5, 0x03, 0x66, 0xCC, 0x87, 0xC9, 0x03, -+ 0x67, 0xCC, 0x81, 0xC9, 0x03, 0x67, 0xCC, 0x82, -+ // Bytes 3340 - 337f -+ 0xC9, 0x03, 0x67, 0xCC, 0x84, 0xC9, 0x03, 0x67, -+ 0xCC, 0x86, 0xC9, 0x03, 0x67, 0xCC, 0x87, 0xC9, -+ 0x03, 0x67, 0xCC, 0x8C, 0xC9, 0x03, 0x67, 0xCC, -+ 0xA7, 0xA5, 0x03, 0x68, 0xCC, 0x82, 0xC9, 0x03, -+ 0x68, 0xCC, 0x87, 0xC9, 0x03, 0x68, 0xCC, 0x88, -+ 0xC9, 0x03, 0x68, 0xCC, 0x8C, 0xC9, 0x03, 0x68, -+ 0xCC, 0xA3, 0xB5, 0x03, 0x68, 0xCC, 0xA7, 0xA5, -+ 0x03, 0x68, 0xCC, 0xAE, 0xB5, 0x03, 0x68, 0xCC, -+ // Bytes 3380 - 33bf -+ 0xB1, 0xB5, 0x03, 0x69, 0xCC, 0x80, 0xC9, 0x03, -+ 0x69, 0xCC, 0x81, 0xC9, 0x03, 0x69, 0xCC, 0x82, -+ 0xC9, 0x03, 0x69, 0xCC, 0x83, 0xC9, 0x03, 0x69, -+ 0xCC, 0x84, 0xC9, 0x03, 0x69, 0xCC, 0x86, 0xC9, -+ 0x03, 0x69, 0xCC, 0x89, 0xC9, 0x03, 0x69, 0xCC, -+ 0x8C, 0xC9, 0x03, 0x69, 0xCC, 0x8F, 0xC9, 0x03, -+ 0x69, 0xCC, 0x91, 0xC9, 0x03, 0x69, 0xCC, 0xA3, -+ 0xB5, 0x03, 0x69, 0xCC, 0xA8, 0xA5, 0x03, 0x69, -+ // Bytes 33c0 - 33ff -+ 0xCC, 0xB0, 0xB5, 0x03, 0x6A, 0xCC, 0x82, 0xC9, -+ 0x03, 0x6A, 0xCC, 0x8C, 0xC9, 0x03, 0x6B, 0xCC, -+ 0x81, 0xC9, 0x03, 0x6B, 0xCC, 0x8C, 0xC9, 0x03, -+ 0x6B, 0xCC, 0xA3, 0xB5, 0x03, 0x6B, 0xCC, 0xA7, -+ 0xA5, 0x03, 0x6B, 0xCC, 0xB1, 0xB5, 0x03, 0x6C, -+ 0xCC, 0x81, 0xC9, 0x03, 0x6C, 0xCC, 0x8C, 0xC9, -+ 0x03, 0x6C, 0xCC, 0xA7, 0xA5, 0x03, 0x6C, 0xCC, -+ 0xAD, 0xB5, 0x03, 0x6C, 0xCC, 0xB1, 0xB5, 0x03, -+ // Bytes 3400 - 343f -+ 0x6D, 0xCC, 0x81, 0xC9, 0x03, 0x6D, 0xCC, 0x87, -+ 0xC9, 0x03, 0x6D, 0xCC, 0xA3, 0xB5, 0x03, 0x6E, -+ 0xCC, 0x80, 0xC9, 0x03, 0x6E, 0xCC, 0x81, 0xC9, -+ 0x03, 0x6E, 0xCC, 0x83, 0xC9, 0x03, 0x6E, 0xCC, -+ 0x87, 0xC9, 0x03, 0x6E, 0xCC, 0x8C, 0xC9, 0x03, -+ 0x6E, 0xCC, 0xA3, 0xB5, 0x03, 0x6E, 0xCC, 0xA7, -+ 0xA5, 0x03, 0x6E, 0xCC, 0xAD, 0xB5, 0x03, 0x6E, -+ 0xCC, 0xB1, 0xB5, 0x03, 0x6F, 0xCC, 0x80, 0xC9, -+ // Bytes 3440 - 347f -+ 0x03, 0x6F, 0xCC, 0x81, 0xC9, 0x03, 0x6F, 0xCC, -+ 0x86, 0xC9, 0x03, 0x6F, 0xCC, 0x89, 0xC9, 0x03, -+ 0x6F, 0xCC, 0x8B, 0xC9, 0x03, 0x6F, 0xCC, 0x8C, -+ 0xC9, 0x03, 0x6F, 0xCC, 0x8F, 0xC9, 0x03, 0x6F, -+ 0xCC, 0x91, 0xC9, 0x03, 0x70, 0xCC, 0x81, 0xC9, -+ 0x03, 0x70, 0xCC, 0x87, 0xC9, 0x03, 0x72, 0xCC, -+ 0x81, 0xC9, 0x03, 0x72, 0xCC, 0x87, 0xC9, 0x03, -+ 0x72, 0xCC, 0x8C, 0xC9, 0x03, 0x72, 0xCC, 0x8F, -+ // Bytes 3480 - 34bf -+ 0xC9, 0x03, 0x72, 0xCC, 0x91, 0xC9, 0x03, 0x72, -+ 0xCC, 0xA7, 0xA5, 0x03, 0x72, 0xCC, 0xB1, 0xB5, -+ 0x03, 0x73, 0xCC, 0x82, 0xC9, 0x03, 0x73, 0xCC, -+ 0x87, 0xC9, 0x03, 0x73, 0xCC, 0xA6, 0xB5, 0x03, -+ 0x73, 0xCC, 0xA7, 0xA5, 0x03, 0x74, 0xCC, 0x87, -+ 0xC9, 0x03, 0x74, 0xCC, 0x88, 0xC9, 0x03, 0x74, -+ 0xCC, 0x8C, 0xC9, 0x03, 0x74, 0xCC, 0xA3, 0xB5, -+ 0x03, 0x74, 0xCC, 0xA6, 0xB5, 0x03, 0x74, 0xCC, -+ // Bytes 34c0 - 34ff -+ 0xA7, 0xA5, 0x03, 0x74, 0xCC, 0xAD, 0xB5, 0x03, -+ 0x74, 0xCC, 0xB1, 0xB5, 0x03, 0x75, 0xCC, 0x80, -+ 0xC9, 0x03, 0x75, 0xCC, 0x81, 0xC9, 0x03, 0x75, -+ 0xCC, 0x82, 0xC9, 0x03, 0x75, 0xCC, 0x86, 0xC9, -+ 0x03, 0x75, 0xCC, 0x89, 0xC9, 0x03, 0x75, 0xCC, -+ 0x8A, 0xC9, 0x03, 0x75, 0xCC, 0x8B, 0xC9, 0x03, -+ 0x75, 0xCC, 0x8C, 0xC9, 0x03, 0x75, 0xCC, 0x8F, -+ 0xC9, 0x03, 0x75, 0xCC, 0x91, 0xC9, 0x03, 0x75, -+ // Bytes 3500 - 353f -+ 0xCC, 0xA3, 0xB5, 0x03, 0x75, 0xCC, 0xA4, 0xB5, -+ 0x03, 0x75, 0xCC, 0xA8, 0xA5, 0x03, 0x75, 0xCC, -+ 0xAD, 0xB5, 0x03, 0x75, 0xCC, 0xB0, 0xB5, 0x03, -+ 0x76, 0xCC, 0x83, 0xC9, 0x03, 0x76, 0xCC, 0xA3, -+ 0xB5, 0x03, 0x77, 0xCC, 0x80, 0xC9, 0x03, 0x77, -+ 0xCC, 0x81, 0xC9, 0x03, 0x77, 0xCC, 0x82, 0xC9, -+ 0x03, 0x77, 0xCC, 0x87, 0xC9, 0x03, 0x77, 0xCC, -+ 0x88, 0xC9, 0x03, 0x77, 0xCC, 0x8A, 0xC9, 0x03, -+ // Bytes 3540 - 357f -+ 0x77, 0xCC, 0xA3, 0xB5, 0x03, 0x78, 0xCC, 0x87, -+ 0xC9, 0x03, 0x78, 0xCC, 0x88, 0xC9, 0x03, 0x79, -+ 0xCC, 0x80, 0xC9, 0x03, 0x79, 0xCC, 0x81, 0xC9, -+ 0x03, 0x79, 0xCC, 0x82, 0xC9, 0x03, 0x79, 0xCC, -+ 0x83, 0xC9, 0x03, 0x79, 0xCC, 0x84, 0xC9, 0x03, -+ 0x79, 0xCC, 0x87, 0xC9, 0x03, 0x79, 0xCC, 0x88, -+ 0xC9, 0x03, 0x79, 0xCC, 0x89, 0xC9, 0x03, 0x79, -+ 0xCC, 0x8A, 0xC9, 0x03, 0x79, 0xCC, 0xA3, 0xB5, -+ // Bytes 3580 - 35bf -+ 0x03, 0x7A, 0xCC, 0x81, 0xC9, 0x03, 0x7A, 0xCC, -+ 0x82, 0xC9, 0x03, 0x7A, 0xCC, 0x87, 0xC9, 0x03, -+ 0x7A, 0xCC, 0x8C, 0xC9, 0x03, 0x7A, 0xCC, 0xA3, -+ 0xB5, 0x03, 0x7A, 0xCC, 0xB1, 0xB5, 0x04, 0xC2, -+ 0xA8, 0xCC, 0x80, 0xCA, 0x04, 0xC2, 0xA8, 0xCC, -+ 0x81, 0xCA, 0x04, 0xC2, 0xA8, 0xCD, 0x82, 0xCA, -+ 0x04, 0xC3, 0x86, 0xCC, 0x81, 0xC9, 0x04, 0xC3, -+ 0x86, 0xCC, 0x84, 0xC9, 0x04, 0xC3, 0x98, 0xCC, -+ // Bytes 35c0 - 35ff -+ 0x81, 0xC9, 0x04, 0xC3, 0xA6, 0xCC, 0x81, 0xC9, -+ 0x04, 0xC3, 0xA6, 0xCC, 0x84, 0xC9, 0x04, 0xC3, -+ 0xB8, 0xCC, 0x81, 0xC9, 0x04, 0xC5, 0xBF, 0xCC, -+ 0x87, 0xC9, 0x04, 0xC6, 0xB7, 0xCC, 0x8C, 0xC9, -+ 0x04, 0xCA, 0x92, 0xCC, 0x8C, 0xC9, 0x04, 0xCE, -+ 0x91, 0xCC, 0x80, 0xC9, 0x04, 0xCE, 0x91, 0xCC, -+ 0x81, 0xC9, 0x04, 0xCE, 0x91, 0xCC, 0x84, 0xC9, -+ 0x04, 0xCE, 0x91, 0xCC, 0x86, 0xC9, 0x04, 0xCE, -+ // Bytes 3600 - 363f -+ 0x91, 0xCD, 0x85, 0xD9, 0x04, 0xCE, 0x95, 0xCC, -+ 0x80, 0xC9, 0x04, 0xCE, 0x95, 0xCC, 0x81, 0xC9, -+ 0x04, 0xCE, 0x97, 0xCC, 0x80, 0xC9, 0x04, 0xCE, -+ 0x97, 0xCC, 0x81, 0xC9, 0x04, 0xCE, 0x97, 0xCD, -+ 0x85, 0xD9, 0x04, 0xCE, 0x99, 0xCC, 0x80, 0xC9, -+ 0x04, 0xCE, 0x99, 0xCC, 0x81, 0xC9, 0x04, 0xCE, -+ 0x99, 0xCC, 0x84, 0xC9, 0x04, 0xCE, 0x99, 0xCC, -+ 0x86, 0xC9, 0x04, 0xCE, 0x99, 0xCC, 0x88, 0xC9, -+ // Bytes 3640 - 367f -+ 0x04, 0xCE, 0x9F, 0xCC, 0x80, 0xC9, 0x04, 0xCE, -+ 0x9F, 0xCC, 0x81, 0xC9, 0x04, 0xCE, 0xA1, 0xCC, -+ 0x94, 0xC9, 0x04, 0xCE, 0xA5, 0xCC, 0x80, 0xC9, -+ 0x04, 0xCE, 0xA5, 0xCC, 0x81, 0xC9, 0x04, 0xCE, -+ 0xA5, 0xCC, 0x84, 0xC9, 0x04, 0xCE, 0xA5, 0xCC, -+ 0x86, 0xC9, 0x04, 0xCE, 0xA5, 0xCC, 0x88, 0xC9, -+ 0x04, 0xCE, 0xA9, 0xCC, 0x80, 0xC9, 0x04, 0xCE, -+ 0xA9, 0xCC, 0x81, 0xC9, 0x04, 0xCE, 0xA9, 0xCD, -+ // Bytes 3680 - 36bf -+ 0x85, 0xD9, 0x04, 0xCE, 0xB1, 0xCC, 0x84, 0xC9, -+ 0x04, 0xCE, 0xB1, 0xCC, 0x86, 0xC9, 0x04, 0xCE, -+ 0xB1, 0xCD, 0x85, 0xD9, 0x04, 0xCE, 0xB5, 0xCC, -+ 0x80, 0xC9, 0x04, 0xCE, 0xB5, 0xCC, 0x81, 0xC9, -+ 0x04, 0xCE, 0xB7, 0xCD, 0x85, 0xD9, 0x04, 0xCE, -+ 0xB9, 0xCC, 0x80, 0xC9, 0x04, 0xCE, 0xB9, 0xCC, -+ 0x81, 0xC9, 0x04, 0xCE, 0xB9, 0xCC, 0x84, 0xC9, -+ 0x04, 0xCE, 0xB9, 0xCC, 0x86, 0xC9, 0x04, 0xCE, -+ // Bytes 36c0 - 36ff -+ 0xB9, 0xCD, 0x82, 0xC9, 0x04, 0xCE, 0xBF, 0xCC, -+ 0x80, 0xC9, 0x04, 0xCE, 0xBF, 0xCC, 0x81, 0xC9, -+ 0x04, 0xCF, 0x81, 0xCC, 0x93, 0xC9, 0x04, 0xCF, -+ 0x81, 0xCC, 0x94, 0xC9, 0x04, 0xCF, 0x85, 0xCC, -+ 0x80, 0xC9, 0x04, 0xCF, 0x85, 0xCC, 0x81, 0xC9, -+ 0x04, 0xCF, 0x85, 0xCC, 0x84, 0xC9, 0x04, 0xCF, -+ 0x85, 0xCC, 0x86, 0xC9, 0x04, 0xCF, 0x85, 0xCD, -+ 0x82, 0xC9, 0x04, 0xCF, 0x89, 0xCD, 0x85, 0xD9, -+ // Bytes 3700 - 373f -+ 0x04, 0xCF, 0x92, 0xCC, 0x81, 0xC9, 0x04, 0xCF, -+ 0x92, 0xCC, 0x88, 0xC9, 0x04, 0xD0, 0x86, 0xCC, -+ 0x88, 0xC9, 0x04, 0xD0, 0x90, 0xCC, 0x86, 0xC9, -+ 0x04, 0xD0, 0x90, 0xCC, 0x88, 0xC9, 0x04, 0xD0, -+ 0x93, 0xCC, 0x81, 0xC9, 0x04, 0xD0, 0x95, 0xCC, -+ 0x80, 0xC9, 0x04, 0xD0, 0x95, 0xCC, 0x86, 0xC9, -+ 0x04, 0xD0, 0x95, 0xCC, 0x88, 0xC9, 0x04, 0xD0, -+ 0x96, 0xCC, 0x86, 0xC9, 0x04, 0xD0, 0x96, 0xCC, -+ // Bytes 3740 - 377f -+ 0x88, 0xC9, 0x04, 0xD0, 0x97, 0xCC, 0x88, 0xC9, -+ 0x04, 0xD0, 0x98, 0xCC, 0x80, 0xC9, 0x04, 0xD0, -+ 0x98, 0xCC, 0x84, 0xC9, 0x04, 0xD0, 0x98, 0xCC, -+ 0x86, 0xC9, 0x04, 0xD0, 0x98, 0xCC, 0x88, 0xC9, -+ 0x04, 0xD0, 0x9A, 0xCC, 0x81, 0xC9, 0x04, 0xD0, -+ 0x9E, 0xCC, 0x88, 0xC9, 0x04, 0xD0, 0xA3, 0xCC, -+ 0x84, 0xC9, 0x04, 0xD0, 0xA3, 0xCC, 0x86, 0xC9, -+ 0x04, 0xD0, 0xA3, 0xCC, 0x88, 0xC9, 0x04, 0xD0, -+ // Bytes 3780 - 37bf -+ 0xA3, 0xCC, 0x8B, 0xC9, 0x04, 0xD0, 0xA7, 0xCC, -+ 0x88, 0xC9, 0x04, 0xD0, 0xAB, 0xCC, 0x88, 0xC9, -+ 0x04, 0xD0, 0xAD, 0xCC, 0x88, 0xC9, 0x04, 0xD0, -+ 0xB0, 0xCC, 0x86, 0xC9, 0x04, 0xD0, 0xB0, 0xCC, -+ 0x88, 0xC9, 0x04, 0xD0, 0xB3, 0xCC, 0x81, 0xC9, -+ 0x04, 0xD0, 0xB5, 0xCC, 0x80, 0xC9, 0x04, 0xD0, -+ 0xB5, 0xCC, 0x86, 0xC9, 0x04, 0xD0, 0xB5, 0xCC, -+ 0x88, 0xC9, 0x04, 0xD0, 0xB6, 0xCC, 0x86, 0xC9, -+ // Bytes 37c0 - 37ff -+ 0x04, 0xD0, 0xB6, 0xCC, 0x88, 0xC9, 0x04, 0xD0, -+ 0xB7, 0xCC, 0x88, 0xC9, 0x04, 0xD0, 0xB8, 0xCC, -+ 0x80, 0xC9, 0x04, 0xD0, 0xB8, 0xCC, 0x84, 0xC9, -+ 0x04, 0xD0, 0xB8, 0xCC, 0x86, 0xC9, 0x04, 0xD0, -+ 0xB8, 0xCC, 0x88, 0xC9, 0x04, 0xD0, 0xBA, 0xCC, -+ 0x81, 0xC9, 0x04, 0xD0, 0xBE, 0xCC, 0x88, 0xC9, -+ 0x04, 0xD1, 0x83, 0xCC, 0x84, 0xC9, 0x04, 0xD1, -+ 0x83, 0xCC, 0x86, 0xC9, 0x04, 0xD1, 0x83, 0xCC, -+ // Bytes 3800 - 383f -+ 0x88, 0xC9, 0x04, 0xD1, 0x83, 0xCC, 0x8B, 0xC9, -+ 0x04, 0xD1, 0x87, 0xCC, 0x88, 0xC9, 0x04, 0xD1, -+ 0x8B, 0xCC, 0x88, 0xC9, 0x04, 0xD1, 0x8D, 0xCC, -+ 0x88, 0xC9, 0x04, 0xD1, 0x96, 0xCC, 0x88, 0xC9, -+ 0x04, 0xD1, 0xB4, 0xCC, 0x8F, 0xC9, 0x04, 0xD1, -+ 0xB5, 0xCC, 0x8F, 0xC9, 0x04, 0xD3, 0x98, 0xCC, -+ 0x88, 0xC9, 0x04, 0xD3, 0x99, 0xCC, 0x88, 0xC9, -+ 0x04, 0xD3, 0xA8, 0xCC, 0x88, 0xC9, 0x04, 0xD3, -+ // Bytes 3840 - 387f -+ 0xA9, 0xCC, 0x88, 0xC9, 0x04, 0xD8, 0xA7, 0xD9, -+ 0x93, 0xC9, 0x04, 0xD8, 0xA7, 0xD9, 0x94, 0xC9, -+ 0x04, 0xD8, 0xA7, 0xD9, 0x95, 0xB5, 0x04, 0xD9, -+ 0x88, 0xD9, 0x94, 0xC9, 0x04, 0xD9, 0x8A, 0xD9, -+ 0x94, 0xC9, 0x04, 0xDB, 0x81, 0xD9, 0x94, 0xC9, -+ 0x04, 0xDB, 0x92, 0xD9, 0x94, 0xC9, 0x04, 0xDB, -+ 0x95, 0xD9, 0x94, 0xC9, 0x05, 0x41, 0xCC, 0x82, -+ 0xCC, 0x80, 0xCA, 0x05, 0x41, 0xCC, 0x82, 0xCC, -+ // Bytes 3880 - 38bf -+ 0x81, 0xCA, 0x05, 0x41, 0xCC, 0x82, 0xCC, 0x83, -+ 0xCA, 0x05, 0x41, 0xCC, 0x82, 0xCC, 0x89, 0xCA, -+ 0x05, 0x41, 0xCC, 0x86, 0xCC, 0x80, 0xCA, 0x05, -+ 0x41, 0xCC, 0x86, 0xCC, 0x81, 0xCA, 0x05, 0x41, -+ 0xCC, 0x86, 0xCC, 0x83, 0xCA, 0x05, 0x41, 0xCC, -+ 0x86, 0xCC, 0x89, 0xCA, 0x05, 0x41, 0xCC, 0x87, -+ 0xCC, 0x84, 0xCA, 0x05, 0x41, 0xCC, 0x88, 0xCC, -+ 0x84, 0xCA, 0x05, 0x41, 0xCC, 0x8A, 0xCC, 0x81, -+ // Bytes 38c0 - 38ff -+ 0xCA, 0x05, 0x41, 0xCC, 0xA3, 0xCC, 0x82, 0xCA, -+ 0x05, 0x41, 0xCC, 0xA3, 0xCC, 0x86, 0xCA, 0x05, -+ 0x43, 0xCC, 0xA7, 0xCC, 0x81, 0xCA, 0x05, 0x45, -+ 0xCC, 0x82, 0xCC, 0x80, 0xCA, 0x05, 0x45, 0xCC, -+ 0x82, 0xCC, 0x81, 0xCA, 0x05, 0x45, 0xCC, 0x82, -+ 0xCC, 0x83, 0xCA, 0x05, 0x45, 0xCC, 0x82, 0xCC, -+ 0x89, 0xCA, 0x05, 0x45, 0xCC, 0x84, 0xCC, 0x80, -+ 0xCA, 0x05, 0x45, 0xCC, 0x84, 0xCC, 0x81, 0xCA, -+ // Bytes 3900 - 393f -+ 0x05, 0x45, 0xCC, 0xA3, 0xCC, 0x82, 0xCA, 0x05, -+ 0x45, 0xCC, 0xA7, 0xCC, 0x86, 0xCA, 0x05, 0x49, -+ 0xCC, 0x88, 0xCC, 0x81, 0xCA, 0x05, 0x4C, 0xCC, -+ 0xA3, 0xCC, 0x84, 0xCA, 0x05, 0x4F, 0xCC, 0x82, -+ 0xCC, 0x80, 0xCA, 0x05, 0x4F, 0xCC, 0x82, 0xCC, -+ 0x81, 0xCA, 0x05, 0x4F, 0xCC, 0x82, 0xCC, 0x83, -+ 0xCA, 0x05, 0x4F, 0xCC, 0x82, 0xCC, 0x89, 0xCA, -+ 0x05, 0x4F, 0xCC, 0x83, 0xCC, 0x81, 0xCA, 0x05, -+ // Bytes 3940 - 397f -+ 0x4F, 0xCC, 0x83, 0xCC, 0x84, 0xCA, 0x05, 0x4F, -+ 0xCC, 0x83, 0xCC, 0x88, 0xCA, 0x05, 0x4F, 0xCC, -+ 0x84, 0xCC, 0x80, 0xCA, 0x05, 0x4F, 0xCC, 0x84, -+ 0xCC, 0x81, 0xCA, 0x05, 0x4F, 0xCC, 0x87, 0xCC, -+ 0x84, 0xCA, 0x05, 0x4F, 0xCC, 0x88, 0xCC, 0x84, -+ 0xCA, 0x05, 0x4F, 0xCC, 0x9B, 0xCC, 0x80, 0xCA, -+ 0x05, 0x4F, 0xCC, 0x9B, 0xCC, 0x81, 0xCA, 0x05, -+ 0x4F, 0xCC, 0x9B, 0xCC, 0x83, 0xCA, 0x05, 0x4F, -+ // Bytes 3980 - 39bf -+ 0xCC, 0x9B, 0xCC, 0x89, 0xCA, 0x05, 0x4F, 0xCC, -+ 0x9B, 0xCC, 0xA3, 0xB6, 0x05, 0x4F, 0xCC, 0xA3, -+ 0xCC, 0x82, 0xCA, 0x05, 0x4F, 0xCC, 0xA8, 0xCC, -+ 0x84, 0xCA, 0x05, 0x52, 0xCC, 0xA3, 0xCC, 0x84, -+ 0xCA, 0x05, 0x53, 0xCC, 0x81, 0xCC, 0x87, 0xCA, -+ 0x05, 0x53, 0xCC, 0x8C, 0xCC, 0x87, 0xCA, 0x05, -+ 0x53, 0xCC, 0xA3, 0xCC, 0x87, 0xCA, 0x05, 0x55, -+ 0xCC, 0x83, 0xCC, 0x81, 0xCA, 0x05, 0x55, 0xCC, -+ // Bytes 39c0 - 39ff -+ 0x84, 0xCC, 0x88, 0xCA, 0x05, 0x55, 0xCC, 0x88, -+ 0xCC, 0x80, 0xCA, 0x05, 0x55, 0xCC, 0x88, 0xCC, -+ 0x81, 0xCA, 0x05, 0x55, 0xCC, 0x88, 0xCC, 0x84, -+ 0xCA, 0x05, 0x55, 0xCC, 0x88, 0xCC, 0x8C, 0xCA, -+ 0x05, 0x55, 0xCC, 0x9B, 0xCC, 0x80, 0xCA, 0x05, -+ 0x55, 0xCC, 0x9B, 0xCC, 0x81, 0xCA, 0x05, 0x55, -+ 0xCC, 0x9B, 0xCC, 0x83, 0xCA, 0x05, 0x55, 0xCC, -+ 0x9B, 0xCC, 0x89, 0xCA, 0x05, 0x55, 0xCC, 0x9B, -+ // Bytes 3a00 - 3a3f -+ 0xCC, 0xA3, 0xB6, 0x05, 0x61, 0xCC, 0x82, 0xCC, -+ 0x80, 0xCA, 0x05, 0x61, 0xCC, 0x82, 0xCC, 0x81, -+ 0xCA, 0x05, 0x61, 0xCC, 0x82, 0xCC, 0x83, 0xCA, -+ 0x05, 0x61, 0xCC, 0x82, 0xCC, 0x89, 0xCA, 0x05, -+ 0x61, 0xCC, 0x86, 0xCC, 0x80, 0xCA, 0x05, 0x61, -+ 0xCC, 0x86, 0xCC, 0x81, 0xCA, 0x05, 0x61, 0xCC, -+ 0x86, 0xCC, 0x83, 0xCA, 0x05, 0x61, 0xCC, 0x86, -+ 0xCC, 0x89, 0xCA, 0x05, 0x61, 0xCC, 0x87, 0xCC, -+ // Bytes 3a40 - 3a7f -+ 0x84, 0xCA, 0x05, 0x61, 0xCC, 0x88, 0xCC, 0x84, -+ 0xCA, 0x05, 0x61, 0xCC, 0x8A, 0xCC, 0x81, 0xCA, -+ 0x05, 0x61, 0xCC, 0xA3, 0xCC, 0x82, 0xCA, 0x05, -+ 0x61, 0xCC, 0xA3, 0xCC, 0x86, 0xCA, 0x05, 0x63, -+ 0xCC, 0xA7, 0xCC, 0x81, 0xCA, 0x05, 0x65, 0xCC, -+ 0x82, 0xCC, 0x80, 0xCA, 0x05, 0x65, 0xCC, 0x82, -+ 0xCC, 0x81, 0xCA, 0x05, 0x65, 0xCC, 0x82, 0xCC, -+ 0x83, 0xCA, 0x05, 0x65, 0xCC, 0x82, 0xCC, 0x89, -+ // Bytes 3a80 - 3abf -+ 0xCA, 0x05, 0x65, 0xCC, 0x84, 0xCC, 0x80, 0xCA, -+ 0x05, 0x65, 0xCC, 0x84, 0xCC, 0x81, 0xCA, 0x05, -+ 0x65, 0xCC, 0xA3, 0xCC, 0x82, 0xCA, 0x05, 0x65, -+ 0xCC, 0xA7, 0xCC, 0x86, 0xCA, 0x05, 0x69, 0xCC, -+ 0x88, 0xCC, 0x81, 0xCA, 0x05, 0x6C, 0xCC, 0xA3, -+ 0xCC, 0x84, 0xCA, 0x05, 0x6F, 0xCC, 0x82, 0xCC, -+ 0x80, 0xCA, 0x05, 0x6F, 0xCC, 0x82, 0xCC, 0x81, -+ 0xCA, 0x05, 0x6F, 0xCC, 0x82, 0xCC, 0x83, 0xCA, -+ // Bytes 3ac0 - 3aff -+ 0x05, 0x6F, 0xCC, 0x82, 0xCC, 0x89, 0xCA, 0x05, -+ 0x6F, 0xCC, 0x83, 0xCC, 0x81, 0xCA, 0x05, 0x6F, -+ 0xCC, 0x83, 0xCC, 0x84, 0xCA, 0x05, 0x6F, 0xCC, -+ 0x83, 0xCC, 0x88, 0xCA, 0x05, 0x6F, 0xCC, 0x84, -+ 0xCC, 0x80, 0xCA, 0x05, 0x6F, 0xCC, 0x84, 0xCC, -+ 0x81, 0xCA, 0x05, 0x6F, 0xCC, 0x87, 0xCC, 0x84, -+ 0xCA, 0x05, 0x6F, 0xCC, 0x88, 0xCC, 0x84, 0xCA, -+ 0x05, 0x6F, 0xCC, 0x9B, 0xCC, 0x80, 0xCA, 0x05, -+ // Bytes 3b00 - 3b3f -+ 0x6F, 0xCC, 0x9B, 0xCC, 0x81, 0xCA, 0x05, 0x6F, -+ 0xCC, 0x9B, 0xCC, 0x83, 0xCA, 0x05, 0x6F, 0xCC, -+ 0x9B, 0xCC, 0x89, 0xCA, 0x05, 0x6F, 0xCC, 0x9B, -+ 0xCC, 0xA3, 0xB6, 0x05, 0x6F, 0xCC, 0xA3, 0xCC, -+ 0x82, 0xCA, 0x05, 0x6F, 0xCC, 0xA8, 0xCC, 0x84, -+ 0xCA, 0x05, 0x72, 0xCC, 0xA3, 0xCC, 0x84, 0xCA, -+ 0x05, 0x73, 0xCC, 0x81, 0xCC, 0x87, 0xCA, 0x05, -+ 0x73, 0xCC, 0x8C, 0xCC, 0x87, 0xCA, 0x05, 0x73, -+ // Bytes 3b40 - 3b7f -+ 0xCC, 0xA3, 0xCC, 0x87, 0xCA, 0x05, 0x75, 0xCC, -+ 0x83, 0xCC, 0x81, 0xCA, 0x05, 0x75, 0xCC, 0x84, -+ 0xCC, 0x88, 0xCA, 0x05, 0x75, 0xCC, 0x88, 0xCC, -+ 0x80, 0xCA, 0x05, 0x75, 0xCC, 0x88, 0xCC, 0x81, -+ 0xCA, 0x05, 0x75, 0xCC, 0x88, 0xCC, 0x84, 0xCA, -+ 0x05, 0x75, 0xCC, 0x88, 0xCC, 0x8C, 0xCA, 0x05, -+ 0x75, 0xCC, 0x9B, 0xCC, 0x80, 0xCA, 0x05, 0x75, -+ 0xCC, 0x9B, 0xCC, 0x81, 0xCA, 0x05, 0x75, 0xCC, -+ // Bytes 3b80 - 3bbf -+ 0x9B, 0xCC, 0x83, 0xCA, 0x05, 0x75, 0xCC, 0x9B, -+ 0xCC, 0x89, 0xCA, 0x05, 0x75, 0xCC, 0x9B, 0xCC, -+ 0xA3, 0xB6, 0x05, 0xE1, 0xBE, 0xBF, 0xCC, 0x80, -+ 0xCA, 0x05, 0xE1, 0xBE, 0xBF, 0xCC, 0x81, 0xCA, -+ 0x05, 0xE1, 0xBE, 0xBF, 0xCD, 0x82, 0xCA, 0x05, -+ 0xE1, 0xBF, 0xBE, 0xCC, 0x80, 0xCA, 0x05, 0xE1, -+ 0xBF, 0xBE, 0xCC, 0x81, 0xCA, 0x05, 0xE1, 0xBF, -+ 0xBE, 0xCD, 0x82, 0xCA, 0x05, 0xE2, 0x86, 0x90, -+ // Bytes 3bc0 - 3bff -+ 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x86, 0x92, 0xCC, -+ 0xB8, 0x05, 0x05, 0xE2, 0x86, 0x94, 0xCC, 0xB8, -+ 0x05, 0x05, 0xE2, 0x87, 0x90, 0xCC, 0xB8, 0x05, -+ 0x05, 0xE2, 0x87, 0x92, 0xCC, 0xB8, 0x05, 0x05, -+ 0xE2, 0x87, 0x94, 0xCC, 0xB8, 0x05, 0x05, 0xE2, -+ 0x88, 0x83, 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x88, -+ 0x88, 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x88, 0x8B, -+ 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x88, 0xA3, 0xCC, -+ // Bytes 3c00 - 3c3f -+ 0xB8, 0x05, 0x05, 0xE2, 0x88, 0xA5, 0xCC, 0xB8, -+ 0x05, 0x05, 0xE2, 0x88, 0xBC, 0xCC, 0xB8, 0x05, -+ 0x05, 0xE2, 0x89, 0x83, 0xCC, 0xB8, 0x05, 0x05, -+ 0xE2, 0x89, 0x85, 0xCC, 0xB8, 0x05, 0x05, 0xE2, -+ 0x89, 0x88, 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x89, -+ 0x8D, 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x89, 0xA1, -+ 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x89, 0xA4, 0xCC, -+ 0xB8, 0x05, 0x05, 0xE2, 0x89, 0xA5, 0xCC, 0xB8, -+ // Bytes 3c40 - 3c7f -+ 0x05, 0x05, 0xE2, 0x89, 0xB2, 0xCC, 0xB8, 0x05, -+ 0x05, 0xE2, 0x89, 0xB3, 0xCC, 0xB8, 0x05, 0x05, -+ 0xE2, 0x89, 0xB6, 0xCC, 0xB8, 0x05, 0x05, 0xE2, -+ 0x89, 0xB7, 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x89, -+ 0xBA, 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x89, 0xBB, -+ 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x89, 0xBC, 0xCC, -+ 0xB8, 0x05, 0x05, 0xE2, 0x89, 0xBD, 0xCC, 0xB8, -+ 0x05, 0x05, 0xE2, 0x8A, 0x82, 0xCC, 0xB8, 0x05, -+ // Bytes 3c80 - 3cbf -+ 0x05, 0xE2, 0x8A, 0x83, 0xCC, 0xB8, 0x05, 0x05, -+ 0xE2, 0x8A, 0x86, 0xCC, 0xB8, 0x05, 0x05, 0xE2, -+ 0x8A, 0x87, 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x8A, -+ 0x91, 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x8A, 0x92, -+ 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x8A, 0xA2, 0xCC, -+ 0xB8, 0x05, 0x05, 0xE2, 0x8A, 0xA8, 0xCC, 0xB8, -+ 0x05, 0x05, 0xE2, 0x8A, 0xA9, 0xCC, 0xB8, 0x05, -+ 0x05, 0xE2, 0x8A, 0xAB, 0xCC, 0xB8, 0x05, 0x05, -+ // Bytes 3cc0 - 3cff -+ 0xE2, 0x8A, 0xB2, 0xCC, 0xB8, 0x05, 0x05, 0xE2, -+ 0x8A, 0xB3, 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x8A, -+ 0xB4, 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x8A, 0xB5, -+ 0xCC, 0xB8, 0x05, 0x06, 0xCE, 0x91, 0xCC, 0x93, -+ 0xCD, 0x85, 0xDA, 0x06, 0xCE, 0x91, 0xCC, 0x94, -+ 0xCD, 0x85, 0xDA, 0x06, 0xCE, 0x95, 0xCC, 0x93, -+ 0xCC, 0x80, 0xCA, 0x06, 0xCE, 0x95, 0xCC, 0x93, -+ 0xCC, 0x81, 0xCA, 0x06, 0xCE, 0x95, 0xCC, 0x94, -+ // Bytes 3d00 - 3d3f -+ 0xCC, 0x80, 0xCA, 0x06, 0xCE, 0x95, 0xCC, 0x94, -+ 0xCC, 0x81, 0xCA, 0x06, 0xCE, 0x97, 0xCC, 0x93, -+ 0xCD, 0x85, 0xDA, 0x06, 0xCE, 0x97, 0xCC, 0x94, -+ 0xCD, 0x85, 0xDA, 0x06, 0xCE, 0x99, 0xCC, 0x93, -+ 0xCC, 0x80, 0xCA, 0x06, 0xCE, 0x99, 0xCC, 0x93, -+ 0xCC, 0x81, 0xCA, 0x06, 0xCE, 0x99, 0xCC, 0x93, -+ 0xCD, 0x82, 0xCA, 0x06, 0xCE, 0x99, 0xCC, 0x94, -+ 0xCC, 0x80, 0xCA, 0x06, 0xCE, 0x99, 0xCC, 0x94, -+ // Bytes 3d40 - 3d7f -+ 0xCC, 0x81, 0xCA, 0x06, 0xCE, 0x99, 0xCC, 0x94, -+ 0xCD, 0x82, 0xCA, 0x06, 0xCE, 0x9F, 0xCC, 0x93, -+ 0xCC, 0x80, 0xCA, 0x06, 0xCE, 0x9F, 0xCC, 0x93, -+ 0xCC, 0x81, 0xCA, 0x06, 0xCE, 0x9F, 0xCC, 0x94, -+ 0xCC, 0x80, 0xCA, 0x06, 0xCE, 0x9F, 0xCC, 0x94, -+ 0xCC, 0x81, 0xCA, 0x06, 0xCE, 0xA5, 0xCC, 0x94, -+ 0xCC, 0x80, 0xCA, 0x06, 0xCE, 0xA5, 0xCC, 0x94, -+ 0xCC, 0x81, 0xCA, 0x06, 0xCE, 0xA5, 0xCC, 0x94, -+ // Bytes 3d80 - 3dbf -+ 0xCD, 0x82, 0xCA, 0x06, 0xCE, 0xA9, 0xCC, 0x93, -+ 0xCD, 0x85, 0xDA, 0x06, 0xCE, 0xA9, 0xCC, 0x94, -+ 0xCD, 0x85, 0xDA, 0x06, 0xCE, 0xB1, 0xCC, 0x80, -+ 0xCD, 0x85, 0xDA, 0x06, 0xCE, 0xB1, 0xCC, 0x81, -+ 0xCD, 0x85, 0xDA, 0x06, 0xCE, 0xB1, 0xCC, 0x93, -+ 0xCD, 0x85, 0xDA, 0x06, 0xCE, 0xB1, 0xCC, 0x94, -+ 0xCD, 0x85, 0xDA, 0x06, 0xCE, 0xB1, 0xCD, 0x82, -+ 0xCD, 0x85, 0xDA, 0x06, 0xCE, 0xB5, 0xCC, 0x93, -+ // Bytes 3dc0 - 3dff -+ 0xCC, 0x80, 0xCA, 0x06, 0xCE, 0xB5, 0xCC, 0x93, -+ 0xCC, 0x81, 0xCA, 0x06, 0xCE, 0xB5, 0xCC, 0x94, -+ 0xCC, 0x80, 0xCA, 0x06, 0xCE, 0xB5, 0xCC, 0x94, -+ 0xCC, 0x81, 0xCA, 0x06, 0xCE, 0xB7, 0xCC, 0x80, -+ 0xCD, 0x85, 0xDA, 0x06, 0xCE, 0xB7, 0xCC, 0x81, -+ 0xCD, 0x85, 0xDA, 0x06, 0xCE, 0xB7, 0xCC, 0x93, -+ 0xCD, 0x85, 0xDA, 0x06, 0xCE, 0xB7, 0xCC, 0x94, -+ 0xCD, 0x85, 0xDA, 0x06, 0xCE, 0xB7, 0xCD, 0x82, -+ // Bytes 3e00 - 3e3f -+ 0xCD, 0x85, 0xDA, 0x06, 0xCE, 0xB9, 0xCC, 0x88, -+ 0xCC, 0x80, 0xCA, 0x06, 0xCE, 0xB9, 0xCC, 0x88, -+ 0xCC, 0x81, 0xCA, 0x06, 0xCE, 0xB9, 0xCC, 0x88, -+ 0xCD, 0x82, 0xCA, 0x06, 0xCE, 0xB9, 0xCC, 0x93, -+ 0xCC, 0x80, 0xCA, 0x06, 0xCE, 0xB9, 0xCC, 0x93, -+ 0xCC, 0x81, 0xCA, 0x06, 0xCE, 0xB9, 0xCC, 0x93, -+ 0xCD, 0x82, 0xCA, 0x06, 0xCE, 0xB9, 0xCC, 0x94, -+ 0xCC, 0x80, 0xCA, 0x06, 0xCE, 0xB9, 0xCC, 0x94, -+ // Bytes 3e40 - 3e7f -+ 0xCC, 0x81, 0xCA, 0x06, 0xCE, 0xB9, 0xCC, 0x94, -+ 0xCD, 0x82, 0xCA, 0x06, 0xCE, 0xBF, 0xCC, 0x93, -+ 0xCC, 0x80, 0xCA, 0x06, 0xCE, 0xBF, 0xCC, 0x93, -+ 0xCC, 0x81, 0xCA, 0x06, 0xCE, 0xBF, 0xCC, 0x94, -+ 0xCC, 0x80, 0xCA, 0x06, 0xCE, 0xBF, 0xCC, 0x94, -+ 0xCC, 0x81, 0xCA, 0x06, 0xCF, 0x85, 0xCC, 0x88, -+ 0xCC, 0x80, 0xCA, 0x06, 0xCF, 0x85, 0xCC, 0x88, -+ 0xCC, 0x81, 0xCA, 0x06, 0xCF, 0x85, 0xCC, 0x88, -+ // Bytes 3e80 - 3ebf -+ 0xCD, 0x82, 0xCA, 0x06, 0xCF, 0x85, 0xCC, 0x93, -+ 0xCC, 0x80, 0xCA, 0x06, 0xCF, 0x85, 0xCC, 0x93, -+ 0xCC, 0x81, 0xCA, 0x06, 0xCF, 0x85, 0xCC, 0x93, -+ 0xCD, 0x82, 0xCA, 0x06, 0xCF, 0x85, 0xCC, 0x94, -+ 0xCC, 0x80, 0xCA, 0x06, 0xCF, 0x85, 0xCC, 0x94, -+ 0xCC, 0x81, 0xCA, 0x06, 0xCF, 0x85, 0xCC, 0x94, -+ 0xCD, 0x82, 0xCA, 0x06, 0xCF, 0x89, 0xCC, 0x80, -+ 0xCD, 0x85, 0xDA, 0x06, 0xCF, 0x89, 0xCC, 0x81, -+ // Bytes 3ec0 - 3eff -+ 0xCD, 0x85, 0xDA, 0x06, 0xCF, 0x89, 0xCC, 0x93, -+ 0xCD, 0x85, 0xDA, 0x06, 0xCF, 0x89, 0xCC, 0x94, -+ 0xCD, 0x85, 0xDA, 0x06, 0xCF, 0x89, 0xCD, 0x82, -+ 0xCD, 0x85, 0xDA, 0x06, 0xE0, 0xA4, 0xA8, 0xE0, -+ 0xA4, 0xBC, 0x09, 0x06, 0xE0, 0xA4, 0xB0, 0xE0, -+ 0xA4, 0xBC, 0x09, 0x06, 0xE0, 0xA4, 0xB3, 0xE0, -+ 0xA4, 0xBC, 0x09, 0x06, 0xE0, 0xB1, 0x86, 0xE0, -+ 0xB1, 0x96, 0x85, 0x06, 0xE0, 0xB7, 0x99, 0xE0, -+ // Bytes 3f00 - 3f3f -+ 0xB7, 0x8A, 0x11, 0x06, 0xE3, 0x81, 0x86, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x81, 0x8B, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x81, 0x8D, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x81, 0x8F, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x81, 0x91, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x81, 0x93, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x81, 0x95, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x81, 0x97, 0xE3, -+ // Bytes 3f40 - 3f7f -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x81, 0x99, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x81, 0x9B, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x81, 0x9D, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x81, 0x9F, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x81, 0xA1, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x81, 0xA4, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x81, 0xA6, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x81, 0xA8, 0xE3, -+ // Bytes 3f80 - 3fbf -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x81, 0xAF, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x81, 0xAF, 0xE3, -+ 0x82, 0x9A, 0x0D, 0x06, 0xE3, 0x81, 0xB2, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x81, 0xB2, 0xE3, -+ 0x82, 0x9A, 0x0D, 0x06, 0xE3, 0x81, 0xB5, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x81, 0xB5, 0xE3, -+ 0x82, 0x9A, 0x0D, 0x06, 0xE3, 0x81, 0xB8, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x81, 0xB8, 0xE3, -+ // Bytes 3fc0 - 3fff -+ 0x82, 0x9A, 0x0D, 0x06, 0xE3, 0x81, 0xBB, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x81, 0xBB, 0xE3, -+ 0x82, 0x9A, 0x0D, 0x06, 0xE3, 0x82, 0x9D, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x82, 0xA6, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x82, 0xAB, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x82, 0xAD, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x82, 0xAF, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x82, 0xB1, 0xE3, -+ // Bytes 4000 - 403f -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x82, 0xB3, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x82, 0xB5, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x82, 0xB7, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x82, 0xB9, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x82, 0xBB, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x82, 0xBD, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x82, 0xBF, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x83, 0x81, 0xE3, -+ // Bytes 4040 - 407f -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x83, 0x84, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x83, 0x86, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x83, 0x88, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x83, 0x8F, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x83, 0x8F, 0xE3, -+ 0x82, 0x9A, 0x0D, 0x06, 0xE3, 0x83, 0x92, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x83, 0x92, 0xE3, -+ 0x82, 0x9A, 0x0D, 0x06, 0xE3, 0x83, 0x95, 0xE3, -+ // Bytes 4080 - 40bf -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x83, 0x95, 0xE3, -+ 0x82, 0x9A, 0x0D, 0x06, 0xE3, 0x83, 0x98, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x83, 0x98, 0xE3, -+ 0x82, 0x9A, 0x0D, 0x06, 0xE3, 0x83, 0x9B, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x83, 0x9B, 0xE3, -+ 0x82, 0x9A, 0x0D, 0x06, 0xE3, 0x83, 0xAF, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x83, 0xB0, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x83, 0xB1, 0xE3, -+ // Bytes 40c0 - 40ff -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x83, 0xB2, 0xE3, -+ 0x82, 0x99, 0x0D, 0x06, 0xE3, 0x83, 0xBD, 0xE3, -+ 0x82, 0x99, 0x0D, 0x08, 0xCE, 0x91, 0xCC, 0x93, -+ 0xCC, 0x80, 0xCD, 0x85, 0xDB, 0x08, 0xCE, 0x91, -+ 0xCC, 0x93, 0xCC, 0x81, 0xCD, 0x85, 0xDB, 0x08, -+ 0xCE, 0x91, 0xCC, 0x93, 0xCD, 0x82, 0xCD, 0x85, -+ 0xDB, 0x08, 0xCE, 0x91, 0xCC, 0x94, 0xCC, 0x80, -+ 0xCD, 0x85, 0xDB, 0x08, 0xCE, 0x91, 0xCC, 0x94, -+ // Bytes 4100 - 413f -+ 0xCC, 0x81, 0xCD, 0x85, 0xDB, 0x08, 0xCE, 0x91, -+ 0xCC, 0x94, 0xCD, 0x82, 0xCD, 0x85, 0xDB, 0x08, -+ 0xCE, 0x97, 0xCC, 0x93, 0xCC, 0x80, 0xCD, 0x85, -+ 0xDB, 0x08, 0xCE, 0x97, 0xCC, 0x93, 0xCC, 0x81, -+ 0xCD, 0x85, 0xDB, 0x08, 0xCE, 0x97, 0xCC, 0x93, -+ 0xCD, 0x82, 0xCD, 0x85, 0xDB, 0x08, 0xCE, 0x97, -+ 0xCC, 0x94, 0xCC, 0x80, 0xCD, 0x85, 0xDB, 0x08, -+ 0xCE, 0x97, 0xCC, 0x94, 0xCC, 0x81, 0xCD, 0x85, -+ // Bytes 4140 - 417f -+ 0xDB, 0x08, 0xCE, 0x97, 0xCC, 0x94, 0xCD, 0x82, -+ 0xCD, 0x85, 0xDB, 0x08, 0xCE, 0xA9, 0xCC, 0x93, -+ 0xCC, 0x80, 0xCD, 0x85, 0xDB, 0x08, 0xCE, 0xA9, -+ 0xCC, 0x93, 0xCC, 0x81, 0xCD, 0x85, 0xDB, 0x08, -+ 0xCE, 0xA9, 0xCC, 0x93, 0xCD, 0x82, 0xCD, 0x85, -+ 0xDB, 0x08, 0xCE, 0xA9, 0xCC, 0x94, 0xCC, 0x80, -+ 0xCD, 0x85, 0xDB, 0x08, 0xCE, 0xA9, 0xCC, 0x94, -+ 0xCC, 0x81, 0xCD, 0x85, 0xDB, 0x08, 0xCE, 0xA9, -+ // Bytes 4180 - 41bf -+ 0xCC, 0x94, 0xCD, 0x82, 0xCD, 0x85, 0xDB, 0x08, -+ 0xCE, 0xB1, 0xCC, 0x93, 0xCC, 0x80, 0xCD, 0x85, -+ 0xDB, 0x08, 0xCE, 0xB1, 0xCC, 0x93, 0xCC, 0x81, -+ 0xCD, 0x85, 0xDB, 0x08, 0xCE, 0xB1, 0xCC, 0x93, -+ 0xCD, 0x82, 0xCD, 0x85, 0xDB, 0x08, 0xCE, 0xB1, -+ 0xCC, 0x94, 0xCC, 0x80, 0xCD, 0x85, 0xDB, 0x08, -+ 0xCE, 0xB1, 0xCC, 0x94, 0xCC, 0x81, 0xCD, 0x85, -+ 0xDB, 0x08, 0xCE, 0xB1, 0xCC, 0x94, 0xCD, 0x82, -+ // Bytes 41c0 - 41ff -+ 0xCD, 0x85, 0xDB, 0x08, 0xCE, 0xB7, 0xCC, 0x93, -+ 0xCC, 0x80, 0xCD, 0x85, 0xDB, 0x08, 0xCE, 0xB7, -+ 0xCC, 0x93, 0xCC, 0x81, 0xCD, 0x85, 0xDB, 0x08, -+ 0xCE, 0xB7, 0xCC, 0x93, 0xCD, 0x82, 0xCD, 0x85, -+ 0xDB, 0x08, 0xCE, 0xB7, 0xCC, 0x94, 0xCC, 0x80, -+ 0xCD, 0x85, 0xDB, 0x08, 0xCE, 0xB7, 0xCC, 0x94, -+ 0xCC, 0x81, 0xCD, 0x85, 0xDB, 0x08, 0xCE, 0xB7, -+ 0xCC, 0x94, 0xCD, 0x82, 0xCD, 0x85, 0xDB, 0x08, -+ // Bytes 4200 - 423f -+ 0xCF, 0x89, 0xCC, 0x93, 0xCC, 0x80, 0xCD, 0x85, -+ 0xDB, 0x08, 0xCF, 0x89, 0xCC, 0x93, 0xCC, 0x81, -+ 0xCD, 0x85, 0xDB, 0x08, 0xCF, 0x89, 0xCC, 0x93, -+ 0xCD, 0x82, 0xCD, 0x85, 0xDB, 0x08, 0xCF, 0x89, -+ 0xCC, 0x94, 0xCC, 0x80, 0xCD, 0x85, 0xDB, 0x08, -+ 0xCF, 0x89, 0xCC, 0x94, 0xCC, 0x81, 0xCD, 0x85, -+ 0xDB, 0x08, 0xCF, 0x89, 0xCC, 0x94, 0xCD, 0x82, -+ 0xCD, 0x85, 0xDB, 0x08, 0xF0, 0x91, 0x82, 0x99, -+ // Bytes 4240 - 427f -+ 0xF0, 0x91, 0x82, 0xBA, 0x09, 0x08, 0xF0, 0x91, -+ 0x82, 0x9B, 0xF0, 0x91, 0x82, 0xBA, 0x09, 0x08, -+ 0xF0, 0x91, 0x82, 0xA5, 0xF0, 0x91, 0x82, 0xBA, -+ 0x09, 0x42, 0xC2, 0xB4, 0x01, 0x43, 0x20, 0xCC, -+ 0x81, 0xC9, 0x43, 0x20, 0xCC, 0x83, 0xC9, 0x43, -+ 0x20, 0xCC, 0x84, 0xC9, 0x43, 0x20, 0xCC, 0x85, -+ 0xC9, 0x43, 0x20, 0xCC, 0x86, 0xC9, 0x43, 0x20, -+ 0xCC, 0x87, 0xC9, 0x43, 0x20, 0xCC, 0x88, 0xC9, -+ // Bytes 4280 - 42bf -+ 0x43, 0x20, 0xCC, 0x8A, 0xC9, 0x43, 0x20, 0xCC, -+ 0x8B, 0xC9, 0x43, 0x20, 0xCC, 0x93, 0xC9, 0x43, -+ 0x20, 0xCC, 0x94, 0xC9, 0x43, 0x20, 0xCC, 0xA7, -+ 0xA5, 0x43, 0x20, 0xCC, 0xA8, 0xA5, 0x43, 0x20, -+ 0xCC, 0xB3, 0xB5, 0x43, 0x20, 0xCD, 0x82, 0xC9, -+ 0x43, 0x20, 0xCD, 0x85, 0xD9, 0x43, 0x20, 0xD9, -+ 0x8B, 0x59, 0x43, 0x20, 0xD9, 0x8C, 0x5D, 0x43, -+ 0x20, 0xD9, 0x8D, 0x61, 0x43, 0x20, 0xD9, 0x8E, -+ // Bytes 42c0 - 42ff -+ 0x65, 0x43, 0x20, 0xD9, 0x8F, 0x69, 0x43, 0x20, -+ 0xD9, 0x90, 0x6D, 0x43, 0x20, 0xD9, 0x91, 0x71, -+ 0x43, 0x20, 0xD9, 0x92, 0x75, 0x43, 0x41, 0xCC, -+ 0x8A, 0xC9, 0x43, 0x73, 0xCC, 0x87, 0xC9, 0x44, -+ 0x20, 0xE3, 0x82, 0x99, 0x0D, 0x44, 0x20, 0xE3, -+ 0x82, 0x9A, 0x0D, 0x44, 0xC2, 0xA8, 0xCC, 0x81, -+ 0xCA, 0x44, 0xCE, 0x91, 0xCC, 0x81, 0xC9, 0x44, -+ 0xCE, 0x95, 0xCC, 0x81, 0xC9, 0x44, 0xCE, 0x97, -+ // Bytes 4300 - 433f -+ 0xCC, 0x81, 0xC9, 0x44, 0xCE, 0x99, 0xCC, 0x81, -+ 0xC9, 0x44, 0xCE, 0x9F, 0xCC, 0x81, 0xC9, 0x44, -+ 0xCE, 0xA5, 0xCC, 0x81, 0xC9, 0x44, 0xCE, 0xA5, -+ 0xCC, 0x88, 0xC9, 0x44, 0xCE, 0xA9, 0xCC, 0x81, -+ 0xC9, 0x44, 0xCE, 0xB1, 0xCC, 0x81, 0xC9, 0x44, -+ 0xCE, 0xB5, 0xCC, 0x81, 0xC9, 0x44, 0xCE, 0xB7, -+ 0xCC, 0x81, 0xC9, 0x44, 0xCE, 0xB9, 0xCC, 0x81, -+ 0xC9, 0x44, 0xCE, 0xBF, 0xCC, 0x81, 0xC9, 0x44, -+ // Bytes 4340 - 437f -+ 0xCF, 0x85, 0xCC, 0x81, 0xC9, 0x44, 0xCF, 0x89, -+ 0xCC, 0x81, 0xC9, 0x44, 0xD7, 0x90, 0xD6, 0xB7, -+ 0x31, 0x44, 0xD7, 0x90, 0xD6, 0xB8, 0x35, 0x44, -+ 0xD7, 0x90, 0xD6, 0xBC, 0x41, 0x44, 0xD7, 0x91, -+ 0xD6, 0xBC, 0x41, 0x44, 0xD7, 0x91, 0xD6, 0xBF, -+ 0x49, 0x44, 0xD7, 0x92, 0xD6, 0xBC, 0x41, 0x44, -+ 0xD7, 0x93, 0xD6, 0xBC, 0x41, 0x44, 0xD7, 0x94, -+ 0xD6, 0xBC, 0x41, 0x44, 0xD7, 0x95, 0xD6, 0xB9, -+ // Bytes 4380 - 43bf -+ 0x39, 0x44, 0xD7, 0x95, 0xD6, 0xBC, 0x41, 0x44, -+ 0xD7, 0x96, 0xD6, 0xBC, 0x41, 0x44, 0xD7, 0x98, -+ 0xD6, 0xBC, 0x41, 0x44, 0xD7, 0x99, 0xD6, 0xB4, -+ 0x25, 0x44, 0xD7, 0x99, 0xD6, 0xBC, 0x41, 0x44, -+ 0xD7, 0x9A, 0xD6, 0xBC, 0x41, 0x44, 0xD7, 0x9B, -+ 0xD6, 0xBC, 0x41, 0x44, 0xD7, 0x9B, 0xD6, 0xBF, -+ 0x49, 0x44, 0xD7, 0x9C, 0xD6, 0xBC, 0x41, 0x44, -+ 0xD7, 0x9E, 0xD6, 0xBC, 0x41, 0x44, 0xD7, 0xA0, -+ // Bytes 43c0 - 43ff -+ 0xD6, 0xBC, 0x41, 0x44, 0xD7, 0xA1, 0xD6, 0xBC, -+ 0x41, 0x44, 0xD7, 0xA3, 0xD6, 0xBC, 0x41, 0x44, -+ 0xD7, 0xA4, 0xD6, 0xBC, 0x41, 0x44, 0xD7, 0xA4, -+ 0xD6, 0xBF, 0x49, 0x44, 0xD7, 0xA6, 0xD6, 0xBC, -+ 0x41, 0x44, 0xD7, 0xA7, 0xD6, 0xBC, 0x41, 0x44, -+ 0xD7, 0xA8, 0xD6, 0xBC, 0x41, 0x44, 0xD7, 0xA9, -+ 0xD6, 0xBC, 0x41, 0x44, 0xD7, 0xA9, 0xD7, 0x81, -+ 0x4D, 0x44, 0xD7, 0xA9, 0xD7, 0x82, 0x51, 0x44, -+ // Bytes 4400 - 443f -+ 0xD7, 0xAA, 0xD6, 0xBC, 0x41, 0x44, 0xD7, 0xB2, -+ 0xD6, 0xB7, 0x31, 0x44, 0xD8, 0xA7, 0xD9, 0x8B, -+ 0x59, 0x44, 0xD8, 0xA7, 0xD9, 0x93, 0xC9, 0x44, -+ 0xD8, 0xA7, 0xD9, 0x94, 0xC9, 0x44, 0xD8, 0xA7, -+ 0xD9, 0x95, 0xB5, 0x44, 0xD8, 0xB0, 0xD9, 0xB0, -+ 0x79, 0x44, 0xD8, 0xB1, 0xD9, 0xB0, 0x79, 0x44, -+ 0xD9, 0x80, 0xD9, 0x8B, 0x59, 0x44, 0xD9, 0x80, -+ 0xD9, 0x8E, 0x65, 0x44, 0xD9, 0x80, 0xD9, 0x8F, -+ // Bytes 4440 - 447f -+ 0x69, 0x44, 0xD9, 0x80, 0xD9, 0x90, 0x6D, 0x44, -+ 0xD9, 0x80, 0xD9, 0x91, 0x71, 0x44, 0xD9, 0x80, -+ 0xD9, 0x92, 0x75, 0x44, 0xD9, 0x87, 0xD9, 0xB0, -+ 0x79, 0x44, 0xD9, 0x88, 0xD9, 0x94, 0xC9, 0x44, -+ 0xD9, 0x89, 0xD9, 0xB0, 0x79, 0x44, 0xD9, 0x8A, -+ 0xD9, 0x94, 0xC9, 0x44, 0xDB, 0x92, 0xD9, 0x94, -+ 0xC9, 0x44, 0xDB, 0x95, 0xD9, 0x94, 0xC9, 0x45, -+ 0x20, 0xCC, 0x88, 0xCC, 0x80, 0xCA, 0x45, 0x20, -+ // Bytes 4480 - 44bf -+ 0xCC, 0x88, 0xCC, 0x81, 0xCA, 0x45, 0x20, 0xCC, -+ 0x88, 0xCD, 0x82, 0xCA, 0x45, 0x20, 0xCC, 0x93, -+ 0xCC, 0x80, 0xCA, 0x45, 0x20, 0xCC, 0x93, 0xCC, -+ 0x81, 0xCA, 0x45, 0x20, 0xCC, 0x93, 0xCD, 0x82, -+ 0xCA, 0x45, 0x20, 0xCC, 0x94, 0xCC, 0x80, 0xCA, -+ 0x45, 0x20, 0xCC, 0x94, 0xCC, 0x81, 0xCA, 0x45, -+ 0x20, 0xCC, 0x94, 0xCD, 0x82, 0xCA, 0x45, 0x20, -+ 0xD9, 0x8C, 0xD9, 0x91, 0x72, 0x45, 0x20, 0xD9, -+ // Bytes 44c0 - 44ff -+ 0x8D, 0xD9, 0x91, 0x72, 0x45, 0x20, 0xD9, 0x8E, -+ 0xD9, 0x91, 0x72, 0x45, 0x20, 0xD9, 0x8F, 0xD9, -+ 0x91, 0x72, 0x45, 0x20, 0xD9, 0x90, 0xD9, 0x91, -+ 0x72, 0x45, 0x20, 0xD9, 0x91, 0xD9, 0xB0, 0x7A, -+ 0x45, 0xE2, 0xAB, 0x9D, 0xCC, 0xB8, 0x05, 0x46, -+ 0xCE, 0xB9, 0xCC, 0x88, 0xCC, 0x81, 0xCA, 0x46, -+ 0xCF, 0x85, 0xCC, 0x88, 0xCC, 0x81, 0xCA, 0x46, -+ 0xD7, 0xA9, 0xD6, 0xBC, 0xD7, 0x81, 0x4E, 0x46, -+ // Bytes 4500 - 453f -+ 0xD7, 0xA9, 0xD6, 0xBC, 0xD7, 0x82, 0x52, 0x46, -+ 0xD9, 0x80, 0xD9, 0x8E, 0xD9, 0x91, 0x72, 0x46, -+ 0xD9, 0x80, 0xD9, 0x8F, 0xD9, 0x91, 0x72, 0x46, -+ 0xD9, 0x80, 0xD9, 0x90, 0xD9, 0x91, 0x72, 0x46, -+ 0xE0, 0xA4, 0x95, 0xE0, 0xA4, 0xBC, 0x09, 0x46, -+ 0xE0, 0xA4, 0x96, 0xE0, 0xA4, 0xBC, 0x09, 0x46, -+ 0xE0, 0xA4, 0x97, 0xE0, 0xA4, 0xBC, 0x09, 0x46, -+ 0xE0, 0xA4, 0x9C, 0xE0, 0xA4, 0xBC, 0x09, 0x46, -+ // Bytes 4540 - 457f -+ 0xE0, 0xA4, 0xA1, 0xE0, 0xA4, 0xBC, 0x09, 0x46, -+ 0xE0, 0xA4, 0xA2, 0xE0, 0xA4, 0xBC, 0x09, 0x46, -+ 0xE0, 0xA4, 0xAB, 0xE0, 0xA4, 0xBC, 0x09, 0x46, -+ 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBC, 0x09, 0x46, -+ 0xE0, 0xA6, 0xA1, 0xE0, 0xA6, 0xBC, 0x09, 0x46, -+ 0xE0, 0xA6, 0xA2, 0xE0, 0xA6, 0xBC, 0x09, 0x46, -+ 0xE0, 0xA6, 0xAF, 0xE0, 0xA6, 0xBC, 0x09, 0x46, -+ 0xE0, 0xA8, 0x96, 0xE0, 0xA8, 0xBC, 0x09, 0x46, -+ // Bytes 4580 - 45bf -+ 0xE0, 0xA8, 0x97, 0xE0, 0xA8, 0xBC, 0x09, 0x46, -+ 0xE0, 0xA8, 0x9C, 0xE0, 0xA8, 0xBC, 0x09, 0x46, -+ 0xE0, 0xA8, 0xAB, 0xE0, 0xA8, 0xBC, 0x09, 0x46, -+ 0xE0, 0xA8, 0xB2, 0xE0, 0xA8, 0xBC, 0x09, 0x46, -+ 0xE0, 0xA8, 0xB8, 0xE0, 0xA8, 0xBC, 0x09, 0x46, -+ 0xE0, 0xAC, 0xA1, 0xE0, 0xAC, 0xBC, 0x09, 0x46, -+ 0xE0, 0xAC, 0xA2, 0xE0, 0xAC, 0xBC, 0x09, 0x46, -+ 0xE0, 0xBE, 0xB2, 0xE0, 0xBE, 0x80, 0x9D, 0x46, -+ // Bytes 45c0 - 45ff -+ 0xE0, 0xBE, 0xB3, 0xE0, 0xBE, 0x80, 0x9D, 0x46, -+ 0xE3, 0x83, 0x86, 0xE3, 0x82, 0x99, 0x0D, 0x48, -+ 0xF0, 0x9D, 0x85, 0x97, 0xF0, 0x9D, 0x85, 0xA5, -+ 0xAD, 0x48, 0xF0, 0x9D, 0x85, 0x98, 0xF0, 0x9D, -+ 0x85, 0xA5, 0xAD, 0x48, 0xF0, 0x9D, 0x86, 0xB9, -+ 0xF0, 0x9D, 0x85, 0xA5, 0xAD, 0x48, 0xF0, 0x9D, -+ 0x86, 0xBA, 0xF0, 0x9D, 0x85, 0xA5, 0xAD, 0x49, -+ 0xE0, 0xBE, 0xB2, 0xE0, 0xBD, 0xB1, 0xE0, 0xBE, -+ // Bytes 4600 - 463f -+ 0x80, 0x9E, 0x49, 0xE0, 0xBE, 0xB3, 0xE0, 0xBD, -+ 0xB1, 0xE0, 0xBE, 0x80, 0x9E, 0x4C, 0xF0, 0x9D, -+ 0x85, 0x98, 0xF0, 0x9D, 0x85, 0xA5, 0xF0, 0x9D, -+ 0x85, 0xAE, 0xAE, 0x4C, 0xF0, 0x9D, 0x85, 0x98, -+ 0xF0, 0x9D, 0x85, 0xA5, 0xF0, 0x9D, 0x85, 0xAF, -+ 0xAE, 0x4C, 0xF0, 0x9D, 0x85, 0x98, 0xF0, 0x9D, -+ 0x85, 0xA5, 0xF0, 0x9D, 0x85, 0xB0, 0xAE, 0x4C, -+ 0xF0, 0x9D, 0x85, 0x98, 0xF0, 0x9D, 0x85, 0xA5, -+ // Bytes 4640 - 467f -+ 0xF0, 0x9D, 0x85, 0xB1, 0xAE, 0x4C, 0xF0, 0x9D, -+ 0x85, 0x98, 0xF0, 0x9D, 0x85, 0xA5, 0xF0, 0x9D, -+ 0x85, 0xB2, 0xAE, 0x4C, 0xF0, 0x9D, 0x86, 0xB9, -+ 0xF0, 0x9D, 0x85, 0xA5, 0xF0, 0x9D, 0x85, 0xAE, -+ 0xAE, 0x4C, 0xF0, 0x9D, 0x86, 0xB9, 0xF0, 0x9D, -+ 0x85, 0xA5, 0xF0, 0x9D, 0x85, 0xAF, 0xAE, 0x4C, -+ 0xF0, 0x9D, 0x86, 0xBA, 0xF0, 0x9D, 0x85, 0xA5, -+ 0xF0, 0x9D, 0x85, 0xAE, 0xAE, 0x4C, 0xF0, 0x9D, -+ // Bytes 4680 - 46bf -+ 0x86, 0xBA, 0xF0, 0x9D, 0x85, 0xA5, 0xF0, 0x9D, -+ 0x85, 0xAF, 0xAE, 0x83, 0x41, 0xCC, 0x82, 0xC9, -+ 0x83, 0x41, 0xCC, 0x86, 0xC9, 0x83, 0x41, 0xCC, -+ 0x87, 0xC9, 0x83, 0x41, 0xCC, 0x88, 0xC9, 0x83, -+ 0x41, 0xCC, 0x8A, 0xC9, 0x83, 0x41, 0xCC, 0xA3, -+ 0xB5, 0x83, 0x43, 0xCC, 0xA7, 0xA5, 0x83, 0x45, -+ 0xCC, 0x82, 0xC9, 0x83, 0x45, 0xCC, 0x84, 0xC9, -+ 0x83, 0x45, 0xCC, 0xA3, 0xB5, 0x83, 0x45, 0xCC, -+ // Bytes 46c0 - 46ff -+ 0xA7, 0xA5, 0x83, 0x49, 0xCC, 0x88, 0xC9, 0x83, -+ 0x4C, 0xCC, 0xA3, 0xB5, 0x83, 0x4F, 0xCC, 0x82, -+ 0xC9, 0x83, 0x4F, 0xCC, 0x83, 0xC9, 0x83, 0x4F, -+ 0xCC, 0x84, 0xC9, 0x83, 0x4F, 0xCC, 0x87, 0xC9, -+ 0x83, 0x4F, 0xCC, 0x88, 0xC9, 0x83, 0x4F, 0xCC, -+ 0x9B, 0xAD, 0x83, 0x4F, 0xCC, 0xA3, 0xB5, 0x83, -+ 0x4F, 0xCC, 0xA8, 0xA5, 0x83, 0x52, 0xCC, 0xA3, -+ 0xB5, 0x83, 0x53, 0xCC, 0x81, 0xC9, 0x83, 0x53, -+ // Bytes 4700 - 473f -+ 0xCC, 0x8C, 0xC9, 0x83, 0x53, 0xCC, 0xA3, 0xB5, -+ 0x83, 0x55, 0xCC, 0x83, 0xC9, 0x83, 0x55, 0xCC, -+ 0x84, 0xC9, 0x83, 0x55, 0xCC, 0x88, 0xC9, 0x83, -+ 0x55, 0xCC, 0x9B, 0xAD, 0x83, 0x61, 0xCC, 0x82, -+ 0xC9, 0x83, 0x61, 0xCC, 0x86, 0xC9, 0x83, 0x61, -+ 0xCC, 0x87, 0xC9, 0x83, 0x61, 0xCC, 0x88, 0xC9, -+ 0x83, 0x61, 0xCC, 0x8A, 0xC9, 0x83, 0x61, 0xCC, -+ 0xA3, 0xB5, 0x83, 0x63, 0xCC, 0xA7, 0xA5, 0x83, -+ // Bytes 4740 - 477f -+ 0x65, 0xCC, 0x82, 0xC9, 0x83, 0x65, 0xCC, 0x84, -+ 0xC9, 0x83, 0x65, 0xCC, 0xA3, 0xB5, 0x83, 0x65, -+ 0xCC, 0xA7, 0xA5, 0x83, 0x69, 0xCC, 0x88, 0xC9, -+ 0x83, 0x6C, 0xCC, 0xA3, 0xB5, 0x83, 0x6F, 0xCC, -+ 0x82, 0xC9, 0x83, 0x6F, 0xCC, 0x83, 0xC9, 0x83, -+ 0x6F, 0xCC, 0x84, 0xC9, 0x83, 0x6F, 0xCC, 0x87, -+ 0xC9, 0x83, 0x6F, 0xCC, 0x88, 0xC9, 0x83, 0x6F, -+ 0xCC, 0x9B, 0xAD, 0x83, 0x6F, 0xCC, 0xA3, 0xB5, -+ // Bytes 4780 - 47bf -+ 0x83, 0x6F, 0xCC, 0xA8, 0xA5, 0x83, 0x72, 0xCC, -+ 0xA3, 0xB5, 0x83, 0x73, 0xCC, 0x81, 0xC9, 0x83, -+ 0x73, 0xCC, 0x8C, 0xC9, 0x83, 0x73, 0xCC, 0xA3, -+ 0xB5, 0x83, 0x75, 0xCC, 0x83, 0xC9, 0x83, 0x75, -+ 0xCC, 0x84, 0xC9, 0x83, 0x75, 0xCC, 0x88, 0xC9, -+ 0x83, 0x75, 0xCC, 0x9B, 0xAD, 0x84, 0xCE, 0x91, -+ 0xCC, 0x93, 0xC9, 0x84, 0xCE, 0x91, 0xCC, 0x94, -+ 0xC9, 0x84, 0xCE, 0x95, 0xCC, 0x93, 0xC9, 0x84, -+ // Bytes 47c0 - 47ff -+ 0xCE, 0x95, 0xCC, 0x94, 0xC9, 0x84, 0xCE, 0x97, -+ 0xCC, 0x93, 0xC9, 0x84, 0xCE, 0x97, 0xCC, 0x94, -+ 0xC9, 0x84, 0xCE, 0x99, 0xCC, 0x93, 0xC9, 0x84, -+ 0xCE, 0x99, 0xCC, 0x94, 0xC9, 0x84, 0xCE, 0x9F, -+ 0xCC, 0x93, 0xC9, 0x84, 0xCE, 0x9F, 0xCC, 0x94, -+ 0xC9, 0x84, 0xCE, 0xA5, 0xCC, 0x94, 0xC9, 0x84, -+ 0xCE, 0xA9, 0xCC, 0x93, 0xC9, 0x84, 0xCE, 0xA9, -+ 0xCC, 0x94, 0xC9, 0x84, 0xCE, 0xB1, 0xCC, 0x80, -+ // Bytes 4800 - 483f -+ 0xC9, 0x84, 0xCE, 0xB1, 0xCC, 0x81, 0xC9, 0x84, -+ 0xCE, 0xB1, 0xCC, 0x93, 0xC9, 0x84, 0xCE, 0xB1, -+ 0xCC, 0x94, 0xC9, 0x84, 0xCE, 0xB1, 0xCD, 0x82, -+ 0xC9, 0x84, 0xCE, 0xB5, 0xCC, 0x93, 0xC9, 0x84, -+ 0xCE, 0xB5, 0xCC, 0x94, 0xC9, 0x84, 0xCE, 0xB7, -+ 0xCC, 0x80, 0xC9, 0x84, 0xCE, 0xB7, 0xCC, 0x81, -+ 0xC9, 0x84, 0xCE, 0xB7, 0xCC, 0x93, 0xC9, 0x84, -+ 0xCE, 0xB7, 0xCC, 0x94, 0xC9, 0x84, 0xCE, 0xB7, -+ // Bytes 4840 - 487f -+ 0xCD, 0x82, 0xC9, 0x84, 0xCE, 0xB9, 0xCC, 0x88, -+ 0xC9, 0x84, 0xCE, 0xB9, 0xCC, 0x93, 0xC9, 0x84, -+ 0xCE, 0xB9, 0xCC, 0x94, 0xC9, 0x84, 0xCE, 0xBF, -+ 0xCC, 0x93, 0xC9, 0x84, 0xCE, 0xBF, 0xCC, 0x94, -+ 0xC9, 0x84, 0xCF, 0x85, 0xCC, 0x88, 0xC9, 0x84, -+ 0xCF, 0x85, 0xCC, 0x93, 0xC9, 0x84, 0xCF, 0x85, -+ 0xCC, 0x94, 0xC9, 0x84, 0xCF, 0x89, 0xCC, 0x80, -+ 0xC9, 0x84, 0xCF, 0x89, 0xCC, 0x81, 0xC9, 0x84, -+ // Bytes 4880 - 48bf -+ 0xCF, 0x89, 0xCC, 0x93, 0xC9, 0x84, 0xCF, 0x89, -+ 0xCC, 0x94, 0xC9, 0x84, 0xCF, 0x89, 0xCD, 0x82, -+ 0xC9, 0x86, 0xCE, 0x91, 0xCC, 0x93, 0xCC, 0x80, -+ 0xCA, 0x86, 0xCE, 0x91, 0xCC, 0x93, 0xCC, 0x81, -+ 0xCA, 0x86, 0xCE, 0x91, 0xCC, 0x93, 0xCD, 0x82, -+ 0xCA, 0x86, 0xCE, 0x91, 0xCC, 0x94, 0xCC, 0x80, -+ 0xCA, 0x86, 0xCE, 0x91, 0xCC, 0x94, 0xCC, 0x81, -+ 0xCA, 0x86, 0xCE, 0x91, 0xCC, 0x94, 0xCD, 0x82, -+ // Bytes 48c0 - 48ff -+ 0xCA, 0x86, 0xCE, 0x97, 0xCC, 0x93, 0xCC, 0x80, -+ 0xCA, 0x86, 0xCE, 0x97, 0xCC, 0x93, 0xCC, 0x81, -+ 0xCA, 0x86, 0xCE, 0x97, 0xCC, 0x93, 0xCD, 0x82, -+ 0xCA, 0x86, 0xCE, 0x97, 0xCC, 0x94, 0xCC, 0x80, -+ 0xCA, 0x86, 0xCE, 0x97, 0xCC, 0x94, 0xCC, 0x81, -+ 0xCA, 0x86, 0xCE, 0x97, 0xCC, 0x94, 0xCD, 0x82, -+ 0xCA, 0x86, 0xCE, 0xA9, 0xCC, 0x93, 0xCC, 0x80, -+ 0xCA, 0x86, 0xCE, 0xA9, 0xCC, 0x93, 0xCC, 0x81, -+ // Bytes 4900 - 493f -+ 0xCA, 0x86, 0xCE, 0xA9, 0xCC, 0x93, 0xCD, 0x82, -+ 0xCA, 0x86, 0xCE, 0xA9, 0xCC, 0x94, 0xCC, 0x80, -+ 0xCA, 0x86, 0xCE, 0xA9, 0xCC, 0x94, 0xCC, 0x81, -+ 0xCA, 0x86, 0xCE, 0xA9, 0xCC, 0x94, 0xCD, 0x82, -+ 0xCA, 0x86, 0xCE, 0xB1, 0xCC, 0x93, 0xCC, 0x80, -+ 0xCA, 0x86, 0xCE, 0xB1, 0xCC, 0x93, 0xCC, 0x81, -+ 0xCA, 0x86, 0xCE, 0xB1, 0xCC, 0x93, 0xCD, 0x82, -+ 0xCA, 0x86, 0xCE, 0xB1, 0xCC, 0x94, 0xCC, 0x80, -+ // Bytes 4940 - 497f -+ 0xCA, 0x86, 0xCE, 0xB1, 0xCC, 0x94, 0xCC, 0x81, -+ 0xCA, 0x86, 0xCE, 0xB1, 0xCC, 0x94, 0xCD, 0x82, -+ 0xCA, 0x86, 0xCE, 0xB7, 0xCC, 0x93, 0xCC, 0x80, -+ 0xCA, 0x86, 0xCE, 0xB7, 0xCC, 0x93, 0xCC, 0x81, -+ 0xCA, 0x86, 0xCE, 0xB7, 0xCC, 0x93, 0xCD, 0x82, -+ 0xCA, 0x86, 0xCE, 0xB7, 0xCC, 0x94, 0xCC, 0x80, -+ 0xCA, 0x86, 0xCE, 0xB7, 0xCC, 0x94, 0xCC, 0x81, -+ 0xCA, 0x86, 0xCE, 0xB7, 0xCC, 0x94, 0xCD, 0x82, -+ // Bytes 4980 - 49bf -+ 0xCA, 0x86, 0xCF, 0x89, 0xCC, 0x93, 0xCC, 0x80, -+ 0xCA, 0x86, 0xCF, 0x89, 0xCC, 0x93, 0xCC, 0x81, -+ 0xCA, 0x86, 0xCF, 0x89, 0xCC, 0x93, 0xCD, 0x82, -+ 0xCA, 0x86, 0xCF, 0x89, 0xCC, 0x94, 0xCC, 0x80, -+ 0xCA, 0x86, 0xCF, 0x89, 0xCC, 0x94, 0xCC, 0x81, -+ 0xCA, 0x86, 0xCF, 0x89, 0xCC, 0x94, 0xCD, 0x82, -+ 0xCA, 0x42, 0xCC, 0x80, 0xC9, 0x32, 0x42, 0xCC, -+ 0x81, 0xC9, 0x32, 0x42, 0xCC, 0x93, 0xC9, 0x32, -+ // Bytes 49c0 - 49ff -+ 0x43, 0xE1, 0x85, 0xA1, 0x01, 0x00, 0x43, 0xE1, -+ 0x85, 0xA2, 0x01, 0x00, 0x43, 0xE1, 0x85, 0xA3, -+ 0x01, 0x00, 0x43, 0xE1, 0x85, 0xA4, 0x01, 0x00, -+ 0x43, 0xE1, 0x85, 0xA5, 0x01, 0x00, 0x43, 0xE1, -+ 0x85, 0xA6, 0x01, 0x00, 0x43, 0xE1, 0x85, 0xA7, -+ 0x01, 0x00, 0x43, 0xE1, 0x85, 0xA8, 0x01, 0x00, -+ 0x43, 0xE1, 0x85, 0xA9, 0x01, 0x00, 0x43, 0xE1, -+ 0x85, 0xAA, 0x01, 0x00, 0x43, 0xE1, 0x85, 0xAB, -+ // Bytes 4a00 - 4a3f -+ 0x01, 0x00, 0x43, 0xE1, 0x85, 0xAC, 0x01, 0x00, -+ 0x43, 0xE1, 0x85, 0xAD, 0x01, 0x00, 0x43, 0xE1, -+ 0x85, 0xAE, 0x01, 0x00, 0x43, 0xE1, 0x85, 0xAF, -+ 0x01, 0x00, 0x43, 0xE1, 0x85, 0xB0, 0x01, 0x00, -+ 0x43, 0xE1, 0x85, 0xB1, 0x01, 0x00, 0x43, 0xE1, -+ 0x85, 0xB2, 0x01, 0x00, 0x43, 0xE1, 0x85, 0xB3, -+ 0x01, 0x00, 0x43, 0xE1, 0x85, 0xB4, 0x01, 0x00, -+ 0x43, 0xE1, 0x85, 0xB5, 0x01, 0x00, 0x43, 0xE1, -+ // Bytes 4a40 - 4a7f -+ 0x86, 0xAA, 0x01, 0x00, 0x43, 0xE1, 0x86, 0xAC, -+ 0x01, 0x00, 0x43, 0xE1, 0x86, 0xAD, 0x01, 0x00, -+ 0x43, 0xE1, 0x86, 0xB0, 0x01, 0x00, 0x43, 0xE1, -+ 0x86, 0xB1, 0x01, 0x00, 0x43, 0xE1, 0x86, 0xB2, -+ 0x01, 0x00, 0x43, 0xE1, 0x86, 0xB3, 0x01, 0x00, -+ 0x43, 0xE1, 0x86, 0xB4, 0x01, 0x00, 0x43, 0xE1, -+ 0x86, 0xB5, 0x01, 0x00, 0x44, 0xCC, 0x88, 0xCC, -+ 0x81, 0xCA, 0x32, 0x43, 0xE3, 0x82, 0x99, 0x0D, -+ // Bytes 4a80 - 4abf -+ 0x03, 0x43, 0xE3, 0x82, 0x9A, 0x0D, 0x03, 0x46, -+ 0xE0, 0xBD, 0xB1, 0xE0, 0xBD, 0xB2, 0x9E, 0x26, -+ 0x46, 0xE0, 0xBD, 0xB1, 0xE0, 0xBD, 0xB4, 0xA2, -+ 0x26, 0x46, 0xE0, 0xBD, 0xB1, 0xE0, 0xBE, 0x80, -+ 0x9E, 0x26, 0x00, 0x01, -+} -+ -+// lookup returns the trie value for the first UTF-8 encoding in s and -+// the width in bytes of this encoding. The size will be 0 if s does not -+// hold enough bytes to complete the encoding. len(s) must be greater than 0. -+func (t *nfcTrie) lookup(s []byte) (v uint16, sz int) { -+ c0 := s[0] -+ switch { -+ case c0 < 0x80: // is ASCII -+ return nfcValues[c0], 1 -+ case c0 < 0xC2: -+ return 0, 1 // Illegal UTF-8: not a starter, not ASCII. -+ case c0 < 0xE0: // 2-byte UTF-8 -+ if len(s) < 2 { -+ return 0, 0 -+ } -+ i := nfcIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c1), 2 -+ case c0 < 0xF0: // 3-byte UTF-8 -+ if len(s) < 3 { -+ return 0, 0 -+ } -+ i := nfcIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = nfcIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c2), 3 -+ case c0 < 0xF8: // 4-byte UTF-8 -+ if len(s) < 4 { -+ return 0, 0 -+ } -+ i := nfcIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = nfcIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ o = uint32(i)<<6 + uint32(c2) -+ i = nfcIndex[o] -+ c3 := s[3] -+ if c3 < 0x80 || 0xC0 <= c3 { -+ return 0, 3 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c3), 4 -+ } -+ // Illegal rune -+ return 0, 1 -+} -+ -+// lookupUnsafe returns the trie value for the first UTF-8 encoding in s. -+// s must start with a full and valid UTF-8 encoded rune. -+func (t *nfcTrie) lookupUnsafe(s []byte) uint16 { -+ c0 := s[0] -+ if c0 < 0x80 { // is ASCII -+ return nfcValues[c0] -+ } -+ i := nfcIndex[c0] -+ if c0 < 0xE0 { // 2-byte UTF-8 -+ return t.lookupValue(uint32(i), s[1]) -+ } -+ i = nfcIndex[uint32(i)<<6+uint32(s[1])] -+ if c0 < 0xF0 { // 3-byte UTF-8 -+ return t.lookupValue(uint32(i), s[2]) -+ } -+ i = nfcIndex[uint32(i)<<6+uint32(s[2])] -+ if c0 < 0xF8 { // 4-byte UTF-8 -+ return t.lookupValue(uint32(i), s[3]) -+ } -+ return 0 -+} -+ -+// lookupString returns the trie value for the first UTF-8 encoding in s and -+// the width in bytes of this encoding. The size will be 0 if s does not -+// hold enough bytes to complete the encoding. len(s) must be greater than 0. -+func (t *nfcTrie) lookupString(s string) (v uint16, sz int) { -+ c0 := s[0] -+ switch { -+ case c0 < 0x80: // is ASCII -+ return nfcValues[c0], 1 -+ case c0 < 0xC2: -+ return 0, 1 // Illegal UTF-8: not a starter, not ASCII. -+ case c0 < 0xE0: // 2-byte UTF-8 -+ if len(s) < 2 { -+ return 0, 0 -+ } -+ i := nfcIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c1), 2 -+ case c0 < 0xF0: // 3-byte UTF-8 -+ if len(s) < 3 { -+ return 0, 0 -+ } -+ i := nfcIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = nfcIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c2), 3 -+ case c0 < 0xF8: // 4-byte UTF-8 -+ if len(s) < 4 { -+ return 0, 0 -+ } -+ i := nfcIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = nfcIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ o = uint32(i)<<6 + uint32(c2) -+ i = nfcIndex[o] -+ c3 := s[3] -+ if c3 < 0x80 || 0xC0 <= c3 { -+ return 0, 3 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c3), 4 -+ } -+ // Illegal rune -+ return 0, 1 -+} -+ -+// lookupStringUnsafe returns the trie value for the first UTF-8 encoding in s. -+// s must start with a full and valid UTF-8 encoded rune. -+func (t *nfcTrie) lookupStringUnsafe(s string) uint16 { -+ c0 := s[0] -+ if c0 < 0x80 { // is ASCII -+ return nfcValues[c0] -+ } -+ i := nfcIndex[c0] -+ if c0 < 0xE0 { // 2-byte UTF-8 -+ return t.lookupValue(uint32(i), s[1]) -+ } -+ i = nfcIndex[uint32(i)<<6+uint32(s[1])] -+ if c0 < 0xF0 { // 3-byte UTF-8 -+ return t.lookupValue(uint32(i), s[2]) -+ } -+ i = nfcIndex[uint32(i)<<6+uint32(s[2])] -+ if c0 < 0xF8 { // 4-byte UTF-8 -+ return t.lookupValue(uint32(i), s[3]) -+ } -+ return 0 -+} -+ -+// nfcTrie. Total size: 10610 bytes (10.36 KiB). Checksum: 95e8869a9f81e5e6. -+type nfcTrie struct{} -+ -+func newNfcTrie(i int) *nfcTrie { -+ return &nfcTrie{} -+} -+ -+// lookupValue determines the type of block n and looks up the value for b. -+func (t *nfcTrie) lookupValue(n uint32, b byte) uint16 { -+ switch { -+ case n < 46: -+ return uint16(nfcValues[n<<6+uint32(b)]) -+ default: -+ n -= 46 -+ return uint16(nfcSparse.lookup(n, b)) -+ } -+} -+ -+// nfcValues: 48 blocks, 3072 entries, 6144 bytes -+// The third block is the zero block. -+var nfcValues = [3072]uint16{ -+ // Block 0x0, offset 0x0 -+ 0x3c: 0xa000, 0x3d: 0xa000, 0x3e: 0xa000, -+ // Block 0x1, offset 0x40 -+ 0x41: 0xa000, 0x42: 0xa000, 0x43: 0xa000, 0x44: 0xa000, 0x45: 0xa000, -+ 0x46: 0xa000, 0x47: 0xa000, 0x48: 0xa000, 0x49: 0xa000, 0x4a: 0xa000, 0x4b: 0xa000, -+ 0x4c: 0xa000, 0x4d: 0xa000, 0x4e: 0xa000, 0x4f: 0xa000, 0x50: 0xa000, -+ 0x52: 0xa000, 0x53: 0xa000, 0x54: 0xa000, 0x55: 0xa000, 0x56: 0xa000, 0x57: 0xa000, -+ 0x58: 0xa000, 0x59: 0xa000, 0x5a: 0xa000, -+ 0x61: 0xa000, 0x62: 0xa000, 0x63: 0xa000, -+ 0x64: 0xa000, 0x65: 0xa000, 0x66: 0xa000, 0x67: 0xa000, 0x68: 0xa000, 0x69: 0xa000, -+ 0x6a: 0xa000, 0x6b: 0xa000, 0x6c: 0xa000, 0x6d: 0xa000, 0x6e: 0xa000, 0x6f: 0xa000, -+ 0x70: 0xa000, 0x72: 0xa000, 0x73: 0xa000, 0x74: 0xa000, 0x75: 0xa000, -+ 0x76: 0xa000, 0x77: 0xa000, 0x78: 0xa000, 0x79: 0xa000, 0x7a: 0xa000, -+ // Block 0x2, offset 0x80 -+ // Block 0x3, offset 0xc0 -+ 0xc0: 0x2f72, 0xc1: 0x2f77, 0xc2: 0x468b, 0xc3: 0x2f7c, 0xc4: 0x469a, 0xc5: 0x469f, -+ 0xc6: 0xa000, 0xc7: 0x46a9, 0xc8: 0x2fe5, 0xc9: 0x2fea, 0xca: 0x46ae, 0xcb: 0x2ffe, -+ 0xcc: 0x3071, 0xcd: 0x3076, 0xce: 0x307b, 0xcf: 0x46c2, 0xd1: 0x3107, -+ 0xd2: 0x312a, 0xd3: 0x312f, 0xd4: 0x46cc, 0xd5: 0x46d1, 0xd6: 0x46e0, -+ 0xd8: 0xa000, 0xd9: 0x31b6, 0xda: 0x31bb, 0xdb: 0x31c0, 0xdc: 0x4712, 0xdd: 0x3238, -+ 0xe0: 0x327e, 0xe1: 0x3283, 0xe2: 0x471c, 0xe3: 0x3288, -+ 0xe4: 0x472b, 0xe5: 0x4730, 0xe6: 0xa000, 0xe7: 0x473a, 0xe8: 0x32f1, 0xe9: 0x32f6, -+ 0xea: 0x473f, 0xeb: 0x330a, 0xec: 0x3382, 0xed: 0x3387, 0xee: 0x338c, 0xef: 0x4753, -+ 0xf1: 0x3418, 0xf2: 0x343b, 0xf3: 0x3440, 0xf4: 0x475d, 0xf5: 0x4762, -+ 0xf6: 0x4771, 0xf8: 0xa000, 0xf9: 0x34cc, 0xfa: 0x34d1, 0xfb: 0x34d6, -+ 0xfc: 0x47a3, 0xfd: 0x3553, 0xff: 0x356c, -+ // Block 0x4, offset 0x100 -+ 0x100: 0x2f81, 0x101: 0x328d, 0x102: 0x4690, 0x103: 0x4721, 0x104: 0x2f9f, 0x105: 0x32ab, -+ 0x106: 0x2fb3, 0x107: 0x32bf, 0x108: 0x2fb8, 0x109: 0x32c4, 0x10a: 0x2fbd, 0x10b: 0x32c9, -+ 0x10c: 0x2fc2, 0x10d: 0x32ce, 0x10e: 0x2fcc, 0x10f: 0x32d8, -+ 0x112: 0x46b3, 0x113: 0x4744, 0x114: 0x2ff4, 0x115: 0x3300, 0x116: 0x2ff9, 0x117: 0x3305, -+ 0x118: 0x3017, 0x119: 0x3323, 0x11a: 0x3008, 0x11b: 0x3314, 0x11c: 0x3030, 0x11d: 0x333c, -+ 0x11e: 0x303a, 0x11f: 0x3346, 0x120: 0x303f, 0x121: 0x334b, 0x122: 0x3049, 0x123: 0x3355, -+ 0x124: 0x304e, 0x125: 0x335a, 0x128: 0x3080, 0x129: 0x3391, -+ 0x12a: 0x3085, 0x12b: 0x3396, 0x12c: 0x308a, 0x12d: 0x339b, 0x12e: 0x30ad, 0x12f: 0x33b9, -+ 0x130: 0x308f, 0x134: 0x30b7, 0x135: 0x33c3, -+ 0x136: 0x30cb, 0x137: 0x33dc, 0x139: 0x30d5, 0x13a: 0x33e6, 0x13b: 0x30df, -+ 0x13c: 0x33f0, 0x13d: 0x30da, 0x13e: 0x33eb, -+ // Block 0x5, offset 0x140 -+ 0x143: 0x3102, 0x144: 0x3413, 0x145: 0x311b, -+ 0x146: 0x342c, 0x147: 0x3111, 0x148: 0x3422, -+ 0x14c: 0x46d6, 0x14d: 0x4767, 0x14e: 0x3134, 0x14f: 0x3445, 0x150: 0x313e, 0x151: 0x344f, -+ 0x154: 0x315c, 0x155: 0x346d, 0x156: 0x3175, 0x157: 0x3486, -+ 0x158: 0x3166, 0x159: 0x3477, 0x15a: 0x46f9, 0x15b: 0x478a, 0x15c: 0x317f, 0x15d: 0x3490, -+ 0x15e: 0x318e, 0x15f: 0x349f, 0x160: 0x46fe, 0x161: 0x478f, 0x162: 0x31a7, 0x163: 0x34bd, -+ 0x164: 0x3198, 0x165: 0x34ae, 0x168: 0x4708, 0x169: 0x4799, -+ 0x16a: 0x470d, 0x16b: 0x479e, 0x16c: 0x31c5, 0x16d: 0x34db, 0x16e: 0x31cf, 0x16f: 0x34e5, -+ 0x170: 0x31d4, 0x171: 0x34ea, 0x172: 0x31f2, 0x173: 0x3508, 0x174: 0x3215, 0x175: 0x352b, -+ 0x176: 0x323d, 0x177: 0x3558, 0x178: 0x3251, 0x179: 0x3260, 0x17a: 0x3580, 0x17b: 0x326a, -+ 0x17c: 0x358a, 0x17d: 0x326f, 0x17e: 0x358f, 0x17f: 0xa000, -+ // Block 0x6, offset 0x180 -+ 0x184: 0x8100, 0x185: 0x8100, -+ 0x186: 0x8100, -+ 0x18d: 0x2f8b, 0x18e: 0x3297, 0x18f: 0x3099, 0x190: 0x33a5, 0x191: 0x3143, -+ 0x192: 0x3454, 0x193: 0x31d9, 0x194: 0x34ef, 0x195: 0x39d2, 0x196: 0x3b61, 0x197: 0x39cb, -+ 0x198: 0x3b5a, 0x199: 0x39d9, 0x19a: 0x3b68, 0x19b: 0x39c4, 0x19c: 0x3b53, -+ 0x19e: 0x38b3, 0x19f: 0x3a42, 0x1a0: 0x38ac, 0x1a1: 0x3a3b, 0x1a2: 0x35b6, 0x1a3: 0x35c8, -+ 0x1a6: 0x3044, 0x1a7: 0x3350, 0x1a8: 0x30c1, 0x1a9: 0x33d2, -+ 0x1aa: 0x46ef, 0x1ab: 0x4780, 0x1ac: 0x3993, 0x1ad: 0x3b22, 0x1ae: 0x35da, 0x1af: 0x35e0, -+ 0x1b0: 0x33c8, 0x1b4: 0x302b, 0x1b5: 0x3337, -+ 0x1b8: 0x30fd, 0x1b9: 0x340e, 0x1ba: 0x38ba, 0x1bb: 0x3a49, -+ 0x1bc: 0x35b0, 0x1bd: 0x35c2, 0x1be: 0x35bc, 0x1bf: 0x35ce, -+ // Block 0x7, offset 0x1c0 -+ 0x1c0: 0x2f90, 0x1c1: 0x329c, 0x1c2: 0x2f95, 0x1c3: 0x32a1, 0x1c4: 0x300d, 0x1c5: 0x3319, -+ 0x1c6: 0x3012, 0x1c7: 0x331e, 0x1c8: 0x309e, 0x1c9: 0x33aa, 0x1ca: 0x30a3, 0x1cb: 0x33af, -+ 0x1cc: 0x3148, 0x1cd: 0x3459, 0x1ce: 0x314d, 0x1cf: 0x345e, 0x1d0: 0x316b, 0x1d1: 0x347c, -+ 0x1d2: 0x3170, 0x1d3: 0x3481, 0x1d4: 0x31de, 0x1d5: 0x34f4, 0x1d6: 0x31e3, 0x1d7: 0x34f9, -+ 0x1d8: 0x3189, 0x1d9: 0x349a, 0x1da: 0x31a2, 0x1db: 0x34b8, -+ 0x1de: 0x305d, 0x1df: 0x3369, -+ 0x1e6: 0x4695, 0x1e7: 0x4726, 0x1e8: 0x46bd, 0x1e9: 0x474e, -+ 0x1ea: 0x3962, 0x1eb: 0x3af1, 0x1ec: 0x393f, 0x1ed: 0x3ace, 0x1ee: 0x46db, 0x1ef: 0x476c, -+ 0x1f0: 0x395b, 0x1f1: 0x3aea, 0x1f2: 0x3247, 0x1f3: 0x3562, -+ // Block 0x8, offset 0x200 -+ 0x200: 0x9932, 0x201: 0x9932, 0x202: 0x9932, 0x203: 0x9932, 0x204: 0x9932, 0x205: 0x8132, -+ 0x206: 0x9932, 0x207: 0x9932, 0x208: 0x9932, 0x209: 0x9932, 0x20a: 0x9932, 0x20b: 0x9932, -+ 0x20c: 0x9932, 0x20d: 0x8132, 0x20e: 0x8132, 0x20f: 0x9932, 0x210: 0x8132, 0x211: 0x9932, -+ 0x212: 0x8132, 0x213: 0x9932, 0x214: 0x9932, 0x215: 0x8133, 0x216: 0x812d, 0x217: 0x812d, -+ 0x218: 0x812d, 0x219: 0x812d, 0x21a: 0x8133, 0x21b: 0x992b, 0x21c: 0x812d, 0x21d: 0x812d, -+ 0x21e: 0x812d, 0x21f: 0x812d, 0x220: 0x812d, 0x221: 0x8129, 0x222: 0x8129, 0x223: 0x992d, -+ 0x224: 0x992d, 0x225: 0x992d, 0x226: 0x992d, 0x227: 0x9929, 0x228: 0x9929, 0x229: 0x812d, -+ 0x22a: 0x812d, 0x22b: 0x812d, 0x22c: 0x812d, 0x22d: 0x992d, 0x22e: 0x992d, 0x22f: 0x812d, -+ 0x230: 0x992d, 0x231: 0x992d, 0x232: 0x812d, 0x233: 0x812d, 0x234: 0x8101, 0x235: 0x8101, -+ 0x236: 0x8101, 0x237: 0x8101, 0x238: 0x9901, 0x239: 0x812d, 0x23a: 0x812d, 0x23b: 0x812d, -+ 0x23c: 0x812d, 0x23d: 0x8132, 0x23e: 0x8132, 0x23f: 0x8132, -+ // Block 0x9, offset 0x240 -+ 0x240: 0x49b1, 0x241: 0x49b6, 0x242: 0x9932, 0x243: 0x49bb, 0x244: 0x4a74, 0x245: 0x9936, -+ 0x246: 0x8132, 0x247: 0x812d, 0x248: 0x812d, 0x249: 0x812d, 0x24a: 0x8132, 0x24b: 0x8132, -+ 0x24c: 0x8132, 0x24d: 0x812d, 0x24e: 0x812d, 0x250: 0x8132, 0x251: 0x8132, -+ 0x252: 0x8132, 0x253: 0x812d, 0x254: 0x812d, 0x255: 0x812d, 0x256: 0x812d, 0x257: 0x8132, -+ 0x258: 0x8133, 0x259: 0x812d, 0x25a: 0x812d, 0x25b: 0x8132, 0x25c: 0x8134, 0x25d: 0x8135, -+ 0x25e: 0x8135, 0x25f: 0x8134, 0x260: 0x8135, 0x261: 0x8135, 0x262: 0x8134, 0x263: 0x8132, -+ 0x264: 0x8132, 0x265: 0x8132, 0x266: 0x8132, 0x267: 0x8132, 0x268: 0x8132, 0x269: 0x8132, -+ 0x26a: 0x8132, 0x26b: 0x8132, 0x26c: 0x8132, 0x26d: 0x8132, 0x26e: 0x8132, 0x26f: 0x8132, -+ 0x274: 0x0170, -+ 0x27a: 0x8100, -+ 0x27e: 0x0037, -+ // Block 0xa, offset 0x280 -+ 0x284: 0x8100, 0x285: 0x35a4, -+ 0x286: 0x35ec, 0x287: 0x00ce, 0x288: 0x360a, 0x289: 0x3616, 0x28a: 0x3628, -+ 0x28c: 0x3646, 0x28e: 0x3658, 0x28f: 0x3676, 0x290: 0x3e0b, 0x291: 0xa000, -+ 0x295: 0xa000, 0x297: 0xa000, -+ 0x299: 0xa000, -+ 0x29f: 0xa000, 0x2a1: 0xa000, -+ 0x2a5: 0xa000, 0x2a9: 0xa000, -+ 0x2aa: 0x363a, 0x2ab: 0x366a, 0x2ac: 0x4801, 0x2ad: 0x369a, 0x2ae: 0x482b, 0x2af: 0x36ac, -+ 0x2b0: 0x3e73, 0x2b1: 0xa000, 0x2b5: 0xa000, -+ 0x2b7: 0xa000, 0x2b9: 0xa000, -+ 0x2bf: 0xa000, -+ // Block 0xb, offset 0x2c0 -+ 0x2c0: 0x3724, 0x2c1: 0x3730, 0x2c3: 0x371e, -+ 0x2c6: 0xa000, 0x2c7: 0x370c, -+ 0x2cc: 0x3760, 0x2cd: 0x3748, 0x2ce: 0x3772, 0x2d0: 0xa000, -+ 0x2d3: 0xa000, 0x2d5: 0xa000, 0x2d6: 0xa000, 0x2d7: 0xa000, -+ 0x2d8: 0xa000, 0x2d9: 0x3754, 0x2da: 0xa000, -+ 0x2de: 0xa000, 0x2e3: 0xa000, -+ 0x2e7: 0xa000, -+ 0x2eb: 0xa000, 0x2ed: 0xa000, -+ 0x2f0: 0xa000, 0x2f3: 0xa000, 0x2f5: 0xa000, -+ 0x2f6: 0xa000, 0x2f7: 0xa000, 0x2f8: 0xa000, 0x2f9: 0x37d8, 0x2fa: 0xa000, -+ 0x2fe: 0xa000, -+ // Block 0xc, offset 0x300 -+ 0x301: 0x3736, 0x302: 0x37ba, -+ 0x310: 0x3712, 0x311: 0x3796, -+ 0x312: 0x3718, 0x313: 0x379c, 0x316: 0x372a, 0x317: 0x37ae, -+ 0x318: 0xa000, 0x319: 0xa000, 0x31a: 0x382c, 0x31b: 0x3832, 0x31c: 0x373c, 0x31d: 0x37c0, -+ 0x31e: 0x3742, 0x31f: 0x37c6, 0x322: 0x374e, 0x323: 0x37d2, -+ 0x324: 0x375a, 0x325: 0x37de, 0x326: 0x3766, 0x327: 0x37ea, 0x328: 0xa000, 0x329: 0xa000, -+ 0x32a: 0x3838, 0x32b: 0x383e, 0x32c: 0x3790, 0x32d: 0x3814, 0x32e: 0x376c, 0x32f: 0x37f0, -+ 0x330: 0x3778, 0x331: 0x37fc, 0x332: 0x377e, 0x333: 0x3802, 0x334: 0x3784, 0x335: 0x3808, -+ 0x338: 0x378a, 0x339: 0x380e, -+ // Block 0xd, offset 0x340 -+ 0x351: 0x812d, -+ 0x352: 0x8132, 0x353: 0x8132, 0x354: 0x8132, 0x355: 0x8132, 0x356: 0x812d, 0x357: 0x8132, -+ 0x358: 0x8132, 0x359: 0x8132, 0x35a: 0x812e, 0x35b: 0x812d, 0x35c: 0x8132, 0x35d: 0x8132, -+ 0x35e: 0x8132, 0x35f: 0x8132, 0x360: 0x8132, 0x361: 0x8132, 0x362: 0x812d, 0x363: 0x812d, -+ 0x364: 0x812d, 0x365: 0x812d, 0x366: 0x812d, 0x367: 0x812d, 0x368: 0x8132, 0x369: 0x8132, -+ 0x36a: 0x812d, 0x36b: 0x8132, 0x36c: 0x8132, 0x36d: 0x812e, 0x36e: 0x8131, 0x36f: 0x8132, -+ 0x370: 0x8105, 0x371: 0x8106, 0x372: 0x8107, 0x373: 0x8108, 0x374: 0x8109, 0x375: 0x810a, -+ 0x376: 0x810b, 0x377: 0x810c, 0x378: 0x810d, 0x379: 0x810e, 0x37a: 0x810e, 0x37b: 0x810f, -+ 0x37c: 0x8110, 0x37d: 0x8111, 0x37f: 0x8112, -+ // Block 0xe, offset 0x380 -+ 0x388: 0xa000, 0x38a: 0xa000, 0x38b: 0x8116, -+ 0x38c: 0x8117, 0x38d: 0x8118, 0x38e: 0x8119, 0x38f: 0x811a, 0x390: 0x811b, 0x391: 0x811c, -+ 0x392: 0x811d, 0x393: 0x9932, 0x394: 0x9932, 0x395: 0x992d, 0x396: 0x812d, 0x397: 0x8132, -+ 0x398: 0x8132, 0x399: 0x8132, 0x39a: 0x8132, 0x39b: 0x8132, 0x39c: 0x812d, 0x39d: 0x8132, -+ 0x39e: 0x8132, 0x39f: 0x812d, -+ 0x3b0: 0x811e, -+ // Block 0xf, offset 0x3c0 -+ 0x3d3: 0x812d, 0x3d4: 0x8132, 0x3d5: 0x8132, 0x3d6: 0x8132, 0x3d7: 0x8132, -+ 0x3d8: 0x8132, 0x3d9: 0x8132, 0x3da: 0x8132, 0x3db: 0x8132, 0x3dc: 0x8132, 0x3dd: 0x8132, -+ 0x3de: 0x8132, 0x3df: 0x8132, 0x3e0: 0x8132, 0x3e1: 0x8132, 0x3e3: 0x812d, -+ 0x3e4: 0x8132, 0x3e5: 0x8132, 0x3e6: 0x812d, 0x3e7: 0x8132, 0x3e8: 0x8132, 0x3e9: 0x812d, -+ 0x3ea: 0x8132, 0x3eb: 0x8132, 0x3ec: 0x8132, 0x3ed: 0x812d, 0x3ee: 0x812d, 0x3ef: 0x812d, -+ 0x3f0: 0x8116, 0x3f1: 0x8117, 0x3f2: 0x8118, 0x3f3: 0x8132, 0x3f4: 0x8132, 0x3f5: 0x8132, -+ 0x3f6: 0x812d, 0x3f7: 0x8132, 0x3f8: 0x8132, 0x3f9: 0x812d, 0x3fa: 0x812d, 0x3fb: 0x8132, -+ 0x3fc: 0x8132, 0x3fd: 0x8132, 0x3fe: 0x8132, 0x3ff: 0x8132, -+ // Block 0x10, offset 0x400 -+ 0x405: 0xa000, -+ 0x406: 0x2d29, 0x407: 0xa000, 0x408: 0x2d31, 0x409: 0xa000, 0x40a: 0x2d39, 0x40b: 0xa000, -+ 0x40c: 0x2d41, 0x40d: 0xa000, 0x40e: 0x2d49, 0x411: 0xa000, -+ 0x412: 0x2d51, -+ 0x434: 0x8102, 0x435: 0x9900, -+ 0x43a: 0xa000, 0x43b: 0x2d59, -+ 0x43c: 0xa000, 0x43d: 0x2d61, 0x43e: 0xa000, 0x43f: 0xa000, -+ // Block 0x11, offset 0x440 -+ 0x440: 0x8132, 0x441: 0x8132, 0x442: 0x812d, 0x443: 0x8132, 0x444: 0x8132, 0x445: 0x8132, -+ 0x446: 0x8132, 0x447: 0x8132, 0x448: 0x8132, 0x449: 0x8132, 0x44a: 0x812d, 0x44b: 0x8132, -+ 0x44c: 0x8132, 0x44d: 0x8135, 0x44e: 0x812a, 0x44f: 0x812d, 0x450: 0x8129, 0x451: 0x8132, -+ 0x452: 0x8132, 0x453: 0x8132, 0x454: 0x8132, 0x455: 0x8132, 0x456: 0x8132, 0x457: 0x8132, -+ 0x458: 0x8132, 0x459: 0x8132, 0x45a: 0x8132, 0x45b: 0x8132, 0x45c: 0x8132, 0x45d: 0x8132, -+ 0x45e: 0x8132, 0x45f: 0x8132, 0x460: 0x8132, 0x461: 0x8132, 0x462: 0x8132, 0x463: 0x8132, -+ 0x464: 0x8132, 0x465: 0x8132, 0x466: 0x8132, 0x467: 0x8132, 0x468: 0x8132, 0x469: 0x8132, -+ 0x46a: 0x8132, 0x46b: 0x8132, 0x46c: 0x8132, 0x46d: 0x8132, 0x46e: 0x8132, 0x46f: 0x8132, -+ 0x470: 0x8132, 0x471: 0x8132, 0x472: 0x8132, 0x473: 0x8132, 0x474: 0x8132, 0x475: 0x8132, -+ 0x476: 0x8133, 0x477: 0x8131, 0x478: 0x8131, 0x479: 0x812d, 0x47b: 0x8132, -+ 0x47c: 0x8134, 0x47d: 0x812d, 0x47e: 0x8132, 0x47f: 0x812d, -+ // Block 0x12, offset 0x480 -+ 0x480: 0x2f9a, 0x481: 0x32a6, 0x482: 0x2fa4, 0x483: 0x32b0, 0x484: 0x2fa9, 0x485: 0x32b5, -+ 0x486: 0x2fae, 0x487: 0x32ba, 0x488: 0x38cf, 0x489: 0x3a5e, 0x48a: 0x2fc7, 0x48b: 0x32d3, -+ 0x48c: 0x2fd1, 0x48d: 0x32dd, 0x48e: 0x2fe0, 0x48f: 0x32ec, 0x490: 0x2fd6, 0x491: 0x32e2, -+ 0x492: 0x2fdb, 0x493: 0x32e7, 0x494: 0x38f2, 0x495: 0x3a81, 0x496: 0x38f9, 0x497: 0x3a88, -+ 0x498: 0x301c, 0x499: 0x3328, 0x49a: 0x3021, 0x49b: 0x332d, 0x49c: 0x3907, 0x49d: 0x3a96, -+ 0x49e: 0x3026, 0x49f: 0x3332, 0x4a0: 0x3035, 0x4a1: 0x3341, 0x4a2: 0x3053, 0x4a3: 0x335f, -+ 0x4a4: 0x3062, 0x4a5: 0x336e, 0x4a6: 0x3058, 0x4a7: 0x3364, 0x4a8: 0x3067, 0x4a9: 0x3373, -+ 0x4aa: 0x306c, 0x4ab: 0x3378, 0x4ac: 0x30b2, 0x4ad: 0x33be, 0x4ae: 0x390e, 0x4af: 0x3a9d, -+ 0x4b0: 0x30bc, 0x4b1: 0x33cd, 0x4b2: 0x30c6, 0x4b3: 0x33d7, 0x4b4: 0x30d0, 0x4b5: 0x33e1, -+ 0x4b6: 0x46c7, 0x4b7: 0x4758, 0x4b8: 0x3915, 0x4b9: 0x3aa4, 0x4ba: 0x30e9, 0x4bb: 0x33fa, -+ 0x4bc: 0x30e4, 0x4bd: 0x33f5, 0x4be: 0x30ee, 0x4bf: 0x33ff, -+ // Block 0x13, offset 0x4c0 -+ 0x4c0: 0x30f3, 0x4c1: 0x3404, 0x4c2: 0x30f8, 0x4c3: 0x3409, 0x4c4: 0x310c, 0x4c5: 0x341d, -+ 0x4c6: 0x3116, 0x4c7: 0x3427, 0x4c8: 0x3125, 0x4c9: 0x3436, 0x4ca: 0x3120, 0x4cb: 0x3431, -+ 0x4cc: 0x3938, 0x4cd: 0x3ac7, 0x4ce: 0x3946, 0x4cf: 0x3ad5, 0x4d0: 0x394d, 0x4d1: 0x3adc, -+ 0x4d2: 0x3954, 0x4d3: 0x3ae3, 0x4d4: 0x3152, 0x4d5: 0x3463, 0x4d6: 0x3157, 0x4d7: 0x3468, -+ 0x4d8: 0x3161, 0x4d9: 0x3472, 0x4da: 0x46f4, 0x4db: 0x4785, 0x4dc: 0x399a, 0x4dd: 0x3b29, -+ 0x4de: 0x317a, 0x4df: 0x348b, 0x4e0: 0x3184, 0x4e1: 0x3495, 0x4e2: 0x4703, 0x4e3: 0x4794, -+ 0x4e4: 0x39a1, 0x4e5: 0x3b30, 0x4e6: 0x39a8, 0x4e7: 0x3b37, 0x4e8: 0x39af, 0x4e9: 0x3b3e, -+ 0x4ea: 0x3193, 0x4eb: 0x34a4, 0x4ec: 0x319d, 0x4ed: 0x34b3, 0x4ee: 0x31b1, 0x4ef: 0x34c7, -+ 0x4f0: 0x31ac, 0x4f1: 0x34c2, 0x4f2: 0x31ed, 0x4f3: 0x3503, 0x4f4: 0x31fc, 0x4f5: 0x3512, -+ 0x4f6: 0x31f7, 0x4f7: 0x350d, 0x4f8: 0x39b6, 0x4f9: 0x3b45, 0x4fa: 0x39bd, 0x4fb: 0x3b4c, -+ 0x4fc: 0x3201, 0x4fd: 0x3517, 0x4fe: 0x3206, 0x4ff: 0x351c, -+ // Block 0x14, offset 0x500 -+ 0x500: 0x320b, 0x501: 0x3521, 0x502: 0x3210, 0x503: 0x3526, 0x504: 0x321f, 0x505: 0x3535, -+ 0x506: 0x321a, 0x507: 0x3530, 0x508: 0x3224, 0x509: 0x353f, 0x50a: 0x3229, 0x50b: 0x3544, -+ 0x50c: 0x322e, 0x50d: 0x3549, 0x50e: 0x324c, 0x50f: 0x3567, 0x510: 0x3265, 0x511: 0x3585, -+ 0x512: 0x3274, 0x513: 0x3594, 0x514: 0x3279, 0x515: 0x3599, 0x516: 0x337d, 0x517: 0x34a9, -+ 0x518: 0x353a, 0x519: 0x3576, 0x51b: 0x35d4, -+ 0x520: 0x46a4, 0x521: 0x4735, 0x522: 0x2f86, 0x523: 0x3292, -+ 0x524: 0x387b, 0x525: 0x3a0a, 0x526: 0x3874, 0x527: 0x3a03, 0x528: 0x3889, 0x529: 0x3a18, -+ 0x52a: 0x3882, 0x52b: 0x3a11, 0x52c: 0x38c1, 0x52d: 0x3a50, 0x52e: 0x3897, 0x52f: 0x3a26, -+ 0x530: 0x3890, 0x531: 0x3a1f, 0x532: 0x38a5, 0x533: 0x3a34, 0x534: 0x389e, 0x535: 0x3a2d, -+ 0x536: 0x38c8, 0x537: 0x3a57, 0x538: 0x46b8, 0x539: 0x4749, 0x53a: 0x3003, 0x53b: 0x330f, -+ 0x53c: 0x2fef, 0x53d: 0x32fb, 0x53e: 0x38dd, 0x53f: 0x3a6c, -+ // Block 0x15, offset 0x540 -+ 0x540: 0x38d6, 0x541: 0x3a65, 0x542: 0x38eb, 0x543: 0x3a7a, 0x544: 0x38e4, 0x545: 0x3a73, -+ 0x546: 0x3900, 0x547: 0x3a8f, 0x548: 0x3094, 0x549: 0x33a0, 0x54a: 0x30a8, 0x54b: 0x33b4, -+ 0x54c: 0x46ea, 0x54d: 0x477b, 0x54e: 0x3139, 0x54f: 0x344a, 0x550: 0x3923, 0x551: 0x3ab2, -+ 0x552: 0x391c, 0x553: 0x3aab, 0x554: 0x3931, 0x555: 0x3ac0, 0x556: 0x392a, 0x557: 0x3ab9, -+ 0x558: 0x398c, 0x559: 0x3b1b, 0x55a: 0x3970, 0x55b: 0x3aff, 0x55c: 0x3969, 0x55d: 0x3af8, -+ 0x55e: 0x397e, 0x55f: 0x3b0d, 0x560: 0x3977, 0x561: 0x3b06, 0x562: 0x3985, 0x563: 0x3b14, -+ 0x564: 0x31e8, 0x565: 0x34fe, 0x566: 0x31ca, 0x567: 0x34e0, 0x568: 0x39e7, 0x569: 0x3b76, -+ 0x56a: 0x39e0, 0x56b: 0x3b6f, 0x56c: 0x39f5, 0x56d: 0x3b84, 0x56e: 0x39ee, 0x56f: 0x3b7d, -+ 0x570: 0x39fc, 0x571: 0x3b8b, 0x572: 0x3233, 0x573: 0x354e, 0x574: 0x325b, 0x575: 0x357b, -+ 0x576: 0x3256, 0x577: 0x3571, 0x578: 0x3242, 0x579: 0x355d, -+ // Block 0x16, offset 0x580 -+ 0x580: 0x4807, 0x581: 0x480d, 0x582: 0x4921, 0x583: 0x4939, 0x584: 0x4929, 0x585: 0x4941, -+ 0x586: 0x4931, 0x587: 0x4949, 0x588: 0x47ad, 0x589: 0x47b3, 0x58a: 0x4891, 0x58b: 0x48a9, -+ 0x58c: 0x4899, 0x58d: 0x48b1, 0x58e: 0x48a1, 0x58f: 0x48b9, 0x590: 0x4819, 0x591: 0x481f, -+ 0x592: 0x3dbb, 0x593: 0x3dcb, 0x594: 0x3dc3, 0x595: 0x3dd3, -+ 0x598: 0x47b9, 0x599: 0x47bf, 0x59a: 0x3ceb, 0x59b: 0x3cfb, 0x59c: 0x3cf3, 0x59d: 0x3d03, -+ 0x5a0: 0x4831, 0x5a1: 0x4837, 0x5a2: 0x4951, 0x5a3: 0x4969, -+ 0x5a4: 0x4959, 0x5a5: 0x4971, 0x5a6: 0x4961, 0x5a7: 0x4979, 0x5a8: 0x47c5, 0x5a9: 0x47cb, -+ 0x5aa: 0x48c1, 0x5ab: 0x48d9, 0x5ac: 0x48c9, 0x5ad: 0x48e1, 0x5ae: 0x48d1, 0x5af: 0x48e9, -+ 0x5b0: 0x4849, 0x5b1: 0x484f, 0x5b2: 0x3e1b, 0x5b3: 0x3e33, 0x5b4: 0x3e23, 0x5b5: 0x3e3b, -+ 0x5b6: 0x3e2b, 0x5b7: 0x3e43, 0x5b8: 0x47d1, 0x5b9: 0x47d7, 0x5ba: 0x3d1b, 0x5bb: 0x3d33, -+ 0x5bc: 0x3d23, 0x5bd: 0x3d3b, 0x5be: 0x3d2b, 0x5bf: 0x3d43, -+ // Block 0x17, offset 0x5c0 -+ 0x5c0: 0x4855, 0x5c1: 0x485b, 0x5c2: 0x3e4b, 0x5c3: 0x3e5b, 0x5c4: 0x3e53, 0x5c5: 0x3e63, -+ 0x5c8: 0x47dd, 0x5c9: 0x47e3, 0x5ca: 0x3d4b, 0x5cb: 0x3d5b, -+ 0x5cc: 0x3d53, 0x5cd: 0x3d63, 0x5d0: 0x4867, 0x5d1: 0x486d, -+ 0x5d2: 0x3e83, 0x5d3: 0x3e9b, 0x5d4: 0x3e8b, 0x5d5: 0x3ea3, 0x5d6: 0x3e93, 0x5d7: 0x3eab, -+ 0x5d9: 0x47e9, 0x5db: 0x3d6b, 0x5dd: 0x3d73, -+ 0x5df: 0x3d7b, 0x5e0: 0x487f, 0x5e1: 0x4885, 0x5e2: 0x4981, 0x5e3: 0x4999, -+ 0x5e4: 0x4989, 0x5e5: 0x49a1, 0x5e6: 0x4991, 0x5e7: 0x49a9, 0x5e8: 0x47ef, 0x5e9: 0x47f5, -+ 0x5ea: 0x48f1, 0x5eb: 0x4909, 0x5ec: 0x48f9, 0x5ed: 0x4911, 0x5ee: 0x4901, 0x5ef: 0x4919, -+ 0x5f0: 0x47fb, 0x5f1: 0x4321, 0x5f2: 0x3694, 0x5f3: 0x4327, 0x5f4: 0x4825, 0x5f5: 0x432d, -+ 0x5f6: 0x36a6, 0x5f7: 0x4333, 0x5f8: 0x36c4, 0x5f9: 0x4339, 0x5fa: 0x36dc, 0x5fb: 0x433f, -+ 0x5fc: 0x4873, 0x5fd: 0x4345, -+ // Block 0x18, offset 0x600 -+ 0x600: 0x3da3, 0x601: 0x3dab, 0x602: 0x4187, 0x603: 0x41a5, 0x604: 0x4191, 0x605: 0x41af, -+ 0x606: 0x419b, 0x607: 0x41b9, 0x608: 0x3cdb, 0x609: 0x3ce3, 0x60a: 0x40d3, 0x60b: 0x40f1, -+ 0x60c: 0x40dd, 0x60d: 0x40fb, 0x60e: 0x40e7, 0x60f: 0x4105, 0x610: 0x3deb, 0x611: 0x3df3, -+ 0x612: 0x41c3, 0x613: 0x41e1, 0x614: 0x41cd, 0x615: 0x41eb, 0x616: 0x41d7, 0x617: 0x41f5, -+ 0x618: 0x3d0b, 0x619: 0x3d13, 0x61a: 0x410f, 0x61b: 0x412d, 0x61c: 0x4119, 0x61d: 0x4137, -+ 0x61e: 0x4123, 0x61f: 0x4141, 0x620: 0x3ec3, 0x621: 0x3ecb, 0x622: 0x41ff, 0x623: 0x421d, -+ 0x624: 0x4209, 0x625: 0x4227, 0x626: 0x4213, 0x627: 0x4231, 0x628: 0x3d83, 0x629: 0x3d8b, -+ 0x62a: 0x414b, 0x62b: 0x4169, 0x62c: 0x4155, 0x62d: 0x4173, 0x62e: 0x415f, 0x62f: 0x417d, -+ 0x630: 0x3688, 0x631: 0x3682, 0x632: 0x3d93, 0x633: 0x368e, 0x634: 0x3d9b, -+ 0x636: 0x4813, 0x637: 0x3db3, 0x638: 0x35f8, 0x639: 0x35f2, 0x63a: 0x35e6, 0x63b: 0x42f1, -+ 0x63c: 0x35fe, 0x63d: 0x8100, 0x63e: 0x01d3, 0x63f: 0xa100, -+ // Block 0x19, offset 0x640 -+ 0x640: 0x8100, 0x641: 0x35aa, 0x642: 0x3ddb, 0x643: 0x36a0, 0x644: 0x3de3, -+ 0x646: 0x483d, 0x647: 0x3dfb, 0x648: 0x3604, 0x649: 0x42f7, 0x64a: 0x3610, 0x64b: 0x42fd, -+ 0x64c: 0x361c, 0x64d: 0x3b92, 0x64e: 0x3b99, 0x64f: 0x3ba0, 0x650: 0x36b8, 0x651: 0x36b2, -+ 0x652: 0x3e03, 0x653: 0x44e7, 0x656: 0x36be, 0x657: 0x3e13, -+ 0x658: 0x3634, 0x659: 0x362e, 0x65a: 0x3622, 0x65b: 0x4303, 0x65d: 0x3ba7, -+ 0x65e: 0x3bae, 0x65f: 0x3bb5, 0x660: 0x36ee, 0x661: 0x36e8, 0x662: 0x3e6b, 0x663: 0x44ef, -+ 0x664: 0x36d0, 0x665: 0x36d6, 0x666: 0x36f4, 0x667: 0x3e7b, 0x668: 0x3664, 0x669: 0x365e, -+ 0x66a: 0x3652, 0x66b: 0x430f, 0x66c: 0x364c, 0x66d: 0x359e, 0x66e: 0x42eb, 0x66f: 0x0081, -+ 0x672: 0x3eb3, 0x673: 0x36fa, 0x674: 0x3ebb, -+ 0x676: 0x488b, 0x677: 0x3ed3, 0x678: 0x3640, 0x679: 0x4309, 0x67a: 0x3670, 0x67b: 0x431b, -+ 0x67c: 0x367c, 0x67d: 0x4259, 0x67e: 0xa100, -+ // Block 0x1a, offset 0x680 -+ 0x681: 0x3c09, 0x683: 0xa000, 0x684: 0x3c10, 0x685: 0xa000, -+ 0x687: 0x3c17, 0x688: 0xa000, 0x689: 0x3c1e, -+ 0x68d: 0xa000, -+ 0x6a0: 0x2f68, 0x6a1: 0xa000, 0x6a2: 0x3c2c, -+ 0x6a4: 0xa000, 0x6a5: 0xa000, -+ 0x6ad: 0x3c25, 0x6ae: 0x2f63, 0x6af: 0x2f6d, -+ 0x6b0: 0x3c33, 0x6b1: 0x3c3a, 0x6b2: 0xa000, 0x6b3: 0xa000, 0x6b4: 0x3c41, 0x6b5: 0x3c48, -+ 0x6b6: 0xa000, 0x6b7: 0xa000, 0x6b8: 0x3c4f, 0x6b9: 0x3c56, 0x6ba: 0xa000, 0x6bb: 0xa000, -+ 0x6bc: 0xa000, 0x6bd: 0xa000, -+ // Block 0x1b, offset 0x6c0 -+ 0x6c0: 0x3c5d, 0x6c1: 0x3c64, 0x6c2: 0xa000, 0x6c3: 0xa000, 0x6c4: 0x3c79, 0x6c5: 0x3c80, -+ 0x6c6: 0xa000, 0x6c7: 0xa000, 0x6c8: 0x3c87, 0x6c9: 0x3c8e, -+ 0x6d1: 0xa000, -+ 0x6d2: 0xa000, -+ 0x6e2: 0xa000, -+ 0x6e8: 0xa000, 0x6e9: 0xa000, -+ 0x6eb: 0xa000, 0x6ec: 0x3ca3, 0x6ed: 0x3caa, 0x6ee: 0x3cb1, 0x6ef: 0x3cb8, -+ 0x6f2: 0xa000, 0x6f3: 0xa000, 0x6f4: 0xa000, 0x6f5: 0xa000, -+ // Block 0x1c, offset 0x700 -+ 0x706: 0xa000, 0x70b: 0xa000, -+ 0x70c: 0x3f0b, 0x70d: 0xa000, 0x70e: 0x3f13, 0x70f: 0xa000, 0x710: 0x3f1b, 0x711: 0xa000, -+ 0x712: 0x3f23, 0x713: 0xa000, 0x714: 0x3f2b, 0x715: 0xa000, 0x716: 0x3f33, 0x717: 0xa000, -+ 0x718: 0x3f3b, 0x719: 0xa000, 0x71a: 0x3f43, 0x71b: 0xa000, 0x71c: 0x3f4b, 0x71d: 0xa000, -+ 0x71e: 0x3f53, 0x71f: 0xa000, 0x720: 0x3f5b, 0x721: 0xa000, 0x722: 0x3f63, -+ 0x724: 0xa000, 0x725: 0x3f6b, 0x726: 0xa000, 0x727: 0x3f73, 0x728: 0xa000, 0x729: 0x3f7b, -+ 0x72f: 0xa000, -+ 0x730: 0x3f83, 0x731: 0x3f8b, 0x732: 0xa000, 0x733: 0x3f93, 0x734: 0x3f9b, 0x735: 0xa000, -+ 0x736: 0x3fa3, 0x737: 0x3fab, 0x738: 0xa000, 0x739: 0x3fb3, 0x73a: 0x3fbb, 0x73b: 0xa000, -+ 0x73c: 0x3fc3, 0x73d: 0x3fcb, -+ // Block 0x1d, offset 0x740 -+ 0x754: 0x3f03, -+ 0x759: 0x9903, 0x75a: 0x9903, 0x75b: 0x8100, 0x75c: 0x8100, 0x75d: 0xa000, -+ 0x75e: 0x3fd3, -+ 0x766: 0xa000, -+ 0x76b: 0xa000, 0x76c: 0x3fe3, 0x76d: 0xa000, 0x76e: 0x3feb, 0x76f: 0xa000, -+ 0x770: 0x3ff3, 0x771: 0xa000, 0x772: 0x3ffb, 0x773: 0xa000, 0x774: 0x4003, 0x775: 0xa000, -+ 0x776: 0x400b, 0x777: 0xa000, 0x778: 0x4013, 0x779: 0xa000, 0x77a: 0x401b, 0x77b: 0xa000, -+ 0x77c: 0x4023, 0x77d: 0xa000, 0x77e: 0x402b, 0x77f: 0xa000, -+ // Block 0x1e, offset 0x780 -+ 0x780: 0x4033, 0x781: 0xa000, 0x782: 0x403b, 0x784: 0xa000, 0x785: 0x4043, -+ 0x786: 0xa000, 0x787: 0x404b, 0x788: 0xa000, 0x789: 0x4053, -+ 0x78f: 0xa000, 0x790: 0x405b, 0x791: 0x4063, -+ 0x792: 0xa000, 0x793: 0x406b, 0x794: 0x4073, 0x795: 0xa000, 0x796: 0x407b, 0x797: 0x4083, -+ 0x798: 0xa000, 0x799: 0x408b, 0x79a: 0x4093, 0x79b: 0xa000, 0x79c: 0x409b, 0x79d: 0x40a3, -+ 0x7af: 0xa000, -+ 0x7b0: 0xa000, 0x7b1: 0xa000, 0x7b2: 0xa000, 0x7b4: 0x3fdb, -+ 0x7b7: 0x40ab, 0x7b8: 0x40b3, 0x7b9: 0x40bb, 0x7ba: 0x40c3, -+ 0x7bd: 0xa000, 0x7be: 0x40cb, -+ // Block 0x1f, offset 0x7c0 -+ 0x7c0: 0x1377, 0x7c1: 0x0cfb, 0x7c2: 0x13d3, 0x7c3: 0x139f, 0x7c4: 0x0e57, 0x7c5: 0x06eb, -+ 0x7c6: 0x08df, 0x7c7: 0x162b, 0x7c8: 0x162b, 0x7c9: 0x0a0b, 0x7ca: 0x145f, 0x7cb: 0x0943, -+ 0x7cc: 0x0a07, 0x7cd: 0x0bef, 0x7ce: 0x0fcf, 0x7cf: 0x115f, 0x7d0: 0x1297, 0x7d1: 0x12d3, -+ 0x7d2: 0x1307, 0x7d3: 0x141b, 0x7d4: 0x0d73, 0x7d5: 0x0dff, 0x7d6: 0x0eab, 0x7d7: 0x0f43, -+ 0x7d8: 0x125f, 0x7d9: 0x1447, 0x7da: 0x1573, 0x7db: 0x070f, 0x7dc: 0x08b3, 0x7dd: 0x0d87, -+ 0x7de: 0x0ecf, 0x7df: 0x1293, 0x7e0: 0x15c3, 0x7e1: 0x0ab3, 0x7e2: 0x0e77, 0x7e3: 0x1283, -+ 0x7e4: 0x1317, 0x7e5: 0x0c23, 0x7e6: 0x11bb, 0x7e7: 0x12df, 0x7e8: 0x0b1f, 0x7e9: 0x0d0f, -+ 0x7ea: 0x0e17, 0x7eb: 0x0f1b, 0x7ec: 0x1427, 0x7ed: 0x074f, 0x7ee: 0x07e7, 0x7ef: 0x0853, -+ 0x7f0: 0x0c8b, 0x7f1: 0x0d7f, 0x7f2: 0x0ecb, 0x7f3: 0x0fef, 0x7f4: 0x1177, 0x7f5: 0x128b, -+ 0x7f6: 0x12a3, 0x7f7: 0x13c7, 0x7f8: 0x14ef, 0x7f9: 0x15a3, 0x7fa: 0x15bf, 0x7fb: 0x102b, -+ 0x7fc: 0x106b, 0x7fd: 0x1123, 0x7fe: 0x1243, 0x7ff: 0x147b, -+ // Block 0x20, offset 0x800 -+ 0x800: 0x15cb, 0x801: 0x134b, 0x802: 0x09c7, 0x803: 0x0b3b, 0x804: 0x10db, 0x805: 0x119b, -+ 0x806: 0x0eff, 0x807: 0x1033, 0x808: 0x1397, 0x809: 0x14e7, 0x80a: 0x09c3, 0x80b: 0x0a8f, -+ 0x80c: 0x0d77, 0x80d: 0x0e2b, 0x80e: 0x0e5f, 0x80f: 0x1113, 0x810: 0x113b, 0x811: 0x14a7, -+ 0x812: 0x084f, 0x813: 0x11a7, 0x814: 0x07f3, 0x815: 0x07ef, 0x816: 0x1097, 0x817: 0x1127, -+ 0x818: 0x125b, 0x819: 0x14af, 0x81a: 0x1367, 0x81b: 0x0c27, 0x81c: 0x0d73, 0x81d: 0x1357, -+ 0x81e: 0x06f7, 0x81f: 0x0a63, 0x820: 0x0b93, 0x821: 0x0f2f, 0x822: 0x0faf, 0x823: 0x0873, -+ 0x824: 0x103b, 0x825: 0x075f, 0x826: 0x0b77, 0x827: 0x06d7, 0x828: 0x0deb, 0x829: 0x0ca3, -+ 0x82a: 0x110f, 0x82b: 0x08c7, 0x82c: 0x09b3, 0x82d: 0x0ffb, 0x82e: 0x1263, 0x82f: 0x133b, -+ 0x830: 0x0db7, 0x831: 0x13f7, 0x832: 0x0de3, 0x833: 0x0c37, 0x834: 0x121b, 0x835: 0x0c57, -+ 0x836: 0x0fab, 0x837: 0x072b, 0x838: 0x07a7, 0x839: 0x07eb, 0x83a: 0x0d53, 0x83b: 0x10fb, -+ 0x83c: 0x11f3, 0x83d: 0x1347, 0x83e: 0x145b, 0x83f: 0x085b, -+ // Block 0x21, offset 0x840 -+ 0x840: 0x090f, 0x841: 0x0a17, 0x842: 0x0b2f, 0x843: 0x0cbf, 0x844: 0x0e7b, 0x845: 0x103f, -+ 0x846: 0x1497, 0x847: 0x157b, 0x848: 0x15cf, 0x849: 0x15e7, 0x84a: 0x0837, 0x84b: 0x0cf3, -+ 0x84c: 0x0da3, 0x84d: 0x13eb, 0x84e: 0x0afb, 0x84f: 0x0bd7, 0x850: 0x0bf3, 0x851: 0x0c83, -+ 0x852: 0x0e6b, 0x853: 0x0eb7, 0x854: 0x0f67, 0x855: 0x108b, 0x856: 0x112f, 0x857: 0x1193, -+ 0x858: 0x13db, 0x859: 0x126b, 0x85a: 0x1403, 0x85b: 0x147f, 0x85c: 0x080f, 0x85d: 0x083b, -+ 0x85e: 0x0923, 0x85f: 0x0ea7, 0x860: 0x12f3, 0x861: 0x133b, 0x862: 0x0b1b, 0x863: 0x0b8b, -+ 0x864: 0x0c4f, 0x865: 0x0daf, 0x866: 0x10d7, 0x867: 0x0f23, 0x868: 0x073b, 0x869: 0x097f, -+ 0x86a: 0x0a63, 0x86b: 0x0ac7, 0x86c: 0x0b97, 0x86d: 0x0f3f, 0x86e: 0x0f5b, 0x86f: 0x116b, -+ 0x870: 0x118b, 0x871: 0x1463, 0x872: 0x14e3, 0x873: 0x14f3, 0x874: 0x152f, 0x875: 0x0753, -+ 0x876: 0x107f, 0x877: 0x144f, 0x878: 0x14cb, 0x879: 0x0baf, 0x87a: 0x0717, 0x87b: 0x0777, -+ 0x87c: 0x0a67, 0x87d: 0x0a87, 0x87e: 0x0caf, 0x87f: 0x0d73, -+ // Block 0x22, offset 0x880 -+ 0x880: 0x0ec3, 0x881: 0x0fcb, 0x882: 0x1277, 0x883: 0x1417, 0x884: 0x1623, 0x885: 0x0ce3, -+ 0x886: 0x14a3, 0x887: 0x0833, 0x888: 0x0d2f, 0x889: 0x0d3b, 0x88a: 0x0e0f, 0x88b: 0x0e47, -+ 0x88c: 0x0f4b, 0x88d: 0x0fa7, 0x88e: 0x1027, 0x88f: 0x110b, 0x890: 0x153b, 0x891: 0x07af, -+ 0x892: 0x0c03, 0x893: 0x14b3, 0x894: 0x0767, 0x895: 0x0aab, 0x896: 0x0e2f, 0x897: 0x13df, -+ 0x898: 0x0b67, 0x899: 0x0bb7, 0x89a: 0x0d43, 0x89b: 0x0f2f, 0x89c: 0x14bb, 0x89d: 0x0817, -+ 0x89e: 0x08ff, 0x89f: 0x0a97, 0x8a0: 0x0cd3, 0x8a1: 0x0d1f, 0x8a2: 0x0d5f, 0x8a3: 0x0df3, -+ 0x8a4: 0x0f47, 0x8a5: 0x0fbb, 0x8a6: 0x1157, 0x8a7: 0x12f7, 0x8a8: 0x1303, 0x8a9: 0x1457, -+ 0x8aa: 0x14d7, 0x8ab: 0x0883, 0x8ac: 0x0e4b, 0x8ad: 0x0903, 0x8ae: 0x0ec7, 0x8af: 0x0f6b, -+ 0x8b0: 0x1287, 0x8b1: 0x14bf, 0x8b2: 0x15ab, 0x8b3: 0x15d3, 0x8b4: 0x0d37, 0x8b5: 0x0e27, -+ 0x8b6: 0x11c3, 0x8b7: 0x10b7, 0x8b8: 0x10c3, 0x8b9: 0x10e7, 0x8ba: 0x0f17, 0x8bb: 0x0e9f, -+ 0x8bc: 0x1363, 0x8bd: 0x0733, 0x8be: 0x122b, 0x8bf: 0x081b, -+ // Block 0x23, offset 0x8c0 -+ 0x8c0: 0x080b, 0x8c1: 0x0b0b, 0x8c2: 0x0c2b, 0x8c3: 0x10f3, 0x8c4: 0x0a53, 0x8c5: 0x0e03, -+ 0x8c6: 0x0cef, 0x8c7: 0x13e7, 0x8c8: 0x12e7, 0x8c9: 0x14ab, 0x8ca: 0x1323, 0x8cb: 0x0b27, -+ 0x8cc: 0x0787, 0x8cd: 0x095b, 0x8d0: 0x09af, -+ 0x8d2: 0x0cdf, 0x8d5: 0x07f7, 0x8d6: 0x0f1f, 0x8d7: 0x0fe3, -+ 0x8d8: 0x1047, 0x8d9: 0x1063, 0x8da: 0x1067, 0x8db: 0x107b, 0x8dc: 0x14fb, 0x8dd: 0x10eb, -+ 0x8de: 0x116f, 0x8e0: 0x128f, 0x8e2: 0x1353, -+ 0x8e5: 0x1407, 0x8e6: 0x1433, -+ 0x8ea: 0x154f, 0x8eb: 0x1553, 0x8ec: 0x1557, 0x8ed: 0x15bb, 0x8ee: 0x142b, 0x8ef: 0x14c7, -+ 0x8f0: 0x0757, 0x8f1: 0x077b, 0x8f2: 0x078f, 0x8f3: 0x084b, 0x8f4: 0x0857, 0x8f5: 0x0897, -+ 0x8f6: 0x094b, 0x8f7: 0x0967, 0x8f8: 0x096f, 0x8f9: 0x09ab, 0x8fa: 0x09b7, 0x8fb: 0x0a93, -+ 0x8fc: 0x0a9b, 0x8fd: 0x0ba3, 0x8fe: 0x0bcb, 0x8ff: 0x0bd3, -+ // Block 0x24, offset 0x900 -+ 0x900: 0x0beb, 0x901: 0x0c97, 0x902: 0x0cc7, 0x903: 0x0ce7, 0x904: 0x0d57, 0x905: 0x0e1b, -+ 0x906: 0x0e37, 0x907: 0x0e67, 0x908: 0x0ebb, 0x909: 0x0edb, 0x90a: 0x0f4f, 0x90b: 0x102f, -+ 0x90c: 0x104b, 0x90d: 0x1053, 0x90e: 0x104f, 0x90f: 0x1057, 0x910: 0x105b, 0x911: 0x105f, -+ 0x912: 0x1073, 0x913: 0x1077, 0x914: 0x109b, 0x915: 0x10af, 0x916: 0x10cb, 0x917: 0x112f, -+ 0x918: 0x1137, 0x919: 0x113f, 0x91a: 0x1153, 0x91b: 0x117b, 0x91c: 0x11cb, 0x91d: 0x11ff, -+ 0x91e: 0x11ff, 0x91f: 0x1267, 0x920: 0x130f, 0x921: 0x1327, 0x922: 0x135b, 0x923: 0x135f, -+ 0x924: 0x13a3, 0x925: 0x13a7, 0x926: 0x13ff, 0x927: 0x1407, 0x928: 0x14db, 0x929: 0x151f, -+ 0x92a: 0x1537, 0x92b: 0x0b9b, 0x92c: 0x171e, 0x92d: 0x11e3, -+ 0x930: 0x06df, 0x931: 0x07e3, 0x932: 0x07a3, 0x933: 0x074b, 0x934: 0x078b, 0x935: 0x07b7, -+ 0x936: 0x0847, 0x937: 0x0863, 0x938: 0x094b, 0x939: 0x0937, 0x93a: 0x0947, 0x93b: 0x0963, -+ 0x93c: 0x09af, 0x93d: 0x09bf, 0x93e: 0x0a03, 0x93f: 0x0a0f, -+ // Block 0x25, offset 0x940 -+ 0x940: 0x0a2b, 0x941: 0x0a3b, 0x942: 0x0b23, 0x943: 0x0b2b, 0x944: 0x0b5b, 0x945: 0x0b7b, -+ 0x946: 0x0bab, 0x947: 0x0bc3, 0x948: 0x0bb3, 0x949: 0x0bd3, 0x94a: 0x0bc7, 0x94b: 0x0beb, -+ 0x94c: 0x0c07, 0x94d: 0x0c5f, 0x94e: 0x0c6b, 0x94f: 0x0c73, 0x950: 0x0c9b, 0x951: 0x0cdf, -+ 0x952: 0x0d0f, 0x953: 0x0d13, 0x954: 0x0d27, 0x955: 0x0da7, 0x956: 0x0db7, 0x957: 0x0e0f, -+ 0x958: 0x0e5b, 0x959: 0x0e53, 0x95a: 0x0e67, 0x95b: 0x0e83, 0x95c: 0x0ebb, 0x95d: 0x1013, -+ 0x95e: 0x0edf, 0x95f: 0x0f13, 0x960: 0x0f1f, 0x961: 0x0f5f, 0x962: 0x0f7b, 0x963: 0x0f9f, -+ 0x964: 0x0fc3, 0x965: 0x0fc7, 0x966: 0x0fe3, 0x967: 0x0fe7, 0x968: 0x0ff7, 0x969: 0x100b, -+ 0x96a: 0x1007, 0x96b: 0x1037, 0x96c: 0x10b3, 0x96d: 0x10cb, 0x96e: 0x10e3, 0x96f: 0x111b, -+ 0x970: 0x112f, 0x971: 0x114b, 0x972: 0x117b, 0x973: 0x122f, 0x974: 0x1257, 0x975: 0x12cb, -+ 0x976: 0x1313, 0x977: 0x131f, 0x978: 0x1327, 0x979: 0x133f, 0x97a: 0x1353, 0x97b: 0x1343, -+ 0x97c: 0x135b, 0x97d: 0x1357, 0x97e: 0x134f, 0x97f: 0x135f, -+ // Block 0x26, offset 0x980 -+ 0x980: 0x136b, 0x981: 0x13a7, 0x982: 0x13e3, 0x983: 0x1413, 0x984: 0x144b, 0x985: 0x146b, -+ 0x986: 0x14b7, 0x987: 0x14db, 0x988: 0x14fb, 0x989: 0x150f, 0x98a: 0x151f, 0x98b: 0x152b, -+ 0x98c: 0x1537, 0x98d: 0x158b, 0x98e: 0x162b, 0x98f: 0x16b5, 0x990: 0x16b0, 0x991: 0x16e2, -+ 0x992: 0x0607, 0x993: 0x062f, 0x994: 0x0633, 0x995: 0x1764, 0x996: 0x1791, 0x997: 0x1809, -+ 0x998: 0x1617, 0x999: 0x1627, -+ // Block 0x27, offset 0x9c0 -+ 0x9c0: 0x06fb, 0x9c1: 0x06f3, 0x9c2: 0x0703, 0x9c3: 0x1647, 0x9c4: 0x0747, 0x9c5: 0x0757, -+ 0x9c6: 0x075b, 0x9c7: 0x0763, 0x9c8: 0x076b, 0x9c9: 0x076f, 0x9ca: 0x077b, 0x9cb: 0x0773, -+ 0x9cc: 0x05b3, 0x9cd: 0x165b, 0x9ce: 0x078f, 0x9cf: 0x0793, 0x9d0: 0x0797, 0x9d1: 0x07b3, -+ 0x9d2: 0x164c, 0x9d3: 0x05b7, 0x9d4: 0x079f, 0x9d5: 0x07bf, 0x9d6: 0x1656, 0x9d7: 0x07cf, -+ 0x9d8: 0x07d7, 0x9d9: 0x0737, 0x9da: 0x07df, 0x9db: 0x07e3, 0x9dc: 0x1831, 0x9dd: 0x07ff, -+ 0x9de: 0x0807, 0x9df: 0x05bf, 0x9e0: 0x081f, 0x9e1: 0x0823, 0x9e2: 0x082b, 0x9e3: 0x082f, -+ 0x9e4: 0x05c3, 0x9e5: 0x0847, 0x9e6: 0x084b, 0x9e7: 0x0857, 0x9e8: 0x0863, 0x9e9: 0x0867, -+ 0x9ea: 0x086b, 0x9eb: 0x0873, 0x9ec: 0x0893, 0x9ed: 0x0897, 0x9ee: 0x089f, 0x9ef: 0x08af, -+ 0x9f0: 0x08b7, 0x9f1: 0x08bb, 0x9f2: 0x08bb, 0x9f3: 0x08bb, 0x9f4: 0x166a, 0x9f5: 0x0e93, -+ 0x9f6: 0x08cf, 0x9f7: 0x08d7, 0x9f8: 0x166f, 0x9f9: 0x08e3, 0x9fa: 0x08eb, 0x9fb: 0x08f3, -+ 0x9fc: 0x091b, 0x9fd: 0x0907, 0x9fe: 0x0913, 0x9ff: 0x0917, -+ // Block 0x28, offset 0xa00 -+ 0xa00: 0x091f, 0xa01: 0x0927, 0xa02: 0x092b, 0xa03: 0x0933, 0xa04: 0x093b, 0xa05: 0x093f, -+ 0xa06: 0x093f, 0xa07: 0x0947, 0xa08: 0x094f, 0xa09: 0x0953, 0xa0a: 0x095f, 0xa0b: 0x0983, -+ 0xa0c: 0x0967, 0xa0d: 0x0987, 0xa0e: 0x096b, 0xa0f: 0x0973, 0xa10: 0x080b, 0xa11: 0x09cf, -+ 0xa12: 0x0997, 0xa13: 0x099b, 0xa14: 0x099f, 0xa15: 0x0993, 0xa16: 0x09a7, 0xa17: 0x09a3, -+ 0xa18: 0x09bb, 0xa19: 0x1674, 0xa1a: 0x09d7, 0xa1b: 0x09db, 0xa1c: 0x09e3, 0xa1d: 0x09ef, -+ 0xa1e: 0x09f7, 0xa1f: 0x0a13, 0xa20: 0x1679, 0xa21: 0x167e, 0xa22: 0x0a1f, 0xa23: 0x0a23, -+ 0xa24: 0x0a27, 0xa25: 0x0a1b, 0xa26: 0x0a2f, 0xa27: 0x05c7, 0xa28: 0x05cb, 0xa29: 0x0a37, -+ 0xa2a: 0x0a3f, 0xa2b: 0x0a3f, 0xa2c: 0x1683, 0xa2d: 0x0a5b, 0xa2e: 0x0a5f, 0xa2f: 0x0a63, -+ 0xa30: 0x0a6b, 0xa31: 0x1688, 0xa32: 0x0a73, 0xa33: 0x0a77, 0xa34: 0x0b4f, 0xa35: 0x0a7f, -+ 0xa36: 0x05cf, 0xa37: 0x0a8b, 0xa38: 0x0a9b, 0xa39: 0x0aa7, 0xa3a: 0x0aa3, 0xa3b: 0x1692, -+ 0xa3c: 0x0aaf, 0xa3d: 0x1697, 0xa3e: 0x0abb, 0xa3f: 0x0ab7, -+ // Block 0x29, offset 0xa40 -+ 0xa40: 0x0abf, 0xa41: 0x0acf, 0xa42: 0x0ad3, 0xa43: 0x05d3, 0xa44: 0x0ae3, 0xa45: 0x0aeb, -+ 0xa46: 0x0aef, 0xa47: 0x0af3, 0xa48: 0x05d7, 0xa49: 0x169c, 0xa4a: 0x05db, 0xa4b: 0x0b0f, -+ 0xa4c: 0x0b13, 0xa4d: 0x0b17, 0xa4e: 0x0b1f, 0xa4f: 0x1863, 0xa50: 0x0b37, 0xa51: 0x16a6, -+ 0xa52: 0x16a6, 0xa53: 0x11d7, 0xa54: 0x0b47, 0xa55: 0x0b47, 0xa56: 0x05df, 0xa57: 0x16c9, -+ 0xa58: 0x179b, 0xa59: 0x0b57, 0xa5a: 0x0b5f, 0xa5b: 0x05e3, 0xa5c: 0x0b73, 0xa5d: 0x0b83, -+ 0xa5e: 0x0b87, 0xa5f: 0x0b8f, 0xa60: 0x0b9f, 0xa61: 0x05eb, 0xa62: 0x05e7, 0xa63: 0x0ba3, -+ 0xa64: 0x16ab, 0xa65: 0x0ba7, 0xa66: 0x0bbb, 0xa67: 0x0bbf, 0xa68: 0x0bc3, 0xa69: 0x0bbf, -+ 0xa6a: 0x0bcf, 0xa6b: 0x0bd3, 0xa6c: 0x0be3, 0xa6d: 0x0bdb, 0xa6e: 0x0bdf, 0xa6f: 0x0be7, -+ 0xa70: 0x0beb, 0xa71: 0x0bef, 0xa72: 0x0bfb, 0xa73: 0x0bff, 0xa74: 0x0c17, 0xa75: 0x0c1f, -+ 0xa76: 0x0c2f, 0xa77: 0x0c43, 0xa78: 0x16ba, 0xa79: 0x0c3f, 0xa7a: 0x0c33, 0xa7b: 0x0c4b, -+ 0xa7c: 0x0c53, 0xa7d: 0x0c67, 0xa7e: 0x16bf, 0xa7f: 0x0c6f, -+ // Block 0x2a, offset 0xa80 -+ 0xa80: 0x0c63, 0xa81: 0x0c5b, 0xa82: 0x05ef, 0xa83: 0x0c77, 0xa84: 0x0c7f, 0xa85: 0x0c87, -+ 0xa86: 0x0c7b, 0xa87: 0x05f3, 0xa88: 0x0c97, 0xa89: 0x0c9f, 0xa8a: 0x16c4, 0xa8b: 0x0ccb, -+ 0xa8c: 0x0cff, 0xa8d: 0x0cdb, 0xa8e: 0x05ff, 0xa8f: 0x0ce7, 0xa90: 0x05fb, 0xa91: 0x05f7, -+ 0xa92: 0x07c3, 0xa93: 0x07c7, 0xa94: 0x0d03, 0xa95: 0x0ceb, 0xa96: 0x11ab, 0xa97: 0x0663, -+ 0xa98: 0x0d0f, 0xa99: 0x0d13, 0xa9a: 0x0d17, 0xa9b: 0x0d2b, 0xa9c: 0x0d23, 0xa9d: 0x16dd, -+ 0xa9e: 0x0603, 0xa9f: 0x0d3f, 0xaa0: 0x0d33, 0xaa1: 0x0d4f, 0xaa2: 0x0d57, 0xaa3: 0x16e7, -+ 0xaa4: 0x0d5b, 0xaa5: 0x0d47, 0xaa6: 0x0d63, 0xaa7: 0x0607, 0xaa8: 0x0d67, 0xaa9: 0x0d6b, -+ 0xaaa: 0x0d6f, 0xaab: 0x0d7b, 0xaac: 0x16ec, 0xaad: 0x0d83, 0xaae: 0x060b, 0xaaf: 0x0d8f, -+ 0xab0: 0x16f1, 0xab1: 0x0d93, 0xab2: 0x060f, 0xab3: 0x0d9f, 0xab4: 0x0dab, 0xab5: 0x0db7, -+ 0xab6: 0x0dbb, 0xab7: 0x16f6, 0xab8: 0x168d, 0xab9: 0x16fb, 0xaba: 0x0ddb, 0xabb: 0x1700, -+ 0xabc: 0x0de7, 0xabd: 0x0def, 0xabe: 0x0ddf, 0xabf: 0x0dfb, -+ // Block 0x2b, offset 0xac0 -+ 0xac0: 0x0e0b, 0xac1: 0x0e1b, 0xac2: 0x0e0f, 0xac3: 0x0e13, 0xac4: 0x0e1f, 0xac5: 0x0e23, -+ 0xac6: 0x1705, 0xac7: 0x0e07, 0xac8: 0x0e3b, 0xac9: 0x0e3f, 0xaca: 0x0613, 0xacb: 0x0e53, -+ 0xacc: 0x0e4f, 0xacd: 0x170a, 0xace: 0x0e33, 0xacf: 0x0e6f, 0xad0: 0x170f, 0xad1: 0x1714, -+ 0xad2: 0x0e73, 0xad3: 0x0e87, 0xad4: 0x0e83, 0xad5: 0x0e7f, 0xad6: 0x0617, 0xad7: 0x0e8b, -+ 0xad8: 0x0e9b, 0xad9: 0x0e97, 0xada: 0x0ea3, 0xadb: 0x1651, 0xadc: 0x0eb3, 0xadd: 0x1719, -+ 0xade: 0x0ebf, 0xadf: 0x1723, 0xae0: 0x0ed3, 0xae1: 0x0edf, 0xae2: 0x0ef3, 0xae3: 0x1728, -+ 0xae4: 0x0f07, 0xae5: 0x0f0b, 0xae6: 0x172d, 0xae7: 0x1732, 0xae8: 0x0f27, 0xae9: 0x0f37, -+ 0xaea: 0x061b, 0xaeb: 0x0f3b, 0xaec: 0x061f, 0xaed: 0x061f, 0xaee: 0x0f53, 0xaef: 0x0f57, -+ 0xaf0: 0x0f5f, 0xaf1: 0x0f63, 0xaf2: 0x0f6f, 0xaf3: 0x0623, 0xaf4: 0x0f87, 0xaf5: 0x1737, -+ 0xaf6: 0x0fa3, 0xaf7: 0x173c, 0xaf8: 0x0faf, 0xaf9: 0x16a1, 0xafa: 0x0fbf, 0xafb: 0x1741, -+ 0xafc: 0x1746, 0xafd: 0x174b, 0xafe: 0x0627, 0xaff: 0x062b, -+ // Block 0x2c, offset 0xb00 -+ 0xb00: 0x0ff7, 0xb01: 0x1755, 0xb02: 0x1750, 0xb03: 0x175a, 0xb04: 0x175f, 0xb05: 0x0fff, -+ 0xb06: 0x1003, 0xb07: 0x1003, 0xb08: 0x100b, 0xb09: 0x0633, 0xb0a: 0x100f, 0xb0b: 0x0637, -+ 0xb0c: 0x063b, 0xb0d: 0x1769, 0xb0e: 0x1023, 0xb0f: 0x102b, 0xb10: 0x1037, 0xb11: 0x063f, -+ 0xb12: 0x176e, 0xb13: 0x105b, 0xb14: 0x1773, 0xb15: 0x1778, 0xb16: 0x107b, 0xb17: 0x1093, -+ 0xb18: 0x0643, 0xb19: 0x109b, 0xb1a: 0x109f, 0xb1b: 0x10a3, 0xb1c: 0x177d, 0xb1d: 0x1782, -+ 0xb1e: 0x1782, 0xb1f: 0x10bb, 0xb20: 0x0647, 0xb21: 0x1787, 0xb22: 0x10cf, 0xb23: 0x10d3, -+ 0xb24: 0x064b, 0xb25: 0x178c, 0xb26: 0x10ef, 0xb27: 0x064f, 0xb28: 0x10ff, 0xb29: 0x10f7, -+ 0xb2a: 0x1107, 0xb2b: 0x1796, 0xb2c: 0x111f, 0xb2d: 0x0653, 0xb2e: 0x112b, 0xb2f: 0x1133, -+ 0xb30: 0x1143, 0xb31: 0x0657, 0xb32: 0x17a0, 0xb33: 0x17a5, 0xb34: 0x065b, 0xb35: 0x17aa, -+ 0xb36: 0x115b, 0xb37: 0x17af, 0xb38: 0x1167, 0xb39: 0x1173, 0xb3a: 0x117b, 0xb3b: 0x17b4, -+ 0xb3c: 0x17b9, 0xb3d: 0x118f, 0xb3e: 0x17be, 0xb3f: 0x1197, -+ // Block 0x2d, offset 0xb40 -+ 0xb40: 0x16ce, 0xb41: 0x065f, 0xb42: 0x11af, 0xb43: 0x11b3, 0xb44: 0x0667, 0xb45: 0x11b7, -+ 0xb46: 0x0a33, 0xb47: 0x17c3, 0xb48: 0x17c8, 0xb49: 0x16d3, 0xb4a: 0x16d8, 0xb4b: 0x11d7, -+ 0xb4c: 0x11db, 0xb4d: 0x13f3, 0xb4e: 0x066b, 0xb4f: 0x1207, 0xb50: 0x1203, 0xb51: 0x120b, -+ 0xb52: 0x083f, 0xb53: 0x120f, 0xb54: 0x1213, 0xb55: 0x1217, 0xb56: 0x121f, 0xb57: 0x17cd, -+ 0xb58: 0x121b, 0xb59: 0x1223, 0xb5a: 0x1237, 0xb5b: 0x123b, 0xb5c: 0x1227, 0xb5d: 0x123f, -+ 0xb5e: 0x1253, 0xb5f: 0x1267, 0xb60: 0x1233, 0xb61: 0x1247, 0xb62: 0x124b, 0xb63: 0x124f, -+ 0xb64: 0x17d2, 0xb65: 0x17dc, 0xb66: 0x17d7, 0xb67: 0x066f, 0xb68: 0x126f, 0xb69: 0x1273, -+ 0xb6a: 0x127b, 0xb6b: 0x17f0, 0xb6c: 0x127f, 0xb6d: 0x17e1, 0xb6e: 0x0673, 0xb6f: 0x0677, -+ 0xb70: 0x17e6, 0xb71: 0x17eb, 0xb72: 0x067b, 0xb73: 0x129f, 0xb74: 0x12a3, 0xb75: 0x12a7, -+ 0xb76: 0x12ab, 0xb77: 0x12b7, 0xb78: 0x12b3, 0xb79: 0x12bf, 0xb7a: 0x12bb, 0xb7b: 0x12cb, -+ 0xb7c: 0x12c3, 0xb7d: 0x12c7, 0xb7e: 0x12cf, 0xb7f: 0x067f, -+ // Block 0x2e, offset 0xb80 -+ 0xb80: 0x12d7, 0xb81: 0x12db, 0xb82: 0x0683, 0xb83: 0x12eb, 0xb84: 0x12ef, 0xb85: 0x17f5, -+ 0xb86: 0x12fb, 0xb87: 0x12ff, 0xb88: 0x0687, 0xb89: 0x130b, 0xb8a: 0x05bb, 0xb8b: 0x17fa, -+ 0xb8c: 0x17ff, 0xb8d: 0x068b, 0xb8e: 0x068f, 0xb8f: 0x1337, 0xb90: 0x134f, 0xb91: 0x136b, -+ 0xb92: 0x137b, 0xb93: 0x1804, 0xb94: 0x138f, 0xb95: 0x1393, 0xb96: 0x13ab, 0xb97: 0x13b7, -+ 0xb98: 0x180e, 0xb99: 0x1660, 0xb9a: 0x13c3, 0xb9b: 0x13bf, 0xb9c: 0x13cb, 0xb9d: 0x1665, -+ 0xb9e: 0x13d7, 0xb9f: 0x13e3, 0xba0: 0x1813, 0xba1: 0x1818, 0xba2: 0x1423, 0xba3: 0x142f, -+ 0xba4: 0x1437, 0xba5: 0x181d, 0xba6: 0x143b, 0xba7: 0x1467, 0xba8: 0x1473, 0xba9: 0x1477, -+ 0xbaa: 0x146f, 0xbab: 0x1483, 0xbac: 0x1487, 0xbad: 0x1822, 0xbae: 0x1493, 0xbaf: 0x0693, -+ 0xbb0: 0x149b, 0xbb1: 0x1827, 0xbb2: 0x0697, 0xbb3: 0x14d3, 0xbb4: 0x0ac3, 0xbb5: 0x14eb, -+ 0xbb6: 0x182c, 0xbb7: 0x1836, 0xbb8: 0x069b, 0xbb9: 0x069f, 0xbba: 0x1513, 0xbbb: 0x183b, -+ 0xbbc: 0x06a3, 0xbbd: 0x1840, 0xbbe: 0x152b, 0xbbf: 0x152b, -+ // Block 0x2f, offset 0xbc0 -+ 0xbc0: 0x1533, 0xbc1: 0x1845, 0xbc2: 0x154b, 0xbc3: 0x06a7, 0xbc4: 0x155b, 0xbc5: 0x1567, -+ 0xbc6: 0x156f, 0xbc7: 0x1577, 0xbc8: 0x06ab, 0xbc9: 0x184a, 0xbca: 0x158b, 0xbcb: 0x15a7, -+ 0xbcc: 0x15b3, 0xbcd: 0x06af, 0xbce: 0x06b3, 0xbcf: 0x15b7, 0xbd0: 0x184f, 0xbd1: 0x06b7, -+ 0xbd2: 0x1854, 0xbd3: 0x1859, 0xbd4: 0x185e, 0xbd5: 0x15db, 0xbd6: 0x06bb, 0xbd7: 0x15ef, -+ 0xbd8: 0x15f7, 0xbd9: 0x15fb, 0xbda: 0x1603, 0xbdb: 0x160b, 0xbdc: 0x1613, 0xbdd: 0x1868, -+} -+ -+// nfcIndex: 22 blocks, 1408 entries, 1408 bytes -+// Block 0 is the zero block. -+var nfcIndex = [1408]uint8{ -+ // Block 0x0, offset 0x0 -+ // Block 0x1, offset 0x40 -+ // Block 0x2, offset 0x80 -+ // Block 0x3, offset 0xc0 -+ 0xc2: 0x2e, 0xc3: 0x01, 0xc4: 0x02, 0xc5: 0x03, 0xc6: 0x2f, 0xc7: 0x04, -+ 0xc8: 0x05, 0xca: 0x30, 0xcb: 0x31, 0xcc: 0x06, 0xcd: 0x07, 0xce: 0x08, 0xcf: 0x32, -+ 0xd0: 0x09, 0xd1: 0x33, 0xd2: 0x34, 0xd3: 0x0a, 0xd6: 0x0b, 0xd7: 0x35, -+ 0xd8: 0x36, 0xd9: 0x0c, 0xdb: 0x37, 0xdc: 0x38, 0xdd: 0x39, 0xdf: 0x3a, -+ 0xe0: 0x02, 0xe1: 0x03, 0xe2: 0x04, 0xe3: 0x05, -+ 0xea: 0x06, 0xeb: 0x07, 0xec: 0x08, 0xed: 0x09, 0xef: 0x0a, -+ 0xf0: 0x13, -+ // Block 0x4, offset 0x100 -+ 0x120: 0x3b, 0x121: 0x3c, 0x123: 0x0d, 0x124: 0x3d, 0x125: 0x3e, 0x126: 0x3f, 0x127: 0x40, -+ 0x128: 0x41, 0x129: 0x42, 0x12a: 0x43, 0x12b: 0x44, 0x12c: 0x3f, 0x12d: 0x45, 0x12e: 0x46, 0x12f: 0x47, -+ 0x131: 0x48, 0x132: 0x49, 0x133: 0x4a, 0x134: 0x4b, 0x135: 0x4c, 0x137: 0x4d, -+ 0x138: 0x4e, 0x139: 0x4f, 0x13a: 0x50, 0x13b: 0x51, 0x13c: 0x52, 0x13d: 0x53, 0x13e: 0x54, 0x13f: 0x55, -+ // Block 0x5, offset 0x140 -+ 0x140: 0x56, 0x142: 0x57, 0x144: 0x58, 0x145: 0x59, 0x146: 0x5a, 0x147: 0x5b, -+ 0x14d: 0x5c, -+ 0x15c: 0x5d, 0x15f: 0x5e, -+ 0x162: 0x5f, 0x164: 0x60, -+ 0x168: 0x61, 0x169: 0x62, 0x16a: 0x63, 0x16c: 0x0e, 0x16d: 0x64, 0x16e: 0x65, 0x16f: 0x66, -+ 0x170: 0x67, 0x173: 0x68, 0x177: 0x0f, -+ 0x178: 0x10, 0x179: 0x11, 0x17a: 0x12, 0x17b: 0x13, 0x17c: 0x14, 0x17d: 0x15, 0x17e: 0x16, 0x17f: 0x17, -+ // Block 0x6, offset 0x180 -+ 0x180: 0x69, 0x183: 0x6a, 0x184: 0x6b, 0x186: 0x6c, 0x187: 0x6d, -+ 0x188: 0x6e, 0x189: 0x18, 0x18a: 0x19, 0x18b: 0x6f, 0x18c: 0x70, -+ 0x1ab: 0x71, -+ 0x1b3: 0x72, 0x1b5: 0x73, 0x1b7: 0x74, -+ // Block 0x7, offset 0x1c0 -+ 0x1c0: 0x75, 0x1c1: 0x1a, 0x1c2: 0x1b, 0x1c3: 0x1c, 0x1c4: 0x76, 0x1c5: 0x77, -+ 0x1c9: 0x78, 0x1cc: 0x79, 0x1cd: 0x7a, -+ // Block 0x8, offset 0x200 -+ 0x219: 0x7b, 0x21a: 0x7c, 0x21b: 0x7d, -+ 0x220: 0x7e, 0x223: 0x7f, 0x224: 0x80, 0x225: 0x81, 0x226: 0x82, 0x227: 0x83, -+ 0x22a: 0x84, 0x22b: 0x85, 0x22f: 0x86, -+ 0x230: 0x87, 0x231: 0x88, 0x232: 0x89, 0x233: 0x8a, 0x234: 0x8b, 0x235: 0x8c, 0x236: 0x8d, 0x237: 0x87, -+ 0x238: 0x88, 0x239: 0x89, 0x23a: 0x8a, 0x23b: 0x8b, 0x23c: 0x8c, 0x23d: 0x8d, 0x23e: 0x87, 0x23f: 0x88, -+ // Block 0x9, offset 0x240 -+ 0x240: 0x89, 0x241: 0x8a, 0x242: 0x8b, 0x243: 0x8c, 0x244: 0x8d, 0x245: 0x87, 0x246: 0x88, 0x247: 0x89, -+ 0x248: 0x8a, 0x249: 0x8b, 0x24a: 0x8c, 0x24b: 0x8d, 0x24c: 0x87, 0x24d: 0x88, 0x24e: 0x89, 0x24f: 0x8a, -+ 0x250: 0x8b, 0x251: 0x8c, 0x252: 0x8d, 0x253: 0x87, 0x254: 0x88, 0x255: 0x89, 0x256: 0x8a, 0x257: 0x8b, -+ 0x258: 0x8c, 0x259: 0x8d, 0x25a: 0x87, 0x25b: 0x88, 0x25c: 0x89, 0x25d: 0x8a, 0x25e: 0x8b, 0x25f: 0x8c, -+ 0x260: 0x8d, 0x261: 0x87, 0x262: 0x88, 0x263: 0x89, 0x264: 0x8a, 0x265: 0x8b, 0x266: 0x8c, 0x267: 0x8d, -+ 0x268: 0x87, 0x269: 0x88, 0x26a: 0x89, 0x26b: 0x8a, 0x26c: 0x8b, 0x26d: 0x8c, 0x26e: 0x8d, 0x26f: 0x87, -+ 0x270: 0x88, 0x271: 0x89, 0x272: 0x8a, 0x273: 0x8b, 0x274: 0x8c, 0x275: 0x8d, 0x276: 0x87, 0x277: 0x88, -+ 0x278: 0x89, 0x279: 0x8a, 0x27a: 0x8b, 0x27b: 0x8c, 0x27c: 0x8d, 0x27d: 0x87, 0x27e: 0x88, 0x27f: 0x89, -+ // Block 0xa, offset 0x280 -+ 0x280: 0x8a, 0x281: 0x8b, 0x282: 0x8c, 0x283: 0x8d, 0x284: 0x87, 0x285: 0x88, 0x286: 0x89, 0x287: 0x8a, -+ 0x288: 0x8b, 0x289: 0x8c, 0x28a: 0x8d, 0x28b: 0x87, 0x28c: 0x88, 0x28d: 0x89, 0x28e: 0x8a, 0x28f: 0x8b, -+ 0x290: 0x8c, 0x291: 0x8d, 0x292: 0x87, 0x293: 0x88, 0x294: 0x89, 0x295: 0x8a, 0x296: 0x8b, 0x297: 0x8c, -+ 0x298: 0x8d, 0x299: 0x87, 0x29a: 0x88, 0x29b: 0x89, 0x29c: 0x8a, 0x29d: 0x8b, 0x29e: 0x8c, 0x29f: 0x8d, -+ 0x2a0: 0x87, 0x2a1: 0x88, 0x2a2: 0x89, 0x2a3: 0x8a, 0x2a4: 0x8b, 0x2a5: 0x8c, 0x2a6: 0x8d, 0x2a7: 0x87, -+ 0x2a8: 0x88, 0x2a9: 0x89, 0x2aa: 0x8a, 0x2ab: 0x8b, 0x2ac: 0x8c, 0x2ad: 0x8d, 0x2ae: 0x87, 0x2af: 0x88, -+ 0x2b0: 0x89, 0x2b1: 0x8a, 0x2b2: 0x8b, 0x2b3: 0x8c, 0x2b4: 0x8d, 0x2b5: 0x87, 0x2b6: 0x88, 0x2b7: 0x89, -+ 0x2b8: 0x8a, 0x2b9: 0x8b, 0x2ba: 0x8c, 0x2bb: 0x8d, 0x2bc: 0x87, 0x2bd: 0x88, 0x2be: 0x89, 0x2bf: 0x8a, -+ // Block 0xb, offset 0x2c0 -+ 0x2c0: 0x8b, 0x2c1: 0x8c, 0x2c2: 0x8d, 0x2c3: 0x87, 0x2c4: 0x88, 0x2c5: 0x89, 0x2c6: 0x8a, 0x2c7: 0x8b, -+ 0x2c8: 0x8c, 0x2c9: 0x8d, 0x2ca: 0x87, 0x2cb: 0x88, 0x2cc: 0x89, 0x2cd: 0x8a, 0x2ce: 0x8b, 0x2cf: 0x8c, -+ 0x2d0: 0x8d, 0x2d1: 0x87, 0x2d2: 0x88, 0x2d3: 0x89, 0x2d4: 0x8a, 0x2d5: 0x8b, 0x2d6: 0x8c, 0x2d7: 0x8d, -+ 0x2d8: 0x87, 0x2d9: 0x88, 0x2da: 0x89, 0x2db: 0x8a, 0x2dc: 0x8b, 0x2dd: 0x8c, 0x2de: 0x8e, -+ // Block 0xc, offset 0x300 -+ 0x324: 0x1d, 0x325: 0x1e, 0x326: 0x1f, 0x327: 0x20, -+ 0x328: 0x21, 0x329: 0x22, 0x32a: 0x23, 0x32b: 0x24, 0x32c: 0x8f, 0x32d: 0x90, 0x32e: 0x91, -+ 0x331: 0x92, 0x332: 0x93, 0x333: 0x94, 0x334: 0x95, -+ 0x338: 0x96, 0x339: 0x97, 0x33a: 0x98, 0x33b: 0x99, 0x33e: 0x9a, 0x33f: 0x9b, -+ // Block 0xd, offset 0x340 -+ 0x347: 0x9c, -+ 0x34b: 0x9d, 0x34d: 0x9e, -+ 0x368: 0x9f, 0x36b: 0xa0, -+ 0x374: 0xa1, -+ 0x37d: 0xa2, -+ // Block 0xe, offset 0x380 -+ 0x381: 0xa3, 0x382: 0xa4, 0x384: 0xa5, 0x385: 0x82, 0x387: 0xa6, -+ 0x388: 0xa7, 0x38b: 0xa8, 0x38c: 0xa9, 0x38d: 0xaa, -+ 0x391: 0xab, 0x392: 0xac, 0x393: 0xad, 0x396: 0xae, 0x397: 0xaf, -+ 0x398: 0x73, 0x39a: 0xb0, 0x39c: 0xb1, -+ 0x3a0: 0xb2, 0x3a7: 0xb3, -+ 0x3a8: 0xb4, 0x3a9: 0xb5, 0x3aa: 0xb6, -+ 0x3b0: 0x73, 0x3b5: 0xb7, 0x3b6: 0xb8, -+ // Block 0xf, offset 0x3c0 -+ 0x3eb: 0xb9, 0x3ec: 0xba, -+ // Block 0x10, offset 0x400 -+ 0x432: 0xbb, -+ // Block 0x11, offset 0x440 -+ 0x445: 0xbc, 0x446: 0xbd, 0x447: 0xbe, -+ 0x449: 0xbf, -+ // Block 0x12, offset 0x480 -+ 0x480: 0xc0, 0x484: 0xba, -+ 0x48b: 0xc1, -+ 0x4a3: 0xc2, 0x4a5: 0xc3, -+ // Block 0x13, offset 0x4c0 -+ 0x4c8: 0xc4, -+ // Block 0x14, offset 0x500 -+ 0x520: 0x25, 0x521: 0x26, 0x522: 0x27, 0x523: 0x28, 0x524: 0x29, 0x525: 0x2a, 0x526: 0x2b, 0x527: 0x2c, -+ 0x528: 0x2d, -+ // Block 0x15, offset 0x540 -+ 0x550: 0x0b, 0x551: 0x0c, 0x556: 0x0d, -+ 0x55b: 0x0e, 0x55d: 0x0f, 0x55e: 0x10, 0x55f: 0x11, -+ 0x56f: 0x12, -+} -+ -+// nfcSparseOffset: 151 entries, 302 bytes -+var nfcSparseOffset = []uint16{0x0, 0x5, 0x9, 0xb, 0xd, 0x18, 0x28, 0x2a, 0x2f, 0x3a, 0x49, 0x56, 0x5e, 0x63, 0x68, 0x6a, 0x72, 0x79, 0x7c, 0x84, 0x88, 0x8c, 0x8e, 0x90, 0x99, 0x9d, 0xa4, 0xa9, 0xac, 0xb6, 0xb9, 0xc0, 0xc8, 0xcb, 0xcd, 0xd0, 0xd2, 0xd7, 0xe8, 0xf4, 0xf6, 0xfc, 0xfe, 0x100, 0x102, 0x104, 0x106, 0x108, 0x10b, 0x10e, 0x110, 0x113, 0x116, 0x11a, 0x11f, 0x128, 0x12a, 0x12d, 0x12f, 0x13a, 0x13e, 0x14c, 0x14f, 0x155, 0x15b, 0x166, 0x16a, 0x16c, 0x16e, 0x170, 0x172, 0x174, 0x17a, 0x17e, 0x180, 0x182, 0x18a, 0x18e, 0x191, 0x193, 0x195, 0x197, 0x19a, 0x19c, 0x19e, 0x1a0, 0x1a2, 0x1a8, 0x1ab, 0x1ad, 0x1b4, 0x1ba, 0x1c0, 0x1c8, 0x1ce, 0x1d4, 0x1da, 0x1de, 0x1ec, 0x1f5, 0x1f8, 0x1fb, 0x1fd, 0x200, 0x202, 0x206, 0x20b, 0x20d, 0x20f, 0x214, 0x21a, 0x21c, 0x21e, 0x220, 0x226, 0x229, 0x22b, 0x231, 0x234, 0x23c, 0x243, 0x246, 0x249, 0x24b, 0x24e, 0x256, 0x25a, 0x261, 0x264, 0x26a, 0x26c, 0x26f, 0x271, 0x274, 0x276, 0x278, 0x27a, 0x27c, 0x27f, 0x281, 0x283, 0x285, 0x287, 0x294, 0x29e, 0x2a0, 0x2a2, 0x2a8, 0x2aa, 0x2ac, 0x2af} -+ -+// nfcSparseValues: 689 entries, 2756 bytes -+var nfcSparseValues = [689]valueRange{ -+ // Block 0x0, offset 0x0 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0xa100, lo: 0xa8, hi: 0xa8}, -+ {value: 0x8100, lo: 0xaf, hi: 0xaf}, -+ {value: 0x8100, lo: 0xb4, hi: 0xb4}, -+ {value: 0x8100, lo: 0xb8, hi: 0xb8}, -+ // Block 0x1, offset 0x5 -+ {value: 0x0091, lo: 0x03}, -+ {value: 0x46e5, lo: 0xa0, hi: 0xa1}, -+ {value: 0x4717, lo: 0xaf, hi: 0xb0}, -+ {value: 0xa000, lo: 0xb7, hi: 0xb7}, -+ // Block 0x2, offset 0x9 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0xa000, lo: 0x92, hi: 0x92}, -+ // Block 0x3, offset 0xb -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8100, lo: 0x98, hi: 0x9d}, -+ // Block 0x4, offset 0xd -+ {value: 0x0006, lo: 0x0a}, -+ {value: 0xa000, lo: 0x81, hi: 0x81}, -+ {value: 0xa000, lo: 0x85, hi: 0x85}, -+ {value: 0xa000, lo: 0x89, hi: 0x89}, -+ {value: 0x4843, lo: 0x8a, hi: 0x8a}, -+ {value: 0x4861, lo: 0x8b, hi: 0x8b}, -+ {value: 0x36ca, lo: 0x8c, hi: 0x8c}, -+ {value: 0x36e2, lo: 0x8d, hi: 0x8d}, -+ {value: 0x4879, lo: 0x8e, hi: 0x8e}, -+ {value: 0xa000, lo: 0x92, hi: 0x92}, -+ {value: 0x3700, lo: 0x93, hi: 0x94}, -+ // Block 0x5, offset 0x18 -+ {value: 0x0000, lo: 0x0f}, -+ {value: 0xa000, lo: 0x83, hi: 0x83}, -+ {value: 0xa000, lo: 0x87, hi: 0x87}, -+ {value: 0xa000, lo: 0x8b, hi: 0x8b}, -+ {value: 0xa000, lo: 0x8d, hi: 0x8d}, -+ {value: 0x37a8, lo: 0x90, hi: 0x90}, -+ {value: 0x37b4, lo: 0x91, hi: 0x91}, -+ {value: 0x37a2, lo: 0x93, hi: 0x93}, -+ {value: 0xa000, lo: 0x96, hi: 0x96}, -+ {value: 0x381a, lo: 0x97, hi: 0x97}, -+ {value: 0x37e4, lo: 0x9c, hi: 0x9c}, -+ {value: 0x37cc, lo: 0x9d, hi: 0x9d}, -+ {value: 0x37f6, lo: 0x9e, hi: 0x9e}, -+ {value: 0xa000, lo: 0xb4, hi: 0xb5}, -+ {value: 0x3820, lo: 0xb6, hi: 0xb6}, -+ {value: 0x3826, lo: 0xb7, hi: 0xb7}, -+ // Block 0x6, offset 0x28 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8132, lo: 0x83, hi: 0x87}, -+ // Block 0x7, offset 0x2a -+ {value: 0x0001, lo: 0x04}, -+ {value: 0x8113, lo: 0x81, hi: 0x82}, -+ {value: 0x8132, lo: 0x84, hi: 0x84}, -+ {value: 0x812d, lo: 0x85, hi: 0x85}, -+ {value: 0x810d, lo: 0x87, hi: 0x87}, -+ // Block 0x8, offset 0x2f -+ {value: 0x0000, lo: 0x0a}, -+ {value: 0x8132, lo: 0x90, hi: 0x97}, -+ {value: 0x8119, lo: 0x98, hi: 0x98}, -+ {value: 0x811a, lo: 0x99, hi: 0x99}, -+ {value: 0x811b, lo: 0x9a, hi: 0x9a}, -+ {value: 0x3844, lo: 0xa2, hi: 0xa2}, -+ {value: 0x384a, lo: 0xa3, hi: 0xa3}, -+ {value: 0x3856, lo: 0xa4, hi: 0xa4}, -+ {value: 0x3850, lo: 0xa5, hi: 0xa5}, -+ {value: 0x385c, lo: 0xa6, hi: 0xa6}, -+ {value: 0xa000, lo: 0xa7, hi: 0xa7}, -+ // Block 0x9, offset 0x3a -+ {value: 0x0000, lo: 0x0e}, -+ {value: 0x386e, lo: 0x80, hi: 0x80}, -+ {value: 0xa000, lo: 0x81, hi: 0x81}, -+ {value: 0x3862, lo: 0x82, hi: 0x82}, -+ {value: 0xa000, lo: 0x92, hi: 0x92}, -+ {value: 0x3868, lo: 0x93, hi: 0x93}, -+ {value: 0xa000, lo: 0x95, hi: 0x95}, -+ {value: 0x8132, lo: 0x96, hi: 0x9c}, -+ {value: 0x8132, lo: 0x9f, hi: 0xa2}, -+ {value: 0x812d, lo: 0xa3, hi: 0xa3}, -+ {value: 0x8132, lo: 0xa4, hi: 0xa4}, -+ {value: 0x8132, lo: 0xa7, hi: 0xa8}, -+ {value: 0x812d, lo: 0xaa, hi: 0xaa}, -+ {value: 0x8132, lo: 0xab, hi: 0xac}, -+ {value: 0x812d, lo: 0xad, hi: 0xad}, -+ // Block 0xa, offset 0x49 -+ {value: 0x0000, lo: 0x0c}, -+ {value: 0x811f, lo: 0x91, hi: 0x91}, -+ {value: 0x8132, lo: 0xb0, hi: 0xb0}, -+ {value: 0x812d, lo: 0xb1, hi: 0xb1}, -+ {value: 0x8132, lo: 0xb2, hi: 0xb3}, -+ {value: 0x812d, lo: 0xb4, hi: 0xb4}, -+ {value: 0x8132, lo: 0xb5, hi: 0xb6}, -+ {value: 0x812d, lo: 0xb7, hi: 0xb9}, -+ {value: 0x8132, lo: 0xba, hi: 0xba}, -+ {value: 0x812d, lo: 0xbb, hi: 0xbc}, -+ {value: 0x8132, lo: 0xbd, hi: 0xbd}, -+ {value: 0x812d, lo: 0xbe, hi: 0xbe}, -+ {value: 0x8132, lo: 0xbf, hi: 0xbf}, -+ // Block 0xb, offset 0x56 -+ {value: 0x0005, lo: 0x07}, -+ {value: 0x8132, lo: 0x80, hi: 0x80}, -+ {value: 0x8132, lo: 0x81, hi: 0x81}, -+ {value: 0x812d, lo: 0x82, hi: 0x83}, -+ {value: 0x812d, lo: 0x84, hi: 0x85}, -+ {value: 0x812d, lo: 0x86, hi: 0x87}, -+ {value: 0x812d, lo: 0x88, hi: 0x89}, -+ {value: 0x8132, lo: 0x8a, hi: 0x8a}, -+ // Block 0xc, offset 0x5e -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x8132, lo: 0xab, hi: 0xb1}, -+ {value: 0x812d, lo: 0xb2, hi: 0xb2}, -+ {value: 0x8132, lo: 0xb3, hi: 0xb3}, -+ {value: 0x812d, lo: 0xbd, hi: 0xbd}, -+ // Block 0xd, offset 0x63 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x8132, lo: 0x96, hi: 0x99}, -+ {value: 0x8132, lo: 0x9b, hi: 0xa3}, -+ {value: 0x8132, lo: 0xa5, hi: 0xa7}, -+ {value: 0x8132, lo: 0xa9, hi: 0xad}, -+ // Block 0xe, offset 0x68 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812d, lo: 0x99, hi: 0x9b}, -+ // Block 0xf, offset 0x6a -+ {value: 0x0000, lo: 0x07}, -+ {value: 0xa000, lo: 0xa8, hi: 0xa8}, -+ {value: 0x3edb, lo: 0xa9, hi: 0xa9}, -+ {value: 0xa000, lo: 0xb0, hi: 0xb0}, -+ {value: 0x3ee3, lo: 0xb1, hi: 0xb1}, -+ {value: 0xa000, lo: 0xb3, hi: 0xb3}, -+ {value: 0x3eeb, lo: 0xb4, hi: 0xb4}, -+ {value: 0x9902, lo: 0xbc, hi: 0xbc}, -+ // Block 0x10, offset 0x72 -+ {value: 0x0008, lo: 0x06}, -+ {value: 0x8104, lo: 0x8d, hi: 0x8d}, -+ {value: 0x8132, lo: 0x91, hi: 0x91}, -+ {value: 0x812d, lo: 0x92, hi: 0x92}, -+ {value: 0x8132, lo: 0x93, hi: 0x93}, -+ {value: 0x8132, lo: 0x94, hi: 0x94}, -+ {value: 0x451f, lo: 0x98, hi: 0x9f}, -+ // Block 0x11, offset 0x79 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8102, lo: 0xbc, hi: 0xbc}, -+ {value: 0x9900, lo: 0xbe, hi: 0xbe}, -+ // Block 0x12, offset 0x7c -+ {value: 0x0008, lo: 0x07}, -+ {value: 0xa000, lo: 0x87, hi: 0x87}, -+ {value: 0x2ca1, lo: 0x8b, hi: 0x8c}, -+ {value: 0x8104, lo: 0x8d, hi: 0x8d}, -+ {value: 0x9900, lo: 0x97, hi: 0x97}, -+ {value: 0x455f, lo: 0x9c, hi: 0x9d}, -+ {value: 0x456f, lo: 0x9f, hi: 0x9f}, -+ {value: 0x8132, lo: 0xbe, hi: 0xbe}, -+ // Block 0x13, offset 0x84 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x4597, lo: 0xb3, hi: 0xb3}, -+ {value: 0x459f, lo: 0xb6, hi: 0xb6}, -+ {value: 0x8102, lo: 0xbc, hi: 0xbc}, -+ // Block 0x14, offset 0x88 -+ {value: 0x0008, lo: 0x03}, -+ {value: 0x8104, lo: 0x8d, hi: 0x8d}, -+ {value: 0x4577, lo: 0x99, hi: 0x9b}, -+ {value: 0x458f, lo: 0x9e, hi: 0x9e}, -+ // Block 0x15, offset 0x8c -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8102, lo: 0xbc, hi: 0xbc}, -+ // Block 0x16, offset 0x8e -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8104, lo: 0x8d, hi: 0x8d}, -+ // Block 0x17, offset 0x90 -+ {value: 0x0000, lo: 0x08}, -+ {value: 0xa000, lo: 0x87, hi: 0x87}, -+ {value: 0x2cb9, lo: 0x88, hi: 0x88}, -+ {value: 0x2cb1, lo: 0x8b, hi: 0x8b}, -+ {value: 0x2cc1, lo: 0x8c, hi: 0x8c}, -+ {value: 0x8104, lo: 0x8d, hi: 0x8d}, -+ {value: 0x9900, lo: 0x96, hi: 0x97}, -+ {value: 0x45a7, lo: 0x9c, hi: 0x9c}, -+ {value: 0x45af, lo: 0x9d, hi: 0x9d}, -+ // Block 0x18, offset 0x99 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0xa000, lo: 0x92, hi: 0x92}, -+ {value: 0x2cc9, lo: 0x94, hi: 0x94}, -+ {value: 0x9900, lo: 0xbe, hi: 0xbe}, -+ // Block 0x19, offset 0x9d -+ {value: 0x0000, lo: 0x06}, -+ {value: 0xa000, lo: 0x86, hi: 0x87}, -+ {value: 0x2cd1, lo: 0x8a, hi: 0x8a}, -+ {value: 0x2ce1, lo: 0x8b, hi: 0x8b}, -+ {value: 0x2cd9, lo: 0x8c, hi: 0x8c}, -+ {value: 0x8104, lo: 0x8d, hi: 0x8d}, -+ {value: 0x9900, lo: 0x97, hi: 0x97}, -+ // Block 0x1a, offset 0xa4 -+ {value: 0x1801, lo: 0x04}, -+ {value: 0xa000, lo: 0x86, hi: 0x86}, -+ {value: 0x3ef3, lo: 0x88, hi: 0x88}, -+ {value: 0x8104, lo: 0x8d, hi: 0x8d}, -+ {value: 0x8120, lo: 0x95, hi: 0x96}, -+ // Block 0x1b, offset 0xa9 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8102, lo: 0xbc, hi: 0xbc}, -+ {value: 0xa000, lo: 0xbf, hi: 0xbf}, -+ // Block 0x1c, offset 0xac -+ {value: 0x0000, lo: 0x09}, -+ {value: 0x2ce9, lo: 0x80, hi: 0x80}, -+ {value: 0x9900, lo: 0x82, hi: 0x82}, -+ {value: 0xa000, lo: 0x86, hi: 0x86}, -+ {value: 0x2cf1, lo: 0x87, hi: 0x87}, -+ {value: 0x2cf9, lo: 0x88, hi: 0x88}, -+ {value: 0x2f53, lo: 0x8a, hi: 0x8a}, -+ {value: 0x2ddb, lo: 0x8b, hi: 0x8b}, -+ {value: 0x8104, lo: 0x8d, hi: 0x8d}, -+ {value: 0x9900, lo: 0x95, hi: 0x96}, -+ // Block 0x1d, offset 0xb6 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8104, lo: 0xbb, hi: 0xbc}, -+ {value: 0x9900, lo: 0xbe, hi: 0xbe}, -+ // Block 0x1e, offset 0xb9 -+ {value: 0x0000, lo: 0x06}, -+ {value: 0xa000, lo: 0x86, hi: 0x87}, -+ {value: 0x2d01, lo: 0x8a, hi: 0x8a}, -+ {value: 0x2d11, lo: 0x8b, hi: 0x8b}, -+ {value: 0x2d09, lo: 0x8c, hi: 0x8c}, -+ {value: 0x8104, lo: 0x8d, hi: 0x8d}, -+ {value: 0x9900, lo: 0x97, hi: 0x97}, -+ // Block 0x1f, offset 0xc0 -+ {value: 0x6be7, lo: 0x07}, -+ {value: 0x9904, lo: 0x8a, hi: 0x8a}, -+ {value: 0x9900, lo: 0x8f, hi: 0x8f}, -+ {value: 0xa000, lo: 0x99, hi: 0x99}, -+ {value: 0x3efb, lo: 0x9a, hi: 0x9a}, -+ {value: 0x2f5b, lo: 0x9c, hi: 0x9c}, -+ {value: 0x2de6, lo: 0x9d, hi: 0x9d}, -+ {value: 0x2d19, lo: 0x9e, hi: 0x9f}, -+ // Block 0x20, offset 0xc8 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8122, lo: 0xb8, hi: 0xb9}, -+ {value: 0x8104, lo: 0xba, hi: 0xba}, -+ // Block 0x21, offset 0xcb -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8123, lo: 0x88, hi: 0x8b}, -+ // Block 0x22, offset 0xcd -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8124, lo: 0xb8, hi: 0xb9}, -+ {value: 0x8104, lo: 0xba, hi: 0xba}, -+ // Block 0x23, offset 0xd0 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8125, lo: 0x88, hi: 0x8b}, -+ // Block 0x24, offset 0xd2 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x812d, lo: 0x98, hi: 0x99}, -+ {value: 0x812d, lo: 0xb5, hi: 0xb5}, -+ {value: 0x812d, lo: 0xb7, hi: 0xb7}, -+ {value: 0x812b, lo: 0xb9, hi: 0xb9}, -+ // Block 0x25, offset 0xd7 -+ {value: 0x0000, lo: 0x10}, -+ {value: 0x2647, lo: 0x83, hi: 0x83}, -+ {value: 0x264e, lo: 0x8d, hi: 0x8d}, -+ {value: 0x2655, lo: 0x92, hi: 0x92}, -+ {value: 0x265c, lo: 0x97, hi: 0x97}, -+ {value: 0x2663, lo: 0x9c, hi: 0x9c}, -+ {value: 0x2640, lo: 0xa9, hi: 0xa9}, -+ {value: 0x8126, lo: 0xb1, hi: 0xb1}, -+ {value: 0x8127, lo: 0xb2, hi: 0xb2}, -+ {value: 0x4a87, lo: 0xb3, hi: 0xb3}, -+ {value: 0x8128, lo: 0xb4, hi: 0xb4}, -+ {value: 0x4a90, lo: 0xb5, hi: 0xb5}, -+ {value: 0x45b7, lo: 0xb6, hi: 0xb6}, -+ {value: 0x8200, lo: 0xb7, hi: 0xb7}, -+ {value: 0x45bf, lo: 0xb8, hi: 0xb8}, -+ {value: 0x8200, lo: 0xb9, hi: 0xb9}, -+ {value: 0x8127, lo: 0xba, hi: 0xbd}, -+ // Block 0x26, offset 0xe8 -+ {value: 0x0000, lo: 0x0b}, -+ {value: 0x8127, lo: 0x80, hi: 0x80}, -+ {value: 0x4a99, lo: 0x81, hi: 0x81}, -+ {value: 0x8132, lo: 0x82, hi: 0x83}, -+ {value: 0x8104, lo: 0x84, hi: 0x84}, -+ {value: 0x8132, lo: 0x86, hi: 0x87}, -+ {value: 0x2671, lo: 0x93, hi: 0x93}, -+ {value: 0x2678, lo: 0x9d, hi: 0x9d}, -+ {value: 0x267f, lo: 0xa2, hi: 0xa2}, -+ {value: 0x2686, lo: 0xa7, hi: 0xa7}, -+ {value: 0x268d, lo: 0xac, hi: 0xac}, -+ {value: 0x266a, lo: 0xb9, hi: 0xb9}, -+ // Block 0x27, offset 0xf4 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812d, lo: 0x86, hi: 0x86}, -+ // Block 0x28, offset 0xf6 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0xa000, lo: 0xa5, hi: 0xa5}, -+ {value: 0x2d21, lo: 0xa6, hi: 0xa6}, -+ {value: 0x9900, lo: 0xae, hi: 0xae}, -+ {value: 0x8102, lo: 0xb7, hi: 0xb7}, -+ {value: 0x8104, lo: 0xb9, hi: 0xba}, -+ // Block 0x29, offset 0xfc -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812d, lo: 0x8d, hi: 0x8d}, -+ // Block 0x2a, offset 0xfe -+ {value: 0x0000, lo: 0x01}, -+ {value: 0xa000, lo: 0x80, hi: 0x92}, -+ // Block 0x2b, offset 0x100 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0xb900, lo: 0xa1, hi: 0xb5}, -+ // Block 0x2c, offset 0x102 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x9900, lo: 0xa8, hi: 0xbf}, -+ // Block 0x2d, offset 0x104 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x9900, lo: 0x80, hi: 0x82}, -+ // Block 0x2e, offset 0x106 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8132, lo: 0x9d, hi: 0x9f}, -+ // Block 0x2f, offset 0x108 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8104, lo: 0x94, hi: 0x94}, -+ {value: 0x8104, lo: 0xb4, hi: 0xb4}, -+ // Block 0x30, offset 0x10b -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8104, lo: 0x92, hi: 0x92}, -+ {value: 0x8132, lo: 0x9d, hi: 0x9d}, -+ // Block 0x31, offset 0x10e -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8131, lo: 0xa9, hi: 0xa9}, -+ // Block 0x32, offset 0x110 -+ {value: 0x0004, lo: 0x02}, -+ {value: 0x812e, lo: 0xb9, hi: 0xba}, -+ {value: 0x812d, lo: 0xbb, hi: 0xbb}, -+ // Block 0x33, offset 0x113 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8132, lo: 0x97, hi: 0x97}, -+ {value: 0x812d, lo: 0x98, hi: 0x98}, -+ // Block 0x34, offset 0x116 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x8104, lo: 0xa0, hi: 0xa0}, -+ {value: 0x8132, lo: 0xb5, hi: 0xbc}, -+ {value: 0x812d, lo: 0xbf, hi: 0xbf}, -+ // Block 0x35, offset 0x11a -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x8132, lo: 0xb0, hi: 0xb4}, -+ {value: 0x812d, lo: 0xb5, hi: 0xba}, -+ {value: 0x8132, lo: 0xbb, hi: 0xbc}, -+ {value: 0x812d, lo: 0xbd, hi: 0xbd}, -+ // Block 0x36, offset 0x11f -+ {value: 0x0000, lo: 0x08}, -+ {value: 0x2d69, lo: 0x80, hi: 0x80}, -+ {value: 0x2d71, lo: 0x81, hi: 0x81}, -+ {value: 0xa000, lo: 0x82, hi: 0x82}, -+ {value: 0x2d79, lo: 0x83, hi: 0x83}, -+ {value: 0x8104, lo: 0x84, hi: 0x84}, -+ {value: 0x8132, lo: 0xab, hi: 0xab}, -+ {value: 0x812d, lo: 0xac, hi: 0xac}, -+ {value: 0x8132, lo: 0xad, hi: 0xb3}, -+ // Block 0x37, offset 0x128 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8104, lo: 0xaa, hi: 0xab}, -+ // Block 0x38, offset 0x12a -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8102, lo: 0xa6, hi: 0xa6}, -+ {value: 0x8104, lo: 0xb2, hi: 0xb3}, -+ // Block 0x39, offset 0x12d -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8102, lo: 0xb7, hi: 0xb7}, -+ // Block 0x3a, offset 0x12f -+ {value: 0x0000, lo: 0x0a}, -+ {value: 0x8132, lo: 0x90, hi: 0x92}, -+ {value: 0x8101, lo: 0x94, hi: 0x94}, -+ {value: 0x812d, lo: 0x95, hi: 0x99}, -+ {value: 0x8132, lo: 0x9a, hi: 0x9b}, -+ {value: 0x812d, lo: 0x9c, hi: 0x9f}, -+ {value: 0x8132, lo: 0xa0, hi: 0xa0}, -+ {value: 0x8101, lo: 0xa2, hi: 0xa8}, -+ {value: 0x812d, lo: 0xad, hi: 0xad}, -+ {value: 0x8132, lo: 0xb4, hi: 0xb4}, -+ {value: 0x8132, lo: 0xb8, hi: 0xb9}, -+ // Block 0x3b, offset 0x13a -+ {value: 0x0004, lo: 0x03}, -+ {value: 0x0433, lo: 0x80, hi: 0x81}, -+ {value: 0x8100, lo: 0x97, hi: 0x97}, -+ {value: 0x8100, lo: 0xbe, hi: 0xbe}, -+ // Block 0x3c, offset 0x13e -+ {value: 0x0000, lo: 0x0d}, -+ {value: 0x8132, lo: 0x90, hi: 0x91}, -+ {value: 0x8101, lo: 0x92, hi: 0x93}, -+ {value: 0x8132, lo: 0x94, hi: 0x97}, -+ {value: 0x8101, lo: 0x98, hi: 0x9a}, -+ {value: 0x8132, lo: 0x9b, hi: 0x9c}, -+ {value: 0x8132, lo: 0xa1, hi: 0xa1}, -+ {value: 0x8101, lo: 0xa5, hi: 0xa6}, -+ {value: 0x8132, lo: 0xa7, hi: 0xa7}, -+ {value: 0x812d, lo: 0xa8, hi: 0xa8}, -+ {value: 0x8132, lo: 0xa9, hi: 0xa9}, -+ {value: 0x8101, lo: 0xaa, hi: 0xab}, -+ {value: 0x812d, lo: 0xac, hi: 0xaf}, -+ {value: 0x8132, lo: 0xb0, hi: 0xb0}, -+ // Block 0x3d, offset 0x14c -+ {value: 0x427e, lo: 0x02}, -+ {value: 0x01b8, lo: 0xa6, hi: 0xa6}, -+ {value: 0x0057, lo: 0xaa, hi: 0xab}, -+ // Block 0x3e, offset 0x14f -+ {value: 0x0007, lo: 0x05}, -+ {value: 0xa000, lo: 0x90, hi: 0x90}, -+ {value: 0xa000, lo: 0x92, hi: 0x92}, -+ {value: 0xa000, lo: 0x94, hi: 0x94}, -+ {value: 0x3bbc, lo: 0x9a, hi: 0x9b}, -+ {value: 0x3bca, lo: 0xae, hi: 0xae}, -+ // Block 0x3f, offset 0x155 -+ {value: 0x000e, lo: 0x05}, -+ {value: 0x3bd1, lo: 0x8d, hi: 0x8e}, -+ {value: 0x3bd8, lo: 0x8f, hi: 0x8f}, -+ {value: 0xa000, lo: 0x90, hi: 0x90}, -+ {value: 0xa000, lo: 0x92, hi: 0x92}, -+ {value: 0xa000, lo: 0x94, hi: 0x94}, -+ // Block 0x40, offset 0x15b -+ {value: 0x6405, lo: 0x0a}, -+ {value: 0xa000, lo: 0x83, hi: 0x83}, -+ {value: 0x3be6, lo: 0x84, hi: 0x84}, -+ {value: 0xa000, lo: 0x88, hi: 0x88}, -+ {value: 0x3bed, lo: 0x89, hi: 0x89}, -+ {value: 0xa000, lo: 0x8b, hi: 0x8b}, -+ {value: 0x3bf4, lo: 0x8c, hi: 0x8c}, -+ {value: 0xa000, lo: 0xa3, hi: 0xa3}, -+ {value: 0x3bfb, lo: 0xa4, hi: 0xa5}, -+ {value: 0x3c02, lo: 0xa6, hi: 0xa6}, -+ {value: 0xa000, lo: 0xbc, hi: 0xbc}, -+ // Block 0x41, offset 0x166 -+ {value: 0x0007, lo: 0x03}, -+ {value: 0x3c6b, lo: 0xa0, hi: 0xa1}, -+ {value: 0x3c95, lo: 0xa2, hi: 0xa3}, -+ {value: 0x3cbf, lo: 0xaa, hi: 0xad}, -+ // Block 0x42, offset 0x16a -+ {value: 0x0004, lo: 0x01}, -+ {value: 0x048b, lo: 0xa9, hi: 0xaa}, -+ // Block 0x43, offset 0x16c -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x44e0, lo: 0x9c, hi: 0x9c}, -+ // Block 0x44, offset 0x16e -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8132, lo: 0xaf, hi: 0xb1}, -+ // Block 0x45, offset 0x170 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8104, lo: 0xbf, hi: 0xbf}, -+ // Block 0x46, offset 0x172 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8132, lo: 0xa0, hi: 0xbf}, -+ // Block 0x47, offset 0x174 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x812c, lo: 0xaa, hi: 0xaa}, -+ {value: 0x8131, lo: 0xab, hi: 0xab}, -+ {value: 0x8133, lo: 0xac, hi: 0xac}, -+ {value: 0x812e, lo: 0xad, hi: 0xad}, -+ {value: 0x812f, lo: 0xae, hi: 0xaf}, -+ // Block 0x48, offset 0x17a -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x4aa2, lo: 0xb3, hi: 0xb3}, -+ {value: 0x4aa2, lo: 0xb5, hi: 0xb6}, -+ {value: 0x4aa2, lo: 0xba, hi: 0xbf}, -+ // Block 0x49, offset 0x17e -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x4aa2, lo: 0x8f, hi: 0xa3}, -+ // Block 0x4a, offset 0x180 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8100, lo: 0xae, hi: 0xbe}, -+ // Block 0x4b, offset 0x182 -+ {value: 0x0000, lo: 0x07}, -+ {value: 0x8100, lo: 0x84, hi: 0x84}, -+ {value: 0x8100, lo: 0x87, hi: 0x87}, -+ {value: 0x8100, lo: 0x90, hi: 0x90}, -+ {value: 0x8100, lo: 0x9e, hi: 0x9e}, -+ {value: 0x8100, lo: 0xa1, hi: 0xa1}, -+ {value: 0x8100, lo: 0xb2, hi: 0xb2}, -+ {value: 0x8100, lo: 0xbb, hi: 0xbb}, -+ // Block 0x4c, offset 0x18a -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x8100, lo: 0x80, hi: 0x80}, -+ {value: 0x8100, lo: 0x8b, hi: 0x8b}, -+ {value: 0x8100, lo: 0x8e, hi: 0x8e}, -+ // Block 0x4d, offset 0x18e -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8132, lo: 0xaf, hi: 0xaf}, -+ {value: 0x8132, lo: 0xb4, hi: 0xbd}, -+ // Block 0x4e, offset 0x191 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8132, lo: 0x9e, hi: 0x9f}, -+ // Block 0x4f, offset 0x193 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8132, lo: 0xb0, hi: 0xb1}, -+ // Block 0x50, offset 0x195 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8104, lo: 0x86, hi: 0x86}, -+ // Block 0x51, offset 0x197 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8104, lo: 0x84, hi: 0x84}, -+ {value: 0x8132, lo: 0xa0, hi: 0xb1}, -+ // Block 0x52, offset 0x19a -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812d, lo: 0xab, hi: 0xad}, -+ // Block 0x53, offset 0x19c -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8104, lo: 0x93, hi: 0x93}, -+ // Block 0x54, offset 0x19e -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8102, lo: 0xb3, hi: 0xb3}, -+ // Block 0x55, offset 0x1a0 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8104, lo: 0x80, hi: 0x80}, -+ // Block 0x56, offset 0x1a2 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x8132, lo: 0xb0, hi: 0xb0}, -+ {value: 0x8132, lo: 0xb2, hi: 0xb3}, -+ {value: 0x812d, lo: 0xb4, hi: 0xb4}, -+ {value: 0x8132, lo: 0xb7, hi: 0xb8}, -+ {value: 0x8132, lo: 0xbe, hi: 0xbf}, -+ // Block 0x57, offset 0x1a8 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8132, lo: 0x81, hi: 0x81}, -+ {value: 0x8104, lo: 0xb6, hi: 0xb6}, -+ // Block 0x58, offset 0x1ab -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8104, lo: 0xad, hi: 0xad}, -+ // Block 0x59, offset 0x1ad -+ {value: 0x0000, lo: 0x06}, -+ {value: 0xe500, lo: 0x80, hi: 0x80}, -+ {value: 0xc600, lo: 0x81, hi: 0x9b}, -+ {value: 0xe500, lo: 0x9c, hi: 0x9c}, -+ {value: 0xc600, lo: 0x9d, hi: 0xb7}, -+ {value: 0xe500, lo: 0xb8, hi: 0xb8}, -+ {value: 0xc600, lo: 0xb9, hi: 0xbf}, -+ // Block 0x5a, offset 0x1b4 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0xc600, lo: 0x80, hi: 0x93}, -+ {value: 0xe500, lo: 0x94, hi: 0x94}, -+ {value: 0xc600, lo: 0x95, hi: 0xaf}, -+ {value: 0xe500, lo: 0xb0, hi: 0xb0}, -+ {value: 0xc600, lo: 0xb1, hi: 0xbf}, -+ // Block 0x5b, offset 0x1ba -+ {value: 0x0000, lo: 0x05}, -+ {value: 0xc600, lo: 0x80, hi: 0x8b}, -+ {value: 0xe500, lo: 0x8c, hi: 0x8c}, -+ {value: 0xc600, lo: 0x8d, hi: 0xa7}, -+ {value: 0xe500, lo: 0xa8, hi: 0xa8}, -+ {value: 0xc600, lo: 0xa9, hi: 0xbf}, -+ // Block 0x5c, offset 0x1c0 -+ {value: 0x0000, lo: 0x07}, -+ {value: 0xc600, lo: 0x80, hi: 0x83}, -+ {value: 0xe500, lo: 0x84, hi: 0x84}, -+ {value: 0xc600, lo: 0x85, hi: 0x9f}, -+ {value: 0xe500, lo: 0xa0, hi: 0xa0}, -+ {value: 0xc600, lo: 0xa1, hi: 0xbb}, -+ {value: 0xe500, lo: 0xbc, hi: 0xbc}, -+ {value: 0xc600, lo: 0xbd, hi: 0xbf}, -+ // Block 0x5d, offset 0x1c8 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0xc600, lo: 0x80, hi: 0x97}, -+ {value: 0xe500, lo: 0x98, hi: 0x98}, -+ {value: 0xc600, lo: 0x99, hi: 0xb3}, -+ {value: 0xe500, lo: 0xb4, hi: 0xb4}, -+ {value: 0xc600, lo: 0xb5, hi: 0xbf}, -+ // Block 0x5e, offset 0x1ce -+ {value: 0x0000, lo: 0x05}, -+ {value: 0xc600, lo: 0x80, hi: 0x8f}, -+ {value: 0xe500, lo: 0x90, hi: 0x90}, -+ {value: 0xc600, lo: 0x91, hi: 0xab}, -+ {value: 0xe500, lo: 0xac, hi: 0xac}, -+ {value: 0xc600, lo: 0xad, hi: 0xbf}, -+ // Block 0x5f, offset 0x1d4 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0xc600, lo: 0x80, hi: 0x87}, -+ {value: 0xe500, lo: 0x88, hi: 0x88}, -+ {value: 0xc600, lo: 0x89, hi: 0xa3}, -+ {value: 0xe500, lo: 0xa4, hi: 0xa4}, -+ {value: 0xc600, lo: 0xa5, hi: 0xbf}, -+ // Block 0x60, offset 0x1da -+ {value: 0x0000, lo: 0x03}, -+ {value: 0xc600, lo: 0x80, hi: 0x87}, -+ {value: 0xe500, lo: 0x88, hi: 0x88}, -+ {value: 0xc600, lo: 0x89, hi: 0xa3}, -+ // Block 0x61, offset 0x1de -+ {value: 0x0006, lo: 0x0d}, -+ {value: 0x4393, lo: 0x9d, hi: 0x9d}, -+ {value: 0x8115, lo: 0x9e, hi: 0x9e}, -+ {value: 0x4405, lo: 0x9f, hi: 0x9f}, -+ {value: 0x43f3, lo: 0xaa, hi: 0xab}, -+ {value: 0x44f7, lo: 0xac, hi: 0xac}, -+ {value: 0x44ff, lo: 0xad, hi: 0xad}, -+ {value: 0x434b, lo: 0xae, hi: 0xb1}, -+ {value: 0x4369, lo: 0xb2, hi: 0xb4}, -+ {value: 0x4381, lo: 0xb5, hi: 0xb6}, -+ {value: 0x438d, lo: 0xb8, hi: 0xb8}, -+ {value: 0x4399, lo: 0xb9, hi: 0xbb}, -+ {value: 0x43b1, lo: 0xbc, hi: 0xbc}, -+ {value: 0x43b7, lo: 0xbe, hi: 0xbe}, -+ // Block 0x62, offset 0x1ec -+ {value: 0x0006, lo: 0x08}, -+ {value: 0x43bd, lo: 0x80, hi: 0x81}, -+ {value: 0x43c9, lo: 0x83, hi: 0x84}, -+ {value: 0x43db, lo: 0x86, hi: 0x89}, -+ {value: 0x43ff, lo: 0x8a, hi: 0x8a}, -+ {value: 0x437b, lo: 0x8b, hi: 0x8b}, -+ {value: 0x4363, lo: 0x8c, hi: 0x8c}, -+ {value: 0x43ab, lo: 0x8d, hi: 0x8d}, -+ {value: 0x43d5, lo: 0x8e, hi: 0x8e}, -+ // Block 0x63, offset 0x1f5 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8100, lo: 0xa4, hi: 0xa5}, -+ {value: 0x8100, lo: 0xb0, hi: 0xb1}, -+ // Block 0x64, offset 0x1f8 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8100, lo: 0x9b, hi: 0x9d}, -+ {value: 0x8200, lo: 0x9e, hi: 0xa3}, -+ // Block 0x65, offset 0x1fb -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8100, lo: 0x90, hi: 0x90}, -+ // Block 0x66, offset 0x1fd -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8100, lo: 0x99, hi: 0x99}, -+ {value: 0x8200, lo: 0xb2, hi: 0xb4}, -+ // Block 0x67, offset 0x200 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8100, lo: 0xbc, hi: 0xbd}, -+ // Block 0x68, offset 0x202 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x8132, lo: 0xa0, hi: 0xa6}, -+ {value: 0x812d, lo: 0xa7, hi: 0xad}, -+ {value: 0x8132, lo: 0xae, hi: 0xaf}, -+ // Block 0x69, offset 0x206 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x8100, lo: 0x89, hi: 0x8c}, -+ {value: 0x8100, lo: 0xb0, hi: 0xb2}, -+ {value: 0x8100, lo: 0xb4, hi: 0xb4}, -+ {value: 0x8100, lo: 0xb6, hi: 0xbf}, -+ // Block 0x6a, offset 0x20b -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8100, lo: 0x81, hi: 0x8c}, -+ // Block 0x6b, offset 0x20d -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8100, lo: 0xb5, hi: 0xba}, -+ // Block 0x6c, offset 0x20f -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x4aa2, lo: 0x9e, hi: 0x9f}, -+ {value: 0x4aa2, lo: 0xa3, hi: 0xa3}, -+ {value: 0x4aa2, lo: 0xa5, hi: 0xa6}, -+ {value: 0x4aa2, lo: 0xaa, hi: 0xaf}, -+ // Block 0x6d, offset 0x214 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x4aa2, lo: 0x82, hi: 0x87}, -+ {value: 0x4aa2, lo: 0x8a, hi: 0x8f}, -+ {value: 0x4aa2, lo: 0x92, hi: 0x97}, -+ {value: 0x4aa2, lo: 0x9a, hi: 0x9c}, -+ {value: 0x8100, lo: 0xa3, hi: 0xa3}, -+ // Block 0x6e, offset 0x21a -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812d, lo: 0xbd, hi: 0xbd}, -+ // Block 0x6f, offset 0x21c -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812d, lo: 0xa0, hi: 0xa0}, -+ // Block 0x70, offset 0x21e -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8132, lo: 0xb6, hi: 0xba}, -+ // Block 0x71, offset 0x220 -+ {value: 0x002c, lo: 0x05}, -+ {value: 0x812d, lo: 0x8d, hi: 0x8d}, -+ {value: 0x8132, lo: 0x8f, hi: 0x8f}, -+ {value: 0x8132, lo: 0xb8, hi: 0xb8}, -+ {value: 0x8101, lo: 0xb9, hi: 0xba}, -+ {value: 0x8104, lo: 0xbf, hi: 0xbf}, -+ // Block 0x72, offset 0x226 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8132, lo: 0xa5, hi: 0xa5}, -+ {value: 0x812d, lo: 0xa6, hi: 0xa6}, -+ // Block 0x73, offset 0x229 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8132, lo: 0xa4, hi: 0xa7}, -+ // Block 0x74, offset 0x22b -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x812d, lo: 0x86, hi: 0x87}, -+ {value: 0x8132, lo: 0x88, hi: 0x8a}, -+ {value: 0x812d, lo: 0x8b, hi: 0x8b}, -+ {value: 0x8132, lo: 0x8c, hi: 0x8c}, -+ {value: 0x812d, lo: 0x8d, hi: 0x90}, -+ // Block 0x75, offset 0x231 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8104, lo: 0x86, hi: 0x86}, -+ {value: 0x8104, lo: 0xbf, hi: 0xbf}, -+ // Block 0x76, offset 0x234 -+ {value: 0x17fe, lo: 0x07}, -+ {value: 0xa000, lo: 0x99, hi: 0x99}, -+ {value: 0x423b, lo: 0x9a, hi: 0x9a}, -+ {value: 0xa000, lo: 0x9b, hi: 0x9b}, -+ {value: 0x4245, lo: 0x9c, hi: 0x9c}, -+ {value: 0xa000, lo: 0xa5, hi: 0xa5}, -+ {value: 0x424f, lo: 0xab, hi: 0xab}, -+ {value: 0x8104, lo: 0xb9, hi: 0xba}, -+ // Block 0x77, offset 0x23c -+ {value: 0x0000, lo: 0x06}, -+ {value: 0x8132, lo: 0x80, hi: 0x82}, -+ {value: 0x9900, lo: 0xa7, hi: 0xa7}, -+ {value: 0x2d81, lo: 0xae, hi: 0xae}, -+ {value: 0x2d8b, lo: 0xaf, hi: 0xaf}, -+ {value: 0xa000, lo: 0xb1, hi: 0xb2}, -+ {value: 0x8104, lo: 0xb3, hi: 0xb4}, -+ // Block 0x78, offset 0x243 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8104, lo: 0x80, hi: 0x80}, -+ {value: 0x8102, lo: 0x8a, hi: 0x8a}, -+ // Block 0x79, offset 0x246 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8104, lo: 0xb5, hi: 0xb5}, -+ {value: 0x8102, lo: 0xb6, hi: 0xb6}, -+ // Block 0x7a, offset 0x249 -+ {value: 0x0002, lo: 0x01}, -+ {value: 0x8102, lo: 0xa9, hi: 0xaa}, -+ // Block 0x7b, offset 0x24b -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8102, lo: 0xbb, hi: 0xbc}, -+ {value: 0x9900, lo: 0xbe, hi: 0xbe}, -+ // Block 0x7c, offset 0x24e -+ {value: 0x0000, lo: 0x07}, -+ {value: 0xa000, lo: 0x87, hi: 0x87}, -+ {value: 0x2d95, lo: 0x8b, hi: 0x8b}, -+ {value: 0x2d9f, lo: 0x8c, hi: 0x8c}, -+ {value: 0x8104, lo: 0x8d, hi: 0x8d}, -+ {value: 0x9900, lo: 0x97, hi: 0x97}, -+ {value: 0x8132, lo: 0xa6, hi: 0xac}, -+ {value: 0x8132, lo: 0xb0, hi: 0xb4}, -+ // Block 0x7d, offset 0x256 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x8104, lo: 0x82, hi: 0x82}, -+ {value: 0x8102, lo: 0x86, hi: 0x86}, -+ {value: 0x8132, lo: 0x9e, hi: 0x9e}, -+ // Block 0x7e, offset 0x25a -+ {value: 0x6b57, lo: 0x06}, -+ {value: 0x9900, lo: 0xb0, hi: 0xb0}, -+ {value: 0xa000, lo: 0xb9, hi: 0xb9}, -+ {value: 0x9900, lo: 0xba, hi: 0xba}, -+ {value: 0x2db3, lo: 0xbb, hi: 0xbb}, -+ {value: 0x2da9, lo: 0xbc, hi: 0xbd}, -+ {value: 0x2dbd, lo: 0xbe, hi: 0xbe}, -+ // Block 0x7f, offset 0x261 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8104, lo: 0x82, hi: 0x82}, -+ {value: 0x8102, lo: 0x83, hi: 0x83}, -+ // Block 0x80, offset 0x264 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x9900, lo: 0xaf, hi: 0xaf}, -+ {value: 0xa000, lo: 0xb8, hi: 0xb9}, -+ {value: 0x2dc7, lo: 0xba, hi: 0xba}, -+ {value: 0x2dd1, lo: 0xbb, hi: 0xbb}, -+ {value: 0x8104, lo: 0xbf, hi: 0xbf}, -+ // Block 0x81, offset 0x26a -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8102, lo: 0x80, hi: 0x80}, -+ // Block 0x82, offset 0x26c -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8104, lo: 0xb6, hi: 0xb6}, -+ {value: 0x8102, lo: 0xb7, hi: 0xb7}, -+ // Block 0x83, offset 0x26f -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8104, lo: 0xab, hi: 0xab}, -+ // Block 0x84, offset 0x271 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8104, lo: 0xb9, hi: 0xb9}, -+ {value: 0x8102, lo: 0xba, hi: 0xba}, -+ // Block 0x85, offset 0x274 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8104, lo: 0xa0, hi: 0xa0}, -+ // Block 0x86, offset 0x276 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8104, lo: 0xb4, hi: 0xb4}, -+ // Block 0x87, offset 0x278 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8104, lo: 0x87, hi: 0x87}, -+ // Block 0x88, offset 0x27a -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8104, lo: 0x99, hi: 0x99}, -+ // Block 0x89, offset 0x27c -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8102, lo: 0x82, hi: 0x82}, -+ {value: 0x8104, lo: 0x84, hi: 0x85}, -+ // Block 0x8a, offset 0x27f -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8104, lo: 0x97, hi: 0x97}, -+ // Block 0x8b, offset 0x281 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8101, lo: 0xb0, hi: 0xb4}, -+ // Block 0x8c, offset 0x283 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8132, lo: 0xb0, hi: 0xb6}, -+ // Block 0x8d, offset 0x285 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8101, lo: 0x9e, hi: 0x9e}, -+ // Block 0x8e, offset 0x287 -+ {value: 0x0000, lo: 0x0c}, -+ {value: 0x45cf, lo: 0x9e, hi: 0x9e}, -+ {value: 0x45d9, lo: 0x9f, hi: 0x9f}, -+ {value: 0x460d, lo: 0xa0, hi: 0xa0}, -+ {value: 0x461b, lo: 0xa1, hi: 0xa1}, -+ {value: 0x4629, lo: 0xa2, hi: 0xa2}, -+ {value: 0x4637, lo: 0xa3, hi: 0xa3}, -+ {value: 0x4645, lo: 0xa4, hi: 0xa4}, -+ {value: 0x812b, lo: 0xa5, hi: 0xa6}, -+ {value: 0x8101, lo: 0xa7, hi: 0xa9}, -+ {value: 0x8130, lo: 0xad, hi: 0xad}, -+ {value: 0x812b, lo: 0xae, hi: 0xb2}, -+ {value: 0x812d, lo: 0xbb, hi: 0xbf}, -+ // Block 0x8f, offset 0x294 -+ {value: 0x0000, lo: 0x09}, -+ {value: 0x812d, lo: 0x80, hi: 0x82}, -+ {value: 0x8132, lo: 0x85, hi: 0x89}, -+ {value: 0x812d, lo: 0x8a, hi: 0x8b}, -+ {value: 0x8132, lo: 0xaa, hi: 0xad}, -+ {value: 0x45e3, lo: 0xbb, hi: 0xbb}, -+ {value: 0x45ed, lo: 0xbc, hi: 0xbc}, -+ {value: 0x4653, lo: 0xbd, hi: 0xbd}, -+ {value: 0x466f, lo: 0xbe, hi: 0xbe}, -+ {value: 0x4661, lo: 0xbf, hi: 0xbf}, -+ // Block 0x90, offset 0x29e -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x467d, lo: 0x80, hi: 0x80}, -+ // Block 0x91, offset 0x2a0 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8132, lo: 0x82, hi: 0x84}, -+ // Block 0x92, offset 0x2a2 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x8132, lo: 0x80, hi: 0x86}, -+ {value: 0x8132, lo: 0x88, hi: 0x98}, -+ {value: 0x8132, lo: 0x9b, hi: 0xa1}, -+ {value: 0x8132, lo: 0xa3, hi: 0xa4}, -+ {value: 0x8132, lo: 0xa6, hi: 0xaa}, -+ // Block 0x93, offset 0x2a8 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8132, lo: 0xac, hi: 0xaf}, -+ // Block 0x94, offset 0x2aa -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812d, lo: 0x90, hi: 0x96}, -+ // Block 0x95, offset 0x2ac -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8132, lo: 0x84, hi: 0x89}, -+ {value: 0x8102, lo: 0x8a, hi: 0x8a}, -+ // Block 0x96, offset 0x2af -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8100, lo: 0x93, hi: 0x93}, -+} -+ -+// lookup returns the trie value for the first UTF-8 encoding in s and -+// the width in bytes of this encoding. The size will be 0 if s does not -+// hold enough bytes to complete the encoding. len(s) must be greater than 0. -+func (t *nfkcTrie) lookup(s []byte) (v uint16, sz int) { -+ c0 := s[0] -+ switch { -+ case c0 < 0x80: // is ASCII -+ return nfkcValues[c0], 1 -+ case c0 < 0xC2: -+ return 0, 1 // Illegal UTF-8: not a starter, not ASCII. -+ case c0 < 0xE0: // 2-byte UTF-8 -+ if len(s) < 2 { -+ return 0, 0 -+ } -+ i := nfkcIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c1), 2 -+ case c0 < 0xF0: // 3-byte UTF-8 -+ if len(s) < 3 { -+ return 0, 0 -+ } -+ i := nfkcIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = nfkcIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c2), 3 -+ case c0 < 0xF8: // 4-byte UTF-8 -+ if len(s) < 4 { -+ return 0, 0 -+ } -+ i := nfkcIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = nfkcIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ o = uint32(i)<<6 + uint32(c2) -+ i = nfkcIndex[o] -+ c3 := s[3] -+ if c3 < 0x80 || 0xC0 <= c3 { -+ return 0, 3 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c3), 4 -+ } -+ // Illegal rune -+ return 0, 1 -+} -+ -+// lookupUnsafe returns the trie value for the first UTF-8 encoding in s. -+// s must start with a full and valid UTF-8 encoded rune. -+func (t *nfkcTrie) lookupUnsafe(s []byte) uint16 { -+ c0 := s[0] -+ if c0 < 0x80 { // is ASCII -+ return nfkcValues[c0] -+ } -+ i := nfkcIndex[c0] -+ if c0 < 0xE0 { // 2-byte UTF-8 -+ return t.lookupValue(uint32(i), s[1]) -+ } -+ i = nfkcIndex[uint32(i)<<6+uint32(s[1])] -+ if c0 < 0xF0 { // 3-byte UTF-8 -+ return t.lookupValue(uint32(i), s[2]) -+ } -+ i = nfkcIndex[uint32(i)<<6+uint32(s[2])] -+ if c0 < 0xF8 { // 4-byte UTF-8 -+ return t.lookupValue(uint32(i), s[3]) -+ } -+ return 0 -+} -+ -+// lookupString returns the trie value for the first UTF-8 encoding in s and -+// the width in bytes of this encoding. The size will be 0 if s does not -+// hold enough bytes to complete the encoding. len(s) must be greater than 0. -+func (t *nfkcTrie) lookupString(s string) (v uint16, sz int) { -+ c0 := s[0] -+ switch { -+ case c0 < 0x80: // is ASCII -+ return nfkcValues[c0], 1 -+ case c0 < 0xC2: -+ return 0, 1 // Illegal UTF-8: not a starter, not ASCII. -+ case c0 < 0xE0: // 2-byte UTF-8 -+ if len(s) < 2 { -+ return 0, 0 -+ } -+ i := nfkcIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c1), 2 -+ case c0 < 0xF0: // 3-byte UTF-8 -+ if len(s) < 3 { -+ return 0, 0 -+ } -+ i := nfkcIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = nfkcIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c2), 3 -+ case c0 < 0xF8: // 4-byte UTF-8 -+ if len(s) < 4 { -+ return 0, 0 -+ } -+ i := nfkcIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = nfkcIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ o = uint32(i)<<6 + uint32(c2) -+ i = nfkcIndex[o] -+ c3 := s[3] -+ if c3 < 0x80 || 0xC0 <= c3 { -+ return 0, 3 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c3), 4 -+ } -+ // Illegal rune -+ return 0, 1 -+} -+ -+// lookupStringUnsafe returns the trie value for the first UTF-8 encoding in s. -+// s must start with a full and valid UTF-8 encoded rune. -+func (t *nfkcTrie) lookupStringUnsafe(s string) uint16 { -+ c0 := s[0] -+ if c0 < 0x80 { // is ASCII -+ return nfkcValues[c0] -+ } -+ i := nfkcIndex[c0] -+ if c0 < 0xE0 { // 2-byte UTF-8 -+ return t.lookupValue(uint32(i), s[1]) -+ } -+ i = nfkcIndex[uint32(i)<<6+uint32(s[1])] -+ if c0 < 0xF0 { // 3-byte UTF-8 -+ return t.lookupValue(uint32(i), s[2]) -+ } -+ i = nfkcIndex[uint32(i)<<6+uint32(s[2])] -+ if c0 < 0xF8 { // 4-byte UTF-8 -+ return t.lookupValue(uint32(i), s[3]) -+ } -+ return 0 -+} -+ -+// nfkcTrie. Total size: 18684 bytes (18.25 KiB). Checksum: 113e23c477adfabd. -+type nfkcTrie struct{} -+ -+func newNfkcTrie(i int) *nfkcTrie { -+ return &nfkcTrie{} -+} -+ -+// lookupValue determines the type of block n and looks up the value for b. -+func (t *nfkcTrie) lookupValue(n uint32, b byte) uint16 { -+ switch { -+ case n < 92: -+ return uint16(nfkcValues[n<<6+uint32(b)]) -+ default: -+ n -= 92 -+ return uint16(nfkcSparse.lookup(n, b)) -+ } -+} -+ -+// nfkcValues: 94 blocks, 6016 entries, 12032 bytes -+// The third block is the zero block. -+var nfkcValues = [6016]uint16{ -+ // Block 0x0, offset 0x0 -+ 0x3c: 0xa000, 0x3d: 0xa000, 0x3e: 0xa000, -+ // Block 0x1, offset 0x40 -+ 0x41: 0xa000, 0x42: 0xa000, 0x43: 0xa000, 0x44: 0xa000, 0x45: 0xa000, -+ 0x46: 0xa000, 0x47: 0xa000, 0x48: 0xa000, 0x49: 0xa000, 0x4a: 0xa000, 0x4b: 0xa000, -+ 0x4c: 0xa000, 0x4d: 0xa000, 0x4e: 0xa000, 0x4f: 0xa000, 0x50: 0xa000, -+ 0x52: 0xa000, 0x53: 0xa000, 0x54: 0xa000, 0x55: 0xa000, 0x56: 0xa000, 0x57: 0xa000, -+ 0x58: 0xa000, 0x59: 0xa000, 0x5a: 0xa000, -+ 0x61: 0xa000, 0x62: 0xa000, 0x63: 0xa000, -+ 0x64: 0xa000, 0x65: 0xa000, 0x66: 0xa000, 0x67: 0xa000, 0x68: 0xa000, 0x69: 0xa000, -+ 0x6a: 0xa000, 0x6b: 0xa000, 0x6c: 0xa000, 0x6d: 0xa000, 0x6e: 0xa000, 0x6f: 0xa000, -+ 0x70: 0xa000, 0x72: 0xa000, 0x73: 0xa000, 0x74: 0xa000, 0x75: 0xa000, -+ 0x76: 0xa000, 0x77: 0xa000, 0x78: 0xa000, 0x79: 0xa000, 0x7a: 0xa000, -+ // Block 0x2, offset 0x80 -+ // Block 0x3, offset 0xc0 -+ 0xc0: 0x2f72, 0xc1: 0x2f77, 0xc2: 0x468b, 0xc3: 0x2f7c, 0xc4: 0x469a, 0xc5: 0x469f, -+ 0xc6: 0xa000, 0xc7: 0x46a9, 0xc8: 0x2fe5, 0xc9: 0x2fea, 0xca: 0x46ae, 0xcb: 0x2ffe, -+ 0xcc: 0x3071, 0xcd: 0x3076, 0xce: 0x307b, 0xcf: 0x46c2, 0xd1: 0x3107, -+ 0xd2: 0x312a, 0xd3: 0x312f, 0xd4: 0x46cc, 0xd5: 0x46d1, 0xd6: 0x46e0, -+ 0xd8: 0xa000, 0xd9: 0x31b6, 0xda: 0x31bb, 0xdb: 0x31c0, 0xdc: 0x4712, 0xdd: 0x3238, -+ 0xe0: 0x327e, 0xe1: 0x3283, 0xe2: 0x471c, 0xe3: 0x3288, -+ 0xe4: 0x472b, 0xe5: 0x4730, 0xe6: 0xa000, 0xe7: 0x473a, 0xe8: 0x32f1, 0xe9: 0x32f6, -+ 0xea: 0x473f, 0xeb: 0x330a, 0xec: 0x3382, 0xed: 0x3387, 0xee: 0x338c, 0xef: 0x4753, -+ 0xf1: 0x3418, 0xf2: 0x343b, 0xf3: 0x3440, 0xf4: 0x475d, 0xf5: 0x4762, -+ 0xf6: 0x4771, 0xf8: 0xa000, 0xf9: 0x34cc, 0xfa: 0x34d1, 0xfb: 0x34d6, -+ 0xfc: 0x47a3, 0xfd: 0x3553, 0xff: 0x356c, -+ // Block 0x4, offset 0x100 -+ 0x100: 0x2f81, 0x101: 0x328d, 0x102: 0x4690, 0x103: 0x4721, 0x104: 0x2f9f, 0x105: 0x32ab, -+ 0x106: 0x2fb3, 0x107: 0x32bf, 0x108: 0x2fb8, 0x109: 0x32c4, 0x10a: 0x2fbd, 0x10b: 0x32c9, -+ 0x10c: 0x2fc2, 0x10d: 0x32ce, 0x10e: 0x2fcc, 0x10f: 0x32d8, -+ 0x112: 0x46b3, 0x113: 0x4744, 0x114: 0x2ff4, 0x115: 0x3300, 0x116: 0x2ff9, 0x117: 0x3305, -+ 0x118: 0x3017, 0x119: 0x3323, 0x11a: 0x3008, 0x11b: 0x3314, 0x11c: 0x3030, 0x11d: 0x333c, -+ 0x11e: 0x303a, 0x11f: 0x3346, 0x120: 0x303f, 0x121: 0x334b, 0x122: 0x3049, 0x123: 0x3355, -+ 0x124: 0x304e, 0x125: 0x335a, 0x128: 0x3080, 0x129: 0x3391, -+ 0x12a: 0x3085, 0x12b: 0x3396, 0x12c: 0x308a, 0x12d: 0x339b, 0x12e: 0x30ad, 0x12f: 0x33b9, -+ 0x130: 0x308f, 0x132: 0x195d, 0x133: 0x19ea, 0x134: 0x30b7, 0x135: 0x33c3, -+ 0x136: 0x30cb, 0x137: 0x33dc, 0x139: 0x30d5, 0x13a: 0x33e6, 0x13b: 0x30df, -+ 0x13c: 0x33f0, 0x13d: 0x30da, 0x13e: 0x33eb, 0x13f: 0x1baf, -+ // Block 0x5, offset 0x140 -+ 0x140: 0x1c37, 0x143: 0x3102, 0x144: 0x3413, 0x145: 0x311b, -+ 0x146: 0x342c, 0x147: 0x3111, 0x148: 0x3422, 0x149: 0x1c5f, -+ 0x14c: 0x46d6, 0x14d: 0x4767, 0x14e: 0x3134, 0x14f: 0x3445, 0x150: 0x313e, 0x151: 0x344f, -+ 0x154: 0x315c, 0x155: 0x346d, 0x156: 0x3175, 0x157: 0x3486, -+ 0x158: 0x3166, 0x159: 0x3477, 0x15a: 0x46f9, 0x15b: 0x478a, 0x15c: 0x317f, 0x15d: 0x3490, -+ 0x15e: 0x318e, 0x15f: 0x349f, 0x160: 0x46fe, 0x161: 0x478f, 0x162: 0x31a7, 0x163: 0x34bd, -+ 0x164: 0x3198, 0x165: 0x34ae, 0x168: 0x4708, 0x169: 0x4799, -+ 0x16a: 0x470d, 0x16b: 0x479e, 0x16c: 0x31c5, 0x16d: 0x34db, 0x16e: 0x31cf, 0x16f: 0x34e5, -+ 0x170: 0x31d4, 0x171: 0x34ea, 0x172: 0x31f2, 0x173: 0x3508, 0x174: 0x3215, 0x175: 0x352b, -+ 0x176: 0x323d, 0x177: 0x3558, 0x178: 0x3251, 0x179: 0x3260, 0x17a: 0x3580, 0x17b: 0x326a, -+ 0x17c: 0x358a, 0x17d: 0x326f, 0x17e: 0x358f, 0x17f: 0x00a7, -+ // Block 0x6, offset 0x180 -+ 0x184: 0x2df1, 0x185: 0x2df7, -+ 0x186: 0x2dfd, 0x187: 0x1972, 0x188: 0x1975, 0x189: 0x1a0b, 0x18a: 0x198a, 0x18b: 0x198d, -+ 0x18c: 0x1a41, 0x18d: 0x2f8b, 0x18e: 0x3297, 0x18f: 0x3099, 0x190: 0x33a5, 0x191: 0x3143, -+ 0x192: 0x3454, 0x193: 0x31d9, 0x194: 0x34ef, 0x195: 0x39d2, 0x196: 0x3b61, 0x197: 0x39cb, -+ 0x198: 0x3b5a, 0x199: 0x39d9, 0x19a: 0x3b68, 0x19b: 0x39c4, 0x19c: 0x3b53, -+ 0x19e: 0x38b3, 0x19f: 0x3a42, 0x1a0: 0x38ac, 0x1a1: 0x3a3b, 0x1a2: 0x35b6, 0x1a3: 0x35c8, -+ 0x1a6: 0x3044, 0x1a7: 0x3350, 0x1a8: 0x30c1, 0x1a9: 0x33d2, -+ 0x1aa: 0x46ef, 0x1ab: 0x4780, 0x1ac: 0x3993, 0x1ad: 0x3b22, 0x1ae: 0x35da, 0x1af: 0x35e0, -+ 0x1b0: 0x33c8, 0x1b1: 0x1942, 0x1b2: 0x1945, 0x1b3: 0x19d2, 0x1b4: 0x302b, 0x1b5: 0x3337, -+ 0x1b8: 0x30fd, 0x1b9: 0x340e, 0x1ba: 0x38ba, 0x1bb: 0x3a49, -+ 0x1bc: 0x35b0, 0x1bd: 0x35c2, 0x1be: 0x35bc, 0x1bf: 0x35ce, -+ // Block 0x7, offset 0x1c0 -+ 0x1c0: 0x2f90, 0x1c1: 0x329c, 0x1c2: 0x2f95, 0x1c3: 0x32a1, 0x1c4: 0x300d, 0x1c5: 0x3319, -+ 0x1c6: 0x3012, 0x1c7: 0x331e, 0x1c8: 0x309e, 0x1c9: 0x33aa, 0x1ca: 0x30a3, 0x1cb: 0x33af, -+ 0x1cc: 0x3148, 0x1cd: 0x3459, 0x1ce: 0x314d, 0x1cf: 0x345e, 0x1d0: 0x316b, 0x1d1: 0x347c, -+ 0x1d2: 0x3170, 0x1d3: 0x3481, 0x1d4: 0x31de, 0x1d5: 0x34f4, 0x1d6: 0x31e3, 0x1d7: 0x34f9, -+ 0x1d8: 0x3189, 0x1d9: 0x349a, 0x1da: 0x31a2, 0x1db: 0x34b8, -+ 0x1de: 0x305d, 0x1df: 0x3369, -+ 0x1e6: 0x4695, 0x1e7: 0x4726, 0x1e8: 0x46bd, 0x1e9: 0x474e, -+ 0x1ea: 0x3962, 0x1eb: 0x3af1, 0x1ec: 0x393f, 0x1ed: 0x3ace, 0x1ee: 0x46db, 0x1ef: 0x476c, -+ 0x1f0: 0x395b, 0x1f1: 0x3aea, 0x1f2: 0x3247, 0x1f3: 0x3562, -+ // Block 0x8, offset 0x200 -+ 0x200: 0x9932, 0x201: 0x9932, 0x202: 0x9932, 0x203: 0x9932, 0x204: 0x9932, 0x205: 0x8132, -+ 0x206: 0x9932, 0x207: 0x9932, 0x208: 0x9932, 0x209: 0x9932, 0x20a: 0x9932, 0x20b: 0x9932, -+ 0x20c: 0x9932, 0x20d: 0x8132, 0x20e: 0x8132, 0x20f: 0x9932, 0x210: 0x8132, 0x211: 0x9932, -+ 0x212: 0x8132, 0x213: 0x9932, 0x214: 0x9932, 0x215: 0x8133, 0x216: 0x812d, 0x217: 0x812d, -+ 0x218: 0x812d, 0x219: 0x812d, 0x21a: 0x8133, 0x21b: 0x992b, 0x21c: 0x812d, 0x21d: 0x812d, -+ 0x21e: 0x812d, 0x21f: 0x812d, 0x220: 0x812d, 0x221: 0x8129, 0x222: 0x8129, 0x223: 0x992d, -+ 0x224: 0x992d, 0x225: 0x992d, 0x226: 0x992d, 0x227: 0x9929, 0x228: 0x9929, 0x229: 0x812d, -+ 0x22a: 0x812d, 0x22b: 0x812d, 0x22c: 0x812d, 0x22d: 0x992d, 0x22e: 0x992d, 0x22f: 0x812d, -+ 0x230: 0x992d, 0x231: 0x992d, 0x232: 0x812d, 0x233: 0x812d, 0x234: 0x8101, 0x235: 0x8101, -+ 0x236: 0x8101, 0x237: 0x8101, 0x238: 0x9901, 0x239: 0x812d, 0x23a: 0x812d, 0x23b: 0x812d, -+ 0x23c: 0x812d, 0x23d: 0x8132, 0x23e: 0x8132, 0x23f: 0x8132, -+ // Block 0x9, offset 0x240 -+ 0x240: 0x49b1, 0x241: 0x49b6, 0x242: 0x9932, 0x243: 0x49bb, 0x244: 0x4a74, 0x245: 0x9936, -+ 0x246: 0x8132, 0x247: 0x812d, 0x248: 0x812d, 0x249: 0x812d, 0x24a: 0x8132, 0x24b: 0x8132, -+ 0x24c: 0x8132, 0x24d: 0x812d, 0x24e: 0x812d, 0x250: 0x8132, 0x251: 0x8132, -+ 0x252: 0x8132, 0x253: 0x812d, 0x254: 0x812d, 0x255: 0x812d, 0x256: 0x812d, 0x257: 0x8132, -+ 0x258: 0x8133, 0x259: 0x812d, 0x25a: 0x812d, 0x25b: 0x8132, 0x25c: 0x8134, 0x25d: 0x8135, -+ 0x25e: 0x8135, 0x25f: 0x8134, 0x260: 0x8135, 0x261: 0x8135, 0x262: 0x8134, 0x263: 0x8132, -+ 0x264: 0x8132, 0x265: 0x8132, 0x266: 0x8132, 0x267: 0x8132, 0x268: 0x8132, 0x269: 0x8132, -+ 0x26a: 0x8132, 0x26b: 0x8132, 0x26c: 0x8132, 0x26d: 0x8132, 0x26e: 0x8132, 0x26f: 0x8132, -+ 0x274: 0x0170, -+ 0x27a: 0x42a8, -+ 0x27e: 0x0037, -+ // Block 0xa, offset 0x280 -+ 0x284: 0x425d, 0x285: 0x447e, -+ 0x286: 0x35ec, 0x287: 0x00ce, 0x288: 0x360a, 0x289: 0x3616, 0x28a: 0x3628, -+ 0x28c: 0x3646, 0x28e: 0x3658, 0x28f: 0x3676, 0x290: 0x3e0b, 0x291: 0xa000, -+ 0x295: 0xa000, 0x297: 0xa000, -+ 0x299: 0xa000, -+ 0x29f: 0xa000, 0x2a1: 0xa000, -+ 0x2a5: 0xa000, 0x2a9: 0xa000, -+ 0x2aa: 0x363a, 0x2ab: 0x366a, 0x2ac: 0x4801, 0x2ad: 0x369a, 0x2ae: 0x482b, 0x2af: 0x36ac, -+ 0x2b0: 0x3e73, 0x2b1: 0xa000, 0x2b5: 0xa000, -+ 0x2b7: 0xa000, 0x2b9: 0xa000, -+ 0x2bf: 0xa000, -+ // Block 0xb, offset 0x2c0 -+ 0x2c1: 0xa000, 0x2c5: 0xa000, -+ 0x2c9: 0xa000, 0x2ca: 0x4843, 0x2cb: 0x4861, -+ 0x2cc: 0x36ca, 0x2cd: 0x36e2, 0x2ce: 0x4879, 0x2d0: 0x01be, 0x2d1: 0x01d0, -+ 0x2d2: 0x01ac, 0x2d3: 0x430f, 0x2d4: 0x4315, 0x2d5: 0x01fa, 0x2d6: 0x01e8, -+ 0x2f0: 0x01d6, 0x2f1: 0x01eb, 0x2f2: 0x01ee, 0x2f4: 0x0188, 0x2f5: 0x01c7, -+ 0x2f9: 0x01a6, -+ // Block 0xc, offset 0x300 -+ 0x300: 0x3724, 0x301: 0x3730, 0x303: 0x371e, -+ 0x306: 0xa000, 0x307: 0x370c, -+ 0x30c: 0x3760, 0x30d: 0x3748, 0x30e: 0x3772, 0x310: 0xa000, -+ 0x313: 0xa000, 0x315: 0xa000, 0x316: 0xa000, 0x317: 0xa000, -+ 0x318: 0xa000, 0x319: 0x3754, 0x31a: 0xa000, -+ 0x31e: 0xa000, 0x323: 0xa000, -+ 0x327: 0xa000, -+ 0x32b: 0xa000, 0x32d: 0xa000, -+ 0x330: 0xa000, 0x333: 0xa000, 0x335: 0xa000, -+ 0x336: 0xa000, 0x337: 0xa000, 0x338: 0xa000, 0x339: 0x37d8, 0x33a: 0xa000, -+ 0x33e: 0xa000, -+ // Block 0xd, offset 0x340 -+ 0x341: 0x3736, 0x342: 0x37ba, -+ 0x350: 0x3712, 0x351: 0x3796, -+ 0x352: 0x3718, 0x353: 0x379c, 0x356: 0x372a, 0x357: 0x37ae, -+ 0x358: 0xa000, 0x359: 0xa000, 0x35a: 0x382c, 0x35b: 0x3832, 0x35c: 0x373c, 0x35d: 0x37c0, -+ 0x35e: 0x3742, 0x35f: 0x37c6, 0x362: 0x374e, 0x363: 0x37d2, -+ 0x364: 0x375a, 0x365: 0x37de, 0x366: 0x3766, 0x367: 0x37ea, 0x368: 0xa000, 0x369: 0xa000, -+ 0x36a: 0x3838, 0x36b: 0x383e, 0x36c: 0x3790, 0x36d: 0x3814, 0x36e: 0x376c, 0x36f: 0x37f0, -+ 0x370: 0x3778, 0x371: 0x37fc, 0x372: 0x377e, 0x373: 0x3802, 0x374: 0x3784, 0x375: 0x3808, -+ 0x378: 0x378a, 0x379: 0x380e, -+ // Block 0xe, offset 0x380 -+ 0x387: 0x1d64, -+ 0x391: 0x812d, -+ 0x392: 0x8132, 0x393: 0x8132, 0x394: 0x8132, 0x395: 0x8132, 0x396: 0x812d, 0x397: 0x8132, -+ 0x398: 0x8132, 0x399: 0x8132, 0x39a: 0x812e, 0x39b: 0x812d, 0x39c: 0x8132, 0x39d: 0x8132, -+ 0x39e: 0x8132, 0x39f: 0x8132, 0x3a0: 0x8132, 0x3a1: 0x8132, 0x3a2: 0x812d, 0x3a3: 0x812d, -+ 0x3a4: 0x812d, 0x3a5: 0x812d, 0x3a6: 0x812d, 0x3a7: 0x812d, 0x3a8: 0x8132, 0x3a9: 0x8132, -+ 0x3aa: 0x812d, 0x3ab: 0x8132, 0x3ac: 0x8132, 0x3ad: 0x812e, 0x3ae: 0x8131, 0x3af: 0x8132, -+ 0x3b0: 0x8105, 0x3b1: 0x8106, 0x3b2: 0x8107, 0x3b3: 0x8108, 0x3b4: 0x8109, 0x3b5: 0x810a, -+ 0x3b6: 0x810b, 0x3b7: 0x810c, 0x3b8: 0x810d, 0x3b9: 0x810e, 0x3ba: 0x810e, 0x3bb: 0x810f, -+ 0x3bc: 0x8110, 0x3bd: 0x8111, 0x3bf: 0x8112, -+ // Block 0xf, offset 0x3c0 -+ 0x3c8: 0xa000, 0x3ca: 0xa000, 0x3cb: 0x8116, -+ 0x3cc: 0x8117, 0x3cd: 0x8118, 0x3ce: 0x8119, 0x3cf: 0x811a, 0x3d0: 0x811b, 0x3d1: 0x811c, -+ 0x3d2: 0x811d, 0x3d3: 0x9932, 0x3d4: 0x9932, 0x3d5: 0x992d, 0x3d6: 0x812d, 0x3d7: 0x8132, -+ 0x3d8: 0x8132, 0x3d9: 0x8132, 0x3da: 0x8132, 0x3db: 0x8132, 0x3dc: 0x812d, 0x3dd: 0x8132, -+ 0x3de: 0x8132, 0x3df: 0x812d, -+ 0x3f0: 0x811e, 0x3f5: 0x1d87, -+ 0x3f6: 0x2016, 0x3f7: 0x2052, 0x3f8: 0x204d, -+ // Block 0x10, offset 0x400 -+ 0x413: 0x812d, 0x414: 0x8132, 0x415: 0x8132, 0x416: 0x8132, 0x417: 0x8132, -+ 0x418: 0x8132, 0x419: 0x8132, 0x41a: 0x8132, 0x41b: 0x8132, 0x41c: 0x8132, 0x41d: 0x8132, -+ 0x41e: 0x8132, 0x41f: 0x8132, 0x420: 0x8132, 0x421: 0x8132, 0x423: 0x812d, -+ 0x424: 0x8132, 0x425: 0x8132, 0x426: 0x812d, 0x427: 0x8132, 0x428: 0x8132, 0x429: 0x812d, -+ 0x42a: 0x8132, 0x42b: 0x8132, 0x42c: 0x8132, 0x42d: 0x812d, 0x42e: 0x812d, 0x42f: 0x812d, -+ 0x430: 0x8116, 0x431: 0x8117, 0x432: 0x8118, 0x433: 0x8132, 0x434: 0x8132, 0x435: 0x8132, -+ 0x436: 0x812d, 0x437: 0x8132, 0x438: 0x8132, 0x439: 0x812d, 0x43a: 0x812d, 0x43b: 0x8132, -+ 0x43c: 0x8132, 0x43d: 0x8132, 0x43e: 0x8132, 0x43f: 0x8132, -+ // Block 0x11, offset 0x440 -+ 0x445: 0xa000, -+ 0x446: 0x2d29, 0x447: 0xa000, 0x448: 0x2d31, 0x449: 0xa000, 0x44a: 0x2d39, 0x44b: 0xa000, -+ 0x44c: 0x2d41, 0x44d: 0xa000, 0x44e: 0x2d49, 0x451: 0xa000, -+ 0x452: 0x2d51, -+ 0x474: 0x8102, 0x475: 0x9900, -+ 0x47a: 0xa000, 0x47b: 0x2d59, -+ 0x47c: 0xa000, 0x47d: 0x2d61, 0x47e: 0xa000, 0x47f: 0xa000, -+ // Block 0x12, offset 0x480 -+ 0x480: 0x0069, 0x481: 0x006b, 0x482: 0x006f, 0x483: 0x0083, 0x484: 0x00f5, 0x485: 0x00f8, -+ 0x486: 0x0413, 0x487: 0x0085, 0x488: 0x0089, 0x489: 0x008b, 0x48a: 0x0104, 0x48b: 0x0107, -+ 0x48c: 0x010a, 0x48d: 0x008f, 0x48f: 0x0097, 0x490: 0x009b, 0x491: 0x00e0, -+ 0x492: 0x009f, 0x493: 0x00fe, 0x494: 0x0417, 0x495: 0x041b, 0x496: 0x00a1, 0x497: 0x00a9, -+ 0x498: 0x00ab, 0x499: 0x0423, 0x49a: 0x012b, 0x49b: 0x00ad, 0x49c: 0x0427, 0x49d: 0x01be, -+ 0x49e: 0x01c1, 0x49f: 0x01c4, 0x4a0: 0x01fa, 0x4a1: 0x01fd, 0x4a2: 0x0093, 0x4a3: 0x00a5, -+ 0x4a4: 0x00ab, 0x4a5: 0x00ad, 0x4a6: 0x01be, 0x4a7: 0x01c1, 0x4a8: 0x01eb, 0x4a9: 0x01fa, -+ 0x4aa: 0x01fd, -+ 0x4b8: 0x020c, -+ // Block 0x13, offset 0x4c0 -+ 0x4db: 0x00fb, 0x4dc: 0x0087, 0x4dd: 0x0101, -+ 0x4de: 0x00d4, 0x4df: 0x010a, 0x4e0: 0x008d, 0x4e1: 0x010d, 0x4e2: 0x0110, 0x4e3: 0x0116, -+ 0x4e4: 0x011c, 0x4e5: 0x011f, 0x4e6: 0x0122, 0x4e7: 0x042b, 0x4e8: 0x016a, 0x4e9: 0x0128, -+ 0x4ea: 0x042f, 0x4eb: 0x016d, 0x4ec: 0x0131, 0x4ed: 0x012e, 0x4ee: 0x0134, 0x4ef: 0x0137, -+ 0x4f0: 0x013a, 0x4f1: 0x013d, 0x4f2: 0x0140, 0x4f3: 0x014c, 0x4f4: 0x014f, 0x4f5: 0x00ec, -+ 0x4f6: 0x0152, 0x4f7: 0x0155, 0x4f8: 0x041f, 0x4f9: 0x0158, 0x4fa: 0x015b, 0x4fb: 0x00b5, -+ 0x4fc: 0x015e, 0x4fd: 0x0161, 0x4fe: 0x0164, 0x4ff: 0x01d0, -+ // Block 0x14, offset 0x500 -+ 0x500: 0x8132, 0x501: 0x8132, 0x502: 0x812d, 0x503: 0x8132, 0x504: 0x8132, 0x505: 0x8132, -+ 0x506: 0x8132, 0x507: 0x8132, 0x508: 0x8132, 0x509: 0x8132, 0x50a: 0x812d, 0x50b: 0x8132, -+ 0x50c: 0x8132, 0x50d: 0x8135, 0x50e: 0x812a, 0x50f: 0x812d, 0x510: 0x8129, 0x511: 0x8132, -+ 0x512: 0x8132, 0x513: 0x8132, 0x514: 0x8132, 0x515: 0x8132, 0x516: 0x8132, 0x517: 0x8132, -+ 0x518: 0x8132, 0x519: 0x8132, 0x51a: 0x8132, 0x51b: 0x8132, 0x51c: 0x8132, 0x51d: 0x8132, -+ 0x51e: 0x8132, 0x51f: 0x8132, 0x520: 0x8132, 0x521: 0x8132, 0x522: 0x8132, 0x523: 0x8132, -+ 0x524: 0x8132, 0x525: 0x8132, 0x526: 0x8132, 0x527: 0x8132, 0x528: 0x8132, 0x529: 0x8132, -+ 0x52a: 0x8132, 0x52b: 0x8132, 0x52c: 0x8132, 0x52d: 0x8132, 0x52e: 0x8132, 0x52f: 0x8132, -+ 0x530: 0x8132, 0x531: 0x8132, 0x532: 0x8132, 0x533: 0x8132, 0x534: 0x8132, 0x535: 0x8132, -+ 0x536: 0x8133, 0x537: 0x8131, 0x538: 0x8131, 0x539: 0x812d, 0x53b: 0x8132, -+ 0x53c: 0x8134, 0x53d: 0x812d, 0x53e: 0x8132, 0x53f: 0x812d, -+ // Block 0x15, offset 0x540 -+ 0x540: 0x2f9a, 0x541: 0x32a6, 0x542: 0x2fa4, 0x543: 0x32b0, 0x544: 0x2fa9, 0x545: 0x32b5, -+ 0x546: 0x2fae, 0x547: 0x32ba, 0x548: 0x38cf, 0x549: 0x3a5e, 0x54a: 0x2fc7, 0x54b: 0x32d3, -+ 0x54c: 0x2fd1, 0x54d: 0x32dd, 0x54e: 0x2fe0, 0x54f: 0x32ec, 0x550: 0x2fd6, 0x551: 0x32e2, -+ 0x552: 0x2fdb, 0x553: 0x32e7, 0x554: 0x38f2, 0x555: 0x3a81, 0x556: 0x38f9, 0x557: 0x3a88, -+ 0x558: 0x301c, 0x559: 0x3328, 0x55a: 0x3021, 0x55b: 0x332d, 0x55c: 0x3907, 0x55d: 0x3a96, -+ 0x55e: 0x3026, 0x55f: 0x3332, 0x560: 0x3035, 0x561: 0x3341, 0x562: 0x3053, 0x563: 0x335f, -+ 0x564: 0x3062, 0x565: 0x336e, 0x566: 0x3058, 0x567: 0x3364, 0x568: 0x3067, 0x569: 0x3373, -+ 0x56a: 0x306c, 0x56b: 0x3378, 0x56c: 0x30b2, 0x56d: 0x33be, 0x56e: 0x390e, 0x56f: 0x3a9d, -+ 0x570: 0x30bc, 0x571: 0x33cd, 0x572: 0x30c6, 0x573: 0x33d7, 0x574: 0x30d0, 0x575: 0x33e1, -+ 0x576: 0x46c7, 0x577: 0x4758, 0x578: 0x3915, 0x579: 0x3aa4, 0x57a: 0x30e9, 0x57b: 0x33fa, -+ 0x57c: 0x30e4, 0x57d: 0x33f5, 0x57e: 0x30ee, 0x57f: 0x33ff, -+ // Block 0x16, offset 0x580 -+ 0x580: 0x30f3, 0x581: 0x3404, 0x582: 0x30f8, 0x583: 0x3409, 0x584: 0x310c, 0x585: 0x341d, -+ 0x586: 0x3116, 0x587: 0x3427, 0x588: 0x3125, 0x589: 0x3436, 0x58a: 0x3120, 0x58b: 0x3431, -+ 0x58c: 0x3938, 0x58d: 0x3ac7, 0x58e: 0x3946, 0x58f: 0x3ad5, 0x590: 0x394d, 0x591: 0x3adc, -+ 0x592: 0x3954, 0x593: 0x3ae3, 0x594: 0x3152, 0x595: 0x3463, 0x596: 0x3157, 0x597: 0x3468, -+ 0x598: 0x3161, 0x599: 0x3472, 0x59a: 0x46f4, 0x59b: 0x4785, 0x59c: 0x399a, 0x59d: 0x3b29, -+ 0x59e: 0x317a, 0x59f: 0x348b, 0x5a0: 0x3184, 0x5a1: 0x3495, 0x5a2: 0x4703, 0x5a3: 0x4794, -+ 0x5a4: 0x39a1, 0x5a5: 0x3b30, 0x5a6: 0x39a8, 0x5a7: 0x3b37, 0x5a8: 0x39af, 0x5a9: 0x3b3e, -+ 0x5aa: 0x3193, 0x5ab: 0x34a4, 0x5ac: 0x319d, 0x5ad: 0x34b3, 0x5ae: 0x31b1, 0x5af: 0x34c7, -+ 0x5b0: 0x31ac, 0x5b1: 0x34c2, 0x5b2: 0x31ed, 0x5b3: 0x3503, 0x5b4: 0x31fc, 0x5b5: 0x3512, -+ 0x5b6: 0x31f7, 0x5b7: 0x350d, 0x5b8: 0x39b6, 0x5b9: 0x3b45, 0x5ba: 0x39bd, 0x5bb: 0x3b4c, -+ 0x5bc: 0x3201, 0x5bd: 0x3517, 0x5be: 0x3206, 0x5bf: 0x351c, -+ // Block 0x17, offset 0x5c0 -+ 0x5c0: 0x320b, 0x5c1: 0x3521, 0x5c2: 0x3210, 0x5c3: 0x3526, 0x5c4: 0x321f, 0x5c5: 0x3535, -+ 0x5c6: 0x321a, 0x5c7: 0x3530, 0x5c8: 0x3224, 0x5c9: 0x353f, 0x5ca: 0x3229, 0x5cb: 0x3544, -+ 0x5cc: 0x322e, 0x5cd: 0x3549, 0x5ce: 0x324c, 0x5cf: 0x3567, 0x5d0: 0x3265, 0x5d1: 0x3585, -+ 0x5d2: 0x3274, 0x5d3: 0x3594, 0x5d4: 0x3279, 0x5d5: 0x3599, 0x5d6: 0x337d, 0x5d7: 0x34a9, -+ 0x5d8: 0x353a, 0x5d9: 0x3576, 0x5da: 0x1be3, 0x5db: 0x42da, -+ 0x5e0: 0x46a4, 0x5e1: 0x4735, 0x5e2: 0x2f86, 0x5e3: 0x3292, -+ 0x5e4: 0x387b, 0x5e5: 0x3a0a, 0x5e6: 0x3874, 0x5e7: 0x3a03, 0x5e8: 0x3889, 0x5e9: 0x3a18, -+ 0x5ea: 0x3882, 0x5eb: 0x3a11, 0x5ec: 0x38c1, 0x5ed: 0x3a50, 0x5ee: 0x3897, 0x5ef: 0x3a26, -+ 0x5f0: 0x3890, 0x5f1: 0x3a1f, 0x5f2: 0x38a5, 0x5f3: 0x3a34, 0x5f4: 0x389e, 0x5f5: 0x3a2d, -+ 0x5f6: 0x38c8, 0x5f7: 0x3a57, 0x5f8: 0x46b8, 0x5f9: 0x4749, 0x5fa: 0x3003, 0x5fb: 0x330f, -+ 0x5fc: 0x2fef, 0x5fd: 0x32fb, 0x5fe: 0x38dd, 0x5ff: 0x3a6c, -+ // Block 0x18, offset 0x600 -+ 0x600: 0x38d6, 0x601: 0x3a65, 0x602: 0x38eb, 0x603: 0x3a7a, 0x604: 0x38e4, 0x605: 0x3a73, -+ 0x606: 0x3900, 0x607: 0x3a8f, 0x608: 0x3094, 0x609: 0x33a0, 0x60a: 0x30a8, 0x60b: 0x33b4, -+ 0x60c: 0x46ea, 0x60d: 0x477b, 0x60e: 0x3139, 0x60f: 0x344a, 0x610: 0x3923, 0x611: 0x3ab2, -+ 0x612: 0x391c, 0x613: 0x3aab, 0x614: 0x3931, 0x615: 0x3ac0, 0x616: 0x392a, 0x617: 0x3ab9, -+ 0x618: 0x398c, 0x619: 0x3b1b, 0x61a: 0x3970, 0x61b: 0x3aff, 0x61c: 0x3969, 0x61d: 0x3af8, -+ 0x61e: 0x397e, 0x61f: 0x3b0d, 0x620: 0x3977, 0x621: 0x3b06, 0x622: 0x3985, 0x623: 0x3b14, -+ 0x624: 0x31e8, 0x625: 0x34fe, 0x626: 0x31ca, 0x627: 0x34e0, 0x628: 0x39e7, 0x629: 0x3b76, -+ 0x62a: 0x39e0, 0x62b: 0x3b6f, 0x62c: 0x39f5, 0x62d: 0x3b84, 0x62e: 0x39ee, 0x62f: 0x3b7d, -+ 0x630: 0x39fc, 0x631: 0x3b8b, 0x632: 0x3233, 0x633: 0x354e, 0x634: 0x325b, 0x635: 0x357b, -+ 0x636: 0x3256, 0x637: 0x3571, 0x638: 0x3242, 0x639: 0x355d, -+ // Block 0x19, offset 0x640 -+ 0x640: 0x4807, 0x641: 0x480d, 0x642: 0x4921, 0x643: 0x4939, 0x644: 0x4929, 0x645: 0x4941, -+ 0x646: 0x4931, 0x647: 0x4949, 0x648: 0x47ad, 0x649: 0x47b3, 0x64a: 0x4891, 0x64b: 0x48a9, -+ 0x64c: 0x4899, 0x64d: 0x48b1, 0x64e: 0x48a1, 0x64f: 0x48b9, 0x650: 0x4819, 0x651: 0x481f, -+ 0x652: 0x3dbb, 0x653: 0x3dcb, 0x654: 0x3dc3, 0x655: 0x3dd3, -+ 0x658: 0x47b9, 0x659: 0x47bf, 0x65a: 0x3ceb, 0x65b: 0x3cfb, 0x65c: 0x3cf3, 0x65d: 0x3d03, -+ 0x660: 0x4831, 0x661: 0x4837, 0x662: 0x4951, 0x663: 0x4969, -+ 0x664: 0x4959, 0x665: 0x4971, 0x666: 0x4961, 0x667: 0x4979, 0x668: 0x47c5, 0x669: 0x47cb, -+ 0x66a: 0x48c1, 0x66b: 0x48d9, 0x66c: 0x48c9, 0x66d: 0x48e1, 0x66e: 0x48d1, 0x66f: 0x48e9, -+ 0x670: 0x4849, 0x671: 0x484f, 0x672: 0x3e1b, 0x673: 0x3e33, 0x674: 0x3e23, 0x675: 0x3e3b, -+ 0x676: 0x3e2b, 0x677: 0x3e43, 0x678: 0x47d1, 0x679: 0x47d7, 0x67a: 0x3d1b, 0x67b: 0x3d33, -+ 0x67c: 0x3d23, 0x67d: 0x3d3b, 0x67e: 0x3d2b, 0x67f: 0x3d43, -+ // Block 0x1a, offset 0x680 -+ 0x680: 0x4855, 0x681: 0x485b, 0x682: 0x3e4b, 0x683: 0x3e5b, 0x684: 0x3e53, 0x685: 0x3e63, -+ 0x688: 0x47dd, 0x689: 0x47e3, 0x68a: 0x3d4b, 0x68b: 0x3d5b, -+ 0x68c: 0x3d53, 0x68d: 0x3d63, 0x690: 0x4867, 0x691: 0x486d, -+ 0x692: 0x3e83, 0x693: 0x3e9b, 0x694: 0x3e8b, 0x695: 0x3ea3, 0x696: 0x3e93, 0x697: 0x3eab, -+ 0x699: 0x47e9, 0x69b: 0x3d6b, 0x69d: 0x3d73, -+ 0x69f: 0x3d7b, 0x6a0: 0x487f, 0x6a1: 0x4885, 0x6a2: 0x4981, 0x6a3: 0x4999, -+ 0x6a4: 0x4989, 0x6a5: 0x49a1, 0x6a6: 0x4991, 0x6a7: 0x49a9, 0x6a8: 0x47ef, 0x6a9: 0x47f5, -+ 0x6aa: 0x48f1, 0x6ab: 0x4909, 0x6ac: 0x48f9, 0x6ad: 0x4911, 0x6ae: 0x4901, 0x6af: 0x4919, -+ 0x6b0: 0x47fb, 0x6b1: 0x4321, 0x6b2: 0x3694, 0x6b3: 0x4327, 0x6b4: 0x4825, 0x6b5: 0x432d, -+ 0x6b6: 0x36a6, 0x6b7: 0x4333, 0x6b8: 0x36c4, 0x6b9: 0x4339, 0x6ba: 0x36dc, 0x6bb: 0x433f, -+ 0x6bc: 0x4873, 0x6bd: 0x4345, -+ // Block 0x1b, offset 0x6c0 -+ 0x6c0: 0x3da3, 0x6c1: 0x3dab, 0x6c2: 0x4187, 0x6c3: 0x41a5, 0x6c4: 0x4191, 0x6c5: 0x41af, -+ 0x6c6: 0x419b, 0x6c7: 0x41b9, 0x6c8: 0x3cdb, 0x6c9: 0x3ce3, 0x6ca: 0x40d3, 0x6cb: 0x40f1, -+ 0x6cc: 0x40dd, 0x6cd: 0x40fb, 0x6ce: 0x40e7, 0x6cf: 0x4105, 0x6d0: 0x3deb, 0x6d1: 0x3df3, -+ 0x6d2: 0x41c3, 0x6d3: 0x41e1, 0x6d4: 0x41cd, 0x6d5: 0x41eb, 0x6d6: 0x41d7, 0x6d7: 0x41f5, -+ 0x6d8: 0x3d0b, 0x6d9: 0x3d13, 0x6da: 0x410f, 0x6db: 0x412d, 0x6dc: 0x4119, 0x6dd: 0x4137, -+ 0x6de: 0x4123, 0x6df: 0x4141, 0x6e0: 0x3ec3, 0x6e1: 0x3ecb, 0x6e2: 0x41ff, 0x6e3: 0x421d, -+ 0x6e4: 0x4209, 0x6e5: 0x4227, 0x6e6: 0x4213, 0x6e7: 0x4231, 0x6e8: 0x3d83, 0x6e9: 0x3d8b, -+ 0x6ea: 0x414b, 0x6eb: 0x4169, 0x6ec: 0x4155, 0x6ed: 0x4173, 0x6ee: 0x415f, 0x6ef: 0x417d, -+ 0x6f0: 0x3688, 0x6f1: 0x3682, 0x6f2: 0x3d93, 0x6f3: 0x368e, 0x6f4: 0x3d9b, -+ 0x6f6: 0x4813, 0x6f7: 0x3db3, 0x6f8: 0x35f8, 0x6f9: 0x35f2, 0x6fa: 0x35e6, 0x6fb: 0x42f1, -+ 0x6fc: 0x35fe, 0x6fd: 0x428a, 0x6fe: 0x01d3, 0x6ff: 0x428a, -+ // Block 0x1c, offset 0x700 -+ 0x700: 0x42a3, 0x701: 0x4485, 0x702: 0x3ddb, 0x703: 0x36a0, 0x704: 0x3de3, -+ 0x706: 0x483d, 0x707: 0x3dfb, 0x708: 0x3604, 0x709: 0x42f7, 0x70a: 0x3610, 0x70b: 0x42fd, -+ 0x70c: 0x361c, 0x70d: 0x448c, 0x70e: 0x4493, 0x70f: 0x449a, 0x710: 0x36b8, 0x711: 0x36b2, -+ 0x712: 0x3e03, 0x713: 0x44e7, 0x716: 0x36be, 0x717: 0x3e13, -+ 0x718: 0x3634, 0x719: 0x362e, 0x71a: 0x3622, 0x71b: 0x4303, 0x71d: 0x44a1, -+ 0x71e: 0x44a8, 0x71f: 0x44af, 0x720: 0x36ee, 0x721: 0x36e8, 0x722: 0x3e6b, 0x723: 0x44ef, -+ 0x724: 0x36d0, 0x725: 0x36d6, 0x726: 0x36f4, 0x727: 0x3e7b, 0x728: 0x3664, 0x729: 0x365e, -+ 0x72a: 0x3652, 0x72b: 0x430f, 0x72c: 0x364c, 0x72d: 0x4477, 0x72e: 0x447e, 0x72f: 0x0081, -+ 0x732: 0x3eb3, 0x733: 0x36fa, 0x734: 0x3ebb, -+ 0x736: 0x488b, 0x737: 0x3ed3, 0x738: 0x3640, 0x739: 0x4309, 0x73a: 0x3670, 0x73b: 0x431b, -+ 0x73c: 0x367c, 0x73d: 0x425d, 0x73e: 0x428f, -+ // Block 0x1d, offset 0x740 -+ 0x740: 0x1bdb, 0x741: 0x1bdf, 0x742: 0x0047, 0x743: 0x1c57, 0x745: 0x1beb, -+ 0x746: 0x1bef, 0x747: 0x00e9, 0x749: 0x1c5b, 0x74a: 0x008f, 0x74b: 0x0051, -+ 0x74c: 0x0051, 0x74d: 0x0051, 0x74e: 0x0091, 0x74f: 0x00da, 0x750: 0x0053, 0x751: 0x0053, -+ 0x752: 0x0059, 0x753: 0x0099, 0x755: 0x005d, 0x756: 0x1990, -+ 0x759: 0x0061, 0x75a: 0x0063, 0x75b: 0x0065, 0x75c: 0x0065, 0x75d: 0x0065, -+ 0x760: 0x19a2, 0x761: 0x1bcb, 0x762: 0x19ab, -+ 0x764: 0x0075, 0x766: 0x01b8, 0x768: 0x0075, -+ 0x76a: 0x0057, 0x76b: 0x42d5, 0x76c: 0x0045, 0x76d: 0x0047, 0x76f: 0x008b, -+ 0x770: 0x004b, 0x771: 0x004d, 0x773: 0x005b, 0x774: 0x009f, 0x775: 0x0215, -+ 0x776: 0x0218, 0x777: 0x021b, 0x778: 0x021e, 0x779: 0x0093, 0x77b: 0x1b9b, -+ 0x77c: 0x01e8, 0x77d: 0x01c1, 0x77e: 0x0179, 0x77f: 0x01a0, -+ // Block 0x1e, offset 0x780 -+ 0x780: 0x0463, 0x785: 0x0049, -+ 0x786: 0x0089, 0x787: 0x008b, 0x788: 0x0093, 0x789: 0x0095, -+ 0x790: 0x2231, 0x791: 0x223d, -+ 0x792: 0x22f1, 0x793: 0x2219, 0x794: 0x229d, 0x795: 0x2225, 0x796: 0x22a3, 0x797: 0x22bb, -+ 0x798: 0x22c7, 0x799: 0x222b, 0x79a: 0x22cd, 0x79b: 0x2237, 0x79c: 0x22c1, 0x79d: 0x22d3, -+ 0x79e: 0x22d9, 0x79f: 0x1cbf, 0x7a0: 0x0053, 0x7a1: 0x195a, 0x7a2: 0x1ba7, 0x7a3: 0x1963, -+ 0x7a4: 0x006d, 0x7a5: 0x19ae, 0x7a6: 0x1bd3, 0x7a7: 0x1d4b, 0x7a8: 0x1966, 0x7a9: 0x0071, -+ 0x7aa: 0x19ba, 0x7ab: 0x1bd7, 0x7ac: 0x0059, 0x7ad: 0x0047, 0x7ae: 0x0049, 0x7af: 0x005b, -+ 0x7b0: 0x0093, 0x7b1: 0x19e7, 0x7b2: 0x1c1b, 0x7b3: 0x19f0, 0x7b4: 0x00ad, 0x7b5: 0x1a65, -+ 0x7b6: 0x1c4f, 0x7b7: 0x1d5f, 0x7b8: 0x19f3, 0x7b9: 0x00b1, 0x7ba: 0x1a68, 0x7bb: 0x1c53, -+ 0x7bc: 0x0099, 0x7bd: 0x0087, 0x7be: 0x0089, 0x7bf: 0x009b, -+ // Block 0x1f, offset 0x7c0 -+ 0x7c1: 0x3c09, 0x7c3: 0xa000, 0x7c4: 0x3c10, 0x7c5: 0xa000, -+ 0x7c7: 0x3c17, 0x7c8: 0xa000, 0x7c9: 0x3c1e, -+ 0x7cd: 0xa000, -+ 0x7e0: 0x2f68, 0x7e1: 0xa000, 0x7e2: 0x3c2c, -+ 0x7e4: 0xa000, 0x7e5: 0xa000, -+ 0x7ed: 0x3c25, 0x7ee: 0x2f63, 0x7ef: 0x2f6d, -+ 0x7f0: 0x3c33, 0x7f1: 0x3c3a, 0x7f2: 0xa000, 0x7f3: 0xa000, 0x7f4: 0x3c41, 0x7f5: 0x3c48, -+ 0x7f6: 0xa000, 0x7f7: 0xa000, 0x7f8: 0x3c4f, 0x7f9: 0x3c56, 0x7fa: 0xa000, 0x7fb: 0xa000, -+ 0x7fc: 0xa000, 0x7fd: 0xa000, -+ // Block 0x20, offset 0x800 -+ 0x800: 0x3c5d, 0x801: 0x3c64, 0x802: 0xa000, 0x803: 0xa000, 0x804: 0x3c79, 0x805: 0x3c80, -+ 0x806: 0xa000, 0x807: 0xa000, 0x808: 0x3c87, 0x809: 0x3c8e, -+ 0x811: 0xa000, -+ 0x812: 0xa000, -+ 0x822: 0xa000, -+ 0x828: 0xa000, 0x829: 0xa000, -+ 0x82b: 0xa000, 0x82c: 0x3ca3, 0x82d: 0x3caa, 0x82e: 0x3cb1, 0x82f: 0x3cb8, -+ 0x832: 0xa000, 0x833: 0xa000, 0x834: 0xa000, 0x835: 0xa000, -+ // Block 0x21, offset 0x840 -+ 0x860: 0x0023, 0x861: 0x0025, 0x862: 0x0027, 0x863: 0x0029, -+ 0x864: 0x002b, 0x865: 0x002d, 0x866: 0x002f, 0x867: 0x0031, 0x868: 0x0033, 0x869: 0x1882, -+ 0x86a: 0x1885, 0x86b: 0x1888, 0x86c: 0x188b, 0x86d: 0x188e, 0x86e: 0x1891, 0x86f: 0x1894, -+ 0x870: 0x1897, 0x871: 0x189a, 0x872: 0x189d, 0x873: 0x18a6, 0x874: 0x1a6b, 0x875: 0x1a6f, -+ 0x876: 0x1a73, 0x877: 0x1a77, 0x878: 0x1a7b, 0x879: 0x1a7f, 0x87a: 0x1a83, 0x87b: 0x1a87, -+ 0x87c: 0x1a8b, 0x87d: 0x1c83, 0x87e: 0x1c88, 0x87f: 0x1c8d, -+ // Block 0x22, offset 0x880 -+ 0x880: 0x1c92, 0x881: 0x1c97, 0x882: 0x1c9c, 0x883: 0x1ca1, 0x884: 0x1ca6, 0x885: 0x1cab, -+ 0x886: 0x1cb0, 0x887: 0x1cb5, 0x888: 0x187f, 0x889: 0x18a3, 0x88a: 0x18c7, 0x88b: 0x18eb, -+ 0x88c: 0x190f, 0x88d: 0x1918, 0x88e: 0x191e, 0x88f: 0x1924, 0x890: 0x192a, 0x891: 0x1b63, -+ 0x892: 0x1b67, 0x893: 0x1b6b, 0x894: 0x1b6f, 0x895: 0x1b73, 0x896: 0x1b77, 0x897: 0x1b7b, -+ 0x898: 0x1b7f, 0x899: 0x1b83, 0x89a: 0x1b87, 0x89b: 0x1b8b, 0x89c: 0x1af7, 0x89d: 0x1afb, -+ 0x89e: 0x1aff, 0x89f: 0x1b03, 0x8a0: 0x1b07, 0x8a1: 0x1b0b, 0x8a2: 0x1b0f, 0x8a3: 0x1b13, -+ 0x8a4: 0x1b17, 0x8a5: 0x1b1b, 0x8a6: 0x1b1f, 0x8a7: 0x1b23, 0x8a8: 0x1b27, 0x8a9: 0x1b2b, -+ 0x8aa: 0x1b2f, 0x8ab: 0x1b33, 0x8ac: 0x1b37, 0x8ad: 0x1b3b, 0x8ae: 0x1b3f, 0x8af: 0x1b43, -+ 0x8b0: 0x1b47, 0x8b1: 0x1b4b, 0x8b2: 0x1b4f, 0x8b3: 0x1b53, 0x8b4: 0x1b57, 0x8b5: 0x1b5b, -+ 0x8b6: 0x0043, 0x8b7: 0x0045, 0x8b8: 0x0047, 0x8b9: 0x0049, 0x8ba: 0x004b, 0x8bb: 0x004d, -+ 0x8bc: 0x004f, 0x8bd: 0x0051, 0x8be: 0x0053, 0x8bf: 0x0055, -+ // Block 0x23, offset 0x8c0 -+ 0x8c0: 0x06bf, 0x8c1: 0x06e3, 0x8c2: 0x06ef, 0x8c3: 0x06ff, 0x8c4: 0x0707, 0x8c5: 0x0713, -+ 0x8c6: 0x071b, 0x8c7: 0x0723, 0x8c8: 0x072f, 0x8c9: 0x0783, 0x8ca: 0x079b, 0x8cb: 0x07ab, -+ 0x8cc: 0x07bb, 0x8cd: 0x07cb, 0x8ce: 0x07db, 0x8cf: 0x07fb, 0x8d0: 0x07ff, 0x8d1: 0x0803, -+ 0x8d2: 0x0837, 0x8d3: 0x085f, 0x8d4: 0x086f, 0x8d5: 0x0877, 0x8d6: 0x087b, 0x8d7: 0x0887, -+ 0x8d8: 0x08a3, 0x8d9: 0x08a7, 0x8da: 0x08bf, 0x8db: 0x08c3, 0x8dc: 0x08cb, 0x8dd: 0x08db, -+ 0x8de: 0x0977, 0x8df: 0x098b, 0x8e0: 0x09cb, 0x8e1: 0x09df, 0x8e2: 0x09e7, 0x8e3: 0x09eb, -+ 0x8e4: 0x09fb, 0x8e5: 0x0a17, 0x8e6: 0x0a43, 0x8e7: 0x0a4f, 0x8e8: 0x0a6f, 0x8e9: 0x0a7b, -+ 0x8ea: 0x0a7f, 0x8eb: 0x0a83, 0x8ec: 0x0a9b, 0x8ed: 0x0a9f, 0x8ee: 0x0acb, 0x8ef: 0x0ad7, -+ 0x8f0: 0x0adf, 0x8f1: 0x0ae7, 0x8f2: 0x0af7, 0x8f3: 0x0aff, 0x8f4: 0x0b07, 0x8f5: 0x0b33, -+ 0x8f6: 0x0b37, 0x8f7: 0x0b3f, 0x8f8: 0x0b43, 0x8f9: 0x0b4b, 0x8fa: 0x0b53, 0x8fb: 0x0b63, -+ 0x8fc: 0x0b7f, 0x8fd: 0x0bf7, 0x8fe: 0x0c0b, 0x8ff: 0x0c0f, -+ // Block 0x24, offset 0x900 -+ 0x900: 0x0c8f, 0x901: 0x0c93, 0x902: 0x0ca7, 0x903: 0x0cab, 0x904: 0x0cb3, 0x905: 0x0cbb, -+ 0x906: 0x0cc3, 0x907: 0x0ccf, 0x908: 0x0cf7, 0x909: 0x0d07, 0x90a: 0x0d1b, 0x90b: 0x0d8b, -+ 0x90c: 0x0d97, 0x90d: 0x0da7, 0x90e: 0x0db3, 0x90f: 0x0dbf, 0x910: 0x0dc7, 0x911: 0x0dcb, -+ 0x912: 0x0dcf, 0x913: 0x0dd3, 0x914: 0x0dd7, 0x915: 0x0e8f, 0x916: 0x0ed7, 0x917: 0x0ee3, -+ 0x918: 0x0ee7, 0x919: 0x0eeb, 0x91a: 0x0eef, 0x91b: 0x0ef7, 0x91c: 0x0efb, 0x91d: 0x0f0f, -+ 0x91e: 0x0f2b, 0x91f: 0x0f33, 0x920: 0x0f73, 0x921: 0x0f77, 0x922: 0x0f7f, 0x923: 0x0f83, -+ 0x924: 0x0f8b, 0x925: 0x0f8f, 0x926: 0x0fb3, 0x927: 0x0fb7, 0x928: 0x0fd3, 0x929: 0x0fd7, -+ 0x92a: 0x0fdb, 0x92b: 0x0fdf, 0x92c: 0x0ff3, 0x92d: 0x1017, 0x92e: 0x101b, 0x92f: 0x101f, -+ 0x930: 0x1043, 0x931: 0x1083, 0x932: 0x1087, 0x933: 0x10a7, 0x934: 0x10b7, 0x935: 0x10bf, -+ 0x936: 0x10df, 0x937: 0x1103, 0x938: 0x1147, 0x939: 0x114f, 0x93a: 0x1163, 0x93b: 0x116f, -+ 0x93c: 0x1177, 0x93d: 0x117f, 0x93e: 0x1183, 0x93f: 0x1187, -+ // Block 0x25, offset 0x940 -+ 0x940: 0x119f, 0x941: 0x11a3, 0x942: 0x11bf, 0x943: 0x11c7, 0x944: 0x11cf, 0x945: 0x11d3, -+ 0x946: 0x11df, 0x947: 0x11e7, 0x948: 0x11eb, 0x949: 0x11ef, 0x94a: 0x11f7, 0x94b: 0x11fb, -+ 0x94c: 0x129b, 0x94d: 0x12af, 0x94e: 0x12e3, 0x94f: 0x12e7, 0x950: 0x12ef, 0x951: 0x131b, -+ 0x952: 0x1323, 0x953: 0x132b, 0x954: 0x1333, 0x955: 0x136f, 0x956: 0x1373, 0x957: 0x137b, -+ 0x958: 0x137f, 0x959: 0x1383, 0x95a: 0x13af, 0x95b: 0x13b3, 0x95c: 0x13bb, 0x95d: 0x13cf, -+ 0x95e: 0x13d3, 0x95f: 0x13ef, 0x960: 0x13f7, 0x961: 0x13fb, 0x962: 0x141f, 0x963: 0x143f, -+ 0x964: 0x1453, 0x965: 0x1457, 0x966: 0x145f, 0x967: 0x148b, 0x968: 0x148f, 0x969: 0x149f, -+ 0x96a: 0x14c3, 0x96b: 0x14cf, 0x96c: 0x14df, 0x96d: 0x14f7, 0x96e: 0x14ff, 0x96f: 0x1503, -+ 0x970: 0x1507, 0x971: 0x150b, 0x972: 0x1517, 0x973: 0x151b, 0x974: 0x1523, 0x975: 0x153f, -+ 0x976: 0x1543, 0x977: 0x1547, 0x978: 0x155f, 0x979: 0x1563, 0x97a: 0x156b, 0x97b: 0x157f, -+ 0x97c: 0x1583, 0x97d: 0x1587, 0x97e: 0x158f, 0x97f: 0x1593, -+ // Block 0x26, offset 0x980 -+ 0x986: 0xa000, 0x98b: 0xa000, -+ 0x98c: 0x3f0b, 0x98d: 0xa000, 0x98e: 0x3f13, 0x98f: 0xa000, 0x990: 0x3f1b, 0x991: 0xa000, -+ 0x992: 0x3f23, 0x993: 0xa000, 0x994: 0x3f2b, 0x995: 0xa000, 0x996: 0x3f33, 0x997: 0xa000, -+ 0x998: 0x3f3b, 0x999: 0xa000, 0x99a: 0x3f43, 0x99b: 0xa000, 0x99c: 0x3f4b, 0x99d: 0xa000, -+ 0x99e: 0x3f53, 0x99f: 0xa000, 0x9a0: 0x3f5b, 0x9a1: 0xa000, 0x9a2: 0x3f63, -+ 0x9a4: 0xa000, 0x9a5: 0x3f6b, 0x9a6: 0xa000, 0x9a7: 0x3f73, 0x9a8: 0xa000, 0x9a9: 0x3f7b, -+ 0x9af: 0xa000, -+ 0x9b0: 0x3f83, 0x9b1: 0x3f8b, 0x9b2: 0xa000, 0x9b3: 0x3f93, 0x9b4: 0x3f9b, 0x9b5: 0xa000, -+ 0x9b6: 0x3fa3, 0x9b7: 0x3fab, 0x9b8: 0xa000, 0x9b9: 0x3fb3, 0x9ba: 0x3fbb, 0x9bb: 0xa000, -+ 0x9bc: 0x3fc3, 0x9bd: 0x3fcb, -+ // Block 0x27, offset 0x9c0 -+ 0x9d4: 0x3f03, -+ 0x9d9: 0x9903, 0x9da: 0x9903, 0x9db: 0x42df, 0x9dc: 0x42e5, 0x9dd: 0xa000, -+ 0x9de: 0x3fd3, 0x9df: 0x26b7, -+ 0x9e6: 0xa000, -+ 0x9eb: 0xa000, 0x9ec: 0x3fe3, 0x9ed: 0xa000, 0x9ee: 0x3feb, 0x9ef: 0xa000, -+ 0x9f0: 0x3ff3, 0x9f1: 0xa000, 0x9f2: 0x3ffb, 0x9f3: 0xa000, 0x9f4: 0x4003, 0x9f5: 0xa000, -+ 0x9f6: 0x400b, 0x9f7: 0xa000, 0x9f8: 0x4013, 0x9f9: 0xa000, 0x9fa: 0x401b, 0x9fb: 0xa000, -+ 0x9fc: 0x4023, 0x9fd: 0xa000, 0x9fe: 0x402b, 0x9ff: 0xa000, -+ // Block 0x28, offset 0xa00 -+ 0xa00: 0x4033, 0xa01: 0xa000, 0xa02: 0x403b, 0xa04: 0xa000, 0xa05: 0x4043, -+ 0xa06: 0xa000, 0xa07: 0x404b, 0xa08: 0xa000, 0xa09: 0x4053, -+ 0xa0f: 0xa000, 0xa10: 0x405b, 0xa11: 0x4063, -+ 0xa12: 0xa000, 0xa13: 0x406b, 0xa14: 0x4073, 0xa15: 0xa000, 0xa16: 0x407b, 0xa17: 0x4083, -+ 0xa18: 0xa000, 0xa19: 0x408b, 0xa1a: 0x4093, 0xa1b: 0xa000, 0xa1c: 0x409b, 0xa1d: 0x40a3, -+ 0xa2f: 0xa000, -+ 0xa30: 0xa000, 0xa31: 0xa000, 0xa32: 0xa000, 0xa34: 0x3fdb, -+ 0xa37: 0x40ab, 0xa38: 0x40b3, 0xa39: 0x40bb, 0xa3a: 0x40c3, -+ 0xa3d: 0xa000, 0xa3e: 0x40cb, 0xa3f: 0x26cc, -+ // Block 0x29, offset 0xa40 -+ 0xa40: 0x0367, 0xa41: 0x032b, 0xa42: 0x032f, 0xa43: 0x0333, 0xa44: 0x037b, 0xa45: 0x0337, -+ 0xa46: 0x033b, 0xa47: 0x033f, 0xa48: 0x0343, 0xa49: 0x0347, 0xa4a: 0x034b, 0xa4b: 0x034f, -+ 0xa4c: 0x0353, 0xa4d: 0x0357, 0xa4e: 0x035b, 0xa4f: 0x49c0, 0xa50: 0x49c6, 0xa51: 0x49cc, -+ 0xa52: 0x49d2, 0xa53: 0x49d8, 0xa54: 0x49de, 0xa55: 0x49e4, 0xa56: 0x49ea, 0xa57: 0x49f0, -+ 0xa58: 0x49f6, 0xa59: 0x49fc, 0xa5a: 0x4a02, 0xa5b: 0x4a08, 0xa5c: 0x4a0e, 0xa5d: 0x4a14, -+ 0xa5e: 0x4a1a, 0xa5f: 0x4a20, 0xa60: 0x4a26, 0xa61: 0x4a2c, 0xa62: 0x4a32, 0xa63: 0x4a38, -+ 0xa64: 0x03c3, 0xa65: 0x035f, 0xa66: 0x0363, 0xa67: 0x03e7, 0xa68: 0x03eb, 0xa69: 0x03ef, -+ 0xa6a: 0x03f3, 0xa6b: 0x03f7, 0xa6c: 0x03fb, 0xa6d: 0x03ff, 0xa6e: 0x036b, 0xa6f: 0x0403, -+ 0xa70: 0x0407, 0xa71: 0x036f, 0xa72: 0x0373, 0xa73: 0x0377, 0xa74: 0x037f, 0xa75: 0x0383, -+ 0xa76: 0x0387, 0xa77: 0x038b, 0xa78: 0x038f, 0xa79: 0x0393, 0xa7a: 0x0397, 0xa7b: 0x039b, -+ 0xa7c: 0x039f, 0xa7d: 0x03a3, 0xa7e: 0x03a7, 0xa7f: 0x03ab, -+ // Block 0x2a, offset 0xa80 -+ 0xa80: 0x03af, 0xa81: 0x03b3, 0xa82: 0x040b, 0xa83: 0x040f, 0xa84: 0x03b7, 0xa85: 0x03bb, -+ 0xa86: 0x03bf, 0xa87: 0x03c7, 0xa88: 0x03cb, 0xa89: 0x03cf, 0xa8a: 0x03d3, 0xa8b: 0x03d7, -+ 0xa8c: 0x03db, 0xa8d: 0x03df, 0xa8e: 0x03e3, -+ 0xa92: 0x06bf, 0xa93: 0x071b, 0xa94: 0x06cb, 0xa95: 0x097b, 0xa96: 0x06cf, 0xa97: 0x06e7, -+ 0xa98: 0x06d3, 0xa99: 0x0f93, 0xa9a: 0x0707, 0xa9b: 0x06db, 0xa9c: 0x06c3, 0xa9d: 0x09ff, -+ 0xa9e: 0x098f, 0xa9f: 0x072f, -+ // Block 0x2b, offset 0xac0 -+ 0xac0: 0x2057, 0xac1: 0x205d, 0xac2: 0x2063, 0xac3: 0x2069, 0xac4: 0x206f, 0xac5: 0x2075, -+ 0xac6: 0x207b, 0xac7: 0x2081, 0xac8: 0x2087, 0xac9: 0x208d, 0xaca: 0x2093, 0xacb: 0x2099, -+ 0xacc: 0x209f, 0xacd: 0x20a5, 0xace: 0x2729, 0xacf: 0x2732, 0xad0: 0x273b, 0xad1: 0x2744, -+ 0xad2: 0x274d, 0xad3: 0x2756, 0xad4: 0x275f, 0xad5: 0x2768, 0xad6: 0x2771, 0xad7: 0x2783, -+ 0xad8: 0x278c, 0xad9: 0x2795, 0xada: 0x279e, 0xadb: 0x27a7, 0xadc: 0x277a, 0xadd: 0x2baf, -+ 0xade: 0x2af0, 0xae0: 0x20ab, 0xae1: 0x20c3, 0xae2: 0x20b7, 0xae3: 0x210b, -+ 0xae4: 0x20c9, 0xae5: 0x20e7, 0xae6: 0x20b1, 0xae7: 0x20e1, 0xae8: 0x20bd, 0xae9: 0x20f3, -+ 0xaea: 0x2123, 0xaeb: 0x2141, 0xaec: 0x213b, 0xaed: 0x212f, 0xaee: 0x217d, 0xaef: 0x2111, -+ 0xaf0: 0x211d, 0xaf1: 0x2135, 0xaf2: 0x2129, 0xaf3: 0x2153, 0xaf4: 0x20ff, 0xaf5: 0x2147, -+ 0xaf6: 0x2171, 0xaf7: 0x2159, 0xaf8: 0x20ed, 0xaf9: 0x20cf, 0xafa: 0x2105, 0xafb: 0x2117, -+ 0xafc: 0x214d, 0xafd: 0x20d5, 0xafe: 0x2177, 0xaff: 0x20f9, -+ // Block 0x2c, offset 0xb00 -+ 0xb00: 0x215f, 0xb01: 0x20db, 0xb02: 0x2165, 0xb03: 0x216b, 0xb04: 0x092f, 0xb05: 0x0b03, -+ 0xb06: 0x0ca7, 0xb07: 0x10c7, -+ 0xb10: 0x1bc7, 0xb11: 0x18a9, -+ 0xb12: 0x18ac, 0xb13: 0x18af, 0xb14: 0x18b2, 0xb15: 0x18b5, 0xb16: 0x18b8, 0xb17: 0x18bb, -+ 0xb18: 0x18be, 0xb19: 0x18c1, 0xb1a: 0x18ca, 0xb1b: 0x18cd, 0xb1c: 0x18d0, 0xb1d: 0x18d3, -+ 0xb1e: 0x18d6, 0xb1f: 0x18d9, 0xb20: 0x0313, 0xb21: 0x031b, 0xb22: 0x031f, 0xb23: 0x0327, -+ 0xb24: 0x032b, 0xb25: 0x032f, 0xb26: 0x0337, 0xb27: 0x033f, 0xb28: 0x0343, 0xb29: 0x034b, -+ 0xb2a: 0x034f, 0xb2b: 0x0353, 0xb2c: 0x0357, 0xb2d: 0x035b, 0xb2e: 0x2e1b, 0xb2f: 0x2e23, -+ 0xb30: 0x2e2b, 0xb31: 0x2e33, 0xb32: 0x2e3b, 0xb33: 0x2e43, 0xb34: 0x2e4b, 0xb35: 0x2e53, -+ 0xb36: 0x2e63, 0xb37: 0x2e6b, 0xb38: 0x2e73, 0xb39: 0x2e7b, 0xb3a: 0x2e83, 0xb3b: 0x2e8b, -+ 0xb3c: 0x2ed6, 0xb3d: 0x2e9e, 0xb3e: 0x2e5b, -+ // Block 0x2d, offset 0xb40 -+ 0xb40: 0x06bf, 0xb41: 0x071b, 0xb42: 0x06cb, 0xb43: 0x097b, 0xb44: 0x071f, 0xb45: 0x07af, -+ 0xb46: 0x06c7, 0xb47: 0x07ab, 0xb48: 0x070b, 0xb49: 0x0887, 0xb4a: 0x0d07, 0xb4b: 0x0e8f, -+ 0xb4c: 0x0dd7, 0xb4d: 0x0d1b, 0xb4e: 0x145f, 0xb4f: 0x098b, 0xb50: 0x0ccf, 0xb51: 0x0d4b, -+ 0xb52: 0x0d0b, 0xb53: 0x104b, 0xb54: 0x08fb, 0xb55: 0x0f03, 0xb56: 0x1387, 0xb57: 0x105f, -+ 0xb58: 0x0843, 0xb59: 0x108f, 0xb5a: 0x0f9b, 0xb5b: 0x0a17, 0xb5c: 0x140f, 0xb5d: 0x077f, -+ 0xb5e: 0x08ab, 0xb5f: 0x0df7, 0xb60: 0x1527, 0xb61: 0x0743, 0xb62: 0x07d3, 0xb63: 0x0d9b, -+ 0xb64: 0x06cf, 0xb65: 0x06e7, 0xb66: 0x06d3, 0xb67: 0x0adb, 0xb68: 0x08ef, 0xb69: 0x087f, -+ 0xb6a: 0x0a57, 0xb6b: 0x0a4b, 0xb6c: 0x0feb, 0xb6d: 0x073f, 0xb6e: 0x139b, 0xb6f: 0x089b, -+ 0xb70: 0x09f3, 0xb71: 0x18dc, 0xb72: 0x18df, 0xb73: 0x18e2, 0xb74: 0x18e5, 0xb75: 0x18ee, -+ 0xb76: 0x18f1, 0xb77: 0x18f4, 0xb78: 0x18f7, 0xb79: 0x18fa, 0xb7a: 0x18fd, 0xb7b: 0x1900, -+ 0xb7c: 0x1903, 0xb7d: 0x1906, 0xb7e: 0x1909, 0xb7f: 0x1912, -+ // Block 0x2e, offset 0xb80 -+ 0xb80: 0x1cc9, 0xb81: 0x1cd8, 0xb82: 0x1ce7, 0xb83: 0x1cf6, 0xb84: 0x1d05, 0xb85: 0x1d14, -+ 0xb86: 0x1d23, 0xb87: 0x1d32, 0xb88: 0x1d41, 0xb89: 0x218f, 0xb8a: 0x21a1, 0xb8b: 0x21b3, -+ 0xb8c: 0x1954, 0xb8d: 0x1c07, 0xb8e: 0x19d5, 0xb8f: 0x1bab, 0xb90: 0x04cb, 0xb91: 0x04d3, -+ 0xb92: 0x04db, 0xb93: 0x04e3, 0xb94: 0x04eb, 0xb95: 0x04ef, 0xb96: 0x04f3, 0xb97: 0x04f7, -+ 0xb98: 0x04fb, 0xb99: 0x04ff, 0xb9a: 0x0503, 0xb9b: 0x0507, 0xb9c: 0x050b, 0xb9d: 0x050f, -+ 0xb9e: 0x0513, 0xb9f: 0x0517, 0xba0: 0x051b, 0xba1: 0x0523, 0xba2: 0x0527, 0xba3: 0x052b, -+ 0xba4: 0x052f, 0xba5: 0x0533, 0xba6: 0x0537, 0xba7: 0x053b, 0xba8: 0x053f, 0xba9: 0x0543, -+ 0xbaa: 0x0547, 0xbab: 0x054b, 0xbac: 0x054f, 0xbad: 0x0553, 0xbae: 0x0557, 0xbaf: 0x055b, -+ 0xbb0: 0x055f, 0xbb1: 0x0563, 0xbb2: 0x0567, 0xbb3: 0x056f, 0xbb4: 0x0577, 0xbb5: 0x057f, -+ 0xbb6: 0x0583, 0xbb7: 0x0587, 0xbb8: 0x058b, 0xbb9: 0x058f, 0xbba: 0x0593, 0xbbb: 0x0597, -+ 0xbbc: 0x059b, 0xbbd: 0x059f, 0xbbe: 0x05a3, -+ // Block 0x2f, offset 0xbc0 -+ 0xbc0: 0x2b0f, 0xbc1: 0x29ab, 0xbc2: 0x2b1f, 0xbc3: 0x2883, 0xbc4: 0x2ee7, 0xbc5: 0x288d, -+ 0xbc6: 0x2897, 0xbc7: 0x2f2b, 0xbc8: 0x29b8, 0xbc9: 0x28a1, 0xbca: 0x28ab, 0xbcb: 0x28b5, -+ 0xbcc: 0x29df, 0xbcd: 0x29ec, 0xbce: 0x29c5, 0xbcf: 0x29d2, 0xbd0: 0x2eac, 0xbd1: 0x29f9, -+ 0xbd2: 0x2a06, 0xbd3: 0x2bc1, 0xbd4: 0x26be, 0xbd5: 0x2bd4, 0xbd6: 0x2be7, 0xbd7: 0x2b2f, -+ 0xbd8: 0x2a13, 0xbd9: 0x2bfa, 0xbda: 0x2c0d, 0xbdb: 0x2a20, 0xbdc: 0x28bf, 0xbdd: 0x28c9, -+ 0xbde: 0x2eba, 0xbdf: 0x2a2d, 0xbe0: 0x2b3f, 0xbe1: 0x2ef8, 0xbe2: 0x28d3, 0xbe3: 0x28dd, -+ 0xbe4: 0x2a3a, 0xbe5: 0x28e7, 0xbe6: 0x28f1, 0xbe7: 0x26d3, 0xbe8: 0x26da, 0xbe9: 0x28fb, -+ 0xbea: 0x2905, 0xbeb: 0x2c20, 0xbec: 0x2a47, 0xbed: 0x2b4f, 0xbee: 0x2c33, 0xbef: 0x2a54, -+ 0xbf0: 0x2919, 0xbf1: 0x290f, 0xbf2: 0x2f3f, 0xbf3: 0x2a61, 0xbf4: 0x2c46, 0xbf5: 0x2923, -+ 0xbf6: 0x2b5f, 0xbf7: 0x292d, 0xbf8: 0x2a7b, 0xbf9: 0x2937, 0xbfa: 0x2a88, 0xbfb: 0x2f09, -+ 0xbfc: 0x2a6e, 0xbfd: 0x2b6f, 0xbfe: 0x2a95, 0xbff: 0x26e1, -+ // Block 0x30, offset 0xc00 -+ 0xc00: 0x2f1a, 0xc01: 0x2941, 0xc02: 0x294b, 0xc03: 0x2aa2, 0xc04: 0x2955, 0xc05: 0x295f, -+ 0xc06: 0x2969, 0xc07: 0x2b7f, 0xc08: 0x2aaf, 0xc09: 0x26e8, 0xc0a: 0x2c59, 0xc0b: 0x2e93, -+ 0xc0c: 0x2b8f, 0xc0d: 0x2abc, 0xc0e: 0x2ec8, 0xc0f: 0x2973, 0xc10: 0x297d, 0xc11: 0x2ac9, -+ 0xc12: 0x26ef, 0xc13: 0x2ad6, 0xc14: 0x2b9f, 0xc15: 0x26f6, 0xc16: 0x2c6c, 0xc17: 0x2987, -+ 0xc18: 0x1cba, 0xc19: 0x1cce, 0xc1a: 0x1cdd, 0xc1b: 0x1cec, 0xc1c: 0x1cfb, 0xc1d: 0x1d0a, -+ 0xc1e: 0x1d19, 0xc1f: 0x1d28, 0xc20: 0x1d37, 0xc21: 0x1d46, 0xc22: 0x2195, 0xc23: 0x21a7, -+ 0xc24: 0x21b9, 0xc25: 0x21c5, 0xc26: 0x21d1, 0xc27: 0x21dd, 0xc28: 0x21e9, 0xc29: 0x21f5, -+ 0xc2a: 0x2201, 0xc2b: 0x220d, 0xc2c: 0x2249, 0xc2d: 0x2255, 0xc2e: 0x2261, 0xc2f: 0x226d, -+ 0xc30: 0x2279, 0xc31: 0x1c17, 0xc32: 0x19c9, 0xc33: 0x1936, 0xc34: 0x1be7, 0xc35: 0x1a4a, -+ 0xc36: 0x1a59, 0xc37: 0x19cf, 0xc38: 0x1bff, 0xc39: 0x1c03, 0xc3a: 0x1960, 0xc3b: 0x2704, -+ 0xc3c: 0x2712, 0xc3d: 0x26fd, 0xc3e: 0x270b, 0xc3f: 0x2ae3, -+ // Block 0x31, offset 0xc40 -+ 0xc40: 0x1a4d, 0xc41: 0x1a35, 0xc42: 0x1c63, 0xc43: 0x1a1d, 0xc44: 0x19f6, 0xc45: 0x1969, -+ 0xc46: 0x1978, 0xc47: 0x1948, 0xc48: 0x1bf3, 0xc49: 0x1d55, 0xc4a: 0x1a50, 0xc4b: 0x1a38, -+ 0xc4c: 0x1c67, 0xc4d: 0x1c73, 0xc4e: 0x1a29, 0xc4f: 0x19ff, 0xc50: 0x1957, 0xc51: 0x1c1f, -+ 0xc52: 0x1bb3, 0xc53: 0x1b9f, 0xc54: 0x1bcf, 0xc55: 0x1c77, 0xc56: 0x1a2c, 0xc57: 0x19cc, -+ 0xc58: 0x1a02, 0xc59: 0x19e1, 0xc5a: 0x1a44, 0xc5b: 0x1c7b, 0xc5c: 0x1a2f, 0xc5d: 0x19c3, -+ 0xc5e: 0x1a05, 0xc5f: 0x1c3f, 0xc60: 0x1bf7, 0xc61: 0x1a17, 0xc62: 0x1c27, 0xc63: 0x1c43, -+ 0xc64: 0x1bfb, 0xc65: 0x1a1a, 0xc66: 0x1c2b, 0xc67: 0x22eb, 0xc68: 0x22ff, 0xc69: 0x1999, -+ 0xc6a: 0x1c23, 0xc6b: 0x1bb7, 0xc6c: 0x1ba3, 0xc6d: 0x1c4b, 0xc6e: 0x2719, 0xc6f: 0x27b0, -+ 0xc70: 0x1a5c, 0xc71: 0x1a47, 0xc72: 0x1c7f, 0xc73: 0x1a32, 0xc74: 0x1a53, 0xc75: 0x1a3b, -+ 0xc76: 0x1c6b, 0xc77: 0x1a20, 0xc78: 0x19f9, 0xc79: 0x1984, 0xc7a: 0x1a56, 0xc7b: 0x1a3e, -+ 0xc7c: 0x1c6f, 0xc7d: 0x1a23, 0xc7e: 0x19fc, 0xc7f: 0x1987, -+ // Block 0x32, offset 0xc80 -+ 0xc80: 0x1c2f, 0xc81: 0x1bbb, 0xc82: 0x1d50, 0xc83: 0x1939, 0xc84: 0x19bd, 0xc85: 0x19c0, -+ 0xc86: 0x22f8, 0xc87: 0x1b97, 0xc88: 0x19c6, 0xc89: 0x194b, 0xc8a: 0x19e4, 0xc8b: 0x194e, -+ 0xc8c: 0x19ed, 0xc8d: 0x196c, 0xc8e: 0x196f, 0xc8f: 0x1a08, 0xc90: 0x1a0e, 0xc91: 0x1a11, -+ 0xc92: 0x1c33, 0xc93: 0x1a14, 0xc94: 0x1a26, 0xc95: 0x1c3b, 0xc96: 0x1c47, 0xc97: 0x1993, -+ 0xc98: 0x1d5a, 0xc99: 0x1bbf, 0xc9a: 0x1996, 0xc9b: 0x1a5f, 0xc9c: 0x19a8, 0xc9d: 0x19b7, -+ 0xc9e: 0x22e5, 0xc9f: 0x22df, 0xca0: 0x1cc4, 0xca1: 0x1cd3, 0xca2: 0x1ce2, 0xca3: 0x1cf1, -+ 0xca4: 0x1d00, 0xca5: 0x1d0f, 0xca6: 0x1d1e, 0xca7: 0x1d2d, 0xca8: 0x1d3c, 0xca9: 0x2189, -+ 0xcaa: 0x219b, 0xcab: 0x21ad, 0xcac: 0x21bf, 0xcad: 0x21cb, 0xcae: 0x21d7, 0xcaf: 0x21e3, -+ 0xcb0: 0x21ef, 0xcb1: 0x21fb, 0xcb2: 0x2207, 0xcb3: 0x2243, 0xcb4: 0x224f, 0xcb5: 0x225b, -+ 0xcb6: 0x2267, 0xcb7: 0x2273, 0xcb8: 0x227f, 0xcb9: 0x2285, 0xcba: 0x228b, 0xcbb: 0x2291, -+ 0xcbc: 0x2297, 0xcbd: 0x22a9, 0xcbe: 0x22af, 0xcbf: 0x1c13, -+ // Block 0x33, offset 0xcc0 -+ 0xcc0: 0x1377, 0xcc1: 0x0cfb, 0xcc2: 0x13d3, 0xcc3: 0x139f, 0xcc4: 0x0e57, 0xcc5: 0x06eb, -+ 0xcc6: 0x08df, 0xcc7: 0x162b, 0xcc8: 0x162b, 0xcc9: 0x0a0b, 0xcca: 0x145f, 0xccb: 0x0943, -+ 0xccc: 0x0a07, 0xccd: 0x0bef, 0xcce: 0x0fcf, 0xccf: 0x115f, 0xcd0: 0x1297, 0xcd1: 0x12d3, -+ 0xcd2: 0x1307, 0xcd3: 0x141b, 0xcd4: 0x0d73, 0xcd5: 0x0dff, 0xcd6: 0x0eab, 0xcd7: 0x0f43, -+ 0xcd8: 0x125f, 0xcd9: 0x1447, 0xcda: 0x1573, 0xcdb: 0x070f, 0xcdc: 0x08b3, 0xcdd: 0x0d87, -+ 0xcde: 0x0ecf, 0xcdf: 0x1293, 0xce0: 0x15c3, 0xce1: 0x0ab3, 0xce2: 0x0e77, 0xce3: 0x1283, -+ 0xce4: 0x1317, 0xce5: 0x0c23, 0xce6: 0x11bb, 0xce7: 0x12df, 0xce8: 0x0b1f, 0xce9: 0x0d0f, -+ 0xcea: 0x0e17, 0xceb: 0x0f1b, 0xcec: 0x1427, 0xced: 0x074f, 0xcee: 0x07e7, 0xcef: 0x0853, -+ 0xcf0: 0x0c8b, 0xcf1: 0x0d7f, 0xcf2: 0x0ecb, 0xcf3: 0x0fef, 0xcf4: 0x1177, 0xcf5: 0x128b, -+ 0xcf6: 0x12a3, 0xcf7: 0x13c7, 0xcf8: 0x14ef, 0xcf9: 0x15a3, 0xcfa: 0x15bf, 0xcfb: 0x102b, -+ 0xcfc: 0x106b, 0xcfd: 0x1123, 0xcfe: 0x1243, 0xcff: 0x147b, -+ // Block 0x34, offset 0xd00 -+ 0xd00: 0x15cb, 0xd01: 0x134b, 0xd02: 0x09c7, 0xd03: 0x0b3b, 0xd04: 0x10db, 0xd05: 0x119b, -+ 0xd06: 0x0eff, 0xd07: 0x1033, 0xd08: 0x1397, 0xd09: 0x14e7, 0xd0a: 0x09c3, 0xd0b: 0x0a8f, -+ 0xd0c: 0x0d77, 0xd0d: 0x0e2b, 0xd0e: 0x0e5f, 0xd0f: 0x1113, 0xd10: 0x113b, 0xd11: 0x14a7, -+ 0xd12: 0x084f, 0xd13: 0x11a7, 0xd14: 0x07f3, 0xd15: 0x07ef, 0xd16: 0x1097, 0xd17: 0x1127, -+ 0xd18: 0x125b, 0xd19: 0x14af, 0xd1a: 0x1367, 0xd1b: 0x0c27, 0xd1c: 0x0d73, 0xd1d: 0x1357, -+ 0xd1e: 0x06f7, 0xd1f: 0x0a63, 0xd20: 0x0b93, 0xd21: 0x0f2f, 0xd22: 0x0faf, 0xd23: 0x0873, -+ 0xd24: 0x103b, 0xd25: 0x075f, 0xd26: 0x0b77, 0xd27: 0x06d7, 0xd28: 0x0deb, 0xd29: 0x0ca3, -+ 0xd2a: 0x110f, 0xd2b: 0x08c7, 0xd2c: 0x09b3, 0xd2d: 0x0ffb, 0xd2e: 0x1263, 0xd2f: 0x133b, -+ 0xd30: 0x0db7, 0xd31: 0x13f7, 0xd32: 0x0de3, 0xd33: 0x0c37, 0xd34: 0x121b, 0xd35: 0x0c57, -+ 0xd36: 0x0fab, 0xd37: 0x072b, 0xd38: 0x07a7, 0xd39: 0x07eb, 0xd3a: 0x0d53, 0xd3b: 0x10fb, -+ 0xd3c: 0x11f3, 0xd3d: 0x1347, 0xd3e: 0x145b, 0xd3f: 0x085b, -+ // Block 0x35, offset 0xd40 -+ 0xd40: 0x090f, 0xd41: 0x0a17, 0xd42: 0x0b2f, 0xd43: 0x0cbf, 0xd44: 0x0e7b, 0xd45: 0x103f, -+ 0xd46: 0x1497, 0xd47: 0x157b, 0xd48: 0x15cf, 0xd49: 0x15e7, 0xd4a: 0x0837, 0xd4b: 0x0cf3, -+ 0xd4c: 0x0da3, 0xd4d: 0x13eb, 0xd4e: 0x0afb, 0xd4f: 0x0bd7, 0xd50: 0x0bf3, 0xd51: 0x0c83, -+ 0xd52: 0x0e6b, 0xd53: 0x0eb7, 0xd54: 0x0f67, 0xd55: 0x108b, 0xd56: 0x112f, 0xd57: 0x1193, -+ 0xd58: 0x13db, 0xd59: 0x126b, 0xd5a: 0x1403, 0xd5b: 0x147f, 0xd5c: 0x080f, 0xd5d: 0x083b, -+ 0xd5e: 0x0923, 0xd5f: 0x0ea7, 0xd60: 0x12f3, 0xd61: 0x133b, 0xd62: 0x0b1b, 0xd63: 0x0b8b, -+ 0xd64: 0x0c4f, 0xd65: 0x0daf, 0xd66: 0x10d7, 0xd67: 0x0f23, 0xd68: 0x073b, 0xd69: 0x097f, -+ 0xd6a: 0x0a63, 0xd6b: 0x0ac7, 0xd6c: 0x0b97, 0xd6d: 0x0f3f, 0xd6e: 0x0f5b, 0xd6f: 0x116b, -+ 0xd70: 0x118b, 0xd71: 0x1463, 0xd72: 0x14e3, 0xd73: 0x14f3, 0xd74: 0x152f, 0xd75: 0x0753, -+ 0xd76: 0x107f, 0xd77: 0x144f, 0xd78: 0x14cb, 0xd79: 0x0baf, 0xd7a: 0x0717, 0xd7b: 0x0777, -+ 0xd7c: 0x0a67, 0xd7d: 0x0a87, 0xd7e: 0x0caf, 0xd7f: 0x0d73, -+ // Block 0x36, offset 0xd80 -+ 0xd80: 0x0ec3, 0xd81: 0x0fcb, 0xd82: 0x1277, 0xd83: 0x1417, 0xd84: 0x1623, 0xd85: 0x0ce3, -+ 0xd86: 0x14a3, 0xd87: 0x0833, 0xd88: 0x0d2f, 0xd89: 0x0d3b, 0xd8a: 0x0e0f, 0xd8b: 0x0e47, -+ 0xd8c: 0x0f4b, 0xd8d: 0x0fa7, 0xd8e: 0x1027, 0xd8f: 0x110b, 0xd90: 0x153b, 0xd91: 0x07af, -+ 0xd92: 0x0c03, 0xd93: 0x14b3, 0xd94: 0x0767, 0xd95: 0x0aab, 0xd96: 0x0e2f, 0xd97: 0x13df, -+ 0xd98: 0x0b67, 0xd99: 0x0bb7, 0xd9a: 0x0d43, 0xd9b: 0x0f2f, 0xd9c: 0x14bb, 0xd9d: 0x0817, -+ 0xd9e: 0x08ff, 0xd9f: 0x0a97, 0xda0: 0x0cd3, 0xda1: 0x0d1f, 0xda2: 0x0d5f, 0xda3: 0x0df3, -+ 0xda4: 0x0f47, 0xda5: 0x0fbb, 0xda6: 0x1157, 0xda7: 0x12f7, 0xda8: 0x1303, 0xda9: 0x1457, -+ 0xdaa: 0x14d7, 0xdab: 0x0883, 0xdac: 0x0e4b, 0xdad: 0x0903, 0xdae: 0x0ec7, 0xdaf: 0x0f6b, -+ 0xdb0: 0x1287, 0xdb1: 0x14bf, 0xdb2: 0x15ab, 0xdb3: 0x15d3, 0xdb4: 0x0d37, 0xdb5: 0x0e27, -+ 0xdb6: 0x11c3, 0xdb7: 0x10b7, 0xdb8: 0x10c3, 0xdb9: 0x10e7, 0xdba: 0x0f17, 0xdbb: 0x0e9f, -+ 0xdbc: 0x1363, 0xdbd: 0x0733, 0xdbe: 0x122b, 0xdbf: 0x081b, -+ // Block 0x37, offset 0xdc0 -+ 0xdc0: 0x080b, 0xdc1: 0x0b0b, 0xdc2: 0x0c2b, 0xdc3: 0x10f3, 0xdc4: 0x0a53, 0xdc5: 0x0e03, -+ 0xdc6: 0x0cef, 0xdc7: 0x13e7, 0xdc8: 0x12e7, 0xdc9: 0x14ab, 0xdca: 0x1323, 0xdcb: 0x0b27, -+ 0xdcc: 0x0787, 0xdcd: 0x095b, 0xdd0: 0x09af, -+ 0xdd2: 0x0cdf, 0xdd5: 0x07f7, 0xdd6: 0x0f1f, 0xdd7: 0x0fe3, -+ 0xdd8: 0x1047, 0xdd9: 0x1063, 0xdda: 0x1067, 0xddb: 0x107b, 0xddc: 0x14fb, 0xddd: 0x10eb, -+ 0xdde: 0x116f, 0xde0: 0x128f, 0xde2: 0x1353, -+ 0xde5: 0x1407, 0xde6: 0x1433, -+ 0xdea: 0x154f, 0xdeb: 0x1553, 0xdec: 0x1557, 0xded: 0x15bb, 0xdee: 0x142b, 0xdef: 0x14c7, -+ 0xdf0: 0x0757, 0xdf1: 0x077b, 0xdf2: 0x078f, 0xdf3: 0x084b, 0xdf4: 0x0857, 0xdf5: 0x0897, -+ 0xdf6: 0x094b, 0xdf7: 0x0967, 0xdf8: 0x096f, 0xdf9: 0x09ab, 0xdfa: 0x09b7, 0xdfb: 0x0a93, -+ 0xdfc: 0x0a9b, 0xdfd: 0x0ba3, 0xdfe: 0x0bcb, 0xdff: 0x0bd3, -+ // Block 0x38, offset 0xe00 -+ 0xe00: 0x0beb, 0xe01: 0x0c97, 0xe02: 0x0cc7, 0xe03: 0x0ce7, 0xe04: 0x0d57, 0xe05: 0x0e1b, -+ 0xe06: 0x0e37, 0xe07: 0x0e67, 0xe08: 0x0ebb, 0xe09: 0x0edb, 0xe0a: 0x0f4f, 0xe0b: 0x102f, -+ 0xe0c: 0x104b, 0xe0d: 0x1053, 0xe0e: 0x104f, 0xe0f: 0x1057, 0xe10: 0x105b, 0xe11: 0x105f, -+ 0xe12: 0x1073, 0xe13: 0x1077, 0xe14: 0x109b, 0xe15: 0x10af, 0xe16: 0x10cb, 0xe17: 0x112f, -+ 0xe18: 0x1137, 0xe19: 0x113f, 0xe1a: 0x1153, 0xe1b: 0x117b, 0xe1c: 0x11cb, 0xe1d: 0x11ff, -+ 0xe1e: 0x11ff, 0xe1f: 0x1267, 0xe20: 0x130f, 0xe21: 0x1327, 0xe22: 0x135b, 0xe23: 0x135f, -+ 0xe24: 0x13a3, 0xe25: 0x13a7, 0xe26: 0x13ff, 0xe27: 0x1407, 0xe28: 0x14db, 0xe29: 0x151f, -+ 0xe2a: 0x1537, 0xe2b: 0x0b9b, 0xe2c: 0x171e, 0xe2d: 0x11e3, -+ 0xe30: 0x06df, 0xe31: 0x07e3, 0xe32: 0x07a3, 0xe33: 0x074b, 0xe34: 0x078b, 0xe35: 0x07b7, -+ 0xe36: 0x0847, 0xe37: 0x0863, 0xe38: 0x094b, 0xe39: 0x0937, 0xe3a: 0x0947, 0xe3b: 0x0963, -+ 0xe3c: 0x09af, 0xe3d: 0x09bf, 0xe3e: 0x0a03, 0xe3f: 0x0a0f, -+ // Block 0x39, offset 0xe40 -+ 0xe40: 0x0a2b, 0xe41: 0x0a3b, 0xe42: 0x0b23, 0xe43: 0x0b2b, 0xe44: 0x0b5b, 0xe45: 0x0b7b, -+ 0xe46: 0x0bab, 0xe47: 0x0bc3, 0xe48: 0x0bb3, 0xe49: 0x0bd3, 0xe4a: 0x0bc7, 0xe4b: 0x0beb, -+ 0xe4c: 0x0c07, 0xe4d: 0x0c5f, 0xe4e: 0x0c6b, 0xe4f: 0x0c73, 0xe50: 0x0c9b, 0xe51: 0x0cdf, -+ 0xe52: 0x0d0f, 0xe53: 0x0d13, 0xe54: 0x0d27, 0xe55: 0x0da7, 0xe56: 0x0db7, 0xe57: 0x0e0f, -+ 0xe58: 0x0e5b, 0xe59: 0x0e53, 0xe5a: 0x0e67, 0xe5b: 0x0e83, 0xe5c: 0x0ebb, 0xe5d: 0x1013, -+ 0xe5e: 0x0edf, 0xe5f: 0x0f13, 0xe60: 0x0f1f, 0xe61: 0x0f5f, 0xe62: 0x0f7b, 0xe63: 0x0f9f, -+ 0xe64: 0x0fc3, 0xe65: 0x0fc7, 0xe66: 0x0fe3, 0xe67: 0x0fe7, 0xe68: 0x0ff7, 0xe69: 0x100b, -+ 0xe6a: 0x1007, 0xe6b: 0x1037, 0xe6c: 0x10b3, 0xe6d: 0x10cb, 0xe6e: 0x10e3, 0xe6f: 0x111b, -+ 0xe70: 0x112f, 0xe71: 0x114b, 0xe72: 0x117b, 0xe73: 0x122f, 0xe74: 0x1257, 0xe75: 0x12cb, -+ 0xe76: 0x1313, 0xe77: 0x131f, 0xe78: 0x1327, 0xe79: 0x133f, 0xe7a: 0x1353, 0xe7b: 0x1343, -+ 0xe7c: 0x135b, 0xe7d: 0x1357, 0xe7e: 0x134f, 0xe7f: 0x135f, -+ // Block 0x3a, offset 0xe80 -+ 0xe80: 0x136b, 0xe81: 0x13a7, 0xe82: 0x13e3, 0xe83: 0x1413, 0xe84: 0x144b, 0xe85: 0x146b, -+ 0xe86: 0x14b7, 0xe87: 0x14db, 0xe88: 0x14fb, 0xe89: 0x150f, 0xe8a: 0x151f, 0xe8b: 0x152b, -+ 0xe8c: 0x1537, 0xe8d: 0x158b, 0xe8e: 0x162b, 0xe8f: 0x16b5, 0xe90: 0x16b0, 0xe91: 0x16e2, -+ 0xe92: 0x0607, 0xe93: 0x062f, 0xe94: 0x0633, 0xe95: 0x1764, 0xe96: 0x1791, 0xe97: 0x1809, -+ 0xe98: 0x1617, 0xe99: 0x1627, -+ // Block 0x3b, offset 0xec0 -+ 0xec0: 0x19d8, 0xec1: 0x19db, 0xec2: 0x19de, 0xec3: 0x1c0b, 0xec4: 0x1c0f, 0xec5: 0x1a62, -+ 0xec6: 0x1a62, -+ 0xed3: 0x1d78, 0xed4: 0x1d69, 0xed5: 0x1d6e, 0xed6: 0x1d7d, 0xed7: 0x1d73, -+ 0xedd: 0x4393, -+ 0xede: 0x8115, 0xedf: 0x4405, 0xee0: 0x022d, 0xee1: 0x0215, 0xee2: 0x021e, 0xee3: 0x0221, -+ 0xee4: 0x0224, 0xee5: 0x0227, 0xee6: 0x022a, 0xee7: 0x0230, 0xee8: 0x0233, 0xee9: 0x0017, -+ 0xeea: 0x43f3, 0xeeb: 0x43f9, 0xeec: 0x44f7, 0xeed: 0x44ff, 0xeee: 0x434b, 0xeef: 0x4351, -+ 0xef0: 0x4357, 0xef1: 0x435d, 0xef2: 0x4369, 0xef3: 0x436f, 0xef4: 0x4375, 0xef5: 0x4381, -+ 0xef6: 0x4387, 0xef8: 0x438d, 0xef9: 0x4399, 0xefa: 0x439f, 0xefb: 0x43a5, -+ 0xefc: 0x43b1, 0xefe: 0x43b7, -+ // Block 0x3c, offset 0xf00 -+ 0xf00: 0x43bd, 0xf01: 0x43c3, 0xf03: 0x43c9, 0xf04: 0x43cf, -+ 0xf06: 0x43db, 0xf07: 0x43e1, 0xf08: 0x43e7, 0xf09: 0x43ed, 0xf0a: 0x43ff, 0xf0b: 0x437b, -+ 0xf0c: 0x4363, 0xf0d: 0x43ab, 0xf0e: 0x43d5, 0xf0f: 0x1d82, 0xf10: 0x0299, 0xf11: 0x0299, -+ 0xf12: 0x02a2, 0xf13: 0x02a2, 0xf14: 0x02a2, 0xf15: 0x02a2, 0xf16: 0x02a5, 0xf17: 0x02a5, -+ 0xf18: 0x02a5, 0xf19: 0x02a5, 0xf1a: 0x02ab, 0xf1b: 0x02ab, 0xf1c: 0x02ab, 0xf1d: 0x02ab, -+ 0xf1e: 0x029f, 0xf1f: 0x029f, 0xf20: 0x029f, 0xf21: 0x029f, 0xf22: 0x02a8, 0xf23: 0x02a8, -+ 0xf24: 0x02a8, 0xf25: 0x02a8, 0xf26: 0x029c, 0xf27: 0x029c, 0xf28: 0x029c, 0xf29: 0x029c, -+ 0xf2a: 0x02cf, 0xf2b: 0x02cf, 0xf2c: 0x02cf, 0xf2d: 0x02cf, 0xf2e: 0x02d2, 0xf2f: 0x02d2, -+ 0xf30: 0x02d2, 0xf31: 0x02d2, 0xf32: 0x02b1, 0xf33: 0x02b1, 0xf34: 0x02b1, 0xf35: 0x02b1, -+ 0xf36: 0x02ae, 0xf37: 0x02ae, 0xf38: 0x02ae, 0xf39: 0x02ae, 0xf3a: 0x02b4, 0xf3b: 0x02b4, -+ 0xf3c: 0x02b4, 0xf3d: 0x02b4, 0xf3e: 0x02b7, 0xf3f: 0x02b7, -+ // Block 0x3d, offset 0xf40 -+ 0xf40: 0x02b7, 0xf41: 0x02b7, 0xf42: 0x02c0, 0xf43: 0x02c0, 0xf44: 0x02bd, 0xf45: 0x02bd, -+ 0xf46: 0x02c3, 0xf47: 0x02c3, 0xf48: 0x02ba, 0xf49: 0x02ba, 0xf4a: 0x02c9, 0xf4b: 0x02c9, -+ 0xf4c: 0x02c6, 0xf4d: 0x02c6, 0xf4e: 0x02d5, 0xf4f: 0x02d5, 0xf50: 0x02d5, 0xf51: 0x02d5, -+ 0xf52: 0x02db, 0xf53: 0x02db, 0xf54: 0x02db, 0xf55: 0x02db, 0xf56: 0x02e1, 0xf57: 0x02e1, -+ 0xf58: 0x02e1, 0xf59: 0x02e1, 0xf5a: 0x02de, 0xf5b: 0x02de, 0xf5c: 0x02de, 0xf5d: 0x02de, -+ 0xf5e: 0x02e4, 0xf5f: 0x02e4, 0xf60: 0x02e7, 0xf61: 0x02e7, 0xf62: 0x02e7, 0xf63: 0x02e7, -+ 0xf64: 0x4471, 0xf65: 0x4471, 0xf66: 0x02ed, 0xf67: 0x02ed, 0xf68: 0x02ed, 0xf69: 0x02ed, -+ 0xf6a: 0x02ea, 0xf6b: 0x02ea, 0xf6c: 0x02ea, 0xf6d: 0x02ea, 0xf6e: 0x0308, 0xf6f: 0x0308, -+ 0xf70: 0x446b, 0xf71: 0x446b, -+ // Block 0x3e, offset 0xf80 -+ 0xf93: 0x02d8, 0xf94: 0x02d8, 0xf95: 0x02d8, 0xf96: 0x02d8, 0xf97: 0x02f6, -+ 0xf98: 0x02f6, 0xf99: 0x02f3, 0xf9a: 0x02f3, 0xf9b: 0x02f9, 0xf9c: 0x02f9, 0xf9d: 0x2052, -+ 0xf9e: 0x02ff, 0xf9f: 0x02ff, 0xfa0: 0x02f0, 0xfa1: 0x02f0, 0xfa2: 0x02fc, 0xfa3: 0x02fc, -+ 0xfa4: 0x0305, 0xfa5: 0x0305, 0xfa6: 0x0305, 0xfa7: 0x0305, 0xfa8: 0x028d, 0xfa9: 0x028d, -+ 0xfaa: 0x25ad, 0xfab: 0x25ad, 0xfac: 0x261d, 0xfad: 0x261d, 0xfae: 0x25ec, 0xfaf: 0x25ec, -+ 0xfb0: 0x2608, 0xfb1: 0x2608, 0xfb2: 0x2601, 0xfb3: 0x2601, 0xfb4: 0x260f, 0xfb5: 0x260f, -+ 0xfb6: 0x2616, 0xfb7: 0x2616, 0xfb8: 0x2616, 0xfb9: 0x25f3, 0xfba: 0x25f3, 0xfbb: 0x25f3, -+ 0xfbc: 0x0302, 0xfbd: 0x0302, 0xfbe: 0x0302, 0xfbf: 0x0302, -+ // Block 0x3f, offset 0xfc0 -+ 0xfc0: 0x25b4, 0xfc1: 0x25bb, 0xfc2: 0x25d7, 0xfc3: 0x25f3, 0xfc4: 0x25fa, 0xfc5: 0x1d8c, -+ 0xfc6: 0x1d91, 0xfc7: 0x1d96, 0xfc8: 0x1da5, 0xfc9: 0x1db4, 0xfca: 0x1db9, 0xfcb: 0x1dbe, -+ 0xfcc: 0x1dc3, 0xfcd: 0x1dc8, 0xfce: 0x1dd7, 0xfcf: 0x1de6, 0xfd0: 0x1deb, 0xfd1: 0x1df0, -+ 0xfd2: 0x1dff, 0xfd3: 0x1e0e, 0xfd4: 0x1e13, 0xfd5: 0x1e18, 0xfd6: 0x1e1d, 0xfd7: 0x1e2c, -+ 0xfd8: 0x1e31, 0xfd9: 0x1e40, 0xfda: 0x1e45, 0xfdb: 0x1e4a, 0xfdc: 0x1e59, 0xfdd: 0x1e5e, -+ 0xfde: 0x1e63, 0xfdf: 0x1e6d, 0xfe0: 0x1ea9, 0xfe1: 0x1eb8, 0xfe2: 0x1ec7, 0xfe3: 0x1ecc, -+ 0xfe4: 0x1ed1, 0xfe5: 0x1edb, 0xfe6: 0x1eea, 0xfe7: 0x1eef, 0xfe8: 0x1efe, 0xfe9: 0x1f03, -+ 0xfea: 0x1f08, 0xfeb: 0x1f17, 0xfec: 0x1f1c, 0xfed: 0x1f2b, 0xfee: 0x1f30, 0xfef: 0x1f35, -+ 0xff0: 0x1f3a, 0xff1: 0x1f3f, 0xff2: 0x1f44, 0xff3: 0x1f49, 0xff4: 0x1f4e, 0xff5: 0x1f53, -+ 0xff6: 0x1f58, 0xff7: 0x1f5d, 0xff8: 0x1f62, 0xff9: 0x1f67, 0xffa: 0x1f6c, 0xffb: 0x1f71, -+ 0xffc: 0x1f76, 0xffd: 0x1f7b, 0xffe: 0x1f80, 0xfff: 0x1f8a, -+ // Block 0x40, offset 0x1000 -+ 0x1000: 0x1f8f, 0x1001: 0x1f94, 0x1002: 0x1f99, 0x1003: 0x1fa3, 0x1004: 0x1fa8, 0x1005: 0x1fb2, -+ 0x1006: 0x1fb7, 0x1007: 0x1fbc, 0x1008: 0x1fc1, 0x1009: 0x1fc6, 0x100a: 0x1fcb, 0x100b: 0x1fd0, -+ 0x100c: 0x1fd5, 0x100d: 0x1fda, 0x100e: 0x1fe9, 0x100f: 0x1ff8, 0x1010: 0x1ffd, 0x1011: 0x2002, -+ 0x1012: 0x2007, 0x1013: 0x200c, 0x1014: 0x2011, 0x1015: 0x201b, 0x1016: 0x2020, 0x1017: 0x2025, -+ 0x1018: 0x2034, 0x1019: 0x2043, 0x101a: 0x2048, 0x101b: 0x4423, 0x101c: 0x4429, 0x101d: 0x445f, -+ 0x101e: 0x44b6, 0x101f: 0x44bd, 0x1020: 0x44c4, 0x1021: 0x44cb, 0x1022: 0x44d2, 0x1023: 0x44d9, -+ 0x1024: 0x25c9, 0x1025: 0x25d0, 0x1026: 0x25d7, 0x1027: 0x25de, 0x1028: 0x25f3, 0x1029: 0x25fa, -+ 0x102a: 0x1d9b, 0x102b: 0x1da0, 0x102c: 0x1da5, 0x102d: 0x1daa, 0x102e: 0x1db4, 0x102f: 0x1db9, -+ 0x1030: 0x1dcd, 0x1031: 0x1dd2, 0x1032: 0x1dd7, 0x1033: 0x1ddc, 0x1034: 0x1de6, 0x1035: 0x1deb, -+ 0x1036: 0x1df5, 0x1037: 0x1dfa, 0x1038: 0x1dff, 0x1039: 0x1e04, 0x103a: 0x1e0e, 0x103b: 0x1e13, -+ 0x103c: 0x1f3f, 0x103d: 0x1f44, 0x103e: 0x1f53, 0x103f: 0x1f58, -+ // Block 0x41, offset 0x1040 -+ 0x1040: 0x1f5d, 0x1041: 0x1f71, 0x1042: 0x1f76, 0x1043: 0x1f7b, 0x1044: 0x1f80, 0x1045: 0x1f99, -+ 0x1046: 0x1fa3, 0x1047: 0x1fa8, 0x1048: 0x1fad, 0x1049: 0x1fc1, 0x104a: 0x1fdf, 0x104b: 0x1fe4, -+ 0x104c: 0x1fe9, 0x104d: 0x1fee, 0x104e: 0x1ff8, 0x104f: 0x1ffd, 0x1050: 0x445f, 0x1051: 0x202a, -+ 0x1052: 0x202f, 0x1053: 0x2034, 0x1054: 0x2039, 0x1055: 0x2043, 0x1056: 0x2048, 0x1057: 0x25b4, -+ 0x1058: 0x25bb, 0x1059: 0x25c2, 0x105a: 0x25d7, 0x105b: 0x25e5, 0x105c: 0x1d8c, 0x105d: 0x1d91, -+ 0x105e: 0x1d96, 0x105f: 0x1da5, 0x1060: 0x1daf, 0x1061: 0x1dbe, 0x1062: 0x1dc3, 0x1063: 0x1dc8, -+ 0x1064: 0x1dd7, 0x1065: 0x1de1, 0x1066: 0x1dff, 0x1067: 0x1e18, 0x1068: 0x1e1d, 0x1069: 0x1e2c, -+ 0x106a: 0x1e31, 0x106b: 0x1e40, 0x106c: 0x1e4a, 0x106d: 0x1e59, 0x106e: 0x1e5e, 0x106f: 0x1e63, -+ 0x1070: 0x1e6d, 0x1071: 0x1ea9, 0x1072: 0x1eae, 0x1073: 0x1eb8, 0x1074: 0x1ec7, 0x1075: 0x1ecc, -+ 0x1076: 0x1ed1, 0x1077: 0x1edb, 0x1078: 0x1eea, 0x1079: 0x1efe, 0x107a: 0x1f03, 0x107b: 0x1f08, -+ 0x107c: 0x1f17, 0x107d: 0x1f1c, 0x107e: 0x1f2b, 0x107f: 0x1f30, -+ // Block 0x42, offset 0x1080 -+ 0x1080: 0x1f35, 0x1081: 0x1f3a, 0x1082: 0x1f49, 0x1083: 0x1f4e, 0x1084: 0x1f62, 0x1085: 0x1f67, -+ 0x1086: 0x1f6c, 0x1087: 0x1f71, 0x1088: 0x1f76, 0x1089: 0x1f8a, 0x108a: 0x1f8f, 0x108b: 0x1f94, -+ 0x108c: 0x1f99, 0x108d: 0x1f9e, 0x108e: 0x1fb2, 0x108f: 0x1fb7, 0x1090: 0x1fbc, 0x1091: 0x1fc1, -+ 0x1092: 0x1fd0, 0x1093: 0x1fd5, 0x1094: 0x1fda, 0x1095: 0x1fe9, 0x1096: 0x1ff3, 0x1097: 0x2002, -+ 0x1098: 0x2007, 0x1099: 0x4453, 0x109a: 0x201b, 0x109b: 0x2020, 0x109c: 0x2025, 0x109d: 0x2034, -+ 0x109e: 0x203e, 0x109f: 0x25d7, 0x10a0: 0x25e5, 0x10a1: 0x1da5, 0x10a2: 0x1daf, 0x10a3: 0x1dd7, -+ 0x10a4: 0x1de1, 0x10a5: 0x1dff, 0x10a6: 0x1e09, 0x10a7: 0x1e6d, 0x10a8: 0x1e72, 0x10a9: 0x1e95, -+ 0x10aa: 0x1e9a, 0x10ab: 0x1f71, 0x10ac: 0x1f76, 0x10ad: 0x1f99, 0x10ae: 0x1fe9, 0x10af: 0x1ff3, -+ 0x10b0: 0x2034, 0x10b1: 0x203e, 0x10b2: 0x4507, 0x10b3: 0x450f, 0x10b4: 0x4517, 0x10b5: 0x1ef4, -+ 0x10b6: 0x1ef9, 0x10b7: 0x1f0d, 0x10b8: 0x1f12, 0x10b9: 0x1f21, 0x10ba: 0x1f26, 0x10bb: 0x1e77, -+ 0x10bc: 0x1e7c, 0x10bd: 0x1e9f, 0x10be: 0x1ea4, 0x10bf: 0x1e36, -+ // Block 0x43, offset 0x10c0 -+ 0x10c0: 0x1e3b, 0x10c1: 0x1e22, 0x10c2: 0x1e27, 0x10c3: 0x1e4f, 0x10c4: 0x1e54, 0x10c5: 0x1ebd, -+ 0x10c6: 0x1ec2, 0x10c7: 0x1ee0, 0x10c8: 0x1ee5, 0x10c9: 0x1e81, 0x10ca: 0x1e86, 0x10cb: 0x1e8b, -+ 0x10cc: 0x1e95, 0x10cd: 0x1e90, 0x10ce: 0x1e68, 0x10cf: 0x1eb3, 0x10d0: 0x1ed6, 0x10d1: 0x1ef4, -+ 0x10d2: 0x1ef9, 0x10d3: 0x1f0d, 0x10d4: 0x1f12, 0x10d5: 0x1f21, 0x10d6: 0x1f26, 0x10d7: 0x1e77, -+ 0x10d8: 0x1e7c, 0x10d9: 0x1e9f, 0x10da: 0x1ea4, 0x10db: 0x1e36, 0x10dc: 0x1e3b, 0x10dd: 0x1e22, -+ 0x10de: 0x1e27, 0x10df: 0x1e4f, 0x10e0: 0x1e54, 0x10e1: 0x1ebd, 0x10e2: 0x1ec2, 0x10e3: 0x1ee0, -+ 0x10e4: 0x1ee5, 0x10e5: 0x1e81, 0x10e6: 0x1e86, 0x10e7: 0x1e8b, 0x10e8: 0x1e95, 0x10e9: 0x1e90, -+ 0x10ea: 0x1e68, 0x10eb: 0x1eb3, 0x10ec: 0x1ed6, 0x10ed: 0x1e81, 0x10ee: 0x1e86, 0x10ef: 0x1e8b, -+ 0x10f0: 0x1e95, 0x10f1: 0x1e72, 0x10f2: 0x1e9a, 0x10f3: 0x1eef, 0x10f4: 0x1e59, 0x10f5: 0x1e5e, -+ 0x10f6: 0x1e63, 0x10f7: 0x1e81, 0x10f8: 0x1e86, 0x10f9: 0x1e8b, 0x10fa: 0x1eef, 0x10fb: 0x1efe, -+ 0x10fc: 0x440b, 0x10fd: 0x440b, -+ // Block 0x44, offset 0x1100 -+ 0x1110: 0x2314, 0x1111: 0x2329, -+ 0x1112: 0x2329, 0x1113: 0x2330, 0x1114: 0x2337, 0x1115: 0x234c, 0x1116: 0x2353, 0x1117: 0x235a, -+ 0x1118: 0x237d, 0x1119: 0x237d, 0x111a: 0x23a0, 0x111b: 0x2399, 0x111c: 0x23b5, 0x111d: 0x23a7, -+ 0x111e: 0x23ae, 0x111f: 0x23d1, 0x1120: 0x23d1, 0x1121: 0x23ca, 0x1122: 0x23d8, 0x1123: 0x23d8, -+ 0x1124: 0x2402, 0x1125: 0x2402, 0x1126: 0x241e, 0x1127: 0x23e6, 0x1128: 0x23e6, 0x1129: 0x23df, -+ 0x112a: 0x23f4, 0x112b: 0x23f4, 0x112c: 0x23fb, 0x112d: 0x23fb, 0x112e: 0x2425, 0x112f: 0x2433, -+ 0x1130: 0x2433, 0x1131: 0x243a, 0x1132: 0x243a, 0x1133: 0x2441, 0x1134: 0x2448, 0x1135: 0x244f, -+ 0x1136: 0x2456, 0x1137: 0x2456, 0x1138: 0x245d, 0x1139: 0x246b, 0x113a: 0x2479, 0x113b: 0x2472, -+ 0x113c: 0x2480, 0x113d: 0x2480, 0x113e: 0x2495, 0x113f: 0x249c, -+ // Block 0x45, offset 0x1140 -+ 0x1140: 0x24cd, 0x1141: 0x24db, 0x1142: 0x24d4, 0x1143: 0x24b8, 0x1144: 0x24b8, 0x1145: 0x24e2, -+ 0x1146: 0x24e2, 0x1147: 0x24e9, 0x1148: 0x24e9, 0x1149: 0x2513, 0x114a: 0x251a, 0x114b: 0x2521, -+ 0x114c: 0x24f7, 0x114d: 0x2505, 0x114e: 0x2528, 0x114f: 0x252f, -+ 0x1152: 0x24fe, 0x1153: 0x2583, 0x1154: 0x258a, 0x1155: 0x2560, 0x1156: 0x2567, 0x1157: 0x254b, -+ 0x1158: 0x254b, 0x1159: 0x2552, 0x115a: 0x257c, 0x115b: 0x2575, 0x115c: 0x259f, 0x115d: 0x259f, -+ 0x115e: 0x230d, 0x115f: 0x2322, 0x1160: 0x231b, 0x1161: 0x2345, 0x1162: 0x233e, 0x1163: 0x2368, -+ 0x1164: 0x2361, 0x1165: 0x238b, 0x1166: 0x236f, 0x1167: 0x2384, 0x1168: 0x23bc, 0x1169: 0x2409, -+ 0x116a: 0x23ed, 0x116b: 0x242c, 0x116c: 0x24c6, 0x116d: 0x24f0, 0x116e: 0x2598, 0x116f: 0x2591, -+ 0x1170: 0x25a6, 0x1171: 0x253d, 0x1172: 0x24a3, 0x1173: 0x256e, 0x1174: 0x2495, 0x1175: 0x24cd, -+ 0x1176: 0x2464, 0x1177: 0x24b1, 0x1178: 0x2544, 0x1179: 0x2536, 0x117a: 0x24bf, 0x117b: 0x24aa, -+ 0x117c: 0x24bf, 0x117d: 0x2544, 0x117e: 0x2376, 0x117f: 0x2392, -+ // Block 0x46, offset 0x1180 -+ 0x1180: 0x250c, 0x1181: 0x2487, 0x1182: 0x2306, 0x1183: 0x24aa, 0x1184: 0x244f, 0x1185: 0x241e, -+ 0x1186: 0x23c3, 0x1187: 0x2559, -+ 0x11b0: 0x2417, 0x11b1: 0x248e, 0x11b2: 0x27c2, 0x11b3: 0x27b9, 0x11b4: 0x27ef, 0x11b5: 0x27dd, -+ 0x11b6: 0x27cb, 0x11b7: 0x27e6, 0x11b8: 0x27f8, 0x11b9: 0x2410, 0x11ba: 0x2c7f, 0x11bb: 0x2aff, -+ 0x11bc: 0x27d4, -+ // Block 0x47, offset 0x11c0 -+ 0x11d0: 0x0019, 0x11d1: 0x0483, -+ 0x11d2: 0x0487, 0x11d3: 0x0035, 0x11d4: 0x0037, 0x11d5: 0x0003, 0x11d6: 0x003f, 0x11d7: 0x04bf, -+ 0x11d8: 0x04c3, 0x11d9: 0x1b5f, -+ 0x11e0: 0x8132, 0x11e1: 0x8132, 0x11e2: 0x8132, 0x11e3: 0x8132, -+ 0x11e4: 0x8132, 0x11e5: 0x8132, 0x11e6: 0x8132, 0x11e7: 0x812d, 0x11e8: 0x812d, 0x11e9: 0x812d, -+ 0x11ea: 0x812d, 0x11eb: 0x812d, 0x11ec: 0x812d, 0x11ed: 0x812d, 0x11ee: 0x8132, 0x11ef: 0x8132, -+ 0x11f0: 0x1873, 0x11f1: 0x0443, 0x11f2: 0x043f, 0x11f3: 0x007f, 0x11f4: 0x007f, 0x11f5: 0x0011, -+ 0x11f6: 0x0013, 0x11f7: 0x00b7, 0x11f8: 0x00bb, 0x11f9: 0x04b7, 0x11fa: 0x04bb, 0x11fb: 0x04ab, -+ 0x11fc: 0x04af, 0x11fd: 0x0493, 0x11fe: 0x0497, 0x11ff: 0x048b, -+ // Block 0x48, offset 0x1200 -+ 0x1200: 0x048f, 0x1201: 0x049b, 0x1202: 0x049f, 0x1203: 0x04a3, 0x1204: 0x04a7, -+ 0x1207: 0x0077, 0x1208: 0x007b, 0x1209: 0x426c, 0x120a: 0x426c, 0x120b: 0x426c, -+ 0x120c: 0x426c, 0x120d: 0x007f, 0x120e: 0x007f, 0x120f: 0x007f, 0x1210: 0x0019, 0x1211: 0x0483, -+ 0x1212: 0x001d, 0x1214: 0x0037, 0x1215: 0x0035, 0x1216: 0x003f, 0x1217: 0x0003, -+ 0x1218: 0x0443, 0x1219: 0x0011, 0x121a: 0x0013, 0x121b: 0x00b7, 0x121c: 0x00bb, 0x121d: 0x04b7, -+ 0x121e: 0x04bb, 0x121f: 0x0007, 0x1220: 0x000d, 0x1221: 0x0015, 0x1222: 0x0017, 0x1223: 0x001b, -+ 0x1224: 0x0039, 0x1225: 0x003d, 0x1226: 0x003b, 0x1228: 0x0079, 0x1229: 0x0009, -+ 0x122a: 0x000b, 0x122b: 0x0041, -+ 0x1230: 0x42ad, 0x1231: 0x442f, 0x1232: 0x42b2, 0x1234: 0x42b7, -+ 0x1236: 0x42bc, 0x1237: 0x4435, 0x1238: 0x42c1, 0x1239: 0x443b, 0x123a: 0x42c6, 0x123b: 0x4441, -+ 0x123c: 0x42cb, 0x123d: 0x4447, 0x123e: 0x42d0, 0x123f: 0x444d, -+ // Block 0x49, offset 0x1240 -+ 0x1240: 0x0236, 0x1241: 0x4411, 0x1242: 0x4411, 0x1243: 0x4417, 0x1244: 0x4417, 0x1245: 0x4459, -+ 0x1246: 0x4459, 0x1247: 0x441d, 0x1248: 0x441d, 0x1249: 0x4465, 0x124a: 0x4465, 0x124b: 0x4465, -+ 0x124c: 0x4465, 0x124d: 0x0239, 0x124e: 0x0239, 0x124f: 0x023c, 0x1250: 0x023c, 0x1251: 0x023c, -+ 0x1252: 0x023c, 0x1253: 0x023f, 0x1254: 0x023f, 0x1255: 0x0242, 0x1256: 0x0242, 0x1257: 0x0242, -+ 0x1258: 0x0242, 0x1259: 0x0245, 0x125a: 0x0245, 0x125b: 0x0245, 0x125c: 0x0245, 0x125d: 0x0248, -+ 0x125e: 0x0248, 0x125f: 0x0248, 0x1260: 0x0248, 0x1261: 0x024b, 0x1262: 0x024b, 0x1263: 0x024b, -+ 0x1264: 0x024b, 0x1265: 0x024e, 0x1266: 0x024e, 0x1267: 0x024e, 0x1268: 0x024e, 0x1269: 0x0251, -+ 0x126a: 0x0251, 0x126b: 0x0254, 0x126c: 0x0254, 0x126d: 0x0257, 0x126e: 0x0257, 0x126f: 0x025a, -+ 0x1270: 0x025a, 0x1271: 0x025d, 0x1272: 0x025d, 0x1273: 0x025d, 0x1274: 0x025d, 0x1275: 0x0260, -+ 0x1276: 0x0260, 0x1277: 0x0260, 0x1278: 0x0260, 0x1279: 0x0263, 0x127a: 0x0263, 0x127b: 0x0263, -+ 0x127c: 0x0263, 0x127d: 0x0266, 0x127e: 0x0266, 0x127f: 0x0266, -+ // Block 0x4a, offset 0x1280 -+ 0x1280: 0x0266, 0x1281: 0x0269, 0x1282: 0x0269, 0x1283: 0x0269, 0x1284: 0x0269, 0x1285: 0x026c, -+ 0x1286: 0x026c, 0x1287: 0x026c, 0x1288: 0x026c, 0x1289: 0x026f, 0x128a: 0x026f, 0x128b: 0x026f, -+ 0x128c: 0x026f, 0x128d: 0x0272, 0x128e: 0x0272, 0x128f: 0x0272, 0x1290: 0x0272, 0x1291: 0x0275, -+ 0x1292: 0x0275, 0x1293: 0x0275, 0x1294: 0x0275, 0x1295: 0x0278, 0x1296: 0x0278, 0x1297: 0x0278, -+ 0x1298: 0x0278, 0x1299: 0x027b, 0x129a: 0x027b, 0x129b: 0x027b, 0x129c: 0x027b, 0x129d: 0x027e, -+ 0x129e: 0x027e, 0x129f: 0x027e, 0x12a0: 0x027e, 0x12a1: 0x0281, 0x12a2: 0x0281, 0x12a3: 0x0281, -+ 0x12a4: 0x0281, 0x12a5: 0x0284, 0x12a6: 0x0284, 0x12a7: 0x0284, 0x12a8: 0x0284, 0x12a9: 0x0287, -+ 0x12aa: 0x0287, 0x12ab: 0x0287, 0x12ac: 0x0287, 0x12ad: 0x028a, 0x12ae: 0x028a, 0x12af: 0x028d, -+ 0x12b0: 0x028d, 0x12b1: 0x0290, 0x12b2: 0x0290, 0x12b3: 0x0290, 0x12b4: 0x0290, 0x12b5: 0x2e03, -+ 0x12b6: 0x2e03, 0x12b7: 0x2e0b, 0x12b8: 0x2e0b, 0x12b9: 0x2e13, 0x12ba: 0x2e13, 0x12bb: 0x1f85, -+ 0x12bc: 0x1f85, -+ // Block 0x4b, offset 0x12c0 -+ 0x12c0: 0x0081, 0x12c1: 0x0083, 0x12c2: 0x0085, 0x12c3: 0x0087, 0x12c4: 0x0089, 0x12c5: 0x008b, -+ 0x12c6: 0x008d, 0x12c7: 0x008f, 0x12c8: 0x0091, 0x12c9: 0x0093, 0x12ca: 0x0095, 0x12cb: 0x0097, -+ 0x12cc: 0x0099, 0x12cd: 0x009b, 0x12ce: 0x009d, 0x12cf: 0x009f, 0x12d0: 0x00a1, 0x12d1: 0x00a3, -+ 0x12d2: 0x00a5, 0x12d3: 0x00a7, 0x12d4: 0x00a9, 0x12d5: 0x00ab, 0x12d6: 0x00ad, 0x12d7: 0x00af, -+ 0x12d8: 0x00b1, 0x12d9: 0x00b3, 0x12da: 0x00b5, 0x12db: 0x00b7, 0x12dc: 0x00b9, 0x12dd: 0x00bb, -+ 0x12de: 0x00bd, 0x12df: 0x0477, 0x12e0: 0x047b, 0x12e1: 0x0487, 0x12e2: 0x049b, 0x12e3: 0x049f, -+ 0x12e4: 0x0483, 0x12e5: 0x05ab, 0x12e6: 0x05a3, 0x12e7: 0x04c7, 0x12e8: 0x04cf, 0x12e9: 0x04d7, -+ 0x12ea: 0x04df, 0x12eb: 0x04e7, 0x12ec: 0x056b, 0x12ed: 0x0573, 0x12ee: 0x057b, 0x12ef: 0x051f, -+ 0x12f0: 0x05af, 0x12f1: 0x04cb, 0x12f2: 0x04d3, 0x12f3: 0x04db, 0x12f4: 0x04e3, 0x12f5: 0x04eb, -+ 0x12f6: 0x04ef, 0x12f7: 0x04f3, 0x12f8: 0x04f7, 0x12f9: 0x04fb, 0x12fa: 0x04ff, 0x12fb: 0x0503, -+ 0x12fc: 0x0507, 0x12fd: 0x050b, 0x12fe: 0x050f, 0x12ff: 0x0513, -+ // Block 0x4c, offset 0x1300 -+ 0x1300: 0x0517, 0x1301: 0x051b, 0x1302: 0x0523, 0x1303: 0x0527, 0x1304: 0x052b, 0x1305: 0x052f, -+ 0x1306: 0x0533, 0x1307: 0x0537, 0x1308: 0x053b, 0x1309: 0x053f, 0x130a: 0x0543, 0x130b: 0x0547, -+ 0x130c: 0x054b, 0x130d: 0x054f, 0x130e: 0x0553, 0x130f: 0x0557, 0x1310: 0x055b, 0x1311: 0x055f, -+ 0x1312: 0x0563, 0x1313: 0x0567, 0x1314: 0x056f, 0x1315: 0x0577, 0x1316: 0x057f, 0x1317: 0x0583, -+ 0x1318: 0x0587, 0x1319: 0x058b, 0x131a: 0x058f, 0x131b: 0x0593, 0x131c: 0x0597, 0x131d: 0x05a7, -+ 0x131e: 0x4a7b, 0x131f: 0x4a81, 0x1320: 0x03c3, 0x1321: 0x0313, 0x1322: 0x0317, 0x1323: 0x4a3e, -+ 0x1324: 0x031b, 0x1325: 0x4a44, 0x1326: 0x4a4a, 0x1327: 0x031f, 0x1328: 0x0323, 0x1329: 0x0327, -+ 0x132a: 0x4a50, 0x132b: 0x4a56, 0x132c: 0x4a5c, 0x132d: 0x4a62, 0x132e: 0x4a68, 0x132f: 0x4a6e, -+ 0x1330: 0x0367, 0x1331: 0x032b, 0x1332: 0x032f, 0x1333: 0x0333, 0x1334: 0x037b, 0x1335: 0x0337, -+ 0x1336: 0x033b, 0x1337: 0x033f, 0x1338: 0x0343, 0x1339: 0x0347, 0x133a: 0x034b, 0x133b: 0x034f, -+ 0x133c: 0x0353, 0x133d: 0x0357, 0x133e: 0x035b, -+ // Block 0x4d, offset 0x1340 -+ 0x1342: 0x49c0, 0x1343: 0x49c6, 0x1344: 0x49cc, 0x1345: 0x49d2, -+ 0x1346: 0x49d8, 0x1347: 0x49de, 0x134a: 0x49e4, 0x134b: 0x49ea, -+ 0x134c: 0x49f0, 0x134d: 0x49f6, 0x134e: 0x49fc, 0x134f: 0x4a02, -+ 0x1352: 0x4a08, 0x1353: 0x4a0e, 0x1354: 0x4a14, 0x1355: 0x4a1a, 0x1356: 0x4a20, 0x1357: 0x4a26, -+ 0x135a: 0x4a2c, 0x135b: 0x4a32, 0x135c: 0x4a38, -+ 0x1360: 0x00bf, 0x1361: 0x00c2, 0x1362: 0x00cb, 0x1363: 0x4267, -+ 0x1364: 0x00c8, 0x1365: 0x00c5, 0x1366: 0x0447, 0x1368: 0x046b, 0x1369: 0x044b, -+ 0x136a: 0x044f, 0x136b: 0x0453, 0x136c: 0x0457, 0x136d: 0x046f, 0x136e: 0x0473, -+ // Block 0x4e, offset 0x1380 -+ 0x1380: 0x0063, 0x1381: 0x0065, 0x1382: 0x0067, 0x1383: 0x0069, 0x1384: 0x006b, 0x1385: 0x006d, -+ 0x1386: 0x006f, 0x1387: 0x0071, 0x1388: 0x0073, 0x1389: 0x0075, 0x138a: 0x0083, 0x138b: 0x0085, -+ 0x138c: 0x0087, 0x138d: 0x0089, 0x138e: 0x008b, 0x138f: 0x008d, 0x1390: 0x008f, 0x1391: 0x0091, -+ 0x1392: 0x0093, 0x1393: 0x0095, 0x1394: 0x0097, 0x1395: 0x0099, 0x1396: 0x009b, 0x1397: 0x009d, -+ 0x1398: 0x009f, 0x1399: 0x00a1, 0x139a: 0x00a3, 0x139b: 0x00a5, 0x139c: 0x00a7, 0x139d: 0x00a9, -+ 0x139e: 0x00ab, 0x139f: 0x00ad, 0x13a0: 0x00af, 0x13a1: 0x00b1, 0x13a2: 0x00b3, 0x13a3: 0x00b5, -+ 0x13a4: 0x00dd, 0x13a5: 0x00f2, 0x13a8: 0x0173, 0x13a9: 0x0176, -+ 0x13aa: 0x0179, 0x13ab: 0x017c, 0x13ac: 0x017f, 0x13ad: 0x0182, 0x13ae: 0x0185, 0x13af: 0x0188, -+ 0x13b0: 0x018b, 0x13b1: 0x018e, 0x13b2: 0x0191, 0x13b3: 0x0194, 0x13b4: 0x0197, 0x13b5: 0x019a, -+ 0x13b6: 0x019d, 0x13b7: 0x01a0, 0x13b8: 0x01a3, 0x13b9: 0x0188, 0x13ba: 0x01a6, 0x13bb: 0x01a9, -+ 0x13bc: 0x01ac, 0x13bd: 0x01af, 0x13be: 0x01b2, 0x13bf: 0x01b5, -+ // Block 0x4f, offset 0x13c0 -+ 0x13c0: 0x01fd, 0x13c1: 0x0200, 0x13c2: 0x0203, 0x13c3: 0x045b, 0x13c4: 0x01c7, 0x13c5: 0x01d0, -+ 0x13c6: 0x01d6, 0x13c7: 0x01fa, 0x13c8: 0x01eb, 0x13c9: 0x01e8, 0x13ca: 0x0206, 0x13cb: 0x0209, -+ 0x13ce: 0x0021, 0x13cf: 0x0023, 0x13d0: 0x0025, 0x13d1: 0x0027, -+ 0x13d2: 0x0029, 0x13d3: 0x002b, 0x13d4: 0x002d, 0x13d5: 0x002f, 0x13d6: 0x0031, 0x13d7: 0x0033, -+ 0x13d8: 0x0021, 0x13d9: 0x0023, 0x13da: 0x0025, 0x13db: 0x0027, 0x13dc: 0x0029, 0x13dd: 0x002b, -+ 0x13de: 0x002d, 0x13df: 0x002f, 0x13e0: 0x0031, 0x13e1: 0x0033, 0x13e2: 0x0021, 0x13e3: 0x0023, -+ 0x13e4: 0x0025, 0x13e5: 0x0027, 0x13e6: 0x0029, 0x13e7: 0x002b, 0x13e8: 0x002d, 0x13e9: 0x002f, -+ 0x13ea: 0x0031, 0x13eb: 0x0033, 0x13ec: 0x0021, 0x13ed: 0x0023, 0x13ee: 0x0025, 0x13ef: 0x0027, -+ 0x13f0: 0x0029, 0x13f1: 0x002b, 0x13f2: 0x002d, 0x13f3: 0x002f, 0x13f4: 0x0031, 0x13f5: 0x0033, -+ 0x13f6: 0x0021, 0x13f7: 0x0023, 0x13f8: 0x0025, 0x13f9: 0x0027, 0x13fa: 0x0029, 0x13fb: 0x002b, -+ 0x13fc: 0x002d, 0x13fd: 0x002f, 0x13fe: 0x0031, 0x13ff: 0x0033, -+ // Block 0x50, offset 0x1400 -+ 0x1400: 0x0239, 0x1401: 0x023c, 0x1402: 0x0248, 0x1403: 0x0251, 0x1405: 0x028a, -+ 0x1406: 0x025a, 0x1407: 0x024b, 0x1408: 0x0269, 0x1409: 0x0290, 0x140a: 0x027b, 0x140b: 0x027e, -+ 0x140c: 0x0281, 0x140d: 0x0284, 0x140e: 0x025d, 0x140f: 0x026f, 0x1410: 0x0275, 0x1411: 0x0263, -+ 0x1412: 0x0278, 0x1413: 0x0257, 0x1414: 0x0260, 0x1415: 0x0242, 0x1416: 0x0245, 0x1417: 0x024e, -+ 0x1418: 0x0254, 0x1419: 0x0266, 0x141a: 0x026c, 0x141b: 0x0272, 0x141c: 0x0293, 0x141d: 0x02e4, -+ 0x141e: 0x02cc, 0x141f: 0x0296, 0x1421: 0x023c, 0x1422: 0x0248, -+ 0x1424: 0x0287, 0x1427: 0x024b, 0x1429: 0x0290, -+ 0x142a: 0x027b, 0x142b: 0x027e, 0x142c: 0x0281, 0x142d: 0x0284, 0x142e: 0x025d, 0x142f: 0x026f, -+ 0x1430: 0x0275, 0x1431: 0x0263, 0x1432: 0x0278, 0x1434: 0x0260, 0x1435: 0x0242, -+ 0x1436: 0x0245, 0x1437: 0x024e, 0x1439: 0x0266, 0x143b: 0x0272, -+ // Block 0x51, offset 0x1440 -+ 0x1442: 0x0248, -+ 0x1447: 0x024b, 0x1449: 0x0290, 0x144b: 0x027e, -+ 0x144d: 0x0284, 0x144e: 0x025d, 0x144f: 0x026f, 0x1451: 0x0263, -+ 0x1452: 0x0278, 0x1454: 0x0260, 0x1457: 0x024e, -+ 0x1459: 0x0266, 0x145b: 0x0272, 0x145d: 0x02e4, -+ 0x145f: 0x0296, 0x1461: 0x023c, 0x1462: 0x0248, -+ 0x1464: 0x0287, 0x1467: 0x024b, 0x1468: 0x0269, 0x1469: 0x0290, -+ 0x146a: 0x027b, 0x146c: 0x0281, 0x146d: 0x0284, 0x146e: 0x025d, 0x146f: 0x026f, -+ 0x1470: 0x0275, 0x1471: 0x0263, 0x1472: 0x0278, 0x1474: 0x0260, 0x1475: 0x0242, -+ 0x1476: 0x0245, 0x1477: 0x024e, 0x1479: 0x0266, 0x147a: 0x026c, 0x147b: 0x0272, -+ 0x147c: 0x0293, 0x147e: 0x02cc, -+ // Block 0x52, offset 0x1480 -+ 0x1480: 0x0239, 0x1481: 0x023c, 0x1482: 0x0248, 0x1483: 0x0251, 0x1484: 0x0287, 0x1485: 0x028a, -+ 0x1486: 0x025a, 0x1487: 0x024b, 0x1488: 0x0269, 0x1489: 0x0290, 0x148b: 0x027e, -+ 0x148c: 0x0281, 0x148d: 0x0284, 0x148e: 0x025d, 0x148f: 0x026f, 0x1490: 0x0275, 0x1491: 0x0263, -+ 0x1492: 0x0278, 0x1493: 0x0257, 0x1494: 0x0260, 0x1495: 0x0242, 0x1496: 0x0245, 0x1497: 0x024e, -+ 0x1498: 0x0254, 0x1499: 0x0266, 0x149a: 0x026c, 0x149b: 0x0272, -+ 0x14a1: 0x023c, 0x14a2: 0x0248, 0x14a3: 0x0251, -+ 0x14a5: 0x028a, 0x14a6: 0x025a, 0x14a7: 0x024b, 0x14a8: 0x0269, 0x14a9: 0x0290, -+ 0x14ab: 0x027e, 0x14ac: 0x0281, 0x14ad: 0x0284, 0x14ae: 0x025d, 0x14af: 0x026f, -+ 0x14b0: 0x0275, 0x14b1: 0x0263, 0x14b2: 0x0278, 0x14b3: 0x0257, 0x14b4: 0x0260, 0x14b5: 0x0242, -+ 0x14b6: 0x0245, 0x14b7: 0x024e, 0x14b8: 0x0254, 0x14b9: 0x0266, 0x14ba: 0x026c, 0x14bb: 0x0272, -+ // Block 0x53, offset 0x14c0 -+ 0x14c0: 0x1879, 0x14c1: 0x1876, 0x14c2: 0x187c, 0x14c3: 0x18a0, 0x14c4: 0x18c4, 0x14c5: 0x18e8, -+ 0x14c6: 0x190c, 0x14c7: 0x1915, 0x14c8: 0x191b, 0x14c9: 0x1921, 0x14ca: 0x1927, -+ 0x14d0: 0x1a8f, 0x14d1: 0x1a93, -+ 0x14d2: 0x1a97, 0x14d3: 0x1a9b, 0x14d4: 0x1a9f, 0x14d5: 0x1aa3, 0x14d6: 0x1aa7, 0x14d7: 0x1aab, -+ 0x14d8: 0x1aaf, 0x14d9: 0x1ab3, 0x14da: 0x1ab7, 0x14db: 0x1abb, 0x14dc: 0x1abf, 0x14dd: 0x1ac3, -+ 0x14de: 0x1ac7, 0x14df: 0x1acb, 0x14e0: 0x1acf, 0x14e1: 0x1ad3, 0x14e2: 0x1ad7, 0x14e3: 0x1adb, -+ 0x14e4: 0x1adf, 0x14e5: 0x1ae3, 0x14e6: 0x1ae7, 0x14e7: 0x1aeb, 0x14e8: 0x1aef, 0x14e9: 0x1af3, -+ 0x14ea: 0x2721, 0x14eb: 0x0047, 0x14ec: 0x0065, 0x14ed: 0x193c, 0x14ee: 0x19b4, -+ 0x14f0: 0x0043, 0x14f1: 0x0045, 0x14f2: 0x0047, 0x14f3: 0x0049, 0x14f4: 0x004b, 0x14f5: 0x004d, -+ 0x14f6: 0x004f, 0x14f7: 0x0051, 0x14f8: 0x0053, 0x14f9: 0x0055, 0x14fa: 0x0057, 0x14fb: 0x0059, -+ 0x14fc: 0x005b, 0x14fd: 0x005d, 0x14fe: 0x005f, 0x14ff: 0x0061, -+ // Block 0x54, offset 0x1500 -+ 0x1500: 0x26b0, 0x1501: 0x26c5, 0x1502: 0x0503, -+ 0x1510: 0x0c0f, 0x1511: 0x0a47, -+ 0x1512: 0x08d3, 0x1513: 0x45c7, 0x1514: 0x071b, 0x1515: 0x09ef, 0x1516: 0x132f, 0x1517: 0x09ff, -+ 0x1518: 0x0727, 0x1519: 0x0cd7, 0x151a: 0x0eaf, 0x151b: 0x0caf, 0x151c: 0x0827, 0x151d: 0x0b6b, -+ 0x151e: 0x07bf, 0x151f: 0x0cb7, 0x1520: 0x0813, 0x1521: 0x1117, 0x1522: 0x0f83, 0x1523: 0x138b, -+ 0x1524: 0x09d3, 0x1525: 0x090b, 0x1526: 0x0e63, 0x1527: 0x0c1b, 0x1528: 0x0c47, 0x1529: 0x06bf, -+ 0x152a: 0x06cb, 0x152b: 0x140b, 0x152c: 0x0adb, 0x152d: 0x06e7, 0x152e: 0x08ef, 0x152f: 0x0c3b, -+ 0x1530: 0x13b3, 0x1531: 0x0c13, 0x1532: 0x106f, 0x1533: 0x10ab, 0x1534: 0x08f7, 0x1535: 0x0e43, -+ 0x1536: 0x0d0b, 0x1537: 0x0d07, 0x1538: 0x0f97, 0x1539: 0x082b, 0x153a: 0x0957, 0x153b: 0x1443, -+ // Block 0x55, offset 0x1540 -+ 0x1540: 0x06fb, 0x1541: 0x06f3, 0x1542: 0x0703, 0x1543: 0x1647, 0x1544: 0x0747, 0x1545: 0x0757, -+ 0x1546: 0x075b, 0x1547: 0x0763, 0x1548: 0x076b, 0x1549: 0x076f, 0x154a: 0x077b, 0x154b: 0x0773, -+ 0x154c: 0x05b3, 0x154d: 0x165b, 0x154e: 0x078f, 0x154f: 0x0793, 0x1550: 0x0797, 0x1551: 0x07b3, -+ 0x1552: 0x164c, 0x1553: 0x05b7, 0x1554: 0x079f, 0x1555: 0x07bf, 0x1556: 0x1656, 0x1557: 0x07cf, -+ 0x1558: 0x07d7, 0x1559: 0x0737, 0x155a: 0x07df, 0x155b: 0x07e3, 0x155c: 0x1831, 0x155d: 0x07ff, -+ 0x155e: 0x0807, 0x155f: 0x05bf, 0x1560: 0x081f, 0x1561: 0x0823, 0x1562: 0x082b, 0x1563: 0x082f, -+ 0x1564: 0x05c3, 0x1565: 0x0847, 0x1566: 0x084b, 0x1567: 0x0857, 0x1568: 0x0863, 0x1569: 0x0867, -+ 0x156a: 0x086b, 0x156b: 0x0873, 0x156c: 0x0893, 0x156d: 0x0897, 0x156e: 0x089f, 0x156f: 0x08af, -+ 0x1570: 0x08b7, 0x1571: 0x08bb, 0x1572: 0x08bb, 0x1573: 0x08bb, 0x1574: 0x166a, 0x1575: 0x0e93, -+ 0x1576: 0x08cf, 0x1577: 0x08d7, 0x1578: 0x166f, 0x1579: 0x08e3, 0x157a: 0x08eb, 0x157b: 0x08f3, -+ 0x157c: 0x091b, 0x157d: 0x0907, 0x157e: 0x0913, 0x157f: 0x0917, -+ // Block 0x56, offset 0x1580 -+ 0x1580: 0x091f, 0x1581: 0x0927, 0x1582: 0x092b, 0x1583: 0x0933, 0x1584: 0x093b, 0x1585: 0x093f, -+ 0x1586: 0x093f, 0x1587: 0x0947, 0x1588: 0x094f, 0x1589: 0x0953, 0x158a: 0x095f, 0x158b: 0x0983, -+ 0x158c: 0x0967, 0x158d: 0x0987, 0x158e: 0x096b, 0x158f: 0x0973, 0x1590: 0x080b, 0x1591: 0x09cf, -+ 0x1592: 0x0997, 0x1593: 0x099b, 0x1594: 0x099f, 0x1595: 0x0993, 0x1596: 0x09a7, 0x1597: 0x09a3, -+ 0x1598: 0x09bb, 0x1599: 0x1674, 0x159a: 0x09d7, 0x159b: 0x09db, 0x159c: 0x09e3, 0x159d: 0x09ef, -+ 0x159e: 0x09f7, 0x159f: 0x0a13, 0x15a0: 0x1679, 0x15a1: 0x167e, 0x15a2: 0x0a1f, 0x15a3: 0x0a23, -+ 0x15a4: 0x0a27, 0x15a5: 0x0a1b, 0x15a6: 0x0a2f, 0x15a7: 0x05c7, 0x15a8: 0x05cb, 0x15a9: 0x0a37, -+ 0x15aa: 0x0a3f, 0x15ab: 0x0a3f, 0x15ac: 0x1683, 0x15ad: 0x0a5b, 0x15ae: 0x0a5f, 0x15af: 0x0a63, -+ 0x15b0: 0x0a6b, 0x15b1: 0x1688, 0x15b2: 0x0a73, 0x15b3: 0x0a77, 0x15b4: 0x0b4f, 0x15b5: 0x0a7f, -+ 0x15b6: 0x05cf, 0x15b7: 0x0a8b, 0x15b8: 0x0a9b, 0x15b9: 0x0aa7, 0x15ba: 0x0aa3, 0x15bb: 0x1692, -+ 0x15bc: 0x0aaf, 0x15bd: 0x1697, 0x15be: 0x0abb, 0x15bf: 0x0ab7, -+ // Block 0x57, offset 0x15c0 -+ 0x15c0: 0x0abf, 0x15c1: 0x0acf, 0x15c2: 0x0ad3, 0x15c3: 0x05d3, 0x15c4: 0x0ae3, 0x15c5: 0x0aeb, -+ 0x15c6: 0x0aef, 0x15c7: 0x0af3, 0x15c8: 0x05d7, 0x15c9: 0x169c, 0x15ca: 0x05db, 0x15cb: 0x0b0f, -+ 0x15cc: 0x0b13, 0x15cd: 0x0b17, 0x15ce: 0x0b1f, 0x15cf: 0x1863, 0x15d0: 0x0b37, 0x15d1: 0x16a6, -+ 0x15d2: 0x16a6, 0x15d3: 0x11d7, 0x15d4: 0x0b47, 0x15d5: 0x0b47, 0x15d6: 0x05df, 0x15d7: 0x16c9, -+ 0x15d8: 0x179b, 0x15d9: 0x0b57, 0x15da: 0x0b5f, 0x15db: 0x05e3, 0x15dc: 0x0b73, 0x15dd: 0x0b83, -+ 0x15de: 0x0b87, 0x15df: 0x0b8f, 0x15e0: 0x0b9f, 0x15e1: 0x05eb, 0x15e2: 0x05e7, 0x15e3: 0x0ba3, -+ 0x15e4: 0x16ab, 0x15e5: 0x0ba7, 0x15e6: 0x0bbb, 0x15e7: 0x0bbf, 0x15e8: 0x0bc3, 0x15e9: 0x0bbf, -+ 0x15ea: 0x0bcf, 0x15eb: 0x0bd3, 0x15ec: 0x0be3, 0x15ed: 0x0bdb, 0x15ee: 0x0bdf, 0x15ef: 0x0be7, -+ 0x15f0: 0x0beb, 0x15f1: 0x0bef, 0x15f2: 0x0bfb, 0x15f3: 0x0bff, 0x15f4: 0x0c17, 0x15f5: 0x0c1f, -+ 0x15f6: 0x0c2f, 0x15f7: 0x0c43, 0x15f8: 0x16ba, 0x15f9: 0x0c3f, 0x15fa: 0x0c33, 0x15fb: 0x0c4b, -+ 0x15fc: 0x0c53, 0x15fd: 0x0c67, 0x15fe: 0x16bf, 0x15ff: 0x0c6f, -+ // Block 0x58, offset 0x1600 -+ 0x1600: 0x0c63, 0x1601: 0x0c5b, 0x1602: 0x05ef, 0x1603: 0x0c77, 0x1604: 0x0c7f, 0x1605: 0x0c87, -+ 0x1606: 0x0c7b, 0x1607: 0x05f3, 0x1608: 0x0c97, 0x1609: 0x0c9f, 0x160a: 0x16c4, 0x160b: 0x0ccb, -+ 0x160c: 0x0cff, 0x160d: 0x0cdb, 0x160e: 0x05ff, 0x160f: 0x0ce7, 0x1610: 0x05fb, 0x1611: 0x05f7, -+ 0x1612: 0x07c3, 0x1613: 0x07c7, 0x1614: 0x0d03, 0x1615: 0x0ceb, 0x1616: 0x11ab, 0x1617: 0x0663, -+ 0x1618: 0x0d0f, 0x1619: 0x0d13, 0x161a: 0x0d17, 0x161b: 0x0d2b, 0x161c: 0x0d23, 0x161d: 0x16dd, -+ 0x161e: 0x0603, 0x161f: 0x0d3f, 0x1620: 0x0d33, 0x1621: 0x0d4f, 0x1622: 0x0d57, 0x1623: 0x16e7, -+ 0x1624: 0x0d5b, 0x1625: 0x0d47, 0x1626: 0x0d63, 0x1627: 0x0607, 0x1628: 0x0d67, 0x1629: 0x0d6b, -+ 0x162a: 0x0d6f, 0x162b: 0x0d7b, 0x162c: 0x16ec, 0x162d: 0x0d83, 0x162e: 0x060b, 0x162f: 0x0d8f, -+ 0x1630: 0x16f1, 0x1631: 0x0d93, 0x1632: 0x060f, 0x1633: 0x0d9f, 0x1634: 0x0dab, 0x1635: 0x0db7, -+ 0x1636: 0x0dbb, 0x1637: 0x16f6, 0x1638: 0x168d, 0x1639: 0x16fb, 0x163a: 0x0ddb, 0x163b: 0x1700, -+ 0x163c: 0x0de7, 0x163d: 0x0def, 0x163e: 0x0ddf, 0x163f: 0x0dfb, -+ // Block 0x59, offset 0x1640 -+ 0x1640: 0x0e0b, 0x1641: 0x0e1b, 0x1642: 0x0e0f, 0x1643: 0x0e13, 0x1644: 0x0e1f, 0x1645: 0x0e23, -+ 0x1646: 0x1705, 0x1647: 0x0e07, 0x1648: 0x0e3b, 0x1649: 0x0e3f, 0x164a: 0x0613, 0x164b: 0x0e53, -+ 0x164c: 0x0e4f, 0x164d: 0x170a, 0x164e: 0x0e33, 0x164f: 0x0e6f, 0x1650: 0x170f, 0x1651: 0x1714, -+ 0x1652: 0x0e73, 0x1653: 0x0e87, 0x1654: 0x0e83, 0x1655: 0x0e7f, 0x1656: 0x0617, 0x1657: 0x0e8b, -+ 0x1658: 0x0e9b, 0x1659: 0x0e97, 0x165a: 0x0ea3, 0x165b: 0x1651, 0x165c: 0x0eb3, 0x165d: 0x1719, -+ 0x165e: 0x0ebf, 0x165f: 0x1723, 0x1660: 0x0ed3, 0x1661: 0x0edf, 0x1662: 0x0ef3, 0x1663: 0x1728, -+ 0x1664: 0x0f07, 0x1665: 0x0f0b, 0x1666: 0x172d, 0x1667: 0x1732, 0x1668: 0x0f27, 0x1669: 0x0f37, -+ 0x166a: 0x061b, 0x166b: 0x0f3b, 0x166c: 0x061f, 0x166d: 0x061f, 0x166e: 0x0f53, 0x166f: 0x0f57, -+ 0x1670: 0x0f5f, 0x1671: 0x0f63, 0x1672: 0x0f6f, 0x1673: 0x0623, 0x1674: 0x0f87, 0x1675: 0x1737, -+ 0x1676: 0x0fa3, 0x1677: 0x173c, 0x1678: 0x0faf, 0x1679: 0x16a1, 0x167a: 0x0fbf, 0x167b: 0x1741, -+ 0x167c: 0x1746, 0x167d: 0x174b, 0x167e: 0x0627, 0x167f: 0x062b, -+ // Block 0x5a, offset 0x1680 -+ 0x1680: 0x0ff7, 0x1681: 0x1755, 0x1682: 0x1750, 0x1683: 0x175a, 0x1684: 0x175f, 0x1685: 0x0fff, -+ 0x1686: 0x1003, 0x1687: 0x1003, 0x1688: 0x100b, 0x1689: 0x0633, 0x168a: 0x100f, 0x168b: 0x0637, -+ 0x168c: 0x063b, 0x168d: 0x1769, 0x168e: 0x1023, 0x168f: 0x102b, 0x1690: 0x1037, 0x1691: 0x063f, -+ 0x1692: 0x176e, 0x1693: 0x105b, 0x1694: 0x1773, 0x1695: 0x1778, 0x1696: 0x107b, 0x1697: 0x1093, -+ 0x1698: 0x0643, 0x1699: 0x109b, 0x169a: 0x109f, 0x169b: 0x10a3, 0x169c: 0x177d, 0x169d: 0x1782, -+ 0x169e: 0x1782, 0x169f: 0x10bb, 0x16a0: 0x0647, 0x16a1: 0x1787, 0x16a2: 0x10cf, 0x16a3: 0x10d3, -+ 0x16a4: 0x064b, 0x16a5: 0x178c, 0x16a6: 0x10ef, 0x16a7: 0x064f, 0x16a8: 0x10ff, 0x16a9: 0x10f7, -+ 0x16aa: 0x1107, 0x16ab: 0x1796, 0x16ac: 0x111f, 0x16ad: 0x0653, 0x16ae: 0x112b, 0x16af: 0x1133, -+ 0x16b0: 0x1143, 0x16b1: 0x0657, 0x16b2: 0x17a0, 0x16b3: 0x17a5, 0x16b4: 0x065b, 0x16b5: 0x17aa, -+ 0x16b6: 0x115b, 0x16b7: 0x17af, 0x16b8: 0x1167, 0x16b9: 0x1173, 0x16ba: 0x117b, 0x16bb: 0x17b4, -+ 0x16bc: 0x17b9, 0x16bd: 0x118f, 0x16be: 0x17be, 0x16bf: 0x1197, -+ // Block 0x5b, offset 0x16c0 -+ 0x16c0: 0x16ce, 0x16c1: 0x065f, 0x16c2: 0x11af, 0x16c3: 0x11b3, 0x16c4: 0x0667, 0x16c5: 0x11b7, -+ 0x16c6: 0x0a33, 0x16c7: 0x17c3, 0x16c8: 0x17c8, 0x16c9: 0x16d3, 0x16ca: 0x16d8, 0x16cb: 0x11d7, -+ 0x16cc: 0x11db, 0x16cd: 0x13f3, 0x16ce: 0x066b, 0x16cf: 0x1207, 0x16d0: 0x1203, 0x16d1: 0x120b, -+ 0x16d2: 0x083f, 0x16d3: 0x120f, 0x16d4: 0x1213, 0x16d5: 0x1217, 0x16d6: 0x121f, 0x16d7: 0x17cd, -+ 0x16d8: 0x121b, 0x16d9: 0x1223, 0x16da: 0x1237, 0x16db: 0x123b, 0x16dc: 0x1227, 0x16dd: 0x123f, -+ 0x16de: 0x1253, 0x16df: 0x1267, 0x16e0: 0x1233, 0x16e1: 0x1247, 0x16e2: 0x124b, 0x16e3: 0x124f, -+ 0x16e4: 0x17d2, 0x16e5: 0x17dc, 0x16e6: 0x17d7, 0x16e7: 0x066f, 0x16e8: 0x126f, 0x16e9: 0x1273, -+ 0x16ea: 0x127b, 0x16eb: 0x17f0, 0x16ec: 0x127f, 0x16ed: 0x17e1, 0x16ee: 0x0673, 0x16ef: 0x0677, -+ 0x16f0: 0x17e6, 0x16f1: 0x17eb, 0x16f2: 0x067b, 0x16f3: 0x129f, 0x16f4: 0x12a3, 0x16f5: 0x12a7, -+ 0x16f6: 0x12ab, 0x16f7: 0x12b7, 0x16f8: 0x12b3, 0x16f9: 0x12bf, 0x16fa: 0x12bb, 0x16fb: 0x12cb, -+ 0x16fc: 0x12c3, 0x16fd: 0x12c7, 0x16fe: 0x12cf, 0x16ff: 0x067f, -+ // Block 0x5c, offset 0x1700 -+ 0x1700: 0x12d7, 0x1701: 0x12db, 0x1702: 0x0683, 0x1703: 0x12eb, 0x1704: 0x12ef, 0x1705: 0x17f5, -+ 0x1706: 0x12fb, 0x1707: 0x12ff, 0x1708: 0x0687, 0x1709: 0x130b, 0x170a: 0x05bb, 0x170b: 0x17fa, -+ 0x170c: 0x17ff, 0x170d: 0x068b, 0x170e: 0x068f, 0x170f: 0x1337, 0x1710: 0x134f, 0x1711: 0x136b, -+ 0x1712: 0x137b, 0x1713: 0x1804, 0x1714: 0x138f, 0x1715: 0x1393, 0x1716: 0x13ab, 0x1717: 0x13b7, -+ 0x1718: 0x180e, 0x1719: 0x1660, 0x171a: 0x13c3, 0x171b: 0x13bf, 0x171c: 0x13cb, 0x171d: 0x1665, -+ 0x171e: 0x13d7, 0x171f: 0x13e3, 0x1720: 0x1813, 0x1721: 0x1818, 0x1722: 0x1423, 0x1723: 0x142f, -+ 0x1724: 0x1437, 0x1725: 0x181d, 0x1726: 0x143b, 0x1727: 0x1467, 0x1728: 0x1473, 0x1729: 0x1477, -+ 0x172a: 0x146f, 0x172b: 0x1483, 0x172c: 0x1487, 0x172d: 0x1822, 0x172e: 0x1493, 0x172f: 0x0693, -+ 0x1730: 0x149b, 0x1731: 0x1827, 0x1732: 0x0697, 0x1733: 0x14d3, 0x1734: 0x0ac3, 0x1735: 0x14eb, -+ 0x1736: 0x182c, 0x1737: 0x1836, 0x1738: 0x069b, 0x1739: 0x069f, 0x173a: 0x1513, 0x173b: 0x183b, -+ 0x173c: 0x06a3, 0x173d: 0x1840, 0x173e: 0x152b, 0x173f: 0x152b, -+ // Block 0x5d, offset 0x1740 -+ 0x1740: 0x1533, 0x1741: 0x1845, 0x1742: 0x154b, 0x1743: 0x06a7, 0x1744: 0x155b, 0x1745: 0x1567, -+ 0x1746: 0x156f, 0x1747: 0x1577, 0x1748: 0x06ab, 0x1749: 0x184a, 0x174a: 0x158b, 0x174b: 0x15a7, -+ 0x174c: 0x15b3, 0x174d: 0x06af, 0x174e: 0x06b3, 0x174f: 0x15b7, 0x1750: 0x184f, 0x1751: 0x06b7, -+ 0x1752: 0x1854, 0x1753: 0x1859, 0x1754: 0x185e, 0x1755: 0x15db, 0x1756: 0x06bb, 0x1757: 0x15ef, -+ 0x1758: 0x15f7, 0x1759: 0x15fb, 0x175a: 0x1603, 0x175b: 0x160b, 0x175c: 0x1613, 0x175d: 0x1868, -+} -+ -+// nfkcIndex: 22 blocks, 1408 entries, 2816 bytes -+// Block 0 is the zero block. -+var nfkcIndex = [1408]uint16{ -+ // Block 0x0, offset 0x0 -+ // Block 0x1, offset 0x40 -+ // Block 0x2, offset 0x80 -+ // Block 0x3, offset 0xc0 -+ 0xc2: 0x5c, 0xc3: 0x01, 0xc4: 0x02, 0xc5: 0x03, 0xc6: 0x5d, 0xc7: 0x04, -+ 0xc8: 0x05, 0xca: 0x5e, 0xcb: 0x5f, 0xcc: 0x06, 0xcd: 0x07, 0xce: 0x08, 0xcf: 0x09, -+ 0xd0: 0x0a, 0xd1: 0x60, 0xd2: 0x61, 0xd3: 0x0b, 0xd6: 0x0c, 0xd7: 0x62, -+ 0xd8: 0x63, 0xd9: 0x0d, 0xdb: 0x64, 0xdc: 0x65, 0xdd: 0x66, 0xdf: 0x67, -+ 0xe0: 0x02, 0xe1: 0x03, 0xe2: 0x04, 0xe3: 0x05, -+ 0xea: 0x06, 0xeb: 0x07, 0xec: 0x08, 0xed: 0x09, 0xef: 0x0a, -+ 0xf0: 0x13, -+ // Block 0x4, offset 0x100 -+ 0x120: 0x68, 0x121: 0x69, 0x123: 0x0e, 0x124: 0x6a, 0x125: 0x6b, 0x126: 0x6c, 0x127: 0x6d, -+ 0x128: 0x6e, 0x129: 0x6f, 0x12a: 0x70, 0x12b: 0x71, 0x12c: 0x6c, 0x12d: 0x72, 0x12e: 0x73, 0x12f: 0x74, -+ 0x131: 0x75, 0x132: 0x76, 0x133: 0x77, 0x134: 0x78, 0x135: 0x79, 0x137: 0x7a, -+ 0x138: 0x7b, 0x139: 0x7c, 0x13a: 0x7d, 0x13b: 0x7e, 0x13c: 0x7f, 0x13d: 0x80, 0x13e: 0x81, 0x13f: 0x82, -+ // Block 0x5, offset 0x140 -+ 0x140: 0x83, 0x142: 0x84, 0x143: 0x85, 0x144: 0x86, 0x145: 0x87, 0x146: 0x88, 0x147: 0x89, -+ 0x14d: 0x8a, -+ 0x15c: 0x8b, 0x15f: 0x8c, -+ 0x162: 0x8d, 0x164: 0x8e, -+ 0x168: 0x8f, 0x169: 0x90, 0x16a: 0x91, 0x16c: 0x0f, 0x16d: 0x92, 0x16e: 0x93, 0x16f: 0x94, -+ 0x170: 0x95, 0x173: 0x96, 0x174: 0x97, 0x175: 0x10, 0x176: 0x11, 0x177: 0x12, -+ 0x178: 0x13, 0x179: 0x14, 0x17a: 0x15, 0x17b: 0x16, 0x17c: 0x17, 0x17d: 0x18, 0x17e: 0x19, 0x17f: 0x1a, -+ // Block 0x6, offset 0x180 -+ 0x180: 0x98, 0x181: 0x99, 0x182: 0x9a, 0x183: 0x9b, 0x184: 0x1b, 0x185: 0x1c, 0x186: 0x9c, 0x187: 0x9d, -+ 0x188: 0x9e, 0x189: 0x1d, 0x18a: 0x1e, 0x18b: 0x9f, 0x18c: 0xa0, -+ 0x191: 0x1f, 0x192: 0x20, 0x193: 0xa1, -+ 0x1a8: 0xa2, 0x1a9: 0xa3, 0x1ab: 0xa4, -+ 0x1b1: 0xa5, 0x1b3: 0xa6, 0x1b5: 0xa7, 0x1b7: 0xa8, -+ 0x1ba: 0xa9, 0x1bb: 0xaa, 0x1bc: 0x21, 0x1bd: 0x22, 0x1be: 0x23, 0x1bf: 0xab, -+ // Block 0x7, offset 0x1c0 -+ 0x1c0: 0xac, 0x1c1: 0x24, 0x1c2: 0x25, 0x1c3: 0x26, 0x1c4: 0xad, 0x1c5: 0x27, 0x1c6: 0x28, -+ 0x1c8: 0x29, 0x1c9: 0x2a, 0x1ca: 0x2b, 0x1cb: 0x2c, 0x1cc: 0x2d, 0x1cd: 0x2e, 0x1ce: 0x2f, 0x1cf: 0x30, -+ // Block 0x8, offset 0x200 -+ 0x219: 0xae, 0x21a: 0xaf, 0x21b: 0xb0, 0x21d: 0xb1, 0x21f: 0xb2, -+ 0x220: 0xb3, 0x223: 0xb4, 0x224: 0xb5, 0x225: 0xb6, 0x226: 0xb7, 0x227: 0xb8, -+ 0x22a: 0xb9, 0x22b: 0xba, 0x22d: 0xbb, 0x22f: 0xbc, -+ 0x230: 0xbd, 0x231: 0xbe, 0x232: 0xbf, 0x233: 0xc0, 0x234: 0xc1, 0x235: 0xc2, 0x236: 0xc3, 0x237: 0xbd, -+ 0x238: 0xbe, 0x239: 0xbf, 0x23a: 0xc0, 0x23b: 0xc1, 0x23c: 0xc2, 0x23d: 0xc3, 0x23e: 0xbd, 0x23f: 0xbe, -+ // Block 0x9, offset 0x240 -+ 0x240: 0xbf, 0x241: 0xc0, 0x242: 0xc1, 0x243: 0xc2, 0x244: 0xc3, 0x245: 0xbd, 0x246: 0xbe, 0x247: 0xbf, -+ 0x248: 0xc0, 0x249: 0xc1, 0x24a: 0xc2, 0x24b: 0xc3, 0x24c: 0xbd, 0x24d: 0xbe, 0x24e: 0xbf, 0x24f: 0xc0, -+ 0x250: 0xc1, 0x251: 0xc2, 0x252: 0xc3, 0x253: 0xbd, 0x254: 0xbe, 0x255: 0xbf, 0x256: 0xc0, 0x257: 0xc1, -+ 0x258: 0xc2, 0x259: 0xc3, 0x25a: 0xbd, 0x25b: 0xbe, 0x25c: 0xbf, 0x25d: 0xc0, 0x25e: 0xc1, 0x25f: 0xc2, -+ 0x260: 0xc3, 0x261: 0xbd, 0x262: 0xbe, 0x263: 0xbf, 0x264: 0xc0, 0x265: 0xc1, 0x266: 0xc2, 0x267: 0xc3, -+ 0x268: 0xbd, 0x269: 0xbe, 0x26a: 0xbf, 0x26b: 0xc0, 0x26c: 0xc1, 0x26d: 0xc2, 0x26e: 0xc3, 0x26f: 0xbd, -+ 0x270: 0xbe, 0x271: 0xbf, 0x272: 0xc0, 0x273: 0xc1, 0x274: 0xc2, 0x275: 0xc3, 0x276: 0xbd, 0x277: 0xbe, -+ 0x278: 0xbf, 0x279: 0xc0, 0x27a: 0xc1, 0x27b: 0xc2, 0x27c: 0xc3, 0x27d: 0xbd, 0x27e: 0xbe, 0x27f: 0xbf, -+ // Block 0xa, offset 0x280 -+ 0x280: 0xc0, 0x281: 0xc1, 0x282: 0xc2, 0x283: 0xc3, 0x284: 0xbd, 0x285: 0xbe, 0x286: 0xbf, 0x287: 0xc0, -+ 0x288: 0xc1, 0x289: 0xc2, 0x28a: 0xc3, 0x28b: 0xbd, 0x28c: 0xbe, 0x28d: 0xbf, 0x28e: 0xc0, 0x28f: 0xc1, -+ 0x290: 0xc2, 0x291: 0xc3, 0x292: 0xbd, 0x293: 0xbe, 0x294: 0xbf, 0x295: 0xc0, 0x296: 0xc1, 0x297: 0xc2, -+ 0x298: 0xc3, 0x299: 0xbd, 0x29a: 0xbe, 0x29b: 0xbf, 0x29c: 0xc0, 0x29d: 0xc1, 0x29e: 0xc2, 0x29f: 0xc3, -+ 0x2a0: 0xbd, 0x2a1: 0xbe, 0x2a2: 0xbf, 0x2a3: 0xc0, 0x2a4: 0xc1, 0x2a5: 0xc2, 0x2a6: 0xc3, 0x2a7: 0xbd, -+ 0x2a8: 0xbe, 0x2a9: 0xbf, 0x2aa: 0xc0, 0x2ab: 0xc1, 0x2ac: 0xc2, 0x2ad: 0xc3, 0x2ae: 0xbd, 0x2af: 0xbe, -+ 0x2b0: 0xbf, 0x2b1: 0xc0, 0x2b2: 0xc1, 0x2b3: 0xc2, 0x2b4: 0xc3, 0x2b5: 0xbd, 0x2b6: 0xbe, 0x2b7: 0xbf, -+ 0x2b8: 0xc0, 0x2b9: 0xc1, 0x2ba: 0xc2, 0x2bb: 0xc3, 0x2bc: 0xbd, 0x2bd: 0xbe, 0x2be: 0xbf, 0x2bf: 0xc0, -+ // Block 0xb, offset 0x2c0 -+ 0x2c0: 0xc1, 0x2c1: 0xc2, 0x2c2: 0xc3, 0x2c3: 0xbd, 0x2c4: 0xbe, 0x2c5: 0xbf, 0x2c6: 0xc0, 0x2c7: 0xc1, -+ 0x2c8: 0xc2, 0x2c9: 0xc3, 0x2ca: 0xbd, 0x2cb: 0xbe, 0x2cc: 0xbf, 0x2cd: 0xc0, 0x2ce: 0xc1, 0x2cf: 0xc2, -+ 0x2d0: 0xc3, 0x2d1: 0xbd, 0x2d2: 0xbe, 0x2d3: 0xbf, 0x2d4: 0xc0, 0x2d5: 0xc1, 0x2d6: 0xc2, 0x2d7: 0xc3, -+ 0x2d8: 0xbd, 0x2d9: 0xbe, 0x2da: 0xbf, 0x2db: 0xc0, 0x2dc: 0xc1, 0x2dd: 0xc2, 0x2de: 0xc4, -+ // Block 0xc, offset 0x300 -+ 0x324: 0x31, 0x325: 0x32, 0x326: 0x33, 0x327: 0x34, -+ 0x328: 0x35, 0x329: 0x36, 0x32a: 0x37, 0x32b: 0x38, 0x32c: 0x39, 0x32d: 0x3a, 0x32e: 0x3b, 0x32f: 0x3c, -+ 0x330: 0x3d, 0x331: 0x3e, 0x332: 0x3f, 0x333: 0x40, 0x334: 0x41, 0x335: 0x42, 0x336: 0x43, 0x337: 0x44, -+ 0x338: 0x45, 0x339: 0x46, 0x33a: 0x47, 0x33b: 0x48, 0x33c: 0xc5, 0x33d: 0x49, 0x33e: 0x4a, 0x33f: 0x4b, -+ // Block 0xd, offset 0x340 -+ 0x347: 0xc6, -+ 0x34b: 0xc7, 0x34d: 0xc8, -+ 0x368: 0xc9, 0x36b: 0xca, -+ 0x374: 0xcb, -+ 0x37d: 0xcc, -+ // Block 0xe, offset 0x380 -+ 0x381: 0xcd, 0x382: 0xce, 0x384: 0xcf, 0x385: 0xb7, 0x387: 0xd0, -+ 0x388: 0xd1, 0x38b: 0xd2, 0x38c: 0xd3, 0x38d: 0xd4, -+ 0x391: 0xd5, 0x392: 0xd6, 0x393: 0xd7, 0x396: 0xd8, 0x397: 0xd9, -+ 0x398: 0xda, 0x39a: 0xdb, 0x39c: 0xdc, -+ 0x3a0: 0xdd, 0x3a7: 0xde, -+ 0x3a8: 0xdf, 0x3a9: 0xe0, 0x3aa: 0xe1, -+ 0x3b0: 0xda, 0x3b5: 0xe2, 0x3b6: 0xe3, -+ // Block 0xf, offset 0x3c0 -+ 0x3eb: 0xe4, 0x3ec: 0xe5, -+ // Block 0x10, offset 0x400 -+ 0x432: 0xe6, -+ // Block 0x11, offset 0x440 -+ 0x445: 0xe7, 0x446: 0xe8, 0x447: 0xe9, -+ 0x449: 0xea, -+ 0x450: 0xeb, 0x451: 0xec, 0x452: 0xed, 0x453: 0xee, 0x454: 0xef, 0x455: 0xf0, 0x456: 0xf1, 0x457: 0xf2, -+ 0x458: 0xf3, 0x459: 0xf4, 0x45a: 0x4c, 0x45b: 0xf5, 0x45c: 0xf6, 0x45d: 0xf7, 0x45e: 0xf8, 0x45f: 0x4d, -+ // Block 0x12, offset 0x480 -+ 0x480: 0xf9, 0x484: 0xe5, -+ 0x48b: 0xfa, -+ 0x4a3: 0xfb, 0x4a5: 0xfc, -+ 0x4b8: 0x4e, 0x4b9: 0x4f, 0x4ba: 0x50, -+ // Block 0x13, offset 0x4c0 -+ 0x4c4: 0x51, 0x4c5: 0xfd, 0x4c6: 0xfe, -+ 0x4c8: 0x52, 0x4c9: 0xff, -+ // Block 0x14, offset 0x500 -+ 0x520: 0x53, 0x521: 0x54, 0x522: 0x55, 0x523: 0x56, 0x524: 0x57, 0x525: 0x58, 0x526: 0x59, 0x527: 0x5a, -+ 0x528: 0x5b, -+ // Block 0x15, offset 0x540 -+ 0x550: 0x0b, 0x551: 0x0c, 0x556: 0x0d, -+ 0x55b: 0x0e, 0x55d: 0x0f, 0x55e: 0x10, 0x55f: 0x11, -+ 0x56f: 0x12, -+} -+ -+// nfkcSparseOffset: 164 entries, 328 bytes -+var nfkcSparseOffset = []uint16{0x0, 0xe, 0x12, 0x1b, 0x25, 0x35, 0x37, 0x3c, 0x47, 0x56, 0x63, 0x6b, 0x70, 0x75, 0x77, 0x7f, 0x86, 0x89, 0x91, 0x95, 0x99, 0x9b, 0x9d, 0xa6, 0xaa, 0xb1, 0xb6, 0xb9, 0xc3, 0xc6, 0xcd, 0xd5, 0xd9, 0xdb, 0xdf, 0xe3, 0xe9, 0xfa, 0x106, 0x108, 0x10e, 0x110, 0x112, 0x114, 0x116, 0x118, 0x11a, 0x11c, 0x11f, 0x122, 0x124, 0x127, 0x12a, 0x12e, 0x133, 0x13c, 0x13e, 0x141, 0x143, 0x14e, 0x159, 0x167, 0x175, 0x185, 0x193, 0x19a, 0x1a0, 0x1af, 0x1b3, 0x1b5, 0x1b9, 0x1bb, 0x1be, 0x1c0, 0x1c3, 0x1c5, 0x1c8, 0x1ca, 0x1cc, 0x1ce, 0x1da, 0x1e4, 0x1ee, 0x1f1, 0x1f5, 0x1f7, 0x1f9, 0x1fb, 0x1fd, 0x200, 0x202, 0x204, 0x206, 0x208, 0x20e, 0x211, 0x215, 0x217, 0x21e, 0x224, 0x22a, 0x232, 0x238, 0x23e, 0x244, 0x248, 0x24a, 0x24c, 0x24e, 0x250, 0x256, 0x259, 0x25b, 0x261, 0x264, 0x26c, 0x273, 0x276, 0x279, 0x27b, 0x27e, 0x286, 0x28a, 0x291, 0x294, 0x29a, 0x29c, 0x29e, 0x2a1, 0x2a3, 0x2a6, 0x2a8, 0x2aa, 0x2ac, 0x2ae, 0x2b1, 0x2b3, 0x2b5, 0x2b7, 0x2b9, 0x2c6, 0x2d0, 0x2d2, 0x2d4, 0x2d8, 0x2dd, 0x2e9, 0x2ee, 0x2f7, 0x2fd, 0x302, 0x306, 0x30b, 0x30f, 0x31f, 0x32d, 0x33b, 0x349, 0x34f, 0x351, 0x353, 0x356, 0x361, 0x363} -+ -+// nfkcSparseValues: 877 entries, 3508 bytes -+var nfkcSparseValues = [877]valueRange{ -+ // Block 0x0, offset 0x0 -+ {value: 0x0002, lo: 0x0d}, -+ {value: 0x0001, lo: 0xa0, hi: 0xa0}, -+ {value: 0x427b, lo: 0xa8, hi: 0xa8}, -+ {value: 0x0083, lo: 0xaa, hi: 0xaa}, -+ {value: 0x4267, lo: 0xaf, hi: 0xaf}, -+ {value: 0x0025, lo: 0xb2, hi: 0xb3}, -+ {value: 0x425d, lo: 0xb4, hi: 0xb4}, -+ {value: 0x01dc, lo: 0xb5, hi: 0xb5}, -+ {value: 0x4294, lo: 0xb8, hi: 0xb8}, -+ {value: 0x0023, lo: 0xb9, hi: 0xb9}, -+ {value: 0x009f, lo: 0xba, hi: 0xba}, -+ {value: 0x221f, lo: 0xbc, hi: 0xbc}, -+ {value: 0x2213, lo: 0xbd, hi: 0xbd}, -+ {value: 0x22b5, lo: 0xbe, hi: 0xbe}, -+ // Block 0x1, offset 0xe -+ {value: 0x0091, lo: 0x03}, -+ {value: 0x46e5, lo: 0xa0, hi: 0xa1}, -+ {value: 0x4717, lo: 0xaf, hi: 0xb0}, -+ {value: 0xa000, lo: 0xb7, hi: 0xb7}, -+ // Block 0x2, offset 0x12 -+ {value: 0x0003, lo: 0x08}, -+ {value: 0xa000, lo: 0x92, hi: 0x92}, -+ {value: 0x0091, lo: 0xb0, hi: 0xb0}, -+ {value: 0x0119, lo: 0xb1, hi: 0xb1}, -+ {value: 0x0095, lo: 0xb2, hi: 0xb2}, -+ {value: 0x00a5, lo: 0xb3, hi: 0xb3}, -+ {value: 0x0143, lo: 0xb4, hi: 0xb6}, -+ {value: 0x00af, lo: 0xb7, hi: 0xb7}, -+ {value: 0x00b3, lo: 0xb8, hi: 0xb8}, -+ // Block 0x3, offset 0x1b -+ {value: 0x000a, lo: 0x09}, -+ {value: 0x4271, lo: 0x98, hi: 0x98}, -+ {value: 0x4276, lo: 0x99, hi: 0x9a}, -+ {value: 0x4299, lo: 0x9b, hi: 0x9b}, -+ {value: 0x4262, lo: 0x9c, hi: 0x9c}, -+ {value: 0x4285, lo: 0x9d, hi: 0x9d}, -+ {value: 0x0113, lo: 0xa0, hi: 0xa0}, -+ {value: 0x0099, lo: 0xa1, hi: 0xa1}, -+ {value: 0x00a7, lo: 0xa2, hi: 0xa3}, -+ {value: 0x0167, lo: 0xa4, hi: 0xa4}, -+ // Block 0x4, offset 0x25 -+ {value: 0x0000, lo: 0x0f}, -+ {value: 0xa000, lo: 0x83, hi: 0x83}, -+ {value: 0xa000, lo: 0x87, hi: 0x87}, -+ {value: 0xa000, lo: 0x8b, hi: 0x8b}, -+ {value: 0xa000, lo: 0x8d, hi: 0x8d}, -+ {value: 0x37a8, lo: 0x90, hi: 0x90}, -+ {value: 0x37b4, lo: 0x91, hi: 0x91}, -+ {value: 0x37a2, lo: 0x93, hi: 0x93}, -+ {value: 0xa000, lo: 0x96, hi: 0x96}, -+ {value: 0x381a, lo: 0x97, hi: 0x97}, -+ {value: 0x37e4, lo: 0x9c, hi: 0x9c}, -+ {value: 0x37cc, lo: 0x9d, hi: 0x9d}, -+ {value: 0x37f6, lo: 0x9e, hi: 0x9e}, -+ {value: 0xa000, lo: 0xb4, hi: 0xb5}, -+ {value: 0x3820, lo: 0xb6, hi: 0xb6}, -+ {value: 0x3826, lo: 0xb7, hi: 0xb7}, -+ // Block 0x5, offset 0x35 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8132, lo: 0x83, hi: 0x87}, -+ // Block 0x6, offset 0x37 -+ {value: 0x0001, lo: 0x04}, -+ {value: 0x8113, lo: 0x81, hi: 0x82}, -+ {value: 0x8132, lo: 0x84, hi: 0x84}, -+ {value: 0x812d, lo: 0x85, hi: 0x85}, -+ {value: 0x810d, lo: 0x87, hi: 0x87}, -+ // Block 0x7, offset 0x3c -+ {value: 0x0000, lo: 0x0a}, -+ {value: 0x8132, lo: 0x90, hi: 0x97}, -+ {value: 0x8119, lo: 0x98, hi: 0x98}, -+ {value: 0x811a, lo: 0x99, hi: 0x99}, -+ {value: 0x811b, lo: 0x9a, hi: 0x9a}, -+ {value: 0x3844, lo: 0xa2, hi: 0xa2}, -+ {value: 0x384a, lo: 0xa3, hi: 0xa3}, -+ {value: 0x3856, lo: 0xa4, hi: 0xa4}, -+ {value: 0x3850, lo: 0xa5, hi: 0xa5}, -+ {value: 0x385c, lo: 0xa6, hi: 0xa6}, -+ {value: 0xa000, lo: 0xa7, hi: 0xa7}, -+ // Block 0x8, offset 0x47 -+ {value: 0x0000, lo: 0x0e}, -+ {value: 0x386e, lo: 0x80, hi: 0x80}, -+ {value: 0xa000, lo: 0x81, hi: 0x81}, -+ {value: 0x3862, lo: 0x82, hi: 0x82}, -+ {value: 0xa000, lo: 0x92, hi: 0x92}, -+ {value: 0x3868, lo: 0x93, hi: 0x93}, -+ {value: 0xa000, lo: 0x95, hi: 0x95}, -+ {value: 0x8132, lo: 0x96, hi: 0x9c}, -+ {value: 0x8132, lo: 0x9f, hi: 0xa2}, -+ {value: 0x812d, lo: 0xa3, hi: 0xa3}, -+ {value: 0x8132, lo: 0xa4, hi: 0xa4}, -+ {value: 0x8132, lo: 0xa7, hi: 0xa8}, -+ {value: 0x812d, lo: 0xaa, hi: 0xaa}, -+ {value: 0x8132, lo: 0xab, hi: 0xac}, -+ {value: 0x812d, lo: 0xad, hi: 0xad}, -+ // Block 0x9, offset 0x56 -+ {value: 0x0000, lo: 0x0c}, -+ {value: 0x811f, lo: 0x91, hi: 0x91}, -+ {value: 0x8132, lo: 0xb0, hi: 0xb0}, -+ {value: 0x812d, lo: 0xb1, hi: 0xb1}, -+ {value: 0x8132, lo: 0xb2, hi: 0xb3}, -+ {value: 0x812d, lo: 0xb4, hi: 0xb4}, -+ {value: 0x8132, lo: 0xb5, hi: 0xb6}, -+ {value: 0x812d, lo: 0xb7, hi: 0xb9}, -+ {value: 0x8132, lo: 0xba, hi: 0xba}, -+ {value: 0x812d, lo: 0xbb, hi: 0xbc}, -+ {value: 0x8132, lo: 0xbd, hi: 0xbd}, -+ {value: 0x812d, lo: 0xbe, hi: 0xbe}, -+ {value: 0x8132, lo: 0xbf, hi: 0xbf}, -+ // Block 0xa, offset 0x63 -+ {value: 0x0005, lo: 0x07}, -+ {value: 0x8132, lo: 0x80, hi: 0x80}, -+ {value: 0x8132, lo: 0x81, hi: 0x81}, -+ {value: 0x812d, lo: 0x82, hi: 0x83}, -+ {value: 0x812d, lo: 0x84, hi: 0x85}, -+ {value: 0x812d, lo: 0x86, hi: 0x87}, -+ {value: 0x812d, lo: 0x88, hi: 0x89}, -+ {value: 0x8132, lo: 0x8a, hi: 0x8a}, -+ // Block 0xb, offset 0x6b -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x8132, lo: 0xab, hi: 0xb1}, -+ {value: 0x812d, lo: 0xb2, hi: 0xb2}, -+ {value: 0x8132, lo: 0xb3, hi: 0xb3}, -+ {value: 0x812d, lo: 0xbd, hi: 0xbd}, -+ // Block 0xc, offset 0x70 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x8132, lo: 0x96, hi: 0x99}, -+ {value: 0x8132, lo: 0x9b, hi: 0xa3}, -+ {value: 0x8132, lo: 0xa5, hi: 0xa7}, -+ {value: 0x8132, lo: 0xa9, hi: 0xad}, -+ // Block 0xd, offset 0x75 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812d, lo: 0x99, hi: 0x9b}, -+ // Block 0xe, offset 0x77 -+ {value: 0x0000, lo: 0x07}, -+ {value: 0xa000, lo: 0xa8, hi: 0xa8}, -+ {value: 0x3edb, lo: 0xa9, hi: 0xa9}, -+ {value: 0xa000, lo: 0xb0, hi: 0xb0}, -+ {value: 0x3ee3, lo: 0xb1, hi: 0xb1}, -+ {value: 0xa000, lo: 0xb3, hi: 0xb3}, -+ {value: 0x3eeb, lo: 0xb4, hi: 0xb4}, -+ {value: 0x9902, lo: 0xbc, hi: 0xbc}, -+ // Block 0xf, offset 0x7f -+ {value: 0x0008, lo: 0x06}, -+ {value: 0x8104, lo: 0x8d, hi: 0x8d}, -+ {value: 0x8132, lo: 0x91, hi: 0x91}, -+ {value: 0x812d, lo: 0x92, hi: 0x92}, -+ {value: 0x8132, lo: 0x93, hi: 0x93}, -+ {value: 0x8132, lo: 0x94, hi: 0x94}, -+ {value: 0x451f, lo: 0x98, hi: 0x9f}, -+ // Block 0x10, offset 0x86 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8102, lo: 0xbc, hi: 0xbc}, -+ {value: 0x9900, lo: 0xbe, hi: 0xbe}, -+ // Block 0x11, offset 0x89 -+ {value: 0x0008, lo: 0x07}, -+ {value: 0xa000, lo: 0x87, hi: 0x87}, -+ {value: 0x2ca1, lo: 0x8b, hi: 0x8c}, -+ {value: 0x8104, lo: 0x8d, hi: 0x8d}, -+ {value: 0x9900, lo: 0x97, hi: 0x97}, -+ {value: 0x455f, lo: 0x9c, hi: 0x9d}, -+ {value: 0x456f, lo: 0x9f, hi: 0x9f}, -+ {value: 0x8132, lo: 0xbe, hi: 0xbe}, -+ // Block 0x12, offset 0x91 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x4597, lo: 0xb3, hi: 0xb3}, -+ {value: 0x459f, lo: 0xb6, hi: 0xb6}, -+ {value: 0x8102, lo: 0xbc, hi: 0xbc}, -+ // Block 0x13, offset 0x95 -+ {value: 0x0008, lo: 0x03}, -+ {value: 0x8104, lo: 0x8d, hi: 0x8d}, -+ {value: 0x4577, lo: 0x99, hi: 0x9b}, -+ {value: 0x458f, lo: 0x9e, hi: 0x9e}, -+ // Block 0x14, offset 0x99 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8102, lo: 0xbc, hi: 0xbc}, -+ // Block 0x15, offset 0x9b -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8104, lo: 0x8d, hi: 0x8d}, -+ // Block 0x16, offset 0x9d -+ {value: 0x0000, lo: 0x08}, -+ {value: 0xa000, lo: 0x87, hi: 0x87}, -+ {value: 0x2cb9, lo: 0x88, hi: 0x88}, -+ {value: 0x2cb1, lo: 0x8b, hi: 0x8b}, -+ {value: 0x2cc1, lo: 0x8c, hi: 0x8c}, -+ {value: 0x8104, lo: 0x8d, hi: 0x8d}, -+ {value: 0x9900, lo: 0x96, hi: 0x97}, -+ {value: 0x45a7, lo: 0x9c, hi: 0x9c}, -+ {value: 0x45af, lo: 0x9d, hi: 0x9d}, -+ // Block 0x17, offset 0xa6 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0xa000, lo: 0x92, hi: 0x92}, -+ {value: 0x2cc9, lo: 0x94, hi: 0x94}, -+ {value: 0x9900, lo: 0xbe, hi: 0xbe}, -+ // Block 0x18, offset 0xaa -+ {value: 0x0000, lo: 0x06}, -+ {value: 0xa000, lo: 0x86, hi: 0x87}, -+ {value: 0x2cd1, lo: 0x8a, hi: 0x8a}, -+ {value: 0x2ce1, lo: 0x8b, hi: 0x8b}, -+ {value: 0x2cd9, lo: 0x8c, hi: 0x8c}, -+ {value: 0x8104, lo: 0x8d, hi: 0x8d}, -+ {value: 0x9900, lo: 0x97, hi: 0x97}, -+ // Block 0x19, offset 0xb1 -+ {value: 0x1801, lo: 0x04}, -+ {value: 0xa000, lo: 0x86, hi: 0x86}, -+ {value: 0x3ef3, lo: 0x88, hi: 0x88}, -+ {value: 0x8104, lo: 0x8d, hi: 0x8d}, -+ {value: 0x8120, lo: 0x95, hi: 0x96}, -+ // Block 0x1a, offset 0xb6 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8102, lo: 0xbc, hi: 0xbc}, -+ {value: 0xa000, lo: 0xbf, hi: 0xbf}, -+ // Block 0x1b, offset 0xb9 -+ {value: 0x0000, lo: 0x09}, -+ {value: 0x2ce9, lo: 0x80, hi: 0x80}, -+ {value: 0x9900, lo: 0x82, hi: 0x82}, -+ {value: 0xa000, lo: 0x86, hi: 0x86}, -+ {value: 0x2cf1, lo: 0x87, hi: 0x87}, -+ {value: 0x2cf9, lo: 0x88, hi: 0x88}, -+ {value: 0x2f53, lo: 0x8a, hi: 0x8a}, -+ {value: 0x2ddb, lo: 0x8b, hi: 0x8b}, -+ {value: 0x8104, lo: 0x8d, hi: 0x8d}, -+ {value: 0x9900, lo: 0x95, hi: 0x96}, -+ // Block 0x1c, offset 0xc3 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8104, lo: 0xbb, hi: 0xbc}, -+ {value: 0x9900, lo: 0xbe, hi: 0xbe}, -+ // Block 0x1d, offset 0xc6 -+ {value: 0x0000, lo: 0x06}, -+ {value: 0xa000, lo: 0x86, hi: 0x87}, -+ {value: 0x2d01, lo: 0x8a, hi: 0x8a}, -+ {value: 0x2d11, lo: 0x8b, hi: 0x8b}, -+ {value: 0x2d09, lo: 0x8c, hi: 0x8c}, -+ {value: 0x8104, lo: 0x8d, hi: 0x8d}, -+ {value: 0x9900, lo: 0x97, hi: 0x97}, -+ // Block 0x1e, offset 0xcd -+ {value: 0x6be7, lo: 0x07}, -+ {value: 0x9904, lo: 0x8a, hi: 0x8a}, -+ {value: 0x9900, lo: 0x8f, hi: 0x8f}, -+ {value: 0xa000, lo: 0x99, hi: 0x99}, -+ {value: 0x3efb, lo: 0x9a, hi: 0x9a}, -+ {value: 0x2f5b, lo: 0x9c, hi: 0x9c}, -+ {value: 0x2de6, lo: 0x9d, hi: 0x9d}, -+ {value: 0x2d19, lo: 0x9e, hi: 0x9f}, -+ // Block 0x1f, offset 0xd5 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x2624, lo: 0xb3, hi: 0xb3}, -+ {value: 0x8122, lo: 0xb8, hi: 0xb9}, -+ {value: 0x8104, lo: 0xba, hi: 0xba}, -+ // Block 0x20, offset 0xd9 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8123, lo: 0x88, hi: 0x8b}, -+ // Block 0x21, offset 0xdb -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x2639, lo: 0xb3, hi: 0xb3}, -+ {value: 0x8124, lo: 0xb8, hi: 0xb9}, -+ {value: 0x8104, lo: 0xba, hi: 0xba}, -+ // Block 0x22, offset 0xdf -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x8125, lo: 0x88, hi: 0x8b}, -+ {value: 0x262b, lo: 0x9c, hi: 0x9c}, -+ {value: 0x2632, lo: 0x9d, hi: 0x9d}, -+ // Block 0x23, offset 0xe3 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x030b, lo: 0x8c, hi: 0x8c}, -+ {value: 0x812d, lo: 0x98, hi: 0x99}, -+ {value: 0x812d, lo: 0xb5, hi: 0xb5}, -+ {value: 0x812d, lo: 0xb7, hi: 0xb7}, -+ {value: 0x812b, lo: 0xb9, hi: 0xb9}, -+ // Block 0x24, offset 0xe9 -+ {value: 0x0000, lo: 0x10}, -+ {value: 0x2647, lo: 0x83, hi: 0x83}, -+ {value: 0x264e, lo: 0x8d, hi: 0x8d}, -+ {value: 0x2655, lo: 0x92, hi: 0x92}, -+ {value: 0x265c, lo: 0x97, hi: 0x97}, -+ {value: 0x2663, lo: 0x9c, hi: 0x9c}, -+ {value: 0x2640, lo: 0xa9, hi: 0xa9}, -+ {value: 0x8126, lo: 0xb1, hi: 0xb1}, -+ {value: 0x8127, lo: 0xb2, hi: 0xb2}, -+ {value: 0x4a87, lo: 0xb3, hi: 0xb3}, -+ {value: 0x8128, lo: 0xb4, hi: 0xb4}, -+ {value: 0x4a90, lo: 0xb5, hi: 0xb5}, -+ {value: 0x45b7, lo: 0xb6, hi: 0xb6}, -+ {value: 0x45f7, lo: 0xb7, hi: 0xb7}, -+ {value: 0x45bf, lo: 0xb8, hi: 0xb8}, -+ {value: 0x4602, lo: 0xb9, hi: 0xb9}, -+ {value: 0x8127, lo: 0xba, hi: 0xbd}, -+ // Block 0x25, offset 0xfa -+ {value: 0x0000, lo: 0x0b}, -+ {value: 0x8127, lo: 0x80, hi: 0x80}, -+ {value: 0x4a99, lo: 0x81, hi: 0x81}, -+ {value: 0x8132, lo: 0x82, hi: 0x83}, -+ {value: 0x8104, lo: 0x84, hi: 0x84}, -+ {value: 0x8132, lo: 0x86, hi: 0x87}, -+ {value: 0x2671, lo: 0x93, hi: 0x93}, -+ {value: 0x2678, lo: 0x9d, hi: 0x9d}, -+ {value: 0x267f, lo: 0xa2, hi: 0xa2}, -+ {value: 0x2686, lo: 0xa7, hi: 0xa7}, -+ {value: 0x268d, lo: 0xac, hi: 0xac}, -+ {value: 0x266a, lo: 0xb9, hi: 0xb9}, -+ // Block 0x26, offset 0x106 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812d, lo: 0x86, hi: 0x86}, -+ // Block 0x27, offset 0x108 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0xa000, lo: 0xa5, hi: 0xa5}, -+ {value: 0x2d21, lo: 0xa6, hi: 0xa6}, -+ {value: 0x9900, lo: 0xae, hi: 0xae}, -+ {value: 0x8102, lo: 0xb7, hi: 0xb7}, -+ {value: 0x8104, lo: 0xb9, hi: 0xba}, -+ // Block 0x28, offset 0x10e -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812d, lo: 0x8d, hi: 0x8d}, -+ // Block 0x29, offset 0x110 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x030f, lo: 0xbc, hi: 0xbc}, -+ // Block 0x2a, offset 0x112 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0xa000, lo: 0x80, hi: 0x92}, -+ // Block 0x2b, offset 0x114 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0xb900, lo: 0xa1, hi: 0xb5}, -+ // Block 0x2c, offset 0x116 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x9900, lo: 0xa8, hi: 0xbf}, -+ // Block 0x2d, offset 0x118 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x9900, lo: 0x80, hi: 0x82}, -+ // Block 0x2e, offset 0x11a -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8132, lo: 0x9d, hi: 0x9f}, -+ // Block 0x2f, offset 0x11c -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8104, lo: 0x94, hi: 0x94}, -+ {value: 0x8104, lo: 0xb4, hi: 0xb4}, -+ // Block 0x30, offset 0x11f -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8104, lo: 0x92, hi: 0x92}, -+ {value: 0x8132, lo: 0x9d, hi: 0x9d}, -+ // Block 0x31, offset 0x122 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8131, lo: 0xa9, hi: 0xa9}, -+ // Block 0x32, offset 0x124 -+ {value: 0x0004, lo: 0x02}, -+ {value: 0x812e, lo: 0xb9, hi: 0xba}, -+ {value: 0x812d, lo: 0xbb, hi: 0xbb}, -+ // Block 0x33, offset 0x127 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8132, lo: 0x97, hi: 0x97}, -+ {value: 0x812d, lo: 0x98, hi: 0x98}, -+ // Block 0x34, offset 0x12a -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x8104, lo: 0xa0, hi: 0xa0}, -+ {value: 0x8132, lo: 0xb5, hi: 0xbc}, -+ {value: 0x812d, lo: 0xbf, hi: 0xbf}, -+ // Block 0x35, offset 0x12e -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x8132, lo: 0xb0, hi: 0xb4}, -+ {value: 0x812d, lo: 0xb5, hi: 0xba}, -+ {value: 0x8132, lo: 0xbb, hi: 0xbc}, -+ {value: 0x812d, lo: 0xbd, hi: 0xbd}, -+ // Block 0x36, offset 0x133 -+ {value: 0x0000, lo: 0x08}, -+ {value: 0x2d69, lo: 0x80, hi: 0x80}, -+ {value: 0x2d71, lo: 0x81, hi: 0x81}, -+ {value: 0xa000, lo: 0x82, hi: 0x82}, -+ {value: 0x2d79, lo: 0x83, hi: 0x83}, -+ {value: 0x8104, lo: 0x84, hi: 0x84}, -+ {value: 0x8132, lo: 0xab, hi: 0xab}, -+ {value: 0x812d, lo: 0xac, hi: 0xac}, -+ {value: 0x8132, lo: 0xad, hi: 0xb3}, -+ // Block 0x37, offset 0x13c -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8104, lo: 0xaa, hi: 0xab}, -+ // Block 0x38, offset 0x13e -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8102, lo: 0xa6, hi: 0xa6}, -+ {value: 0x8104, lo: 0xb2, hi: 0xb3}, -+ // Block 0x39, offset 0x141 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8102, lo: 0xb7, hi: 0xb7}, -+ // Block 0x3a, offset 0x143 -+ {value: 0x0000, lo: 0x0a}, -+ {value: 0x8132, lo: 0x90, hi: 0x92}, -+ {value: 0x8101, lo: 0x94, hi: 0x94}, -+ {value: 0x812d, lo: 0x95, hi: 0x99}, -+ {value: 0x8132, lo: 0x9a, hi: 0x9b}, -+ {value: 0x812d, lo: 0x9c, hi: 0x9f}, -+ {value: 0x8132, lo: 0xa0, hi: 0xa0}, -+ {value: 0x8101, lo: 0xa2, hi: 0xa8}, -+ {value: 0x812d, lo: 0xad, hi: 0xad}, -+ {value: 0x8132, lo: 0xb4, hi: 0xb4}, -+ {value: 0x8132, lo: 0xb8, hi: 0xb9}, -+ // Block 0x3b, offset 0x14e -+ {value: 0x0002, lo: 0x0a}, -+ {value: 0x0043, lo: 0xac, hi: 0xac}, -+ {value: 0x00d1, lo: 0xad, hi: 0xad}, -+ {value: 0x0045, lo: 0xae, hi: 0xae}, -+ {value: 0x0049, lo: 0xb0, hi: 0xb1}, -+ {value: 0x00e6, lo: 0xb2, hi: 0xb2}, -+ {value: 0x004f, lo: 0xb3, hi: 0xba}, -+ {value: 0x005f, lo: 0xbc, hi: 0xbc}, -+ {value: 0x00ef, lo: 0xbd, hi: 0xbd}, -+ {value: 0x0061, lo: 0xbe, hi: 0xbe}, -+ {value: 0x0065, lo: 0xbf, hi: 0xbf}, -+ // Block 0x3c, offset 0x159 -+ {value: 0x0000, lo: 0x0d}, -+ {value: 0x0001, lo: 0x80, hi: 0x8a}, -+ {value: 0x043b, lo: 0x91, hi: 0x91}, -+ {value: 0x429e, lo: 0x97, hi: 0x97}, -+ {value: 0x001d, lo: 0xa4, hi: 0xa4}, -+ {value: 0x1873, lo: 0xa5, hi: 0xa5}, -+ {value: 0x1b5f, lo: 0xa6, hi: 0xa6}, -+ {value: 0x0001, lo: 0xaf, hi: 0xaf}, -+ {value: 0x2694, lo: 0xb3, hi: 0xb3}, -+ {value: 0x2801, lo: 0xb4, hi: 0xb4}, -+ {value: 0x269b, lo: 0xb6, hi: 0xb6}, -+ {value: 0x280b, lo: 0xb7, hi: 0xb7}, -+ {value: 0x186d, lo: 0xbc, hi: 0xbc}, -+ {value: 0x426c, lo: 0xbe, hi: 0xbe}, -+ // Block 0x3d, offset 0x167 -+ {value: 0x0002, lo: 0x0d}, -+ {value: 0x1933, lo: 0x87, hi: 0x87}, -+ {value: 0x1930, lo: 0x88, hi: 0x88}, -+ {value: 0x1870, lo: 0x89, hi: 0x89}, -+ {value: 0x2991, lo: 0x97, hi: 0x97}, -+ {value: 0x0001, lo: 0x9f, hi: 0x9f}, -+ {value: 0x0021, lo: 0xb0, hi: 0xb0}, -+ {value: 0x0093, lo: 0xb1, hi: 0xb1}, -+ {value: 0x0029, lo: 0xb4, hi: 0xb9}, -+ {value: 0x0017, lo: 0xba, hi: 0xba}, -+ {value: 0x0467, lo: 0xbb, hi: 0xbb}, -+ {value: 0x003b, lo: 0xbc, hi: 0xbc}, -+ {value: 0x0011, lo: 0xbd, hi: 0xbe}, -+ {value: 0x009d, lo: 0xbf, hi: 0xbf}, -+ // Block 0x3e, offset 0x175 -+ {value: 0x0002, lo: 0x0f}, -+ {value: 0x0021, lo: 0x80, hi: 0x89}, -+ {value: 0x0017, lo: 0x8a, hi: 0x8a}, -+ {value: 0x0467, lo: 0x8b, hi: 0x8b}, -+ {value: 0x003b, lo: 0x8c, hi: 0x8c}, -+ {value: 0x0011, lo: 0x8d, hi: 0x8e}, -+ {value: 0x0083, lo: 0x90, hi: 0x90}, -+ {value: 0x008b, lo: 0x91, hi: 0x91}, -+ {value: 0x009f, lo: 0x92, hi: 0x92}, -+ {value: 0x00b1, lo: 0x93, hi: 0x93}, -+ {value: 0x0104, lo: 0x94, hi: 0x94}, -+ {value: 0x0091, lo: 0x95, hi: 0x95}, -+ {value: 0x0097, lo: 0x96, hi: 0x99}, -+ {value: 0x00a1, lo: 0x9a, hi: 0x9a}, -+ {value: 0x00a7, lo: 0x9b, hi: 0x9c}, -+ {value: 0x199c, lo: 0xa8, hi: 0xa8}, -+ // Block 0x3f, offset 0x185 -+ {value: 0x0000, lo: 0x0d}, -+ {value: 0x8132, lo: 0x90, hi: 0x91}, -+ {value: 0x8101, lo: 0x92, hi: 0x93}, -+ {value: 0x8132, lo: 0x94, hi: 0x97}, -+ {value: 0x8101, lo: 0x98, hi: 0x9a}, -+ {value: 0x8132, lo: 0x9b, hi: 0x9c}, -+ {value: 0x8132, lo: 0xa1, hi: 0xa1}, -+ {value: 0x8101, lo: 0xa5, hi: 0xa6}, -+ {value: 0x8132, lo: 0xa7, hi: 0xa7}, -+ {value: 0x812d, lo: 0xa8, hi: 0xa8}, -+ {value: 0x8132, lo: 0xa9, hi: 0xa9}, -+ {value: 0x8101, lo: 0xaa, hi: 0xab}, -+ {value: 0x812d, lo: 0xac, hi: 0xaf}, -+ {value: 0x8132, lo: 0xb0, hi: 0xb0}, -+ // Block 0x40, offset 0x193 -+ {value: 0x0007, lo: 0x06}, -+ {value: 0x2183, lo: 0x89, hi: 0x89}, -+ {value: 0xa000, lo: 0x90, hi: 0x90}, -+ {value: 0xa000, lo: 0x92, hi: 0x92}, -+ {value: 0xa000, lo: 0x94, hi: 0x94}, -+ {value: 0x3bbc, lo: 0x9a, hi: 0x9b}, -+ {value: 0x3bca, lo: 0xae, hi: 0xae}, -+ // Block 0x41, offset 0x19a -+ {value: 0x000e, lo: 0x05}, -+ {value: 0x3bd1, lo: 0x8d, hi: 0x8e}, -+ {value: 0x3bd8, lo: 0x8f, hi: 0x8f}, -+ {value: 0xa000, lo: 0x90, hi: 0x90}, -+ {value: 0xa000, lo: 0x92, hi: 0x92}, -+ {value: 0xa000, lo: 0x94, hi: 0x94}, -+ // Block 0x42, offset 0x1a0 -+ {value: 0x0173, lo: 0x0e}, -+ {value: 0xa000, lo: 0x83, hi: 0x83}, -+ {value: 0x3be6, lo: 0x84, hi: 0x84}, -+ {value: 0xa000, lo: 0x88, hi: 0x88}, -+ {value: 0x3bed, lo: 0x89, hi: 0x89}, -+ {value: 0xa000, lo: 0x8b, hi: 0x8b}, -+ {value: 0x3bf4, lo: 0x8c, hi: 0x8c}, -+ {value: 0xa000, lo: 0xa3, hi: 0xa3}, -+ {value: 0x3bfb, lo: 0xa4, hi: 0xa4}, -+ {value: 0xa000, lo: 0xa5, hi: 0xa5}, -+ {value: 0x3c02, lo: 0xa6, hi: 0xa6}, -+ {value: 0x26a2, lo: 0xac, hi: 0xad}, -+ {value: 0x26a9, lo: 0xaf, hi: 0xaf}, -+ {value: 0x281f, lo: 0xb0, hi: 0xb0}, -+ {value: 0xa000, lo: 0xbc, hi: 0xbc}, -+ // Block 0x43, offset 0x1af -+ {value: 0x0007, lo: 0x03}, -+ {value: 0x3c6b, lo: 0xa0, hi: 0xa1}, -+ {value: 0x3c95, lo: 0xa2, hi: 0xa3}, -+ {value: 0x3cbf, lo: 0xaa, hi: 0xad}, -+ // Block 0x44, offset 0x1b3 -+ {value: 0x0004, lo: 0x01}, -+ {value: 0x048b, lo: 0xa9, hi: 0xaa}, -+ // Block 0x45, offset 0x1b5 -+ {value: 0x0002, lo: 0x03}, -+ {value: 0x0057, lo: 0x80, hi: 0x8f}, -+ {value: 0x0083, lo: 0x90, hi: 0xa9}, -+ {value: 0x0021, lo: 0xaa, hi: 0xaa}, -+ // Block 0x46, offset 0x1b9 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x299e, lo: 0x8c, hi: 0x8c}, -+ // Block 0x47, offset 0x1bb -+ {value: 0x0266, lo: 0x02}, -+ {value: 0x1b8f, lo: 0xb4, hi: 0xb4}, -+ {value: 0x192d, lo: 0xb5, hi: 0xb6}, -+ // Block 0x48, offset 0x1be -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x44e0, lo: 0x9c, hi: 0x9c}, -+ // Block 0x49, offset 0x1c0 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0095, lo: 0xbc, hi: 0xbc}, -+ {value: 0x006d, lo: 0xbd, hi: 0xbd}, -+ // Block 0x4a, offset 0x1c3 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8132, lo: 0xaf, hi: 0xb1}, -+ // Block 0x4b, offset 0x1c5 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x047f, lo: 0xaf, hi: 0xaf}, -+ {value: 0x8104, lo: 0xbf, hi: 0xbf}, -+ // Block 0x4c, offset 0x1c8 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8132, lo: 0xa0, hi: 0xbf}, -+ // Block 0x4d, offset 0x1ca -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x0dc3, lo: 0x9f, hi: 0x9f}, -+ // Block 0x4e, offset 0x1cc -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x162f, lo: 0xb3, hi: 0xb3}, -+ // Block 0x4f, offset 0x1ce -+ {value: 0x0004, lo: 0x0b}, -+ {value: 0x1597, lo: 0x80, hi: 0x82}, -+ {value: 0x15af, lo: 0x83, hi: 0x83}, -+ {value: 0x15c7, lo: 0x84, hi: 0x85}, -+ {value: 0x15d7, lo: 0x86, hi: 0x89}, -+ {value: 0x15eb, lo: 0x8a, hi: 0x8c}, -+ {value: 0x15ff, lo: 0x8d, hi: 0x8d}, -+ {value: 0x1607, lo: 0x8e, hi: 0x8e}, -+ {value: 0x160f, lo: 0x8f, hi: 0x90}, -+ {value: 0x161b, lo: 0x91, hi: 0x93}, -+ {value: 0x162b, lo: 0x94, hi: 0x94}, -+ {value: 0x1633, lo: 0x95, hi: 0x95}, -+ // Block 0x50, offset 0x1da -+ {value: 0x0004, lo: 0x09}, -+ {value: 0x0001, lo: 0x80, hi: 0x80}, -+ {value: 0x812c, lo: 0xaa, hi: 0xaa}, -+ {value: 0x8131, lo: 0xab, hi: 0xab}, -+ {value: 0x8133, lo: 0xac, hi: 0xac}, -+ {value: 0x812e, lo: 0xad, hi: 0xad}, -+ {value: 0x812f, lo: 0xae, hi: 0xae}, -+ {value: 0x812f, lo: 0xaf, hi: 0xaf}, -+ {value: 0x04b3, lo: 0xb6, hi: 0xb6}, -+ {value: 0x0887, lo: 0xb8, hi: 0xba}, -+ // Block 0x51, offset 0x1e4 -+ {value: 0x0006, lo: 0x09}, -+ {value: 0x0313, lo: 0xb1, hi: 0xb1}, -+ {value: 0x0317, lo: 0xb2, hi: 0xb2}, -+ {value: 0x4a3e, lo: 0xb3, hi: 0xb3}, -+ {value: 0x031b, lo: 0xb4, hi: 0xb4}, -+ {value: 0x4a44, lo: 0xb5, hi: 0xb6}, -+ {value: 0x031f, lo: 0xb7, hi: 0xb7}, -+ {value: 0x0323, lo: 0xb8, hi: 0xb8}, -+ {value: 0x0327, lo: 0xb9, hi: 0xb9}, -+ {value: 0x4a50, lo: 0xba, hi: 0xbf}, -+ // Block 0x52, offset 0x1ee -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8132, lo: 0xaf, hi: 0xaf}, -+ {value: 0x8132, lo: 0xb4, hi: 0xbd}, -+ // Block 0x53, offset 0x1f1 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x020f, lo: 0x9c, hi: 0x9c}, -+ {value: 0x0212, lo: 0x9d, hi: 0x9d}, -+ {value: 0x8132, lo: 0x9e, hi: 0x9f}, -+ // Block 0x54, offset 0x1f5 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8132, lo: 0xb0, hi: 0xb1}, -+ // Block 0x55, offset 0x1f7 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x163b, lo: 0xb0, hi: 0xb0}, -+ // Block 0x56, offset 0x1f9 -+ {value: 0x000c, lo: 0x01}, -+ {value: 0x00d7, lo: 0xb8, hi: 0xb9}, -+ // Block 0x57, offset 0x1fb -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8104, lo: 0x86, hi: 0x86}, -+ // Block 0x58, offset 0x1fd -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8104, lo: 0x84, hi: 0x84}, -+ {value: 0x8132, lo: 0xa0, hi: 0xb1}, -+ // Block 0x59, offset 0x200 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812d, lo: 0xab, hi: 0xad}, -+ // Block 0x5a, offset 0x202 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8104, lo: 0x93, hi: 0x93}, -+ // Block 0x5b, offset 0x204 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8102, lo: 0xb3, hi: 0xb3}, -+ // Block 0x5c, offset 0x206 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8104, lo: 0x80, hi: 0x80}, -+ // Block 0x5d, offset 0x208 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x8132, lo: 0xb0, hi: 0xb0}, -+ {value: 0x8132, lo: 0xb2, hi: 0xb3}, -+ {value: 0x812d, lo: 0xb4, hi: 0xb4}, -+ {value: 0x8132, lo: 0xb7, hi: 0xb8}, -+ {value: 0x8132, lo: 0xbe, hi: 0xbf}, -+ // Block 0x5e, offset 0x20e -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8132, lo: 0x81, hi: 0x81}, -+ {value: 0x8104, lo: 0xb6, hi: 0xb6}, -+ // Block 0x5f, offset 0x211 -+ {value: 0x0008, lo: 0x03}, -+ {value: 0x1637, lo: 0x9c, hi: 0x9d}, -+ {value: 0x0125, lo: 0x9e, hi: 0x9e}, -+ {value: 0x1643, lo: 0x9f, hi: 0x9f}, -+ // Block 0x60, offset 0x215 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8104, lo: 0xad, hi: 0xad}, -+ // Block 0x61, offset 0x217 -+ {value: 0x0000, lo: 0x06}, -+ {value: 0xe500, lo: 0x80, hi: 0x80}, -+ {value: 0xc600, lo: 0x81, hi: 0x9b}, -+ {value: 0xe500, lo: 0x9c, hi: 0x9c}, -+ {value: 0xc600, lo: 0x9d, hi: 0xb7}, -+ {value: 0xe500, lo: 0xb8, hi: 0xb8}, -+ {value: 0xc600, lo: 0xb9, hi: 0xbf}, -+ // Block 0x62, offset 0x21e -+ {value: 0x0000, lo: 0x05}, -+ {value: 0xc600, lo: 0x80, hi: 0x93}, -+ {value: 0xe500, lo: 0x94, hi: 0x94}, -+ {value: 0xc600, lo: 0x95, hi: 0xaf}, -+ {value: 0xe500, lo: 0xb0, hi: 0xb0}, -+ {value: 0xc600, lo: 0xb1, hi: 0xbf}, -+ // Block 0x63, offset 0x224 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0xc600, lo: 0x80, hi: 0x8b}, -+ {value: 0xe500, lo: 0x8c, hi: 0x8c}, -+ {value: 0xc600, lo: 0x8d, hi: 0xa7}, -+ {value: 0xe500, lo: 0xa8, hi: 0xa8}, -+ {value: 0xc600, lo: 0xa9, hi: 0xbf}, -+ // Block 0x64, offset 0x22a -+ {value: 0x0000, lo: 0x07}, -+ {value: 0xc600, lo: 0x80, hi: 0x83}, -+ {value: 0xe500, lo: 0x84, hi: 0x84}, -+ {value: 0xc600, lo: 0x85, hi: 0x9f}, -+ {value: 0xe500, lo: 0xa0, hi: 0xa0}, -+ {value: 0xc600, lo: 0xa1, hi: 0xbb}, -+ {value: 0xe500, lo: 0xbc, hi: 0xbc}, -+ {value: 0xc600, lo: 0xbd, hi: 0xbf}, -+ // Block 0x65, offset 0x232 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0xc600, lo: 0x80, hi: 0x97}, -+ {value: 0xe500, lo: 0x98, hi: 0x98}, -+ {value: 0xc600, lo: 0x99, hi: 0xb3}, -+ {value: 0xe500, lo: 0xb4, hi: 0xb4}, -+ {value: 0xc600, lo: 0xb5, hi: 0xbf}, -+ // Block 0x66, offset 0x238 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0xc600, lo: 0x80, hi: 0x8f}, -+ {value: 0xe500, lo: 0x90, hi: 0x90}, -+ {value: 0xc600, lo: 0x91, hi: 0xab}, -+ {value: 0xe500, lo: 0xac, hi: 0xac}, -+ {value: 0xc600, lo: 0xad, hi: 0xbf}, -+ // Block 0x67, offset 0x23e -+ {value: 0x0000, lo: 0x05}, -+ {value: 0xc600, lo: 0x80, hi: 0x87}, -+ {value: 0xe500, lo: 0x88, hi: 0x88}, -+ {value: 0xc600, lo: 0x89, hi: 0xa3}, -+ {value: 0xe500, lo: 0xa4, hi: 0xa4}, -+ {value: 0xc600, lo: 0xa5, hi: 0xbf}, -+ // Block 0x68, offset 0x244 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0xc600, lo: 0x80, hi: 0x87}, -+ {value: 0xe500, lo: 0x88, hi: 0x88}, -+ {value: 0xc600, lo: 0x89, hi: 0xa3}, -+ // Block 0x69, offset 0x248 -+ {value: 0x0002, lo: 0x01}, -+ {value: 0x0003, lo: 0x81, hi: 0xbf}, -+ // Block 0x6a, offset 0x24a -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812d, lo: 0xbd, hi: 0xbd}, -+ // Block 0x6b, offset 0x24c -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812d, lo: 0xa0, hi: 0xa0}, -+ // Block 0x6c, offset 0x24e -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8132, lo: 0xb6, hi: 0xba}, -+ // Block 0x6d, offset 0x250 -+ {value: 0x002c, lo: 0x05}, -+ {value: 0x812d, lo: 0x8d, hi: 0x8d}, -+ {value: 0x8132, lo: 0x8f, hi: 0x8f}, -+ {value: 0x8132, lo: 0xb8, hi: 0xb8}, -+ {value: 0x8101, lo: 0xb9, hi: 0xba}, -+ {value: 0x8104, lo: 0xbf, hi: 0xbf}, -+ // Block 0x6e, offset 0x256 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8132, lo: 0xa5, hi: 0xa5}, -+ {value: 0x812d, lo: 0xa6, hi: 0xa6}, -+ // Block 0x6f, offset 0x259 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8132, lo: 0xa4, hi: 0xa7}, -+ // Block 0x70, offset 0x25b -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x812d, lo: 0x86, hi: 0x87}, -+ {value: 0x8132, lo: 0x88, hi: 0x8a}, -+ {value: 0x812d, lo: 0x8b, hi: 0x8b}, -+ {value: 0x8132, lo: 0x8c, hi: 0x8c}, -+ {value: 0x812d, lo: 0x8d, hi: 0x90}, -+ // Block 0x71, offset 0x261 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8104, lo: 0x86, hi: 0x86}, -+ {value: 0x8104, lo: 0xbf, hi: 0xbf}, -+ // Block 0x72, offset 0x264 -+ {value: 0x17fe, lo: 0x07}, -+ {value: 0xa000, lo: 0x99, hi: 0x99}, -+ {value: 0x423b, lo: 0x9a, hi: 0x9a}, -+ {value: 0xa000, lo: 0x9b, hi: 0x9b}, -+ {value: 0x4245, lo: 0x9c, hi: 0x9c}, -+ {value: 0xa000, lo: 0xa5, hi: 0xa5}, -+ {value: 0x424f, lo: 0xab, hi: 0xab}, -+ {value: 0x8104, lo: 0xb9, hi: 0xba}, -+ // Block 0x73, offset 0x26c -+ {value: 0x0000, lo: 0x06}, -+ {value: 0x8132, lo: 0x80, hi: 0x82}, -+ {value: 0x9900, lo: 0xa7, hi: 0xa7}, -+ {value: 0x2d81, lo: 0xae, hi: 0xae}, -+ {value: 0x2d8b, lo: 0xaf, hi: 0xaf}, -+ {value: 0xa000, lo: 0xb1, hi: 0xb2}, -+ {value: 0x8104, lo: 0xb3, hi: 0xb4}, -+ // Block 0x74, offset 0x273 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8104, lo: 0x80, hi: 0x80}, -+ {value: 0x8102, lo: 0x8a, hi: 0x8a}, -+ // Block 0x75, offset 0x276 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8104, lo: 0xb5, hi: 0xb5}, -+ {value: 0x8102, lo: 0xb6, hi: 0xb6}, -+ // Block 0x76, offset 0x279 -+ {value: 0x0002, lo: 0x01}, -+ {value: 0x8102, lo: 0xa9, hi: 0xaa}, -+ // Block 0x77, offset 0x27b -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8102, lo: 0xbb, hi: 0xbc}, -+ {value: 0x9900, lo: 0xbe, hi: 0xbe}, -+ // Block 0x78, offset 0x27e -+ {value: 0x0000, lo: 0x07}, -+ {value: 0xa000, lo: 0x87, hi: 0x87}, -+ {value: 0x2d95, lo: 0x8b, hi: 0x8b}, -+ {value: 0x2d9f, lo: 0x8c, hi: 0x8c}, -+ {value: 0x8104, lo: 0x8d, hi: 0x8d}, -+ {value: 0x9900, lo: 0x97, hi: 0x97}, -+ {value: 0x8132, lo: 0xa6, hi: 0xac}, -+ {value: 0x8132, lo: 0xb0, hi: 0xb4}, -+ // Block 0x79, offset 0x286 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x8104, lo: 0x82, hi: 0x82}, -+ {value: 0x8102, lo: 0x86, hi: 0x86}, -+ {value: 0x8132, lo: 0x9e, hi: 0x9e}, -+ // Block 0x7a, offset 0x28a -+ {value: 0x6b57, lo: 0x06}, -+ {value: 0x9900, lo: 0xb0, hi: 0xb0}, -+ {value: 0xa000, lo: 0xb9, hi: 0xb9}, -+ {value: 0x9900, lo: 0xba, hi: 0xba}, -+ {value: 0x2db3, lo: 0xbb, hi: 0xbb}, -+ {value: 0x2da9, lo: 0xbc, hi: 0xbd}, -+ {value: 0x2dbd, lo: 0xbe, hi: 0xbe}, -+ // Block 0x7b, offset 0x291 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8104, lo: 0x82, hi: 0x82}, -+ {value: 0x8102, lo: 0x83, hi: 0x83}, -+ // Block 0x7c, offset 0x294 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x9900, lo: 0xaf, hi: 0xaf}, -+ {value: 0xa000, lo: 0xb8, hi: 0xb9}, -+ {value: 0x2dc7, lo: 0xba, hi: 0xba}, -+ {value: 0x2dd1, lo: 0xbb, hi: 0xbb}, -+ {value: 0x8104, lo: 0xbf, hi: 0xbf}, -+ // Block 0x7d, offset 0x29a -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8102, lo: 0x80, hi: 0x80}, -+ // Block 0x7e, offset 0x29c -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8104, lo: 0xbf, hi: 0xbf}, -+ // Block 0x7f, offset 0x29e -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8104, lo: 0xb6, hi: 0xb6}, -+ {value: 0x8102, lo: 0xb7, hi: 0xb7}, -+ // Block 0x80, offset 0x2a1 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8104, lo: 0xab, hi: 0xab}, -+ // Block 0x81, offset 0x2a3 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8104, lo: 0xb9, hi: 0xb9}, -+ {value: 0x8102, lo: 0xba, hi: 0xba}, -+ // Block 0x82, offset 0x2a6 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8104, lo: 0xa0, hi: 0xa0}, -+ // Block 0x83, offset 0x2a8 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8104, lo: 0xb4, hi: 0xb4}, -+ // Block 0x84, offset 0x2aa -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8104, lo: 0x87, hi: 0x87}, -+ // Block 0x85, offset 0x2ac -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8104, lo: 0x99, hi: 0x99}, -+ // Block 0x86, offset 0x2ae -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8102, lo: 0x82, hi: 0x82}, -+ {value: 0x8104, lo: 0x84, hi: 0x85}, -+ // Block 0x87, offset 0x2b1 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8104, lo: 0x97, hi: 0x97}, -+ // Block 0x88, offset 0x2b3 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8101, lo: 0xb0, hi: 0xb4}, -+ // Block 0x89, offset 0x2b5 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8132, lo: 0xb0, hi: 0xb6}, -+ // Block 0x8a, offset 0x2b7 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8101, lo: 0x9e, hi: 0x9e}, -+ // Block 0x8b, offset 0x2b9 -+ {value: 0x0000, lo: 0x0c}, -+ {value: 0x45cf, lo: 0x9e, hi: 0x9e}, -+ {value: 0x45d9, lo: 0x9f, hi: 0x9f}, -+ {value: 0x460d, lo: 0xa0, hi: 0xa0}, -+ {value: 0x461b, lo: 0xa1, hi: 0xa1}, -+ {value: 0x4629, lo: 0xa2, hi: 0xa2}, -+ {value: 0x4637, lo: 0xa3, hi: 0xa3}, -+ {value: 0x4645, lo: 0xa4, hi: 0xa4}, -+ {value: 0x812b, lo: 0xa5, hi: 0xa6}, -+ {value: 0x8101, lo: 0xa7, hi: 0xa9}, -+ {value: 0x8130, lo: 0xad, hi: 0xad}, -+ {value: 0x812b, lo: 0xae, hi: 0xb2}, -+ {value: 0x812d, lo: 0xbb, hi: 0xbf}, -+ // Block 0x8c, offset 0x2c6 -+ {value: 0x0000, lo: 0x09}, -+ {value: 0x812d, lo: 0x80, hi: 0x82}, -+ {value: 0x8132, lo: 0x85, hi: 0x89}, -+ {value: 0x812d, lo: 0x8a, hi: 0x8b}, -+ {value: 0x8132, lo: 0xaa, hi: 0xad}, -+ {value: 0x45e3, lo: 0xbb, hi: 0xbb}, -+ {value: 0x45ed, lo: 0xbc, hi: 0xbc}, -+ {value: 0x4653, lo: 0xbd, hi: 0xbd}, -+ {value: 0x466f, lo: 0xbe, hi: 0xbe}, -+ {value: 0x4661, lo: 0xbf, hi: 0xbf}, -+ // Block 0x8d, offset 0x2d0 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x467d, lo: 0x80, hi: 0x80}, -+ // Block 0x8e, offset 0x2d2 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8132, lo: 0x82, hi: 0x84}, -+ // Block 0x8f, offset 0x2d4 -+ {value: 0x0002, lo: 0x03}, -+ {value: 0x0043, lo: 0x80, hi: 0x99}, -+ {value: 0x0083, lo: 0x9a, hi: 0xb3}, -+ {value: 0x0043, lo: 0xb4, hi: 0xbf}, -+ // Block 0x90, offset 0x2d8 -+ {value: 0x0002, lo: 0x04}, -+ {value: 0x005b, lo: 0x80, hi: 0x8d}, -+ {value: 0x0083, lo: 0x8e, hi: 0x94}, -+ {value: 0x0093, lo: 0x96, hi: 0xa7}, -+ {value: 0x0043, lo: 0xa8, hi: 0xbf}, -+ // Block 0x91, offset 0x2dd -+ {value: 0x0002, lo: 0x0b}, -+ {value: 0x0073, lo: 0x80, hi: 0x81}, -+ {value: 0x0083, lo: 0x82, hi: 0x9b}, -+ {value: 0x0043, lo: 0x9c, hi: 0x9c}, -+ {value: 0x0047, lo: 0x9e, hi: 0x9f}, -+ {value: 0x004f, lo: 0xa2, hi: 0xa2}, -+ {value: 0x0055, lo: 0xa5, hi: 0xa6}, -+ {value: 0x005d, lo: 0xa9, hi: 0xac}, -+ {value: 0x0067, lo: 0xae, hi: 0xb5}, -+ {value: 0x0083, lo: 0xb6, hi: 0xb9}, -+ {value: 0x008d, lo: 0xbb, hi: 0xbb}, -+ {value: 0x0091, lo: 0xbd, hi: 0xbf}, -+ // Block 0x92, offset 0x2e9 -+ {value: 0x0002, lo: 0x04}, -+ {value: 0x0097, lo: 0x80, hi: 0x83}, -+ {value: 0x00a1, lo: 0x85, hi: 0x8f}, -+ {value: 0x0043, lo: 0x90, hi: 0xa9}, -+ {value: 0x0083, lo: 0xaa, hi: 0xbf}, -+ // Block 0x93, offset 0x2ee -+ {value: 0x0002, lo: 0x08}, -+ {value: 0x00af, lo: 0x80, hi: 0x83}, -+ {value: 0x0043, lo: 0x84, hi: 0x85}, -+ {value: 0x0049, lo: 0x87, hi: 0x8a}, -+ {value: 0x0055, lo: 0x8d, hi: 0x94}, -+ {value: 0x0067, lo: 0x96, hi: 0x9c}, -+ {value: 0x0083, lo: 0x9e, hi: 0xb7}, -+ {value: 0x0043, lo: 0xb8, hi: 0xb9}, -+ {value: 0x0049, lo: 0xbb, hi: 0xbe}, -+ // Block 0x94, offset 0x2f7 -+ {value: 0x0002, lo: 0x05}, -+ {value: 0x0053, lo: 0x80, hi: 0x84}, -+ {value: 0x005f, lo: 0x86, hi: 0x86}, -+ {value: 0x0067, lo: 0x8a, hi: 0x90}, -+ {value: 0x0083, lo: 0x92, hi: 0xab}, -+ {value: 0x0043, lo: 0xac, hi: 0xbf}, -+ // Block 0x95, offset 0x2fd -+ {value: 0x0002, lo: 0x04}, -+ {value: 0x006b, lo: 0x80, hi: 0x85}, -+ {value: 0x0083, lo: 0x86, hi: 0x9f}, -+ {value: 0x0043, lo: 0xa0, hi: 0xb9}, -+ {value: 0x0083, lo: 0xba, hi: 0xbf}, -+ // Block 0x96, offset 0x302 -+ {value: 0x0002, lo: 0x03}, -+ {value: 0x008f, lo: 0x80, hi: 0x93}, -+ {value: 0x0043, lo: 0x94, hi: 0xad}, -+ {value: 0x0083, lo: 0xae, hi: 0xbf}, -+ // Block 0x97, offset 0x306 -+ {value: 0x0002, lo: 0x04}, -+ {value: 0x00a7, lo: 0x80, hi: 0x87}, -+ {value: 0x0043, lo: 0x88, hi: 0xa1}, -+ {value: 0x0083, lo: 0xa2, hi: 0xbb}, -+ {value: 0x0043, lo: 0xbc, hi: 0xbf}, -+ // Block 0x98, offset 0x30b -+ {value: 0x0002, lo: 0x03}, -+ {value: 0x004b, lo: 0x80, hi: 0x95}, -+ {value: 0x0083, lo: 0x96, hi: 0xaf}, -+ {value: 0x0043, lo: 0xb0, hi: 0xbf}, -+ // Block 0x99, offset 0x30f -+ {value: 0x0003, lo: 0x0f}, -+ {value: 0x01b8, lo: 0x80, hi: 0x80}, -+ {value: 0x045f, lo: 0x81, hi: 0x81}, -+ {value: 0x01bb, lo: 0x82, hi: 0x9a}, -+ {value: 0x045b, lo: 0x9b, hi: 0x9b}, -+ {value: 0x01c7, lo: 0x9c, hi: 0x9c}, -+ {value: 0x01d0, lo: 0x9d, hi: 0x9d}, -+ {value: 0x01d6, lo: 0x9e, hi: 0x9e}, -+ {value: 0x01fa, lo: 0x9f, hi: 0x9f}, -+ {value: 0x01eb, lo: 0xa0, hi: 0xa0}, -+ {value: 0x01e8, lo: 0xa1, hi: 0xa1}, -+ {value: 0x0173, lo: 0xa2, hi: 0xb2}, -+ {value: 0x0188, lo: 0xb3, hi: 0xb3}, -+ {value: 0x01a6, lo: 0xb4, hi: 0xba}, -+ {value: 0x045f, lo: 0xbb, hi: 0xbb}, -+ {value: 0x01bb, lo: 0xbc, hi: 0xbf}, -+ // Block 0x9a, offset 0x31f -+ {value: 0x0003, lo: 0x0d}, -+ {value: 0x01c7, lo: 0x80, hi: 0x94}, -+ {value: 0x045b, lo: 0x95, hi: 0x95}, -+ {value: 0x01c7, lo: 0x96, hi: 0x96}, -+ {value: 0x01d0, lo: 0x97, hi: 0x97}, -+ {value: 0x01d6, lo: 0x98, hi: 0x98}, -+ {value: 0x01fa, lo: 0x99, hi: 0x99}, -+ {value: 0x01eb, lo: 0x9a, hi: 0x9a}, -+ {value: 0x01e8, lo: 0x9b, hi: 0x9b}, -+ {value: 0x0173, lo: 0x9c, hi: 0xac}, -+ {value: 0x0188, lo: 0xad, hi: 0xad}, -+ {value: 0x01a6, lo: 0xae, hi: 0xb4}, -+ {value: 0x045f, lo: 0xb5, hi: 0xb5}, -+ {value: 0x01bb, lo: 0xb6, hi: 0xbf}, -+ // Block 0x9b, offset 0x32d -+ {value: 0x0003, lo: 0x0d}, -+ {value: 0x01d9, lo: 0x80, hi: 0x8e}, -+ {value: 0x045b, lo: 0x8f, hi: 0x8f}, -+ {value: 0x01c7, lo: 0x90, hi: 0x90}, -+ {value: 0x01d0, lo: 0x91, hi: 0x91}, -+ {value: 0x01d6, lo: 0x92, hi: 0x92}, -+ {value: 0x01fa, lo: 0x93, hi: 0x93}, -+ {value: 0x01eb, lo: 0x94, hi: 0x94}, -+ {value: 0x01e8, lo: 0x95, hi: 0x95}, -+ {value: 0x0173, lo: 0x96, hi: 0xa6}, -+ {value: 0x0188, lo: 0xa7, hi: 0xa7}, -+ {value: 0x01a6, lo: 0xa8, hi: 0xae}, -+ {value: 0x045f, lo: 0xaf, hi: 0xaf}, -+ {value: 0x01bb, lo: 0xb0, hi: 0xbf}, -+ // Block 0x9c, offset 0x33b -+ {value: 0x0003, lo: 0x0d}, -+ {value: 0x01eb, lo: 0x80, hi: 0x88}, -+ {value: 0x045b, lo: 0x89, hi: 0x89}, -+ {value: 0x01c7, lo: 0x8a, hi: 0x8a}, -+ {value: 0x01d0, lo: 0x8b, hi: 0x8b}, -+ {value: 0x01d6, lo: 0x8c, hi: 0x8c}, -+ {value: 0x01fa, lo: 0x8d, hi: 0x8d}, -+ {value: 0x01eb, lo: 0x8e, hi: 0x8e}, -+ {value: 0x01e8, lo: 0x8f, hi: 0x8f}, -+ {value: 0x0173, lo: 0x90, hi: 0xa0}, -+ {value: 0x0188, lo: 0xa1, hi: 0xa1}, -+ {value: 0x01a6, lo: 0xa2, hi: 0xa8}, -+ {value: 0x045f, lo: 0xa9, hi: 0xa9}, -+ {value: 0x01bb, lo: 0xaa, hi: 0xbf}, -+ // Block 0x9d, offset 0x349 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x8132, lo: 0x80, hi: 0x86}, -+ {value: 0x8132, lo: 0x88, hi: 0x98}, -+ {value: 0x8132, lo: 0x9b, hi: 0xa1}, -+ {value: 0x8132, lo: 0xa3, hi: 0xa4}, -+ {value: 0x8132, lo: 0xa6, hi: 0xaa}, -+ // Block 0x9e, offset 0x34f -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8132, lo: 0xac, hi: 0xaf}, -+ // Block 0x9f, offset 0x351 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812d, lo: 0x90, hi: 0x96}, -+ // Block 0xa0, offset 0x353 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8132, lo: 0x84, hi: 0x89}, -+ {value: 0x8102, lo: 0x8a, hi: 0x8a}, -+ // Block 0xa1, offset 0x356 -+ {value: 0x0002, lo: 0x0a}, -+ {value: 0x0063, lo: 0x80, hi: 0x89}, -+ {value: 0x1951, lo: 0x8a, hi: 0x8a}, -+ {value: 0x1984, lo: 0x8b, hi: 0x8b}, -+ {value: 0x199f, lo: 0x8c, hi: 0x8c}, -+ {value: 0x19a5, lo: 0x8d, hi: 0x8d}, -+ {value: 0x1bc3, lo: 0x8e, hi: 0x8e}, -+ {value: 0x19b1, lo: 0x8f, hi: 0x8f}, -+ {value: 0x197b, lo: 0xaa, hi: 0xaa}, -+ {value: 0x197e, lo: 0xab, hi: 0xab}, -+ {value: 0x1981, lo: 0xac, hi: 0xac}, -+ // Block 0xa2, offset 0x361 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x193f, lo: 0x90, hi: 0x90}, -+ // Block 0xa3, offset 0x363 -+ {value: 0x0028, lo: 0x09}, -+ {value: 0x2865, lo: 0x80, hi: 0x80}, -+ {value: 0x2829, lo: 0x81, hi: 0x81}, -+ {value: 0x2833, lo: 0x82, hi: 0x82}, -+ {value: 0x2847, lo: 0x83, hi: 0x84}, -+ {value: 0x2851, lo: 0x85, hi: 0x86}, -+ {value: 0x283d, lo: 0x87, hi: 0x87}, -+ {value: 0x285b, lo: 0x88, hi: 0x88}, -+ {value: 0x0b6f, lo: 0x90, hi: 0x90}, -+ {value: 0x08e7, lo: 0x91, hi: 0x91}, -+} -+ -+// recompMap: 7520 bytes (entries only) -+var recompMap map[uint32]rune -+var recompMapOnce sync.Once -+ -+const recompMapPacked = "" + -+ "\x00A\x03\x00\x00\x00\x00\xc0" + // 0x00410300: 0x000000C0 -+ "\x00A\x03\x01\x00\x00\x00\xc1" + // 0x00410301: 0x000000C1 -+ "\x00A\x03\x02\x00\x00\x00\xc2" + // 0x00410302: 0x000000C2 -+ "\x00A\x03\x03\x00\x00\x00\xc3" + // 0x00410303: 0x000000C3 -+ "\x00A\x03\b\x00\x00\x00\xc4" + // 0x00410308: 0x000000C4 -+ "\x00A\x03\n\x00\x00\x00\xc5" + // 0x0041030A: 0x000000C5 -+ "\x00C\x03'\x00\x00\x00\xc7" + // 0x00430327: 0x000000C7 -+ "\x00E\x03\x00\x00\x00\x00\xc8" + // 0x00450300: 0x000000C8 -+ "\x00E\x03\x01\x00\x00\x00\xc9" + // 0x00450301: 0x000000C9 -+ "\x00E\x03\x02\x00\x00\x00\xca" + // 0x00450302: 0x000000CA -+ "\x00E\x03\b\x00\x00\x00\xcb" + // 0x00450308: 0x000000CB -+ "\x00I\x03\x00\x00\x00\x00\xcc" + // 0x00490300: 0x000000CC -+ "\x00I\x03\x01\x00\x00\x00\xcd" + // 0x00490301: 0x000000CD -+ "\x00I\x03\x02\x00\x00\x00\xce" + // 0x00490302: 0x000000CE -+ "\x00I\x03\b\x00\x00\x00\xcf" + // 0x00490308: 0x000000CF -+ "\x00N\x03\x03\x00\x00\x00\xd1" + // 0x004E0303: 0x000000D1 -+ "\x00O\x03\x00\x00\x00\x00\xd2" + // 0x004F0300: 0x000000D2 -+ "\x00O\x03\x01\x00\x00\x00\xd3" + // 0x004F0301: 0x000000D3 -+ "\x00O\x03\x02\x00\x00\x00\xd4" + // 0x004F0302: 0x000000D4 -+ "\x00O\x03\x03\x00\x00\x00\xd5" + // 0x004F0303: 0x000000D5 -+ "\x00O\x03\b\x00\x00\x00\xd6" + // 0x004F0308: 0x000000D6 -+ "\x00U\x03\x00\x00\x00\x00\xd9" + // 0x00550300: 0x000000D9 -+ "\x00U\x03\x01\x00\x00\x00\xda" + // 0x00550301: 0x000000DA -+ "\x00U\x03\x02\x00\x00\x00\xdb" + // 0x00550302: 0x000000DB -+ "\x00U\x03\b\x00\x00\x00\xdc" + // 0x00550308: 0x000000DC -+ "\x00Y\x03\x01\x00\x00\x00\xdd" + // 0x00590301: 0x000000DD -+ "\x00a\x03\x00\x00\x00\x00\xe0" + // 0x00610300: 0x000000E0 -+ "\x00a\x03\x01\x00\x00\x00\xe1" + // 0x00610301: 0x000000E1 -+ "\x00a\x03\x02\x00\x00\x00\xe2" + // 0x00610302: 0x000000E2 -+ "\x00a\x03\x03\x00\x00\x00\xe3" + // 0x00610303: 0x000000E3 -+ "\x00a\x03\b\x00\x00\x00\xe4" + // 0x00610308: 0x000000E4 -+ "\x00a\x03\n\x00\x00\x00\xe5" + // 0x0061030A: 0x000000E5 -+ "\x00c\x03'\x00\x00\x00\xe7" + // 0x00630327: 0x000000E7 -+ "\x00e\x03\x00\x00\x00\x00\xe8" + // 0x00650300: 0x000000E8 -+ "\x00e\x03\x01\x00\x00\x00\xe9" + // 0x00650301: 0x000000E9 -+ "\x00e\x03\x02\x00\x00\x00\xea" + // 0x00650302: 0x000000EA -+ "\x00e\x03\b\x00\x00\x00\xeb" + // 0x00650308: 0x000000EB -+ "\x00i\x03\x00\x00\x00\x00\xec" + // 0x00690300: 0x000000EC -+ "\x00i\x03\x01\x00\x00\x00\xed" + // 0x00690301: 0x000000ED -+ "\x00i\x03\x02\x00\x00\x00\xee" + // 0x00690302: 0x000000EE -+ "\x00i\x03\b\x00\x00\x00\xef" + // 0x00690308: 0x000000EF -+ "\x00n\x03\x03\x00\x00\x00\xf1" + // 0x006E0303: 0x000000F1 -+ "\x00o\x03\x00\x00\x00\x00\xf2" + // 0x006F0300: 0x000000F2 -+ "\x00o\x03\x01\x00\x00\x00\xf3" + // 0x006F0301: 0x000000F3 -+ "\x00o\x03\x02\x00\x00\x00\xf4" + // 0x006F0302: 0x000000F4 -+ "\x00o\x03\x03\x00\x00\x00\xf5" + // 0x006F0303: 0x000000F5 -+ "\x00o\x03\b\x00\x00\x00\xf6" + // 0x006F0308: 0x000000F6 -+ "\x00u\x03\x00\x00\x00\x00\xf9" + // 0x00750300: 0x000000F9 -+ "\x00u\x03\x01\x00\x00\x00\xfa" + // 0x00750301: 0x000000FA -+ "\x00u\x03\x02\x00\x00\x00\xfb" + // 0x00750302: 0x000000FB -+ "\x00u\x03\b\x00\x00\x00\xfc" + // 0x00750308: 0x000000FC -+ "\x00y\x03\x01\x00\x00\x00\xfd" + // 0x00790301: 0x000000FD -+ "\x00y\x03\b\x00\x00\x00\xff" + // 0x00790308: 0x000000FF -+ "\x00A\x03\x04\x00\x00\x01\x00" + // 0x00410304: 0x00000100 -+ "\x00a\x03\x04\x00\x00\x01\x01" + // 0x00610304: 0x00000101 -+ "\x00A\x03\x06\x00\x00\x01\x02" + // 0x00410306: 0x00000102 -+ "\x00a\x03\x06\x00\x00\x01\x03" + // 0x00610306: 0x00000103 -+ "\x00A\x03(\x00\x00\x01\x04" + // 0x00410328: 0x00000104 -+ "\x00a\x03(\x00\x00\x01\x05" + // 0x00610328: 0x00000105 -+ "\x00C\x03\x01\x00\x00\x01\x06" + // 0x00430301: 0x00000106 -+ "\x00c\x03\x01\x00\x00\x01\a" + // 0x00630301: 0x00000107 -+ "\x00C\x03\x02\x00\x00\x01\b" + // 0x00430302: 0x00000108 -+ "\x00c\x03\x02\x00\x00\x01\t" + // 0x00630302: 0x00000109 -+ "\x00C\x03\a\x00\x00\x01\n" + // 0x00430307: 0x0000010A -+ "\x00c\x03\a\x00\x00\x01\v" + // 0x00630307: 0x0000010B -+ "\x00C\x03\f\x00\x00\x01\f" + // 0x0043030C: 0x0000010C -+ "\x00c\x03\f\x00\x00\x01\r" + // 0x0063030C: 0x0000010D -+ "\x00D\x03\f\x00\x00\x01\x0e" + // 0x0044030C: 0x0000010E -+ "\x00d\x03\f\x00\x00\x01\x0f" + // 0x0064030C: 0x0000010F -+ "\x00E\x03\x04\x00\x00\x01\x12" + // 0x00450304: 0x00000112 -+ "\x00e\x03\x04\x00\x00\x01\x13" + // 0x00650304: 0x00000113 -+ "\x00E\x03\x06\x00\x00\x01\x14" + // 0x00450306: 0x00000114 -+ "\x00e\x03\x06\x00\x00\x01\x15" + // 0x00650306: 0x00000115 -+ "\x00E\x03\a\x00\x00\x01\x16" + // 0x00450307: 0x00000116 -+ "\x00e\x03\a\x00\x00\x01\x17" + // 0x00650307: 0x00000117 -+ "\x00E\x03(\x00\x00\x01\x18" + // 0x00450328: 0x00000118 -+ "\x00e\x03(\x00\x00\x01\x19" + // 0x00650328: 0x00000119 -+ "\x00E\x03\f\x00\x00\x01\x1a" + // 0x0045030C: 0x0000011A -+ "\x00e\x03\f\x00\x00\x01\x1b" + // 0x0065030C: 0x0000011B -+ "\x00G\x03\x02\x00\x00\x01\x1c" + // 0x00470302: 0x0000011C -+ "\x00g\x03\x02\x00\x00\x01\x1d" + // 0x00670302: 0x0000011D -+ "\x00G\x03\x06\x00\x00\x01\x1e" + // 0x00470306: 0x0000011E -+ "\x00g\x03\x06\x00\x00\x01\x1f" + // 0x00670306: 0x0000011F -+ "\x00G\x03\a\x00\x00\x01 " + // 0x00470307: 0x00000120 -+ "\x00g\x03\a\x00\x00\x01!" + // 0x00670307: 0x00000121 -+ "\x00G\x03'\x00\x00\x01\"" + // 0x00470327: 0x00000122 -+ "\x00g\x03'\x00\x00\x01#" + // 0x00670327: 0x00000123 -+ "\x00H\x03\x02\x00\x00\x01$" + // 0x00480302: 0x00000124 -+ "\x00h\x03\x02\x00\x00\x01%" + // 0x00680302: 0x00000125 -+ "\x00I\x03\x03\x00\x00\x01(" + // 0x00490303: 0x00000128 -+ "\x00i\x03\x03\x00\x00\x01)" + // 0x00690303: 0x00000129 -+ "\x00I\x03\x04\x00\x00\x01*" + // 0x00490304: 0x0000012A -+ "\x00i\x03\x04\x00\x00\x01+" + // 0x00690304: 0x0000012B -+ "\x00I\x03\x06\x00\x00\x01," + // 0x00490306: 0x0000012C -+ "\x00i\x03\x06\x00\x00\x01-" + // 0x00690306: 0x0000012D -+ "\x00I\x03(\x00\x00\x01." + // 0x00490328: 0x0000012E -+ "\x00i\x03(\x00\x00\x01/" + // 0x00690328: 0x0000012F -+ "\x00I\x03\a\x00\x00\x010" + // 0x00490307: 0x00000130 -+ "\x00J\x03\x02\x00\x00\x014" + // 0x004A0302: 0x00000134 -+ "\x00j\x03\x02\x00\x00\x015" + // 0x006A0302: 0x00000135 -+ "\x00K\x03'\x00\x00\x016" + // 0x004B0327: 0x00000136 -+ "\x00k\x03'\x00\x00\x017" + // 0x006B0327: 0x00000137 -+ "\x00L\x03\x01\x00\x00\x019" + // 0x004C0301: 0x00000139 -+ "\x00l\x03\x01\x00\x00\x01:" + // 0x006C0301: 0x0000013A -+ "\x00L\x03'\x00\x00\x01;" + // 0x004C0327: 0x0000013B -+ "\x00l\x03'\x00\x00\x01<" + // 0x006C0327: 0x0000013C -+ "\x00L\x03\f\x00\x00\x01=" + // 0x004C030C: 0x0000013D -+ "\x00l\x03\f\x00\x00\x01>" + // 0x006C030C: 0x0000013E -+ "\x00N\x03\x01\x00\x00\x01C" + // 0x004E0301: 0x00000143 -+ "\x00n\x03\x01\x00\x00\x01D" + // 0x006E0301: 0x00000144 -+ "\x00N\x03'\x00\x00\x01E" + // 0x004E0327: 0x00000145 -+ "\x00n\x03'\x00\x00\x01F" + // 0x006E0327: 0x00000146 -+ "\x00N\x03\f\x00\x00\x01G" + // 0x004E030C: 0x00000147 -+ "\x00n\x03\f\x00\x00\x01H" + // 0x006E030C: 0x00000148 -+ "\x00O\x03\x04\x00\x00\x01L" + // 0x004F0304: 0x0000014C -+ "\x00o\x03\x04\x00\x00\x01M" + // 0x006F0304: 0x0000014D -+ "\x00O\x03\x06\x00\x00\x01N" + // 0x004F0306: 0x0000014E -+ "\x00o\x03\x06\x00\x00\x01O" + // 0x006F0306: 0x0000014F -+ "\x00O\x03\v\x00\x00\x01P" + // 0x004F030B: 0x00000150 -+ "\x00o\x03\v\x00\x00\x01Q" + // 0x006F030B: 0x00000151 -+ "\x00R\x03\x01\x00\x00\x01T" + // 0x00520301: 0x00000154 -+ "\x00r\x03\x01\x00\x00\x01U" + // 0x00720301: 0x00000155 -+ "\x00R\x03'\x00\x00\x01V" + // 0x00520327: 0x00000156 -+ "\x00r\x03'\x00\x00\x01W" + // 0x00720327: 0x00000157 -+ "\x00R\x03\f\x00\x00\x01X" + // 0x0052030C: 0x00000158 -+ "\x00r\x03\f\x00\x00\x01Y" + // 0x0072030C: 0x00000159 -+ "\x00S\x03\x01\x00\x00\x01Z" + // 0x00530301: 0x0000015A -+ "\x00s\x03\x01\x00\x00\x01[" + // 0x00730301: 0x0000015B -+ "\x00S\x03\x02\x00\x00\x01\\" + // 0x00530302: 0x0000015C -+ "\x00s\x03\x02\x00\x00\x01]" + // 0x00730302: 0x0000015D -+ "\x00S\x03'\x00\x00\x01^" + // 0x00530327: 0x0000015E -+ "\x00s\x03'\x00\x00\x01_" + // 0x00730327: 0x0000015F -+ "\x00S\x03\f\x00\x00\x01`" + // 0x0053030C: 0x00000160 -+ "\x00s\x03\f\x00\x00\x01a" + // 0x0073030C: 0x00000161 -+ "\x00T\x03'\x00\x00\x01b" + // 0x00540327: 0x00000162 -+ "\x00t\x03'\x00\x00\x01c" + // 0x00740327: 0x00000163 -+ "\x00T\x03\f\x00\x00\x01d" + // 0x0054030C: 0x00000164 -+ "\x00t\x03\f\x00\x00\x01e" + // 0x0074030C: 0x00000165 -+ "\x00U\x03\x03\x00\x00\x01h" + // 0x00550303: 0x00000168 -+ "\x00u\x03\x03\x00\x00\x01i" + // 0x00750303: 0x00000169 -+ "\x00U\x03\x04\x00\x00\x01j" + // 0x00550304: 0x0000016A -+ "\x00u\x03\x04\x00\x00\x01k" + // 0x00750304: 0x0000016B -+ "\x00U\x03\x06\x00\x00\x01l" + // 0x00550306: 0x0000016C -+ "\x00u\x03\x06\x00\x00\x01m" + // 0x00750306: 0x0000016D -+ "\x00U\x03\n\x00\x00\x01n" + // 0x0055030A: 0x0000016E -+ "\x00u\x03\n\x00\x00\x01o" + // 0x0075030A: 0x0000016F -+ "\x00U\x03\v\x00\x00\x01p" + // 0x0055030B: 0x00000170 -+ "\x00u\x03\v\x00\x00\x01q" + // 0x0075030B: 0x00000171 -+ "\x00U\x03(\x00\x00\x01r" + // 0x00550328: 0x00000172 -+ "\x00u\x03(\x00\x00\x01s" + // 0x00750328: 0x00000173 -+ "\x00W\x03\x02\x00\x00\x01t" + // 0x00570302: 0x00000174 -+ "\x00w\x03\x02\x00\x00\x01u" + // 0x00770302: 0x00000175 -+ "\x00Y\x03\x02\x00\x00\x01v" + // 0x00590302: 0x00000176 -+ "\x00y\x03\x02\x00\x00\x01w" + // 0x00790302: 0x00000177 -+ "\x00Y\x03\b\x00\x00\x01x" + // 0x00590308: 0x00000178 -+ "\x00Z\x03\x01\x00\x00\x01y" + // 0x005A0301: 0x00000179 -+ "\x00z\x03\x01\x00\x00\x01z" + // 0x007A0301: 0x0000017A -+ "\x00Z\x03\a\x00\x00\x01{" + // 0x005A0307: 0x0000017B -+ "\x00z\x03\a\x00\x00\x01|" + // 0x007A0307: 0x0000017C -+ "\x00Z\x03\f\x00\x00\x01}" + // 0x005A030C: 0x0000017D -+ "\x00z\x03\f\x00\x00\x01~" + // 0x007A030C: 0x0000017E -+ "\x00O\x03\x1b\x00\x00\x01\xa0" + // 0x004F031B: 0x000001A0 -+ "\x00o\x03\x1b\x00\x00\x01\xa1" + // 0x006F031B: 0x000001A1 -+ "\x00U\x03\x1b\x00\x00\x01\xaf" + // 0x0055031B: 0x000001AF -+ "\x00u\x03\x1b\x00\x00\x01\xb0" + // 0x0075031B: 0x000001B0 -+ "\x00A\x03\f\x00\x00\x01\xcd" + // 0x0041030C: 0x000001CD -+ "\x00a\x03\f\x00\x00\x01\xce" + // 0x0061030C: 0x000001CE -+ "\x00I\x03\f\x00\x00\x01\xcf" + // 0x0049030C: 0x000001CF -+ "\x00i\x03\f\x00\x00\x01\xd0" + // 0x0069030C: 0x000001D0 -+ "\x00O\x03\f\x00\x00\x01\xd1" + // 0x004F030C: 0x000001D1 -+ "\x00o\x03\f\x00\x00\x01\xd2" + // 0x006F030C: 0x000001D2 -+ "\x00U\x03\f\x00\x00\x01\xd3" + // 0x0055030C: 0x000001D3 -+ "\x00u\x03\f\x00\x00\x01\xd4" + // 0x0075030C: 0x000001D4 -+ "\x00\xdc\x03\x04\x00\x00\x01\xd5" + // 0x00DC0304: 0x000001D5 -+ "\x00\xfc\x03\x04\x00\x00\x01\xd6" + // 0x00FC0304: 0x000001D6 -+ "\x00\xdc\x03\x01\x00\x00\x01\xd7" + // 0x00DC0301: 0x000001D7 -+ "\x00\xfc\x03\x01\x00\x00\x01\xd8" + // 0x00FC0301: 0x000001D8 -+ "\x00\xdc\x03\f\x00\x00\x01\xd9" + // 0x00DC030C: 0x000001D9 -+ "\x00\xfc\x03\f\x00\x00\x01\xda" + // 0x00FC030C: 0x000001DA -+ "\x00\xdc\x03\x00\x00\x00\x01\xdb" + // 0x00DC0300: 0x000001DB -+ "\x00\xfc\x03\x00\x00\x00\x01\xdc" + // 0x00FC0300: 0x000001DC -+ "\x00\xc4\x03\x04\x00\x00\x01\xde" + // 0x00C40304: 0x000001DE -+ "\x00\xe4\x03\x04\x00\x00\x01\xdf" + // 0x00E40304: 0x000001DF -+ "\x02&\x03\x04\x00\x00\x01\xe0" + // 0x02260304: 0x000001E0 -+ "\x02'\x03\x04\x00\x00\x01\xe1" + // 0x02270304: 0x000001E1 -+ "\x00\xc6\x03\x04\x00\x00\x01\xe2" + // 0x00C60304: 0x000001E2 -+ "\x00\xe6\x03\x04\x00\x00\x01\xe3" + // 0x00E60304: 0x000001E3 -+ "\x00G\x03\f\x00\x00\x01\xe6" + // 0x0047030C: 0x000001E6 -+ "\x00g\x03\f\x00\x00\x01\xe7" + // 0x0067030C: 0x000001E7 -+ "\x00K\x03\f\x00\x00\x01\xe8" + // 0x004B030C: 0x000001E8 -+ "\x00k\x03\f\x00\x00\x01\xe9" + // 0x006B030C: 0x000001E9 -+ "\x00O\x03(\x00\x00\x01\xea" + // 0x004F0328: 0x000001EA -+ "\x00o\x03(\x00\x00\x01\xeb" + // 0x006F0328: 0x000001EB -+ "\x01\xea\x03\x04\x00\x00\x01\xec" + // 0x01EA0304: 0x000001EC -+ "\x01\xeb\x03\x04\x00\x00\x01\xed" + // 0x01EB0304: 0x000001ED -+ "\x01\xb7\x03\f\x00\x00\x01\xee" + // 0x01B7030C: 0x000001EE -+ "\x02\x92\x03\f\x00\x00\x01\xef" + // 0x0292030C: 0x000001EF -+ "\x00j\x03\f\x00\x00\x01\xf0" + // 0x006A030C: 0x000001F0 -+ "\x00G\x03\x01\x00\x00\x01\xf4" + // 0x00470301: 0x000001F4 -+ "\x00g\x03\x01\x00\x00\x01\xf5" + // 0x00670301: 0x000001F5 -+ "\x00N\x03\x00\x00\x00\x01\xf8" + // 0x004E0300: 0x000001F8 -+ "\x00n\x03\x00\x00\x00\x01\xf9" + // 0x006E0300: 0x000001F9 -+ "\x00\xc5\x03\x01\x00\x00\x01\xfa" + // 0x00C50301: 0x000001FA -+ "\x00\xe5\x03\x01\x00\x00\x01\xfb" + // 0x00E50301: 0x000001FB -+ "\x00\xc6\x03\x01\x00\x00\x01\xfc" + // 0x00C60301: 0x000001FC -+ "\x00\xe6\x03\x01\x00\x00\x01\xfd" + // 0x00E60301: 0x000001FD -+ "\x00\xd8\x03\x01\x00\x00\x01\xfe" + // 0x00D80301: 0x000001FE -+ "\x00\xf8\x03\x01\x00\x00\x01\xff" + // 0x00F80301: 0x000001FF -+ "\x00A\x03\x0f\x00\x00\x02\x00" + // 0x0041030F: 0x00000200 -+ "\x00a\x03\x0f\x00\x00\x02\x01" + // 0x0061030F: 0x00000201 -+ "\x00A\x03\x11\x00\x00\x02\x02" + // 0x00410311: 0x00000202 -+ "\x00a\x03\x11\x00\x00\x02\x03" + // 0x00610311: 0x00000203 -+ "\x00E\x03\x0f\x00\x00\x02\x04" + // 0x0045030F: 0x00000204 -+ "\x00e\x03\x0f\x00\x00\x02\x05" + // 0x0065030F: 0x00000205 -+ "\x00E\x03\x11\x00\x00\x02\x06" + // 0x00450311: 0x00000206 -+ "\x00e\x03\x11\x00\x00\x02\a" + // 0x00650311: 0x00000207 -+ "\x00I\x03\x0f\x00\x00\x02\b" + // 0x0049030F: 0x00000208 -+ "\x00i\x03\x0f\x00\x00\x02\t" + // 0x0069030F: 0x00000209 -+ "\x00I\x03\x11\x00\x00\x02\n" + // 0x00490311: 0x0000020A -+ "\x00i\x03\x11\x00\x00\x02\v" + // 0x00690311: 0x0000020B -+ "\x00O\x03\x0f\x00\x00\x02\f" + // 0x004F030F: 0x0000020C -+ "\x00o\x03\x0f\x00\x00\x02\r" + // 0x006F030F: 0x0000020D -+ "\x00O\x03\x11\x00\x00\x02\x0e" + // 0x004F0311: 0x0000020E -+ "\x00o\x03\x11\x00\x00\x02\x0f" + // 0x006F0311: 0x0000020F -+ "\x00R\x03\x0f\x00\x00\x02\x10" + // 0x0052030F: 0x00000210 -+ "\x00r\x03\x0f\x00\x00\x02\x11" + // 0x0072030F: 0x00000211 -+ "\x00R\x03\x11\x00\x00\x02\x12" + // 0x00520311: 0x00000212 -+ "\x00r\x03\x11\x00\x00\x02\x13" + // 0x00720311: 0x00000213 -+ "\x00U\x03\x0f\x00\x00\x02\x14" + // 0x0055030F: 0x00000214 -+ "\x00u\x03\x0f\x00\x00\x02\x15" + // 0x0075030F: 0x00000215 -+ "\x00U\x03\x11\x00\x00\x02\x16" + // 0x00550311: 0x00000216 -+ "\x00u\x03\x11\x00\x00\x02\x17" + // 0x00750311: 0x00000217 -+ "\x00S\x03&\x00\x00\x02\x18" + // 0x00530326: 0x00000218 -+ "\x00s\x03&\x00\x00\x02\x19" + // 0x00730326: 0x00000219 -+ "\x00T\x03&\x00\x00\x02\x1a" + // 0x00540326: 0x0000021A -+ "\x00t\x03&\x00\x00\x02\x1b" + // 0x00740326: 0x0000021B -+ "\x00H\x03\f\x00\x00\x02\x1e" + // 0x0048030C: 0x0000021E -+ "\x00h\x03\f\x00\x00\x02\x1f" + // 0x0068030C: 0x0000021F -+ "\x00A\x03\a\x00\x00\x02&" + // 0x00410307: 0x00000226 -+ "\x00a\x03\a\x00\x00\x02'" + // 0x00610307: 0x00000227 -+ "\x00E\x03'\x00\x00\x02(" + // 0x00450327: 0x00000228 -+ "\x00e\x03'\x00\x00\x02)" + // 0x00650327: 0x00000229 -+ "\x00\xd6\x03\x04\x00\x00\x02*" + // 0x00D60304: 0x0000022A -+ "\x00\xf6\x03\x04\x00\x00\x02+" + // 0x00F60304: 0x0000022B -+ "\x00\xd5\x03\x04\x00\x00\x02," + // 0x00D50304: 0x0000022C -+ "\x00\xf5\x03\x04\x00\x00\x02-" + // 0x00F50304: 0x0000022D -+ "\x00O\x03\a\x00\x00\x02." + // 0x004F0307: 0x0000022E -+ "\x00o\x03\a\x00\x00\x02/" + // 0x006F0307: 0x0000022F -+ "\x02.\x03\x04\x00\x00\x020" + // 0x022E0304: 0x00000230 -+ "\x02/\x03\x04\x00\x00\x021" + // 0x022F0304: 0x00000231 -+ "\x00Y\x03\x04\x00\x00\x022" + // 0x00590304: 0x00000232 -+ "\x00y\x03\x04\x00\x00\x023" + // 0x00790304: 0x00000233 -+ "\x00\xa8\x03\x01\x00\x00\x03\x85" + // 0x00A80301: 0x00000385 -+ "\x03\x91\x03\x01\x00\x00\x03\x86" + // 0x03910301: 0x00000386 -+ "\x03\x95\x03\x01\x00\x00\x03\x88" + // 0x03950301: 0x00000388 -+ "\x03\x97\x03\x01\x00\x00\x03\x89" + // 0x03970301: 0x00000389 -+ "\x03\x99\x03\x01\x00\x00\x03\x8a" + // 0x03990301: 0x0000038A -+ "\x03\x9f\x03\x01\x00\x00\x03\x8c" + // 0x039F0301: 0x0000038C -+ "\x03\xa5\x03\x01\x00\x00\x03\x8e" + // 0x03A50301: 0x0000038E -+ "\x03\xa9\x03\x01\x00\x00\x03\x8f" + // 0x03A90301: 0x0000038F -+ "\x03\xca\x03\x01\x00\x00\x03\x90" + // 0x03CA0301: 0x00000390 -+ "\x03\x99\x03\b\x00\x00\x03\xaa" + // 0x03990308: 0x000003AA -+ "\x03\xa5\x03\b\x00\x00\x03\xab" + // 0x03A50308: 0x000003AB -+ "\x03\xb1\x03\x01\x00\x00\x03\xac" + // 0x03B10301: 0x000003AC -+ "\x03\xb5\x03\x01\x00\x00\x03\xad" + // 0x03B50301: 0x000003AD -+ "\x03\xb7\x03\x01\x00\x00\x03\xae" + // 0x03B70301: 0x000003AE -+ "\x03\xb9\x03\x01\x00\x00\x03\xaf" + // 0x03B90301: 0x000003AF -+ "\x03\xcb\x03\x01\x00\x00\x03\xb0" + // 0x03CB0301: 0x000003B0 -+ "\x03\xb9\x03\b\x00\x00\x03\xca" + // 0x03B90308: 0x000003CA -+ "\x03\xc5\x03\b\x00\x00\x03\xcb" + // 0x03C50308: 0x000003CB -+ "\x03\xbf\x03\x01\x00\x00\x03\xcc" + // 0x03BF0301: 0x000003CC -+ "\x03\xc5\x03\x01\x00\x00\x03\xcd" + // 0x03C50301: 0x000003CD -+ "\x03\xc9\x03\x01\x00\x00\x03\xce" + // 0x03C90301: 0x000003CE -+ "\x03\xd2\x03\x01\x00\x00\x03\xd3" + // 0x03D20301: 0x000003D3 -+ "\x03\xd2\x03\b\x00\x00\x03\xd4" + // 0x03D20308: 0x000003D4 -+ "\x04\x15\x03\x00\x00\x00\x04\x00" + // 0x04150300: 0x00000400 -+ "\x04\x15\x03\b\x00\x00\x04\x01" + // 0x04150308: 0x00000401 -+ "\x04\x13\x03\x01\x00\x00\x04\x03" + // 0x04130301: 0x00000403 -+ "\x04\x06\x03\b\x00\x00\x04\a" + // 0x04060308: 0x00000407 -+ "\x04\x1a\x03\x01\x00\x00\x04\f" + // 0x041A0301: 0x0000040C -+ "\x04\x18\x03\x00\x00\x00\x04\r" + // 0x04180300: 0x0000040D -+ "\x04#\x03\x06\x00\x00\x04\x0e" + // 0x04230306: 0x0000040E -+ "\x04\x18\x03\x06\x00\x00\x04\x19" + // 0x04180306: 0x00000419 -+ "\x048\x03\x06\x00\x00\x049" + // 0x04380306: 0x00000439 -+ "\x045\x03\x00\x00\x00\x04P" + // 0x04350300: 0x00000450 -+ "\x045\x03\b\x00\x00\x04Q" + // 0x04350308: 0x00000451 -+ "\x043\x03\x01\x00\x00\x04S" + // 0x04330301: 0x00000453 -+ "\x04V\x03\b\x00\x00\x04W" + // 0x04560308: 0x00000457 -+ "\x04:\x03\x01\x00\x00\x04\\" + // 0x043A0301: 0x0000045C -+ "\x048\x03\x00\x00\x00\x04]" + // 0x04380300: 0x0000045D -+ "\x04C\x03\x06\x00\x00\x04^" + // 0x04430306: 0x0000045E -+ "\x04t\x03\x0f\x00\x00\x04v" + // 0x0474030F: 0x00000476 -+ "\x04u\x03\x0f\x00\x00\x04w" + // 0x0475030F: 0x00000477 -+ "\x04\x16\x03\x06\x00\x00\x04\xc1" + // 0x04160306: 0x000004C1 -+ "\x046\x03\x06\x00\x00\x04\xc2" + // 0x04360306: 0x000004C2 -+ "\x04\x10\x03\x06\x00\x00\x04\xd0" + // 0x04100306: 0x000004D0 -+ "\x040\x03\x06\x00\x00\x04\xd1" + // 0x04300306: 0x000004D1 -+ "\x04\x10\x03\b\x00\x00\x04\xd2" + // 0x04100308: 0x000004D2 -+ "\x040\x03\b\x00\x00\x04\xd3" + // 0x04300308: 0x000004D3 -+ "\x04\x15\x03\x06\x00\x00\x04\xd6" + // 0x04150306: 0x000004D6 -+ "\x045\x03\x06\x00\x00\x04\xd7" + // 0x04350306: 0x000004D7 -+ "\x04\xd8\x03\b\x00\x00\x04\xda" + // 0x04D80308: 0x000004DA -+ "\x04\xd9\x03\b\x00\x00\x04\xdb" + // 0x04D90308: 0x000004DB -+ "\x04\x16\x03\b\x00\x00\x04\xdc" + // 0x04160308: 0x000004DC -+ "\x046\x03\b\x00\x00\x04\xdd" + // 0x04360308: 0x000004DD -+ "\x04\x17\x03\b\x00\x00\x04\xde" + // 0x04170308: 0x000004DE -+ "\x047\x03\b\x00\x00\x04\xdf" + // 0x04370308: 0x000004DF -+ "\x04\x18\x03\x04\x00\x00\x04\xe2" + // 0x04180304: 0x000004E2 -+ "\x048\x03\x04\x00\x00\x04\xe3" + // 0x04380304: 0x000004E3 -+ "\x04\x18\x03\b\x00\x00\x04\xe4" + // 0x04180308: 0x000004E4 -+ "\x048\x03\b\x00\x00\x04\xe5" + // 0x04380308: 0x000004E5 -+ "\x04\x1e\x03\b\x00\x00\x04\xe6" + // 0x041E0308: 0x000004E6 -+ "\x04>\x03\b\x00\x00\x04\xe7" + // 0x043E0308: 0x000004E7 -+ "\x04\xe8\x03\b\x00\x00\x04\xea" + // 0x04E80308: 0x000004EA -+ "\x04\xe9\x03\b\x00\x00\x04\xeb" + // 0x04E90308: 0x000004EB -+ "\x04-\x03\b\x00\x00\x04\xec" + // 0x042D0308: 0x000004EC -+ "\x04M\x03\b\x00\x00\x04\xed" + // 0x044D0308: 0x000004ED -+ "\x04#\x03\x04\x00\x00\x04\xee" + // 0x04230304: 0x000004EE -+ "\x04C\x03\x04\x00\x00\x04\xef" + // 0x04430304: 0x000004EF -+ "\x04#\x03\b\x00\x00\x04\xf0" + // 0x04230308: 0x000004F0 -+ "\x04C\x03\b\x00\x00\x04\xf1" + // 0x04430308: 0x000004F1 -+ "\x04#\x03\v\x00\x00\x04\xf2" + // 0x0423030B: 0x000004F2 -+ "\x04C\x03\v\x00\x00\x04\xf3" + // 0x0443030B: 0x000004F3 -+ "\x04'\x03\b\x00\x00\x04\xf4" + // 0x04270308: 0x000004F4 -+ "\x04G\x03\b\x00\x00\x04\xf5" + // 0x04470308: 0x000004F5 -+ "\x04+\x03\b\x00\x00\x04\xf8" + // 0x042B0308: 0x000004F8 -+ "\x04K\x03\b\x00\x00\x04\xf9" + // 0x044B0308: 0x000004F9 -+ "\x06'\x06S\x00\x00\x06\"" + // 0x06270653: 0x00000622 -+ "\x06'\x06T\x00\x00\x06#" + // 0x06270654: 0x00000623 -+ "\x06H\x06T\x00\x00\x06$" + // 0x06480654: 0x00000624 -+ "\x06'\x06U\x00\x00\x06%" + // 0x06270655: 0x00000625 -+ "\x06J\x06T\x00\x00\x06&" + // 0x064A0654: 0x00000626 -+ "\x06\xd5\x06T\x00\x00\x06\xc0" + // 0x06D50654: 0x000006C0 -+ "\x06\xc1\x06T\x00\x00\x06\xc2" + // 0x06C10654: 0x000006C2 -+ "\x06\xd2\x06T\x00\x00\x06\xd3" + // 0x06D20654: 0x000006D3 -+ "\t(\t<\x00\x00\t)" + // 0x0928093C: 0x00000929 -+ "\t0\t<\x00\x00\t1" + // 0x0930093C: 0x00000931 -+ "\t3\t<\x00\x00\t4" + // 0x0933093C: 0x00000934 -+ "\t\xc7\t\xbe\x00\x00\t\xcb" + // 0x09C709BE: 0x000009CB -+ "\t\xc7\t\xd7\x00\x00\t\xcc" + // 0x09C709D7: 0x000009CC -+ "\vG\vV\x00\x00\vH" + // 0x0B470B56: 0x00000B48 -+ "\vG\v>\x00\x00\vK" + // 0x0B470B3E: 0x00000B4B -+ "\vG\vW\x00\x00\vL" + // 0x0B470B57: 0x00000B4C -+ "\v\x92\v\xd7\x00\x00\v\x94" + // 0x0B920BD7: 0x00000B94 -+ "\v\xc6\v\xbe\x00\x00\v\xca" + // 0x0BC60BBE: 0x00000BCA -+ "\v\xc7\v\xbe\x00\x00\v\xcb" + // 0x0BC70BBE: 0x00000BCB -+ "\v\xc6\v\xd7\x00\x00\v\xcc" + // 0x0BC60BD7: 0x00000BCC -+ "\fF\fV\x00\x00\fH" + // 0x0C460C56: 0x00000C48 -+ "\f\xbf\f\xd5\x00\x00\f\xc0" + // 0x0CBF0CD5: 0x00000CC0 -+ "\f\xc6\f\xd5\x00\x00\f\xc7" + // 0x0CC60CD5: 0x00000CC7 -+ "\f\xc6\f\xd6\x00\x00\f\xc8" + // 0x0CC60CD6: 0x00000CC8 -+ "\f\xc6\f\xc2\x00\x00\f\xca" + // 0x0CC60CC2: 0x00000CCA -+ "\f\xca\f\xd5\x00\x00\f\xcb" + // 0x0CCA0CD5: 0x00000CCB -+ "\rF\r>\x00\x00\rJ" + // 0x0D460D3E: 0x00000D4A -+ "\rG\r>\x00\x00\rK" + // 0x0D470D3E: 0x00000D4B -+ "\rF\rW\x00\x00\rL" + // 0x0D460D57: 0x00000D4C -+ "\r\xd9\r\xca\x00\x00\r\xda" + // 0x0DD90DCA: 0x00000DDA -+ "\r\xd9\r\xcf\x00\x00\r\xdc" + // 0x0DD90DCF: 0x00000DDC -+ "\r\xdc\r\xca\x00\x00\r\xdd" + // 0x0DDC0DCA: 0x00000DDD -+ "\r\xd9\r\xdf\x00\x00\r\xde" + // 0x0DD90DDF: 0x00000DDE -+ "\x10%\x10.\x00\x00\x10&" + // 0x1025102E: 0x00001026 -+ "\x1b\x05\x1b5\x00\x00\x1b\x06" + // 0x1B051B35: 0x00001B06 -+ "\x1b\a\x1b5\x00\x00\x1b\b" + // 0x1B071B35: 0x00001B08 -+ "\x1b\t\x1b5\x00\x00\x1b\n" + // 0x1B091B35: 0x00001B0A -+ "\x1b\v\x1b5\x00\x00\x1b\f" + // 0x1B0B1B35: 0x00001B0C -+ "\x1b\r\x1b5\x00\x00\x1b\x0e" + // 0x1B0D1B35: 0x00001B0E -+ "\x1b\x11\x1b5\x00\x00\x1b\x12" + // 0x1B111B35: 0x00001B12 -+ "\x1b:\x1b5\x00\x00\x1b;" + // 0x1B3A1B35: 0x00001B3B -+ "\x1b<\x1b5\x00\x00\x1b=" + // 0x1B3C1B35: 0x00001B3D -+ "\x1b>\x1b5\x00\x00\x1b@" + // 0x1B3E1B35: 0x00001B40 -+ "\x1b?\x1b5\x00\x00\x1bA" + // 0x1B3F1B35: 0x00001B41 -+ "\x1bB\x1b5\x00\x00\x1bC" + // 0x1B421B35: 0x00001B43 -+ "\x00A\x03%\x00\x00\x1e\x00" + // 0x00410325: 0x00001E00 -+ "\x00a\x03%\x00\x00\x1e\x01" + // 0x00610325: 0x00001E01 -+ "\x00B\x03\a\x00\x00\x1e\x02" + // 0x00420307: 0x00001E02 -+ "\x00b\x03\a\x00\x00\x1e\x03" + // 0x00620307: 0x00001E03 -+ "\x00B\x03#\x00\x00\x1e\x04" + // 0x00420323: 0x00001E04 -+ "\x00b\x03#\x00\x00\x1e\x05" + // 0x00620323: 0x00001E05 -+ "\x00B\x031\x00\x00\x1e\x06" + // 0x00420331: 0x00001E06 -+ "\x00b\x031\x00\x00\x1e\a" + // 0x00620331: 0x00001E07 -+ "\x00\xc7\x03\x01\x00\x00\x1e\b" + // 0x00C70301: 0x00001E08 -+ "\x00\xe7\x03\x01\x00\x00\x1e\t" + // 0x00E70301: 0x00001E09 -+ "\x00D\x03\a\x00\x00\x1e\n" + // 0x00440307: 0x00001E0A -+ "\x00d\x03\a\x00\x00\x1e\v" + // 0x00640307: 0x00001E0B -+ "\x00D\x03#\x00\x00\x1e\f" + // 0x00440323: 0x00001E0C -+ "\x00d\x03#\x00\x00\x1e\r" + // 0x00640323: 0x00001E0D -+ "\x00D\x031\x00\x00\x1e\x0e" + // 0x00440331: 0x00001E0E -+ "\x00d\x031\x00\x00\x1e\x0f" + // 0x00640331: 0x00001E0F -+ "\x00D\x03'\x00\x00\x1e\x10" + // 0x00440327: 0x00001E10 -+ "\x00d\x03'\x00\x00\x1e\x11" + // 0x00640327: 0x00001E11 -+ "\x00D\x03-\x00\x00\x1e\x12" + // 0x0044032D: 0x00001E12 -+ "\x00d\x03-\x00\x00\x1e\x13" + // 0x0064032D: 0x00001E13 -+ "\x01\x12\x03\x00\x00\x00\x1e\x14" + // 0x01120300: 0x00001E14 -+ "\x01\x13\x03\x00\x00\x00\x1e\x15" + // 0x01130300: 0x00001E15 -+ "\x01\x12\x03\x01\x00\x00\x1e\x16" + // 0x01120301: 0x00001E16 -+ "\x01\x13\x03\x01\x00\x00\x1e\x17" + // 0x01130301: 0x00001E17 -+ "\x00E\x03-\x00\x00\x1e\x18" + // 0x0045032D: 0x00001E18 -+ "\x00e\x03-\x00\x00\x1e\x19" + // 0x0065032D: 0x00001E19 -+ "\x00E\x030\x00\x00\x1e\x1a" + // 0x00450330: 0x00001E1A -+ "\x00e\x030\x00\x00\x1e\x1b" + // 0x00650330: 0x00001E1B -+ "\x02(\x03\x06\x00\x00\x1e\x1c" + // 0x02280306: 0x00001E1C -+ "\x02)\x03\x06\x00\x00\x1e\x1d" + // 0x02290306: 0x00001E1D -+ "\x00F\x03\a\x00\x00\x1e\x1e" + // 0x00460307: 0x00001E1E -+ "\x00f\x03\a\x00\x00\x1e\x1f" + // 0x00660307: 0x00001E1F -+ "\x00G\x03\x04\x00\x00\x1e " + // 0x00470304: 0x00001E20 -+ "\x00g\x03\x04\x00\x00\x1e!" + // 0x00670304: 0x00001E21 -+ "\x00H\x03\a\x00\x00\x1e\"" + // 0x00480307: 0x00001E22 -+ "\x00h\x03\a\x00\x00\x1e#" + // 0x00680307: 0x00001E23 -+ "\x00H\x03#\x00\x00\x1e$" + // 0x00480323: 0x00001E24 -+ "\x00h\x03#\x00\x00\x1e%" + // 0x00680323: 0x00001E25 -+ "\x00H\x03\b\x00\x00\x1e&" + // 0x00480308: 0x00001E26 -+ "\x00h\x03\b\x00\x00\x1e'" + // 0x00680308: 0x00001E27 -+ "\x00H\x03'\x00\x00\x1e(" + // 0x00480327: 0x00001E28 -+ "\x00h\x03'\x00\x00\x1e)" + // 0x00680327: 0x00001E29 -+ "\x00H\x03.\x00\x00\x1e*" + // 0x0048032E: 0x00001E2A -+ "\x00h\x03.\x00\x00\x1e+" + // 0x0068032E: 0x00001E2B -+ "\x00I\x030\x00\x00\x1e," + // 0x00490330: 0x00001E2C -+ "\x00i\x030\x00\x00\x1e-" + // 0x00690330: 0x00001E2D -+ "\x00\xcf\x03\x01\x00\x00\x1e." + // 0x00CF0301: 0x00001E2E -+ "\x00\xef\x03\x01\x00\x00\x1e/" + // 0x00EF0301: 0x00001E2F -+ "\x00K\x03\x01\x00\x00\x1e0" + // 0x004B0301: 0x00001E30 -+ "\x00k\x03\x01\x00\x00\x1e1" + // 0x006B0301: 0x00001E31 -+ "\x00K\x03#\x00\x00\x1e2" + // 0x004B0323: 0x00001E32 -+ "\x00k\x03#\x00\x00\x1e3" + // 0x006B0323: 0x00001E33 -+ "\x00K\x031\x00\x00\x1e4" + // 0x004B0331: 0x00001E34 -+ "\x00k\x031\x00\x00\x1e5" + // 0x006B0331: 0x00001E35 -+ "\x00L\x03#\x00\x00\x1e6" + // 0x004C0323: 0x00001E36 -+ "\x00l\x03#\x00\x00\x1e7" + // 0x006C0323: 0x00001E37 -+ "\x1e6\x03\x04\x00\x00\x1e8" + // 0x1E360304: 0x00001E38 -+ "\x1e7\x03\x04\x00\x00\x1e9" + // 0x1E370304: 0x00001E39 -+ "\x00L\x031\x00\x00\x1e:" + // 0x004C0331: 0x00001E3A -+ "\x00l\x031\x00\x00\x1e;" + // 0x006C0331: 0x00001E3B -+ "\x00L\x03-\x00\x00\x1e<" + // 0x004C032D: 0x00001E3C -+ "\x00l\x03-\x00\x00\x1e=" + // 0x006C032D: 0x00001E3D -+ "\x00M\x03\x01\x00\x00\x1e>" + // 0x004D0301: 0x00001E3E -+ "\x00m\x03\x01\x00\x00\x1e?" + // 0x006D0301: 0x00001E3F -+ "\x00M\x03\a\x00\x00\x1e@" + // 0x004D0307: 0x00001E40 -+ "\x00m\x03\a\x00\x00\x1eA" + // 0x006D0307: 0x00001E41 -+ "\x00M\x03#\x00\x00\x1eB" + // 0x004D0323: 0x00001E42 -+ "\x00m\x03#\x00\x00\x1eC" + // 0x006D0323: 0x00001E43 -+ "\x00N\x03\a\x00\x00\x1eD" + // 0x004E0307: 0x00001E44 -+ "\x00n\x03\a\x00\x00\x1eE" + // 0x006E0307: 0x00001E45 -+ "\x00N\x03#\x00\x00\x1eF" + // 0x004E0323: 0x00001E46 -+ "\x00n\x03#\x00\x00\x1eG" + // 0x006E0323: 0x00001E47 -+ "\x00N\x031\x00\x00\x1eH" + // 0x004E0331: 0x00001E48 -+ "\x00n\x031\x00\x00\x1eI" + // 0x006E0331: 0x00001E49 -+ "\x00N\x03-\x00\x00\x1eJ" + // 0x004E032D: 0x00001E4A -+ "\x00n\x03-\x00\x00\x1eK" + // 0x006E032D: 0x00001E4B -+ "\x00\xd5\x03\x01\x00\x00\x1eL" + // 0x00D50301: 0x00001E4C -+ "\x00\xf5\x03\x01\x00\x00\x1eM" + // 0x00F50301: 0x00001E4D -+ "\x00\xd5\x03\b\x00\x00\x1eN" + // 0x00D50308: 0x00001E4E -+ "\x00\xf5\x03\b\x00\x00\x1eO" + // 0x00F50308: 0x00001E4F -+ "\x01L\x03\x00\x00\x00\x1eP" + // 0x014C0300: 0x00001E50 -+ "\x01M\x03\x00\x00\x00\x1eQ" + // 0x014D0300: 0x00001E51 -+ "\x01L\x03\x01\x00\x00\x1eR" + // 0x014C0301: 0x00001E52 -+ "\x01M\x03\x01\x00\x00\x1eS" + // 0x014D0301: 0x00001E53 -+ "\x00P\x03\x01\x00\x00\x1eT" + // 0x00500301: 0x00001E54 -+ "\x00p\x03\x01\x00\x00\x1eU" + // 0x00700301: 0x00001E55 -+ "\x00P\x03\a\x00\x00\x1eV" + // 0x00500307: 0x00001E56 -+ "\x00p\x03\a\x00\x00\x1eW" + // 0x00700307: 0x00001E57 -+ "\x00R\x03\a\x00\x00\x1eX" + // 0x00520307: 0x00001E58 -+ "\x00r\x03\a\x00\x00\x1eY" + // 0x00720307: 0x00001E59 -+ "\x00R\x03#\x00\x00\x1eZ" + // 0x00520323: 0x00001E5A -+ "\x00r\x03#\x00\x00\x1e[" + // 0x00720323: 0x00001E5B -+ "\x1eZ\x03\x04\x00\x00\x1e\\" + // 0x1E5A0304: 0x00001E5C -+ "\x1e[\x03\x04\x00\x00\x1e]" + // 0x1E5B0304: 0x00001E5D -+ "\x00R\x031\x00\x00\x1e^" + // 0x00520331: 0x00001E5E -+ "\x00r\x031\x00\x00\x1e_" + // 0x00720331: 0x00001E5F -+ "\x00S\x03\a\x00\x00\x1e`" + // 0x00530307: 0x00001E60 -+ "\x00s\x03\a\x00\x00\x1ea" + // 0x00730307: 0x00001E61 -+ "\x00S\x03#\x00\x00\x1eb" + // 0x00530323: 0x00001E62 -+ "\x00s\x03#\x00\x00\x1ec" + // 0x00730323: 0x00001E63 -+ "\x01Z\x03\a\x00\x00\x1ed" + // 0x015A0307: 0x00001E64 -+ "\x01[\x03\a\x00\x00\x1ee" + // 0x015B0307: 0x00001E65 -+ "\x01`\x03\a\x00\x00\x1ef" + // 0x01600307: 0x00001E66 -+ "\x01a\x03\a\x00\x00\x1eg" + // 0x01610307: 0x00001E67 -+ "\x1eb\x03\a\x00\x00\x1eh" + // 0x1E620307: 0x00001E68 -+ "\x1ec\x03\a\x00\x00\x1ei" + // 0x1E630307: 0x00001E69 -+ "\x00T\x03\a\x00\x00\x1ej" + // 0x00540307: 0x00001E6A -+ "\x00t\x03\a\x00\x00\x1ek" + // 0x00740307: 0x00001E6B -+ "\x00T\x03#\x00\x00\x1el" + // 0x00540323: 0x00001E6C -+ "\x00t\x03#\x00\x00\x1em" + // 0x00740323: 0x00001E6D -+ "\x00T\x031\x00\x00\x1en" + // 0x00540331: 0x00001E6E -+ "\x00t\x031\x00\x00\x1eo" + // 0x00740331: 0x00001E6F -+ "\x00T\x03-\x00\x00\x1ep" + // 0x0054032D: 0x00001E70 -+ "\x00t\x03-\x00\x00\x1eq" + // 0x0074032D: 0x00001E71 -+ "\x00U\x03$\x00\x00\x1er" + // 0x00550324: 0x00001E72 -+ "\x00u\x03$\x00\x00\x1es" + // 0x00750324: 0x00001E73 -+ "\x00U\x030\x00\x00\x1et" + // 0x00550330: 0x00001E74 -+ "\x00u\x030\x00\x00\x1eu" + // 0x00750330: 0x00001E75 -+ "\x00U\x03-\x00\x00\x1ev" + // 0x0055032D: 0x00001E76 -+ "\x00u\x03-\x00\x00\x1ew" + // 0x0075032D: 0x00001E77 -+ "\x01h\x03\x01\x00\x00\x1ex" + // 0x01680301: 0x00001E78 -+ "\x01i\x03\x01\x00\x00\x1ey" + // 0x01690301: 0x00001E79 -+ "\x01j\x03\b\x00\x00\x1ez" + // 0x016A0308: 0x00001E7A -+ "\x01k\x03\b\x00\x00\x1e{" + // 0x016B0308: 0x00001E7B -+ "\x00V\x03\x03\x00\x00\x1e|" + // 0x00560303: 0x00001E7C -+ "\x00v\x03\x03\x00\x00\x1e}" + // 0x00760303: 0x00001E7D -+ "\x00V\x03#\x00\x00\x1e~" + // 0x00560323: 0x00001E7E -+ "\x00v\x03#\x00\x00\x1e\u007f" + // 0x00760323: 0x00001E7F -+ "\x00W\x03\x00\x00\x00\x1e\x80" + // 0x00570300: 0x00001E80 -+ "\x00w\x03\x00\x00\x00\x1e\x81" + // 0x00770300: 0x00001E81 -+ "\x00W\x03\x01\x00\x00\x1e\x82" + // 0x00570301: 0x00001E82 -+ "\x00w\x03\x01\x00\x00\x1e\x83" + // 0x00770301: 0x00001E83 -+ "\x00W\x03\b\x00\x00\x1e\x84" + // 0x00570308: 0x00001E84 -+ "\x00w\x03\b\x00\x00\x1e\x85" + // 0x00770308: 0x00001E85 -+ "\x00W\x03\a\x00\x00\x1e\x86" + // 0x00570307: 0x00001E86 -+ "\x00w\x03\a\x00\x00\x1e\x87" + // 0x00770307: 0x00001E87 -+ "\x00W\x03#\x00\x00\x1e\x88" + // 0x00570323: 0x00001E88 -+ "\x00w\x03#\x00\x00\x1e\x89" + // 0x00770323: 0x00001E89 -+ "\x00X\x03\a\x00\x00\x1e\x8a" + // 0x00580307: 0x00001E8A -+ "\x00x\x03\a\x00\x00\x1e\x8b" + // 0x00780307: 0x00001E8B -+ "\x00X\x03\b\x00\x00\x1e\x8c" + // 0x00580308: 0x00001E8C -+ "\x00x\x03\b\x00\x00\x1e\x8d" + // 0x00780308: 0x00001E8D -+ "\x00Y\x03\a\x00\x00\x1e\x8e" + // 0x00590307: 0x00001E8E -+ "\x00y\x03\a\x00\x00\x1e\x8f" + // 0x00790307: 0x00001E8F -+ "\x00Z\x03\x02\x00\x00\x1e\x90" + // 0x005A0302: 0x00001E90 -+ "\x00z\x03\x02\x00\x00\x1e\x91" + // 0x007A0302: 0x00001E91 -+ "\x00Z\x03#\x00\x00\x1e\x92" + // 0x005A0323: 0x00001E92 -+ "\x00z\x03#\x00\x00\x1e\x93" + // 0x007A0323: 0x00001E93 -+ "\x00Z\x031\x00\x00\x1e\x94" + // 0x005A0331: 0x00001E94 -+ "\x00z\x031\x00\x00\x1e\x95" + // 0x007A0331: 0x00001E95 -+ "\x00h\x031\x00\x00\x1e\x96" + // 0x00680331: 0x00001E96 -+ "\x00t\x03\b\x00\x00\x1e\x97" + // 0x00740308: 0x00001E97 -+ "\x00w\x03\n\x00\x00\x1e\x98" + // 0x0077030A: 0x00001E98 -+ "\x00y\x03\n\x00\x00\x1e\x99" + // 0x0079030A: 0x00001E99 -+ "\x01\u007f\x03\a\x00\x00\x1e\x9b" + // 0x017F0307: 0x00001E9B -+ "\x00A\x03#\x00\x00\x1e\xa0" + // 0x00410323: 0x00001EA0 -+ "\x00a\x03#\x00\x00\x1e\xa1" + // 0x00610323: 0x00001EA1 -+ "\x00A\x03\t\x00\x00\x1e\xa2" + // 0x00410309: 0x00001EA2 -+ "\x00a\x03\t\x00\x00\x1e\xa3" + // 0x00610309: 0x00001EA3 -+ "\x00\xc2\x03\x01\x00\x00\x1e\xa4" + // 0x00C20301: 0x00001EA4 -+ "\x00\xe2\x03\x01\x00\x00\x1e\xa5" + // 0x00E20301: 0x00001EA5 -+ "\x00\xc2\x03\x00\x00\x00\x1e\xa6" + // 0x00C20300: 0x00001EA6 -+ "\x00\xe2\x03\x00\x00\x00\x1e\xa7" + // 0x00E20300: 0x00001EA7 -+ "\x00\xc2\x03\t\x00\x00\x1e\xa8" + // 0x00C20309: 0x00001EA8 -+ "\x00\xe2\x03\t\x00\x00\x1e\xa9" + // 0x00E20309: 0x00001EA9 -+ "\x00\xc2\x03\x03\x00\x00\x1e\xaa" + // 0x00C20303: 0x00001EAA -+ "\x00\xe2\x03\x03\x00\x00\x1e\xab" + // 0x00E20303: 0x00001EAB -+ "\x1e\xa0\x03\x02\x00\x00\x1e\xac" + // 0x1EA00302: 0x00001EAC -+ "\x1e\xa1\x03\x02\x00\x00\x1e\xad" + // 0x1EA10302: 0x00001EAD -+ "\x01\x02\x03\x01\x00\x00\x1e\xae" + // 0x01020301: 0x00001EAE -+ "\x01\x03\x03\x01\x00\x00\x1e\xaf" + // 0x01030301: 0x00001EAF -+ "\x01\x02\x03\x00\x00\x00\x1e\xb0" + // 0x01020300: 0x00001EB0 -+ "\x01\x03\x03\x00\x00\x00\x1e\xb1" + // 0x01030300: 0x00001EB1 -+ "\x01\x02\x03\t\x00\x00\x1e\xb2" + // 0x01020309: 0x00001EB2 -+ "\x01\x03\x03\t\x00\x00\x1e\xb3" + // 0x01030309: 0x00001EB3 -+ "\x01\x02\x03\x03\x00\x00\x1e\xb4" + // 0x01020303: 0x00001EB4 -+ "\x01\x03\x03\x03\x00\x00\x1e\xb5" + // 0x01030303: 0x00001EB5 -+ "\x1e\xa0\x03\x06\x00\x00\x1e\xb6" + // 0x1EA00306: 0x00001EB6 -+ "\x1e\xa1\x03\x06\x00\x00\x1e\xb7" + // 0x1EA10306: 0x00001EB7 -+ "\x00E\x03#\x00\x00\x1e\xb8" + // 0x00450323: 0x00001EB8 -+ "\x00e\x03#\x00\x00\x1e\xb9" + // 0x00650323: 0x00001EB9 -+ "\x00E\x03\t\x00\x00\x1e\xba" + // 0x00450309: 0x00001EBA -+ "\x00e\x03\t\x00\x00\x1e\xbb" + // 0x00650309: 0x00001EBB -+ "\x00E\x03\x03\x00\x00\x1e\xbc" + // 0x00450303: 0x00001EBC -+ "\x00e\x03\x03\x00\x00\x1e\xbd" + // 0x00650303: 0x00001EBD -+ "\x00\xca\x03\x01\x00\x00\x1e\xbe" + // 0x00CA0301: 0x00001EBE -+ "\x00\xea\x03\x01\x00\x00\x1e\xbf" + // 0x00EA0301: 0x00001EBF -+ "\x00\xca\x03\x00\x00\x00\x1e\xc0" + // 0x00CA0300: 0x00001EC0 -+ "\x00\xea\x03\x00\x00\x00\x1e\xc1" + // 0x00EA0300: 0x00001EC1 -+ "\x00\xca\x03\t\x00\x00\x1e\xc2" + // 0x00CA0309: 0x00001EC2 -+ "\x00\xea\x03\t\x00\x00\x1e\xc3" + // 0x00EA0309: 0x00001EC3 -+ "\x00\xca\x03\x03\x00\x00\x1e\xc4" + // 0x00CA0303: 0x00001EC4 -+ "\x00\xea\x03\x03\x00\x00\x1e\xc5" + // 0x00EA0303: 0x00001EC5 -+ "\x1e\xb8\x03\x02\x00\x00\x1e\xc6" + // 0x1EB80302: 0x00001EC6 -+ "\x1e\xb9\x03\x02\x00\x00\x1e\xc7" + // 0x1EB90302: 0x00001EC7 -+ "\x00I\x03\t\x00\x00\x1e\xc8" + // 0x00490309: 0x00001EC8 -+ "\x00i\x03\t\x00\x00\x1e\xc9" + // 0x00690309: 0x00001EC9 -+ "\x00I\x03#\x00\x00\x1e\xca" + // 0x00490323: 0x00001ECA -+ "\x00i\x03#\x00\x00\x1e\xcb" + // 0x00690323: 0x00001ECB -+ "\x00O\x03#\x00\x00\x1e\xcc" + // 0x004F0323: 0x00001ECC -+ "\x00o\x03#\x00\x00\x1e\xcd" + // 0x006F0323: 0x00001ECD -+ "\x00O\x03\t\x00\x00\x1e\xce" + // 0x004F0309: 0x00001ECE -+ "\x00o\x03\t\x00\x00\x1e\xcf" + // 0x006F0309: 0x00001ECF -+ "\x00\xd4\x03\x01\x00\x00\x1e\xd0" + // 0x00D40301: 0x00001ED0 -+ "\x00\xf4\x03\x01\x00\x00\x1e\xd1" + // 0x00F40301: 0x00001ED1 -+ "\x00\xd4\x03\x00\x00\x00\x1e\xd2" + // 0x00D40300: 0x00001ED2 -+ "\x00\xf4\x03\x00\x00\x00\x1e\xd3" + // 0x00F40300: 0x00001ED3 -+ "\x00\xd4\x03\t\x00\x00\x1e\xd4" + // 0x00D40309: 0x00001ED4 -+ "\x00\xf4\x03\t\x00\x00\x1e\xd5" + // 0x00F40309: 0x00001ED5 -+ "\x00\xd4\x03\x03\x00\x00\x1e\xd6" + // 0x00D40303: 0x00001ED6 -+ "\x00\xf4\x03\x03\x00\x00\x1e\xd7" + // 0x00F40303: 0x00001ED7 -+ "\x1e\xcc\x03\x02\x00\x00\x1e\xd8" + // 0x1ECC0302: 0x00001ED8 -+ "\x1e\xcd\x03\x02\x00\x00\x1e\xd9" + // 0x1ECD0302: 0x00001ED9 -+ "\x01\xa0\x03\x01\x00\x00\x1e\xda" + // 0x01A00301: 0x00001EDA -+ "\x01\xa1\x03\x01\x00\x00\x1e\xdb" + // 0x01A10301: 0x00001EDB -+ "\x01\xa0\x03\x00\x00\x00\x1e\xdc" + // 0x01A00300: 0x00001EDC -+ "\x01\xa1\x03\x00\x00\x00\x1e\xdd" + // 0x01A10300: 0x00001EDD -+ "\x01\xa0\x03\t\x00\x00\x1e\xde" + // 0x01A00309: 0x00001EDE -+ "\x01\xa1\x03\t\x00\x00\x1e\xdf" + // 0x01A10309: 0x00001EDF -+ "\x01\xa0\x03\x03\x00\x00\x1e\xe0" + // 0x01A00303: 0x00001EE0 -+ "\x01\xa1\x03\x03\x00\x00\x1e\xe1" + // 0x01A10303: 0x00001EE1 -+ "\x01\xa0\x03#\x00\x00\x1e\xe2" + // 0x01A00323: 0x00001EE2 -+ "\x01\xa1\x03#\x00\x00\x1e\xe3" + // 0x01A10323: 0x00001EE3 -+ "\x00U\x03#\x00\x00\x1e\xe4" + // 0x00550323: 0x00001EE4 -+ "\x00u\x03#\x00\x00\x1e\xe5" + // 0x00750323: 0x00001EE5 -+ "\x00U\x03\t\x00\x00\x1e\xe6" + // 0x00550309: 0x00001EE6 -+ "\x00u\x03\t\x00\x00\x1e\xe7" + // 0x00750309: 0x00001EE7 -+ "\x01\xaf\x03\x01\x00\x00\x1e\xe8" + // 0x01AF0301: 0x00001EE8 -+ "\x01\xb0\x03\x01\x00\x00\x1e\xe9" + // 0x01B00301: 0x00001EE9 -+ "\x01\xaf\x03\x00\x00\x00\x1e\xea" + // 0x01AF0300: 0x00001EEA -+ "\x01\xb0\x03\x00\x00\x00\x1e\xeb" + // 0x01B00300: 0x00001EEB -+ "\x01\xaf\x03\t\x00\x00\x1e\xec" + // 0x01AF0309: 0x00001EEC -+ "\x01\xb0\x03\t\x00\x00\x1e\xed" + // 0x01B00309: 0x00001EED -+ "\x01\xaf\x03\x03\x00\x00\x1e\xee" + // 0x01AF0303: 0x00001EEE -+ "\x01\xb0\x03\x03\x00\x00\x1e\xef" + // 0x01B00303: 0x00001EEF -+ "\x01\xaf\x03#\x00\x00\x1e\xf0" + // 0x01AF0323: 0x00001EF0 -+ "\x01\xb0\x03#\x00\x00\x1e\xf1" + // 0x01B00323: 0x00001EF1 -+ "\x00Y\x03\x00\x00\x00\x1e\xf2" + // 0x00590300: 0x00001EF2 -+ "\x00y\x03\x00\x00\x00\x1e\xf3" + // 0x00790300: 0x00001EF3 -+ "\x00Y\x03#\x00\x00\x1e\xf4" + // 0x00590323: 0x00001EF4 -+ "\x00y\x03#\x00\x00\x1e\xf5" + // 0x00790323: 0x00001EF5 -+ "\x00Y\x03\t\x00\x00\x1e\xf6" + // 0x00590309: 0x00001EF6 -+ "\x00y\x03\t\x00\x00\x1e\xf7" + // 0x00790309: 0x00001EF7 -+ "\x00Y\x03\x03\x00\x00\x1e\xf8" + // 0x00590303: 0x00001EF8 -+ "\x00y\x03\x03\x00\x00\x1e\xf9" + // 0x00790303: 0x00001EF9 -+ "\x03\xb1\x03\x13\x00\x00\x1f\x00" + // 0x03B10313: 0x00001F00 -+ "\x03\xb1\x03\x14\x00\x00\x1f\x01" + // 0x03B10314: 0x00001F01 -+ "\x1f\x00\x03\x00\x00\x00\x1f\x02" + // 0x1F000300: 0x00001F02 -+ "\x1f\x01\x03\x00\x00\x00\x1f\x03" + // 0x1F010300: 0x00001F03 -+ "\x1f\x00\x03\x01\x00\x00\x1f\x04" + // 0x1F000301: 0x00001F04 -+ "\x1f\x01\x03\x01\x00\x00\x1f\x05" + // 0x1F010301: 0x00001F05 -+ "\x1f\x00\x03B\x00\x00\x1f\x06" + // 0x1F000342: 0x00001F06 -+ "\x1f\x01\x03B\x00\x00\x1f\a" + // 0x1F010342: 0x00001F07 -+ "\x03\x91\x03\x13\x00\x00\x1f\b" + // 0x03910313: 0x00001F08 -+ "\x03\x91\x03\x14\x00\x00\x1f\t" + // 0x03910314: 0x00001F09 -+ "\x1f\b\x03\x00\x00\x00\x1f\n" + // 0x1F080300: 0x00001F0A -+ "\x1f\t\x03\x00\x00\x00\x1f\v" + // 0x1F090300: 0x00001F0B -+ "\x1f\b\x03\x01\x00\x00\x1f\f" + // 0x1F080301: 0x00001F0C -+ "\x1f\t\x03\x01\x00\x00\x1f\r" + // 0x1F090301: 0x00001F0D -+ "\x1f\b\x03B\x00\x00\x1f\x0e" + // 0x1F080342: 0x00001F0E -+ "\x1f\t\x03B\x00\x00\x1f\x0f" + // 0x1F090342: 0x00001F0F -+ "\x03\xb5\x03\x13\x00\x00\x1f\x10" + // 0x03B50313: 0x00001F10 -+ "\x03\xb5\x03\x14\x00\x00\x1f\x11" + // 0x03B50314: 0x00001F11 -+ "\x1f\x10\x03\x00\x00\x00\x1f\x12" + // 0x1F100300: 0x00001F12 -+ "\x1f\x11\x03\x00\x00\x00\x1f\x13" + // 0x1F110300: 0x00001F13 -+ "\x1f\x10\x03\x01\x00\x00\x1f\x14" + // 0x1F100301: 0x00001F14 -+ "\x1f\x11\x03\x01\x00\x00\x1f\x15" + // 0x1F110301: 0x00001F15 -+ "\x03\x95\x03\x13\x00\x00\x1f\x18" + // 0x03950313: 0x00001F18 -+ "\x03\x95\x03\x14\x00\x00\x1f\x19" + // 0x03950314: 0x00001F19 -+ "\x1f\x18\x03\x00\x00\x00\x1f\x1a" + // 0x1F180300: 0x00001F1A -+ "\x1f\x19\x03\x00\x00\x00\x1f\x1b" + // 0x1F190300: 0x00001F1B -+ "\x1f\x18\x03\x01\x00\x00\x1f\x1c" + // 0x1F180301: 0x00001F1C -+ "\x1f\x19\x03\x01\x00\x00\x1f\x1d" + // 0x1F190301: 0x00001F1D -+ "\x03\xb7\x03\x13\x00\x00\x1f " + // 0x03B70313: 0x00001F20 -+ "\x03\xb7\x03\x14\x00\x00\x1f!" + // 0x03B70314: 0x00001F21 -+ "\x1f \x03\x00\x00\x00\x1f\"" + // 0x1F200300: 0x00001F22 -+ "\x1f!\x03\x00\x00\x00\x1f#" + // 0x1F210300: 0x00001F23 -+ "\x1f \x03\x01\x00\x00\x1f$" + // 0x1F200301: 0x00001F24 -+ "\x1f!\x03\x01\x00\x00\x1f%" + // 0x1F210301: 0x00001F25 -+ "\x1f \x03B\x00\x00\x1f&" + // 0x1F200342: 0x00001F26 -+ "\x1f!\x03B\x00\x00\x1f'" + // 0x1F210342: 0x00001F27 -+ "\x03\x97\x03\x13\x00\x00\x1f(" + // 0x03970313: 0x00001F28 -+ "\x03\x97\x03\x14\x00\x00\x1f)" + // 0x03970314: 0x00001F29 -+ "\x1f(\x03\x00\x00\x00\x1f*" + // 0x1F280300: 0x00001F2A -+ "\x1f)\x03\x00\x00\x00\x1f+" + // 0x1F290300: 0x00001F2B -+ "\x1f(\x03\x01\x00\x00\x1f," + // 0x1F280301: 0x00001F2C -+ "\x1f)\x03\x01\x00\x00\x1f-" + // 0x1F290301: 0x00001F2D -+ "\x1f(\x03B\x00\x00\x1f." + // 0x1F280342: 0x00001F2E -+ "\x1f)\x03B\x00\x00\x1f/" + // 0x1F290342: 0x00001F2F -+ "\x03\xb9\x03\x13\x00\x00\x1f0" + // 0x03B90313: 0x00001F30 -+ "\x03\xb9\x03\x14\x00\x00\x1f1" + // 0x03B90314: 0x00001F31 -+ "\x1f0\x03\x00\x00\x00\x1f2" + // 0x1F300300: 0x00001F32 -+ "\x1f1\x03\x00\x00\x00\x1f3" + // 0x1F310300: 0x00001F33 -+ "\x1f0\x03\x01\x00\x00\x1f4" + // 0x1F300301: 0x00001F34 -+ "\x1f1\x03\x01\x00\x00\x1f5" + // 0x1F310301: 0x00001F35 -+ "\x1f0\x03B\x00\x00\x1f6" + // 0x1F300342: 0x00001F36 -+ "\x1f1\x03B\x00\x00\x1f7" + // 0x1F310342: 0x00001F37 -+ "\x03\x99\x03\x13\x00\x00\x1f8" + // 0x03990313: 0x00001F38 -+ "\x03\x99\x03\x14\x00\x00\x1f9" + // 0x03990314: 0x00001F39 -+ "\x1f8\x03\x00\x00\x00\x1f:" + // 0x1F380300: 0x00001F3A -+ "\x1f9\x03\x00\x00\x00\x1f;" + // 0x1F390300: 0x00001F3B -+ "\x1f8\x03\x01\x00\x00\x1f<" + // 0x1F380301: 0x00001F3C -+ "\x1f9\x03\x01\x00\x00\x1f=" + // 0x1F390301: 0x00001F3D -+ "\x1f8\x03B\x00\x00\x1f>" + // 0x1F380342: 0x00001F3E -+ "\x1f9\x03B\x00\x00\x1f?" + // 0x1F390342: 0x00001F3F -+ "\x03\xbf\x03\x13\x00\x00\x1f@" + // 0x03BF0313: 0x00001F40 -+ "\x03\xbf\x03\x14\x00\x00\x1fA" + // 0x03BF0314: 0x00001F41 -+ "\x1f@\x03\x00\x00\x00\x1fB" + // 0x1F400300: 0x00001F42 -+ "\x1fA\x03\x00\x00\x00\x1fC" + // 0x1F410300: 0x00001F43 -+ "\x1f@\x03\x01\x00\x00\x1fD" + // 0x1F400301: 0x00001F44 -+ "\x1fA\x03\x01\x00\x00\x1fE" + // 0x1F410301: 0x00001F45 -+ "\x03\x9f\x03\x13\x00\x00\x1fH" + // 0x039F0313: 0x00001F48 -+ "\x03\x9f\x03\x14\x00\x00\x1fI" + // 0x039F0314: 0x00001F49 -+ "\x1fH\x03\x00\x00\x00\x1fJ" + // 0x1F480300: 0x00001F4A -+ "\x1fI\x03\x00\x00\x00\x1fK" + // 0x1F490300: 0x00001F4B -+ "\x1fH\x03\x01\x00\x00\x1fL" + // 0x1F480301: 0x00001F4C -+ "\x1fI\x03\x01\x00\x00\x1fM" + // 0x1F490301: 0x00001F4D -+ "\x03\xc5\x03\x13\x00\x00\x1fP" + // 0x03C50313: 0x00001F50 -+ "\x03\xc5\x03\x14\x00\x00\x1fQ" + // 0x03C50314: 0x00001F51 -+ "\x1fP\x03\x00\x00\x00\x1fR" + // 0x1F500300: 0x00001F52 -+ "\x1fQ\x03\x00\x00\x00\x1fS" + // 0x1F510300: 0x00001F53 -+ "\x1fP\x03\x01\x00\x00\x1fT" + // 0x1F500301: 0x00001F54 -+ "\x1fQ\x03\x01\x00\x00\x1fU" + // 0x1F510301: 0x00001F55 -+ "\x1fP\x03B\x00\x00\x1fV" + // 0x1F500342: 0x00001F56 -+ "\x1fQ\x03B\x00\x00\x1fW" + // 0x1F510342: 0x00001F57 -+ "\x03\xa5\x03\x14\x00\x00\x1fY" + // 0x03A50314: 0x00001F59 -+ "\x1fY\x03\x00\x00\x00\x1f[" + // 0x1F590300: 0x00001F5B -+ "\x1fY\x03\x01\x00\x00\x1f]" + // 0x1F590301: 0x00001F5D -+ "\x1fY\x03B\x00\x00\x1f_" + // 0x1F590342: 0x00001F5F -+ "\x03\xc9\x03\x13\x00\x00\x1f`" + // 0x03C90313: 0x00001F60 -+ "\x03\xc9\x03\x14\x00\x00\x1fa" + // 0x03C90314: 0x00001F61 -+ "\x1f`\x03\x00\x00\x00\x1fb" + // 0x1F600300: 0x00001F62 -+ "\x1fa\x03\x00\x00\x00\x1fc" + // 0x1F610300: 0x00001F63 -+ "\x1f`\x03\x01\x00\x00\x1fd" + // 0x1F600301: 0x00001F64 -+ "\x1fa\x03\x01\x00\x00\x1fe" + // 0x1F610301: 0x00001F65 -+ "\x1f`\x03B\x00\x00\x1ff" + // 0x1F600342: 0x00001F66 -+ "\x1fa\x03B\x00\x00\x1fg" + // 0x1F610342: 0x00001F67 -+ "\x03\xa9\x03\x13\x00\x00\x1fh" + // 0x03A90313: 0x00001F68 -+ "\x03\xa9\x03\x14\x00\x00\x1fi" + // 0x03A90314: 0x00001F69 -+ "\x1fh\x03\x00\x00\x00\x1fj" + // 0x1F680300: 0x00001F6A -+ "\x1fi\x03\x00\x00\x00\x1fk" + // 0x1F690300: 0x00001F6B -+ "\x1fh\x03\x01\x00\x00\x1fl" + // 0x1F680301: 0x00001F6C -+ "\x1fi\x03\x01\x00\x00\x1fm" + // 0x1F690301: 0x00001F6D -+ "\x1fh\x03B\x00\x00\x1fn" + // 0x1F680342: 0x00001F6E -+ "\x1fi\x03B\x00\x00\x1fo" + // 0x1F690342: 0x00001F6F -+ "\x03\xb1\x03\x00\x00\x00\x1fp" + // 0x03B10300: 0x00001F70 -+ "\x03\xb5\x03\x00\x00\x00\x1fr" + // 0x03B50300: 0x00001F72 -+ "\x03\xb7\x03\x00\x00\x00\x1ft" + // 0x03B70300: 0x00001F74 -+ "\x03\xb9\x03\x00\x00\x00\x1fv" + // 0x03B90300: 0x00001F76 -+ "\x03\xbf\x03\x00\x00\x00\x1fx" + // 0x03BF0300: 0x00001F78 -+ "\x03\xc5\x03\x00\x00\x00\x1fz" + // 0x03C50300: 0x00001F7A -+ "\x03\xc9\x03\x00\x00\x00\x1f|" + // 0x03C90300: 0x00001F7C -+ "\x1f\x00\x03E\x00\x00\x1f\x80" + // 0x1F000345: 0x00001F80 -+ "\x1f\x01\x03E\x00\x00\x1f\x81" + // 0x1F010345: 0x00001F81 -+ "\x1f\x02\x03E\x00\x00\x1f\x82" + // 0x1F020345: 0x00001F82 -+ "\x1f\x03\x03E\x00\x00\x1f\x83" + // 0x1F030345: 0x00001F83 -+ "\x1f\x04\x03E\x00\x00\x1f\x84" + // 0x1F040345: 0x00001F84 -+ "\x1f\x05\x03E\x00\x00\x1f\x85" + // 0x1F050345: 0x00001F85 -+ "\x1f\x06\x03E\x00\x00\x1f\x86" + // 0x1F060345: 0x00001F86 -+ "\x1f\a\x03E\x00\x00\x1f\x87" + // 0x1F070345: 0x00001F87 -+ "\x1f\b\x03E\x00\x00\x1f\x88" + // 0x1F080345: 0x00001F88 -+ "\x1f\t\x03E\x00\x00\x1f\x89" + // 0x1F090345: 0x00001F89 -+ "\x1f\n\x03E\x00\x00\x1f\x8a" + // 0x1F0A0345: 0x00001F8A -+ "\x1f\v\x03E\x00\x00\x1f\x8b" + // 0x1F0B0345: 0x00001F8B -+ "\x1f\f\x03E\x00\x00\x1f\x8c" + // 0x1F0C0345: 0x00001F8C -+ "\x1f\r\x03E\x00\x00\x1f\x8d" + // 0x1F0D0345: 0x00001F8D -+ "\x1f\x0e\x03E\x00\x00\x1f\x8e" + // 0x1F0E0345: 0x00001F8E -+ "\x1f\x0f\x03E\x00\x00\x1f\x8f" + // 0x1F0F0345: 0x00001F8F -+ "\x1f \x03E\x00\x00\x1f\x90" + // 0x1F200345: 0x00001F90 -+ "\x1f!\x03E\x00\x00\x1f\x91" + // 0x1F210345: 0x00001F91 -+ "\x1f\"\x03E\x00\x00\x1f\x92" + // 0x1F220345: 0x00001F92 -+ "\x1f#\x03E\x00\x00\x1f\x93" + // 0x1F230345: 0x00001F93 -+ "\x1f$\x03E\x00\x00\x1f\x94" + // 0x1F240345: 0x00001F94 -+ "\x1f%\x03E\x00\x00\x1f\x95" + // 0x1F250345: 0x00001F95 -+ "\x1f&\x03E\x00\x00\x1f\x96" + // 0x1F260345: 0x00001F96 -+ "\x1f'\x03E\x00\x00\x1f\x97" + // 0x1F270345: 0x00001F97 -+ "\x1f(\x03E\x00\x00\x1f\x98" + // 0x1F280345: 0x00001F98 -+ "\x1f)\x03E\x00\x00\x1f\x99" + // 0x1F290345: 0x00001F99 -+ "\x1f*\x03E\x00\x00\x1f\x9a" + // 0x1F2A0345: 0x00001F9A -+ "\x1f+\x03E\x00\x00\x1f\x9b" + // 0x1F2B0345: 0x00001F9B -+ "\x1f,\x03E\x00\x00\x1f\x9c" + // 0x1F2C0345: 0x00001F9C -+ "\x1f-\x03E\x00\x00\x1f\x9d" + // 0x1F2D0345: 0x00001F9D -+ "\x1f.\x03E\x00\x00\x1f\x9e" + // 0x1F2E0345: 0x00001F9E -+ "\x1f/\x03E\x00\x00\x1f\x9f" + // 0x1F2F0345: 0x00001F9F -+ "\x1f`\x03E\x00\x00\x1f\xa0" + // 0x1F600345: 0x00001FA0 -+ "\x1fa\x03E\x00\x00\x1f\xa1" + // 0x1F610345: 0x00001FA1 -+ "\x1fb\x03E\x00\x00\x1f\xa2" + // 0x1F620345: 0x00001FA2 -+ "\x1fc\x03E\x00\x00\x1f\xa3" + // 0x1F630345: 0x00001FA3 -+ "\x1fd\x03E\x00\x00\x1f\xa4" + // 0x1F640345: 0x00001FA4 -+ "\x1fe\x03E\x00\x00\x1f\xa5" + // 0x1F650345: 0x00001FA5 -+ "\x1ff\x03E\x00\x00\x1f\xa6" + // 0x1F660345: 0x00001FA6 -+ "\x1fg\x03E\x00\x00\x1f\xa7" + // 0x1F670345: 0x00001FA7 -+ "\x1fh\x03E\x00\x00\x1f\xa8" + // 0x1F680345: 0x00001FA8 -+ "\x1fi\x03E\x00\x00\x1f\xa9" + // 0x1F690345: 0x00001FA9 -+ "\x1fj\x03E\x00\x00\x1f\xaa" + // 0x1F6A0345: 0x00001FAA -+ "\x1fk\x03E\x00\x00\x1f\xab" + // 0x1F6B0345: 0x00001FAB -+ "\x1fl\x03E\x00\x00\x1f\xac" + // 0x1F6C0345: 0x00001FAC -+ "\x1fm\x03E\x00\x00\x1f\xad" + // 0x1F6D0345: 0x00001FAD -+ "\x1fn\x03E\x00\x00\x1f\xae" + // 0x1F6E0345: 0x00001FAE -+ "\x1fo\x03E\x00\x00\x1f\xaf" + // 0x1F6F0345: 0x00001FAF -+ "\x03\xb1\x03\x06\x00\x00\x1f\xb0" + // 0x03B10306: 0x00001FB0 -+ "\x03\xb1\x03\x04\x00\x00\x1f\xb1" + // 0x03B10304: 0x00001FB1 -+ "\x1fp\x03E\x00\x00\x1f\xb2" + // 0x1F700345: 0x00001FB2 -+ "\x03\xb1\x03E\x00\x00\x1f\xb3" + // 0x03B10345: 0x00001FB3 -+ "\x03\xac\x03E\x00\x00\x1f\xb4" + // 0x03AC0345: 0x00001FB4 -+ "\x03\xb1\x03B\x00\x00\x1f\xb6" + // 0x03B10342: 0x00001FB6 -+ "\x1f\xb6\x03E\x00\x00\x1f\xb7" + // 0x1FB60345: 0x00001FB7 -+ "\x03\x91\x03\x06\x00\x00\x1f\xb8" + // 0x03910306: 0x00001FB8 -+ "\x03\x91\x03\x04\x00\x00\x1f\xb9" + // 0x03910304: 0x00001FB9 -+ "\x03\x91\x03\x00\x00\x00\x1f\xba" + // 0x03910300: 0x00001FBA -+ "\x03\x91\x03E\x00\x00\x1f\xbc" + // 0x03910345: 0x00001FBC -+ "\x00\xa8\x03B\x00\x00\x1f\xc1" + // 0x00A80342: 0x00001FC1 -+ "\x1ft\x03E\x00\x00\x1f\xc2" + // 0x1F740345: 0x00001FC2 -+ "\x03\xb7\x03E\x00\x00\x1f\xc3" + // 0x03B70345: 0x00001FC3 -+ "\x03\xae\x03E\x00\x00\x1f\xc4" + // 0x03AE0345: 0x00001FC4 -+ "\x03\xb7\x03B\x00\x00\x1f\xc6" + // 0x03B70342: 0x00001FC6 -+ "\x1f\xc6\x03E\x00\x00\x1f\xc7" + // 0x1FC60345: 0x00001FC7 -+ "\x03\x95\x03\x00\x00\x00\x1f\xc8" + // 0x03950300: 0x00001FC8 -+ "\x03\x97\x03\x00\x00\x00\x1f\xca" + // 0x03970300: 0x00001FCA -+ "\x03\x97\x03E\x00\x00\x1f\xcc" + // 0x03970345: 0x00001FCC -+ "\x1f\xbf\x03\x00\x00\x00\x1f\xcd" + // 0x1FBF0300: 0x00001FCD -+ "\x1f\xbf\x03\x01\x00\x00\x1f\xce" + // 0x1FBF0301: 0x00001FCE -+ "\x1f\xbf\x03B\x00\x00\x1f\xcf" + // 0x1FBF0342: 0x00001FCF -+ "\x03\xb9\x03\x06\x00\x00\x1f\xd0" + // 0x03B90306: 0x00001FD0 -+ "\x03\xb9\x03\x04\x00\x00\x1f\xd1" + // 0x03B90304: 0x00001FD1 -+ "\x03\xca\x03\x00\x00\x00\x1f\xd2" + // 0x03CA0300: 0x00001FD2 -+ "\x03\xb9\x03B\x00\x00\x1f\xd6" + // 0x03B90342: 0x00001FD6 -+ "\x03\xca\x03B\x00\x00\x1f\xd7" + // 0x03CA0342: 0x00001FD7 -+ "\x03\x99\x03\x06\x00\x00\x1f\xd8" + // 0x03990306: 0x00001FD8 -+ "\x03\x99\x03\x04\x00\x00\x1f\xd9" + // 0x03990304: 0x00001FD9 -+ "\x03\x99\x03\x00\x00\x00\x1f\xda" + // 0x03990300: 0x00001FDA -+ "\x1f\xfe\x03\x00\x00\x00\x1f\xdd" + // 0x1FFE0300: 0x00001FDD -+ "\x1f\xfe\x03\x01\x00\x00\x1f\xde" + // 0x1FFE0301: 0x00001FDE -+ "\x1f\xfe\x03B\x00\x00\x1f\xdf" + // 0x1FFE0342: 0x00001FDF -+ "\x03\xc5\x03\x06\x00\x00\x1f\xe0" + // 0x03C50306: 0x00001FE0 -+ "\x03\xc5\x03\x04\x00\x00\x1f\xe1" + // 0x03C50304: 0x00001FE1 -+ "\x03\xcb\x03\x00\x00\x00\x1f\xe2" + // 0x03CB0300: 0x00001FE2 -+ "\x03\xc1\x03\x13\x00\x00\x1f\xe4" + // 0x03C10313: 0x00001FE4 -+ "\x03\xc1\x03\x14\x00\x00\x1f\xe5" + // 0x03C10314: 0x00001FE5 -+ "\x03\xc5\x03B\x00\x00\x1f\xe6" + // 0x03C50342: 0x00001FE6 -+ "\x03\xcb\x03B\x00\x00\x1f\xe7" + // 0x03CB0342: 0x00001FE7 -+ "\x03\xa5\x03\x06\x00\x00\x1f\xe8" + // 0x03A50306: 0x00001FE8 -+ "\x03\xa5\x03\x04\x00\x00\x1f\xe9" + // 0x03A50304: 0x00001FE9 -+ "\x03\xa5\x03\x00\x00\x00\x1f\xea" + // 0x03A50300: 0x00001FEA -+ "\x03\xa1\x03\x14\x00\x00\x1f\xec" + // 0x03A10314: 0x00001FEC -+ "\x00\xa8\x03\x00\x00\x00\x1f\xed" + // 0x00A80300: 0x00001FED -+ "\x1f|\x03E\x00\x00\x1f\xf2" + // 0x1F7C0345: 0x00001FF2 -+ "\x03\xc9\x03E\x00\x00\x1f\xf3" + // 0x03C90345: 0x00001FF3 -+ "\x03\xce\x03E\x00\x00\x1f\xf4" + // 0x03CE0345: 0x00001FF4 -+ "\x03\xc9\x03B\x00\x00\x1f\xf6" + // 0x03C90342: 0x00001FF6 -+ "\x1f\xf6\x03E\x00\x00\x1f\xf7" + // 0x1FF60345: 0x00001FF7 -+ "\x03\x9f\x03\x00\x00\x00\x1f\xf8" + // 0x039F0300: 0x00001FF8 -+ "\x03\xa9\x03\x00\x00\x00\x1f\xfa" + // 0x03A90300: 0x00001FFA -+ "\x03\xa9\x03E\x00\x00\x1f\xfc" + // 0x03A90345: 0x00001FFC -+ "!\x90\x038\x00\x00!\x9a" + // 0x21900338: 0x0000219A -+ "!\x92\x038\x00\x00!\x9b" + // 0x21920338: 0x0000219B -+ "!\x94\x038\x00\x00!\xae" + // 0x21940338: 0x000021AE -+ "!\xd0\x038\x00\x00!\xcd" + // 0x21D00338: 0x000021CD -+ "!\xd4\x038\x00\x00!\xce" + // 0x21D40338: 0x000021CE -+ "!\xd2\x038\x00\x00!\xcf" + // 0x21D20338: 0x000021CF -+ "\"\x03\x038\x00\x00\"\x04" + // 0x22030338: 0x00002204 -+ "\"\b\x038\x00\x00\"\t" + // 0x22080338: 0x00002209 -+ "\"\v\x038\x00\x00\"\f" + // 0x220B0338: 0x0000220C -+ "\"#\x038\x00\x00\"$" + // 0x22230338: 0x00002224 -+ "\"%\x038\x00\x00\"&" + // 0x22250338: 0x00002226 -+ "\"<\x038\x00\x00\"A" + // 0x223C0338: 0x00002241 -+ "\"C\x038\x00\x00\"D" + // 0x22430338: 0x00002244 -+ "\"E\x038\x00\x00\"G" + // 0x22450338: 0x00002247 -+ "\"H\x038\x00\x00\"I" + // 0x22480338: 0x00002249 -+ "\x00=\x038\x00\x00\"`" + // 0x003D0338: 0x00002260 -+ "\"a\x038\x00\x00\"b" + // 0x22610338: 0x00002262 -+ "\"M\x038\x00\x00\"m" + // 0x224D0338: 0x0000226D -+ "\x00<\x038\x00\x00\"n" + // 0x003C0338: 0x0000226E -+ "\x00>\x038\x00\x00\"o" + // 0x003E0338: 0x0000226F -+ "\"d\x038\x00\x00\"p" + // 0x22640338: 0x00002270 -+ "\"e\x038\x00\x00\"q" + // 0x22650338: 0x00002271 -+ "\"r\x038\x00\x00\"t" + // 0x22720338: 0x00002274 -+ "\"s\x038\x00\x00\"u" + // 0x22730338: 0x00002275 -+ "\"v\x038\x00\x00\"x" + // 0x22760338: 0x00002278 -+ "\"w\x038\x00\x00\"y" + // 0x22770338: 0x00002279 -+ "\"z\x038\x00\x00\"\x80" + // 0x227A0338: 0x00002280 -+ "\"{\x038\x00\x00\"\x81" + // 0x227B0338: 0x00002281 -+ "\"\x82\x038\x00\x00\"\x84" + // 0x22820338: 0x00002284 -+ "\"\x83\x038\x00\x00\"\x85" + // 0x22830338: 0x00002285 -+ "\"\x86\x038\x00\x00\"\x88" + // 0x22860338: 0x00002288 -+ "\"\x87\x038\x00\x00\"\x89" + // 0x22870338: 0x00002289 -+ "\"\xa2\x038\x00\x00\"\xac" + // 0x22A20338: 0x000022AC -+ "\"\xa8\x038\x00\x00\"\xad" + // 0x22A80338: 0x000022AD -+ "\"\xa9\x038\x00\x00\"\xae" + // 0x22A90338: 0x000022AE -+ "\"\xab\x038\x00\x00\"\xaf" + // 0x22AB0338: 0x000022AF -+ "\"|\x038\x00\x00\"\xe0" + // 0x227C0338: 0x000022E0 -+ "\"}\x038\x00\x00\"\xe1" + // 0x227D0338: 0x000022E1 -+ "\"\x91\x038\x00\x00\"\xe2" + // 0x22910338: 0x000022E2 -+ "\"\x92\x038\x00\x00\"\xe3" + // 0x22920338: 0x000022E3 -+ "\"\xb2\x038\x00\x00\"\xea" + // 0x22B20338: 0x000022EA -+ "\"\xb3\x038\x00\x00\"\xeb" + // 0x22B30338: 0x000022EB -+ "\"\xb4\x038\x00\x00\"\xec" + // 0x22B40338: 0x000022EC -+ "\"\xb5\x038\x00\x00\"\xed" + // 0x22B50338: 0x000022ED -+ "0K0\x99\x00\x000L" + // 0x304B3099: 0x0000304C -+ "0M0\x99\x00\x000N" + // 0x304D3099: 0x0000304E -+ "0O0\x99\x00\x000P" + // 0x304F3099: 0x00003050 -+ "0Q0\x99\x00\x000R" + // 0x30513099: 0x00003052 -+ "0S0\x99\x00\x000T" + // 0x30533099: 0x00003054 -+ "0U0\x99\x00\x000V" + // 0x30553099: 0x00003056 -+ "0W0\x99\x00\x000X" + // 0x30573099: 0x00003058 -+ "0Y0\x99\x00\x000Z" + // 0x30593099: 0x0000305A -+ "0[0\x99\x00\x000\\" + // 0x305B3099: 0x0000305C -+ "0]0\x99\x00\x000^" + // 0x305D3099: 0x0000305E -+ "0_0\x99\x00\x000`" + // 0x305F3099: 0x00003060 -+ "0a0\x99\x00\x000b" + // 0x30613099: 0x00003062 -+ "0d0\x99\x00\x000e" + // 0x30643099: 0x00003065 -+ "0f0\x99\x00\x000g" + // 0x30663099: 0x00003067 -+ "0h0\x99\x00\x000i" + // 0x30683099: 0x00003069 -+ "0o0\x99\x00\x000p" + // 0x306F3099: 0x00003070 -+ "0o0\x9a\x00\x000q" + // 0x306F309A: 0x00003071 -+ "0r0\x99\x00\x000s" + // 0x30723099: 0x00003073 -+ "0r0\x9a\x00\x000t" + // 0x3072309A: 0x00003074 -+ "0u0\x99\x00\x000v" + // 0x30753099: 0x00003076 -+ "0u0\x9a\x00\x000w" + // 0x3075309A: 0x00003077 -+ "0x0\x99\x00\x000y" + // 0x30783099: 0x00003079 -+ "0x0\x9a\x00\x000z" + // 0x3078309A: 0x0000307A -+ "0{0\x99\x00\x000|" + // 0x307B3099: 0x0000307C -+ "0{0\x9a\x00\x000}" + // 0x307B309A: 0x0000307D -+ "0F0\x99\x00\x000\x94" + // 0x30463099: 0x00003094 -+ "0\x9d0\x99\x00\x000\x9e" + // 0x309D3099: 0x0000309E -+ "0\xab0\x99\x00\x000\xac" + // 0x30AB3099: 0x000030AC -+ "0\xad0\x99\x00\x000\xae" + // 0x30AD3099: 0x000030AE -+ "0\xaf0\x99\x00\x000\xb0" + // 0x30AF3099: 0x000030B0 -+ "0\xb10\x99\x00\x000\xb2" + // 0x30B13099: 0x000030B2 -+ "0\xb30\x99\x00\x000\xb4" + // 0x30B33099: 0x000030B4 -+ "0\xb50\x99\x00\x000\xb6" + // 0x30B53099: 0x000030B6 -+ "0\xb70\x99\x00\x000\xb8" + // 0x30B73099: 0x000030B8 -+ "0\xb90\x99\x00\x000\xba" + // 0x30B93099: 0x000030BA -+ "0\xbb0\x99\x00\x000\xbc" + // 0x30BB3099: 0x000030BC -+ "0\xbd0\x99\x00\x000\xbe" + // 0x30BD3099: 0x000030BE -+ "0\xbf0\x99\x00\x000\xc0" + // 0x30BF3099: 0x000030C0 -+ "0\xc10\x99\x00\x000\xc2" + // 0x30C13099: 0x000030C2 -+ "0\xc40\x99\x00\x000\xc5" + // 0x30C43099: 0x000030C5 -+ "0\xc60\x99\x00\x000\xc7" + // 0x30C63099: 0x000030C7 -+ "0\xc80\x99\x00\x000\xc9" + // 0x30C83099: 0x000030C9 -+ "0\xcf0\x99\x00\x000\xd0" + // 0x30CF3099: 0x000030D0 -+ "0\xcf0\x9a\x00\x000\xd1" + // 0x30CF309A: 0x000030D1 -+ "0\xd20\x99\x00\x000\xd3" + // 0x30D23099: 0x000030D3 -+ "0\xd20\x9a\x00\x000\xd4" + // 0x30D2309A: 0x000030D4 -+ "0\xd50\x99\x00\x000\xd6" + // 0x30D53099: 0x000030D6 -+ "0\xd50\x9a\x00\x000\xd7" + // 0x30D5309A: 0x000030D7 -+ "0\xd80\x99\x00\x000\xd9" + // 0x30D83099: 0x000030D9 -+ "0\xd80\x9a\x00\x000\xda" + // 0x30D8309A: 0x000030DA -+ "0\xdb0\x99\x00\x000\xdc" + // 0x30DB3099: 0x000030DC -+ "0\xdb0\x9a\x00\x000\xdd" + // 0x30DB309A: 0x000030DD -+ "0\xa60\x99\x00\x000\xf4" + // 0x30A63099: 0x000030F4 -+ "0\xef0\x99\x00\x000\xf7" + // 0x30EF3099: 0x000030F7 -+ "0\xf00\x99\x00\x000\xf8" + // 0x30F03099: 0x000030F8 -+ "0\xf10\x99\x00\x000\xf9" + // 0x30F13099: 0x000030F9 -+ "0\xf20\x99\x00\x000\xfa" + // 0x30F23099: 0x000030FA -+ "0\xfd0\x99\x00\x000\xfe" + // 0x30FD3099: 0x000030FE -+ "\x10\x99\x10\xba\x00\x01\x10\x9a" + // 0x109910BA: 0x0001109A -+ "\x10\x9b\x10\xba\x00\x01\x10\x9c" + // 0x109B10BA: 0x0001109C -+ "\x10\xa5\x10\xba\x00\x01\x10\xab" + // 0x10A510BA: 0x000110AB -+ "\x111\x11'\x00\x01\x11." + // 0x11311127: 0x0001112E -+ "\x112\x11'\x00\x01\x11/" + // 0x11321127: 0x0001112F -+ "\x13G\x13>\x00\x01\x13K" + // 0x1347133E: 0x0001134B -+ "\x13G\x13W\x00\x01\x13L" + // 0x13471357: 0x0001134C -+ "\x14\xb9\x14\xba\x00\x01\x14\xbb" + // 0x14B914BA: 0x000114BB -+ "\x14\xb9\x14\xb0\x00\x01\x14\xbc" + // 0x14B914B0: 0x000114BC -+ "\x14\xb9\x14\xbd\x00\x01\x14\xbe" + // 0x14B914BD: 0x000114BE -+ "\x15\xb8\x15\xaf\x00\x01\x15\xba" + // 0x15B815AF: 0x000115BA -+ "\x15\xb9\x15\xaf\x00\x01\x15\xbb" + // 0x15B915AF: 0x000115BB -+ "" -+ // Total size of tables: 55KB (55977 bytes) -diff --git a/vendor/golang.org/x/text/unicode/norm/tables13.0.0.go b/vendor/golang.org/x/text/unicode/norm/tables13.0.0.go -new file mode 100644 -index 0000000..96a130d ---- /dev/null -+++ b/vendor/golang.org/x/text/unicode/norm/tables13.0.0.go -@@ -0,0 +1,7761 @@ -+// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. -+ -+//go:build go1.16 -+// +build go1.16 -+ -+package norm -+ -+import "sync" -+ -+const ( -+ // Version is the Unicode edition from which the tables are derived. -+ Version = "13.0.0" -+ -+ // MaxTransformChunkSize indicates the maximum number of bytes that Transform -+ // may need to write atomically for any Form. Making a destination buffer at -+ // least this size ensures that Transform can always make progress and that -+ // the user does not need to grow the buffer on an ErrShortDst. -+ MaxTransformChunkSize = 35 + maxNonStarters*4 -+) -+ -+var ccc = [56]uint8{ -+ 0, 1, 6, 7, 8, 9, 10, 11, -+ 12, 13, 14, 15, 16, 17, 18, 19, -+ 20, 21, 22, 23, 24, 25, 26, 27, -+ 28, 29, 30, 31, 32, 33, 34, 35, -+ 36, 84, 91, 103, 107, 118, 122, 129, -+ 130, 132, 202, 214, 216, 218, 220, 222, -+ 224, 226, 228, 230, 232, 233, 234, 240, -+} -+ -+const ( -+ firstMulti = 0x1870 -+ firstCCC = 0x2CAB -+ endMulti = 0x2F77 -+ firstLeadingCCC = 0x49C5 -+ firstCCCZeroExcept = 0x4A8F -+ firstStarterWithNLead = 0x4AB6 -+ lastDecomp = 0x4AB8 -+ maxDecomp = 0x8000 -+) -+ -+// decomps: 19128 bytes -+var decomps = [...]byte{ -+ // Bytes 0 - 3f -+ 0x00, 0x41, 0x20, 0x41, 0x21, 0x41, 0x22, 0x41, -+ 0x23, 0x41, 0x24, 0x41, 0x25, 0x41, 0x26, 0x41, -+ 0x27, 0x41, 0x28, 0x41, 0x29, 0x41, 0x2A, 0x41, -+ 0x2B, 0x41, 0x2C, 0x41, 0x2D, 0x41, 0x2E, 0x41, -+ 0x2F, 0x41, 0x30, 0x41, 0x31, 0x41, 0x32, 0x41, -+ 0x33, 0x41, 0x34, 0x41, 0x35, 0x41, 0x36, 0x41, -+ 0x37, 0x41, 0x38, 0x41, 0x39, 0x41, 0x3A, 0x41, -+ 0x3B, 0x41, 0x3C, 0x41, 0x3D, 0x41, 0x3E, 0x41, -+ // Bytes 40 - 7f -+ 0x3F, 0x41, 0x40, 0x41, 0x41, 0x41, 0x42, 0x41, -+ 0x43, 0x41, 0x44, 0x41, 0x45, 0x41, 0x46, 0x41, -+ 0x47, 0x41, 0x48, 0x41, 0x49, 0x41, 0x4A, 0x41, -+ 0x4B, 0x41, 0x4C, 0x41, 0x4D, 0x41, 0x4E, 0x41, -+ 0x4F, 0x41, 0x50, 0x41, 0x51, 0x41, 0x52, 0x41, -+ 0x53, 0x41, 0x54, 0x41, 0x55, 0x41, 0x56, 0x41, -+ 0x57, 0x41, 0x58, 0x41, 0x59, 0x41, 0x5A, 0x41, -+ 0x5B, 0x41, 0x5C, 0x41, 0x5D, 0x41, 0x5E, 0x41, -+ // Bytes 80 - bf -+ 0x5F, 0x41, 0x60, 0x41, 0x61, 0x41, 0x62, 0x41, -+ 0x63, 0x41, 0x64, 0x41, 0x65, 0x41, 0x66, 0x41, -+ 0x67, 0x41, 0x68, 0x41, 0x69, 0x41, 0x6A, 0x41, -+ 0x6B, 0x41, 0x6C, 0x41, 0x6D, 0x41, 0x6E, 0x41, -+ 0x6F, 0x41, 0x70, 0x41, 0x71, 0x41, 0x72, 0x41, -+ 0x73, 0x41, 0x74, 0x41, 0x75, 0x41, 0x76, 0x41, -+ 0x77, 0x41, 0x78, 0x41, 0x79, 0x41, 0x7A, 0x41, -+ 0x7B, 0x41, 0x7C, 0x41, 0x7D, 0x41, 0x7E, 0x42, -+ // Bytes c0 - ff -+ 0xC2, 0xA2, 0x42, 0xC2, 0xA3, 0x42, 0xC2, 0xA5, -+ 0x42, 0xC2, 0xA6, 0x42, 0xC2, 0xAC, 0x42, 0xC2, -+ 0xB7, 0x42, 0xC3, 0x86, 0x42, 0xC3, 0xB0, 0x42, -+ 0xC4, 0xA6, 0x42, 0xC4, 0xA7, 0x42, 0xC4, 0xB1, -+ 0x42, 0xC5, 0x8B, 0x42, 0xC5, 0x93, 0x42, 0xC6, -+ 0x8E, 0x42, 0xC6, 0x90, 0x42, 0xC6, 0xAB, 0x42, -+ 0xC8, 0xA2, 0x42, 0xC8, 0xB7, 0x42, 0xC9, 0x90, -+ 0x42, 0xC9, 0x91, 0x42, 0xC9, 0x92, 0x42, 0xC9, -+ // Bytes 100 - 13f -+ 0x94, 0x42, 0xC9, 0x95, 0x42, 0xC9, 0x99, 0x42, -+ 0xC9, 0x9B, 0x42, 0xC9, 0x9C, 0x42, 0xC9, 0x9F, -+ 0x42, 0xC9, 0xA1, 0x42, 0xC9, 0xA3, 0x42, 0xC9, -+ 0xA5, 0x42, 0xC9, 0xA6, 0x42, 0xC9, 0xA8, 0x42, -+ 0xC9, 0xA9, 0x42, 0xC9, 0xAA, 0x42, 0xC9, 0xAB, -+ 0x42, 0xC9, 0xAD, 0x42, 0xC9, 0xAF, 0x42, 0xC9, -+ 0xB0, 0x42, 0xC9, 0xB1, 0x42, 0xC9, 0xB2, 0x42, -+ 0xC9, 0xB3, 0x42, 0xC9, 0xB4, 0x42, 0xC9, 0xB5, -+ // Bytes 140 - 17f -+ 0x42, 0xC9, 0xB8, 0x42, 0xC9, 0xB9, 0x42, 0xC9, -+ 0xBB, 0x42, 0xCA, 0x81, 0x42, 0xCA, 0x82, 0x42, -+ 0xCA, 0x83, 0x42, 0xCA, 0x89, 0x42, 0xCA, 0x8A, -+ 0x42, 0xCA, 0x8B, 0x42, 0xCA, 0x8C, 0x42, 0xCA, -+ 0x8D, 0x42, 0xCA, 0x90, 0x42, 0xCA, 0x91, 0x42, -+ 0xCA, 0x92, 0x42, 0xCA, 0x95, 0x42, 0xCA, 0x9D, -+ 0x42, 0xCA, 0x9F, 0x42, 0xCA, 0xB9, 0x42, 0xCE, -+ 0x91, 0x42, 0xCE, 0x92, 0x42, 0xCE, 0x93, 0x42, -+ // Bytes 180 - 1bf -+ 0xCE, 0x94, 0x42, 0xCE, 0x95, 0x42, 0xCE, 0x96, -+ 0x42, 0xCE, 0x97, 0x42, 0xCE, 0x98, 0x42, 0xCE, -+ 0x99, 0x42, 0xCE, 0x9A, 0x42, 0xCE, 0x9B, 0x42, -+ 0xCE, 0x9C, 0x42, 0xCE, 0x9D, 0x42, 0xCE, 0x9E, -+ 0x42, 0xCE, 0x9F, 0x42, 0xCE, 0xA0, 0x42, 0xCE, -+ 0xA1, 0x42, 0xCE, 0xA3, 0x42, 0xCE, 0xA4, 0x42, -+ 0xCE, 0xA5, 0x42, 0xCE, 0xA6, 0x42, 0xCE, 0xA7, -+ 0x42, 0xCE, 0xA8, 0x42, 0xCE, 0xA9, 0x42, 0xCE, -+ // Bytes 1c0 - 1ff -+ 0xB1, 0x42, 0xCE, 0xB2, 0x42, 0xCE, 0xB3, 0x42, -+ 0xCE, 0xB4, 0x42, 0xCE, 0xB5, 0x42, 0xCE, 0xB6, -+ 0x42, 0xCE, 0xB7, 0x42, 0xCE, 0xB8, 0x42, 0xCE, -+ 0xB9, 0x42, 0xCE, 0xBA, 0x42, 0xCE, 0xBB, 0x42, -+ 0xCE, 0xBC, 0x42, 0xCE, 0xBD, 0x42, 0xCE, 0xBE, -+ 0x42, 0xCE, 0xBF, 0x42, 0xCF, 0x80, 0x42, 0xCF, -+ 0x81, 0x42, 0xCF, 0x82, 0x42, 0xCF, 0x83, 0x42, -+ 0xCF, 0x84, 0x42, 0xCF, 0x85, 0x42, 0xCF, 0x86, -+ // Bytes 200 - 23f -+ 0x42, 0xCF, 0x87, 0x42, 0xCF, 0x88, 0x42, 0xCF, -+ 0x89, 0x42, 0xCF, 0x9C, 0x42, 0xCF, 0x9D, 0x42, -+ 0xD0, 0xBD, 0x42, 0xD1, 0x8A, 0x42, 0xD1, 0x8C, -+ 0x42, 0xD7, 0x90, 0x42, 0xD7, 0x91, 0x42, 0xD7, -+ 0x92, 0x42, 0xD7, 0x93, 0x42, 0xD7, 0x94, 0x42, -+ 0xD7, 0x9B, 0x42, 0xD7, 0x9C, 0x42, 0xD7, 0x9D, -+ 0x42, 0xD7, 0xA2, 0x42, 0xD7, 0xA8, 0x42, 0xD7, -+ 0xAA, 0x42, 0xD8, 0xA1, 0x42, 0xD8, 0xA7, 0x42, -+ // Bytes 240 - 27f -+ 0xD8, 0xA8, 0x42, 0xD8, 0xA9, 0x42, 0xD8, 0xAA, -+ 0x42, 0xD8, 0xAB, 0x42, 0xD8, 0xAC, 0x42, 0xD8, -+ 0xAD, 0x42, 0xD8, 0xAE, 0x42, 0xD8, 0xAF, 0x42, -+ 0xD8, 0xB0, 0x42, 0xD8, 0xB1, 0x42, 0xD8, 0xB2, -+ 0x42, 0xD8, 0xB3, 0x42, 0xD8, 0xB4, 0x42, 0xD8, -+ 0xB5, 0x42, 0xD8, 0xB6, 0x42, 0xD8, 0xB7, 0x42, -+ 0xD8, 0xB8, 0x42, 0xD8, 0xB9, 0x42, 0xD8, 0xBA, -+ 0x42, 0xD9, 0x81, 0x42, 0xD9, 0x82, 0x42, 0xD9, -+ // Bytes 280 - 2bf -+ 0x83, 0x42, 0xD9, 0x84, 0x42, 0xD9, 0x85, 0x42, -+ 0xD9, 0x86, 0x42, 0xD9, 0x87, 0x42, 0xD9, 0x88, -+ 0x42, 0xD9, 0x89, 0x42, 0xD9, 0x8A, 0x42, 0xD9, -+ 0xAE, 0x42, 0xD9, 0xAF, 0x42, 0xD9, 0xB1, 0x42, -+ 0xD9, 0xB9, 0x42, 0xD9, 0xBA, 0x42, 0xD9, 0xBB, -+ 0x42, 0xD9, 0xBE, 0x42, 0xD9, 0xBF, 0x42, 0xDA, -+ 0x80, 0x42, 0xDA, 0x83, 0x42, 0xDA, 0x84, 0x42, -+ 0xDA, 0x86, 0x42, 0xDA, 0x87, 0x42, 0xDA, 0x88, -+ // Bytes 2c0 - 2ff -+ 0x42, 0xDA, 0x8C, 0x42, 0xDA, 0x8D, 0x42, 0xDA, -+ 0x8E, 0x42, 0xDA, 0x91, 0x42, 0xDA, 0x98, 0x42, -+ 0xDA, 0xA1, 0x42, 0xDA, 0xA4, 0x42, 0xDA, 0xA6, -+ 0x42, 0xDA, 0xA9, 0x42, 0xDA, 0xAD, 0x42, 0xDA, -+ 0xAF, 0x42, 0xDA, 0xB1, 0x42, 0xDA, 0xB3, 0x42, -+ 0xDA, 0xBA, 0x42, 0xDA, 0xBB, 0x42, 0xDA, 0xBE, -+ 0x42, 0xDB, 0x81, 0x42, 0xDB, 0x85, 0x42, 0xDB, -+ 0x86, 0x42, 0xDB, 0x87, 0x42, 0xDB, 0x88, 0x42, -+ // Bytes 300 - 33f -+ 0xDB, 0x89, 0x42, 0xDB, 0x8B, 0x42, 0xDB, 0x8C, -+ 0x42, 0xDB, 0x90, 0x42, 0xDB, 0x92, 0x43, 0xE0, -+ 0xBC, 0x8B, 0x43, 0xE1, 0x83, 0x9C, 0x43, 0xE1, -+ 0x84, 0x80, 0x43, 0xE1, 0x84, 0x81, 0x43, 0xE1, -+ 0x84, 0x82, 0x43, 0xE1, 0x84, 0x83, 0x43, 0xE1, -+ 0x84, 0x84, 0x43, 0xE1, 0x84, 0x85, 0x43, 0xE1, -+ 0x84, 0x86, 0x43, 0xE1, 0x84, 0x87, 0x43, 0xE1, -+ 0x84, 0x88, 0x43, 0xE1, 0x84, 0x89, 0x43, 0xE1, -+ // Bytes 340 - 37f -+ 0x84, 0x8A, 0x43, 0xE1, 0x84, 0x8B, 0x43, 0xE1, -+ 0x84, 0x8C, 0x43, 0xE1, 0x84, 0x8D, 0x43, 0xE1, -+ 0x84, 0x8E, 0x43, 0xE1, 0x84, 0x8F, 0x43, 0xE1, -+ 0x84, 0x90, 0x43, 0xE1, 0x84, 0x91, 0x43, 0xE1, -+ 0x84, 0x92, 0x43, 0xE1, 0x84, 0x94, 0x43, 0xE1, -+ 0x84, 0x95, 0x43, 0xE1, 0x84, 0x9A, 0x43, 0xE1, -+ 0x84, 0x9C, 0x43, 0xE1, 0x84, 0x9D, 0x43, 0xE1, -+ 0x84, 0x9E, 0x43, 0xE1, 0x84, 0xA0, 0x43, 0xE1, -+ // Bytes 380 - 3bf -+ 0x84, 0xA1, 0x43, 0xE1, 0x84, 0xA2, 0x43, 0xE1, -+ 0x84, 0xA3, 0x43, 0xE1, 0x84, 0xA7, 0x43, 0xE1, -+ 0x84, 0xA9, 0x43, 0xE1, 0x84, 0xAB, 0x43, 0xE1, -+ 0x84, 0xAC, 0x43, 0xE1, 0x84, 0xAD, 0x43, 0xE1, -+ 0x84, 0xAE, 0x43, 0xE1, 0x84, 0xAF, 0x43, 0xE1, -+ 0x84, 0xB2, 0x43, 0xE1, 0x84, 0xB6, 0x43, 0xE1, -+ 0x85, 0x80, 0x43, 0xE1, 0x85, 0x87, 0x43, 0xE1, -+ 0x85, 0x8C, 0x43, 0xE1, 0x85, 0x97, 0x43, 0xE1, -+ // Bytes 3c0 - 3ff -+ 0x85, 0x98, 0x43, 0xE1, 0x85, 0x99, 0x43, 0xE1, -+ 0x85, 0xA0, 0x43, 0xE1, 0x86, 0x84, 0x43, 0xE1, -+ 0x86, 0x85, 0x43, 0xE1, 0x86, 0x88, 0x43, 0xE1, -+ 0x86, 0x91, 0x43, 0xE1, 0x86, 0x92, 0x43, 0xE1, -+ 0x86, 0x94, 0x43, 0xE1, 0x86, 0x9E, 0x43, 0xE1, -+ 0x86, 0xA1, 0x43, 0xE1, 0x87, 0x87, 0x43, 0xE1, -+ 0x87, 0x88, 0x43, 0xE1, 0x87, 0x8C, 0x43, 0xE1, -+ 0x87, 0x8E, 0x43, 0xE1, 0x87, 0x93, 0x43, 0xE1, -+ // Bytes 400 - 43f -+ 0x87, 0x97, 0x43, 0xE1, 0x87, 0x99, 0x43, 0xE1, -+ 0x87, 0x9D, 0x43, 0xE1, 0x87, 0x9F, 0x43, 0xE1, -+ 0x87, 0xB1, 0x43, 0xE1, 0x87, 0xB2, 0x43, 0xE1, -+ 0xB4, 0x82, 0x43, 0xE1, 0xB4, 0x96, 0x43, 0xE1, -+ 0xB4, 0x97, 0x43, 0xE1, 0xB4, 0x9C, 0x43, 0xE1, -+ 0xB4, 0x9D, 0x43, 0xE1, 0xB4, 0xA5, 0x43, 0xE1, -+ 0xB5, 0xBB, 0x43, 0xE1, 0xB6, 0x85, 0x43, 0xE2, -+ 0x80, 0x82, 0x43, 0xE2, 0x80, 0x83, 0x43, 0xE2, -+ // Bytes 440 - 47f -+ 0x80, 0x90, 0x43, 0xE2, 0x80, 0x93, 0x43, 0xE2, -+ 0x80, 0x94, 0x43, 0xE2, 0x82, 0xA9, 0x43, 0xE2, -+ 0x86, 0x90, 0x43, 0xE2, 0x86, 0x91, 0x43, 0xE2, -+ 0x86, 0x92, 0x43, 0xE2, 0x86, 0x93, 0x43, 0xE2, -+ 0x88, 0x82, 0x43, 0xE2, 0x88, 0x87, 0x43, 0xE2, -+ 0x88, 0x91, 0x43, 0xE2, 0x88, 0x92, 0x43, 0xE2, -+ 0x94, 0x82, 0x43, 0xE2, 0x96, 0xA0, 0x43, 0xE2, -+ 0x97, 0x8B, 0x43, 0xE2, 0xA6, 0x85, 0x43, 0xE2, -+ // Bytes 480 - 4bf -+ 0xA6, 0x86, 0x43, 0xE2, 0xB5, 0xA1, 0x43, 0xE3, -+ 0x80, 0x81, 0x43, 0xE3, 0x80, 0x82, 0x43, 0xE3, -+ 0x80, 0x88, 0x43, 0xE3, 0x80, 0x89, 0x43, 0xE3, -+ 0x80, 0x8A, 0x43, 0xE3, 0x80, 0x8B, 0x43, 0xE3, -+ 0x80, 0x8C, 0x43, 0xE3, 0x80, 0x8D, 0x43, 0xE3, -+ 0x80, 0x8E, 0x43, 0xE3, 0x80, 0x8F, 0x43, 0xE3, -+ 0x80, 0x90, 0x43, 0xE3, 0x80, 0x91, 0x43, 0xE3, -+ 0x80, 0x92, 0x43, 0xE3, 0x80, 0x94, 0x43, 0xE3, -+ // Bytes 4c0 - 4ff -+ 0x80, 0x95, 0x43, 0xE3, 0x80, 0x96, 0x43, 0xE3, -+ 0x80, 0x97, 0x43, 0xE3, 0x82, 0xA1, 0x43, 0xE3, -+ 0x82, 0xA2, 0x43, 0xE3, 0x82, 0xA3, 0x43, 0xE3, -+ 0x82, 0xA4, 0x43, 0xE3, 0x82, 0xA5, 0x43, 0xE3, -+ 0x82, 0xA6, 0x43, 0xE3, 0x82, 0xA7, 0x43, 0xE3, -+ 0x82, 0xA8, 0x43, 0xE3, 0x82, 0xA9, 0x43, 0xE3, -+ 0x82, 0xAA, 0x43, 0xE3, 0x82, 0xAB, 0x43, 0xE3, -+ 0x82, 0xAD, 0x43, 0xE3, 0x82, 0xAF, 0x43, 0xE3, -+ // Bytes 500 - 53f -+ 0x82, 0xB1, 0x43, 0xE3, 0x82, 0xB3, 0x43, 0xE3, -+ 0x82, 0xB5, 0x43, 0xE3, 0x82, 0xB7, 0x43, 0xE3, -+ 0x82, 0xB9, 0x43, 0xE3, 0x82, 0xBB, 0x43, 0xE3, -+ 0x82, 0xBD, 0x43, 0xE3, 0x82, 0xBF, 0x43, 0xE3, -+ 0x83, 0x81, 0x43, 0xE3, 0x83, 0x83, 0x43, 0xE3, -+ 0x83, 0x84, 0x43, 0xE3, 0x83, 0x86, 0x43, 0xE3, -+ 0x83, 0x88, 0x43, 0xE3, 0x83, 0x8A, 0x43, 0xE3, -+ 0x83, 0x8B, 0x43, 0xE3, 0x83, 0x8C, 0x43, 0xE3, -+ // Bytes 540 - 57f -+ 0x83, 0x8D, 0x43, 0xE3, 0x83, 0x8E, 0x43, 0xE3, -+ 0x83, 0x8F, 0x43, 0xE3, 0x83, 0x92, 0x43, 0xE3, -+ 0x83, 0x95, 0x43, 0xE3, 0x83, 0x98, 0x43, 0xE3, -+ 0x83, 0x9B, 0x43, 0xE3, 0x83, 0x9E, 0x43, 0xE3, -+ 0x83, 0x9F, 0x43, 0xE3, 0x83, 0xA0, 0x43, 0xE3, -+ 0x83, 0xA1, 0x43, 0xE3, 0x83, 0xA2, 0x43, 0xE3, -+ 0x83, 0xA3, 0x43, 0xE3, 0x83, 0xA4, 0x43, 0xE3, -+ 0x83, 0xA5, 0x43, 0xE3, 0x83, 0xA6, 0x43, 0xE3, -+ // Bytes 580 - 5bf -+ 0x83, 0xA7, 0x43, 0xE3, 0x83, 0xA8, 0x43, 0xE3, -+ 0x83, 0xA9, 0x43, 0xE3, 0x83, 0xAA, 0x43, 0xE3, -+ 0x83, 0xAB, 0x43, 0xE3, 0x83, 0xAC, 0x43, 0xE3, -+ 0x83, 0xAD, 0x43, 0xE3, 0x83, 0xAF, 0x43, 0xE3, -+ 0x83, 0xB0, 0x43, 0xE3, 0x83, 0xB1, 0x43, 0xE3, -+ 0x83, 0xB2, 0x43, 0xE3, 0x83, 0xB3, 0x43, 0xE3, -+ 0x83, 0xBB, 0x43, 0xE3, 0x83, 0xBC, 0x43, 0xE3, -+ 0x92, 0x9E, 0x43, 0xE3, 0x92, 0xB9, 0x43, 0xE3, -+ // Bytes 5c0 - 5ff -+ 0x92, 0xBB, 0x43, 0xE3, 0x93, 0x9F, 0x43, 0xE3, -+ 0x94, 0x95, 0x43, 0xE3, 0x9B, 0xAE, 0x43, 0xE3, -+ 0x9B, 0xBC, 0x43, 0xE3, 0x9E, 0x81, 0x43, 0xE3, -+ 0xA0, 0xAF, 0x43, 0xE3, 0xA1, 0xA2, 0x43, 0xE3, -+ 0xA1, 0xBC, 0x43, 0xE3, 0xA3, 0x87, 0x43, 0xE3, -+ 0xA3, 0xA3, 0x43, 0xE3, 0xA4, 0x9C, 0x43, 0xE3, -+ 0xA4, 0xBA, 0x43, 0xE3, 0xA8, 0xAE, 0x43, 0xE3, -+ 0xA9, 0xAC, 0x43, 0xE3, 0xAB, 0xA4, 0x43, 0xE3, -+ // Bytes 600 - 63f -+ 0xAC, 0x88, 0x43, 0xE3, 0xAC, 0x99, 0x43, 0xE3, -+ 0xAD, 0x89, 0x43, 0xE3, 0xAE, 0x9D, 0x43, 0xE3, -+ 0xB0, 0x98, 0x43, 0xE3, 0xB1, 0x8E, 0x43, 0xE3, -+ 0xB4, 0xB3, 0x43, 0xE3, 0xB6, 0x96, 0x43, 0xE3, -+ 0xBA, 0xAC, 0x43, 0xE3, 0xBA, 0xB8, 0x43, 0xE3, -+ 0xBC, 0x9B, 0x43, 0xE3, 0xBF, 0xBC, 0x43, 0xE4, -+ 0x80, 0x88, 0x43, 0xE4, 0x80, 0x98, 0x43, 0xE4, -+ 0x80, 0xB9, 0x43, 0xE4, 0x81, 0x86, 0x43, 0xE4, -+ // Bytes 640 - 67f -+ 0x82, 0x96, 0x43, 0xE4, 0x83, 0xA3, 0x43, 0xE4, -+ 0x84, 0xAF, 0x43, 0xE4, 0x88, 0x82, 0x43, 0xE4, -+ 0x88, 0xA7, 0x43, 0xE4, 0x8A, 0xA0, 0x43, 0xE4, -+ 0x8C, 0x81, 0x43, 0xE4, 0x8C, 0xB4, 0x43, 0xE4, -+ 0x8D, 0x99, 0x43, 0xE4, 0x8F, 0x95, 0x43, 0xE4, -+ 0x8F, 0x99, 0x43, 0xE4, 0x90, 0x8B, 0x43, 0xE4, -+ 0x91, 0xAB, 0x43, 0xE4, 0x94, 0xAB, 0x43, 0xE4, -+ 0x95, 0x9D, 0x43, 0xE4, 0x95, 0xA1, 0x43, 0xE4, -+ // Bytes 680 - 6bf -+ 0x95, 0xAB, 0x43, 0xE4, 0x97, 0x97, 0x43, 0xE4, -+ 0x97, 0xB9, 0x43, 0xE4, 0x98, 0xB5, 0x43, 0xE4, -+ 0x9A, 0xBE, 0x43, 0xE4, 0x9B, 0x87, 0x43, 0xE4, -+ 0xA6, 0x95, 0x43, 0xE4, 0xA7, 0xA6, 0x43, 0xE4, -+ 0xA9, 0xAE, 0x43, 0xE4, 0xA9, 0xB6, 0x43, 0xE4, -+ 0xAA, 0xB2, 0x43, 0xE4, 0xAC, 0xB3, 0x43, 0xE4, -+ 0xAF, 0x8E, 0x43, 0xE4, 0xB3, 0x8E, 0x43, 0xE4, -+ 0xB3, 0xAD, 0x43, 0xE4, 0xB3, 0xB8, 0x43, 0xE4, -+ // Bytes 6c0 - 6ff -+ 0xB5, 0x96, 0x43, 0xE4, 0xB8, 0x80, 0x43, 0xE4, -+ 0xB8, 0x81, 0x43, 0xE4, 0xB8, 0x83, 0x43, 0xE4, -+ 0xB8, 0x89, 0x43, 0xE4, 0xB8, 0x8A, 0x43, 0xE4, -+ 0xB8, 0x8B, 0x43, 0xE4, 0xB8, 0x8D, 0x43, 0xE4, -+ 0xB8, 0x99, 0x43, 0xE4, 0xB8, 0xA6, 0x43, 0xE4, -+ 0xB8, 0xA8, 0x43, 0xE4, 0xB8, 0xAD, 0x43, 0xE4, -+ 0xB8, 0xB2, 0x43, 0xE4, 0xB8, 0xB6, 0x43, 0xE4, -+ 0xB8, 0xB8, 0x43, 0xE4, 0xB8, 0xB9, 0x43, 0xE4, -+ // Bytes 700 - 73f -+ 0xB8, 0xBD, 0x43, 0xE4, 0xB8, 0xBF, 0x43, 0xE4, -+ 0xB9, 0x81, 0x43, 0xE4, 0xB9, 0x99, 0x43, 0xE4, -+ 0xB9, 0x9D, 0x43, 0xE4, 0xBA, 0x82, 0x43, 0xE4, -+ 0xBA, 0x85, 0x43, 0xE4, 0xBA, 0x86, 0x43, 0xE4, -+ 0xBA, 0x8C, 0x43, 0xE4, 0xBA, 0x94, 0x43, 0xE4, -+ 0xBA, 0xA0, 0x43, 0xE4, 0xBA, 0xA4, 0x43, 0xE4, -+ 0xBA, 0xAE, 0x43, 0xE4, 0xBA, 0xBA, 0x43, 0xE4, -+ 0xBB, 0x80, 0x43, 0xE4, 0xBB, 0x8C, 0x43, 0xE4, -+ // Bytes 740 - 77f -+ 0xBB, 0xA4, 0x43, 0xE4, 0xBC, 0x81, 0x43, 0xE4, -+ 0xBC, 0x91, 0x43, 0xE4, 0xBD, 0xA0, 0x43, 0xE4, -+ 0xBE, 0x80, 0x43, 0xE4, 0xBE, 0x86, 0x43, 0xE4, -+ 0xBE, 0x8B, 0x43, 0xE4, 0xBE, 0xAE, 0x43, 0xE4, -+ 0xBE, 0xBB, 0x43, 0xE4, 0xBE, 0xBF, 0x43, 0xE5, -+ 0x80, 0x82, 0x43, 0xE5, 0x80, 0xAB, 0x43, 0xE5, -+ 0x81, 0xBA, 0x43, 0xE5, 0x82, 0x99, 0x43, 0xE5, -+ 0x83, 0x8F, 0x43, 0xE5, 0x83, 0x9A, 0x43, 0xE5, -+ // Bytes 780 - 7bf -+ 0x83, 0xA7, 0x43, 0xE5, 0x84, 0xAA, 0x43, 0xE5, -+ 0x84, 0xBF, 0x43, 0xE5, 0x85, 0x80, 0x43, 0xE5, -+ 0x85, 0x85, 0x43, 0xE5, 0x85, 0x8D, 0x43, 0xE5, -+ 0x85, 0x94, 0x43, 0xE5, 0x85, 0xA4, 0x43, 0xE5, -+ 0x85, 0xA5, 0x43, 0xE5, 0x85, 0xA7, 0x43, 0xE5, -+ 0x85, 0xA8, 0x43, 0xE5, 0x85, 0xA9, 0x43, 0xE5, -+ 0x85, 0xAB, 0x43, 0xE5, 0x85, 0xAD, 0x43, 0xE5, -+ 0x85, 0xB7, 0x43, 0xE5, 0x86, 0x80, 0x43, 0xE5, -+ // Bytes 7c0 - 7ff -+ 0x86, 0x82, 0x43, 0xE5, 0x86, 0x8D, 0x43, 0xE5, -+ 0x86, 0x92, 0x43, 0xE5, 0x86, 0x95, 0x43, 0xE5, -+ 0x86, 0x96, 0x43, 0xE5, 0x86, 0x97, 0x43, 0xE5, -+ 0x86, 0x99, 0x43, 0xE5, 0x86, 0xA4, 0x43, 0xE5, -+ 0x86, 0xAB, 0x43, 0xE5, 0x86, 0xAC, 0x43, 0xE5, -+ 0x86, 0xB5, 0x43, 0xE5, 0x86, 0xB7, 0x43, 0xE5, -+ 0x87, 0x89, 0x43, 0xE5, 0x87, 0x8C, 0x43, 0xE5, -+ 0x87, 0x9C, 0x43, 0xE5, 0x87, 0x9E, 0x43, 0xE5, -+ // Bytes 800 - 83f -+ 0x87, 0xA0, 0x43, 0xE5, 0x87, 0xB5, 0x43, 0xE5, -+ 0x88, 0x80, 0x43, 0xE5, 0x88, 0x83, 0x43, 0xE5, -+ 0x88, 0x87, 0x43, 0xE5, 0x88, 0x97, 0x43, 0xE5, -+ 0x88, 0x9D, 0x43, 0xE5, 0x88, 0xA9, 0x43, 0xE5, -+ 0x88, 0xBA, 0x43, 0xE5, 0x88, 0xBB, 0x43, 0xE5, -+ 0x89, 0x86, 0x43, 0xE5, 0x89, 0x8D, 0x43, 0xE5, -+ 0x89, 0xB2, 0x43, 0xE5, 0x89, 0xB7, 0x43, 0xE5, -+ 0x8A, 0x89, 0x43, 0xE5, 0x8A, 0x9B, 0x43, 0xE5, -+ // Bytes 840 - 87f -+ 0x8A, 0xA3, 0x43, 0xE5, 0x8A, 0xB3, 0x43, 0xE5, -+ 0x8A, 0xB4, 0x43, 0xE5, 0x8B, 0x87, 0x43, 0xE5, -+ 0x8B, 0x89, 0x43, 0xE5, 0x8B, 0x92, 0x43, 0xE5, -+ 0x8B, 0x9E, 0x43, 0xE5, 0x8B, 0xA4, 0x43, 0xE5, -+ 0x8B, 0xB5, 0x43, 0xE5, 0x8B, 0xB9, 0x43, 0xE5, -+ 0x8B, 0xBA, 0x43, 0xE5, 0x8C, 0x85, 0x43, 0xE5, -+ 0x8C, 0x86, 0x43, 0xE5, 0x8C, 0x95, 0x43, 0xE5, -+ 0x8C, 0x97, 0x43, 0xE5, 0x8C, 0x9A, 0x43, 0xE5, -+ // Bytes 880 - 8bf -+ 0x8C, 0xB8, 0x43, 0xE5, 0x8C, 0xBB, 0x43, 0xE5, -+ 0x8C, 0xBF, 0x43, 0xE5, 0x8D, 0x81, 0x43, 0xE5, -+ 0x8D, 0x84, 0x43, 0xE5, 0x8D, 0x85, 0x43, 0xE5, -+ 0x8D, 0x89, 0x43, 0xE5, 0x8D, 0x91, 0x43, 0xE5, -+ 0x8D, 0x94, 0x43, 0xE5, 0x8D, 0x9A, 0x43, 0xE5, -+ 0x8D, 0x9C, 0x43, 0xE5, 0x8D, 0xA9, 0x43, 0xE5, -+ 0x8D, 0xB0, 0x43, 0xE5, 0x8D, 0xB3, 0x43, 0xE5, -+ 0x8D, 0xB5, 0x43, 0xE5, 0x8D, 0xBD, 0x43, 0xE5, -+ // Bytes 8c0 - 8ff -+ 0x8D, 0xBF, 0x43, 0xE5, 0x8E, 0x82, 0x43, 0xE5, -+ 0x8E, 0xB6, 0x43, 0xE5, 0x8F, 0x83, 0x43, 0xE5, -+ 0x8F, 0x88, 0x43, 0xE5, 0x8F, 0x8A, 0x43, 0xE5, -+ 0x8F, 0x8C, 0x43, 0xE5, 0x8F, 0x9F, 0x43, 0xE5, -+ 0x8F, 0xA3, 0x43, 0xE5, 0x8F, 0xA5, 0x43, 0xE5, -+ 0x8F, 0xAB, 0x43, 0xE5, 0x8F, 0xAF, 0x43, 0xE5, -+ 0x8F, 0xB1, 0x43, 0xE5, 0x8F, 0xB3, 0x43, 0xE5, -+ 0x90, 0x86, 0x43, 0xE5, 0x90, 0x88, 0x43, 0xE5, -+ // Bytes 900 - 93f -+ 0x90, 0x8D, 0x43, 0xE5, 0x90, 0x8F, 0x43, 0xE5, -+ 0x90, 0x9D, 0x43, 0xE5, 0x90, 0xB8, 0x43, 0xE5, -+ 0x90, 0xB9, 0x43, 0xE5, 0x91, 0x82, 0x43, 0xE5, -+ 0x91, 0x88, 0x43, 0xE5, 0x91, 0xA8, 0x43, 0xE5, -+ 0x92, 0x9E, 0x43, 0xE5, 0x92, 0xA2, 0x43, 0xE5, -+ 0x92, 0xBD, 0x43, 0xE5, 0x93, 0xB6, 0x43, 0xE5, -+ 0x94, 0x90, 0x43, 0xE5, 0x95, 0x8F, 0x43, 0xE5, -+ 0x95, 0x93, 0x43, 0xE5, 0x95, 0x95, 0x43, 0xE5, -+ // Bytes 940 - 97f -+ 0x95, 0xA3, 0x43, 0xE5, 0x96, 0x84, 0x43, 0xE5, -+ 0x96, 0x87, 0x43, 0xE5, 0x96, 0x99, 0x43, 0xE5, -+ 0x96, 0x9D, 0x43, 0xE5, 0x96, 0xAB, 0x43, 0xE5, -+ 0x96, 0xB3, 0x43, 0xE5, 0x96, 0xB6, 0x43, 0xE5, -+ 0x97, 0x80, 0x43, 0xE5, 0x97, 0x82, 0x43, 0xE5, -+ 0x97, 0xA2, 0x43, 0xE5, 0x98, 0x86, 0x43, 0xE5, -+ 0x99, 0x91, 0x43, 0xE5, 0x99, 0xA8, 0x43, 0xE5, -+ 0x99, 0xB4, 0x43, 0xE5, 0x9B, 0x97, 0x43, 0xE5, -+ // Bytes 980 - 9bf -+ 0x9B, 0x9B, 0x43, 0xE5, 0x9B, 0xB9, 0x43, 0xE5, -+ 0x9C, 0x96, 0x43, 0xE5, 0x9C, 0x97, 0x43, 0xE5, -+ 0x9C, 0x9F, 0x43, 0xE5, 0x9C, 0xB0, 0x43, 0xE5, -+ 0x9E, 0x8B, 0x43, 0xE5, 0x9F, 0x8E, 0x43, 0xE5, -+ 0x9F, 0xB4, 0x43, 0xE5, 0xA0, 0x8D, 0x43, 0xE5, -+ 0xA0, 0xB1, 0x43, 0xE5, 0xA0, 0xB2, 0x43, 0xE5, -+ 0xA1, 0x80, 0x43, 0xE5, 0xA1, 0x9A, 0x43, 0xE5, -+ 0xA1, 0x9E, 0x43, 0xE5, 0xA2, 0xA8, 0x43, 0xE5, -+ // Bytes 9c0 - 9ff -+ 0xA2, 0xAC, 0x43, 0xE5, 0xA2, 0xB3, 0x43, 0xE5, -+ 0xA3, 0x98, 0x43, 0xE5, 0xA3, 0x9F, 0x43, 0xE5, -+ 0xA3, 0xAB, 0x43, 0xE5, 0xA3, 0xAE, 0x43, 0xE5, -+ 0xA3, 0xB0, 0x43, 0xE5, 0xA3, 0xB2, 0x43, 0xE5, -+ 0xA3, 0xB7, 0x43, 0xE5, 0xA4, 0x82, 0x43, 0xE5, -+ 0xA4, 0x86, 0x43, 0xE5, 0xA4, 0x8A, 0x43, 0xE5, -+ 0xA4, 0x95, 0x43, 0xE5, 0xA4, 0x9A, 0x43, 0xE5, -+ 0xA4, 0x9C, 0x43, 0xE5, 0xA4, 0xA2, 0x43, 0xE5, -+ // Bytes a00 - a3f -+ 0xA4, 0xA7, 0x43, 0xE5, 0xA4, 0xA9, 0x43, 0xE5, -+ 0xA5, 0x84, 0x43, 0xE5, 0xA5, 0x88, 0x43, 0xE5, -+ 0xA5, 0x91, 0x43, 0xE5, 0xA5, 0x94, 0x43, 0xE5, -+ 0xA5, 0xA2, 0x43, 0xE5, 0xA5, 0xB3, 0x43, 0xE5, -+ 0xA7, 0x98, 0x43, 0xE5, 0xA7, 0xAC, 0x43, 0xE5, -+ 0xA8, 0x9B, 0x43, 0xE5, 0xA8, 0xA7, 0x43, 0xE5, -+ 0xA9, 0xA2, 0x43, 0xE5, 0xA9, 0xA6, 0x43, 0xE5, -+ 0xAA, 0xB5, 0x43, 0xE5, 0xAC, 0x88, 0x43, 0xE5, -+ // Bytes a40 - a7f -+ 0xAC, 0xA8, 0x43, 0xE5, 0xAC, 0xBE, 0x43, 0xE5, -+ 0xAD, 0x90, 0x43, 0xE5, 0xAD, 0x97, 0x43, 0xE5, -+ 0xAD, 0xA6, 0x43, 0xE5, 0xAE, 0x80, 0x43, 0xE5, -+ 0xAE, 0x85, 0x43, 0xE5, 0xAE, 0x97, 0x43, 0xE5, -+ 0xAF, 0x83, 0x43, 0xE5, 0xAF, 0x98, 0x43, 0xE5, -+ 0xAF, 0xA7, 0x43, 0xE5, 0xAF, 0xAE, 0x43, 0xE5, -+ 0xAF, 0xB3, 0x43, 0xE5, 0xAF, 0xB8, 0x43, 0xE5, -+ 0xAF, 0xBF, 0x43, 0xE5, 0xB0, 0x86, 0x43, 0xE5, -+ // Bytes a80 - abf -+ 0xB0, 0x8F, 0x43, 0xE5, 0xB0, 0xA2, 0x43, 0xE5, -+ 0xB0, 0xB8, 0x43, 0xE5, 0xB0, 0xBF, 0x43, 0xE5, -+ 0xB1, 0xA0, 0x43, 0xE5, 0xB1, 0xA2, 0x43, 0xE5, -+ 0xB1, 0xA4, 0x43, 0xE5, 0xB1, 0xA5, 0x43, 0xE5, -+ 0xB1, 0xAE, 0x43, 0xE5, 0xB1, 0xB1, 0x43, 0xE5, -+ 0xB2, 0x8D, 0x43, 0xE5, 0xB3, 0x80, 0x43, 0xE5, -+ 0xB4, 0x99, 0x43, 0xE5, 0xB5, 0x83, 0x43, 0xE5, -+ 0xB5, 0x90, 0x43, 0xE5, 0xB5, 0xAB, 0x43, 0xE5, -+ // Bytes ac0 - aff -+ 0xB5, 0xAE, 0x43, 0xE5, 0xB5, 0xBC, 0x43, 0xE5, -+ 0xB6, 0xB2, 0x43, 0xE5, 0xB6, 0xBA, 0x43, 0xE5, -+ 0xB7, 0x9B, 0x43, 0xE5, 0xB7, 0xA1, 0x43, 0xE5, -+ 0xB7, 0xA2, 0x43, 0xE5, 0xB7, 0xA5, 0x43, 0xE5, -+ 0xB7, 0xA6, 0x43, 0xE5, 0xB7, 0xB1, 0x43, 0xE5, -+ 0xB7, 0xBD, 0x43, 0xE5, 0xB7, 0xBE, 0x43, 0xE5, -+ 0xB8, 0xA8, 0x43, 0xE5, 0xB8, 0xBD, 0x43, 0xE5, -+ 0xB9, 0xA9, 0x43, 0xE5, 0xB9, 0xB2, 0x43, 0xE5, -+ // Bytes b00 - b3f -+ 0xB9, 0xB4, 0x43, 0xE5, 0xB9, 0xBA, 0x43, 0xE5, -+ 0xB9, 0xBC, 0x43, 0xE5, 0xB9, 0xBF, 0x43, 0xE5, -+ 0xBA, 0xA6, 0x43, 0xE5, 0xBA, 0xB0, 0x43, 0xE5, -+ 0xBA, 0xB3, 0x43, 0xE5, 0xBA, 0xB6, 0x43, 0xE5, -+ 0xBB, 0x89, 0x43, 0xE5, 0xBB, 0x8A, 0x43, 0xE5, -+ 0xBB, 0x92, 0x43, 0xE5, 0xBB, 0x93, 0x43, 0xE5, -+ 0xBB, 0x99, 0x43, 0xE5, 0xBB, 0xAC, 0x43, 0xE5, -+ 0xBB, 0xB4, 0x43, 0xE5, 0xBB, 0xBE, 0x43, 0xE5, -+ // Bytes b40 - b7f -+ 0xBC, 0x84, 0x43, 0xE5, 0xBC, 0x8B, 0x43, 0xE5, -+ 0xBC, 0x93, 0x43, 0xE5, 0xBC, 0xA2, 0x43, 0xE5, -+ 0xBD, 0x90, 0x43, 0xE5, 0xBD, 0x93, 0x43, 0xE5, -+ 0xBD, 0xA1, 0x43, 0xE5, 0xBD, 0xA2, 0x43, 0xE5, -+ 0xBD, 0xA9, 0x43, 0xE5, 0xBD, 0xAB, 0x43, 0xE5, -+ 0xBD, 0xB3, 0x43, 0xE5, 0xBE, 0x8B, 0x43, 0xE5, -+ 0xBE, 0x8C, 0x43, 0xE5, 0xBE, 0x97, 0x43, 0xE5, -+ 0xBE, 0x9A, 0x43, 0xE5, 0xBE, 0xA9, 0x43, 0xE5, -+ // Bytes b80 - bbf -+ 0xBE, 0xAD, 0x43, 0xE5, 0xBF, 0x83, 0x43, 0xE5, -+ 0xBF, 0x8D, 0x43, 0xE5, 0xBF, 0x97, 0x43, 0xE5, -+ 0xBF, 0xB5, 0x43, 0xE5, 0xBF, 0xB9, 0x43, 0xE6, -+ 0x80, 0x92, 0x43, 0xE6, 0x80, 0x9C, 0x43, 0xE6, -+ 0x81, 0xB5, 0x43, 0xE6, 0x82, 0x81, 0x43, 0xE6, -+ 0x82, 0x94, 0x43, 0xE6, 0x83, 0x87, 0x43, 0xE6, -+ 0x83, 0x98, 0x43, 0xE6, 0x83, 0xA1, 0x43, 0xE6, -+ 0x84, 0x88, 0x43, 0xE6, 0x85, 0x84, 0x43, 0xE6, -+ // Bytes bc0 - bff -+ 0x85, 0x88, 0x43, 0xE6, 0x85, 0x8C, 0x43, 0xE6, -+ 0x85, 0x8E, 0x43, 0xE6, 0x85, 0xA0, 0x43, 0xE6, -+ 0x85, 0xA8, 0x43, 0xE6, 0x85, 0xBA, 0x43, 0xE6, -+ 0x86, 0x8E, 0x43, 0xE6, 0x86, 0x90, 0x43, 0xE6, -+ 0x86, 0xA4, 0x43, 0xE6, 0x86, 0xAF, 0x43, 0xE6, -+ 0x86, 0xB2, 0x43, 0xE6, 0x87, 0x9E, 0x43, 0xE6, -+ 0x87, 0xB2, 0x43, 0xE6, 0x87, 0xB6, 0x43, 0xE6, -+ 0x88, 0x80, 0x43, 0xE6, 0x88, 0x88, 0x43, 0xE6, -+ // Bytes c00 - c3f -+ 0x88, 0x90, 0x43, 0xE6, 0x88, 0x9B, 0x43, 0xE6, -+ 0x88, 0xAE, 0x43, 0xE6, 0x88, 0xB4, 0x43, 0xE6, -+ 0x88, 0xB6, 0x43, 0xE6, 0x89, 0x8B, 0x43, 0xE6, -+ 0x89, 0x93, 0x43, 0xE6, 0x89, 0x9D, 0x43, 0xE6, -+ 0x8A, 0x95, 0x43, 0xE6, 0x8A, 0xB1, 0x43, 0xE6, -+ 0x8B, 0x89, 0x43, 0xE6, 0x8B, 0x8F, 0x43, 0xE6, -+ 0x8B, 0x93, 0x43, 0xE6, 0x8B, 0x94, 0x43, 0xE6, -+ 0x8B, 0xBC, 0x43, 0xE6, 0x8B, 0xBE, 0x43, 0xE6, -+ // Bytes c40 - c7f -+ 0x8C, 0x87, 0x43, 0xE6, 0x8C, 0xBD, 0x43, 0xE6, -+ 0x8D, 0x90, 0x43, 0xE6, 0x8D, 0x95, 0x43, 0xE6, -+ 0x8D, 0xA8, 0x43, 0xE6, 0x8D, 0xBB, 0x43, 0xE6, -+ 0x8E, 0x83, 0x43, 0xE6, 0x8E, 0xA0, 0x43, 0xE6, -+ 0x8E, 0xA9, 0x43, 0xE6, 0x8F, 0x84, 0x43, 0xE6, -+ 0x8F, 0x85, 0x43, 0xE6, 0x8F, 0xA4, 0x43, 0xE6, -+ 0x90, 0x9C, 0x43, 0xE6, 0x90, 0xA2, 0x43, 0xE6, -+ 0x91, 0x92, 0x43, 0xE6, 0x91, 0xA9, 0x43, 0xE6, -+ // Bytes c80 - cbf -+ 0x91, 0xB7, 0x43, 0xE6, 0x91, 0xBE, 0x43, 0xE6, -+ 0x92, 0x9A, 0x43, 0xE6, 0x92, 0x9D, 0x43, 0xE6, -+ 0x93, 0x84, 0x43, 0xE6, 0x94, 0xAF, 0x43, 0xE6, -+ 0x94, 0xB4, 0x43, 0xE6, 0x95, 0x8F, 0x43, 0xE6, -+ 0x95, 0x96, 0x43, 0xE6, 0x95, 0xAC, 0x43, 0xE6, -+ 0x95, 0xB8, 0x43, 0xE6, 0x96, 0x87, 0x43, 0xE6, -+ 0x96, 0x97, 0x43, 0xE6, 0x96, 0x99, 0x43, 0xE6, -+ 0x96, 0xA4, 0x43, 0xE6, 0x96, 0xB0, 0x43, 0xE6, -+ // Bytes cc0 - cff -+ 0x96, 0xB9, 0x43, 0xE6, 0x97, 0x85, 0x43, 0xE6, -+ 0x97, 0xA0, 0x43, 0xE6, 0x97, 0xA2, 0x43, 0xE6, -+ 0x97, 0xA3, 0x43, 0xE6, 0x97, 0xA5, 0x43, 0xE6, -+ 0x98, 0x93, 0x43, 0xE6, 0x98, 0xA0, 0x43, 0xE6, -+ 0x99, 0x89, 0x43, 0xE6, 0x99, 0xB4, 0x43, 0xE6, -+ 0x9A, 0x88, 0x43, 0xE6, 0x9A, 0x91, 0x43, 0xE6, -+ 0x9A, 0x9C, 0x43, 0xE6, 0x9A, 0xB4, 0x43, 0xE6, -+ 0x9B, 0x86, 0x43, 0xE6, 0x9B, 0xB0, 0x43, 0xE6, -+ // Bytes d00 - d3f -+ 0x9B, 0xB4, 0x43, 0xE6, 0x9B, 0xB8, 0x43, 0xE6, -+ 0x9C, 0x80, 0x43, 0xE6, 0x9C, 0x88, 0x43, 0xE6, -+ 0x9C, 0x89, 0x43, 0xE6, 0x9C, 0x97, 0x43, 0xE6, -+ 0x9C, 0x9B, 0x43, 0xE6, 0x9C, 0xA1, 0x43, 0xE6, -+ 0x9C, 0xA8, 0x43, 0xE6, 0x9D, 0x8E, 0x43, 0xE6, -+ 0x9D, 0x93, 0x43, 0xE6, 0x9D, 0x96, 0x43, 0xE6, -+ 0x9D, 0x9E, 0x43, 0xE6, 0x9D, 0xBB, 0x43, 0xE6, -+ 0x9E, 0x85, 0x43, 0xE6, 0x9E, 0x97, 0x43, 0xE6, -+ // Bytes d40 - d7f -+ 0x9F, 0xB3, 0x43, 0xE6, 0x9F, 0xBA, 0x43, 0xE6, -+ 0xA0, 0x97, 0x43, 0xE6, 0xA0, 0x9F, 0x43, 0xE6, -+ 0xA0, 0xAA, 0x43, 0xE6, 0xA1, 0x92, 0x43, 0xE6, -+ 0xA2, 0x81, 0x43, 0xE6, 0xA2, 0x85, 0x43, 0xE6, -+ 0xA2, 0x8E, 0x43, 0xE6, 0xA2, 0xA8, 0x43, 0xE6, -+ 0xA4, 0x94, 0x43, 0xE6, 0xA5, 0x82, 0x43, 0xE6, -+ 0xA6, 0xA3, 0x43, 0xE6, 0xA7, 0xAA, 0x43, 0xE6, -+ 0xA8, 0x82, 0x43, 0xE6, 0xA8, 0x93, 0x43, 0xE6, -+ // Bytes d80 - dbf -+ 0xAA, 0xA8, 0x43, 0xE6, 0xAB, 0x93, 0x43, 0xE6, -+ 0xAB, 0x9B, 0x43, 0xE6, 0xAC, 0x84, 0x43, 0xE6, -+ 0xAC, 0xA0, 0x43, 0xE6, 0xAC, 0xA1, 0x43, 0xE6, -+ 0xAD, 0x94, 0x43, 0xE6, 0xAD, 0xA2, 0x43, 0xE6, -+ 0xAD, 0xA3, 0x43, 0xE6, 0xAD, 0xB2, 0x43, 0xE6, -+ 0xAD, 0xB7, 0x43, 0xE6, 0xAD, 0xB9, 0x43, 0xE6, -+ 0xAE, 0x9F, 0x43, 0xE6, 0xAE, 0xAE, 0x43, 0xE6, -+ 0xAE, 0xB3, 0x43, 0xE6, 0xAE, 0xBA, 0x43, 0xE6, -+ // Bytes dc0 - dff -+ 0xAE, 0xBB, 0x43, 0xE6, 0xAF, 0x8B, 0x43, 0xE6, -+ 0xAF, 0x8D, 0x43, 0xE6, 0xAF, 0x94, 0x43, 0xE6, -+ 0xAF, 0x9B, 0x43, 0xE6, 0xB0, 0x8F, 0x43, 0xE6, -+ 0xB0, 0x94, 0x43, 0xE6, 0xB0, 0xB4, 0x43, 0xE6, -+ 0xB1, 0x8E, 0x43, 0xE6, 0xB1, 0xA7, 0x43, 0xE6, -+ 0xB2, 0x88, 0x43, 0xE6, 0xB2, 0xBF, 0x43, 0xE6, -+ 0xB3, 0x8C, 0x43, 0xE6, 0xB3, 0x8D, 0x43, 0xE6, -+ 0xB3, 0xA5, 0x43, 0xE6, 0xB3, 0xA8, 0x43, 0xE6, -+ // Bytes e00 - e3f -+ 0xB4, 0x96, 0x43, 0xE6, 0xB4, 0x9B, 0x43, 0xE6, -+ 0xB4, 0x9E, 0x43, 0xE6, 0xB4, 0xB4, 0x43, 0xE6, -+ 0xB4, 0xBE, 0x43, 0xE6, 0xB5, 0x81, 0x43, 0xE6, -+ 0xB5, 0xA9, 0x43, 0xE6, 0xB5, 0xAA, 0x43, 0xE6, -+ 0xB5, 0xB7, 0x43, 0xE6, 0xB5, 0xB8, 0x43, 0xE6, -+ 0xB6, 0x85, 0x43, 0xE6, 0xB7, 0x8B, 0x43, 0xE6, -+ 0xB7, 0x9A, 0x43, 0xE6, 0xB7, 0xAA, 0x43, 0xE6, -+ 0xB7, 0xB9, 0x43, 0xE6, 0xB8, 0x9A, 0x43, 0xE6, -+ // Bytes e40 - e7f -+ 0xB8, 0xAF, 0x43, 0xE6, 0xB9, 0xAE, 0x43, 0xE6, -+ 0xBA, 0x80, 0x43, 0xE6, 0xBA, 0x9C, 0x43, 0xE6, -+ 0xBA, 0xBA, 0x43, 0xE6, 0xBB, 0x87, 0x43, 0xE6, -+ 0xBB, 0x8B, 0x43, 0xE6, 0xBB, 0x91, 0x43, 0xE6, -+ 0xBB, 0x9B, 0x43, 0xE6, 0xBC, 0x8F, 0x43, 0xE6, -+ 0xBC, 0x94, 0x43, 0xE6, 0xBC, 0xA2, 0x43, 0xE6, -+ 0xBC, 0xA3, 0x43, 0xE6, 0xBD, 0xAE, 0x43, 0xE6, -+ 0xBF, 0x86, 0x43, 0xE6, 0xBF, 0xAB, 0x43, 0xE6, -+ // Bytes e80 - ebf -+ 0xBF, 0xBE, 0x43, 0xE7, 0x80, 0x9B, 0x43, 0xE7, -+ 0x80, 0x9E, 0x43, 0xE7, 0x80, 0xB9, 0x43, 0xE7, -+ 0x81, 0x8A, 0x43, 0xE7, 0x81, 0xAB, 0x43, 0xE7, -+ 0x81, 0xB0, 0x43, 0xE7, 0x81, 0xB7, 0x43, 0xE7, -+ 0x81, 0xBD, 0x43, 0xE7, 0x82, 0x99, 0x43, 0xE7, -+ 0x82, 0xAD, 0x43, 0xE7, 0x83, 0x88, 0x43, 0xE7, -+ 0x83, 0x99, 0x43, 0xE7, 0x84, 0xA1, 0x43, 0xE7, -+ 0x85, 0x85, 0x43, 0xE7, 0x85, 0x89, 0x43, 0xE7, -+ // Bytes ec0 - eff -+ 0x85, 0xAE, 0x43, 0xE7, 0x86, 0x9C, 0x43, 0xE7, -+ 0x87, 0x8E, 0x43, 0xE7, 0x87, 0x90, 0x43, 0xE7, -+ 0x88, 0x90, 0x43, 0xE7, 0x88, 0x9B, 0x43, 0xE7, -+ 0x88, 0xA8, 0x43, 0xE7, 0x88, 0xAA, 0x43, 0xE7, -+ 0x88, 0xAB, 0x43, 0xE7, 0x88, 0xB5, 0x43, 0xE7, -+ 0x88, 0xB6, 0x43, 0xE7, 0x88, 0xBB, 0x43, 0xE7, -+ 0x88, 0xBF, 0x43, 0xE7, 0x89, 0x87, 0x43, 0xE7, -+ 0x89, 0x90, 0x43, 0xE7, 0x89, 0x99, 0x43, 0xE7, -+ // Bytes f00 - f3f -+ 0x89, 0x9B, 0x43, 0xE7, 0x89, 0xA2, 0x43, 0xE7, -+ 0x89, 0xB9, 0x43, 0xE7, 0x8A, 0x80, 0x43, 0xE7, -+ 0x8A, 0x95, 0x43, 0xE7, 0x8A, 0xAC, 0x43, 0xE7, -+ 0x8A, 0xAF, 0x43, 0xE7, 0x8B, 0x80, 0x43, 0xE7, -+ 0x8B, 0xBC, 0x43, 0xE7, 0x8C, 0xAA, 0x43, 0xE7, -+ 0x8D, 0xB5, 0x43, 0xE7, 0x8D, 0xBA, 0x43, 0xE7, -+ 0x8E, 0x84, 0x43, 0xE7, 0x8E, 0x87, 0x43, 0xE7, -+ 0x8E, 0x89, 0x43, 0xE7, 0x8E, 0x8B, 0x43, 0xE7, -+ // Bytes f40 - f7f -+ 0x8E, 0xA5, 0x43, 0xE7, 0x8E, 0xB2, 0x43, 0xE7, -+ 0x8F, 0x9E, 0x43, 0xE7, 0x90, 0x86, 0x43, 0xE7, -+ 0x90, 0x89, 0x43, 0xE7, 0x90, 0xA2, 0x43, 0xE7, -+ 0x91, 0x87, 0x43, 0xE7, 0x91, 0x9C, 0x43, 0xE7, -+ 0x91, 0xA9, 0x43, 0xE7, 0x91, 0xB1, 0x43, 0xE7, -+ 0x92, 0x85, 0x43, 0xE7, 0x92, 0x89, 0x43, 0xE7, -+ 0x92, 0x98, 0x43, 0xE7, 0x93, 0x8A, 0x43, 0xE7, -+ 0x93, 0x9C, 0x43, 0xE7, 0x93, 0xA6, 0x43, 0xE7, -+ // Bytes f80 - fbf -+ 0x94, 0x86, 0x43, 0xE7, 0x94, 0x98, 0x43, 0xE7, -+ 0x94, 0x9F, 0x43, 0xE7, 0x94, 0xA4, 0x43, 0xE7, -+ 0x94, 0xA8, 0x43, 0xE7, 0x94, 0xB0, 0x43, 0xE7, -+ 0x94, 0xB2, 0x43, 0xE7, 0x94, 0xB3, 0x43, 0xE7, -+ 0x94, 0xB7, 0x43, 0xE7, 0x94, 0xBB, 0x43, 0xE7, -+ 0x94, 0xBE, 0x43, 0xE7, 0x95, 0x99, 0x43, 0xE7, -+ 0x95, 0xA5, 0x43, 0xE7, 0x95, 0xB0, 0x43, 0xE7, -+ 0x96, 0x8B, 0x43, 0xE7, 0x96, 0x92, 0x43, 0xE7, -+ // Bytes fc0 - fff -+ 0x97, 0xA2, 0x43, 0xE7, 0x98, 0x90, 0x43, 0xE7, -+ 0x98, 0x9D, 0x43, 0xE7, 0x98, 0x9F, 0x43, 0xE7, -+ 0x99, 0x82, 0x43, 0xE7, 0x99, 0xA9, 0x43, 0xE7, -+ 0x99, 0xB6, 0x43, 0xE7, 0x99, 0xBD, 0x43, 0xE7, -+ 0x9A, 0xAE, 0x43, 0xE7, 0x9A, 0xBF, 0x43, 0xE7, -+ 0x9B, 0x8A, 0x43, 0xE7, 0x9B, 0x9B, 0x43, 0xE7, -+ 0x9B, 0xA3, 0x43, 0xE7, 0x9B, 0xA7, 0x43, 0xE7, -+ 0x9B, 0xAE, 0x43, 0xE7, 0x9B, 0xB4, 0x43, 0xE7, -+ // Bytes 1000 - 103f -+ 0x9C, 0x81, 0x43, 0xE7, 0x9C, 0x9E, 0x43, 0xE7, -+ 0x9C, 0x9F, 0x43, 0xE7, 0x9D, 0x80, 0x43, 0xE7, -+ 0x9D, 0x8A, 0x43, 0xE7, 0x9E, 0x8B, 0x43, 0xE7, -+ 0x9E, 0xA7, 0x43, 0xE7, 0x9F, 0x9B, 0x43, 0xE7, -+ 0x9F, 0xA2, 0x43, 0xE7, 0x9F, 0xB3, 0x43, 0xE7, -+ 0xA1, 0x8E, 0x43, 0xE7, 0xA1, 0xAB, 0x43, 0xE7, -+ 0xA2, 0x8C, 0x43, 0xE7, 0xA2, 0x91, 0x43, 0xE7, -+ 0xA3, 0x8A, 0x43, 0xE7, 0xA3, 0x8C, 0x43, 0xE7, -+ // Bytes 1040 - 107f -+ 0xA3, 0xBB, 0x43, 0xE7, 0xA4, 0xAA, 0x43, 0xE7, -+ 0xA4, 0xBA, 0x43, 0xE7, 0xA4, 0xBC, 0x43, 0xE7, -+ 0xA4, 0xBE, 0x43, 0xE7, 0xA5, 0x88, 0x43, 0xE7, -+ 0xA5, 0x89, 0x43, 0xE7, 0xA5, 0x90, 0x43, 0xE7, -+ 0xA5, 0x96, 0x43, 0xE7, 0xA5, 0x9D, 0x43, 0xE7, -+ 0xA5, 0x9E, 0x43, 0xE7, 0xA5, 0xA5, 0x43, 0xE7, -+ 0xA5, 0xBF, 0x43, 0xE7, 0xA6, 0x81, 0x43, 0xE7, -+ 0xA6, 0x8D, 0x43, 0xE7, 0xA6, 0x8E, 0x43, 0xE7, -+ // Bytes 1080 - 10bf -+ 0xA6, 0x8F, 0x43, 0xE7, 0xA6, 0xAE, 0x43, 0xE7, -+ 0xA6, 0xB8, 0x43, 0xE7, 0xA6, 0xBE, 0x43, 0xE7, -+ 0xA7, 0x8A, 0x43, 0xE7, 0xA7, 0x98, 0x43, 0xE7, -+ 0xA7, 0xAB, 0x43, 0xE7, 0xA8, 0x9C, 0x43, 0xE7, -+ 0xA9, 0x80, 0x43, 0xE7, 0xA9, 0x8A, 0x43, 0xE7, -+ 0xA9, 0x8F, 0x43, 0xE7, 0xA9, 0xB4, 0x43, 0xE7, -+ 0xA9, 0xBA, 0x43, 0xE7, 0xAA, 0x81, 0x43, 0xE7, -+ 0xAA, 0xB1, 0x43, 0xE7, 0xAB, 0x8B, 0x43, 0xE7, -+ // Bytes 10c0 - 10ff -+ 0xAB, 0xAE, 0x43, 0xE7, 0xAB, 0xB9, 0x43, 0xE7, -+ 0xAC, 0xA0, 0x43, 0xE7, 0xAE, 0x8F, 0x43, 0xE7, -+ 0xAF, 0x80, 0x43, 0xE7, 0xAF, 0x86, 0x43, 0xE7, -+ 0xAF, 0x89, 0x43, 0xE7, 0xB0, 0xBE, 0x43, 0xE7, -+ 0xB1, 0xA0, 0x43, 0xE7, 0xB1, 0xB3, 0x43, 0xE7, -+ 0xB1, 0xBB, 0x43, 0xE7, 0xB2, 0x92, 0x43, 0xE7, -+ 0xB2, 0xBE, 0x43, 0xE7, 0xB3, 0x92, 0x43, 0xE7, -+ 0xB3, 0x96, 0x43, 0xE7, 0xB3, 0xA3, 0x43, 0xE7, -+ // Bytes 1100 - 113f -+ 0xB3, 0xA7, 0x43, 0xE7, 0xB3, 0xA8, 0x43, 0xE7, -+ 0xB3, 0xB8, 0x43, 0xE7, 0xB4, 0x80, 0x43, 0xE7, -+ 0xB4, 0x90, 0x43, 0xE7, 0xB4, 0xA2, 0x43, 0xE7, -+ 0xB4, 0xAF, 0x43, 0xE7, 0xB5, 0x82, 0x43, 0xE7, -+ 0xB5, 0x9B, 0x43, 0xE7, 0xB5, 0xA3, 0x43, 0xE7, -+ 0xB6, 0xA0, 0x43, 0xE7, 0xB6, 0xBE, 0x43, 0xE7, -+ 0xB7, 0x87, 0x43, 0xE7, 0xB7, 0xB4, 0x43, 0xE7, -+ 0xB8, 0x82, 0x43, 0xE7, 0xB8, 0x89, 0x43, 0xE7, -+ // Bytes 1140 - 117f -+ 0xB8, 0xB7, 0x43, 0xE7, 0xB9, 0x81, 0x43, 0xE7, -+ 0xB9, 0x85, 0x43, 0xE7, 0xBC, 0xB6, 0x43, 0xE7, -+ 0xBC, 0xBE, 0x43, 0xE7, 0xBD, 0x91, 0x43, 0xE7, -+ 0xBD, 0xB2, 0x43, 0xE7, 0xBD, 0xB9, 0x43, 0xE7, -+ 0xBD, 0xBA, 0x43, 0xE7, 0xBE, 0x85, 0x43, 0xE7, -+ 0xBE, 0x8A, 0x43, 0xE7, 0xBE, 0x95, 0x43, 0xE7, -+ 0xBE, 0x9A, 0x43, 0xE7, 0xBE, 0xBD, 0x43, 0xE7, -+ 0xBF, 0xBA, 0x43, 0xE8, 0x80, 0x81, 0x43, 0xE8, -+ // Bytes 1180 - 11bf -+ 0x80, 0x85, 0x43, 0xE8, 0x80, 0x8C, 0x43, 0xE8, -+ 0x80, 0x92, 0x43, 0xE8, 0x80, 0xB3, 0x43, 0xE8, -+ 0x81, 0x86, 0x43, 0xE8, 0x81, 0xA0, 0x43, 0xE8, -+ 0x81, 0xAF, 0x43, 0xE8, 0x81, 0xB0, 0x43, 0xE8, -+ 0x81, 0xBE, 0x43, 0xE8, 0x81, 0xBF, 0x43, 0xE8, -+ 0x82, 0x89, 0x43, 0xE8, 0x82, 0x8B, 0x43, 0xE8, -+ 0x82, 0xAD, 0x43, 0xE8, 0x82, 0xB2, 0x43, 0xE8, -+ 0x84, 0x83, 0x43, 0xE8, 0x84, 0xBE, 0x43, 0xE8, -+ // Bytes 11c0 - 11ff -+ 0x87, 0x98, 0x43, 0xE8, 0x87, 0xA3, 0x43, 0xE8, -+ 0x87, 0xA8, 0x43, 0xE8, 0x87, 0xAA, 0x43, 0xE8, -+ 0x87, 0xAD, 0x43, 0xE8, 0x87, 0xB3, 0x43, 0xE8, -+ 0x87, 0xBC, 0x43, 0xE8, 0x88, 0x81, 0x43, 0xE8, -+ 0x88, 0x84, 0x43, 0xE8, 0x88, 0x8C, 0x43, 0xE8, -+ 0x88, 0x98, 0x43, 0xE8, 0x88, 0x9B, 0x43, 0xE8, -+ 0x88, 0x9F, 0x43, 0xE8, 0x89, 0xAE, 0x43, 0xE8, -+ 0x89, 0xAF, 0x43, 0xE8, 0x89, 0xB2, 0x43, 0xE8, -+ // Bytes 1200 - 123f -+ 0x89, 0xB8, 0x43, 0xE8, 0x89, 0xB9, 0x43, 0xE8, -+ 0x8A, 0x8B, 0x43, 0xE8, 0x8A, 0x91, 0x43, 0xE8, -+ 0x8A, 0x9D, 0x43, 0xE8, 0x8A, 0xB1, 0x43, 0xE8, -+ 0x8A, 0xB3, 0x43, 0xE8, 0x8A, 0xBD, 0x43, 0xE8, -+ 0x8B, 0xA5, 0x43, 0xE8, 0x8B, 0xA6, 0x43, 0xE8, -+ 0x8C, 0x9D, 0x43, 0xE8, 0x8C, 0xA3, 0x43, 0xE8, -+ 0x8C, 0xB6, 0x43, 0xE8, 0x8D, 0x92, 0x43, 0xE8, -+ 0x8D, 0x93, 0x43, 0xE8, 0x8D, 0xA3, 0x43, 0xE8, -+ // Bytes 1240 - 127f -+ 0x8E, 0xAD, 0x43, 0xE8, 0x8E, 0xBD, 0x43, 0xE8, -+ 0x8F, 0x89, 0x43, 0xE8, 0x8F, 0x8A, 0x43, 0xE8, -+ 0x8F, 0x8C, 0x43, 0xE8, 0x8F, 0x9C, 0x43, 0xE8, -+ 0x8F, 0xA7, 0x43, 0xE8, 0x8F, 0xAF, 0x43, 0xE8, -+ 0x8F, 0xB1, 0x43, 0xE8, 0x90, 0xBD, 0x43, 0xE8, -+ 0x91, 0x89, 0x43, 0xE8, 0x91, 0x97, 0x43, 0xE8, -+ 0x93, 0xAE, 0x43, 0xE8, 0x93, 0xB1, 0x43, 0xE8, -+ 0x93, 0xB3, 0x43, 0xE8, 0x93, 0xBC, 0x43, 0xE8, -+ // Bytes 1280 - 12bf -+ 0x94, 0x96, 0x43, 0xE8, 0x95, 0xA4, 0x43, 0xE8, -+ 0x97, 0x8D, 0x43, 0xE8, 0x97, 0xBA, 0x43, 0xE8, -+ 0x98, 0x86, 0x43, 0xE8, 0x98, 0x92, 0x43, 0xE8, -+ 0x98, 0xAD, 0x43, 0xE8, 0x98, 0xBF, 0x43, 0xE8, -+ 0x99, 0x8D, 0x43, 0xE8, 0x99, 0x90, 0x43, 0xE8, -+ 0x99, 0x9C, 0x43, 0xE8, 0x99, 0xA7, 0x43, 0xE8, -+ 0x99, 0xA9, 0x43, 0xE8, 0x99, 0xAB, 0x43, 0xE8, -+ 0x9A, 0x88, 0x43, 0xE8, 0x9A, 0xA9, 0x43, 0xE8, -+ // Bytes 12c0 - 12ff -+ 0x9B, 0xA2, 0x43, 0xE8, 0x9C, 0x8E, 0x43, 0xE8, -+ 0x9C, 0xA8, 0x43, 0xE8, 0x9D, 0xAB, 0x43, 0xE8, -+ 0x9D, 0xB9, 0x43, 0xE8, 0x9E, 0x86, 0x43, 0xE8, -+ 0x9E, 0xBA, 0x43, 0xE8, 0x9F, 0xA1, 0x43, 0xE8, -+ 0xA0, 0x81, 0x43, 0xE8, 0xA0, 0x9F, 0x43, 0xE8, -+ 0xA1, 0x80, 0x43, 0xE8, 0xA1, 0x8C, 0x43, 0xE8, -+ 0xA1, 0xA0, 0x43, 0xE8, 0xA1, 0xA3, 0x43, 0xE8, -+ 0xA3, 0x82, 0x43, 0xE8, 0xA3, 0x8F, 0x43, 0xE8, -+ // Bytes 1300 - 133f -+ 0xA3, 0x97, 0x43, 0xE8, 0xA3, 0x9E, 0x43, 0xE8, -+ 0xA3, 0xA1, 0x43, 0xE8, 0xA3, 0xB8, 0x43, 0xE8, -+ 0xA3, 0xBA, 0x43, 0xE8, 0xA4, 0x90, 0x43, 0xE8, -+ 0xA5, 0x81, 0x43, 0xE8, 0xA5, 0xA4, 0x43, 0xE8, -+ 0xA5, 0xBE, 0x43, 0xE8, 0xA6, 0x86, 0x43, 0xE8, -+ 0xA6, 0x8B, 0x43, 0xE8, 0xA6, 0x96, 0x43, 0xE8, -+ 0xA7, 0x92, 0x43, 0xE8, 0xA7, 0xA3, 0x43, 0xE8, -+ 0xA8, 0x80, 0x43, 0xE8, 0xAA, 0xA0, 0x43, 0xE8, -+ // Bytes 1340 - 137f -+ 0xAA, 0xAA, 0x43, 0xE8, 0xAA, 0xBF, 0x43, 0xE8, -+ 0xAB, 0x8B, 0x43, 0xE8, 0xAB, 0x92, 0x43, 0xE8, -+ 0xAB, 0x96, 0x43, 0xE8, 0xAB, 0xAD, 0x43, 0xE8, -+ 0xAB, 0xB8, 0x43, 0xE8, 0xAB, 0xBE, 0x43, 0xE8, -+ 0xAC, 0x81, 0x43, 0xE8, 0xAC, 0xB9, 0x43, 0xE8, -+ 0xAD, 0x98, 0x43, 0xE8, 0xAE, 0x80, 0x43, 0xE8, -+ 0xAE, 0x8A, 0x43, 0xE8, 0xB0, 0xB7, 0x43, 0xE8, -+ 0xB1, 0x86, 0x43, 0xE8, 0xB1, 0x88, 0x43, 0xE8, -+ // Bytes 1380 - 13bf -+ 0xB1, 0x95, 0x43, 0xE8, 0xB1, 0xB8, 0x43, 0xE8, -+ 0xB2, 0x9D, 0x43, 0xE8, 0xB2, 0xA1, 0x43, 0xE8, -+ 0xB2, 0xA9, 0x43, 0xE8, 0xB2, 0xAB, 0x43, 0xE8, -+ 0xB3, 0x81, 0x43, 0xE8, 0xB3, 0x82, 0x43, 0xE8, -+ 0xB3, 0x87, 0x43, 0xE8, 0xB3, 0x88, 0x43, 0xE8, -+ 0xB3, 0x93, 0x43, 0xE8, 0xB4, 0x88, 0x43, 0xE8, -+ 0xB4, 0x9B, 0x43, 0xE8, 0xB5, 0xA4, 0x43, 0xE8, -+ 0xB5, 0xB0, 0x43, 0xE8, 0xB5, 0xB7, 0x43, 0xE8, -+ // Bytes 13c0 - 13ff -+ 0xB6, 0xB3, 0x43, 0xE8, 0xB6, 0xBC, 0x43, 0xE8, -+ 0xB7, 0x8B, 0x43, 0xE8, 0xB7, 0xAF, 0x43, 0xE8, -+ 0xB7, 0xB0, 0x43, 0xE8, 0xBA, 0xAB, 0x43, 0xE8, -+ 0xBB, 0x8A, 0x43, 0xE8, 0xBB, 0x94, 0x43, 0xE8, -+ 0xBC, 0xA6, 0x43, 0xE8, 0xBC, 0xAA, 0x43, 0xE8, -+ 0xBC, 0xB8, 0x43, 0xE8, 0xBC, 0xBB, 0x43, 0xE8, -+ 0xBD, 0xA2, 0x43, 0xE8, 0xBE, 0x9B, 0x43, 0xE8, -+ 0xBE, 0x9E, 0x43, 0xE8, 0xBE, 0xB0, 0x43, 0xE8, -+ // Bytes 1400 - 143f -+ 0xBE, 0xB5, 0x43, 0xE8, 0xBE, 0xB6, 0x43, 0xE9, -+ 0x80, 0xA3, 0x43, 0xE9, 0x80, 0xB8, 0x43, 0xE9, -+ 0x81, 0x8A, 0x43, 0xE9, 0x81, 0xA9, 0x43, 0xE9, -+ 0x81, 0xB2, 0x43, 0xE9, 0x81, 0xBC, 0x43, 0xE9, -+ 0x82, 0x8F, 0x43, 0xE9, 0x82, 0x91, 0x43, 0xE9, -+ 0x82, 0x94, 0x43, 0xE9, 0x83, 0x8E, 0x43, 0xE9, -+ 0x83, 0x9E, 0x43, 0xE9, 0x83, 0xB1, 0x43, 0xE9, -+ 0x83, 0xBD, 0x43, 0xE9, 0x84, 0x91, 0x43, 0xE9, -+ // Bytes 1440 - 147f -+ 0x84, 0x9B, 0x43, 0xE9, 0x85, 0x89, 0x43, 0xE9, -+ 0x85, 0x8D, 0x43, 0xE9, 0x85, 0xAA, 0x43, 0xE9, -+ 0x86, 0x99, 0x43, 0xE9, 0x86, 0xB4, 0x43, 0xE9, -+ 0x87, 0x86, 0x43, 0xE9, 0x87, 0x8C, 0x43, 0xE9, -+ 0x87, 0x8F, 0x43, 0xE9, 0x87, 0x91, 0x43, 0xE9, -+ 0x88, 0xB4, 0x43, 0xE9, 0x88, 0xB8, 0x43, 0xE9, -+ 0x89, 0xB6, 0x43, 0xE9, 0x89, 0xBC, 0x43, 0xE9, -+ 0x8B, 0x97, 0x43, 0xE9, 0x8B, 0x98, 0x43, 0xE9, -+ // Bytes 1480 - 14bf -+ 0x8C, 0x84, 0x43, 0xE9, 0x8D, 0x8A, 0x43, 0xE9, -+ 0x8F, 0xB9, 0x43, 0xE9, 0x90, 0x95, 0x43, 0xE9, -+ 0x95, 0xB7, 0x43, 0xE9, 0x96, 0x80, 0x43, 0xE9, -+ 0x96, 0x8B, 0x43, 0xE9, 0x96, 0xAD, 0x43, 0xE9, -+ 0x96, 0xB7, 0x43, 0xE9, 0x98, 0x9C, 0x43, 0xE9, -+ 0x98, 0xAE, 0x43, 0xE9, 0x99, 0x8B, 0x43, 0xE9, -+ 0x99, 0x8D, 0x43, 0xE9, 0x99, 0xB5, 0x43, 0xE9, -+ 0x99, 0xB8, 0x43, 0xE9, 0x99, 0xBC, 0x43, 0xE9, -+ // Bytes 14c0 - 14ff -+ 0x9A, 0x86, 0x43, 0xE9, 0x9A, 0xA3, 0x43, 0xE9, -+ 0x9A, 0xB6, 0x43, 0xE9, 0x9A, 0xB7, 0x43, 0xE9, -+ 0x9A, 0xB8, 0x43, 0xE9, 0x9A, 0xB9, 0x43, 0xE9, -+ 0x9B, 0x83, 0x43, 0xE9, 0x9B, 0xA2, 0x43, 0xE9, -+ 0x9B, 0xA3, 0x43, 0xE9, 0x9B, 0xA8, 0x43, 0xE9, -+ 0x9B, 0xB6, 0x43, 0xE9, 0x9B, 0xB7, 0x43, 0xE9, -+ 0x9C, 0xA3, 0x43, 0xE9, 0x9C, 0xB2, 0x43, 0xE9, -+ 0x9D, 0x88, 0x43, 0xE9, 0x9D, 0x91, 0x43, 0xE9, -+ // Bytes 1500 - 153f -+ 0x9D, 0x96, 0x43, 0xE9, 0x9D, 0x9E, 0x43, 0xE9, -+ 0x9D, 0xA2, 0x43, 0xE9, 0x9D, 0xA9, 0x43, 0xE9, -+ 0x9F, 0x8B, 0x43, 0xE9, 0x9F, 0x9B, 0x43, 0xE9, -+ 0x9F, 0xA0, 0x43, 0xE9, 0x9F, 0xAD, 0x43, 0xE9, -+ 0x9F, 0xB3, 0x43, 0xE9, 0x9F, 0xBF, 0x43, 0xE9, -+ 0xA0, 0x81, 0x43, 0xE9, 0xA0, 0x85, 0x43, 0xE9, -+ 0xA0, 0x8B, 0x43, 0xE9, 0xA0, 0x98, 0x43, 0xE9, -+ 0xA0, 0xA9, 0x43, 0xE9, 0xA0, 0xBB, 0x43, 0xE9, -+ // Bytes 1540 - 157f -+ 0xA1, 0x9E, 0x43, 0xE9, 0xA2, 0xA8, 0x43, 0xE9, -+ 0xA3, 0x9B, 0x43, 0xE9, 0xA3, 0x9F, 0x43, 0xE9, -+ 0xA3, 0xA2, 0x43, 0xE9, 0xA3, 0xAF, 0x43, 0xE9, -+ 0xA3, 0xBC, 0x43, 0xE9, 0xA4, 0xA8, 0x43, 0xE9, -+ 0xA4, 0xA9, 0x43, 0xE9, 0xA6, 0x96, 0x43, 0xE9, -+ 0xA6, 0x99, 0x43, 0xE9, 0xA6, 0xA7, 0x43, 0xE9, -+ 0xA6, 0xAC, 0x43, 0xE9, 0xA7, 0x82, 0x43, 0xE9, -+ 0xA7, 0xB1, 0x43, 0xE9, 0xA7, 0xBE, 0x43, 0xE9, -+ // Bytes 1580 - 15bf -+ 0xA9, 0xAA, 0x43, 0xE9, 0xAA, 0xA8, 0x43, 0xE9, -+ 0xAB, 0x98, 0x43, 0xE9, 0xAB, 0x9F, 0x43, 0xE9, -+ 0xAC, 0x92, 0x43, 0xE9, 0xAC, 0xA5, 0x43, 0xE9, -+ 0xAC, 0xAF, 0x43, 0xE9, 0xAC, 0xB2, 0x43, 0xE9, -+ 0xAC, 0xBC, 0x43, 0xE9, 0xAD, 0x9A, 0x43, 0xE9, -+ 0xAD, 0xAF, 0x43, 0xE9, 0xB1, 0x80, 0x43, 0xE9, -+ 0xB1, 0x97, 0x43, 0xE9, 0xB3, 0xA5, 0x43, 0xE9, -+ 0xB3, 0xBD, 0x43, 0xE9, 0xB5, 0xA7, 0x43, 0xE9, -+ // Bytes 15c0 - 15ff -+ 0xB6, 0xB4, 0x43, 0xE9, 0xB7, 0xBA, 0x43, 0xE9, -+ 0xB8, 0x9E, 0x43, 0xE9, 0xB9, 0xB5, 0x43, 0xE9, -+ 0xB9, 0xBF, 0x43, 0xE9, 0xBA, 0x97, 0x43, 0xE9, -+ 0xBA, 0x9F, 0x43, 0xE9, 0xBA, 0xA5, 0x43, 0xE9, -+ 0xBA, 0xBB, 0x43, 0xE9, 0xBB, 0x83, 0x43, 0xE9, -+ 0xBB, 0x8D, 0x43, 0xE9, 0xBB, 0x8E, 0x43, 0xE9, -+ 0xBB, 0x91, 0x43, 0xE9, 0xBB, 0xB9, 0x43, 0xE9, -+ 0xBB, 0xBD, 0x43, 0xE9, 0xBB, 0xBE, 0x43, 0xE9, -+ // Bytes 1600 - 163f -+ 0xBC, 0x85, 0x43, 0xE9, 0xBC, 0x8E, 0x43, 0xE9, -+ 0xBC, 0x8F, 0x43, 0xE9, 0xBC, 0x93, 0x43, 0xE9, -+ 0xBC, 0x96, 0x43, 0xE9, 0xBC, 0xA0, 0x43, 0xE9, -+ 0xBC, 0xBB, 0x43, 0xE9, 0xBD, 0x83, 0x43, 0xE9, -+ 0xBD, 0x8A, 0x43, 0xE9, 0xBD, 0x92, 0x43, 0xE9, -+ 0xBE, 0x8D, 0x43, 0xE9, 0xBE, 0x8E, 0x43, 0xE9, -+ 0xBE, 0x9C, 0x43, 0xE9, 0xBE, 0x9F, 0x43, 0xE9, -+ 0xBE, 0xA0, 0x43, 0xEA, 0x9C, 0xA7, 0x43, 0xEA, -+ // Bytes 1640 - 167f -+ 0x9D, 0xAF, 0x43, 0xEA, 0xAC, 0xB7, 0x43, 0xEA, -+ 0xAD, 0x92, 0x44, 0xF0, 0xA0, 0x84, 0xA2, 0x44, -+ 0xF0, 0xA0, 0x94, 0x9C, 0x44, 0xF0, 0xA0, 0x94, -+ 0xA5, 0x44, 0xF0, 0xA0, 0x95, 0x8B, 0x44, 0xF0, -+ 0xA0, 0x98, 0xBA, 0x44, 0xF0, 0xA0, 0xA0, 0x84, -+ 0x44, 0xF0, 0xA0, 0xA3, 0x9E, 0x44, 0xF0, 0xA0, -+ 0xA8, 0xAC, 0x44, 0xF0, 0xA0, 0xAD, 0xA3, 0x44, -+ 0xF0, 0xA1, 0x93, 0xA4, 0x44, 0xF0, 0xA1, 0x9A, -+ // Bytes 1680 - 16bf -+ 0xA8, 0x44, 0xF0, 0xA1, 0x9B, 0xAA, 0x44, 0xF0, -+ 0xA1, 0xA7, 0x88, 0x44, 0xF0, 0xA1, 0xAC, 0x98, -+ 0x44, 0xF0, 0xA1, 0xB4, 0x8B, 0x44, 0xF0, 0xA1, -+ 0xB7, 0xA4, 0x44, 0xF0, 0xA1, 0xB7, 0xA6, 0x44, -+ 0xF0, 0xA2, 0x86, 0x83, 0x44, 0xF0, 0xA2, 0x86, -+ 0x9F, 0x44, 0xF0, 0xA2, 0x8C, 0xB1, 0x44, 0xF0, -+ 0xA2, 0x9B, 0x94, 0x44, 0xF0, 0xA2, 0xA1, 0x84, -+ 0x44, 0xF0, 0xA2, 0xA1, 0x8A, 0x44, 0xF0, 0xA2, -+ // Bytes 16c0 - 16ff -+ 0xAC, 0x8C, 0x44, 0xF0, 0xA2, 0xAF, 0xB1, 0x44, -+ 0xF0, 0xA3, 0x80, 0x8A, 0x44, 0xF0, 0xA3, 0x8A, -+ 0xB8, 0x44, 0xF0, 0xA3, 0x8D, 0x9F, 0x44, 0xF0, -+ 0xA3, 0x8E, 0x93, 0x44, 0xF0, 0xA3, 0x8E, 0x9C, -+ 0x44, 0xF0, 0xA3, 0x8F, 0x83, 0x44, 0xF0, 0xA3, -+ 0x8F, 0x95, 0x44, 0xF0, 0xA3, 0x91, 0xAD, 0x44, -+ 0xF0, 0xA3, 0x9A, 0xA3, 0x44, 0xF0, 0xA3, 0xA2, -+ 0xA7, 0x44, 0xF0, 0xA3, 0xAA, 0x8D, 0x44, 0xF0, -+ // Bytes 1700 - 173f -+ 0xA3, 0xAB, 0xBA, 0x44, 0xF0, 0xA3, 0xB2, 0xBC, -+ 0x44, 0xF0, 0xA3, 0xB4, 0x9E, 0x44, 0xF0, 0xA3, -+ 0xBB, 0x91, 0x44, 0xF0, 0xA3, 0xBD, 0x9E, 0x44, -+ 0xF0, 0xA3, 0xBE, 0x8E, 0x44, 0xF0, 0xA4, 0x89, -+ 0xA3, 0x44, 0xF0, 0xA4, 0x8B, 0xAE, 0x44, 0xF0, -+ 0xA4, 0x8E, 0xAB, 0x44, 0xF0, 0xA4, 0x98, 0x88, -+ 0x44, 0xF0, 0xA4, 0x9C, 0xB5, 0x44, 0xF0, 0xA4, -+ 0xA0, 0x94, 0x44, 0xF0, 0xA4, 0xB0, 0xB6, 0x44, -+ // Bytes 1740 - 177f -+ 0xF0, 0xA4, 0xB2, 0x92, 0x44, 0xF0, 0xA4, 0xBE, -+ 0xA1, 0x44, 0xF0, 0xA4, 0xBE, 0xB8, 0x44, 0xF0, -+ 0xA5, 0x81, 0x84, 0x44, 0xF0, 0xA5, 0x83, 0xB2, -+ 0x44, 0xF0, 0xA5, 0x83, 0xB3, 0x44, 0xF0, 0xA5, -+ 0x84, 0x99, 0x44, 0xF0, 0xA5, 0x84, 0xB3, 0x44, -+ 0xF0, 0xA5, 0x89, 0x89, 0x44, 0xF0, 0xA5, 0x90, -+ 0x9D, 0x44, 0xF0, 0xA5, 0x98, 0xA6, 0x44, 0xF0, -+ 0xA5, 0x9A, 0x9A, 0x44, 0xF0, 0xA5, 0x9B, 0x85, -+ // Bytes 1780 - 17bf -+ 0x44, 0xF0, 0xA5, 0xA5, 0xBC, 0x44, 0xF0, 0xA5, -+ 0xAA, 0xA7, 0x44, 0xF0, 0xA5, 0xAE, 0xAB, 0x44, -+ 0xF0, 0xA5, 0xB2, 0x80, 0x44, 0xF0, 0xA5, 0xB3, -+ 0x90, 0x44, 0xF0, 0xA5, 0xBE, 0x86, 0x44, 0xF0, -+ 0xA6, 0x87, 0x9A, 0x44, 0xF0, 0xA6, 0x88, 0xA8, -+ 0x44, 0xF0, 0xA6, 0x89, 0x87, 0x44, 0xF0, 0xA6, -+ 0x8B, 0x99, 0x44, 0xF0, 0xA6, 0x8C, 0xBE, 0x44, -+ 0xF0, 0xA6, 0x93, 0x9A, 0x44, 0xF0, 0xA6, 0x94, -+ // Bytes 17c0 - 17ff -+ 0xA3, 0x44, 0xF0, 0xA6, 0x96, 0xA8, 0x44, 0xF0, -+ 0xA6, 0x9E, 0xA7, 0x44, 0xF0, 0xA6, 0x9E, 0xB5, -+ 0x44, 0xF0, 0xA6, 0xAC, 0xBC, 0x44, 0xF0, 0xA6, -+ 0xB0, 0xB6, 0x44, 0xF0, 0xA6, 0xB3, 0x95, 0x44, -+ 0xF0, 0xA6, 0xB5, 0xAB, 0x44, 0xF0, 0xA6, 0xBC, -+ 0xAC, 0x44, 0xF0, 0xA6, 0xBE, 0xB1, 0x44, 0xF0, -+ 0xA7, 0x83, 0x92, 0x44, 0xF0, 0xA7, 0x8F, 0x8A, -+ 0x44, 0xF0, 0xA7, 0x99, 0xA7, 0x44, 0xF0, 0xA7, -+ // Bytes 1800 - 183f -+ 0xA2, 0xAE, 0x44, 0xF0, 0xA7, 0xA5, 0xA6, 0x44, -+ 0xF0, 0xA7, 0xB2, 0xA8, 0x44, 0xF0, 0xA7, 0xBB, -+ 0x93, 0x44, 0xF0, 0xA7, 0xBC, 0xAF, 0x44, 0xF0, -+ 0xA8, 0x97, 0x92, 0x44, 0xF0, 0xA8, 0x97, 0xAD, -+ 0x44, 0xF0, 0xA8, 0x9C, 0xAE, 0x44, 0xF0, 0xA8, -+ 0xAF, 0xBA, 0x44, 0xF0, 0xA8, 0xB5, 0xB7, 0x44, -+ 0xF0, 0xA9, 0x85, 0x85, 0x44, 0xF0, 0xA9, 0x87, -+ 0x9F, 0x44, 0xF0, 0xA9, 0x88, 0x9A, 0x44, 0xF0, -+ // Bytes 1840 - 187f -+ 0xA9, 0x90, 0x8A, 0x44, 0xF0, 0xA9, 0x92, 0x96, -+ 0x44, 0xF0, 0xA9, 0x96, 0xB6, 0x44, 0xF0, 0xA9, -+ 0xAC, 0xB0, 0x44, 0xF0, 0xAA, 0x83, 0x8E, 0x44, -+ 0xF0, 0xAA, 0x84, 0x85, 0x44, 0xF0, 0xAA, 0x88, -+ 0x8E, 0x44, 0xF0, 0xAA, 0x8A, 0x91, 0x44, 0xF0, -+ 0xAA, 0x8E, 0x92, 0x44, 0xF0, 0xAA, 0x98, 0x80, -+ 0x42, 0x21, 0x21, 0x42, 0x21, 0x3F, 0x42, 0x2E, -+ 0x2E, 0x42, 0x30, 0x2C, 0x42, 0x30, 0x2E, 0x42, -+ // Bytes 1880 - 18bf -+ 0x31, 0x2C, 0x42, 0x31, 0x2E, 0x42, 0x31, 0x30, -+ 0x42, 0x31, 0x31, 0x42, 0x31, 0x32, 0x42, 0x31, -+ 0x33, 0x42, 0x31, 0x34, 0x42, 0x31, 0x35, 0x42, -+ 0x31, 0x36, 0x42, 0x31, 0x37, 0x42, 0x31, 0x38, -+ 0x42, 0x31, 0x39, 0x42, 0x32, 0x2C, 0x42, 0x32, -+ 0x2E, 0x42, 0x32, 0x30, 0x42, 0x32, 0x31, 0x42, -+ 0x32, 0x32, 0x42, 0x32, 0x33, 0x42, 0x32, 0x34, -+ 0x42, 0x32, 0x35, 0x42, 0x32, 0x36, 0x42, 0x32, -+ // Bytes 18c0 - 18ff -+ 0x37, 0x42, 0x32, 0x38, 0x42, 0x32, 0x39, 0x42, -+ 0x33, 0x2C, 0x42, 0x33, 0x2E, 0x42, 0x33, 0x30, -+ 0x42, 0x33, 0x31, 0x42, 0x33, 0x32, 0x42, 0x33, -+ 0x33, 0x42, 0x33, 0x34, 0x42, 0x33, 0x35, 0x42, -+ 0x33, 0x36, 0x42, 0x33, 0x37, 0x42, 0x33, 0x38, -+ 0x42, 0x33, 0x39, 0x42, 0x34, 0x2C, 0x42, 0x34, -+ 0x2E, 0x42, 0x34, 0x30, 0x42, 0x34, 0x31, 0x42, -+ 0x34, 0x32, 0x42, 0x34, 0x33, 0x42, 0x34, 0x34, -+ // Bytes 1900 - 193f -+ 0x42, 0x34, 0x35, 0x42, 0x34, 0x36, 0x42, 0x34, -+ 0x37, 0x42, 0x34, 0x38, 0x42, 0x34, 0x39, 0x42, -+ 0x35, 0x2C, 0x42, 0x35, 0x2E, 0x42, 0x35, 0x30, -+ 0x42, 0x36, 0x2C, 0x42, 0x36, 0x2E, 0x42, 0x37, -+ 0x2C, 0x42, 0x37, 0x2E, 0x42, 0x38, 0x2C, 0x42, -+ 0x38, 0x2E, 0x42, 0x39, 0x2C, 0x42, 0x39, 0x2E, -+ 0x42, 0x3D, 0x3D, 0x42, 0x3F, 0x21, 0x42, 0x3F, -+ 0x3F, 0x42, 0x41, 0x55, 0x42, 0x42, 0x71, 0x42, -+ // Bytes 1940 - 197f -+ 0x43, 0x44, 0x42, 0x44, 0x4A, 0x42, 0x44, 0x5A, -+ 0x42, 0x44, 0x7A, 0x42, 0x47, 0x42, 0x42, 0x47, -+ 0x79, 0x42, 0x48, 0x50, 0x42, 0x48, 0x56, 0x42, -+ 0x48, 0x67, 0x42, 0x48, 0x7A, 0x42, 0x49, 0x49, -+ 0x42, 0x49, 0x4A, 0x42, 0x49, 0x55, 0x42, 0x49, -+ 0x56, 0x42, 0x49, 0x58, 0x42, 0x4B, 0x42, 0x42, -+ 0x4B, 0x4B, 0x42, 0x4B, 0x4D, 0x42, 0x4C, 0x4A, -+ 0x42, 0x4C, 0x6A, 0x42, 0x4D, 0x42, 0x42, 0x4D, -+ // Bytes 1980 - 19bf -+ 0x43, 0x42, 0x4D, 0x44, 0x42, 0x4D, 0x52, 0x42, -+ 0x4D, 0x56, 0x42, 0x4D, 0x57, 0x42, 0x4E, 0x4A, -+ 0x42, 0x4E, 0x6A, 0x42, 0x4E, 0x6F, 0x42, 0x50, -+ 0x48, 0x42, 0x50, 0x52, 0x42, 0x50, 0x61, 0x42, -+ 0x52, 0x73, 0x42, 0x53, 0x44, 0x42, 0x53, 0x4D, -+ 0x42, 0x53, 0x53, 0x42, 0x53, 0x76, 0x42, 0x54, -+ 0x4D, 0x42, 0x56, 0x49, 0x42, 0x57, 0x43, 0x42, -+ 0x57, 0x5A, 0x42, 0x57, 0x62, 0x42, 0x58, 0x49, -+ // Bytes 19c0 - 19ff -+ 0x42, 0x63, 0x63, 0x42, 0x63, 0x64, 0x42, 0x63, -+ 0x6D, 0x42, 0x64, 0x42, 0x42, 0x64, 0x61, 0x42, -+ 0x64, 0x6C, 0x42, 0x64, 0x6D, 0x42, 0x64, 0x7A, -+ 0x42, 0x65, 0x56, 0x42, 0x66, 0x66, 0x42, 0x66, -+ 0x69, 0x42, 0x66, 0x6C, 0x42, 0x66, 0x6D, 0x42, -+ 0x68, 0x61, 0x42, 0x69, 0x69, 0x42, 0x69, 0x6A, -+ 0x42, 0x69, 0x6E, 0x42, 0x69, 0x76, 0x42, 0x69, -+ 0x78, 0x42, 0x6B, 0x41, 0x42, 0x6B, 0x56, 0x42, -+ // Bytes 1a00 - 1a3f -+ 0x6B, 0x57, 0x42, 0x6B, 0x67, 0x42, 0x6B, 0x6C, -+ 0x42, 0x6B, 0x6D, 0x42, 0x6B, 0x74, 0x42, 0x6C, -+ 0x6A, 0x42, 0x6C, 0x6D, 0x42, 0x6C, 0x6E, 0x42, -+ 0x6C, 0x78, 0x42, 0x6D, 0x32, 0x42, 0x6D, 0x33, -+ 0x42, 0x6D, 0x41, 0x42, 0x6D, 0x56, 0x42, 0x6D, -+ 0x57, 0x42, 0x6D, 0x62, 0x42, 0x6D, 0x67, 0x42, -+ 0x6D, 0x6C, 0x42, 0x6D, 0x6D, 0x42, 0x6D, 0x73, -+ 0x42, 0x6E, 0x41, 0x42, 0x6E, 0x46, 0x42, 0x6E, -+ // Bytes 1a40 - 1a7f -+ 0x56, 0x42, 0x6E, 0x57, 0x42, 0x6E, 0x6A, 0x42, -+ 0x6E, 0x6D, 0x42, 0x6E, 0x73, 0x42, 0x6F, 0x56, -+ 0x42, 0x70, 0x41, 0x42, 0x70, 0x46, 0x42, 0x70, -+ 0x56, 0x42, 0x70, 0x57, 0x42, 0x70, 0x63, 0x42, -+ 0x70, 0x73, 0x42, 0x73, 0x72, 0x42, 0x73, 0x74, -+ 0x42, 0x76, 0x69, 0x42, 0x78, 0x69, 0x43, 0x28, -+ 0x31, 0x29, 0x43, 0x28, 0x32, 0x29, 0x43, 0x28, -+ 0x33, 0x29, 0x43, 0x28, 0x34, 0x29, 0x43, 0x28, -+ // Bytes 1a80 - 1abf -+ 0x35, 0x29, 0x43, 0x28, 0x36, 0x29, 0x43, 0x28, -+ 0x37, 0x29, 0x43, 0x28, 0x38, 0x29, 0x43, 0x28, -+ 0x39, 0x29, 0x43, 0x28, 0x41, 0x29, 0x43, 0x28, -+ 0x42, 0x29, 0x43, 0x28, 0x43, 0x29, 0x43, 0x28, -+ 0x44, 0x29, 0x43, 0x28, 0x45, 0x29, 0x43, 0x28, -+ 0x46, 0x29, 0x43, 0x28, 0x47, 0x29, 0x43, 0x28, -+ 0x48, 0x29, 0x43, 0x28, 0x49, 0x29, 0x43, 0x28, -+ 0x4A, 0x29, 0x43, 0x28, 0x4B, 0x29, 0x43, 0x28, -+ // Bytes 1ac0 - 1aff -+ 0x4C, 0x29, 0x43, 0x28, 0x4D, 0x29, 0x43, 0x28, -+ 0x4E, 0x29, 0x43, 0x28, 0x4F, 0x29, 0x43, 0x28, -+ 0x50, 0x29, 0x43, 0x28, 0x51, 0x29, 0x43, 0x28, -+ 0x52, 0x29, 0x43, 0x28, 0x53, 0x29, 0x43, 0x28, -+ 0x54, 0x29, 0x43, 0x28, 0x55, 0x29, 0x43, 0x28, -+ 0x56, 0x29, 0x43, 0x28, 0x57, 0x29, 0x43, 0x28, -+ 0x58, 0x29, 0x43, 0x28, 0x59, 0x29, 0x43, 0x28, -+ 0x5A, 0x29, 0x43, 0x28, 0x61, 0x29, 0x43, 0x28, -+ // Bytes 1b00 - 1b3f -+ 0x62, 0x29, 0x43, 0x28, 0x63, 0x29, 0x43, 0x28, -+ 0x64, 0x29, 0x43, 0x28, 0x65, 0x29, 0x43, 0x28, -+ 0x66, 0x29, 0x43, 0x28, 0x67, 0x29, 0x43, 0x28, -+ 0x68, 0x29, 0x43, 0x28, 0x69, 0x29, 0x43, 0x28, -+ 0x6A, 0x29, 0x43, 0x28, 0x6B, 0x29, 0x43, 0x28, -+ 0x6C, 0x29, 0x43, 0x28, 0x6D, 0x29, 0x43, 0x28, -+ 0x6E, 0x29, 0x43, 0x28, 0x6F, 0x29, 0x43, 0x28, -+ 0x70, 0x29, 0x43, 0x28, 0x71, 0x29, 0x43, 0x28, -+ // Bytes 1b40 - 1b7f -+ 0x72, 0x29, 0x43, 0x28, 0x73, 0x29, 0x43, 0x28, -+ 0x74, 0x29, 0x43, 0x28, 0x75, 0x29, 0x43, 0x28, -+ 0x76, 0x29, 0x43, 0x28, 0x77, 0x29, 0x43, 0x28, -+ 0x78, 0x29, 0x43, 0x28, 0x79, 0x29, 0x43, 0x28, -+ 0x7A, 0x29, 0x43, 0x2E, 0x2E, 0x2E, 0x43, 0x31, -+ 0x30, 0x2E, 0x43, 0x31, 0x31, 0x2E, 0x43, 0x31, -+ 0x32, 0x2E, 0x43, 0x31, 0x33, 0x2E, 0x43, 0x31, -+ 0x34, 0x2E, 0x43, 0x31, 0x35, 0x2E, 0x43, 0x31, -+ // Bytes 1b80 - 1bbf -+ 0x36, 0x2E, 0x43, 0x31, 0x37, 0x2E, 0x43, 0x31, -+ 0x38, 0x2E, 0x43, 0x31, 0x39, 0x2E, 0x43, 0x32, -+ 0x30, 0x2E, 0x43, 0x3A, 0x3A, 0x3D, 0x43, 0x3D, -+ 0x3D, 0x3D, 0x43, 0x43, 0x6F, 0x2E, 0x43, 0x46, -+ 0x41, 0x58, 0x43, 0x47, 0x48, 0x7A, 0x43, 0x47, -+ 0x50, 0x61, 0x43, 0x49, 0x49, 0x49, 0x43, 0x4C, -+ 0x54, 0x44, 0x43, 0x4C, 0xC2, 0xB7, 0x43, 0x4D, -+ 0x48, 0x7A, 0x43, 0x4D, 0x50, 0x61, 0x43, 0x4D, -+ // Bytes 1bc0 - 1bff -+ 0xCE, 0xA9, 0x43, 0x50, 0x50, 0x4D, 0x43, 0x50, -+ 0x50, 0x56, 0x43, 0x50, 0x54, 0x45, 0x43, 0x54, -+ 0x45, 0x4C, 0x43, 0x54, 0x48, 0x7A, 0x43, 0x56, -+ 0x49, 0x49, 0x43, 0x58, 0x49, 0x49, 0x43, 0x61, -+ 0x2F, 0x63, 0x43, 0x61, 0x2F, 0x73, 0x43, 0x61, -+ 0xCA, 0xBE, 0x43, 0x62, 0x61, 0x72, 0x43, 0x63, -+ 0x2F, 0x6F, 0x43, 0x63, 0x2F, 0x75, 0x43, 0x63, -+ 0x61, 0x6C, 0x43, 0x63, 0x6D, 0x32, 0x43, 0x63, -+ // Bytes 1c00 - 1c3f -+ 0x6D, 0x33, 0x43, 0x64, 0x6D, 0x32, 0x43, 0x64, -+ 0x6D, 0x33, 0x43, 0x65, 0x72, 0x67, 0x43, 0x66, -+ 0x66, 0x69, 0x43, 0x66, 0x66, 0x6C, 0x43, 0x67, -+ 0x61, 0x6C, 0x43, 0x68, 0x50, 0x61, 0x43, 0x69, -+ 0x69, 0x69, 0x43, 0x6B, 0x48, 0x7A, 0x43, 0x6B, -+ 0x50, 0x61, 0x43, 0x6B, 0x6D, 0x32, 0x43, 0x6B, -+ 0x6D, 0x33, 0x43, 0x6B, 0xCE, 0xA9, 0x43, 0x6C, -+ 0x6F, 0x67, 0x43, 0x6C, 0xC2, 0xB7, 0x43, 0x6D, -+ // Bytes 1c40 - 1c7f -+ 0x69, 0x6C, 0x43, 0x6D, 0x6D, 0x32, 0x43, 0x6D, -+ 0x6D, 0x33, 0x43, 0x6D, 0x6F, 0x6C, 0x43, 0x72, -+ 0x61, 0x64, 0x43, 0x76, 0x69, 0x69, 0x43, 0x78, -+ 0x69, 0x69, 0x43, 0xC2, 0xB0, 0x43, 0x43, 0xC2, -+ 0xB0, 0x46, 0x43, 0xCA, 0xBC, 0x6E, 0x43, 0xCE, -+ 0xBC, 0x41, 0x43, 0xCE, 0xBC, 0x46, 0x43, 0xCE, -+ 0xBC, 0x56, 0x43, 0xCE, 0xBC, 0x57, 0x43, 0xCE, -+ 0xBC, 0x67, 0x43, 0xCE, 0xBC, 0x6C, 0x43, 0xCE, -+ // Bytes 1c80 - 1cbf -+ 0xBC, 0x6D, 0x43, 0xCE, 0xBC, 0x73, 0x44, 0x28, -+ 0x31, 0x30, 0x29, 0x44, 0x28, 0x31, 0x31, 0x29, -+ 0x44, 0x28, 0x31, 0x32, 0x29, 0x44, 0x28, 0x31, -+ 0x33, 0x29, 0x44, 0x28, 0x31, 0x34, 0x29, 0x44, -+ 0x28, 0x31, 0x35, 0x29, 0x44, 0x28, 0x31, 0x36, -+ 0x29, 0x44, 0x28, 0x31, 0x37, 0x29, 0x44, 0x28, -+ 0x31, 0x38, 0x29, 0x44, 0x28, 0x31, 0x39, 0x29, -+ 0x44, 0x28, 0x32, 0x30, 0x29, 0x44, 0x30, 0xE7, -+ // Bytes 1cc0 - 1cff -+ 0x82, 0xB9, 0x44, 0x31, 0xE2, 0x81, 0x84, 0x44, -+ 0x31, 0xE6, 0x97, 0xA5, 0x44, 0x31, 0xE6, 0x9C, -+ 0x88, 0x44, 0x31, 0xE7, 0x82, 0xB9, 0x44, 0x32, -+ 0xE6, 0x97, 0xA5, 0x44, 0x32, 0xE6, 0x9C, 0x88, -+ 0x44, 0x32, 0xE7, 0x82, 0xB9, 0x44, 0x33, 0xE6, -+ 0x97, 0xA5, 0x44, 0x33, 0xE6, 0x9C, 0x88, 0x44, -+ 0x33, 0xE7, 0x82, 0xB9, 0x44, 0x34, 0xE6, 0x97, -+ 0xA5, 0x44, 0x34, 0xE6, 0x9C, 0x88, 0x44, 0x34, -+ // Bytes 1d00 - 1d3f -+ 0xE7, 0x82, 0xB9, 0x44, 0x35, 0xE6, 0x97, 0xA5, -+ 0x44, 0x35, 0xE6, 0x9C, 0x88, 0x44, 0x35, 0xE7, -+ 0x82, 0xB9, 0x44, 0x36, 0xE6, 0x97, 0xA5, 0x44, -+ 0x36, 0xE6, 0x9C, 0x88, 0x44, 0x36, 0xE7, 0x82, -+ 0xB9, 0x44, 0x37, 0xE6, 0x97, 0xA5, 0x44, 0x37, -+ 0xE6, 0x9C, 0x88, 0x44, 0x37, 0xE7, 0x82, 0xB9, -+ 0x44, 0x38, 0xE6, 0x97, 0xA5, 0x44, 0x38, 0xE6, -+ 0x9C, 0x88, 0x44, 0x38, 0xE7, 0x82, 0xB9, 0x44, -+ // Bytes 1d40 - 1d7f -+ 0x39, 0xE6, 0x97, 0xA5, 0x44, 0x39, 0xE6, 0x9C, -+ 0x88, 0x44, 0x39, 0xE7, 0x82, 0xB9, 0x44, 0x56, -+ 0x49, 0x49, 0x49, 0x44, 0x61, 0x2E, 0x6D, 0x2E, -+ 0x44, 0x6B, 0x63, 0x61, 0x6C, 0x44, 0x70, 0x2E, -+ 0x6D, 0x2E, 0x44, 0x76, 0x69, 0x69, 0x69, 0x44, -+ 0xD5, 0xA5, 0xD6, 0x82, 0x44, 0xD5, 0xB4, 0xD5, -+ 0xA5, 0x44, 0xD5, 0xB4, 0xD5, 0xAB, 0x44, 0xD5, -+ 0xB4, 0xD5, 0xAD, 0x44, 0xD5, 0xB4, 0xD5, 0xB6, -+ // Bytes 1d80 - 1dbf -+ 0x44, 0xD5, 0xBE, 0xD5, 0xB6, 0x44, 0xD7, 0x90, -+ 0xD7, 0x9C, 0x44, 0xD8, 0xA7, 0xD9, 0xB4, 0x44, -+ 0xD8, 0xA8, 0xD8, 0xAC, 0x44, 0xD8, 0xA8, 0xD8, -+ 0xAD, 0x44, 0xD8, 0xA8, 0xD8, 0xAE, 0x44, 0xD8, -+ 0xA8, 0xD8, 0xB1, 0x44, 0xD8, 0xA8, 0xD8, 0xB2, -+ 0x44, 0xD8, 0xA8, 0xD9, 0x85, 0x44, 0xD8, 0xA8, -+ 0xD9, 0x86, 0x44, 0xD8, 0xA8, 0xD9, 0x87, 0x44, -+ 0xD8, 0xA8, 0xD9, 0x89, 0x44, 0xD8, 0xA8, 0xD9, -+ // Bytes 1dc0 - 1dff -+ 0x8A, 0x44, 0xD8, 0xAA, 0xD8, 0xAC, 0x44, 0xD8, -+ 0xAA, 0xD8, 0xAD, 0x44, 0xD8, 0xAA, 0xD8, 0xAE, -+ 0x44, 0xD8, 0xAA, 0xD8, 0xB1, 0x44, 0xD8, 0xAA, -+ 0xD8, 0xB2, 0x44, 0xD8, 0xAA, 0xD9, 0x85, 0x44, -+ 0xD8, 0xAA, 0xD9, 0x86, 0x44, 0xD8, 0xAA, 0xD9, -+ 0x87, 0x44, 0xD8, 0xAA, 0xD9, 0x89, 0x44, 0xD8, -+ 0xAA, 0xD9, 0x8A, 0x44, 0xD8, 0xAB, 0xD8, 0xAC, -+ 0x44, 0xD8, 0xAB, 0xD8, 0xB1, 0x44, 0xD8, 0xAB, -+ // Bytes 1e00 - 1e3f -+ 0xD8, 0xB2, 0x44, 0xD8, 0xAB, 0xD9, 0x85, 0x44, -+ 0xD8, 0xAB, 0xD9, 0x86, 0x44, 0xD8, 0xAB, 0xD9, -+ 0x87, 0x44, 0xD8, 0xAB, 0xD9, 0x89, 0x44, 0xD8, -+ 0xAB, 0xD9, 0x8A, 0x44, 0xD8, 0xAC, 0xD8, 0xAD, -+ 0x44, 0xD8, 0xAC, 0xD9, 0x85, 0x44, 0xD8, 0xAC, -+ 0xD9, 0x89, 0x44, 0xD8, 0xAC, 0xD9, 0x8A, 0x44, -+ 0xD8, 0xAD, 0xD8, 0xAC, 0x44, 0xD8, 0xAD, 0xD9, -+ 0x85, 0x44, 0xD8, 0xAD, 0xD9, 0x89, 0x44, 0xD8, -+ // Bytes 1e40 - 1e7f -+ 0xAD, 0xD9, 0x8A, 0x44, 0xD8, 0xAE, 0xD8, 0xAC, -+ 0x44, 0xD8, 0xAE, 0xD8, 0xAD, 0x44, 0xD8, 0xAE, -+ 0xD9, 0x85, 0x44, 0xD8, 0xAE, 0xD9, 0x89, 0x44, -+ 0xD8, 0xAE, 0xD9, 0x8A, 0x44, 0xD8, 0xB3, 0xD8, -+ 0xAC, 0x44, 0xD8, 0xB3, 0xD8, 0xAD, 0x44, 0xD8, -+ 0xB3, 0xD8, 0xAE, 0x44, 0xD8, 0xB3, 0xD8, 0xB1, -+ 0x44, 0xD8, 0xB3, 0xD9, 0x85, 0x44, 0xD8, 0xB3, -+ 0xD9, 0x87, 0x44, 0xD8, 0xB3, 0xD9, 0x89, 0x44, -+ // Bytes 1e80 - 1ebf -+ 0xD8, 0xB3, 0xD9, 0x8A, 0x44, 0xD8, 0xB4, 0xD8, -+ 0xAC, 0x44, 0xD8, 0xB4, 0xD8, 0xAD, 0x44, 0xD8, -+ 0xB4, 0xD8, 0xAE, 0x44, 0xD8, 0xB4, 0xD8, 0xB1, -+ 0x44, 0xD8, 0xB4, 0xD9, 0x85, 0x44, 0xD8, 0xB4, -+ 0xD9, 0x87, 0x44, 0xD8, 0xB4, 0xD9, 0x89, 0x44, -+ 0xD8, 0xB4, 0xD9, 0x8A, 0x44, 0xD8, 0xB5, 0xD8, -+ 0xAD, 0x44, 0xD8, 0xB5, 0xD8, 0xAE, 0x44, 0xD8, -+ 0xB5, 0xD8, 0xB1, 0x44, 0xD8, 0xB5, 0xD9, 0x85, -+ // Bytes 1ec0 - 1eff -+ 0x44, 0xD8, 0xB5, 0xD9, 0x89, 0x44, 0xD8, 0xB5, -+ 0xD9, 0x8A, 0x44, 0xD8, 0xB6, 0xD8, 0xAC, 0x44, -+ 0xD8, 0xB6, 0xD8, 0xAD, 0x44, 0xD8, 0xB6, 0xD8, -+ 0xAE, 0x44, 0xD8, 0xB6, 0xD8, 0xB1, 0x44, 0xD8, -+ 0xB6, 0xD9, 0x85, 0x44, 0xD8, 0xB6, 0xD9, 0x89, -+ 0x44, 0xD8, 0xB6, 0xD9, 0x8A, 0x44, 0xD8, 0xB7, -+ 0xD8, 0xAD, 0x44, 0xD8, 0xB7, 0xD9, 0x85, 0x44, -+ 0xD8, 0xB7, 0xD9, 0x89, 0x44, 0xD8, 0xB7, 0xD9, -+ // Bytes 1f00 - 1f3f -+ 0x8A, 0x44, 0xD8, 0xB8, 0xD9, 0x85, 0x44, 0xD8, -+ 0xB9, 0xD8, 0xAC, 0x44, 0xD8, 0xB9, 0xD9, 0x85, -+ 0x44, 0xD8, 0xB9, 0xD9, 0x89, 0x44, 0xD8, 0xB9, -+ 0xD9, 0x8A, 0x44, 0xD8, 0xBA, 0xD8, 0xAC, 0x44, -+ 0xD8, 0xBA, 0xD9, 0x85, 0x44, 0xD8, 0xBA, 0xD9, -+ 0x89, 0x44, 0xD8, 0xBA, 0xD9, 0x8A, 0x44, 0xD9, -+ 0x81, 0xD8, 0xAC, 0x44, 0xD9, 0x81, 0xD8, 0xAD, -+ 0x44, 0xD9, 0x81, 0xD8, 0xAE, 0x44, 0xD9, 0x81, -+ // Bytes 1f40 - 1f7f -+ 0xD9, 0x85, 0x44, 0xD9, 0x81, 0xD9, 0x89, 0x44, -+ 0xD9, 0x81, 0xD9, 0x8A, 0x44, 0xD9, 0x82, 0xD8, -+ 0xAD, 0x44, 0xD9, 0x82, 0xD9, 0x85, 0x44, 0xD9, -+ 0x82, 0xD9, 0x89, 0x44, 0xD9, 0x82, 0xD9, 0x8A, -+ 0x44, 0xD9, 0x83, 0xD8, 0xA7, 0x44, 0xD9, 0x83, -+ 0xD8, 0xAC, 0x44, 0xD9, 0x83, 0xD8, 0xAD, 0x44, -+ 0xD9, 0x83, 0xD8, 0xAE, 0x44, 0xD9, 0x83, 0xD9, -+ 0x84, 0x44, 0xD9, 0x83, 0xD9, 0x85, 0x44, 0xD9, -+ // Bytes 1f80 - 1fbf -+ 0x83, 0xD9, 0x89, 0x44, 0xD9, 0x83, 0xD9, 0x8A, -+ 0x44, 0xD9, 0x84, 0xD8, 0xA7, 0x44, 0xD9, 0x84, -+ 0xD8, 0xAC, 0x44, 0xD9, 0x84, 0xD8, 0xAD, 0x44, -+ 0xD9, 0x84, 0xD8, 0xAE, 0x44, 0xD9, 0x84, 0xD9, -+ 0x85, 0x44, 0xD9, 0x84, 0xD9, 0x87, 0x44, 0xD9, -+ 0x84, 0xD9, 0x89, 0x44, 0xD9, 0x84, 0xD9, 0x8A, -+ 0x44, 0xD9, 0x85, 0xD8, 0xA7, 0x44, 0xD9, 0x85, -+ 0xD8, 0xAC, 0x44, 0xD9, 0x85, 0xD8, 0xAD, 0x44, -+ // Bytes 1fc0 - 1fff -+ 0xD9, 0x85, 0xD8, 0xAE, 0x44, 0xD9, 0x85, 0xD9, -+ 0x85, 0x44, 0xD9, 0x85, 0xD9, 0x89, 0x44, 0xD9, -+ 0x85, 0xD9, 0x8A, 0x44, 0xD9, 0x86, 0xD8, 0xAC, -+ 0x44, 0xD9, 0x86, 0xD8, 0xAD, 0x44, 0xD9, 0x86, -+ 0xD8, 0xAE, 0x44, 0xD9, 0x86, 0xD8, 0xB1, 0x44, -+ 0xD9, 0x86, 0xD8, 0xB2, 0x44, 0xD9, 0x86, 0xD9, -+ 0x85, 0x44, 0xD9, 0x86, 0xD9, 0x86, 0x44, 0xD9, -+ 0x86, 0xD9, 0x87, 0x44, 0xD9, 0x86, 0xD9, 0x89, -+ // Bytes 2000 - 203f -+ 0x44, 0xD9, 0x86, 0xD9, 0x8A, 0x44, 0xD9, 0x87, -+ 0xD8, 0xAC, 0x44, 0xD9, 0x87, 0xD9, 0x85, 0x44, -+ 0xD9, 0x87, 0xD9, 0x89, 0x44, 0xD9, 0x87, 0xD9, -+ 0x8A, 0x44, 0xD9, 0x88, 0xD9, 0xB4, 0x44, 0xD9, -+ 0x8A, 0xD8, 0xAC, 0x44, 0xD9, 0x8A, 0xD8, 0xAD, -+ 0x44, 0xD9, 0x8A, 0xD8, 0xAE, 0x44, 0xD9, 0x8A, -+ 0xD8, 0xB1, 0x44, 0xD9, 0x8A, 0xD8, 0xB2, 0x44, -+ 0xD9, 0x8A, 0xD9, 0x85, 0x44, 0xD9, 0x8A, 0xD9, -+ // Bytes 2040 - 207f -+ 0x86, 0x44, 0xD9, 0x8A, 0xD9, 0x87, 0x44, 0xD9, -+ 0x8A, 0xD9, 0x89, 0x44, 0xD9, 0x8A, 0xD9, 0x8A, -+ 0x44, 0xD9, 0x8A, 0xD9, 0xB4, 0x44, 0xDB, 0x87, -+ 0xD9, 0xB4, 0x45, 0x28, 0xE1, 0x84, 0x80, 0x29, -+ 0x45, 0x28, 0xE1, 0x84, 0x82, 0x29, 0x45, 0x28, -+ 0xE1, 0x84, 0x83, 0x29, 0x45, 0x28, 0xE1, 0x84, -+ 0x85, 0x29, 0x45, 0x28, 0xE1, 0x84, 0x86, 0x29, -+ 0x45, 0x28, 0xE1, 0x84, 0x87, 0x29, 0x45, 0x28, -+ // Bytes 2080 - 20bf -+ 0xE1, 0x84, 0x89, 0x29, 0x45, 0x28, 0xE1, 0x84, -+ 0x8B, 0x29, 0x45, 0x28, 0xE1, 0x84, 0x8C, 0x29, -+ 0x45, 0x28, 0xE1, 0x84, 0x8E, 0x29, 0x45, 0x28, -+ 0xE1, 0x84, 0x8F, 0x29, 0x45, 0x28, 0xE1, 0x84, -+ 0x90, 0x29, 0x45, 0x28, 0xE1, 0x84, 0x91, 0x29, -+ 0x45, 0x28, 0xE1, 0x84, 0x92, 0x29, 0x45, 0x28, -+ 0xE4, 0xB8, 0x80, 0x29, 0x45, 0x28, 0xE4, 0xB8, -+ 0x83, 0x29, 0x45, 0x28, 0xE4, 0xB8, 0x89, 0x29, -+ // Bytes 20c0 - 20ff -+ 0x45, 0x28, 0xE4, 0xB9, 0x9D, 0x29, 0x45, 0x28, -+ 0xE4, 0xBA, 0x8C, 0x29, 0x45, 0x28, 0xE4, 0xBA, -+ 0x94, 0x29, 0x45, 0x28, 0xE4, 0xBB, 0xA3, 0x29, -+ 0x45, 0x28, 0xE4, 0xBC, 0x81, 0x29, 0x45, 0x28, -+ 0xE4, 0xBC, 0x91, 0x29, 0x45, 0x28, 0xE5, 0x85, -+ 0xAB, 0x29, 0x45, 0x28, 0xE5, 0x85, 0xAD, 0x29, -+ 0x45, 0x28, 0xE5, 0x8A, 0xB4, 0x29, 0x45, 0x28, -+ 0xE5, 0x8D, 0x81, 0x29, 0x45, 0x28, 0xE5, 0x8D, -+ // Bytes 2100 - 213f -+ 0x94, 0x29, 0x45, 0x28, 0xE5, 0x90, 0x8D, 0x29, -+ 0x45, 0x28, 0xE5, 0x91, 0xBC, 0x29, 0x45, 0x28, -+ 0xE5, 0x9B, 0x9B, 0x29, 0x45, 0x28, 0xE5, 0x9C, -+ 0x9F, 0x29, 0x45, 0x28, 0xE5, 0xAD, 0xA6, 0x29, -+ 0x45, 0x28, 0xE6, 0x97, 0xA5, 0x29, 0x45, 0x28, -+ 0xE6, 0x9C, 0x88, 0x29, 0x45, 0x28, 0xE6, 0x9C, -+ 0x89, 0x29, 0x45, 0x28, 0xE6, 0x9C, 0xA8, 0x29, -+ 0x45, 0x28, 0xE6, 0xA0, 0xAA, 0x29, 0x45, 0x28, -+ // Bytes 2140 - 217f -+ 0xE6, 0xB0, 0xB4, 0x29, 0x45, 0x28, 0xE7, 0x81, -+ 0xAB, 0x29, 0x45, 0x28, 0xE7, 0x89, 0xB9, 0x29, -+ 0x45, 0x28, 0xE7, 0x9B, 0xA3, 0x29, 0x45, 0x28, -+ 0xE7, 0xA4, 0xBE, 0x29, 0x45, 0x28, 0xE7, 0xA5, -+ 0x9D, 0x29, 0x45, 0x28, 0xE7, 0xA5, 0xAD, 0x29, -+ 0x45, 0x28, 0xE8, 0x87, 0xAA, 0x29, 0x45, 0x28, -+ 0xE8, 0x87, 0xB3, 0x29, 0x45, 0x28, 0xE8, 0xB2, -+ 0xA1, 0x29, 0x45, 0x28, 0xE8, 0xB3, 0x87, 0x29, -+ // Bytes 2180 - 21bf -+ 0x45, 0x28, 0xE9, 0x87, 0x91, 0x29, 0x45, 0x30, -+ 0xE2, 0x81, 0x84, 0x33, 0x45, 0x31, 0x30, 0xE6, -+ 0x97, 0xA5, 0x45, 0x31, 0x30, 0xE6, 0x9C, 0x88, -+ 0x45, 0x31, 0x30, 0xE7, 0x82, 0xB9, 0x45, 0x31, -+ 0x31, 0xE6, 0x97, 0xA5, 0x45, 0x31, 0x31, 0xE6, -+ 0x9C, 0x88, 0x45, 0x31, 0x31, 0xE7, 0x82, 0xB9, -+ 0x45, 0x31, 0x32, 0xE6, 0x97, 0xA5, 0x45, 0x31, -+ 0x32, 0xE6, 0x9C, 0x88, 0x45, 0x31, 0x32, 0xE7, -+ // Bytes 21c0 - 21ff -+ 0x82, 0xB9, 0x45, 0x31, 0x33, 0xE6, 0x97, 0xA5, -+ 0x45, 0x31, 0x33, 0xE7, 0x82, 0xB9, 0x45, 0x31, -+ 0x34, 0xE6, 0x97, 0xA5, 0x45, 0x31, 0x34, 0xE7, -+ 0x82, 0xB9, 0x45, 0x31, 0x35, 0xE6, 0x97, 0xA5, -+ 0x45, 0x31, 0x35, 0xE7, 0x82, 0xB9, 0x45, 0x31, -+ 0x36, 0xE6, 0x97, 0xA5, 0x45, 0x31, 0x36, 0xE7, -+ 0x82, 0xB9, 0x45, 0x31, 0x37, 0xE6, 0x97, 0xA5, -+ 0x45, 0x31, 0x37, 0xE7, 0x82, 0xB9, 0x45, 0x31, -+ // Bytes 2200 - 223f -+ 0x38, 0xE6, 0x97, 0xA5, 0x45, 0x31, 0x38, 0xE7, -+ 0x82, 0xB9, 0x45, 0x31, 0x39, 0xE6, 0x97, 0xA5, -+ 0x45, 0x31, 0x39, 0xE7, 0x82, 0xB9, 0x45, 0x31, -+ 0xE2, 0x81, 0x84, 0x32, 0x45, 0x31, 0xE2, 0x81, -+ 0x84, 0x33, 0x45, 0x31, 0xE2, 0x81, 0x84, 0x34, -+ 0x45, 0x31, 0xE2, 0x81, 0x84, 0x35, 0x45, 0x31, -+ 0xE2, 0x81, 0x84, 0x36, 0x45, 0x31, 0xE2, 0x81, -+ 0x84, 0x37, 0x45, 0x31, 0xE2, 0x81, 0x84, 0x38, -+ // Bytes 2240 - 227f -+ 0x45, 0x31, 0xE2, 0x81, 0x84, 0x39, 0x45, 0x32, -+ 0x30, 0xE6, 0x97, 0xA5, 0x45, 0x32, 0x30, 0xE7, -+ 0x82, 0xB9, 0x45, 0x32, 0x31, 0xE6, 0x97, 0xA5, -+ 0x45, 0x32, 0x31, 0xE7, 0x82, 0xB9, 0x45, 0x32, -+ 0x32, 0xE6, 0x97, 0xA5, 0x45, 0x32, 0x32, 0xE7, -+ 0x82, 0xB9, 0x45, 0x32, 0x33, 0xE6, 0x97, 0xA5, -+ 0x45, 0x32, 0x33, 0xE7, 0x82, 0xB9, 0x45, 0x32, -+ 0x34, 0xE6, 0x97, 0xA5, 0x45, 0x32, 0x34, 0xE7, -+ // Bytes 2280 - 22bf -+ 0x82, 0xB9, 0x45, 0x32, 0x35, 0xE6, 0x97, 0xA5, -+ 0x45, 0x32, 0x36, 0xE6, 0x97, 0xA5, 0x45, 0x32, -+ 0x37, 0xE6, 0x97, 0xA5, 0x45, 0x32, 0x38, 0xE6, -+ 0x97, 0xA5, 0x45, 0x32, 0x39, 0xE6, 0x97, 0xA5, -+ 0x45, 0x32, 0xE2, 0x81, 0x84, 0x33, 0x45, 0x32, -+ 0xE2, 0x81, 0x84, 0x35, 0x45, 0x33, 0x30, 0xE6, -+ 0x97, 0xA5, 0x45, 0x33, 0x31, 0xE6, 0x97, 0xA5, -+ 0x45, 0x33, 0xE2, 0x81, 0x84, 0x34, 0x45, 0x33, -+ // Bytes 22c0 - 22ff -+ 0xE2, 0x81, 0x84, 0x35, 0x45, 0x33, 0xE2, 0x81, -+ 0x84, 0x38, 0x45, 0x34, 0xE2, 0x81, 0x84, 0x35, -+ 0x45, 0x35, 0xE2, 0x81, 0x84, 0x36, 0x45, 0x35, -+ 0xE2, 0x81, 0x84, 0x38, 0x45, 0x37, 0xE2, 0x81, -+ 0x84, 0x38, 0x45, 0x41, 0xE2, 0x88, 0x95, 0x6D, -+ 0x45, 0x56, 0xE2, 0x88, 0x95, 0x6D, 0x45, 0x6D, -+ 0xE2, 0x88, 0x95, 0x73, 0x46, 0x31, 0xE2, 0x81, -+ 0x84, 0x31, 0x30, 0x46, 0x43, 0xE2, 0x88, 0x95, -+ // Bytes 2300 - 233f -+ 0x6B, 0x67, 0x46, 0x6D, 0xE2, 0x88, 0x95, 0x73, -+ 0x32, 0x46, 0xD8, 0xA8, 0xD8, 0xAD, 0xD9, 0x8A, -+ 0x46, 0xD8, 0xA8, 0xD8, 0xAE, 0xD9, 0x8A, 0x46, -+ 0xD8, 0xAA, 0xD8, 0xAC, 0xD9, 0x85, 0x46, 0xD8, -+ 0xAA, 0xD8, 0xAC, 0xD9, 0x89, 0x46, 0xD8, 0xAA, -+ 0xD8, 0xAC, 0xD9, 0x8A, 0x46, 0xD8, 0xAA, 0xD8, -+ 0xAD, 0xD8, 0xAC, 0x46, 0xD8, 0xAA, 0xD8, 0xAD, -+ 0xD9, 0x85, 0x46, 0xD8, 0xAA, 0xD8, 0xAE, 0xD9, -+ // Bytes 2340 - 237f -+ 0x85, 0x46, 0xD8, 0xAA, 0xD8, 0xAE, 0xD9, 0x89, -+ 0x46, 0xD8, 0xAA, 0xD8, 0xAE, 0xD9, 0x8A, 0x46, -+ 0xD8, 0xAA, 0xD9, 0x85, 0xD8, 0xAC, 0x46, 0xD8, -+ 0xAA, 0xD9, 0x85, 0xD8, 0xAD, 0x46, 0xD8, 0xAA, -+ 0xD9, 0x85, 0xD8, 0xAE, 0x46, 0xD8, 0xAA, 0xD9, -+ 0x85, 0xD9, 0x89, 0x46, 0xD8, 0xAA, 0xD9, 0x85, -+ 0xD9, 0x8A, 0x46, 0xD8, 0xAC, 0xD8, 0xAD, 0xD9, -+ 0x89, 0x46, 0xD8, 0xAC, 0xD8, 0xAD, 0xD9, 0x8A, -+ // Bytes 2380 - 23bf -+ 0x46, 0xD8, 0xAC, 0xD9, 0x85, 0xD8, 0xAD, 0x46, -+ 0xD8, 0xAC, 0xD9, 0x85, 0xD9, 0x89, 0x46, 0xD8, -+ 0xAC, 0xD9, 0x85, 0xD9, 0x8A, 0x46, 0xD8, 0xAD, -+ 0xD8, 0xAC, 0xD9, 0x8A, 0x46, 0xD8, 0xAD, 0xD9, -+ 0x85, 0xD9, 0x89, 0x46, 0xD8, 0xAD, 0xD9, 0x85, -+ 0xD9, 0x8A, 0x46, 0xD8, 0xB3, 0xD8, 0xAC, 0xD8, -+ 0xAD, 0x46, 0xD8, 0xB3, 0xD8, 0xAC, 0xD9, 0x89, -+ 0x46, 0xD8, 0xB3, 0xD8, 0xAD, 0xD8, 0xAC, 0x46, -+ // Bytes 23c0 - 23ff -+ 0xD8, 0xB3, 0xD8, 0xAE, 0xD9, 0x89, 0x46, 0xD8, -+ 0xB3, 0xD8, 0xAE, 0xD9, 0x8A, 0x46, 0xD8, 0xB3, -+ 0xD9, 0x85, 0xD8, 0xAC, 0x46, 0xD8, 0xB3, 0xD9, -+ 0x85, 0xD8, 0xAD, 0x46, 0xD8, 0xB3, 0xD9, 0x85, -+ 0xD9, 0x85, 0x46, 0xD8, 0xB4, 0xD8, 0xAC, 0xD9, -+ 0x8A, 0x46, 0xD8, 0xB4, 0xD8, 0xAD, 0xD9, 0x85, -+ 0x46, 0xD8, 0xB4, 0xD8, 0xAD, 0xD9, 0x8A, 0x46, -+ 0xD8, 0xB4, 0xD9, 0x85, 0xD8, 0xAE, 0x46, 0xD8, -+ // Bytes 2400 - 243f -+ 0xB4, 0xD9, 0x85, 0xD9, 0x85, 0x46, 0xD8, 0xB5, -+ 0xD8, 0xAD, 0xD8, 0xAD, 0x46, 0xD8, 0xB5, 0xD8, -+ 0xAD, 0xD9, 0x8A, 0x46, 0xD8, 0xB5, 0xD9, 0x84, -+ 0xD9, 0x89, 0x46, 0xD8, 0xB5, 0xD9, 0x84, 0xDB, -+ 0x92, 0x46, 0xD8, 0xB5, 0xD9, 0x85, 0xD9, 0x85, -+ 0x46, 0xD8, 0xB6, 0xD8, 0xAD, 0xD9, 0x89, 0x46, -+ 0xD8, 0xB6, 0xD8, 0xAD, 0xD9, 0x8A, 0x46, 0xD8, -+ 0xB6, 0xD8, 0xAE, 0xD9, 0x85, 0x46, 0xD8, 0xB7, -+ // Bytes 2440 - 247f -+ 0xD9, 0x85, 0xD8, 0xAD, 0x46, 0xD8, 0xB7, 0xD9, -+ 0x85, 0xD9, 0x85, 0x46, 0xD8, 0xB7, 0xD9, 0x85, -+ 0xD9, 0x8A, 0x46, 0xD8, 0xB9, 0xD8, 0xAC, 0xD9, -+ 0x85, 0x46, 0xD8, 0xB9, 0xD9, 0x85, 0xD9, 0x85, -+ 0x46, 0xD8, 0xB9, 0xD9, 0x85, 0xD9, 0x89, 0x46, -+ 0xD8, 0xB9, 0xD9, 0x85, 0xD9, 0x8A, 0x46, 0xD8, -+ 0xBA, 0xD9, 0x85, 0xD9, 0x85, 0x46, 0xD8, 0xBA, -+ 0xD9, 0x85, 0xD9, 0x89, 0x46, 0xD8, 0xBA, 0xD9, -+ // Bytes 2480 - 24bf -+ 0x85, 0xD9, 0x8A, 0x46, 0xD9, 0x81, 0xD8, 0xAE, -+ 0xD9, 0x85, 0x46, 0xD9, 0x81, 0xD9, 0x85, 0xD9, -+ 0x8A, 0x46, 0xD9, 0x82, 0xD9, 0x84, 0xDB, 0x92, -+ 0x46, 0xD9, 0x82, 0xD9, 0x85, 0xD8, 0xAD, 0x46, -+ 0xD9, 0x82, 0xD9, 0x85, 0xD9, 0x85, 0x46, 0xD9, -+ 0x82, 0xD9, 0x85, 0xD9, 0x8A, 0x46, 0xD9, 0x83, -+ 0xD9, 0x85, 0xD9, 0x85, 0x46, 0xD9, 0x83, 0xD9, -+ 0x85, 0xD9, 0x8A, 0x46, 0xD9, 0x84, 0xD8, 0xAC, -+ // Bytes 24c0 - 24ff -+ 0xD8, 0xAC, 0x46, 0xD9, 0x84, 0xD8, 0xAC, 0xD9, -+ 0x85, 0x46, 0xD9, 0x84, 0xD8, 0xAC, 0xD9, 0x8A, -+ 0x46, 0xD9, 0x84, 0xD8, 0xAD, 0xD9, 0x85, 0x46, -+ 0xD9, 0x84, 0xD8, 0xAD, 0xD9, 0x89, 0x46, 0xD9, -+ 0x84, 0xD8, 0xAD, 0xD9, 0x8A, 0x46, 0xD9, 0x84, -+ 0xD8, 0xAE, 0xD9, 0x85, 0x46, 0xD9, 0x84, 0xD9, -+ 0x85, 0xD8, 0xAD, 0x46, 0xD9, 0x84, 0xD9, 0x85, -+ 0xD9, 0x8A, 0x46, 0xD9, 0x85, 0xD8, 0xAC, 0xD8, -+ // Bytes 2500 - 253f -+ 0xAD, 0x46, 0xD9, 0x85, 0xD8, 0xAC, 0xD8, 0xAE, -+ 0x46, 0xD9, 0x85, 0xD8, 0xAC, 0xD9, 0x85, 0x46, -+ 0xD9, 0x85, 0xD8, 0xAC, 0xD9, 0x8A, 0x46, 0xD9, -+ 0x85, 0xD8, 0xAD, 0xD8, 0xAC, 0x46, 0xD9, 0x85, -+ 0xD8, 0xAD, 0xD9, 0x85, 0x46, 0xD9, 0x85, 0xD8, -+ 0xAD, 0xD9, 0x8A, 0x46, 0xD9, 0x85, 0xD8, 0xAE, -+ 0xD8, 0xAC, 0x46, 0xD9, 0x85, 0xD8, 0xAE, 0xD9, -+ 0x85, 0x46, 0xD9, 0x85, 0xD8, 0xAE, 0xD9, 0x8A, -+ // Bytes 2540 - 257f -+ 0x46, 0xD9, 0x85, 0xD9, 0x85, 0xD9, 0x8A, 0x46, -+ 0xD9, 0x86, 0xD8, 0xAC, 0xD8, 0xAD, 0x46, 0xD9, -+ 0x86, 0xD8, 0xAC, 0xD9, 0x85, 0x46, 0xD9, 0x86, -+ 0xD8, 0xAC, 0xD9, 0x89, 0x46, 0xD9, 0x86, 0xD8, -+ 0xAC, 0xD9, 0x8A, 0x46, 0xD9, 0x86, 0xD8, 0xAD, -+ 0xD9, 0x85, 0x46, 0xD9, 0x86, 0xD8, 0xAD, 0xD9, -+ 0x89, 0x46, 0xD9, 0x86, 0xD8, 0xAD, 0xD9, 0x8A, -+ 0x46, 0xD9, 0x86, 0xD9, 0x85, 0xD9, 0x89, 0x46, -+ // Bytes 2580 - 25bf -+ 0xD9, 0x86, 0xD9, 0x85, 0xD9, 0x8A, 0x46, 0xD9, -+ 0x87, 0xD9, 0x85, 0xD8, 0xAC, 0x46, 0xD9, 0x87, -+ 0xD9, 0x85, 0xD9, 0x85, 0x46, 0xD9, 0x8A, 0xD8, -+ 0xAC, 0xD9, 0x8A, 0x46, 0xD9, 0x8A, 0xD8, 0xAD, -+ 0xD9, 0x8A, 0x46, 0xD9, 0x8A, 0xD9, 0x85, 0xD9, -+ 0x85, 0x46, 0xD9, 0x8A, 0xD9, 0x85, 0xD9, 0x8A, -+ 0x46, 0xD9, 0x8A, 0xD9, 0x94, 0xD8, 0xA7, 0x46, -+ 0xD9, 0x8A, 0xD9, 0x94, 0xD8, 0xAC, 0x46, 0xD9, -+ // Bytes 25c0 - 25ff -+ 0x8A, 0xD9, 0x94, 0xD8, 0xAD, 0x46, 0xD9, 0x8A, -+ 0xD9, 0x94, 0xD8, 0xAE, 0x46, 0xD9, 0x8A, 0xD9, -+ 0x94, 0xD8, 0xB1, 0x46, 0xD9, 0x8A, 0xD9, 0x94, -+ 0xD8, 0xB2, 0x46, 0xD9, 0x8A, 0xD9, 0x94, 0xD9, -+ 0x85, 0x46, 0xD9, 0x8A, 0xD9, 0x94, 0xD9, 0x86, -+ 0x46, 0xD9, 0x8A, 0xD9, 0x94, 0xD9, 0x87, 0x46, -+ 0xD9, 0x8A, 0xD9, 0x94, 0xD9, 0x88, 0x46, 0xD9, -+ 0x8A, 0xD9, 0x94, 0xD9, 0x89, 0x46, 0xD9, 0x8A, -+ // Bytes 2600 - 263f -+ 0xD9, 0x94, 0xD9, 0x8A, 0x46, 0xD9, 0x8A, 0xD9, -+ 0x94, 0xDB, 0x86, 0x46, 0xD9, 0x8A, 0xD9, 0x94, -+ 0xDB, 0x87, 0x46, 0xD9, 0x8A, 0xD9, 0x94, 0xDB, -+ 0x88, 0x46, 0xD9, 0x8A, 0xD9, 0x94, 0xDB, 0x90, -+ 0x46, 0xD9, 0x8A, 0xD9, 0x94, 0xDB, 0x95, 0x46, -+ 0xE0, 0xB9, 0x8D, 0xE0, 0xB8, 0xB2, 0x46, 0xE0, -+ 0xBA, 0xAB, 0xE0, 0xBA, 0x99, 0x46, 0xE0, 0xBA, -+ 0xAB, 0xE0, 0xBA, 0xA1, 0x46, 0xE0, 0xBB, 0x8D, -+ // Bytes 2640 - 267f -+ 0xE0, 0xBA, 0xB2, 0x46, 0xE0, 0xBD, 0x80, 0xE0, -+ 0xBE, 0xB5, 0x46, 0xE0, 0xBD, 0x82, 0xE0, 0xBE, -+ 0xB7, 0x46, 0xE0, 0xBD, 0x8C, 0xE0, 0xBE, 0xB7, -+ 0x46, 0xE0, 0xBD, 0x91, 0xE0, 0xBE, 0xB7, 0x46, -+ 0xE0, 0xBD, 0x96, 0xE0, 0xBE, 0xB7, 0x46, 0xE0, -+ 0xBD, 0x9B, 0xE0, 0xBE, 0xB7, 0x46, 0xE0, 0xBE, -+ 0x90, 0xE0, 0xBE, 0xB5, 0x46, 0xE0, 0xBE, 0x92, -+ 0xE0, 0xBE, 0xB7, 0x46, 0xE0, 0xBE, 0x9C, 0xE0, -+ // Bytes 2680 - 26bf -+ 0xBE, 0xB7, 0x46, 0xE0, 0xBE, 0xA1, 0xE0, 0xBE, -+ 0xB7, 0x46, 0xE0, 0xBE, 0xA6, 0xE0, 0xBE, 0xB7, -+ 0x46, 0xE0, 0xBE, 0xAB, 0xE0, 0xBE, 0xB7, 0x46, -+ 0xE2, 0x80, 0xB2, 0xE2, 0x80, 0xB2, 0x46, 0xE2, -+ 0x80, 0xB5, 0xE2, 0x80, 0xB5, 0x46, 0xE2, 0x88, -+ 0xAB, 0xE2, 0x88, 0xAB, 0x46, 0xE2, 0x88, 0xAE, -+ 0xE2, 0x88, 0xAE, 0x46, 0xE3, 0x81, 0xBB, 0xE3, -+ 0x81, 0x8B, 0x46, 0xE3, 0x82, 0x88, 0xE3, 0x82, -+ // Bytes 26c0 - 26ff -+ 0x8A, 0x46, 0xE3, 0x82, 0xAD, 0xE3, 0x83, 0xAD, -+ 0x46, 0xE3, 0x82, 0xB3, 0xE3, 0x82, 0xB3, 0x46, -+ 0xE3, 0x82, 0xB3, 0xE3, 0x83, 0x88, 0x46, 0xE3, -+ 0x83, 0x88, 0xE3, 0x83, 0xB3, 0x46, 0xE3, 0x83, -+ 0x8A, 0xE3, 0x83, 0x8E, 0x46, 0xE3, 0x83, 0x9B, -+ 0xE3, 0x83, 0xB3, 0x46, 0xE3, 0x83, 0x9F, 0xE3, -+ 0x83, 0xAA, 0x46, 0xE3, 0x83, 0xAA, 0xE3, 0x83, -+ 0xA9, 0x46, 0xE3, 0x83, 0xAC, 0xE3, 0x83, 0xA0, -+ // Bytes 2700 - 273f -+ 0x46, 0xE4, 0xBB, 0xA4, 0xE5, 0x92, 0x8C, 0x46, -+ 0xE5, 0xA4, 0xA7, 0xE6, 0xAD, 0xA3, 0x46, 0xE5, -+ 0xB9, 0xB3, 0xE6, 0x88, 0x90, 0x46, 0xE6, 0x98, -+ 0x8E, 0xE6, 0xB2, 0xBB, 0x46, 0xE6, 0x98, 0xAD, -+ 0xE5, 0x92, 0x8C, 0x47, 0x72, 0x61, 0x64, 0xE2, -+ 0x88, 0x95, 0x73, 0x47, 0xE3, 0x80, 0x94, 0x53, -+ 0xE3, 0x80, 0x95, 0x48, 0x28, 0xE1, 0x84, 0x80, -+ 0xE1, 0x85, 0xA1, 0x29, 0x48, 0x28, 0xE1, 0x84, -+ // Bytes 2740 - 277f -+ 0x82, 0xE1, 0x85, 0xA1, 0x29, 0x48, 0x28, 0xE1, -+ 0x84, 0x83, 0xE1, 0x85, 0xA1, 0x29, 0x48, 0x28, -+ 0xE1, 0x84, 0x85, 0xE1, 0x85, 0xA1, 0x29, 0x48, -+ 0x28, 0xE1, 0x84, 0x86, 0xE1, 0x85, 0xA1, 0x29, -+ 0x48, 0x28, 0xE1, 0x84, 0x87, 0xE1, 0x85, 0xA1, -+ 0x29, 0x48, 0x28, 0xE1, 0x84, 0x89, 0xE1, 0x85, -+ 0xA1, 0x29, 0x48, 0x28, 0xE1, 0x84, 0x8B, 0xE1, -+ 0x85, 0xA1, 0x29, 0x48, 0x28, 0xE1, 0x84, 0x8C, -+ // Bytes 2780 - 27bf -+ 0xE1, 0x85, 0xA1, 0x29, 0x48, 0x28, 0xE1, 0x84, -+ 0x8C, 0xE1, 0x85, 0xAE, 0x29, 0x48, 0x28, 0xE1, -+ 0x84, 0x8E, 0xE1, 0x85, 0xA1, 0x29, 0x48, 0x28, -+ 0xE1, 0x84, 0x8F, 0xE1, 0x85, 0xA1, 0x29, 0x48, -+ 0x28, 0xE1, 0x84, 0x90, 0xE1, 0x85, 0xA1, 0x29, -+ 0x48, 0x28, 0xE1, 0x84, 0x91, 0xE1, 0x85, 0xA1, -+ 0x29, 0x48, 0x28, 0xE1, 0x84, 0x92, 0xE1, 0x85, -+ 0xA1, 0x29, 0x48, 0x72, 0x61, 0x64, 0xE2, 0x88, -+ // Bytes 27c0 - 27ff -+ 0x95, 0x73, 0x32, 0x48, 0xD8, 0xA7, 0xD9, 0x83, -+ 0xD8, 0xA8, 0xD8, 0xB1, 0x48, 0xD8, 0xA7, 0xD9, -+ 0x84, 0xD9, 0x84, 0xD9, 0x87, 0x48, 0xD8, 0xB1, -+ 0xD8, 0xB3, 0xD9, 0x88, 0xD9, 0x84, 0x48, 0xD8, -+ 0xB1, 0xDB, 0x8C, 0xD8, 0xA7, 0xD9, 0x84, 0x48, -+ 0xD8, 0xB5, 0xD9, 0x84, 0xD8, 0xB9, 0xD9, 0x85, -+ 0x48, 0xD8, 0xB9, 0xD9, 0x84, 0xD9, 0x8A, 0xD9, -+ 0x87, 0x48, 0xD9, 0x85, 0xD8, 0xAD, 0xD9, 0x85, -+ // Bytes 2800 - 283f -+ 0xD8, 0xAF, 0x48, 0xD9, 0x88, 0xD8, 0xB3, 0xD9, -+ 0x84, 0xD9, 0x85, 0x49, 0xE2, 0x80, 0xB2, 0xE2, -+ 0x80, 0xB2, 0xE2, 0x80, 0xB2, 0x49, 0xE2, 0x80, -+ 0xB5, 0xE2, 0x80, 0xB5, 0xE2, 0x80, 0xB5, 0x49, -+ 0xE2, 0x88, 0xAB, 0xE2, 0x88, 0xAB, 0xE2, 0x88, -+ 0xAB, 0x49, 0xE2, 0x88, 0xAE, 0xE2, 0x88, 0xAE, -+ 0xE2, 0x88, 0xAE, 0x49, 0xE3, 0x80, 0x94, 0xE4, -+ 0xB8, 0x89, 0xE3, 0x80, 0x95, 0x49, 0xE3, 0x80, -+ // Bytes 2840 - 287f -+ 0x94, 0xE4, 0xBA, 0x8C, 0xE3, 0x80, 0x95, 0x49, -+ 0xE3, 0x80, 0x94, 0xE5, 0x8B, 0x9D, 0xE3, 0x80, -+ 0x95, 0x49, 0xE3, 0x80, 0x94, 0xE5, 0xAE, 0x89, -+ 0xE3, 0x80, 0x95, 0x49, 0xE3, 0x80, 0x94, 0xE6, -+ 0x89, 0x93, 0xE3, 0x80, 0x95, 0x49, 0xE3, 0x80, -+ 0x94, 0xE6, 0x95, 0x97, 0xE3, 0x80, 0x95, 0x49, -+ 0xE3, 0x80, 0x94, 0xE6, 0x9C, 0xAC, 0xE3, 0x80, -+ 0x95, 0x49, 0xE3, 0x80, 0x94, 0xE7, 0x82, 0xB9, -+ // Bytes 2880 - 28bf -+ 0xE3, 0x80, 0x95, 0x49, 0xE3, 0x80, 0x94, 0xE7, -+ 0x9B, 0x97, 0xE3, 0x80, 0x95, 0x49, 0xE3, 0x82, -+ 0xA2, 0xE3, 0x83, 0xBC, 0xE3, 0x83, 0xAB, 0x49, -+ 0xE3, 0x82, 0xA4, 0xE3, 0x83, 0xB3, 0xE3, 0x83, -+ 0x81, 0x49, 0xE3, 0x82, 0xA6, 0xE3, 0x82, 0xA9, -+ 0xE3, 0x83, 0xB3, 0x49, 0xE3, 0x82, 0xAA, 0xE3, -+ 0x83, 0xB3, 0xE3, 0x82, 0xB9, 0x49, 0xE3, 0x82, -+ 0xAA, 0xE3, 0x83, 0xBC, 0xE3, 0x83, 0xA0, 0x49, -+ // Bytes 28c0 - 28ff -+ 0xE3, 0x82, 0xAB, 0xE3, 0x82, 0xA4, 0xE3, 0x83, -+ 0xAA, 0x49, 0xE3, 0x82, 0xB1, 0xE3, 0x83, 0xBC, -+ 0xE3, 0x82, 0xB9, 0x49, 0xE3, 0x82, 0xB3, 0xE3, -+ 0x83, 0xAB, 0xE3, 0x83, 0x8A, 0x49, 0xE3, 0x82, -+ 0xBB, 0xE3, 0x83, 0xB3, 0xE3, 0x83, 0x81, 0x49, -+ 0xE3, 0x82, 0xBB, 0xE3, 0x83, 0xB3, 0xE3, 0x83, -+ 0x88, 0x49, 0xE3, 0x83, 0x86, 0xE3, 0x82, 0x99, -+ 0xE3, 0x82, 0xB7, 0x49, 0xE3, 0x83, 0x88, 0xE3, -+ // Bytes 2900 - 293f -+ 0x82, 0x99, 0xE3, 0x83, 0xAB, 0x49, 0xE3, 0x83, -+ 0x8E, 0xE3, 0x83, 0x83, 0xE3, 0x83, 0x88, 0x49, -+ 0xE3, 0x83, 0x8F, 0xE3, 0x82, 0xA4, 0xE3, 0x83, -+ 0x84, 0x49, 0xE3, 0x83, 0x92, 0xE3, 0x82, 0x99, -+ 0xE3, 0x83, 0xAB, 0x49, 0xE3, 0x83, 0x92, 0xE3, -+ 0x82, 0x9A, 0xE3, 0x82, 0xB3, 0x49, 0xE3, 0x83, -+ 0x95, 0xE3, 0x83, 0xA9, 0xE3, 0x83, 0xB3, 0x49, -+ 0xE3, 0x83, 0x98, 0xE3, 0x82, 0x9A, 0xE3, 0x82, -+ // Bytes 2940 - 297f -+ 0xBD, 0x49, 0xE3, 0x83, 0x98, 0xE3, 0x83, 0xAB, -+ 0xE3, 0x83, 0x84, 0x49, 0xE3, 0x83, 0x9B, 0xE3, -+ 0x83, 0xBC, 0xE3, 0x83, 0xAB, 0x49, 0xE3, 0x83, -+ 0x9B, 0xE3, 0x83, 0xBC, 0xE3, 0x83, 0xB3, 0x49, -+ 0xE3, 0x83, 0x9E, 0xE3, 0x82, 0xA4, 0xE3, 0x83, -+ 0xAB, 0x49, 0xE3, 0x83, 0x9E, 0xE3, 0x83, 0x83, -+ 0xE3, 0x83, 0x8F, 0x49, 0xE3, 0x83, 0x9E, 0xE3, -+ 0x83, 0xAB, 0xE3, 0x82, 0xAF, 0x49, 0xE3, 0x83, -+ // Bytes 2980 - 29bf -+ 0xA4, 0xE3, 0x83, 0xBC, 0xE3, 0x83, 0xAB, 0x49, -+ 0xE3, 0x83, 0xA6, 0xE3, 0x82, 0xA2, 0xE3, 0x83, -+ 0xB3, 0x49, 0xE3, 0x83, 0xAF, 0xE3, 0x83, 0x83, -+ 0xE3, 0x83, 0x88, 0x4C, 0xE2, 0x80, 0xB2, 0xE2, -+ 0x80, 0xB2, 0xE2, 0x80, 0xB2, 0xE2, 0x80, 0xB2, -+ 0x4C, 0xE2, 0x88, 0xAB, 0xE2, 0x88, 0xAB, 0xE2, -+ 0x88, 0xAB, 0xE2, 0x88, 0xAB, 0x4C, 0xE3, 0x82, -+ 0xA2, 0xE3, 0x83, 0xAB, 0xE3, 0x83, 0x95, 0xE3, -+ // Bytes 29c0 - 29ff -+ 0x82, 0xA1, 0x4C, 0xE3, 0x82, 0xA8, 0xE3, 0x83, -+ 0xBC, 0xE3, 0x82, 0xAB, 0xE3, 0x83, 0xBC, 0x4C, -+ 0xE3, 0x82, 0xAB, 0xE3, 0x82, 0x99, 0xE3, 0x83, -+ 0xAD, 0xE3, 0x83, 0xB3, 0x4C, 0xE3, 0x82, 0xAB, -+ 0xE3, 0x82, 0x99, 0xE3, 0x83, 0xB3, 0xE3, 0x83, -+ 0x9E, 0x4C, 0xE3, 0x82, 0xAB, 0xE3, 0x83, 0xA9, -+ 0xE3, 0x83, 0x83, 0xE3, 0x83, 0x88, 0x4C, 0xE3, -+ 0x82, 0xAB, 0xE3, 0x83, 0xAD, 0xE3, 0x83, 0xAA, -+ // Bytes 2a00 - 2a3f -+ 0xE3, 0x83, 0xBC, 0x4C, 0xE3, 0x82, 0xAD, 0xE3, -+ 0x82, 0x99, 0xE3, 0x83, 0x8B, 0xE3, 0x83, 0xBC, -+ 0x4C, 0xE3, 0x82, 0xAD, 0xE3, 0x83, 0xA5, 0xE3, -+ 0x83, 0xAA, 0xE3, 0x83, 0xBC, 0x4C, 0xE3, 0x82, -+ 0xAF, 0xE3, 0x82, 0x99, 0xE3, 0x83, 0xA9, 0xE3, -+ 0x83, 0xA0, 0x4C, 0xE3, 0x82, 0xAF, 0xE3, 0x83, -+ 0xAD, 0xE3, 0x83, 0xBC, 0xE3, 0x83, 0x8D, 0x4C, -+ 0xE3, 0x82, 0xB5, 0xE3, 0x82, 0xA4, 0xE3, 0x82, -+ // Bytes 2a40 - 2a7f -+ 0xAF, 0xE3, 0x83, 0xAB, 0x4C, 0xE3, 0x82, 0xBF, -+ 0xE3, 0x82, 0x99, 0xE3, 0x83, 0xBC, 0xE3, 0x82, -+ 0xB9, 0x4C, 0xE3, 0x83, 0x8F, 0xE3, 0x82, 0x9A, -+ 0xE3, 0x83, 0xBC, 0xE3, 0x83, 0x84, 0x4C, 0xE3, -+ 0x83, 0x92, 0xE3, 0x82, 0x9A, 0xE3, 0x82, 0xAF, -+ 0xE3, 0x83, 0xAB, 0x4C, 0xE3, 0x83, 0x95, 0xE3, -+ 0x82, 0xA3, 0xE3, 0x83, 0xBC, 0xE3, 0x83, 0x88, -+ 0x4C, 0xE3, 0x83, 0x98, 0xE3, 0x82, 0x99, 0xE3, -+ // Bytes 2a80 - 2abf -+ 0x83, 0xBC, 0xE3, 0x82, 0xBF, 0x4C, 0xE3, 0x83, -+ 0x98, 0xE3, 0x82, 0x9A, 0xE3, 0x83, 0x8B, 0xE3, -+ 0x83, 0x92, 0x4C, 0xE3, 0x83, 0x98, 0xE3, 0x82, -+ 0x9A, 0xE3, 0x83, 0xB3, 0xE3, 0x82, 0xB9, 0x4C, -+ 0xE3, 0x83, 0x9B, 0xE3, 0x82, 0x99, 0xE3, 0x83, -+ 0xAB, 0xE3, 0x83, 0x88, 0x4C, 0xE3, 0x83, 0x9E, -+ 0xE3, 0x82, 0xA4, 0xE3, 0x82, 0xAF, 0xE3, 0x83, -+ 0xAD, 0x4C, 0xE3, 0x83, 0x9F, 0xE3, 0x82, 0xAF, -+ // Bytes 2ac0 - 2aff -+ 0xE3, 0x83, 0xAD, 0xE3, 0x83, 0xB3, 0x4C, 0xE3, -+ 0x83, 0xA1, 0xE3, 0x83, 0xBC, 0xE3, 0x83, 0x88, -+ 0xE3, 0x83, 0xAB, 0x4C, 0xE3, 0x83, 0xAA, 0xE3, -+ 0x83, 0x83, 0xE3, 0x83, 0x88, 0xE3, 0x83, 0xAB, -+ 0x4C, 0xE3, 0x83, 0xAB, 0xE3, 0x83, 0x92, 0xE3, -+ 0x82, 0x9A, 0xE3, 0x83, 0xBC, 0x4C, 0xE6, 0xA0, -+ 0xAA, 0xE5, 0xBC, 0x8F, 0xE4, 0xBC, 0x9A, 0xE7, -+ 0xA4, 0xBE, 0x4E, 0x28, 0xE1, 0x84, 0x8B, 0xE1, -+ // Bytes 2b00 - 2b3f -+ 0x85, 0xA9, 0xE1, 0x84, 0x92, 0xE1, 0x85, 0xAE, -+ 0x29, 0x4F, 0xD8, 0xAC, 0xD9, 0x84, 0x20, 0xD8, -+ 0xAC, 0xD9, 0x84, 0xD8, 0xA7, 0xD9, 0x84, 0xD9, -+ 0x87, 0x4F, 0xE3, 0x82, 0xA2, 0xE3, 0x83, 0x8F, -+ 0xE3, 0x82, 0x9A, 0xE3, 0x83, 0xBC, 0xE3, 0x83, -+ 0x88, 0x4F, 0xE3, 0x82, 0xA2, 0xE3, 0x83, 0xB3, -+ 0xE3, 0x83, 0x98, 0xE3, 0x82, 0x9A, 0xE3, 0x82, -+ 0xA2, 0x4F, 0xE3, 0x82, 0xAD, 0xE3, 0x83, 0xAD, -+ // Bytes 2b40 - 2b7f -+ 0xE3, 0x83, 0xAF, 0xE3, 0x83, 0x83, 0xE3, 0x83, -+ 0x88, 0x4F, 0xE3, 0x82, 0xB5, 0xE3, 0x83, 0xB3, -+ 0xE3, 0x83, 0x81, 0xE3, 0x83, 0xBC, 0xE3, 0x83, -+ 0xA0, 0x4F, 0xE3, 0x83, 0x8F, 0xE3, 0x82, 0x99, -+ 0xE3, 0x83, 0xBC, 0xE3, 0x83, 0xAC, 0xE3, 0x83, -+ 0xAB, 0x4F, 0xE3, 0x83, 0x98, 0xE3, 0x82, 0xAF, -+ 0xE3, 0x82, 0xBF, 0xE3, 0x83, 0xBC, 0xE3, 0x83, -+ 0xAB, 0x4F, 0xE3, 0x83, 0x9B, 0xE3, 0x82, 0x9A, -+ // Bytes 2b80 - 2bbf -+ 0xE3, 0x82, 0xA4, 0xE3, 0x83, 0xB3, 0xE3, 0x83, -+ 0x88, 0x4F, 0xE3, 0x83, 0x9E, 0xE3, 0x83, 0xB3, -+ 0xE3, 0x82, 0xB7, 0xE3, 0x83, 0xA7, 0xE3, 0x83, -+ 0xB3, 0x4F, 0xE3, 0x83, 0xA1, 0xE3, 0x82, 0xAB, -+ 0xE3, 0x82, 0x99, 0xE3, 0x83, 0x88, 0xE3, 0x83, -+ 0xB3, 0x4F, 0xE3, 0x83, 0xAB, 0xE3, 0x83, 0xBC, -+ 0xE3, 0x83, 0x95, 0xE3, 0x82, 0x99, 0xE3, 0x83, -+ 0xAB, 0x51, 0x28, 0xE1, 0x84, 0x8B, 0xE1, 0x85, -+ // Bytes 2bc0 - 2bff -+ 0xA9, 0xE1, 0x84, 0x8C, 0xE1, 0x85, 0xA5, 0xE1, -+ 0x86, 0xAB, 0x29, 0x52, 0xE3, 0x82, 0xAD, 0xE3, -+ 0x82, 0x99, 0xE3, 0x83, 0xAB, 0xE3, 0x82, 0xBF, -+ 0xE3, 0x82, 0x99, 0xE3, 0x83, 0xBC, 0x52, 0xE3, -+ 0x82, 0xAD, 0xE3, 0x83, 0xAD, 0xE3, 0x82, 0xAF, -+ 0xE3, 0x82, 0x99, 0xE3, 0x83, 0xA9, 0xE3, 0x83, -+ 0xA0, 0x52, 0xE3, 0x82, 0xAD, 0xE3, 0x83, 0xAD, -+ 0xE3, 0x83, 0xA1, 0xE3, 0x83, 0xBC, 0xE3, 0x83, -+ // Bytes 2c00 - 2c3f -+ 0x88, 0xE3, 0x83, 0xAB, 0x52, 0xE3, 0x82, 0xAF, -+ 0xE3, 0x82, 0x99, 0xE3, 0x83, 0xA9, 0xE3, 0x83, -+ 0xA0, 0xE3, 0x83, 0x88, 0xE3, 0x83, 0xB3, 0x52, -+ 0xE3, 0x82, 0xAF, 0xE3, 0x83, 0xAB, 0xE3, 0x82, -+ 0xBB, 0xE3, 0x82, 0x99, 0xE3, 0x82, 0xA4, 0xE3, -+ 0x83, 0xAD, 0x52, 0xE3, 0x83, 0x8F, 0xE3, 0x82, -+ 0x9A, 0xE3, 0x83, 0xBC, 0xE3, 0x82, 0xBB, 0xE3, -+ 0x83, 0xB3, 0xE3, 0x83, 0x88, 0x52, 0xE3, 0x83, -+ // Bytes 2c40 - 2c7f -+ 0x92, 0xE3, 0x82, 0x9A, 0xE3, 0x82, 0xA2, 0xE3, -+ 0x82, 0xB9, 0xE3, 0x83, 0x88, 0xE3, 0x83, 0xAB, -+ 0x52, 0xE3, 0x83, 0x95, 0xE3, 0x82, 0x99, 0xE3, -+ 0x83, 0x83, 0xE3, 0x82, 0xB7, 0xE3, 0x82, 0xA7, -+ 0xE3, 0x83, 0xAB, 0x52, 0xE3, 0x83, 0x9F, 0xE3, -+ 0x83, 0xAA, 0xE3, 0x83, 0x8F, 0xE3, 0x82, 0x99, -+ 0xE3, 0x83, 0xBC, 0xE3, 0x83, 0xAB, 0x52, 0xE3, -+ 0x83, 0xAC, 0xE3, 0x83, 0xB3, 0xE3, 0x83, 0x88, -+ // Bytes 2c80 - 2cbf -+ 0xE3, 0x82, 0xB1, 0xE3, 0x82, 0x99, 0xE3, 0x83, -+ 0xB3, 0x61, 0xD8, 0xB5, 0xD9, 0x84, 0xD9, 0x89, -+ 0x20, 0xD8, 0xA7, 0xD9, 0x84, 0xD9, 0x84, 0xD9, -+ 0x87, 0x20, 0xD8, 0xB9, 0xD9, 0x84, 0xD9, 0x8A, -+ 0xD9, 0x87, 0x20, 0xD9, 0x88, 0xD8, 0xB3, 0xD9, -+ 0x84, 0xD9, 0x85, 0x06, 0xE0, 0xA7, 0x87, 0xE0, -+ 0xA6, 0xBE, 0x01, 0x06, 0xE0, 0xA7, 0x87, 0xE0, -+ 0xA7, 0x97, 0x01, 0x06, 0xE0, 0xAD, 0x87, 0xE0, -+ // Bytes 2cc0 - 2cff -+ 0xAC, 0xBE, 0x01, 0x06, 0xE0, 0xAD, 0x87, 0xE0, -+ 0xAD, 0x96, 0x01, 0x06, 0xE0, 0xAD, 0x87, 0xE0, -+ 0xAD, 0x97, 0x01, 0x06, 0xE0, 0xAE, 0x92, 0xE0, -+ 0xAF, 0x97, 0x01, 0x06, 0xE0, 0xAF, 0x86, 0xE0, -+ 0xAE, 0xBE, 0x01, 0x06, 0xE0, 0xAF, 0x86, 0xE0, -+ 0xAF, 0x97, 0x01, 0x06, 0xE0, 0xAF, 0x87, 0xE0, -+ 0xAE, 0xBE, 0x01, 0x06, 0xE0, 0xB2, 0xBF, 0xE0, -+ 0xB3, 0x95, 0x01, 0x06, 0xE0, 0xB3, 0x86, 0xE0, -+ // Bytes 2d00 - 2d3f -+ 0xB3, 0x95, 0x01, 0x06, 0xE0, 0xB3, 0x86, 0xE0, -+ 0xB3, 0x96, 0x01, 0x06, 0xE0, 0xB5, 0x86, 0xE0, -+ 0xB4, 0xBE, 0x01, 0x06, 0xE0, 0xB5, 0x86, 0xE0, -+ 0xB5, 0x97, 0x01, 0x06, 0xE0, 0xB5, 0x87, 0xE0, -+ 0xB4, 0xBE, 0x01, 0x06, 0xE0, 0xB7, 0x99, 0xE0, -+ 0xB7, 0x9F, 0x01, 0x06, 0xE1, 0x80, 0xA5, 0xE1, -+ 0x80, 0xAE, 0x01, 0x06, 0xE1, 0xAC, 0x85, 0xE1, -+ 0xAC, 0xB5, 0x01, 0x06, 0xE1, 0xAC, 0x87, 0xE1, -+ // Bytes 2d40 - 2d7f -+ 0xAC, 0xB5, 0x01, 0x06, 0xE1, 0xAC, 0x89, 0xE1, -+ 0xAC, 0xB5, 0x01, 0x06, 0xE1, 0xAC, 0x8B, 0xE1, -+ 0xAC, 0xB5, 0x01, 0x06, 0xE1, 0xAC, 0x8D, 0xE1, -+ 0xAC, 0xB5, 0x01, 0x06, 0xE1, 0xAC, 0x91, 0xE1, -+ 0xAC, 0xB5, 0x01, 0x06, 0xE1, 0xAC, 0xBA, 0xE1, -+ 0xAC, 0xB5, 0x01, 0x06, 0xE1, 0xAC, 0xBC, 0xE1, -+ 0xAC, 0xB5, 0x01, 0x06, 0xE1, 0xAC, 0xBE, 0xE1, -+ 0xAC, 0xB5, 0x01, 0x06, 0xE1, 0xAC, 0xBF, 0xE1, -+ // Bytes 2d80 - 2dbf -+ 0xAC, 0xB5, 0x01, 0x06, 0xE1, 0xAD, 0x82, 0xE1, -+ 0xAC, 0xB5, 0x01, 0x08, 0xF0, 0x91, 0x84, 0xB1, -+ 0xF0, 0x91, 0x84, 0xA7, 0x01, 0x08, 0xF0, 0x91, -+ 0x84, 0xB2, 0xF0, 0x91, 0x84, 0xA7, 0x01, 0x08, -+ 0xF0, 0x91, 0x8D, 0x87, 0xF0, 0x91, 0x8C, 0xBE, -+ 0x01, 0x08, 0xF0, 0x91, 0x8D, 0x87, 0xF0, 0x91, -+ 0x8D, 0x97, 0x01, 0x08, 0xF0, 0x91, 0x92, 0xB9, -+ 0xF0, 0x91, 0x92, 0xB0, 0x01, 0x08, 0xF0, 0x91, -+ // Bytes 2dc0 - 2dff -+ 0x92, 0xB9, 0xF0, 0x91, 0x92, 0xBA, 0x01, 0x08, -+ 0xF0, 0x91, 0x92, 0xB9, 0xF0, 0x91, 0x92, 0xBD, -+ 0x01, 0x08, 0xF0, 0x91, 0x96, 0xB8, 0xF0, 0x91, -+ 0x96, 0xAF, 0x01, 0x08, 0xF0, 0x91, 0x96, 0xB9, -+ 0xF0, 0x91, 0x96, 0xAF, 0x01, 0x08, 0xF0, 0x91, -+ 0xA4, 0xB5, 0xF0, 0x91, 0xA4, 0xB0, 0x01, 0x09, -+ 0xE0, 0xB3, 0x86, 0xE0, 0xB3, 0x82, 0xE0, 0xB3, -+ 0x95, 0x02, 0x09, 0xE0, 0xB7, 0x99, 0xE0, 0xB7, -+ // Bytes 2e00 - 2e3f -+ 0x8F, 0xE0, 0xB7, 0x8A, 0x16, 0x44, 0x44, 0x5A, -+ 0xCC, 0x8C, 0xCD, 0x44, 0x44, 0x7A, 0xCC, 0x8C, -+ 0xCD, 0x44, 0x64, 0x7A, 0xCC, 0x8C, 0xCD, 0x46, -+ 0xD9, 0x84, 0xD8, 0xA7, 0xD9, 0x93, 0xCD, 0x46, -+ 0xD9, 0x84, 0xD8, 0xA7, 0xD9, 0x94, 0xCD, 0x46, -+ 0xD9, 0x84, 0xD8, 0xA7, 0xD9, 0x95, 0xB9, 0x46, -+ 0xE1, 0x84, 0x80, 0xE1, 0x85, 0xA1, 0x01, 0x46, -+ 0xE1, 0x84, 0x82, 0xE1, 0x85, 0xA1, 0x01, 0x46, -+ // Bytes 2e40 - 2e7f -+ 0xE1, 0x84, 0x83, 0xE1, 0x85, 0xA1, 0x01, 0x46, -+ 0xE1, 0x84, 0x85, 0xE1, 0x85, 0xA1, 0x01, 0x46, -+ 0xE1, 0x84, 0x86, 0xE1, 0x85, 0xA1, 0x01, 0x46, -+ 0xE1, 0x84, 0x87, 0xE1, 0x85, 0xA1, 0x01, 0x46, -+ 0xE1, 0x84, 0x89, 0xE1, 0x85, 0xA1, 0x01, 0x46, -+ 0xE1, 0x84, 0x8B, 0xE1, 0x85, 0xA1, 0x01, 0x46, -+ 0xE1, 0x84, 0x8B, 0xE1, 0x85, 0xAE, 0x01, 0x46, -+ 0xE1, 0x84, 0x8C, 0xE1, 0x85, 0xA1, 0x01, 0x46, -+ // Bytes 2e80 - 2ebf -+ 0xE1, 0x84, 0x8E, 0xE1, 0x85, 0xA1, 0x01, 0x46, -+ 0xE1, 0x84, 0x8F, 0xE1, 0x85, 0xA1, 0x01, 0x46, -+ 0xE1, 0x84, 0x90, 0xE1, 0x85, 0xA1, 0x01, 0x46, -+ 0xE1, 0x84, 0x91, 0xE1, 0x85, 0xA1, 0x01, 0x46, -+ 0xE1, 0x84, 0x92, 0xE1, 0x85, 0xA1, 0x01, 0x49, -+ 0xE3, 0x83, 0xA1, 0xE3, 0x82, 0xAB, 0xE3, 0x82, -+ 0x99, 0x11, 0x4C, 0xE1, 0x84, 0x8C, 0xE1, 0x85, -+ 0xAE, 0xE1, 0x84, 0x8B, 0xE1, 0x85, 0xB4, 0x01, -+ // Bytes 2ec0 - 2eff -+ 0x4C, 0xE3, 0x82, 0xAD, 0xE3, 0x82, 0x99, 0xE3, -+ 0x82, 0xAB, 0xE3, 0x82, 0x99, 0x11, 0x4C, 0xE3, -+ 0x82, 0xB3, 0xE3, 0x83, 0xBC, 0xE3, 0x83, 0x9B, -+ 0xE3, 0x82, 0x9A, 0x11, 0x4C, 0xE3, 0x83, 0xA4, -+ 0xE3, 0x83, 0xBC, 0xE3, 0x83, 0x88, 0xE3, 0x82, -+ 0x99, 0x11, 0x4F, 0xE1, 0x84, 0x8E, 0xE1, 0x85, -+ 0xA1, 0xE1, 0x86, 0xB7, 0xE1, 0x84, 0x80, 0xE1, -+ 0x85, 0xA9, 0x01, 0x4F, 0xE3, 0x82, 0xA4, 0xE3, -+ // Bytes 2f00 - 2f3f -+ 0x83, 0x8B, 0xE3, 0x83, 0xB3, 0xE3, 0x82, 0xAF, -+ 0xE3, 0x82, 0x99, 0x11, 0x4F, 0xE3, 0x82, 0xB7, -+ 0xE3, 0x83, 0xAA, 0xE3, 0x83, 0xB3, 0xE3, 0x82, -+ 0xAF, 0xE3, 0x82, 0x99, 0x11, 0x4F, 0xE3, 0x83, -+ 0x98, 0xE3, 0x82, 0x9A, 0xE3, 0x83, 0xBC, 0xE3, -+ 0x82, 0xB7, 0xE3, 0x82, 0x99, 0x11, 0x4F, 0xE3, -+ 0x83, 0x9B, 0xE3, 0x82, 0x9A, 0xE3, 0x83, 0xB3, -+ 0xE3, 0x83, 0x88, 0xE3, 0x82, 0x99, 0x11, 0x52, -+ // Bytes 2f40 - 2f7f -+ 0xE3, 0x82, 0xA8, 0xE3, 0x82, 0xB9, 0xE3, 0x82, -+ 0xAF, 0xE3, 0x83, 0xBC, 0xE3, 0x83, 0x88, 0xE3, -+ 0x82, 0x99, 0x11, 0x52, 0xE3, 0x83, 0x95, 0xE3, -+ 0x82, 0xA1, 0xE3, 0x83, 0xA9, 0xE3, 0x83, 0x83, -+ 0xE3, 0x83, 0x88, 0xE3, 0x82, 0x99, 0x11, 0x86, -+ 0xE0, 0xB3, 0x86, 0xE0, 0xB3, 0x82, 0x01, 0x86, -+ 0xE0, 0xB7, 0x99, 0xE0, 0xB7, 0x8F, 0x01, 0x03, -+ 0x3C, 0xCC, 0xB8, 0x05, 0x03, 0x3D, 0xCC, 0xB8, -+ // Bytes 2f80 - 2fbf -+ 0x05, 0x03, 0x3E, 0xCC, 0xB8, 0x05, 0x03, 0x41, -+ 0xCC, 0x80, 0xCD, 0x03, 0x41, 0xCC, 0x81, 0xCD, -+ 0x03, 0x41, 0xCC, 0x83, 0xCD, 0x03, 0x41, 0xCC, -+ 0x84, 0xCD, 0x03, 0x41, 0xCC, 0x89, 0xCD, 0x03, -+ 0x41, 0xCC, 0x8C, 0xCD, 0x03, 0x41, 0xCC, 0x8F, -+ 0xCD, 0x03, 0x41, 0xCC, 0x91, 0xCD, 0x03, 0x41, -+ 0xCC, 0xA5, 0xB9, 0x03, 0x41, 0xCC, 0xA8, 0xA9, -+ 0x03, 0x42, 0xCC, 0x87, 0xCD, 0x03, 0x42, 0xCC, -+ // Bytes 2fc0 - 2fff -+ 0xA3, 0xB9, 0x03, 0x42, 0xCC, 0xB1, 0xB9, 0x03, -+ 0x43, 0xCC, 0x81, 0xCD, 0x03, 0x43, 0xCC, 0x82, -+ 0xCD, 0x03, 0x43, 0xCC, 0x87, 0xCD, 0x03, 0x43, -+ 0xCC, 0x8C, 0xCD, 0x03, 0x44, 0xCC, 0x87, 0xCD, -+ 0x03, 0x44, 0xCC, 0x8C, 0xCD, 0x03, 0x44, 0xCC, -+ 0xA3, 0xB9, 0x03, 0x44, 0xCC, 0xA7, 0xA9, 0x03, -+ 0x44, 0xCC, 0xAD, 0xB9, 0x03, 0x44, 0xCC, 0xB1, -+ 0xB9, 0x03, 0x45, 0xCC, 0x80, 0xCD, 0x03, 0x45, -+ // Bytes 3000 - 303f -+ 0xCC, 0x81, 0xCD, 0x03, 0x45, 0xCC, 0x83, 0xCD, -+ 0x03, 0x45, 0xCC, 0x86, 0xCD, 0x03, 0x45, 0xCC, -+ 0x87, 0xCD, 0x03, 0x45, 0xCC, 0x88, 0xCD, 0x03, -+ 0x45, 0xCC, 0x89, 0xCD, 0x03, 0x45, 0xCC, 0x8C, -+ 0xCD, 0x03, 0x45, 0xCC, 0x8F, 0xCD, 0x03, 0x45, -+ 0xCC, 0x91, 0xCD, 0x03, 0x45, 0xCC, 0xA8, 0xA9, -+ 0x03, 0x45, 0xCC, 0xAD, 0xB9, 0x03, 0x45, 0xCC, -+ 0xB0, 0xB9, 0x03, 0x46, 0xCC, 0x87, 0xCD, 0x03, -+ // Bytes 3040 - 307f -+ 0x47, 0xCC, 0x81, 0xCD, 0x03, 0x47, 0xCC, 0x82, -+ 0xCD, 0x03, 0x47, 0xCC, 0x84, 0xCD, 0x03, 0x47, -+ 0xCC, 0x86, 0xCD, 0x03, 0x47, 0xCC, 0x87, 0xCD, -+ 0x03, 0x47, 0xCC, 0x8C, 0xCD, 0x03, 0x47, 0xCC, -+ 0xA7, 0xA9, 0x03, 0x48, 0xCC, 0x82, 0xCD, 0x03, -+ 0x48, 0xCC, 0x87, 0xCD, 0x03, 0x48, 0xCC, 0x88, -+ 0xCD, 0x03, 0x48, 0xCC, 0x8C, 0xCD, 0x03, 0x48, -+ 0xCC, 0xA3, 0xB9, 0x03, 0x48, 0xCC, 0xA7, 0xA9, -+ // Bytes 3080 - 30bf -+ 0x03, 0x48, 0xCC, 0xAE, 0xB9, 0x03, 0x49, 0xCC, -+ 0x80, 0xCD, 0x03, 0x49, 0xCC, 0x81, 0xCD, 0x03, -+ 0x49, 0xCC, 0x82, 0xCD, 0x03, 0x49, 0xCC, 0x83, -+ 0xCD, 0x03, 0x49, 0xCC, 0x84, 0xCD, 0x03, 0x49, -+ 0xCC, 0x86, 0xCD, 0x03, 0x49, 0xCC, 0x87, 0xCD, -+ 0x03, 0x49, 0xCC, 0x89, 0xCD, 0x03, 0x49, 0xCC, -+ 0x8C, 0xCD, 0x03, 0x49, 0xCC, 0x8F, 0xCD, 0x03, -+ 0x49, 0xCC, 0x91, 0xCD, 0x03, 0x49, 0xCC, 0xA3, -+ // Bytes 30c0 - 30ff -+ 0xB9, 0x03, 0x49, 0xCC, 0xA8, 0xA9, 0x03, 0x49, -+ 0xCC, 0xB0, 0xB9, 0x03, 0x4A, 0xCC, 0x82, 0xCD, -+ 0x03, 0x4B, 0xCC, 0x81, 0xCD, 0x03, 0x4B, 0xCC, -+ 0x8C, 0xCD, 0x03, 0x4B, 0xCC, 0xA3, 0xB9, 0x03, -+ 0x4B, 0xCC, 0xA7, 0xA9, 0x03, 0x4B, 0xCC, 0xB1, -+ 0xB9, 0x03, 0x4C, 0xCC, 0x81, 0xCD, 0x03, 0x4C, -+ 0xCC, 0x8C, 0xCD, 0x03, 0x4C, 0xCC, 0xA7, 0xA9, -+ 0x03, 0x4C, 0xCC, 0xAD, 0xB9, 0x03, 0x4C, 0xCC, -+ // Bytes 3100 - 313f -+ 0xB1, 0xB9, 0x03, 0x4D, 0xCC, 0x81, 0xCD, 0x03, -+ 0x4D, 0xCC, 0x87, 0xCD, 0x03, 0x4D, 0xCC, 0xA3, -+ 0xB9, 0x03, 0x4E, 0xCC, 0x80, 0xCD, 0x03, 0x4E, -+ 0xCC, 0x81, 0xCD, 0x03, 0x4E, 0xCC, 0x83, 0xCD, -+ 0x03, 0x4E, 0xCC, 0x87, 0xCD, 0x03, 0x4E, 0xCC, -+ 0x8C, 0xCD, 0x03, 0x4E, 0xCC, 0xA3, 0xB9, 0x03, -+ 0x4E, 0xCC, 0xA7, 0xA9, 0x03, 0x4E, 0xCC, 0xAD, -+ 0xB9, 0x03, 0x4E, 0xCC, 0xB1, 0xB9, 0x03, 0x4F, -+ // Bytes 3140 - 317f -+ 0xCC, 0x80, 0xCD, 0x03, 0x4F, 0xCC, 0x81, 0xCD, -+ 0x03, 0x4F, 0xCC, 0x86, 0xCD, 0x03, 0x4F, 0xCC, -+ 0x89, 0xCD, 0x03, 0x4F, 0xCC, 0x8B, 0xCD, 0x03, -+ 0x4F, 0xCC, 0x8C, 0xCD, 0x03, 0x4F, 0xCC, 0x8F, -+ 0xCD, 0x03, 0x4F, 0xCC, 0x91, 0xCD, 0x03, 0x50, -+ 0xCC, 0x81, 0xCD, 0x03, 0x50, 0xCC, 0x87, 0xCD, -+ 0x03, 0x52, 0xCC, 0x81, 0xCD, 0x03, 0x52, 0xCC, -+ 0x87, 0xCD, 0x03, 0x52, 0xCC, 0x8C, 0xCD, 0x03, -+ // Bytes 3180 - 31bf -+ 0x52, 0xCC, 0x8F, 0xCD, 0x03, 0x52, 0xCC, 0x91, -+ 0xCD, 0x03, 0x52, 0xCC, 0xA7, 0xA9, 0x03, 0x52, -+ 0xCC, 0xB1, 0xB9, 0x03, 0x53, 0xCC, 0x82, 0xCD, -+ 0x03, 0x53, 0xCC, 0x87, 0xCD, 0x03, 0x53, 0xCC, -+ 0xA6, 0xB9, 0x03, 0x53, 0xCC, 0xA7, 0xA9, 0x03, -+ 0x54, 0xCC, 0x87, 0xCD, 0x03, 0x54, 0xCC, 0x8C, -+ 0xCD, 0x03, 0x54, 0xCC, 0xA3, 0xB9, 0x03, 0x54, -+ 0xCC, 0xA6, 0xB9, 0x03, 0x54, 0xCC, 0xA7, 0xA9, -+ // Bytes 31c0 - 31ff -+ 0x03, 0x54, 0xCC, 0xAD, 0xB9, 0x03, 0x54, 0xCC, -+ 0xB1, 0xB9, 0x03, 0x55, 0xCC, 0x80, 0xCD, 0x03, -+ 0x55, 0xCC, 0x81, 0xCD, 0x03, 0x55, 0xCC, 0x82, -+ 0xCD, 0x03, 0x55, 0xCC, 0x86, 0xCD, 0x03, 0x55, -+ 0xCC, 0x89, 0xCD, 0x03, 0x55, 0xCC, 0x8A, 0xCD, -+ 0x03, 0x55, 0xCC, 0x8B, 0xCD, 0x03, 0x55, 0xCC, -+ 0x8C, 0xCD, 0x03, 0x55, 0xCC, 0x8F, 0xCD, 0x03, -+ 0x55, 0xCC, 0x91, 0xCD, 0x03, 0x55, 0xCC, 0xA3, -+ // Bytes 3200 - 323f -+ 0xB9, 0x03, 0x55, 0xCC, 0xA4, 0xB9, 0x03, 0x55, -+ 0xCC, 0xA8, 0xA9, 0x03, 0x55, 0xCC, 0xAD, 0xB9, -+ 0x03, 0x55, 0xCC, 0xB0, 0xB9, 0x03, 0x56, 0xCC, -+ 0x83, 0xCD, 0x03, 0x56, 0xCC, 0xA3, 0xB9, 0x03, -+ 0x57, 0xCC, 0x80, 0xCD, 0x03, 0x57, 0xCC, 0x81, -+ 0xCD, 0x03, 0x57, 0xCC, 0x82, 0xCD, 0x03, 0x57, -+ 0xCC, 0x87, 0xCD, 0x03, 0x57, 0xCC, 0x88, 0xCD, -+ 0x03, 0x57, 0xCC, 0xA3, 0xB9, 0x03, 0x58, 0xCC, -+ // Bytes 3240 - 327f -+ 0x87, 0xCD, 0x03, 0x58, 0xCC, 0x88, 0xCD, 0x03, -+ 0x59, 0xCC, 0x80, 0xCD, 0x03, 0x59, 0xCC, 0x81, -+ 0xCD, 0x03, 0x59, 0xCC, 0x82, 0xCD, 0x03, 0x59, -+ 0xCC, 0x83, 0xCD, 0x03, 0x59, 0xCC, 0x84, 0xCD, -+ 0x03, 0x59, 0xCC, 0x87, 0xCD, 0x03, 0x59, 0xCC, -+ 0x88, 0xCD, 0x03, 0x59, 0xCC, 0x89, 0xCD, 0x03, -+ 0x59, 0xCC, 0xA3, 0xB9, 0x03, 0x5A, 0xCC, 0x81, -+ 0xCD, 0x03, 0x5A, 0xCC, 0x82, 0xCD, 0x03, 0x5A, -+ // Bytes 3280 - 32bf -+ 0xCC, 0x87, 0xCD, 0x03, 0x5A, 0xCC, 0x8C, 0xCD, -+ 0x03, 0x5A, 0xCC, 0xA3, 0xB9, 0x03, 0x5A, 0xCC, -+ 0xB1, 0xB9, 0x03, 0x61, 0xCC, 0x80, 0xCD, 0x03, -+ 0x61, 0xCC, 0x81, 0xCD, 0x03, 0x61, 0xCC, 0x83, -+ 0xCD, 0x03, 0x61, 0xCC, 0x84, 0xCD, 0x03, 0x61, -+ 0xCC, 0x89, 0xCD, 0x03, 0x61, 0xCC, 0x8C, 0xCD, -+ 0x03, 0x61, 0xCC, 0x8F, 0xCD, 0x03, 0x61, 0xCC, -+ 0x91, 0xCD, 0x03, 0x61, 0xCC, 0xA5, 0xB9, 0x03, -+ // Bytes 32c0 - 32ff -+ 0x61, 0xCC, 0xA8, 0xA9, 0x03, 0x62, 0xCC, 0x87, -+ 0xCD, 0x03, 0x62, 0xCC, 0xA3, 0xB9, 0x03, 0x62, -+ 0xCC, 0xB1, 0xB9, 0x03, 0x63, 0xCC, 0x81, 0xCD, -+ 0x03, 0x63, 0xCC, 0x82, 0xCD, 0x03, 0x63, 0xCC, -+ 0x87, 0xCD, 0x03, 0x63, 0xCC, 0x8C, 0xCD, 0x03, -+ 0x64, 0xCC, 0x87, 0xCD, 0x03, 0x64, 0xCC, 0x8C, -+ 0xCD, 0x03, 0x64, 0xCC, 0xA3, 0xB9, 0x03, 0x64, -+ 0xCC, 0xA7, 0xA9, 0x03, 0x64, 0xCC, 0xAD, 0xB9, -+ // Bytes 3300 - 333f -+ 0x03, 0x64, 0xCC, 0xB1, 0xB9, 0x03, 0x65, 0xCC, -+ 0x80, 0xCD, 0x03, 0x65, 0xCC, 0x81, 0xCD, 0x03, -+ 0x65, 0xCC, 0x83, 0xCD, 0x03, 0x65, 0xCC, 0x86, -+ 0xCD, 0x03, 0x65, 0xCC, 0x87, 0xCD, 0x03, 0x65, -+ 0xCC, 0x88, 0xCD, 0x03, 0x65, 0xCC, 0x89, 0xCD, -+ 0x03, 0x65, 0xCC, 0x8C, 0xCD, 0x03, 0x65, 0xCC, -+ 0x8F, 0xCD, 0x03, 0x65, 0xCC, 0x91, 0xCD, 0x03, -+ 0x65, 0xCC, 0xA8, 0xA9, 0x03, 0x65, 0xCC, 0xAD, -+ // Bytes 3340 - 337f -+ 0xB9, 0x03, 0x65, 0xCC, 0xB0, 0xB9, 0x03, 0x66, -+ 0xCC, 0x87, 0xCD, 0x03, 0x67, 0xCC, 0x81, 0xCD, -+ 0x03, 0x67, 0xCC, 0x82, 0xCD, 0x03, 0x67, 0xCC, -+ 0x84, 0xCD, 0x03, 0x67, 0xCC, 0x86, 0xCD, 0x03, -+ 0x67, 0xCC, 0x87, 0xCD, 0x03, 0x67, 0xCC, 0x8C, -+ 0xCD, 0x03, 0x67, 0xCC, 0xA7, 0xA9, 0x03, 0x68, -+ 0xCC, 0x82, 0xCD, 0x03, 0x68, 0xCC, 0x87, 0xCD, -+ 0x03, 0x68, 0xCC, 0x88, 0xCD, 0x03, 0x68, 0xCC, -+ // Bytes 3380 - 33bf -+ 0x8C, 0xCD, 0x03, 0x68, 0xCC, 0xA3, 0xB9, 0x03, -+ 0x68, 0xCC, 0xA7, 0xA9, 0x03, 0x68, 0xCC, 0xAE, -+ 0xB9, 0x03, 0x68, 0xCC, 0xB1, 0xB9, 0x03, 0x69, -+ 0xCC, 0x80, 0xCD, 0x03, 0x69, 0xCC, 0x81, 0xCD, -+ 0x03, 0x69, 0xCC, 0x82, 0xCD, 0x03, 0x69, 0xCC, -+ 0x83, 0xCD, 0x03, 0x69, 0xCC, 0x84, 0xCD, 0x03, -+ 0x69, 0xCC, 0x86, 0xCD, 0x03, 0x69, 0xCC, 0x89, -+ 0xCD, 0x03, 0x69, 0xCC, 0x8C, 0xCD, 0x03, 0x69, -+ // Bytes 33c0 - 33ff -+ 0xCC, 0x8F, 0xCD, 0x03, 0x69, 0xCC, 0x91, 0xCD, -+ 0x03, 0x69, 0xCC, 0xA3, 0xB9, 0x03, 0x69, 0xCC, -+ 0xA8, 0xA9, 0x03, 0x69, 0xCC, 0xB0, 0xB9, 0x03, -+ 0x6A, 0xCC, 0x82, 0xCD, 0x03, 0x6A, 0xCC, 0x8C, -+ 0xCD, 0x03, 0x6B, 0xCC, 0x81, 0xCD, 0x03, 0x6B, -+ 0xCC, 0x8C, 0xCD, 0x03, 0x6B, 0xCC, 0xA3, 0xB9, -+ 0x03, 0x6B, 0xCC, 0xA7, 0xA9, 0x03, 0x6B, 0xCC, -+ 0xB1, 0xB9, 0x03, 0x6C, 0xCC, 0x81, 0xCD, 0x03, -+ // Bytes 3400 - 343f -+ 0x6C, 0xCC, 0x8C, 0xCD, 0x03, 0x6C, 0xCC, 0xA7, -+ 0xA9, 0x03, 0x6C, 0xCC, 0xAD, 0xB9, 0x03, 0x6C, -+ 0xCC, 0xB1, 0xB9, 0x03, 0x6D, 0xCC, 0x81, 0xCD, -+ 0x03, 0x6D, 0xCC, 0x87, 0xCD, 0x03, 0x6D, 0xCC, -+ 0xA3, 0xB9, 0x03, 0x6E, 0xCC, 0x80, 0xCD, 0x03, -+ 0x6E, 0xCC, 0x81, 0xCD, 0x03, 0x6E, 0xCC, 0x83, -+ 0xCD, 0x03, 0x6E, 0xCC, 0x87, 0xCD, 0x03, 0x6E, -+ 0xCC, 0x8C, 0xCD, 0x03, 0x6E, 0xCC, 0xA3, 0xB9, -+ // Bytes 3440 - 347f -+ 0x03, 0x6E, 0xCC, 0xA7, 0xA9, 0x03, 0x6E, 0xCC, -+ 0xAD, 0xB9, 0x03, 0x6E, 0xCC, 0xB1, 0xB9, 0x03, -+ 0x6F, 0xCC, 0x80, 0xCD, 0x03, 0x6F, 0xCC, 0x81, -+ 0xCD, 0x03, 0x6F, 0xCC, 0x86, 0xCD, 0x03, 0x6F, -+ 0xCC, 0x89, 0xCD, 0x03, 0x6F, 0xCC, 0x8B, 0xCD, -+ 0x03, 0x6F, 0xCC, 0x8C, 0xCD, 0x03, 0x6F, 0xCC, -+ 0x8F, 0xCD, 0x03, 0x6F, 0xCC, 0x91, 0xCD, 0x03, -+ 0x70, 0xCC, 0x81, 0xCD, 0x03, 0x70, 0xCC, 0x87, -+ // Bytes 3480 - 34bf -+ 0xCD, 0x03, 0x72, 0xCC, 0x81, 0xCD, 0x03, 0x72, -+ 0xCC, 0x87, 0xCD, 0x03, 0x72, 0xCC, 0x8C, 0xCD, -+ 0x03, 0x72, 0xCC, 0x8F, 0xCD, 0x03, 0x72, 0xCC, -+ 0x91, 0xCD, 0x03, 0x72, 0xCC, 0xA7, 0xA9, 0x03, -+ 0x72, 0xCC, 0xB1, 0xB9, 0x03, 0x73, 0xCC, 0x82, -+ 0xCD, 0x03, 0x73, 0xCC, 0x87, 0xCD, 0x03, 0x73, -+ 0xCC, 0xA6, 0xB9, 0x03, 0x73, 0xCC, 0xA7, 0xA9, -+ 0x03, 0x74, 0xCC, 0x87, 0xCD, 0x03, 0x74, 0xCC, -+ // Bytes 34c0 - 34ff -+ 0x88, 0xCD, 0x03, 0x74, 0xCC, 0x8C, 0xCD, 0x03, -+ 0x74, 0xCC, 0xA3, 0xB9, 0x03, 0x74, 0xCC, 0xA6, -+ 0xB9, 0x03, 0x74, 0xCC, 0xA7, 0xA9, 0x03, 0x74, -+ 0xCC, 0xAD, 0xB9, 0x03, 0x74, 0xCC, 0xB1, 0xB9, -+ 0x03, 0x75, 0xCC, 0x80, 0xCD, 0x03, 0x75, 0xCC, -+ 0x81, 0xCD, 0x03, 0x75, 0xCC, 0x82, 0xCD, 0x03, -+ 0x75, 0xCC, 0x86, 0xCD, 0x03, 0x75, 0xCC, 0x89, -+ 0xCD, 0x03, 0x75, 0xCC, 0x8A, 0xCD, 0x03, 0x75, -+ // Bytes 3500 - 353f -+ 0xCC, 0x8B, 0xCD, 0x03, 0x75, 0xCC, 0x8C, 0xCD, -+ 0x03, 0x75, 0xCC, 0x8F, 0xCD, 0x03, 0x75, 0xCC, -+ 0x91, 0xCD, 0x03, 0x75, 0xCC, 0xA3, 0xB9, 0x03, -+ 0x75, 0xCC, 0xA4, 0xB9, 0x03, 0x75, 0xCC, 0xA8, -+ 0xA9, 0x03, 0x75, 0xCC, 0xAD, 0xB9, 0x03, 0x75, -+ 0xCC, 0xB0, 0xB9, 0x03, 0x76, 0xCC, 0x83, 0xCD, -+ 0x03, 0x76, 0xCC, 0xA3, 0xB9, 0x03, 0x77, 0xCC, -+ 0x80, 0xCD, 0x03, 0x77, 0xCC, 0x81, 0xCD, 0x03, -+ // Bytes 3540 - 357f -+ 0x77, 0xCC, 0x82, 0xCD, 0x03, 0x77, 0xCC, 0x87, -+ 0xCD, 0x03, 0x77, 0xCC, 0x88, 0xCD, 0x03, 0x77, -+ 0xCC, 0x8A, 0xCD, 0x03, 0x77, 0xCC, 0xA3, 0xB9, -+ 0x03, 0x78, 0xCC, 0x87, 0xCD, 0x03, 0x78, 0xCC, -+ 0x88, 0xCD, 0x03, 0x79, 0xCC, 0x80, 0xCD, 0x03, -+ 0x79, 0xCC, 0x81, 0xCD, 0x03, 0x79, 0xCC, 0x82, -+ 0xCD, 0x03, 0x79, 0xCC, 0x83, 0xCD, 0x03, 0x79, -+ 0xCC, 0x84, 0xCD, 0x03, 0x79, 0xCC, 0x87, 0xCD, -+ // Bytes 3580 - 35bf -+ 0x03, 0x79, 0xCC, 0x88, 0xCD, 0x03, 0x79, 0xCC, -+ 0x89, 0xCD, 0x03, 0x79, 0xCC, 0x8A, 0xCD, 0x03, -+ 0x79, 0xCC, 0xA3, 0xB9, 0x03, 0x7A, 0xCC, 0x81, -+ 0xCD, 0x03, 0x7A, 0xCC, 0x82, 0xCD, 0x03, 0x7A, -+ 0xCC, 0x87, 0xCD, 0x03, 0x7A, 0xCC, 0x8C, 0xCD, -+ 0x03, 0x7A, 0xCC, 0xA3, 0xB9, 0x03, 0x7A, 0xCC, -+ 0xB1, 0xB9, 0x04, 0xC2, 0xA8, 0xCC, 0x80, 0xCE, -+ 0x04, 0xC2, 0xA8, 0xCC, 0x81, 0xCE, 0x04, 0xC2, -+ // Bytes 35c0 - 35ff -+ 0xA8, 0xCD, 0x82, 0xCE, 0x04, 0xC3, 0x86, 0xCC, -+ 0x81, 0xCD, 0x04, 0xC3, 0x86, 0xCC, 0x84, 0xCD, -+ 0x04, 0xC3, 0x98, 0xCC, 0x81, 0xCD, 0x04, 0xC3, -+ 0xA6, 0xCC, 0x81, 0xCD, 0x04, 0xC3, 0xA6, 0xCC, -+ 0x84, 0xCD, 0x04, 0xC3, 0xB8, 0xCC, 0x81, 0xCD, -+ 0x04, 0xC5, 0xBF, 0xCC, 0x87, 0xCD, 0x04, 0xC6, -+ 0xB7, 0xCC, 0x8C, 0xCD, 0x04, 0xCA, 0x92, 0xCC, -+ 0x8C, 0xCD, 0x04, 0xCE, 0x91, 0xCC, 0x80, 0xCD, -+ // Bytes 3600 - 363f -+ 0x04, 0xCE, 0x91, 0xCC, 0x81, 0xCD, 0x04, 0xCE, -+ 0x91, 0xCC, 0x84, 0xCD, 0x04, 0xCE, 0x91, 0xCC, -+ 0x86, 0xCD, 0x04, 0xCE, 0x91, 0xCD, 0x85, 0xDD, -+ 0x04, 0xCE, 0x95, 0xCC, 0x80, 0xCD, 0x04, 0xCE, -+ 0x95, 0xCC, 0x81, 0xCD, 0x04, 0xCE, 0x97, 0xCC, -+ 0x80, 0xCD, 0x04, 0xCE, 0x97, 0xCC, 0x81, 0xCD, -+ 0x04, 0xCE, 0x97, 0xCD, 0x85, 0xDD, 0x04, 0xCE, -+ 0x99, 0xCC, 0x80, 0xCD, 0x04, 0xCE, 0x99, 0xCC, -+ // Bytes 3640 - 367f -+ 0x81, 0xCD, 0x04, 0xCE, 0x99, 0xCC, 0x84, 0xCD, -+ 0x04, 0xCE, 0x99, 0xCC, 0x86, 0xCD, 0x04, 0xCE, -+ 0x99, 0xCC, 0x88, 0xCD, 0x04, 0xCE, 0x9F, 0xCC, -+ 0x80, 0xCD, 0x04, 0xCE, 0x9F, 0xCC, 0x81, 0xCD, -+ 0x04, 0xCE, 0xA1, 0xCC, 0x94, 0xCD, 0x04, 0xCE, -+ 0xA5, 0xCC, 0x80, 0xCD, 0x04, 0xCE, 0xA5, 0xCC, -+ 0x81, 0xCD, 0x04, 0xCE, 0xA5, 0xCC, 0x84, 0xCD, -+ 0x04, 0xCE, 0xA5, 0xCC, 0x86, 0xCD, 0x04, 0xCE, -+ // Bytes 3680 - 36bf -+ 0xA5, 0xCC, 0x88, 0xCD, 0x04, 0xCE, 0xA9, 0xCC, -+ 0x80, 0xCD, 0x04, 0xCE, 0xA9, 0xCC, 0x81, 0xCD, -+ 0x04, 0xCE, 0xA9, 0xCD, 0x85, 0xDD, 0x04, 0xCE, -+ 0xB1, 0xCC, 0x84, 0xCD, 0x04, 0xCE, 0xB1, 0xCC, -+ 0x86, 0xCD, 0x04, 0xCE, 0xB1, 0xCD, 0x85, 0xDD, -+ 0x04, 0xCE, 0xB5, 0xCC, 0x80, 0xCD, 0x04, 0xCE, -+ 0xB5, 0xCC, 0x81, 0xCD, 0x04, 0xCE, 0xB7, 0xCD, -+ 0x85, 0xDD, 0x04, 0xCE, 0xB9, 0xCC, 0x80, 0xCD, -+ // Bytes 36c0 - 36ff -+ 0x04, 0xCE, 0xB9, 0xCC, 0x81, 0xCD, 0x04, 0xCE, -+ 0xB9, 0xCC, 0x84, 0xCD, 0x04, 0xCE, 0xB9, 0xCC, -+ 0x86, 0xCD, 0x04, 0xCE, 0xB9, 0xCD, 0x82, 0xCD, -+ 0x04, 0xCE, 0xBF, 0xCC, 0x80, 0xCD, 0x04, 0xCE, -+ 0xBF, 0xCC, 0x81, 0xCD, 0x04, 0xCF, 0x81, 0xCC, -+ 0x93, 0xCD, 0x04, 0xCF, 0x81, 0xCC, 0x94, 0xCD, -+ 0x04, 0xCF, 0x85, 0xCC, 0x80, 0xCD, 0x04, 0xCF, -+ 0x85, 0xCC, 0x81, 0xCD, 0x04, 0xCF, 0x85, 0xCC, -+ // Bytes 3700 - 373f -+ 0x84, 0xCD, 0x04, 0xCF, 0x85, 0xCC, 0x86, 0xCD, -+ 0x04, 0xCF, 0x85, 0xCD, 0x82, 0xCD, 0x04, 0xCF, -+ 0x89, 0xCD, 0x85, 0xDD, 0x04, 0xCF, 0x92, 0xCC, -+ 0x81, 0xCD, 0x04, 0xCF, 0x92, 0xCC, 0x88, 0xCD, -+ 0x04, 0xD0, 0x86, 0xCC, 0x88, 0xCD, 0x04, 0xD0, -+ 0x90, 0xCC, 0x86, 0xCD, 0x04, 0xD0, 0x90, 0xCC, -+ 0x88, 0xCD, 0x04, 0xD0, 0x93, 0xCC, 0x81, 0xCD, -+ 0x04, 0xD0, 0x95, 0xCC, 0x80, 0xCD, 0x04, 0xD0, -+ // Bytes 3740 - 377f -+ 0x95, 0xCC, 0x86, 0xCD, 0x04, 0xD0, 0x95, 0xCC, -+ 0x88, 0xCD, 0x04, 0xD0, 0x96, 0xCC, 0x86, 0xCD, -+ 0x04, 0xD0, 0x96, 0xCC, 0x88, 0xCD, 0x04, 0xD0, -+ 0x97, 0xCC, 0x88, 0xCD, 0x04, 0xD0, 0x98, 0xCC, -+ 0x80, 0xCD, 0x04, 0xD0, 0x98, 0xCC, 0x84, 0xCD, -+ 0x04, 0xD0, 0x98, 0xCC, 0x86, 0xCD, 0x04, 0xD0, -+ 0x98, 0xCC, 0x88, 0xCD, 0x04, 0xD0, 0x9A, 0xCC, -+ 0x81, 0xCD, 0x04, 0xD0, 0x9E, 0xCC, 0x88, 0xCD, -+ // Bytes 3780 - 37bf -+ 0x04, 0xD0, 0xA3, 0xCC, 0x84, 0xCD, 0x04, 0xD0, -+ 0xA3, 0xCC, 0x86, 0xCD, 0x04, 0xD0, 0xA3, 0xCC, -+ 0x88, 0xCD, 0x04, 0xD0, 0xA3, 0xCC, 0x8B, 0xCD, -+ 0x04, 0xD0, 0xA7, 0xCC, 0x88, 0xCD, 0x04, 0xD0, -+ 0xAB, 0xCC, 0x88, 0xCD, 0x04, 0xD0, 0xAD, 0xCC, -+ 0x88, 0xCD, 0x04, 0xD0, 0xB0, 0xCC, 0x86, 0xCD, -+ 0x04, 0xD0, 0xB0, 0xCC, 0x88, 0xCD, 0x04, 0xD0, -+ 0xB3, 0xCC, 0x81, 0xCD, 0x04, 0xD0, 0xB5, 0xCC, -+ // Bytes 37c0 - 37ff -+ 0x80, 0xCD, 0x04, 0xD0, 0xB5, 0xCC, 0x86, 0xCD, -+ 0x04, 0xD0, 0xB5, 0xCC, 0x88, 0xCD, 0x04, 0xD0, -+ 0xB6, 0xCC, 0x86, 0xCD, 0x04, 0xD0, 0xB6, 0xCC, -+ 0x88, 0xCD, 0x04, 0xD0, 0xB7, 0xCC, 0x88, 0xCD, -+ 0x04, 0xD0, 0xB8, 0xCC, 0x80, 0xCD, 0x04, 0xD0, -+ 0xB8, 0xCC, 0x84, 0xCD, 0x04, 0xD0, 0xB8, 0xCC, -+ 0x86, 0xCD, 0x04, 0xD0, 0xB8, 0xCC, 0x88, 0xCD, -+ 0x04, 0xD0, 0xBA, 0xCC, 0x81, 0xCD, 0x04, 0xD0, -+ // Bytes 3800 - 383f -+ 0xBE, 0xCC, 0x88, 0xCD, 0x04, 0xD1, 0x83, 0xCC, -+ 0x84, 0xCD, 0x04, 0xD1, 0x83, 0xCC, 0x86, 0xCD, -+ 0x04, 0xD1, 0x83, 0xCC, 0x88, 0xCD, 0x04, 0xD1, -+ 0x83, 0xCC, 0x8B, 0xCD, 0x04, 0xD1, 0x87, 0xCC, -+ 0x88, 0xCD, 0x04, 0xD1, 0x8B, 0xCC, 0x88, 0xCD, -+ 0x04, 0xD1, 0x8D, 0xCC, 0x88, 0xCD, 0x04, 0xD1, -+ 0x96, 0xCC, 0x88, 0xCD, 0x04, 0xD1, 0xB4, 0xCC, -+ 0x8F, 0xCD, 0x04, 0xD1, 0xB5, 0xCC, 0x8F, 0xCD, -+ // Bytes 3840 - 387f -+ 0x04, 0xD3, 0x98, 0xCC, 0x88, 0xCD, 0x04, 0xD3, -+ 0x99, 0xCC, 0x88, 0xCD, 0x04, 0xD3, 0xA8, 0xCC, -+ 0x88, 0xCD, 0x04, 0xD3, 0xA9, 0xCC, 0x88, 0xCD, -+ 0x04, 0xD8, 0xA7, 0xD9, 0x93, 0xCD, 0x04, 0xD8, -+ 0xA7, 0xD9, 0x94, 0xCD, 0x04, 0xD8, 0xA7, 0xD9, -+ 0x95, 0xB9, 0x04, 0xD9, 0x88, 0xD9, 0x94, 0xCD, -+ 0x04, 0xD9, 0x8A, 0xD9, 0x94, 0xCD, 0x04, 0xDB, -+ 0x81, 0xD9, 0x94, 0xCD, 0x04, 0xDB, 0x92, 0xD9, -+ // Bytes 3880 - 38bf -+ 0x94, 0xCD, 0x04, 0xDB, 0x95, 0xD9, 0x94, 0xCD, -+ 0x05, 0x41, 0xCC, 0x82, 0xCC, 0x80, 0xCE, 0x05, -+ 0x41, 0xCC, 0x82, 0xCC, 0x81, 0xCE, 0x05, 0x41, -+ 0xCC, 0x82, 0xCC, 0x83, 0xCE, 0x05, 0x41, 0xCC, -+ 0x82, 0xCC, 0x89, 0xCE, 0x05, 0x41, 0xCC, 0x86, -+ 0xCC, 0x80, 0xCE, 0x05, 0x41, 0xCC, 0x86, 0xCC, -+ 0x81, 0xCE, 0x05, 0x41, 0xCC, 0x86, 0xCC, 0x83, -+ 0xCE, 0x05, 0x41, 0xCC, 0x86, 0xCC, 0x89, 0xCE, -+ // Bytes 38c0 - 38ff -+ 0x05, 0x41, 0xCC, 0x87, 0xCC, 0x84, 0xCE, 0x05, -+ 0x41, 0xCC, 0x88, 0xCC, 0x84, 0xCE, 0x05, 0x41, -+ 0xCC, 0x8A, 0xCC, 0x81, 0xCE, 0x05, 0x41, 0xCC, -+ 0xA3, 0xCC, 0x82, 0xCE, 0x05, 0x41, 0xCC, 0xA3, -+ 0xCC, 0x86, 0xCE, 0x05, 0x43, 0xCC, 0xA7, 0xCC, -+ 0x81, 0xCE, 0x05, 0x45, 0xCC, 0x82, 0xCC, 0x80, -+ 0xCE, 0x05, 0x45, 0xCC, 0x82, 0xCC, 0x81, 0xCE, -+ 0x05, 0x45, 0xCC, 0x82, 0xCC, 0x83, 0xCE, 0x05, -+ // Bytes 3900 - 393f -+ 0x45, 0xCC, 0x82, 0xCC, 0x89, 0xCE, 0x05, 0x45, -+ 0xCC, 0x84, 0xCC, 0x80, 0xCE, 0x05, 0x45, 0xCC, -+ 0x84, 0xCC, 0x81, 0xCE, 0x05, 0x45, 0xCC, 0xA3, -+ 0xCC, 0x82, 0xCE, 0x05, 0x45, 0xCC, 0xA7, 0xCC, -+ 0x86, 0xCE, 0x05, 0x49, 0xCC, 0x88, 0xCC, 0x81, -+ 0xCE, 0x05, 0x4C, 0xCC, 0xA3, 0xCC, 0x84, 0xCE, -+ 0x05, 0x4F, 0xCC, 0x82, 0xCC, 0x80, 0xCE, 0x05, -+ 0x4F, 0xCC, 0x82, 0xCC, 0x81, 0xCE, 0x05, 0x4F, -+ // Bytes 3940 - 397f -+ 0xCC, 0x82, 0xCC, 0x83, 0xCE, 0x05, 0x4F, 0xCC, -+ 0x82, 0xCC, 0x89, 0xCE, 0x05, 0x4F, 0xCC, 0x83, -+ 0xCC, 0x81, 0xCE, 0x05, 0x4F, 0xCC, 0x83, 0xCC, -+ 0x84, 0xCE, 0x05, 0x4F, 0xCC, 0x83, 0xCC, 0x88, -+ 0xCE, 0x05, 0x4F, 0xCC, 0x84, 0xCC, 0x80, 0xCE, -+ 0x05, 0x4F, 0xCC, 0x84, 0xCC, 0x81, 0xCE, 0x05, -+ 0x4F, 0xCC, 0x87, 0xCC, 0x84, 0xCE, 0x05, 0x4F, -+ 0xCC, 0x88, 0xCC, 0x84, 0xCE, 0x05, 0x4F, 0xCC, -+ // Bytes 3980 - 39bf -+ 0x9B, 0xCC, 0x80, 0xCE, 0x05, 0x4F, 0xCC, 0x9B, -+ 0xCC, 0x81, 0xCE, 0x05, 0x4F, 0xCC, 0x9B, 0xCC, -+ 0x83, 0xCE, 0x05, 0x4F, 0xCC, 0x9B, 0xCC, 0x89, -+ 0xCE, 0x05, 0x4F, 0xCC, 0x9B, 0xCC, 0xA3, 0xBA, -+ 0x05, 0x4F, 0xCC, 0xA3, 0xCC, 0x82, 0xCE, 0x05, -+ 0x4F, 0xCC, 0xA8, 0xCC, 0x84, 0xCE, 0x05, 0x52, -+ 0xCC, 0xA3, 0xCC, 0x84, 0xCE, 0x05, 0x53, 0xCC, -+ 0x81, 0xCC, 0x87, 0xCE, 0x05, 0x53, 0xCC, 0x8C, -+ // Bytes 39c0 - 39ff -+ 0xCC, 0x87, 0xCE, 0x05, 0x53, 0xCC, 0xA3, 0xCC, -+ 0x87, 0xCE, 0x05, 0x55, 0xCC, 0x83, 0xCC, 0x81, -+ 0xCE, 0x05, 0x55, 0xCC, 0x84, 0xCC, 0x88, 0xCE, -+ 0x05, 0x55, 0xCC, 0x88, 0xCC, 0x80, 0xCE, 0x05, -+ 0x55, 0xCC, 0x88, 0xCC, 0x81, 0xCE, 0x05, 0x55, -+ 0xCC, 0x88, 0xCC, 0x84, 0xCE, 0x05, 0x55, 0xCC, -+ 0x88, 0xCC, 0x8C, 0xCE, 0x05, 0x55, 0xCC, 0x9B, -+ 0xCC, 0x80, 0xCE, 0x05, 0x55, 0xCC, 0x9B, 0xCC, -+ // Bytes 3a00 - 3a3f -+ 0x81, 0xCE, 0x05, 0x55, 0xCC, 0x9B, 0xCC, 0x83, -+ 0xCE, 0x05, 0x55, 0xCC, 0x9B, 0xCC, 0x89, 0xCE, -+ 0x05, 0x55, 0xCC, 0x9B, 0xCC, 0xA3, 0xBA, 0x05, -+ 0x61, 0xCC, 0x82, 0xCC, 0x80, 0xCE, 0x05, 0x61, -+ 0xCC, 0x82, 0xCC, 0x81, 0xCE, 0x05, 0x61, 0xCC, -+ 0x82, 0xCC, 0x83, 0xCE, 0x05, 0x61, 0xCC, 0x82, -+ 0xCC, 0x89, 0xCE, 0x05, 0x61, 0xCC, 0x86, 0xCC, -+ 0x80, 0xCE, 0x05, 0x61, 0xCC, 0x86, 0xCC, 0x81, -+ // Bytes 3a40 - 3a7f -+ 0xCE, 0x05, 0x61, 0xCC, 0x86, 0xCC, 0x83, 0xCE, -+ 0x05, 0x61, 0xCC, 0x86, 0xCC, 0x89, 0xCE, 0x05, -+ 0x61, 0xCC, 0x87, 0xCC, 0x84, 0xCE, 0x05, 0x61, -+ 0xCC, 0x88, 0xCC, 0x84, 0xCE, 0x05, 0x61, 0xCC, -+ 0x8A, 0xCC, 0x81, 0xCE, 0x05, 0x61, 0xCC, 0xA3, -+ 0xCC, 0x82, 0xCE, 0x05, 0x61, 0xCC, 0xA3, 0xCC, -+ 0x86, 0xCE, 0x05, 0x63, 0xCC, 0xA7, 0xCC, 0x81, -+ 0xCE, 0x05, 0x65, 0xCC, 0x82, 0xCC, 0x80, 0xCE, -+ // Bytes 3a80 - 3abf -+ 0x05, 0x65, 0xCC, 0x82, 0xCC, 0x81, 0xCE, 0x05, -+ 0x65, 0xCC, 0x82, 0xCC, 0x83, 0xCE, 0x05, 0x65, -+ 0xCC, 0x82, 0xCC, 0x89, 0xCE, 0x05, 0x65, 0xCC, -+ 0x84, 0xCC, 0x80, 0xCE, 0x05, 0x65, 0xCC, 0x84, -+ 0xCC, 0x81, 0xCE, 0x05, 0x65, 0xCC, 0xA3, 0xCC, -+ 0x82, 0xCE, 0x05, 0x65, 0xCC, 0xA7, 0xCC, 0x86, -+ 0xCE, 0x05, 0x69, 0xCC, 0x88, 0xCC, 0x81, 0xCE, -+ 0x05, 0x6C, 0xCC, 0xA3, 0xCC, 0x84, 0xCE, 0x05, -+ // Bytes 3ac0 - 3aff -+ 0x6F, 0xCC, 0x82, 0xCC, 0x80, 0xCE, 0x05, 0x6F, -+ 0xCC, 0x82, 0xCC, 0x81, 0xCE, 0x05, 0x6F, 0xCC, -+ 0x82, 0xCC, 0x83, 0xCE, 0x05, 0x6F, 0xCC, 0x82, -+ 0xCC, 0x89, 0xCE, 0x05, 0x6F, 0xCC, 0x83, 0xCC, -+ 0x81, 0xCE, 0x05, 0x6F, 0xCC, 0x83, 0xCC, 0x84, -+ 0xCE, 0x05, 0x6F, 0xCC, 0x83, 0xCC, 0x88, 0xCE, -+ 0x05, 0x6F, 0xCC, 0x84, 0xCC, 0x80, 0xCE, 0x05, -+ 0x6F, 0xCC, 0x84, 0xCC, 0x81, 0xCE, 0x05, 0x6F, -+ // Bytes 3b00 - 3b3f -+ 0xCC, 0x87, 0xCC, 0x84, 0xCE, 0x05, 0x6F, 0xCC, -+ 0x88, 0xCC, 0x84, 0xCE, 0x05, 0x6F, 0xCC, 0x9B, -+ 0xCC, 0x80, 0xCE, 0x05, 0x6F, 0xCC, 0x9B, 0xCC, -+ 0x81, 0xCE, 0x05, 0x6F, 0xCC, 0x9B, 0xCC, 0x83, -+ 0xCE, 0x05, 0x6F, 0xCC, 0x9B, 0xCC, 0x89, 0xCE, -+ 0x05, 0x6F, 0xCC, 0x9B, 0xCC, 0xA3, 0xBA, 0x05, -+ 0x6F, 0xCC, 0xA3, 0xCC, 0x82, 0xCE, 0x05, 0x6F, -+ 0xCC, 0xA8, 0xCC, 0x84, 0xCE, 0x05, 0x72, 0xCC, -+ // Bytes 3b40 - 3b7f -+ 0xA3, 0xCC, 0x84, 0xCE, 0x05, 0x73, 0xCC, 0x81, -+ 0xCC, 0x87, 0xCE, 0x05, 0x73, 0xCC, 0x8C, 0xCC, -+ 0x87, 0xCE, 0x05, 0x73, 0xCC, 0xA3, 0xCC, 0x87, -+ 0xCE, 0x05, 0x75, 0xCC, 0x83, 0xCC, 0x81, 0xCE, -+ 0x05, 0x75, 0xCC, 0x84, 0xCC, 0x88, 0xCE, 0x05, -+ 0x75, 0xCC, 0x88, 0xCC, 0x80, 0xCE, 0x05, 0x75, -+ 0xCC, 0x88, 0xCC, 0x81, 0xCE, 0x05, 0x75, 0xCC, -+ 0x88, 0xCC, 0x84, 0xCE, 0x05, 0x75, 0xCC, 0x88, -+ // Bytes 3b80 - 3bbf -+ 0xCC, 0x8C, 0xCE, 0x05, 0x75, 0xCC, 0x9B, 0xCC, -+ 0x80, 0xCE, 0x05, 0x75, 0xCC, 0x9B, 0xCC, 0x81, -+ 0xCE, 0x05, 0x75, 0xCC, 0x9B, 0xCC, 0x83, 0xCE, -+ 0x05, 0x75, 0xCC, 0x9B, 0xCC, 0x89, 0xCE, 0x05, -+ 0x75, 0xCC, 0x9B, 0xCC, 0xA3, 0xBA, 0x05, 0xE1, -+ 0xBE, 0xBF, 0xCC, 0x80, 0xCE, 0x05, 0xE1, 0xBE, -+ 0xBF, 0xCC, 0x81, 0xCE, 0x05, 0xE1, 0xBE, 0xBF, -+ 0xCD, 0x82, 0xCE, 0x05, 0xE1, 0xBF, 0xBE, 0xCC, -+ // Bytes 3bc0 - 3bff -+ 0x80, 0xCE, 0x05, 0xE1, 0xBF, 0xBE, 0xCC, 0x81, -+ 0xCE, 0x05, 0xE1, 0xBF, 0xBE, 0xCD, 0x82, 0xCE, -+ 0x05, 0xE2, 0x86, 0x90, 0xCC, 0xB8, 0x05, 0x05, -+ 0xE2, 0x86, 0x92, 0xCC, 0xB8, 0x05, 0x05, 0xE2, -+ 0x86, 0x94, 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x87, -+ 0x90, 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x87, 0x92, -+ 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x87, 0x94, 0xCC, -+ 0xB8, 0x05, 0x05, 0xE2, 0x88, 0x83, 0xCC, 0xB8, -+ // Bytes 3c00 - 3c3f -+ 0x05, 0x05, 0xE2, 0x88, 0x88, 0xCC, 0xB8, 0x05, -+ 0x05, 0xE2, 0x88, 0x8B, 0xCC, 0xB8, 0x05, 0x05, -+ 0xE2, 0x88, 0xA3, 0xCC, 0xB8, 0x05, 0x05, 0xE2, -+ 0x88, 0xA5, 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x88, -+ 0xBC, 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x89, 0x83, -+ 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x89, 0x85, 0xCC, -+ 0xB8, 0x05, 0x05, 0xE2, 0x89, 0x88, 0xCC, 0xB8, -+ 0x05, 0x05, 0xE2, 0x89, 0x8D, 0xCC, 0xB8, 0x05, -+ // Bytes 3c40 - 3c7f -+ 0x05, 0xE2, 0x89, 0xA1, 0xCC, 0xB8, 0x05, 0x05, -+ 0xE2, 0x89, 0xA4, 0xCC, 0xB8, 0x05, 0x05, 0xE2, -+ 0x89, 0xA5, 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x89, -+ 0xB2, 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x89, 0xB3, -+ 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x89, 0xB6, 0xCC, -+ 0xB8, 0x05, 0x05, 0xE2, 0x89, 0xB7, 0xCC, 0xB8, -+ 0x05, 0x05, 0xE2, 0x89, 0xBA, 0xCC, 0xB8, 0x05, -+ 0x05, 0xE2, 0x89, 0xBB, 0xCC, 0xB8, 0x05, 0x05, -+ // Bytes 3c80 - 3cbf -+ 0xE2, 0x89, 0xBC, 0xCC, 0xB8, 0x05, 0x05, 0xE2, -+ 0x89, 0xBD, 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x8A, -+ 0x82, 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x8A, 0x83, -+ 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x8A, 0x86, 0xCC, -+ 0xB8, 0x05, 0x05, 0xE2, 0x8A, 0x87, 0xCC, 0xB8, -+ 0x05, 0x05, 0xE2, 0x8A, 0x91, 0xCC, 0xB8, 0x05, -+ 0x05, 0xE2, 0x8A, 0x92, 0xCC, 0xB8, 0x05, 0x05, -+ 0xE2, 0x8A, 0xA2, 0xCC, 0xB8, 0x05, 0x05, 0xE2, -+ // Bytes 3cc0 - 3cff -+ 0x8A, 0xA8, 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x8A, -+ 0xA9, 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x8A, 0xAB, -+ 0xCC, 0xB8, 0x05, 0x05, 0xE2, 0x8A, 0xB2, 0xCC, -+ 0xB8, 0x05, 0x05, 0xE2, 0x8A, 0xB3, 0xCC, 0xB8, -+ 0x05, 0x05, 0xE2, 0x8A, 0xB4, 0xCC, 0xB8, 0x05, -+ 0x05, 0xE2, 0x8A, 0xB5, 0xCC, 0xB8, 0x05, 0x06, -+ 0xCE, 0x91, 0xCC, 0x93, 0xCD, 0x85, 0xDE, 0x06, -+ 0xCE, 0x91, 0xCC, 0x94, 0xCD, 0x85, 0xDE, 0x06, -+ // Bytes 3d00 - 3d3f -+ 0xCE, 0x95, 0xCC, 0x93, 0xCC, 0x80, 0xCE, 0x06, -+ 0xCE, 0x95, 0xCC, 0x93, 0xCC, 0x81, 0xCE, 0x06, -+ 0xCE, 0x95, 0xCC, 0x94, 0xCC, 0x80, 0xCE, 0x06, -+ 0xCE, 0x95, 0xCC, 0x94, 0xCC, 0x81, 0xCE, 0x06, -+ 0xCE, 0x97, 0xCC, 0x93, 0xCD, 0x85, 0xDE, 0x06, -+ 0xCE, 0x97, 0xCC, 0x94, 0xCD, 0x85, 0xDE, 0x06, -+ 0xCE, 0x99, 0xCC, 0x93, 0xCC, 0x80, 0xCE, 0x06, -+ 0xCE, 0x99, 0xCC, 0x93, 0xCC, 0x81, 0xCE, 0x06, -+ // Bytes 3d40 - 3d7f -+ 0xCE, 0x99, 0xCC, 0x93, 0xCD, 0x82, 0xCE, 0x06, -+ 0xCE, 0x99, 0xCC, 0x94, 0xCC, 0x80, 0xCE, 0x06, -+ 0xCE, 0x99, 0xCC, 0x94, 0xCC, 0x81, 0xCE, 0x06, -+ 0xCE, 0x99, 0xCC, 0x94, 0xCD, 0x82, 0xCE, 0x06, -+ 0xCE, 0x9F, 0xCC, 0x93, 0xCC, 0x80, 0xCE, 0x06, -+ 0xCE, 0x9F, 0xCC, 0x93, 0xCC, 0x81, 0xCE, 0x06, -+ 0xCE, 0x9F, 0xCC, 0x94, 0xCC, 0x80, 0xCE, 0x06, -+ 0xCE, 0x9F, 0xCC, 0x94, 0xCC, 0x81, 0xCE, 0x06, -+ // Bytes 3d80 - 3dbf -+ 0xCE, 0xA5, 0xCC, 0x94, 0xCC, 0x80, 0xCE, 0x06, -+ 0xCE, 0xA5, 0xCC, 0x94, 0xCC, 0x81, 0xCE, 0x06, -+ 0xCE, 0xA5, 0xCC, 0x94, 0xCD, 0x82, 0xCE, 0x06, -+ 0xCE, 0xA9, 0xCC, 0x93, 0xCD, 0x85, 0xDE, 0x06, -+ 0xCE, 0xA9, 0xCC, 0x94, 0xCD, 0x85, 0xDE, 0x06, -+ 0xCE, 0xB1, 0xCC, 0x80, 0xCD, 0x85, 0xDE, 0x06, -+ 0xCE, 0xB1, 0xCC, 0x81, 0xCD, 0x85, 0xDE, 0x06, -+ 0xCE, 0xB1, 0xCC, 0x93, 0xCD, 0x85, 0xDE, 0x06, -+ // Bytes 3dc0 - 3dff -+ 0xCE, 0xB1, 0xCC, 0x94, 0xCD, 0x85, 0xDE, 0x06, -+ 0xCE, 0xB1, 0xCD, 0x82, 0xCD, 0x85, 0xDE, 0x06, -+ 0xCE, 0xB5, 0xCC, 0x93, 0xCC, 0x80, 0xCE, 0x06, -+ 0xCE, 0xB5, 0xCC, 0x93, 0xCC, 0x81, 0xCE, 0x06, -+ 0xCE, 0xB5, 0xCC, 0x94, 0xCC, 0x80, 0xCE, 0x06, -+ 0xCE, 0xB5, 0xCC, 0x94, 0xCC, 0x81, 0xCE, 0x06, -+ 0xCE, 0xB7, 0xCC, 0x80, 0xCD, 0x85, 0xDE, 0x06, -+ 0xCE, 0xB7, 0xCC, 0x81, 0xCD, 0x85, 0xDE, 0x06, -+ // Bytes 3e00 - 3e3f -+ 0xCE, 0xB7, 0xCC, 0x93, 0xCD, 0x85, 0xDE, 0x06, -+ 0xCE, 0xB7, 0xCC, 0x94, 0xCD, 0x85, 0xDE, 0x06, -+ 0xCE, 0xB7, 0xCD, 0x82, 0xCD, 0x85, 0xDE, 0x06, -+ 0xCE, 0xB9, 0xCC, 0x88, 0xCC, 0x80, 0xCE, 0x06, -+ 0xCE, 0xB9, 0xCC, 0x88, 0xCC, 0x81, 0xCE, 0x06, -+ 0xCE, 0xB9, 0xCC, 0x88, 0xCD, 0x82, 0xCE, 0x06, -+ 0xCE, 0xB9, 0xCC, 0x93, 0xCC, 0x80, 0xCE, 0x06, -+ 0xCE, 0xB9, 0xCC, 0x93, 0xCC, 0x81, 0xCE, 0x06, -+ // Bytes 3e40 - 3e7f -+ 0xCE, 0xB9, 0xCC, 0x93, 0xCD, 0x82, 0xCE, 0x06, -+ 0xCE, 0xB9, 0xCC, 0x94, 0xCC, 0x80, 0xCE, 0x06, -+ 0xCE, 0xB9, 0xCC, 0x94, 0xCC, 0x81, 0xCE, 0x06, -+ 0xCE, 0xB9, 0xCC, 0x94, 0xCD, 0x82, 0xCE, 0x06, -+ 0xCE, 0xBF, 0xCC, 0x93, 0xCC, 0x80, 0xCE, 0x06, -+ 0xCE, 0xBF, 0xCC, 0x93, 0xCC, 0x81, 0xCE, 0x06, -+ 0xCE, 0xBF, 0xCC, 0x94, 0xCC, 0x80, 0xCE, 0x06, -+ 0xCE, 0xBF, 0xCC, 0x94, 0xCC, 0x81, 0xCE, 0x06, -+ // Bytes 3e80 - 3ebf -+ 0xCF, 0x85, 0xCC, 0x88, 0xCC, 0x80, 0xCE, 0x06, -+ 0xCF, 0x85, 0xCC, 0x88, 0xCC, 0x81, 0xCE, 0x06, -+ 0xCF, 0x85, 0xCC, 0x88, 0xCD, 0x82, 0xCE, 0x06, -+ 0xCF, 0x85, 0xCC, 0x93, 0xCC, 0x80, 0xCE, 0x06, -+ 0xCF, 0x85, 0xCC, 0x93, 0xCC, 0x81, 0xCE, 0x06, -+ 0xCF, 0x85, 0xCC, 0x93, 0xCD, 0x82, 0xCE, 0x06, -+ 0xCF, 0x85, 0xCC, 0x94, 0xCC, 0x80, 0xCE, 0x06, -+ 0xCF, 0x85, 0xCC, 0x94, 0xCC, 0x81, 0xCE, 0x06, -+ // Bytes 3ec0 - 3eff -+ 0xCF, 0x85, 0xCC, 0x94, 0xCD, 0x82, 0xCE, 0x06, -+ 0xCF, 0x89, 0xCC, 0x80, 0xCD, 0x85, 0xDE, 0x06, -+ 0xCF, 0x89, 0xCC, 0x81, 0xCD, 0x85, 0xDE, 0x06, -+ 0xCF, 0x89, 0xCC, 0x93, 0xCD, 0x85, 0xDE, 0x06, -+ 0xCF, 0x89, 0xCC, 0x94, 0xCD, 0x85, 0xDE, 0x06, -+ 0xCF, 0x89, 0xCD, 0x82, 0xCD, 0x85, 0xDE, 0x06, -+ 0xE0, 0xA4, 0xA8, 0xE0, 0xA4, 0xBC, 0x0D, 0x06, -+ 0xE0, 0xA4, 0xB0, 0xE0, 0xA4, 0xBC, 0x0D, 0x06, -+ // Bytes 3f00 - 3f3f -+ 0xE0, 0xA4, 0xB3, 0xE0, 0xA4, 0xBC, 0x0D, 0x06, -+ 0xE0, 0xB1, 0x86, 0xE0, 0xB1, 0x96, 0x89, 0x06, -+ 0xE0, 0xB7, 0x99, 0xE0, 0xB7, 0x8A, 0x15, 0x06, -+ 0xE3, 0x81, 0x86, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x81, 0x8B, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x81, 0x8D, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x81, 0x8F, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x81, 0x91, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ // Bytes 3f40 - 3f7f -+ 0xE3, 0x81, 0x93, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x81, 0x95, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x81, 0x97, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x81, 0x99, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x81, 0x9B, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x81, 0x9D, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x81, 0x9F, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x81, 0xA1, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ // Bytes 3f80 - 3fbf -+ 0xE3, 0x81, 0xA4, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x81, 0xA6, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x81, 0xA8, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x81, 0xAF, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x81, 0xAF, 0xE3, 0x82, 0x9A, 0x11, 0x06, -+ 0xE3, 0x81, 0xB2, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x81, 0xB2, 0xE3, 0x82, 0x9A, 0x11, 0x06, -+ 0xE3, 0x81, 0xB5, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ // Bytes 3fc0 - 3fff -+ 0xE3, 0x81, 0xB5, 0xE3, 0x82, 0x9A, 0x11, 0x06, -+ 0xE3, 0x81, 0xB8, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x81, 0xB8, 0xE3, 0x82, 0x9A, 0x11, 0x06, -+ 0xE3, 0x81, 0xBB, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x81, 0xBB, 0xE3, 0x82, 0x9A, 0x11, 0x06, -+ 0xE3, 0x82, 0x9D, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x82, 0xA6, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x82, 0xAB, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ // Bytes 4000 - 403f -+ 0xE3, 0x82, 0xAD, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x82, 0xAF, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x82, 0xB1, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x82, 0xB3, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x82, 0xB5, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x82, 0xB7, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x82, 0xB9, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x82, 0xBB, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ // Bytes 4040 - 407f -+ 0xE3, 0x82, 0xBD, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x82, 0xBF, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x83, 0x81, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x83, 0x84, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x83, 0x86, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x83, 0x88, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x83, 0x8F, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x83, 0x8F, 0xE3, 0x82, 0x9A, 0x11, 0x06, -+ // Bytes 4080 - 40bf -+ 0xE3, 0x83, 0x92, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x83, 0x92, 0xE3, 0x82, 0x9A, 0x11, 0x06, -+ 0xE3, 0x83, 0x95, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x83, 0x95, 0xE3, 0x82, 0x9A, 0x11, 0x06, -+ 0xE3, 0x83, 0x98, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x83, 0x98, 0xE3, 0x82, 0x9A, 0x11, 0x06, -+ 0xE3, 0x83, 0x9B, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x83, 0x9B, 0xE3, 0x82, 0x9A, 0x11, 0x06, -+ // Bytes 40c0 - 40ff -+ 0xE3, 0x83, 0xAF, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x83, 0xB0, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x83, 0xB1, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x83, 0xB2, 0xE3, 0x82, 0x99, 0x11, 0x06, -+ 0xE3, 0x83, 0xBD, 0xE3, 0x82, 0x99, 0x11, 0x08, -+ 0xCE, 0x91, 0xCC, 0x93, 0xCC, 0x80, 0xCD, 0x85, -+ 0xDF, 0x08, 0xCE, 0x91, 0xCC, 0x93, 0xCC, 0x81, -+ 0xCD, 0x85, 0xDF, 0x08, 0xCE, 0x91, 0xCC, 0x93, -+ // Bytes 4100 - 413f -+ 0xCD, 0x82, 0xCD, 0x85, 0xDF, 0x08, 0xCE, 0x91, -+ 0xCC, 0x94, 0xCC, 0x80, 0xCD, 0x85, 0xDF, 0x08, -+ 0xCE, 0x91, 0xCC, 0x94, 0xCC, 0x81, 0xCD, 0x85, -+ 0xDF, 0x08, 0xCE, 0x91, 0xCC, 0x94, 0xCD, 0x82, -+ 0xCD, 0x85, 0xDF, 0x08, 0xCE, 0x97, 0xCC, 0x93, -+ 0xCC, 0x80, 0xCD, 0x85, 0xDF, 0x08, 0xCE, 0x97, -+ 0xCC, 0x93, 0xCC, 0x81, 0xCD, 0x85, 0xDF, 0x08, -+ 0xCE, 0x97, 0xCC, 0x93, 0xCD, 0x82, 0xCD, 0x85, -+ // Bytes 4140 - 417f -+ 0xDF, 0x08, 0xCE, 0x97, 0xCC, 0x94, 0xCC, 0x80, -+ 0xCD, 0x85, 0xDF, 0x08, 0xCE, 0x97, 0xCC, 0x94, -+ 0xCC, 0x81, 0xCD, 0x85, 0xDF, 0x08, 0xCE, 0x97, -+ 0xCC, 0x94, 0xCD, 0x82, 0xCD, 0x85, 0xDF, 0x08, -+ 0xCE, 0xA9, 0xCC, 0x93, 0xCC, 0x80, 0xCD, 0x85, -+ 0xDF, 0x08, 0xCE, 0xA9, 0xCC, 0x93, 0xCC, 0x81, -+ 0xCD, 0x85, 0xDF, 0x08, 0xCE, 0xA9, 0xCC, 0x93, -+ 0xCD, 0x82, 0xCD, 0x85, 0xDF, 0x08, 0xCE, 0xA9, -+ // Bytes 4180 - 41bf -+ 0xCC, 0x94, 0xCC, 0x80, 0xCD, 0x85, 0xDF, 0x08, -+ 0xCE, 0xA9, 0xCC, 0x94, 0xCC, 0x81, 0xCD, 0x85, -+ 0xDF, 0x08, 0xCE, 0xA9, 0xCC, 0x94, 0xCD, 0x82, -+ 0xCD, 0x85, 0xDF, 0x08, 0xCE, 0xB1, 0xCC, 0x93, -+ 0xCC, 0x80, 0xCD, 0x85, 0xDF, 0x08, 0xCE, 0xB1, -+ 0xCC, 0x93, 0xCC, 0x81, 0xCD, 0x85, 0xDF, 0x08, -+ 0xCE, 0xB1, 0xCC, 0x93, 0xCD, 0x82, 0xCD, 0x85, -+ 0xDF, 0x08, 0xCE, 0xB1, 0xCC, 0x94, 0xCC, 0x80, -+ // Bytes 41c0 - 41ff -+ 0xCD, 0x85, 0xDF, 0x08, 0xCE, 0xB1, 0xCC, 0x94, -+ 0xCC, 0x81, 0xCD, 0x85, 0xDF, 0x08, 0xCE, 0xB1, -+ 0xCC, 0x94, 0xCD, 0x82, 0xCD, 0x85, 0xDF, 0x08, -+ 0xCE, 0xB7, 0xCC, 0x93, 0xCC, 0x80, 0xCD, 0x85, -+ 0xDF, 0x08, 0xCE, 0xB7, 0xCC, 0x93, 0xCC, 0x81, -+ 0xCD, 0x85, 0xDF, 0x08, 0xCE, 0xB7, 0xCC, 0x93, -+ 0xCD, 0x82, 0xCD, 0x85, 0xDF, 0x08, 0xCE, 0xB7, -+ 0xCC, 0x94, 0xCC, 0x80, 0xCD, 0x85, 0xDF, 0x08, -+ // Bytes 4200 - 423f -+ 0xCE, 0xB7, 0xCC, 0x94, 0xCC, 0x81, 0xCD, 0x85, -+ 0xDF, 0x08, 0xCE, 0xB7, 0xCC, 0x94, 0xCD, 0x82, -+ 0xCD, 0x85, 0xDF, 0x08, 0xCF, 0x89, 0xCC, 0x93, -+ 0xCC, 0x80, 0xCD, 0x85, 0xDF, 0x08, 0xCF, 0x89, -+ 0xCC, 0x93, 0xCC, 0x81, 0xCD, 0x85, 0xDF, 0x08, -+ 0xCF, 0x89, 0xCC, 0x93, 0xCD, 0x82, 0xCD, 0x85, -+ 0xDF, 0x08, 0xCF, 0x89, 0xCC, 0x94, 0xCC, 0x80, -+ 0xCD, 0x85, 0xDF, 0x08, 0xCF, 0x89, 0xCC, 0x94, -+ // Bytes 4240 - 427f -+ 0xCC, 0x81, 0xCD, 0x85, 0xDF, 0x08, 0xCF, 0x89, -+ 0xCC, 0x94, 0xCD, 0x82, 0xCD, 0x85, 0xDF, 0x08, -+ 0xF0, 0x91, 0x82, 0x99, 0xF0, 0x91, 0x82, 0xBA, -+ 0x0D, 0x08, 0xF0, 0x91, 0x82, 0x9B, 0xF0, 0x91, -+ 0x82, 0xBA, 0x0D, 0x08, 0xF0, 0x91, 0x82, 0xA5, -+ 0xF0, 0x91, 0x82, 0xBA, 0x0D, 0x42, 0xC2, 0xB4, -+ 0x01, 0x43, 0x20, 0xCC, 0x81, 0xCD, 0x43, 0x20, -+ 0xCC, 0x83, 0xCD, 0x43, 0x20, 0xCC, 0x84, 0xCD, -+ // Bytes 4280 - 42bf -+ 0x43, 0x20, 0xCC, 0x85, 0xCD, 0x43, 0x20, 0xCC, -+ 0x86, 0xCD, 0x43, 0x20, 0xCC, 0x87, 0xCD, 0x43, -+ 0x20, 0xCC, 0x88, 0xCD, 0x43, 0x20, 0xCC, 0x8A, -+ 0xCD, 0x43, 0x20, 0xCC, 0x8B, 0xCD, 0x43, 0x20, -+ 0xCC, 0x93, 0xCD, 0x43, 0x20, 0xCC, 0x94, 0xCD, -+ 0x43, 0x20, 0xCC, 0xA7, 0xA9, 0x43, 0x20, 0xCC, -+ 0xA8, 0xA9, 0x43, 0x20, 0xCC, 0xB3, 0xB9, 0x43, -+ 0x20, 0xCD, 0x82, 0xCD, 0x43, 0x20, 0xCD, 0x85, -+ // Bytes 42c0 - 42ff -+ 0xDD, 0x43, 0x20, 0xD9, 0x8B, 0x5D, 0x43, 0x20, -+ 0xD9, 0x8C, 0x61, 0x43, 0x20, 0xD9, 0x8D, 0x65, -+ 0x43, 0x20, 0xD9, 0x8E, 0x69, 0x43, 0x20, 0xD9, -+ 0x8F, 0x6D, 0x43, 0x20, 0xD9, 0x90, 0x71, 0x43, -+ 0x20, 0xD9, 0x91, 0x75, 0x43, 0x20, 0xD9, 0x92, -+ 0x79, 0x43, 0x41, 0xCC, 0x8A, 0xCD, 0x43, 0x73, -+ 0xCC, 0x87, 0xCD, 0x44, 0x20, 0xE3, 0x82, 0x99, -+ 0x11, 0x44, 0x20, 0xE3, 0x82, 0x9A, 0x11, 0x44, -+ // Bytes 4300 - 433f -+ 0xC2, 0xA8, 0xCC, 0x81, 0xCE, 0x44, 0xCE, 0x91, -+ 0xCC, 0x81, 0xCD, 0x44, 0xCE, 0x95, 0xCC, 0x81, -+ 0xCD, 0x44, 0xCE, 0x97, 0xCC, 0x81, 0xCD, 0x44, -+ 0xCE, 0x99, 0xCC, 0x81, 0xCD, 0x44, 0xCE, 0x9F, -+ 0xCC, 0x81, 0xCD, 0x44, 0xCE, 0xA5, 0xCC, 0x81, -+ 0xCD, 0x44, 0xCE, 0xA5, 0xCC, 0x88, 0xCD, 0x44, -+ 0xCE, 0xA9, 0xCC, 0x81, 0xCD, 0x44, 0xCE, 0xB1, -+ 0xCC, 0x81, 0xCD, 0x44, 0xCE, 0xB5, 0xCC, 0x81, -+ // Bytes 4340 - 437f -+ 0xCD, 0x44, 0xCE, 0xB7, 0xCC, 0x81, 0xCD, 0x44, -+ 0xCE, 0xB9, 0xCC, 0x81, 0xCD, 0x44, 0xCE, 0xBF, -+ 0xCC, 0x81, 0xCD, 0x44, 0xCF, 0x85, 0xCC, 0x81, -+ 0xCD, 0x44, 0xCF, 0x89, 0xCC, 0x81, 0xCD, 0x44, -+ 0xD7, 0x90, 0xD6, 0xB7, 0x35, 0x44, 0xD7, 0x90, -+ 0xD6, 0xB8, 0x39, 0x44, 0xD7, 0x90, 0xD6, 0xBC, -+ 0x45, 0x44, 0xD7, 0x91, 0xD6, 0xBC, 0x45, 0x44, -+ 0xD7, 0x91, 0xD6, 0xBF, 0x4D, 0x44, 0xD7, 0x92, -+ // Bytes 4380 - 43bf -+ 0xD6, 0xBC, 0x45, 0x44, 0xD7, 0x93, 0xD6, 0xBC, -+ 0x45, 0x44, 0xD7, 0x94, 0xD6, 0xBC, 0x45, 0x44, -+ 0xD7, 0x95, 0xD6, 0xB9, 0x3D, 0x44, 0xD7, 0x95, -+ 0xD6, 0xBC, 0x45, 0x44, 0xD7, 0x96, 0xD6, 0xBC, -+ 0x45, 0x44, 0xD7, 0x98, 0xD6, 0xBC, 0x45, 0x44, -+ 0xD7, 0x99, 0xD6, 0xB4, 0x29, 0x44, 0xD7, 0x99, -+ 0xD6, 0xBC, 0x45, 0x44, 0xD7, 0x9A, 0xD6, 0xBC, -+ 0x45, 0x44, 0xD7, 0x9B, 0xD6, 0xBC, 0x45, 0x44, -+ // Bytes 43c0 - 43ff -+ 0xD7, 0x9B, 0xD6, 0xBF, 0x4D, 0x44, 0xD7, 0x9C, -+ 0xD6, 0xBC, 0x45, 0x44, 0xD7, 0x9E, 0xD6, 0xBC, -+ 0x45, 0x44, 0xD7, 0xA0, 0xD6, 0xBC, 0x45, 0x44, -+ 0xD7, 0xA1, 0xD6, 0xBC, 0x45, 0x44, 0xD7, 0xA3, -+ 0xD6, 0xBC, 0x45, 0x44, 0xD7, 0xA4, 0xD6, 0xBC, -+ 0x45, 0x44, 0xD7, 0xA4, 0xD6, 0xBF, 0x4D, 0x44, -+ 0xD7, 0xA6, 0xD6, 0xBC, 0x45, 0x44, 0xD7, 0xA7, -+ 0xD6, 0xBC, 0x45, 0x44, 0xD7, 0xA8, 0xD6, 0xBC, -+ // Bytes 4400 - 443f -+ 0x45, 0x44, 0xD7, 0xA9, 0xD6, 0xBC, 0x45, 0x44, -+ 0xD7, 0xA9, 0xD7, 0x81, 0x51, 0x44, 0xD7, 0xA9, -+ 0xD7, 0x82, 0x55, 0x44, 0xD7, 0xAA, 0xD6, 0xBC, -+ 0x45, 0x44, 0xD7, 0xB2, 0xD6, 0xB7, 0x35, 0x44, -+ 0xD8, 0xA7, 0xD9, 0x8B, 0x5D, 0x44, 0xD8, 0xA7, -+ 0xD9, 0x93, 0xCD, 0x44, 0xD8, 0xA7, 0xD9, 0x94, -+ 0xCD, 0x44, 0xD8, 0xA7, 0xD9, 0x95, 0xB9, 0x44, -+ 0xD8, 0xB0, 0xD9, 0xB0, 0x7D, 0x44, 0xD8, 0xB1, -+ // Bytes 4440 - 447f -+ 0xD9, 0xB0, 0x7D, 0x44, 0xD9, 0x80, 0xD9, 0x8B, -+ 0x5D, 0x44, 0xD9, 0x80, 0xD9, 0x8E, 0x69, 0x44, -+ 0xD9, 0x80, 0xD9, 0x8F, 0x6D, 0x44, 0xD9, 0x80, -+ 0xD9, 0x90, 0x71, 0x44, 0xD9, 0x80, 0xD9, 0x91, -+ 0x75, 0x44, 0xD9, 0x80, 0xD9, 0x92, 0x79, 0x44, -+ 0xD9, 0x87, 0xD9, 0xB0, 0x7D, 0x44, 0xD9, 0x88, -+ 0xD9, 0x94, 0xCD, 0x44, 0xD9, 0x89, 0xD9, 0xB0, -+ 0x7D, 0x44, 0xD9, 0x8A, 0xD9, 0x94, 0xCD, 0x44, -+ // Bytes 4480 - 44bf -+ 0xDB, 0x92, 0xD9, 0x94, 0xCD, 0x44, 0xDB, 0x95, -+ 0xD9, 0x94, 0xCD, 0x45, 0x20, 0xCC, 0x88, 0xCC, -+ 0x80, 0xCE, 0x45, 0x20, 0xCC, 0x88, 0xCC, 0x81, -+ 0xCE, 0x45, 0x20, 0xCC, 0x88, 0xCD, 0x82, 0xCE, -+ 0x45, 0x20, 0xCC, 0x93, 0xCC, 0x80, 0xCE, 0x45, -+ 0x20, 0xCC, 0x93, 0xCC, 0x81, 0xCE, 0x45, 0x20, -+ 0xCC, 0x93, 0xCD, 0x82, 0xCE, 0x45, 0x20, 0xCC, -+ 0x94, 0xCC, 0x80, 0xCE, 0x45, 0x20, 0xCC, 0x94, -+ // Bytes 44c0 - 44ff -+ 0xCC, 0x81, 0xCE, 0x45, 0x20, 0xCC, 0x94, 0xCD, -+ 0x82, 0xCE, 0x45, 0x20, 0xD9, 0x8C, 0xD9, 0x91, -+ 0x76, 0x45, 0x20, 0xD9, 0x8D, 0xD9, 0x91, 0x76, -+ 0x45, 0x20, 0xD9, 0x8E, 0xD9, 0x91, 0x76, 0x45, -+ 0x20, 0xD9, 0x8F, 0xD9, 0x91, 0x76, 0x45, 0x20, -+ 0xD9, 0x90, 0xD9, 0x91, 0x76, 0x45, 0x20, 0xD9, -+ 0x91, 0xD9, 0xB0, 0x7E, 0x45, 0xE2, 0xAB, 0x9D, -+ 0xCC, 0xB8, 0x05, 0x46, 0xCE, 0xB9, 0xCC, 0x88, -+ // Bytes 4500 - 453f -+ 0xCC, 0x81, 0xCE, 0x46, 0xCF, 0x85, 0xCC, 0x88, -+ 0xCC, 0x81, 0xCE, 0x46, 0xD7, 0xA9, 0xD6, 0xBC, -+ 0xD7, 0x81, 0x52, 0x46, 0xD7, 0xA9, 0xD6, 0xBC, -+ 0xD7, 0x82, 0x56, 0x46, 0xD9, 0x80, 0xD9, 0x8E, -+ 0xD9, 0x91, 0x76, 0x46, 0xD9, 0x80, 0xD9, 0x8F, -+ 0xD9, 0x91, 0x76, 0x46, 0xD9, 0x80, 0xD9, 0x90, -+ 0xD9, 0x91, 0x76, 0x46, 0xE0, 0xA4, 0x95, 0xE0, -+ 0xA4, 0xBC, 0x0D, 0x46, 0xE0, 0xA4, 0x96, 0xE0, -+ // Bytes 4540 - 457f -+ 0xA4, 0xBC, 0x0D, 0x46, 0xE0, 0xA4, 0x97, 0xE0, -+ 0xA4, 0xBC, 0x0D, 0x46, 0xE0, 0xA4, 0x9C, 0xE0, -+ 0xA4, 0xBC, 0x0D, 0x46, 0xE0, 0xA4, 0xA1, 0xE0, -+ 0xA4, 0xBC, 0x0D, 0x46, 0xE0, 0xA4, 0xA2, 0xE0, -+ 0xA4, 0xBC, 0x0D, 0x46, 0xE0, 0xA4, 0xAB, 0xE0, -+ 0xA4, 0xBC, 0x0D, 0x46, 0xE0, 0xA4, 0xAF, 0xE0, -+ 0xA4, 0xBC, 0x0D, 0x46, 0xE0, 0xA6, 0xA1, 0xE0, -+ 0xA6, 0xBC, 0x0D, 0x46, 0xE0, 0xA6, 0xA2, 0xE0, -+ // Bytes 4580 - 45bf -+ 0xA6, 0xBC, 0x0D, 0x46, 0xE0, 0xA6, 0xAF, 0xE0, -+ 0xA6, 0xBC, 0x0D, 0x46, 0xE0, 0xA8, 0x96, 0xE0, -+ 0xA8, 0xBC, 0x0D, 0x46, 0xE0, 0xA8, 0x97, 0xE0, -+ 0xA8, 0xBC, 0x0D, 0x46, 0xE0, 0xA8, 0x9C, 0xE0, -+ 0xA8, 0xBC, 0x0D, 0x46, 0xE0, 0xA8, 0xAB, 0xE0, -+ 0xA8, 0xBC, 0x0D, 0x46, 0xE0, 0xA8, 0xB2, 0xE0, -+ 0xA8, 0xBC, 0x0D, 0x46, 0xE0, 0xA8, 0xB8, 0xE0, -+ 0xA8, 0xBC, 0x0D, 0x46, 0xE0, 0xAC, 0xA1, 0xE0, -+ // Bytes 45c0 - 45ff -+ 0xAC, 0xBC, 0x0D, 0x46, 0xE0, 0xAC, 0xA2, 0xE0, -+ 0xAC, 0xBC, 0x0D, 0x46, 0xE0, 0xBE, 0xB2, 0xE0, -+ 0xBE, 0x80, 0xA1, 0x46, 0xE0, 0xBE, 0xB3, 0xE0, -+ 0xBE, 0x80, 0xA1, 0x46, 0xE3, 0x83, 0x86, 0xE3, -+ 0x82, 0x99, 0x11, 0x48, 0xF0, 0x9D, 0x85, 0x97, -+ 0xF0, 0x9D, 0x85, 0xA5, 0xB1, 0x48, 0xF0, 0x9D, -+ 0x85, 0x98, 0xF0, 0x9D, 0x85, 0xA5, 0xB1, 0x48, -+ 0xF0, 0x9D, 0x86, 0xB9, 0xF0, 0x9D, 0x85, 0xA5, -+ // Bytes 4600 - 463f -+ 0xB1, 0x48, 0xF0, 0x9D, 0x86, 0xBA, 0xF0, 0x9D, -+ 0x85, 0xA5, 0xB1, 0x49, 0xE0, 0xBE, 0xB2, 0xE0, -+ 0xBD, 0xB1, 0xE0, 0xBE, 0x80, 0xA2, 0x49, 0xE0, -+ 0xBE, 0xB3, 0xE0, 0xBD, 0xB1, 0xE0, 0xBE, 0x80, -+ 0xA2, 0x4C, 0xF0, 0x9D, 0x85, 0x98, 0xF0, 0x9D, -+ 0x85, 0xA5, 0xF0, 0x9D, 0x85, 0xAE, 0xB2, 0x4C, -+ 0xF0, 0x9D, 0x85, 0x98, 0xF0, 0x9D, 0x85, 0xA5, -+ 0xF0, 0x9D, 0x85, 0xAF, 0xB2, 0x4C, 0xF0, 0x9D, -+ // Bytes 4640 - 467f -+ 0x85, 0x98, 0xF0, 0x9D, 0x85, 0xA5, 0xF0, 0x9D, -+ 0x85, 0xB0, 0xB2, 0x4C, 0xF0, 0x9D, 0x85, 0x98, -+ 0xF0, 0x9D, 0x85, 0xA5, 0xF0, 0x9D, 0x85, 0xB1, -+ 0xB2, 0x4C, 0xF0, 0x9D, 0x85, 0x98, 0xF0, 0x9D, -+ 0x85, 0xA5, 0xF0, 0x9D, 0x85, 0xB2, 0xB2, 0x4C, -+ 0xF0, 0x9D, 0x86, 0xB9, 0xF0, 0x9D, 0x85, 0xA5, -+ 0xF0, 0x9D, 0x85, 0xAE, 0xB2, 0x4C, 0xF0, 0x9D, -+ 0x86, 0xB9, 0xF0, 0x9D, 0x85, 0xA5, 0xF0, 0x9D, -+ // Bytes 4680 - 46bf -+ 0x85, 0xAF, 0xB2, 0x4C, 0xF0, 0x9D, 0x86, 0xBA, -+ 0xF0, 0x9D, 0x85, 0xA5, 0xF0, 0x9D, 0x85, 0xAE, -+ 0xB2, 0x4C, 0xF0, 0x9D, 0x86, 0xBA, 0xF0, 0x9D, -+ 0x85, 0xA5, 0xF0, 0x9D, 0x85, 0xAF, 0xB2, 0x83, -+ 0x41, 0xCC, 0x82, 0xCD, 0x83, 0x41, 0xCC, 0x86, -+ 0xCD, 0x83, 0x41, 0xCC, 0x87, 0xCD, 0x83, 0x41, -+ 0xCC, 0x88, 0xCD, 0x83, 0x41, 0xCC, 0x8A, 0xCD, -+ 0x83, 0x41, 0xCC, 0xA3, 0xB9, 0x83, 0x43, 0xCC, -+ // Bytes 46c0 - 46ff -+ 0xA7, 0xA9, 0x83, 0x45, 0xCC, 0x82, 0xCD, 0x83, -+ 0x45, 0xCC, 0x84, 0xCD, 0x83, 0x45, 0xCC, 0xA3, -+ 0xB9, 0x83, 0x45, 0xCC, 0xA7, 0xA9, 0x83, 0x49, -+ 0xCC, 0x88, 0xCD, 0x83, 0x4C, 0xCC, 0xA3, 0xB9, -+ 0x83, 0x4F, 0xCC, 0x82, 0xCD, 0x83, 0x4F, 0xCC, -+ 0x83, 0xCD, 0x83, 0x4F, 0xCC, 0x84, 0xCD, 0x83, -+ 0x4F, 0xCC, 0x87, 0xCD, 0x83, 0x4F, 0xCC, 0x88, -+ 0xCD, 0x83, 0x4F, 0xCC, 0x9B, 0xB1, 0x83, 0x4F, -+ // Bytes 4700 - 473f -+ 0xCC, 0xA3, 0xB9, 0x83, 0x4F, 0xCC, 0xA8, 0xA9, -+ 0x83, 0x52, 0xCC, 0xA3, 0xB9, 0x83, 0x53, 0xCC, -+ 0x81, 0xCD, 0x83, 0x53, 0xCC, 0x8C, 0xCD, 0x83, -+ 0x53, 0xCC, 0xA3, 0xB9, 0x83, 0x55, 0xCC, 0x83, -+ 0xCD, 0x83, 0x55, 0xCC, 0x84, 0xCD, 0x83, 0x55, -+ 0xCC, 0x88, 0xCD, 0x83, 0x55, 0xCC, 0x9B, 0xB1, -+ 0x83, 0x61, 0xCC, 0x82, 0xCD, 0x83, 0x61, 0xCC, -+ 0x86, 0xCD, 0x83, 0x61, 0xCC, 0x87, 0xCD, 0x83, -+ // Bytes 4740 - 477f -+ 0x61, 0xCC, 0x88, 0xCD, 0x83, 0x61, 0xCC, 0x8A, -+ 0xCD, 0x83, 0x61, 0xCC, 0xA3, 0xB9, 0x83, 0x63, -+ 0xCC, 0xA7, 0xA9, 0x83, 0x65, 0xCC, 0x82, 0xCD, -+ 0x83, 0x65, 0xCC, 0x84, 0xCD, 0x83, 0x65, 0xCC, -+ 0xA3, 0xB9, 0x83, 0x65, 0xCC, 0xA7, 0xA9, 0x83, -+ 0x69, 0xCC, 0x88, 0xCD, 0x83, 0x6C, 0xCC, 0xA3, -+ 0xB9, 0x83, 0x6F, 0xCC, 0x82, 0xCD, 0x83, 0x6F, -+ 0xCC, 0x83, 0xCD, 0x83, 0x6F, 0xCC, 0x84, 0xCD, -+ // Bytes 4780 - 47bf -+ 0x83, 0x6F, 0xCC, 0x87, 0xCD, 0x83, 0x6F, 0xCC, -+ 0x88, 0xCD, 0x83, 0x6F, 0xCC, 0x9B, 0xB1, 0x83, -+ 0x6F, 0xCC, 0xA3, 0xB9, 0x83, 0x6F, 0xCC, 0xA8, -+ 0xA9, 0x83, 0x72, 0xCC, 0xA3, 0xB9, 0x83, 0x73, -+ 0xCC, 0x81, 0xCD, 0x83, 0x73, 0xCC, 0x8C, 0xCD, -+ 0x83, 0x73, 0xCC, 0xA3, 0xB9, 0x83, 0x75, 0xCC, -+ 0x83, 0xCD, 0x83, 0x75, 0xCC, 0x84, 0xCD, 0x83, -+ 0x75, 0xCC, 0x88, 0xCD, 0x83, 0x75, 0xCC, 0x9B, -+ // Bytes 47c0 - 47ff -+ 0xB1, 0x84, 0xCE, 0x91, 0xCC, 0x93, 0xCD, 0x84, -+ 0xCE, 0x91, 0xCC, 0x94, 0xCD, 0x84, 0xCE, 0x95, -+ 0xCC, 0x93, 0xCD, 0x84, 0xCE, 0x95, 0xCC, 0x94, -+ 0xCD, 0x84, 0xCE, 0x97, 0xCC, 0x93, 0xCD, 0x84, -+ 0xCE, 0x97, 0xCC, 0x94, 0xCD, 0x84, 0xCE, 0x99, -+ 0xCC, 0x93, 0xCD, 0x84, 0xCE, 0x99, 0xCC, 0x94, -+ 0xCD, 0x84, 0xCE, 0x9F, 0xCC, 0x93, 0xCD, 0x84, -+ 0xCE, 0x9F, 0xCC, 0x94, 0xCD, 0x84, 0xCE, 0xA5, -+ // Bytes 4800 - 483f -+ 0xCC, 0x94, 0xCD, 0x84, 0xCE, 0xA9, 0xCC, 0x93, -+ 0xCD, 0x84, 0xCE, 0xA9, 0xCC, 0x94, 0xCD, 0x84, -+ 0xCE, 0xB1, 0xCC, 0x80, 0xCD, 0x84, 0xCE, 0xB1, -+ 0xCC, 0x81, 0xCD, 0x84, 0xCE, 0xB1, 0xCC, 0x93, -+ 0xCD, 0x84, 0xCE, 0xB1, 0xCC, 0x94, 0xCD, 0x84, -+ 0xCE, 0xB1, 0xCD, 0x82, 0xCD, 0x84, 0xCE, 0xB5, -+ 0xCC, 0x93, 0xCD, 0x84, 0xCE, 0xB5, 0xCC, 0x94, -+ 0xCD, 0x84, 0xCE, 0xB7, 0xCC, 0x80, 0xCD, 0x84, -+ // Bytes 4840 - 487f -+ 0xCE, 0xB7, 0xCC, 0x81, 0xCD, 0x84, 0xCE, 0xB7, -+ 0xCC, 0x93, 0xCD, 0x84, 0xCE, 0xB7, 0xCC, 0x94, -+ 0xCD, 0x84, 0xCE, 0xB7, 0xCD, 0x82, 0xCD, 0x84, -+ 0xCE, 0xB9, 0xCC, 0x88, 0xCD, 0x84, 0xCE, 0xB9, -+ 0xCC, 0x93, 0xCD, 0x84, 0xCE, 0xB9, 0xCC, 0x94, -+ 0xCD, 0x84, 0xCE, 0xBF, 0xCC, 0x93, 0xCD, 0x84, -+ 0xCE, 0xBF, 0xCC, 0x94, 0xCD, 0x84, 0xCF, 0x85, -+ 0xCC, 0x88, 0xCD, 0x84, 0xCF, 0x85, 0xCC, 0x93, -+ // Bytes 4880 - 48bf -+ 0xCD, 0x84, 0xCF, 0x85, 0xCC, 0x94, 0xCD, 0x84, -+ 0xCF, 0x89, 0xCC, 0x80, 0xCD, 0x84, 0xCF, 0x89, -+ 0xCC, 0x81, 0xCD, 0x84, 0xCF, 0x89, 0xCC, 0x93, -+ 0xCD, 0x84, 0xCF, 0x89, 0xCC, 0x94, 0xCD, 0x84, -+ 0xCF, 0x89, 0xCD, 0x82, 0xCD, 0x86, 0xCE, 0x91, -+ 0xCC, 0x93, 0xCC, 0x80, 0xCE, 0x86, 0xCE, 0x91, -+ 0xCC, 0x93, 0xCC, 0x81, 0xCE, 0x86, 0xCE, 0x91, -+ 0xCC, 0x93, 0xCD, 0x82, 0xCE, 0x86, 0xCE, 0x91, -+ // Bytes 48c0 - 48ff -+ 0xCC, 0x94, 0xCC, 0x80, 0xCE, 0x86, 0xCE, 0x91, -+ 0xCC, 0x94, 0xCC, 0x81, 0xCE, 0x86, 0xCE, 0x91, -+ 0xCC, 0x94, 0xCD, 0x82, 0xCE, 0x86, 0xCE, 0x97, -+ 0xCC, 0x93, 0xCC, 0x80, 0xCE, 0x86, 0xCE, 0x97, -+ 0xCC, 0x93, 0xCC, 0x81, 0xCE, 0x86, 0xCE, 0x97, -+ 0xCC, 0x93, 0xCD, 0x82, 0xCE, 0x86, 0xCE, 0x97, -+ 0xCC, 0x94, 0xCC, 0x80, 0xCE, 0x86, 0xCE, 0x97, -+ 0xCC, 0x94, 0xCC, 0x81, 0xCE, 0x86, 0xCE, 0x97, -+ // Bytes 4900 - 493f -+ 0xCC, 0x94, 0xCD, 0x82, 0xCE, 0x86, 0xCE, 0xA9, -+ 0xCC, 0x93, 0xCC, 0x80, 0xCE, 0x86, 0xCE, 0xA9, -+ 0xCC, 0x93, 0xCC, 0x81, 0xCE, 0x86, 0xCE, 0xA9, -+ 0xCC, 0x93, 0xCD, 0x82, 0xCE, 0x86, 0xCE, 0xA9, -+ 0xCC, 0x94, 0xCC, 0x80, 0xCE, 0x86, 0xCE, 0xA9, -+ 0xCC, 0x94, 0xCC, 0x81, 0xCE, 0x86, 0xCE, 0xA9, -+ 0xCC, 0x94, 0xCD, 0x82, 0xCE, 0x86, 0xCE, 0xB1, -+ 0xCC, 0x93, 0xCC, 0x80, 0xCE, 0x86, 0xCE, 0xB1, -+ // Bytes 4940 - 497f -+ 0xCC, 0x93, 0xCC, 0x81, 0xCE, 0x86, 0xCE, 0xB1, -+ 0xCC, 0x93, 0xCD, 0x82, 0xCE, 0x86, 0xCE, 0xB1, -+ 0xCC, 0x94, 0xCC, 0x80, 0xCE, 0x86, 0xCE, 0xB1, -+ 0xCC, 0x94, 0xCC, 0x81, 0xCE, 0x86, 0xCE, 0xB1, -+ 0xCC, 0x94, 0xCD, 0x82, 0xCE, 0x86, 0xCE, 0xB7, -+ 0xCC, 0x93, 0xCC, 0x80, 0xCE, 0x86, 0xCE, 0xB7, -+ 0xCC, 0x93, 0xCC, 0x81, 0xCE, 0x86, 0xCE, 0xB7, -+ 0xCC, 0x93, 0xCD, 0x82, 0xCE, 0x86, 0xCE, 0xB7, -+ // Bytes 4980 - 49bf -+ 0xCC, 0x94, 0xCC, 0x80, 0xCE, 0x86, 0xCE, 0xB7, -+ 0xCC, 0x94, 0xCC, 0x81, 0xCE, 0x86, 0xCE, 0xB7, -+ 0xCC, 0x94, 0xCD, 0x82, 0xCE, 0x86, 0xCF, 0x89, -+ 0xCC, 0x93, 0xCC, 0x80, 0xCE, 0x86, 0xCF, 0x89, -+ 0xCC, 0x93, 0xCC, 0x81, 0xCE, 0x86, 0xCF, 0x89, -+ 0xCC, 0x93, 0xCD, 0x82, 0xCE, 0x86, 0xCF, 0x89, -+ 0xCC, 0x94, 0xCC, 0x80, 0xCE, 0x86, 0xCF, 0x89, -+ 0xCC, 0x94, 0xCC, 0x81, 0xCE, 0x86, 0xCF, 0x89, -+ // Bytes 49c0 - 49ff -+ 0xCC, 0x94, 0xCD, 0x82, 0xCE, 0x42, 0xCC, 0x80, -+ 0xCD, 0x33, 0x42, 0xCC, 0x81, 0xCD, 0x33, 0x42, -+ 0xCC, 0x93, 0xCD, 0x33, 0x43, 0xE1, 0x85, 0xA1, -+ 0x01, 0x00, 0x43, 0xE1, 0x85, 0xA2, 0x01, 0x00, -+ 0x43, 0xE1, 0x85, 0xA3, 0x01, 0x00, 0x43, 0xE1, -+ 0x85, 0xA4, 0x01, 0x00, 0x43, 0xE1, 0x85, 0xA5, -+ 0x01, 0x00, 0x43, 0xE1, 0x85, 0xA6, 0x01, 0x00, -+ 0x43, 0xE1, 0x85, 0xA7, 0x01, 0x00, 0x43, 0xE1, -+ // Bytes 4a00 - 4a3f -+ 0x85, 0xA8, 0x01, 0x00, 0x43, 0xE1, 0x85, 0xA9, -+ 0x01, 0x00, 0x43, 0xE1, 0x85, 0xAA, 0x01, 0x00, -+ 0x43, 0xE1, 0x85, 0xAB, 0x01, 0x00, 0x43, 0xE1, -+ 0x85, 0xAC, 0x01, 0x00, 0x43, 0xE1, 0x85, 0xAD, -+ 0x01, 0x00, 0x43, 0xE1, 0x85, 0xAE, 0x01, 0x00, -+ 0x43, 0xE1, 0x85, 0xAF, 0x01, 0x00, 0x43, 0xE1, -+ 0x85, 0xB0, 0x01, 0x00, 0x43, 0xE1, 0x85, 0xB1, -+ 0x01, 0x00, 0x43, 0xE1, 0x85, 0xB2, 0x01, 0x00, -+ // Bytes 4a40 - 4a7f -+ 0x43, 0xE1, 0x85, 0xB3, 0x01, 0x00, 0x43, 0xE1, -+ 0x85, 0xB4, 0x01, 0x00, 0x43, 0xE1, 0x85, 0xB5, -+ 0x01, 0x00, 0x43, 0xE1, 0x86, 0xAA, 0x01, 0x00, -+ 0x43, 0xE1, 0x86, 0xAC, 0x01, 0x00, 0x43, 0xE1, -+ 0x86, 0xAD, 0x01, 0x00, 0x43, 0xE1, 0x86, 0xB0, -+ 0x01, 0x00, 0x43, 0xE1, 0x86, 0xB1, 0x01, 0x00, -+ 0x43, 0xE1, 0x86, 0xB2, 0x01, 0x00, 0x43, 0xE1, -+ 0x86, 0xB3, 0x01, 0x00, 0x43, 0xE1, 0x86, 0xB4, -+ // Bytes 4a80 - 4abf -+ 0x01, 0x00, 0x43, 0xE1, 0x86, 0xB5, 0x01, 0x00, -+ 0x44, 0xCC, 0x88, 0xCC, 0x81, 0xCE, 0x33, 0x43, -+ 0xE3, 0x82, 0x99, 0x11, 0x04, 0x43, 0xE3, 0x82, -+ 0x9A, 0x11, 0x04, 0x46, 0xE0, 0xBD, 0xB1, 0xE0, -+ 0xBD, 0xB2, 0xA2, 0x27, 0x46, 0xE0, 0xBD, 0xB1, -+ 0xE0, 0xBD, 0xB4, 0xA6, 0x27, 0x46, 0xE0, 0xBD, -+ 0xB1, 0xE0, 0xBE, 0x80, 0xA2, 0x27, 0x00, 0x01, -+} -+ -+// lookup returns the trie value for the first UTF-8 encoding in s and -+// the width in bytes of this encoding. The size will be 0 if s does not -+// hold enough bytes to complete the encoding. len(s) must be greater than 0. -+func (t *nfcTrie) lookup(s []byte) (v uint16, sz int) { -+ c0 := s[0] -+ switch { -+ case c0 < 0x80: // is ASCII -+ return nfcValues[c0], 1 -+ case c0 < 0xC2: -+ return 0, 1 // Illegal UTF-8: not a starter, not ASCII. -+ case c0 < 0xE0: // 2-byte UTF-8 -+ if len(s) < 2 { -+ return 0, 0 -+ } -+ i := nfcIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c1), 2 -+ case c0 < 0xF0: // 3-byte UTF-8 -+ if len(s) < 3 { -+ return 0, 0 -+ } -+ i := nfcIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = nfcIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c2), 3 -+ case c0 < 0xF8: // 4-byte UTF-8 -+ if len(s) < 4 { -+ return 0, 0 -+ } -+ i := nfcIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = nfcIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ o = uint32(i)<<6 + uint32(c2) -+ i = nfcIndex[o] -+ c3 := s[3] -+ if c3 < 0x80 || 0xC0 <= c3 { -+ return 0, 3 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c3), 4 -+ } -+ // Illegal rune -+ return 0, 1 -+} -+ -+// lookupUnsafe returns the trie value for the first UTF-8 encoding in s. -+// s must start with a full and valid UTF-8 encoded rune. -+func (t *nfcTrie) lookupUnsafe(s []byte) uint16 { -+ c0 := s[0] -+ if c0 < 0x80 { // is ASCII -+ return nfcValues[c0] -+ } -+ i := nfcIndex[c0] -+ if c0 < 0xE0 { // 2-byte UTF-8 -+ return t.lookupValue(uint32(i), s[1]) -+ } -+ i = nfcIndex[uint32(i)<<6+uint32(s[1])] -+ if c0 < 0xF0 { // 3-byte UTF-8 -+ return t.lookupValue(uint32(i), s[2]) -+ } -+ i = nfcIndex[uint32(i)<<6+uint32(s[2])] -+ if c0 < 0xF8 { // 4-byte UTF-8 -+ return t.lookupValue(uint32(i), s[3]) -+ } -+ return 0 -+} -+ -+// lookupString returns the trie value for the first UTF-8 encoding in s and -+// the width in bytes of this encoding. The size will be 0 if s does not -+// hold enough bytes to complete the encoding. len(s) must be greater than 0. -+func (t *nfcTrie) lookupString(s string) (v uint16, sz int) { -+ c0 := s[0] -+ switch { -+ case c0 < 0x80: // is ASCII -+ return nfcValues[c0], 1 -+ case c0 < 0xC2: -+ return 0, 1 // Illegal UTF-8: not a starter, not ASCII. -+ case c0 < 0xE0: // 2-byte UTF-8 -+ if len(s) < 2 { -+ return 0, 0 -+ } -+ i := nfcIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c1), 2 -+ case c0 < 0xF0: // 3-byte UTF-8 -+ if len(s) < 3 { -+ return 0, 0 -+ } -+ i := nfcIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = nfcIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c2), 3 -+ case c0 < 0xF8: // 4-byte UTF-8 -+ if len(s) < 4 { -+ return 0, 0 -+ } -+ i := nfcIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = nfcIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ o = uint32(i)<<6 + uint32(c2) -+ i = nfcIndex[o] -+ c3 := s[3] -+ if c3 < 0x80 || 0xC0 <= c3 { -+ return 0, 3 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c3), 4 -+ } -+ // Illegal rune -+ return 0, 1 -+} -+ -+// lookupStringUnsafe returns the trie value for the first UTF-8 encoding in s. -+// s must start with a full and valid UTF-8 encoded rune. -+func (t *nfcTrie) lookupStringUnsafe(s string) uint16 { -+ c0 := s[0] -+ if c0 < 0x80 { // is ASCII -+ return nfcValues[c0] -+ } -+ i := nfcIndex[c0] -+ if c0 < 0xE0 { // 2-byte UTF-8 -+ return t.lookupValue(uint32(i), s[1]) -+ } -+ i = nfcIndex[uint32(i)<<6+uint32(s[1])] -+ if c0 < 0xF0 { // 3-byte UTF-8 -+ return t.lookupValue(uint32(i), s[2]) -+ } -+ i = nfcIndex[uint32(i)<<6+uint32(s[2])] -+ if c0 < 0xF8 { // 4-byte UTF-8 -+ return t.lookupValue(uint32(i), s[3]) -+ } -+ return 0 -+} -+ -+// nfcTrie. Total size: 10680 bytes (10.43 KiB). Checksum: a555db76d4becdd2. -+type nfcTrie struct{} -+ -+func newNfcTrie(i int) *nfcTrie { -+ return &nfcTrie{} -+} -+ -+// lookupValue determines the type of block n and looks up the value for b. -+func (t *nfcTrie) lookupValue(n uint32, b byte) uint16 { -+ switch { -+ case n < 46: -+ return uint16(nfcValues[n<<6+uint32(b)]) -+ default: -+ n -= 46 -+ return uint16(nfcSparse.lookup(n, b)) -+ } -+} -+ -+// nfcValues: 48 blocks, 3072 entries, 6144 bytes -+// The third block is the zero block. -+var nfcValues = [3072]uint16{ -+ // Block 0x0, offset 0x0 -+ 0x3c: 0xa000, 0x3d: 0xa000, 0x3e: 0xa000, -+ // Block 0x1, offset 0x40 -+ 0x41: 0xa000, 0x42: 0xa000, 0x43: 0xa000, 0x44: 0xa000, 0x45: 0xa000, -+ 0x46: 0xa000, 0x47: 0xa000, 0x48: 0xa000, 0x49: 0xa000, 0x4a: 0xa000, 0x4b: 0xa000, -+ 0x4c: 0xa000, 0x4d: 0xa000, 0x4e: 0xa000, 0x4f: 0xa000, 0x50: 0xa000, -+ 0x52: 0xa000, 0x53: 0xa000, 0x54: 0xa000, 0x55: 0xa000, 0x56: 0xa000, 0x57: 0xa000, -+ 0x58: 0xa000, 0x59: 0xa000, 0x5a: 0xa000, -+ 0x61: 0xa000, 0x62: 0xa000, 0x63: 0xa000, -+ 0x64: 0xa000, 0x65: 0xa000, 0x66: 0xa000, 0x67: 0xa000, 0x68: 0xa000, 0x69: 0xa000, -+ 0x6a: 0xa000, 0x6b: 0xa000, 0x6c: 0xa000, 0x6d: 0xa000, 0x6e: 0xa000, 0x6f: 0xa000, -+ 0x70: 0xa000, 0x72: 0xa000, 0x73: 0xa000, 0x74: 0xa000, 0x75: 0xa000, -+ 0x76: 0xa000, 0x77: 0xa000, 0x78: 0xa000, 0x79: 0xa000, 0x7a: 0xa000, -+ // Block 0x2, offset 0x80 -+ // Block 0x3, offset 0xc0 -+ 0xc0: 0x2f86, 0xc1: 0x2f8b, 0xc2: 0x469f, 0xc3: 0x2f90, 0xc4: 0x46ae, 0xc5: 0x46b3, -+ 0xc6: 0xa000, 0xc7: 0x46bd, 0xc8: 0x2ff9, 0xc9: 0x2ffe, 0xca: 0x46c2, 0xcb: 0x3012, -+ 0xcc: 0x3085, 0xcd: 0x308a, 0xce: 0x308f, 0xcf: 0x46d6, 0xd1: 0x311b, -+ 0xd2: 0x313e, 0xd3: 0x3143, 0xd4: 0x46e0, 0xd5: 0x46e5, 0xd6: 0x46f4, -+ 0xd8: 0xa000, 0xd9: 0x31ca, 0xda: 0x31cf, 0xdb: 0x31d4, 0xdc: 0x4726, 0xdd: 0x324c, -+ 0xe0: 0x3292, 0xe1: 0x3297, 0xe2: 0x4730, 0xe3: 0x329c, -+ 0xe4: 0x473f, 0xe5: 0x4744, 0xe6: 0xa000, 0xe7: 0x474e, 0xe8: 0x3305, 0xe9: 0x330a, -+ 0xea: 0x4753, 0xeb: 0x331e, 0xec: 0x3396, 0xed: 0x339b, 0xee: 0x33a0, 0xef: 0x4767, -+ 0xf1: 0x342c, 0xf2: 0x344f, 0xf3: 0x3454, 0xf4: 0x4771, 0xf5: 0x4776, -+ 0xf6: 0x4785, 0xf8: 0xa000, 0xf9: 0x34e0, 0xfa: 0x34e5, 0xfb: 0x34ea, -+ 0xfc: 0x47b7, 0xfd: 0x3567, 0xff: 0x3580, -+ // Block 0x4, offset 0x100 -+ 0x100: 0x2f95, 0x101: 0x32a1, 0x102: 0x46a4, 0x103: 0x4735, 0x104: 0x2fb3, 0x105: 0x32bf, -+ 0x106: 0x2fc7, 0x107: 0x32d3, 0x108: 0x2fcc, 0x109: 0x32d8, 0x10a: 0x2fd1, 0x10b: 0x32dd, -+ 0x10c: 0x2fd6, 0x10d: 0x32e2, 0x10e: 0x2fe0, 0x10f: 0x32ec, -+ 0x112: 0x46c7, 0x113: 0x4758, 0x114: 0x3008, 0x115: 0x3314, 0x116: 0x300d, 0x117: 0x3319, -+ 0x118: 0x302b, 0x119: 0x3337, 0x11a: 0x301c, 0x11b: 0x3328, 0x11c: 0x3044, 0x11d: 0x3350, -+ 0x11e: 0x304e, 0x11f: 0x335a, 0x120: 0x3053, 0x121: 0x335f, 0x122: 0x305d, 0x123: 0x3369, -+ 0x124: 0x3062, 0x125: 0x336e, 0x128: 0x3094, 0x129: 0x33a5, -+ 0x12a: 0x3099, 0x12b: 0x33aa, 0x12c: 0x309e, 0x12d: 0x33af, 0x12e: 0x30c1, 0x12f: 0x33cd, -+ 0x130: 0x30a3, 0x134: 0x30cb, 0x135: 0x33d7, -+ 0x136: 0x30df, 0x137: 0x33f0, 0x139: 0x30e9, 0x13a: 0x33fa, 0x13b: 0x30f3, -+ 0x13c: 0x3404, 0x13d: 0x30ee, 0x13e: 0x33ff, -+ // Block 0x5, offset 0x140 -+ 0x143: 0x3116, 0x144: 0x3427, 0x145: 0x312f, -+ 0x146: 0x3440, 0x147: 0x3125, 0x148: 0x3436, -+ 0x14c: 0x46ea, 0x14d: 0x477b, 0x14e: 0x3148, 0x14f: 0x3459, 0x150: 0x3152, 0x151: 0x3463, -+ 0x154: 0x3170, 0x155: 0x3481, 0x156: 0x3189, 0x157: 0x349a, -+ 0x158: 0x317a, 0x159: 0x348b, 0x15a: 0x470d, 0x15b: 0x479e, 0x15c: 0x3193, 0x15d: 0x34a4, -+ 0x15e: 0x31a2, 0x15f: 0x34b3, 0x160: 0x4712, 0x161: 0x47a3, 0x162: 0x31bb, 0x163: 0x34d1, -+ 0x164: 0x31ac, 0x165: 0x34c2, 0x168: 0x471c, 0x169: 0x47ad, -+ 0x16a: 0x4721, 0x16b: 0x47b2, 0x16c: 0x31d9, 0x16d: 0x34ef, 0x16e: 0x31e3, 0x16f: 0x34f9, -+ 0x170: 0x31e8, 0x171: 0x34fe, 0x172: 0x3206, 0x173: 0x351c, 0x174: 0x3229, 0x175: 0x353f, -+ 0x176: 0x3251, 0x177: 0x356c, 0x178: 0x3265, 0x179: 0x3274, 0x17a: 0x3594, 0x17b: 0x327e, -+ 0x17c: 0x359e, 0x17d: 0x3283, 0x17e: 0x35a3, 0x17f: 0xa000, -+ // Block 0x6, offset 0x180 -+ 0x184: 0x8100, 0x185: 0x8100, -+ 0x186: 0x8100, -+ 0x18d: 0x2f9f, 0x18e: 0x32ab, 0x18f: 0x30ad, 0x190: 0x33b9, 0x191: 0x3157, -+ 0x192: 0x3468, 0x193: 0x31ed, 0x194: 0x3503, 0x195: 0x39e6, 0x196: 0x3b75, 0x197: 0x39df, -+ 0x198: 0x3b6e, 0x199: 0x39ed, 0x19a: 0x3b7c, 0x19b: 0x39d8, 0x19c: 0x3b67, -+ 0x19e: 0x38c7, 0x19f: 0x3a56, 0x1a0: 0x38c0, 0x1a1: 0x3a4f, 0x1a2: 0x35ca, 0x1a3: 0x35dc, -+ 0x1a6: 0x3058, 0x1a7: 0x3364, 0x1a8: 0x30d5, 0x1a9: 0x33e6, -+ 0x1aa: 0x4703, 0x1ab: 0x4794, 0x1ac: 0x39a7, 0x1ad: 0x3b36, 0x1ae: 0x35ee, 0x1af: 0x35f4, -+ 0x1b0: 0x33dc, 0x1b4: 0x303f, 0x1b5: 0x334b, -+ 0x1b8: 0x3111, 0x1b9: 0x3422, 0x1ba: 0x38ce, 0x1bb: 0x3a5d, -+ 0x1bc: 0x35c4, 0x1bd: 0x35d6, 0x1be: 0x35d0, 0x1bf: 0x35e2, -+ // Block 0x7, offset 0x1c0 -+ 0x1c0: 0x2fa4, 0x1c1: 0x32b0, 0x1c2: 0x2fa9, 0x1c3: 0x32b5, 0x1c4: 0x3021, 0x1c5: 0x332d, -+ 0x1c6: 0x3026, 0x1c7: 0x3332, 0x1c8: 0x30b2, 0x1c9: 0x33be, 0x1ca: 0x30b7, 0x1cb: 0x33c3, -+ 0x1cc: 0x315c, 0x1cd: 0x346d, 0x1ce: 0x3161, 0x1cf: 0x3472, 0x1d0: 0x317f, 0x1d1: 0x3490, -+ 0x1d2: 0x3184, 0x1d3: 0x3495, 0x1d4: 0x31f2, 0x1d5: 0x3508, 0x1d6: 0x31f7, 0x1d7: 0x350d, -+ 0x1d8: 0x319d, 0x1d9: 0x34ae, 0x1da: 0x31b6, 0x1db: 0x34cc, -+ 0x1de: 0x3071, 0x1df: 0x337d, -+ 0x1e6: 0x46a9, 0x1e7: 0x473a, 0x1e8: 0x46d1, 0x1e9: 0x4762, -+ 0x1ea: 0x3976, 0x1eb: 0x3b05, 0x1ec: 0x3953, 0x1ed: 0x3ae2, 0x1ee: 0x46ef, 0x1ef: 0x4780, -+ 0x1f0: 0x396f, 0x1f1: 0x3afe, 0x1f2: 0x325b, 0x1f3: 0x3576, -+ // Block 0x8, offset 0x200 -+ 0x200: 0x9933, 0x201: 0x9933, 0x202: 0x9933, 0x203: 0x9933, 0x204: 0x9933, 0x205: 0x8133, -+ 0x206: 0x9933, 0x207: 0x9933, 0x208: 0x9933, 0x209: 0x9933, 0x20a: 0x9933, 0x20b: 0x9933, -+ 0x20c: 0x9933, 0x20d: 0x8133, 0x20e: 0x8133, 0x20f: 0x9933, 0x210: 0x8133, 0x211: 0x9933, -+ 0x212: 0x8133, 0x213: 0x9933, 0x214: 0x9933, 0x215: 0x8134, 0x216: 0x812e, 0x217: 0x812e, -+ 0x218: 0x812e, 0x219: 0x812e, 0x21a: 0x8134, 0x21b: 0x992c, 0x21c: 0x812e, 0x21d: 0x812e, -+ 0x21e: 0x812e, 0x21f: 0x812e, 0x220: 0x812e, 0x221: 0x812a, 0x222: 0x812a, 0x223: 0x992e, -+ 0x224: 0x992e, 0x225: 0x992e, 0x226: 0x992e, 0x227: 0x992a, 0x228: 0x992a, 0x229: 0x812e, -+ 0x22a: 0x812e, 0x22b: 0x812e, 0x22c: 0x812e, 0x22d: 0x992e, 0x22e: 0x992e, 0x22f: 0x812e, -+ 0x230: 0x992e, 0x231: 0x992e, 0x232: 0x812e, 0x233: 0x812e, 0x234: 0x8101, 0x235: 0x8101, -+ 0x236: 0x8101, 0x237: 0x8101, 0x238: 0x9901, 0x239: 0x812e, 0x23a: 0x812e, 0x23b: 0x812e, -+ 0x23c: 0x812e, 0x23d: 0x8133, 0x23e: 0x8133, 0x23f: 0x8133, -+ // Block 0x9, offset 0x240 -+ 0x240: 0x49c5, 0x241: 0x49ca, 0x242: 0x9933, 0x243: 0x49cf, 0x244: 0x4a88, 0x245: 0x9937, -+ 0x246: 0x8133, 0x247: 0x812e, 0x248: 0x812e, 0x249: 0x812e, 0x24a: 0x8133, 0x24b: 0x8133, -+ 0x24c: 0x8133, 0x24d: 0x812e, 0x24e: 0x812e, 0x250: 0x8133, 0x251: 0x8133, -+ 0x252: 0x8133, 0x253: 0x812e, 0x254: 0x812e, 0x255: 0x812e, 0x256: 0x812e, 0x257: 0x8133, -+ 0x258: 0x8134, 0x259: 0x812e, 0x25a: 0x812e, 0x25b: 0x8133, 0x25c: 0x8135, 0x25d: 0x8136, -+ 0x25e: 0x8136, 0x25f: 0x8135, 0x260: 0x8136, 0x261: 0x8136, 0x262: 0x8135, 0x263: 0x8133, -+ 0x264: 0x8133, 0x265: 0x8133, 0x266: 0x8133, 0x267: 0x8133, 0x268: 0x8133, 0x269: 0x8133, -+ 0x26a: 0x8133, 0x26b: 0x8133, 0x26c: 0x8133, 0x26d: 0x8133, 0x26e: 0x8133, 0x26f: 0x8133, -+ 0x274: 0x0173, -+ 0x27a: 0x8100, -+ 0x27e: 0x0037, -+ // Block 0xa, offset 0x280 -+ 0x284: 0x8100, 0x285: 0x35b8, -+ 0x286: 0x3600, 0x287: 0x00ce, 0x288: 0x361e, 0x289: 0x362a, 0x28a: 0x363c, -+ 0x28c: 0x365a, 0x28e: 0x366c, 0x28f: 0x368a, 0x290: 0x3e1f, 0x291: 0xa000, -+ 0x295: 0xa000, 0x297: 0xa000, -+ 0x299: 0xa000, -+ 0x29f: 0xa000, 0x2a1: 0xa000, -+ 0x2a5: 0xa000, 0x2a9: 0xa000, -+ 0x2aa: 0x364e, 0x2ab: 0x367e, 0x2ac: 0x4815, 0x2ad: 0x36ae, 0x2ae: 0x483f, 0x2af: 0x36c0, -+ 0x2b0: 0x3e87, 0x2b1: 0xa000, 0x2b5: 0xa000, -+ 0x2b7: 0xa000, 0x2b9: 0xa000, -+ 0x2bf: 0xa000, -+ // Block 0xb, offset 0x2c0 -+ 0x2c0: 0x3738, 0x2c1: 0x3744, 0x2c3: 0x3732, -+ 0x2c6: 0xa000, 0x2c7: 0x3720, -+ 0x2cc: 0x3774, 0x2cd: 0x375c, 0x2ce: 0x3786, 0x2d0: 0xa000, -+ 0x2d3: 0xa000, 0x2d5: 0xa000, 0x2d6: 0xa000, 0x2d7: 0xa000, -+ 0x2d8: 0xa000, 0x2d9: 0x3768, 0x2da: 0xa000, -+ 0x2de: 0xa000, 0x2e3: 0xa000, -+ 0x2e7: 0xa000, -+ 0x2eb: 0xa000, 0x2ed: 0xa000, -+ 0x2f0: 0xa000, 0x2f3: 0xa000, 0x2f5: 0xa000, -+ 0x2f6: 0xa000, 0x2f7: 0xa000, 0x2f8: 0xa000, 0x2f9: 0x37ec, 0x2fa: 0xa000, -+ 0x2fe: 0xa000, -+ // Block 0xc, offset 0x300 -+ 0x301: 0x374a, 0x302: 0x37ce, -+ 0x310: 0x3726, 0x311: 0x37aa, -+ 0x312: 0x372c, 0x313: 0x37b0, 0x316: 0x373e, 0x317: 0x37c2, -+ 0x318: 0xa000, 0x319: 0xa000, 0x31a: 0x3840, 0x31b: 0x3846, 0x31c: 0x3750, 0x31d: 0x37d4, -+ 0x31e: 0x3756, 0x31f: 0x37da, 0x322: 0x3762, 0x323: 0x37e6, -+ 0x324: 0x376e, 0x325: 0x37f2, 0x326: 0x377a, 0x327: 0x37fe, 0x328: 0xa000, 0x329: 0xa000, -+ 0x32a: 0x384c, 0x32b: 0x3852, 0x32c: 0x37a4, 0x32d: 0x3828, 0x32e: 0x3780, 0x32f: 0x3804, -+ 0x330: 0x378c, 0x331: 0x3810, 0x332: 0x3792, 0x333: 0x3816, 0x334: 0x3798, 0x335: 0x381c, -+ 0x338: 0x379e, 0x339: 0x3822, -+ // Block 0xd, offset 0x340 -+ 0x351: 0x812e, -+ 0x352: 0x8133, 0x353: 0x8133, 0x354: 0x8133, 0x355: 0x8133, 0x356: 0x812e, 0x357: 0x8133, -+ 0x358: 0x8133, 0x359: 0x8133, 0x35a: 0x812f, 0x35b: 0x812e, 0x35c: 0x8133, 0x35d: 0x8133, -+ 0x35e: 0x8133, 0x35f: 0x8133, 0x360: 0x8133, 0x361: 0x8133, 0x362: 0x812e, 0x363: 0x812e, -+ 0x364: 0x812e, 0x365: 0x812e, 0x366: 0x812e, 0x367: 0x812e, 0x368: 0x8133, 0x369: 0x8133, -+ 0x36a: 0x812e, 0x36b: 0x8133, 0x36c: 0x8133, 0x36d: 0x812f, 0x36e: 0x8132, 0x36f: 0x8133, -+ 0x370: 0x8106, 0x371: 0x8107, 0x372: 0x8108, 0x373: 0x8109, 0x374: 0x810a, 0x375: 0x810b, -+ 0x376: 0x810c, 0x377: 0x810d, 0x378: 0x810e, 0x379: 0x810f, 0x37a: 0x810f, 0x37b: 0x8110, -+ 0x37c: 0x8111, 0x37d: 0x8112, 0x37f: 0x8113, -+ // Block 0xe, offset 0x380 -+ 0x388: 0xa000, 0x38a: 0xa000, 0x38b: 0x8117, -+ 0x38c: 0x8118, 0x38d: 0x8119, 0x38e: 0x811a, 0x38f: 0x811b, 0x390: 0x811c, 0x391: 0x811d, -+ 0x392: 0x811e, 0x393: 0x9933, 0x394: 0x9933, 0x395: 0x992e, 0x396: 0x812e, 0x397: 0x8133, -+ 0x398: 0x8133, 0x399: 0x8133, 0x39a: 0x8133, 0x39b: 0x8133, 0x39c: 0x812e, 0x39d: 0x8133, -+ 0x39e: 0x8133, 0x39f: 0x812e, -+ 0x3b0: 0x811f, -+ // Block 0xf, offset 0x3c0 -+ 0x3d3: 0x812e, 0x3d4: 0x8133, 0x3d5: 0x8133, 0x3d6: 0x8133, 0x3d7: 0x8133, -+ 0x3d8: 0x8133, 0x3d9: 0x8133, 0x3da: 0x8133, 0x3db: 0x8133, 0x3dc: 0x8133, 0x3dd: 0x8133, -+ 0x3de: 0x8133, 0x3df: 0x8133, 0x3e0: 0x8133, 0x3e1: 0x8133, 0x3e3: 0x812e, -+ 0x3e4: 0x8133, 0x3e5: 0x8133, 0x3e6: 0x812e, 0x3e7: 0x8133, 0x3e8: 0x8133, 0x3e9: 0x812e, -+ 0x3ea: 0x8133, 0x3eb: 0x8133, 0x3ec: 0x8133, 0x3ed: 0x812e, 0x3ee: 0x812e, 0x3ef: 0x812e, -+ 0x3f0: 0x8117, 0x3f1: 0x8118, 0x3f2: 0x8119, 0x3f3: 0x8133, 0x3f4: 0x8133, 0x3f5: 0x8133, -+ 0x3f6: 0x812e, 0x3f7: 0x8133, 0x3f8: 0x8133, 0x3f9: 0x812e, 0x3fa: 0x812e, 0x3fb: 0x8133, -+ 0x3fc: 0x8133, 0x3fd: 0x8133, 0x3fe: 0x8133, 0x3ff: 0x8133, -+ // Block 0x10, offset 0x400 -+ 0x405: 0xa000, -+ 0x406: 0x2d33, 0x407: 0xa000, 0x408: 0x2d3b, 0x409: 0xa000, 0x40a: 0x2d43, 0x40b: 0xa000, -+ 0x40c: 0x2d4b, 0x40d: 0xa000, 0x40e: 0x2d53, 0x411: 0xa000, -+ 0x412: 0x2d5b, -+ 0x434: 0x8103, 0x435: 0x9900, -+ 0x43a: 0xa000, 0x43b: 0x2d63, -+ 0x43c: 0xa000, 0x43d: 0x2d6b, 0x43e: 0xa000, 0x43f: 0xa000, -+ // Block 0x11, offset 0x440 -+ 0x440: 0x8133, 0x441: 0x8133, 0x442: 0x812e, 0x443: 0x8133, 0x444: 0x8133, 0x445: 0x8133, -+ 0x446: 0x8133, 0x447: 0x8133, 0x448: 0x8133, 0x449: 0x8133, 0x44a: 0x812e, 0x44b: 0x8133, -+ 0x44c: 0x8133, 0x44d: 0x8136, 0x44e: 0x812b, 0x44f: 0x812e, 0x450: 0x812a, 0x451: 0x8133, -+ 0x452: 0x8133, 0x453: 0x8133, 0x454: 0x8133, 0x455: 0x8133, 0x456: 0x8133, 0x457: 0x8133, -+ 0x458: 0x8133, 0x459: 0x8133, 0x45a: 0x8133, 0x45b: 0x8133, 0x45c: 0x8133, 0x45d: 0x8133, -+ 0x45e: 0x8133, 0x45f: 0x8133, 0x460: 0x8133, 0x461: 0x8133, 0x462: 0x8133, 0x463: 0x8133, -+ 0x464: 0x8133, 0x465: 0x8133, 0x466: 0x8133, 0x467: 0x8133, 0x468: 0x8133, 0x469: 0x8133, -+ 0x46a: 0x8133, 0x46b: 0x8133, 0x46c: 0x8133, 0x46d: 0x8133, 0x46e: 0x8133, 0x46f: 0x8133, -+ 0x470: 0x8133, 0x471: 0x8133, 0x472: 0x8133, 0x473: 0x8133, 0x474: 0x8133, 0x475: 0x8133, -+ 0x476: 0x8134, 0x477: 0x8132, 0x478: 0x8132, 0x479: 0x812e, 0x47b: 0x8133, -+ 0x47c: 0x8135, 0x47d: 0x812e, 0x47e: 0x8133, 0x47f: 0x812e, -+ // Block 0x12, offset 0x480 -+ 0x480: 0x2fae, 0x481: 0x32ba, 0x482: 0x2fb8, 0x483: 0x32c4, 0x484: 0x2fbd, 0x485: 0x32c9, -+ 0x486: 0x2fc2, 0x487: 0x32ce, 0x488: 0x38e3, 0x489: 0x3a72, 0x48a: 0x2fdb, 0x48b: 0x32e7, -+ 0x48c: 0x2fe5, 0x48d: 0x32f1, 0x48e: 0x2ff4, 0x48f: 0x3300, 0x490: 0x2fea, 0x491: 0x32f6, -+ 0x492: 0x2fef, 0x493: 0x32fb, 0x494: 0x3906, 0x495: 0x3a95, 0x496: 0x390d, 0x497: 0x3a9c, -+ 0x498: 0x3030, 0x499: 0x333c, 0x49a: 0x3035, 0x49b: 0x3341, 0x49c: 0x391b, 0x49d: 0x3aaa, -+ 0x49e: 0x303a, 0x49f: 0x3346, 0x4a0: 0x3049, 0x4a1: 0x3355, 0x4a2: 0x3067, 0x4a3: 0x3373, -+ 0x4a4: 0x3076, 0x4a5: 0x3382, 0x4a6: 0x306c, 0x4a7: 0x3378, 0x4a8: 0x307b, 0x4a9: 0x3387, -+ 0x4aa: 0x3080, 0x4ab: 0x338c, 0x4ac: 0x30c6, 0x4ad: 0x33d2, 0x4ae: 0x3922, 0x4af: 0x3ab1, -+ 0x4b0: 0x30d0, 0x4b1: 0x33e1, 0x4b2: 0x30da, 0x4b3: 0x33eb, 0x4b4: 0x30e4, 0x4b5: 0x33f5, -+ 0x4b6: 0x46db, 0x4b7: 0x476c, 0x4b8: 0x3929, 0x4b9: 0x3ab8, 0x4ba: 0x30fd, 0x4bb: 0x340e, -+ 0x4bc: 0x30f8, 0x4bd: 0x3409, 0x4be: 0x3102, 0x4bf: 0x3413, -+ // Block 0x13, offset 0x4c0 -+ 0x4c0: 0x3107, 0x4c1: 0x3418, 0x4c2: 0x310c, 0x4c3: 0x341d, 0x4c4: 0x3120, 0x4c5: 0x3431, -+ 0x4c6: 0x312a, 0x4c7: 0x343b, 0x4c8: 0x3139, 0x4c9: 0x344a, 0x4ca: 0x3134, 0x4cb: 0x3445, -+ 0x4cc: 0x394c, 0x4cd: 0x3adb, 0x4ce: 0x395a, 0x4cf: 0x3ae9, 0x4d0: 0x3961, 0x4d1: 0x3af0, -+ 0x4d2: 0x3968, 0x4d3: 0x3af7, 0x4d4: 0x3166, 0x4d5: 0x3477, 0x4d6: 0x316b, 0x4d7: 0x347c, -+ 0x4d8: 0x3175, 0x4d9: 0x3486, 0x4da: 0x4708, 0x4db: 0x4799, 0x4dc: 0x39ae, 0x4dd: 0x3b3d, -+ 0x4de: 0x318e, 0x4df: 0x349f, 0x4e0: 0x3198, 0x4e1: 0x34a9, 0x4e2: 0x4717, 0x4e3: 0x47a8, -+ 0x4e4: 0x39b5, 0x4e5: 0x3b44, 0x4e6: 0x39bc, 0x4e7: 0x3b4b, 0x4e8: 0x39c3, 0x4e9: 0x3b52, -+ 0x4ea: 0x31a7, 0x4eb: 0x34b8, 0x4ec: 0x31b1, 0x4ed: 0x34c7, 0x4ee: 0x31c5, 0x4ef: 0x34db, -+ 0x4f0: 0x31c0, 0x4f1: 0x34d6, 0x4f2: 0x3201, 0x4f3: 0x3517, 0x4f4: 0x3210, 0x4f5: 0x3526, -+ 0x4f6: 0x320b, 0x4f7: 0x3521, 0x4f8: 0x39ca, 0x4f9: 0x3b59, 0x4fa: 0x39d1, 0x4fb: 0x3b60, -+ 0x4fc: 0x3215, 0x4fd: 0x352b, 0x4fe: 0x321a, 0x4ff: 0x3530, -+ // Block 0x14, offset 0x500 -+ 0x500: 0x321f, 0x501: 0x3535, 0x502: 0x3224, 0x503: 0x353a, 0x504: 0x3233, 0x505: 0x3549, -+ 0x506: 0x322e, 0x507: 0x3544, 0x508: 0x3238, 0x509: 0x3553, 0x50a: 0x323d, 0x50b: 0x3558, -+ 0x50c: 0x3242, 0x50d: 0x355d, 0x50e: 0x3260, 0x50f: 0x357b, 0x510: 0x3279, 0x511: 0x3599, -+ 0x512: 0x3288, 0x513: 0x35a8, 0x514: 0x328d, 0x515: 0x35ad, 0x516: 0x3391, 0x517: 0x34bd, -+ 0x518: 0x354e, 0x519: 0x358a, 0x51b: 0x35e8, -+ 0x520: 0x46b8, 0x521: 0x4749, 0x522: 0x2f9a, 0x523: 0x32a6, -+ 0x524: 0x388f, 0x525: 0x3a1e, 0x526: 0x3888, 0x527: 0x3a17, 0x528: 0x389d, 0x529: 0x3a2c, -+ 0x52a: 0x3896, 0x52b: 0x3a25, 0x52c: 0x38d5, 0x52d: 0x3a64, 0x52e: 0x38ab, 0x52f: 0x3a3a, -+ 0x530: 0x38a4, 0x531: 0x3a33, 0x532: 0x38b9, 0x533: 0x3a48, 0x534: 0x38b2, 0x535: 0x3a41, -+ 0x536: 0x38dc, 0x537: 0x3a6b, 0x538: 0x46cc, 0x539: 0x475d, 0x53a: 0x3017, 0x53b: 0x3323, -+ 0x53c: 0x3003, 0x53d: 0x330f, 0x53e: 0x38f1, 0x53f: 0x3a80, -+ // Block 0x15, offset 0x540 -+ 0x540: 0x38ea, 0x541: 0x3a79, 0x542: 0x38ff, 0x543: 0x3a8e, 0x544: 0x38f8, 0x545: 0x3a87, -+ 0x546: 0x3914, 0x547: 0x3aa3, 0x548: 0x30a8, 0x549: 0x33b4, 0x54a: 0x30bc, 0x54b: 0x33c8, -+ 0x54c: 0x46fe, 0x54d: 0x478f, 0x54e: 0x314d, 0x54f: 0x345e, 0x550: 0x3937, 0x551: 0x3ac6, -+ 0x552: 0x3930, 0x553: 0x3abf, 0x554: 0x3945, 0x555: 0x3ad4, 0x556: 0x393e, 0x557: 0x3acd, -+ 0x558: 0x39a0, 0x559: 0x3b2f, 0x55a: 0x3984, 0x55b: 0x3b13, 0x55c: 0x397d, 0x55d: 0x3b0c, -+ 0x55e: 0x3992, 0x55f: 0x3b21, 0x560: 0x398b, 0x561: 0x3b1a, 0x562: 0x3999, 0x563: 0x3b28, -+ 0x564: 0x31fc, 0x565: 0x3512, 0x566: 0x31de, 0x567: 0x34f4, 0x568: 0x39fb, 0x569: 0x3b8a, -+ 0x56a: 0x39f4, 0x56b: 0x3b83, 0x56c: 0x3a09, 0x56d: 0x3b98, 0x56e: 0x3a02, 0x56f: 0x3b91, -+ 0x570: 0x3a10, 0x571: 0x3b9f, 0x572: 0x3247, 0x573: 0x3562, 0x574: 0x326f, 0x575: 0x358f, -+ 0x576: 0x326a, 0x577: 0x3585, 0x578: 0x3256, 0x579: 0x3571, -+ // Block 0x16, offset 0x580 -+ 0x580: 0x481b, 0x581: 0x4821, 0x582: 0x4935, 0x583: 0x494d, 0x584: 0x493d, 0x585: 0x4955, -+ 0x586: 0x4945, 0x587: 0x495d, 0x588: 0x47c1, 0x589: 0x47c7, 0x58a: 0x48a5, 0x58b: 0x48bd, -+ 0x58c: 0x48ad, 0x58d: 0x48c5, 0x58e: 0x48b5, 0x58f: 0x48cd, 0x590: 0x482d, 0x591: 0x4833, -+ 0x592: 0x3dcf, 0x593: 0x3ddf, 0x594: 0x3dd7, 0x595: 0x3de7, -+ 0x598: 0x47cd, 0x599: 0x47d3, 0x59a: 0x3cff, 0x59b: 0x3d0f, 0x59c: 0x3d07, 0x59d: 0x3d17, -+ 0x5a0: 0x4845, 0x5a1: 0x484b, 0x5a2: 0x4965, 0x5a3: 0x497d, -+ 0x5a4: 0x496d, 0x5a5: 0x4985, 0x5a6: 0x4975, 0x5a7: 0x498d, 0x5a8: 0x47d9, 0x5a9: 0x47df, -+ 0x5aa: 0x48d5, 0x5ab: 0x48ed, 0x5ac: 0x48dd, 0x5ad: 0x48f5, 0x5ae: 0x48e5, 0x5af: 0x48fd, -+ 0x5b0: 0x485d, 0x5b1: 0x4863, 0x5b2: 0x3e2f, 0x5b3: 0x3e47, 0x5b4: 0x3e37, 0x5b5: 0x3e4f, -+ 0x5b6: 0x3e3f, 0x5b7: 0x3e57, 0x5b8: 0x47e5, 0x5b9: 0x47eb, 0x5ba: 0x3d2f, 0x5bb: 0x3d47, -+ 0x5bc: 0x3d37, 0x5bd: 0x3d4f, 0x5be: 0x3d3f, 0x5bf: 0x3d57, -+ // Block 0x17, offset 0x5c0 -+ 0x5c0: 0x4869, 0x5c1: 0x486f, 0x5c2: 0x3e5f, 0x5c3: 0x3e6f, 0x5c4: 0x3e67, 0x5c5: 0x3e77, -+ 0x5c8: 0x47f1, 0x5c9: 0x47f7, 0x5ca: 0x3d5f, 0x5cb: 0x3d6f, -+ 0x5cc: 0x3d67, 0x5cd: 0x3d77, 0x5d0: 0x487b, 0x5d1: 0x4881, -+ 0x5d2: 0x3e97, 0x5d3: 0x3eaf, 0x5d4: 0x3e9f, 0x5d5: 0x3eb7, 0x5d6: 0x3ea7, 0x5d7: 0x3ebf, -+ 0x5d9: 0x47fd, 0x5db: 0x3d7f, 0x5dd: 0x3d87, -+ 0x5df: 0x3d8f, 0x5e0: 0x4893, 0x5e1: 0x4899, 0x5e2: 0x4995, 0x5e3: 0x49ad, -+ 0x5e4: 0x499d, 0x5e5: 0x49b5, 0x5e6: 0x49a5, 0x5e7: 0x49bd, 0x5e8: 0x4803, 0x5e9: 0x4809, -+ 0x5ea: 0x4905, 0x5eb: 0x491d, 0x5ec: 0x490d, 0x5ed: 0x4925, 0x5ee: 0x4915, 0x5ef: 0x492d, -+ 0x5f0: 0x480f, 0x5f1: 0x4335, 0x5f2: 0x36a8, 0x5f3: 0x433b, 0x5f4: 0x4839, 0x5f5: 0x4341, -+ 0x5f6: 0x36ba, 0x5f7: 0x4347, 0x5f8: 0x36d8, 0x5f9: 0x434d, 0x5fa: 0x36f0, 0x5fb: 0x4353, -+ 0x5fc: 0x4887, 0x5fd: 0x4359, -+ // Block 0x18, offset 0x600 -+ 0x600: 0x3db7, 0x601: 0x3dbf, 0x602: 0x419b, 0x603: 0x41b9, 0x604: 0x41a5, 0x605: 0x41c3, -+ 0x606: 0x41af, 0x607: 0x41cd, 0x608: 0x3cef, 0x609: 0x3cf7, 0x60a: 0x40e7, 0x60b: 0x4105, -+ 0x60c: 0x40f1, 0x60d: 0x410f, 0x60e: 0x40fb, 0x60f: 0x4119, 0x610: 0x3dff, 0x611: 0x3e07, -+ 0x612: 0x41d7, 0x613: 0x41f5, 0x614: 0x41e1, 0x615: 0x41ff, 0x616: 0x41eb, 0x617: 0x4209, -+ 0x618: 0x3d1f, 0x619: 0x3d27, 0x61a: 0x4123, 0x61b: 0x4141, 0x61c: 0x412d, 0x61d: 0x414b, -+ 0x61e: 0x4137, 0x61f: 0x4155, 0x620: 0x3ed7, 0x621: 0x3edf, 0x622: 0x4213, 0x623: 0x4231, -+ 0x624: 0x421d, 0x625: 0x423b, 0x626: 0x4227, 0x627: 0x4245, 0x628: 0x3d97, 0x629: 0x3d9f, -+ 0x62a: 0x415f, 0x62b: 0x417d, 0x62c: 0x4169, 0x62d: 0x4187, 0x62e: 0x4173, 0x62f: 0x4191, -+ 0x630: 0x369c, 0x631: 0x3696, 0x632: 0x3da7, 0x633: 0x36a2, 0x634: 0x3daf, -+ 0x636: 0x4827, 0x637: 0x3dc7, 0x638: 0x360c, 0x639: 0x3606, 0x63a: 0x35fa, 0x63b: 0x4305, -+ 0x63c: 0x3612, 0x63d: 0x8100, 0x63e: 0x01d6, 0x63f: 0xa100, -+ // Block 0x19, offset 0x640 -+ 0x640: 0x8100, 0x641: 0x35be, 0x642: 0x3def, 0x643: 0x36b4, 0x644: 0x3df7, -+ 0x646: 0x4851, 0x647: 0x3e0f, 0x648: 0x3618, 0x649: 0x430b, 0x64a: 0x3624, 0x64b: 0x4311, -+ 0x64c: 0x3630, 0x64d: 0x3ba6, 0x64e: 0x3bad, 0x64f: 0x3bb4, 0x650: 0x36cc, 0x651: 0x36c6, -+ 0x652: 0x3e17, 0x653: 0x44fb, 0x656: 0x36d2, 0x657: 0x3e27, -+ 0x658: 0x3648, 0x659: 0x3642, 0x65a: 0x3636, 0x65b: 0x4317, 0x65d: 0x3bbb, -+ 0x65e: 0x3bc2, 0x65f: 0x3bc9, 0x660: 0x3702, 0x661: 0x36fc, 0x662: 0x3e7f, 0x663: 0x4503, -+ 0x664: 0x36e4, 0x665: 0x36ea, 0x666: 0x3708, 0x667: 0x3e8f, 0x668: 0x3678, 0x669: 0x3672, -+ 0x66a: 0x3666, 0x66b: 0x4323, 0x66c: 0x3660, 0x66d: 0x35b2, 0x66e: 0x42ff, 0x66f: 0x0081, -+ 0x672: 0x3ec7, 0x673: 0x370e, 0x674: 0x3ecf, -+ 0x676: 0x489f, 0x677: 0x3ee7, 0x678: 0x3654, 0x679: 0x431d, 0x67a: 0x3684, 0x67b: 0x432f, -+ 0x67c: 0x3690, 0x67d: 0x426d, 0x67e: 0xa100, -+ // Block 0x1a, offset 0x680 -+ 0x681: 0x3c1d, 0x683: 0xa000, 0x684: 0x3c24, 0x685: 0xa000, -+ 0x687: 0x3c2b, 0x688: 0xa000, 0x689: 0x3c32, -+ 0x68d: 0xa000, -+ 0x6a0: 0x2f7c, 0x6a1: 0xa000, 0x6a2: 0x3c40, -+ 0x6a4: 0xa000, 0x6a5: 0xa000, -+ 0x6ad: 0x3c39, 0x6ae: 0x2f77, 0x6af: 0x2f81, -+ 0x6b0: 0x3c47, 0x6b1: 0x3c4e, 0x6b2: 0xa000, 0x6b3: 0xa000, 0x6b4: 0x3c55, 0x6b5: 0x3c5c, -+ 0x6b6: 0xa000, 0x6b7: 0xa000, 0x6b8: 0x3c63, 0x6b9: 0x3c6a, 0x6ba: 0xa000, 0x6bb: 0xa000, -+ 0x6bc: 0xa000, 0x6bd: 0xa000, -+ // Block 0x1b, offset 0x6c0 -+ 0x6c0: 0x3c71, 0x6c1: 0x3c78, 0x6c2: 0xa000, 0x6c3: 0xa000, 0x6c4: 0x3c8d, 0x6c5: 0x3c94, -+ 0x6c6: 0xa000, 0x6c7: 0xa000, 0x6c8: 0x3c9b, 0x6c9: 0x3ca2, -+ 0x6d1: 0xa000, -+ 0x6d2: 0xa000, -+ 0x6e2: 0xa000, -+ 0x6e8: 0xa000, 0x6e9: 0xa000, -+ 0x6eb: 0xa000, 0x6ec: 0x3cb7, 0x6ed: 0x3cbe, 0x6ee: 0x3cc5, 0x6ef: 0x3ccc, -+ 0x6f2: 0xa000, 0x6f3: 0xa000, 0x6f4: 0xa000, 0x6f5: 0xa000, -+ // Block 0x1c, offset 0x700 -+ 0x706: 0xa000, 0x70b: 0xa000, -+ 0x70c: 0x3f1f, 0x70d: 0xa000, 0x70e: 0x3f27, 0x70f: 0xa000, 0x710: 0x3f2f, 0x711: 0xa000, -+ 0x712: 0x3f37, 0x713: 0xa000, 0x714: 0x3f3f, 0x715: 0xa000, 0x716: 0x3f47, 0x717: 0xa000, -+ 0x718: 0x3f4f, 0x719: 0xa000, 0x71a: 0x3f57, 0x71b: 0xa000, 0x71c: 0x3f5f, 0x71d: 0xa000, -+ 0x71e: 0x3f67, 0x71f: 0xa000, 0x720: 0x3f6f, 0x721: 0xa000, 0x722: 0x3f77, -+ 0x724: 0xa000, 0x725: 0x3f7f, 0x726: 0xa000, 0x727: 0x3f87, 0x728: 0xa000, 0x729: 0x3f8f, -+ 0x72f: 0xa000, -+ 0x730: 0x3f97, 0x731: 0x3f9f, 0x732: 0xa000, 0x733: 0x3fa7, 0x734: 0x3faf, 0x735: 0xa000, -+ 0x736: 0x3fb7, 0x737: 0x3fbf, 0x738: 0xa000, 0x739: 0x3fc7, 0x73a: 0x3fcf, 0x73b: 0xa000, -+ 0x73c: 0x3fd7, 0x73d: 0x3fdf, -+ // Block 0x1d, offset 0x740 -+ 0x754: 0x3f17, -+ 0x759: 0x9904, 0x75a: 0x9904, 0x75b: 0x8100, 0x75c: 0x8100, 0x75d: 0xa000, -+ 0x75e: 0x3fe7, -+ 0x766: 0xa000, -+ 0x76b: 0xa000, 0x76c: 0x3ff7, 0x76d: 0xa000, 0x76e: 0x3fff, 0x76f: 0xa000, -+ 0x770: 0x4007, 0x771: 0xa000, 0x772: 0x400f, 0x773: 0xa000, 0x774: 0x4017, 0x775: 0xa000, -+ 0x776: 0x401f, 0x777: 0xa000, 0x778: 0x4027, 0x779: 0xa000, 0x77a: 0x402f, 0x77b: 0xa000, -+ 0x77c: 0x4037, 0x77d: 0xa000, 0x77e: 0x403f, 0x77f: 0xa000, -+ // Block 0x1e, offset 0x780 -+ 0x780: 0x4047, 0x781: 0xa000, 0x782: 0x404f, 0x784: 0xa000, 0x785: 0x4057, -+ 0x786: 0xa000, 0x787: 0x405f, 0x788: 0xa000, 0x789: 0x4067, -+ 0x78f: 0xa000, 0x790: 0x406f, 0x791: 0x4077, -+ 0x792: 0xa000, 0x793: 0x407f, 0x794: 0x4087, 0x795: 0xa000, 0x796: 0x408f, 0x797: 0x4097, -+ 0x798: 0xa000, 0x799: 0x409f, 0x79a: 0x40a7, 0x79b: 0xa000, 0x79c: 0x40af, 0x79d: 0x40b7, -+ 0x7af: 0xa000, -+ 0x7b0: 0xa000, 0x7b1: 0xa000, 0x7b2: 0xa000, 0x7b4: 0x3fef, -+ 0x7b7: 0x40bf, 0x7b8: 0x40c7, 0x7b9: 0x40cf, 0x7ba: 0x40d7, -+ 0x7bd: 0xa000, 0x7be: 0x40df, -+ // Block 0x1f, offset 0x7c0 -+ 0x7c0: 0x137a, 0x7c1: 0x0cfe, 0x7c2: 0x13d6, 0x7c3: 0x13a2, 0x7c4: 0x0e5a, 0x7c5: 0x06ee, -+ 0x7c6: 0x08e2, 0x7c7: 0x162e, 0x7c8: 0x162e, 0x7c9: 0x0a0e, 0x7ca: 0x1462, 0x7cb: 0x0946, -+ 0x7cc: 0x0a0a, 0x7cd: 0x0bf2, 0x7ce: 0x0fd2, 0x7cf: 0x1162, 0x7d0: 0x129a, 0x7d1: 0x12d6, -+ 0x7d2: 0x130a, 0x7d3: 0x141e, 0x7d4: 0x0d76, 0x7d5: 0x0e02, 0x7d6: 0x0eae, 0x7d7: 0x0f46, -+ 0x7d8: 0x1262, 0x7d9: 0x144a, 0x7da: 0x1576, 0x7db: 0x0712, 0x7dc: 0x08b6, 0x7dd: 0x0d8a, -+ 0x7de: 0x0ed2, 0x7df: 0x1296, 0x7e0: 0x15c6, 0x7e1: 0x0ab6, 0x7e2: 0x0e7a, 0x7e3: 0x1286, -+ 0x7e4: 0x131a, 0x7e5: 0x0c26, 0x7e6: 0x11be, 0x7e7: 0x12e2, 0x7e8: 0x0b22, 0x7e9: 0x0d12, -+ 0x7ea: 0x0e1a, 0x7eb: 0x0f1e, 0x7ec: 0x142a, 0x7ed: 0x0752, 0x7ee: 0x07ea, 0x7ef: 0x0856, -+ 0x7f0: 0x0c8e, 0x7f1: 0x0d82, 0x7f2: 0x0ece, 0x7f3: 0x0ff2, 0x7f4: 0x117a, 0x7f5: 0x128e, -+ 0x7f6: 0x12a6, 0x7f7: 0x13ca, 0x7f8: 0x14f2, 0x7f9: 0x15a6, 0x7fa: 0x15c2, 0x7fb: 0x102e, -+ 0x7fc: 0x106e, 0x7fd: 0x1126, 0x7fe: 0x1246, 0x7ff: 0x147e, -+ // Block 0x20, offset 0x800 -+ 0x800: 0x15ce, 0x801: 0x134e, 0x802: 0x09ca, 0x803: 0x0b3e, 0x804: 0x10de, 0x805: 0x119e, -+ 0x806: 0x0f02, 0x807: 0x1036, 0x808: 0x139a, 0x809: 0x14ea, 0x80a: 0x09c6, 0x80b: 0x0a92, -+ 0x80c: 0x0d7a, 0x80d: 0x0e2e, 0x80e: 0x0e62, 0x80f: 0x1116, 0x810: 0x113e, 0x811: 0x14aa, -+ 0x812: 0x0852, 0x813: 0x11aa, 0x814: 0x07f6, 0x815: 0x07f2, 0x816: 0x109a, 0x817: 0x112a, -+ 0x818: 0x125e, 0x819: 0x14b2, 0x81a: 0x136a, 0x81b: 0x0c2a, 0x81c: 0x0d76, 0x81d: 0x135a, -+ 0x81e: 0x06fa, 0x81f: 0x0a66, 0x820: 0x0b96, 0x821: 0x0f32, 0x822: 0x0fb2, 0x823: 0x0876, -+ 0x824: 0x103e, 0x825: 0x0762, 0x826: 0x0b7a, 0x827: 0x06da, 0x828: 0x0dee, 0x829: 0x0ca6, -+ 0x82a: 0x1112, 0x82b: 0x08ca, 0x82c: 0x09b6, 0x82d: 0x0ffe, 0x82e: 0x1266, 0x82f: 0x133e, -+ 0x830: 0x0dba, 0x831: 0x13fa, 0x832: 0x0de6, 0x833: 0x0c3a, 0x834: 0x121e, 0x835: 0x0c5a, -+ 0x836: 0x0fae, 0x837: 0x072e, 0x838: 0x07aa, 0x839: 0x07ee, 0x83a: 0x0d56, 0x83b: 0x10fe, -+ 0x83c: 0x11f6, 0x83d: 0x134a, 0x83e: 0x145e, 0x83f: 0x085e, -+ // Block 0x21, offset 0x840 -+ 0x840: 0x0912, 0x841: 0x0a1a, 0x842: 0x0b32, 0x843: 0x0cc2, 0x844: 0x0e7e, 0x845: 0x1042, -+ 0x846: 0x149a, 0x847: 0x157e, 0x848: 0x15d2, 0x849: 0x15ea, 0x84a: 0x083a, 0x84b: 0x0cf6, -+ 0x84c: 0x0da6, 0x84d: 0x13ee, 0x84e: 0x0afe, 0x84f: 0x0bda, 0x850: 0x0bf6, 0x851: 0x0c86, -+ 0x852: 0x0e6e, 0x853: 0x0eba, 0x854: 0x0f6a, 0x855: 0x108e, 0x856: 0x1132, 0x857: 0x1196, -+ 0x858: 0x13de, 0x859: 0x126e, 0x85a: 0x1406, 0x85b: 0x1482, 0x85c: 0x0812, 0x85d: 0x083e, -+ 0x85e: 0x0926, 0x85f: 0x0eaa, 0x860: 0x12f6, 0x861: 0x133e, 0x862: 0x0b1e, 0x863: 0x0b8e, -+ 0x864: 0x0c52, 0x865: 0x0db2, 0x866: 0x10da, 0x867: 0x0f26, 0x868: 0x073e, 0x869: 0x0982, -+ 0x86a: 0x0a66, 0x86b: 0x0aca, 0x86c: 0x0b9a, 0x86d: 0x0f42, 0x86e: 0x0f5e, 0x86f: 0x116e, -+ 0x870: 0x118e, 0x871: 0x1466, 0x872: 0x14e6, 0x873: 0x14f6, 0x874: 0x1532, 0x875: 0x0756, -+ 0x876: 0x1082, 0x877: 0x1452, 0x878: 0x14ce, 0x879: 0x0bb2, 0x87a: 0x071a, 0x87b: 0x077a, -+ 0x87c: 0x0a6a, 0x87d: 0x0a8a, 0x87e: 0x0cb2, 0x87f: 0x0d76, -+ // Block 0x22, offset 0x880 -+ 0x880: 0x0ec6, 0x881: 0x0fce, 0x882: 0x127a, 0x883: 0x141a, 0x884: 0x1626, 0x885: 0x0ce6, -+ 0x886: 0x14a6, 0x887: 0x0836, 0x888: 0x0d32, 0x889: 0x0d3e, 0x88a: 0x0e12, 0x88b: 0x0e4a, -+ 0x88c: 0x0f4e, 0x88d: 0x0faa, 0x88e: 0x102a, 0x88f: 0x110e, 0x890: 0x153e, 0x891: 0x07b2, -+ 0x892: 0x0c06, 0x893: 0x14b6, 0x894: 0x076a, 0x895: 0x0aae, 0x896: 0x0e32, 0x897: 0x13e2, -+ 0x898: 0x0b6a, 0x899: 0x0bba, 0x89a: 0x0d46, 0x89b: 0x0f32, 0x89c: 0x14be, 0x89d: 0x081a, -+ 0x89e: 0x0902, 0x89f: 0x0a9a, 0x8a0: 0x0cd6, 0x8a1: 0x0d22, 0x8a2: 0x0d62, 0x8a3: 0x0df6, -+ 0x8a4: 0x0f4a, 0x8a5: 0x0fbe, 0x8a6: 0x115a, 0x8a7: 0x12fa, 0x8a8: 0x1306, 0x8a9: 0x145a, -+ 0x8aa: 0x14da, 0x8ab: 0x0886, 0x8ac: 0x0e4e, 0x8ad: 0x0906, 0x8ae: 0x0eca, 0x8af: 0x0f6e, -+ 0x8b0: 0x128a, 0x8b1: 0x14c2, 0x8b2: 0x15ae, 0x8b3: 0x15d6, 0x8b4: 0x0d3a, 0x8b5: 0x0e2a, -+ 0x8b6: 0x11c6, 0x8b7: 0x10ba, 0x8b8: 0x10c6, 0x8b9: 0x10ea, 0x8ba: 0x0f1a, 0x8bb: 0x0ea2, -+ 0x8bc: 0x1366, 0x8bd: 0x0736, 0x8be: 0x122e, 0x8bf: 0x081e, -+ // Block 0x23, offset 0x8c0 -+ 0x8c0: 0x080e, 0x8c1: 0x0b0e, 0x8c2: 0x0c2e, 0x8c3: 0x10f6, 0x8c4: 0x0a56, 0x8c5: 0x0e06, -+ 0x8c6: 0x0cf2, 0x8c7: 0x13ea, 0x8c8: 0x12ea, 0x8c9: 0x14ae, 0x8ca: 0x1326, 0x8cb: 0x0b2a, -+ 0x8cc: 0x078a, 0x8cd: 0x095e, 0x8d0: 0x09b2, -+ 0x8d2: 0x0ce2, 0x8d5: 0x07fa, 0x8d6: 0x0f22, 0x8d7: 0x0fe6, -+ 0x8d8: 0x104a, 0x8d9: 0x1066, 0x8da: 0x106a, 0x8db: 0x107e, 0x8dc: 0x14fe, 0x8dd: 0x10ee, -+ 0x8de: 0x1172, 0x8e0: 0x1292, 0x8e2: 0x1356, -+ 0x8e5: 0x140a, 0x8e6: 0x1436, -+ 0x8ea: 0x1552, 0x8eb: 0x1556, 0x8ec: 0x155a, 0x8ed: 0x15be, 0x8ee: 0x142e, 0x8ef: 0x14ca, -+ 0x8f0: 0x075a, 0x8f1: 0x077e, 0x8f2: 0x0792, 0x8f3: 0x084e, 0x8f4: 0x085a, 0x8f5: 0x089a, -+ 0x8f6: 0x094e, 0x8f7: 0x096a, 0x8f8: 0x0972, 0x8f9: 0x09ae, 0x8fa: 0x09ba, 0x8fb: 0x0a96, -+ 0x8fc: 0x0a9e, 0x8fd: 0x0ba6, 0x8fe: 0x0bce, 0x8ff: 0x0bd6, -+ // Block 0x24, offset 0x900 -+ 0x900: 0x0bee, 0x901: 0x0c9a, 0x902: 0x0cca, 0x903: 0x0cea, 0x904: 0x0d5a, 0x905: 0x0e1e, -+ 0x906: 0x0e3a, 0x907: 0x0e6a, 0x908: 0x0ebe, 0x909: 0x0ede, 0x90a: 0x0f52, 0x90b: 0x1032, -+ 0x90c: 0x104e, 0x90d: 0x1056, 0x90e: 0x1052, 0x90f: 0x105a, 0x910: 0x105e, 0x911: 0x1062, -+ 0x912: 0x1076, 0x913: 0x107a, 0x914: 0x109e, 0x915: 0x10b2, 0x916: 0x10ce, 0x917: 0x1132, -+ 0x918: 0x113a, 0x919: 0x1142, 0x91a: 0x1156, 0x91b: 0x117e, 0x91c: 0x11ce, 0x91d: 0x1202, -+ 0x91e: 0x1202, 0x91f: 0x126a, 0x920: 0x1312, 0x921: 0x132a, 0x922: 0x135e, 0x923: 0x1362, -+ 0x924: 0x13a6, 0x925: 0x13aa, 0x926: 0x1402, 0x927: 0x140a, 0x928: 0x14de, 0x929: 0x1522, -+ 0x92a: 0x153a, 0x92b: 0x0b9e, 0x92c: 0x1721, 0x92d: 0x11e6, -+ 0x930: 0x06e2, 0x931: 0x07e6, 0x932: 0x07a6, 0x933: 0x074e, 0x934: 0x078e, 0x935: 0x07ba, -+ 0x936: 0x084a, 0x937: 0x0866, 0x938: 0x094e, 0x939: 0x093a, 0x93a: 0x094a, 0x93b: 0x0966, -+ 0x93c: 0x09b2, 0x93d: 0x09c2, 0x93e: 0x0a06, 0x93f: 0x0a12, -+ // Block 0x25, offset 0x940 -+ 0x940: 0x0a2e, 0x941: 0x0a3e, 0x942: 0x0b26, 0x943: 0x0b2e, 0x944: 0x0b5e, 0x945: 0x0b7e, -+ 0x946: 0x0bae, 0x947: 0x0bc6, 0x948: 0x0bb6, 0x949: 0x0bd6, 0x94a: 0x0bca, 0x94b: 0x0bee, -+ 0x94c: 0x0c0a, 0x94d: 0x0c62, 0x94e: 0x0c6e, 0x94f: 0x0c76, 0x950: 0x0c9e, 0x951: 0x0ce2, -+ 0x952: 0x0d12, 0x953: 0x0d16, 0x954: 0x0d2a, 0x955: 0x0daa, 0x956: 0x0dba, 0x957: 0x0e12, -+ 0x958: 0x0e5e, 0x959: 0x0e56, 0x95a: 0x0e6a, 0x95b: 0x0e86, 0x95c: 0x0ebe, 0x95d: 0x1016, -+ 0x95e: 0x0ee2, 0x95f: 0x0f16, 0x960: 0x0f22, 0x961: 0x0f62, 0x962: 0x0f7e, 0x963: 0x0fa2, -+ 0x964: 0x0fc6, 0x965: 0x0fca, 0x966: 0x0fe6, 0x967: 0x0fea, 0x968: 0x0ffa, 0x969: 0x100e, -+ 0x96a: 0x100a, 0x96b: 0x103a, 0x96c: 0x10b6, 0x96d: 0x10ce, 0x96e: 0x10e6, 0x96f: 0x111e, -+ 0x970: 0x1132, 0x971: 0x114e, 0x972: 0x117e, 0x973: 0x1232, 0x974: 0x125a, 0x975: 0x12ce, -+ 0x976: 0x1316, 0x977: 0x1322, 0x978: 0x132a, 0x979: 0x1342, 0x97a: 0x1356, 0x97b: 0x1346, -+ 0x97c: 0x135e, 0x97d: 0x135a, 0x97e: 0x1352, 0x97f: 0x1362, -+ // Block 0x26, offset 0x980 -+ 0x980: 0x136e, 0x981: 0x13aa, 0x982: 0x13e6, 0x983: 0x1416, 0x984: 0x144e, 0x985: 0x146e, -+ 0x986: 0x14ba, 0x987: 0x14de, 0x988: 0x14fe, 0x989: 0x1512, 0x98a: 0x1522, 0x98b: 0x152e, -+ 0x98c: 0x153a, 0x98d: 0x158e, 0x98e: 0x162e, 0x98f: 0x16b8, 0x990: 0x16b3, 0x991: 0x16e5, -+ 0x992: 0x060a, 0x993: 0x0632, 0x994: 0x0636, 0x995: 0x1767, 0x996: 0x1794, 0x997: 0x180c, -+ 0x998: 0x161a, 0x999: 0x162a, -+ // Block 0x27, offset 0x9c0 -+ 0x9c0: 0x06fe, 0x9c1: 0x06f6, 0x9c2: 0x0706, 0x9c3: 0x164a, 0x9c4: 0x074a, 0x9c5: 0x075a, -+ 0x9c6: 0x075e, 0x9c7: 0x0766, 0x9c8: 0x076e, 0x9c9: 0x0772, 0x9ca: 0x077e, 0x9cb: 0x0776, -+ 0x9cc: 0x05b6, 0x9cd: 0x165e, 0x9ce: 0x0792, 0x9cf: 0x0796, 0x9d0: 0x079a, 0x9d1: 0x07b6, -+ 0x9d2: 0x164f, 0x9d3: 0x05ba, 0x9d4: 0x07a2, 0x9d5: 0x07c2, 0x9d6: 0x1659, 0x9d7: 0x07d2, -+ 0x9d8: 0x07da, 0x9d9: 0x073a, 0x9da: 0x07e2, 0x9db: 0x07e6, 0x9dc: 0x1834, 0x9dd: 0x0802, -+ 0x9de: 0x080a, 0x9df: 0x05c2, 0x9e0: 0x0822, 0x9e1: 0x0826, 0x9e2: 0x082e, 0x9e3: 0x0832, -+ 0x9e4: 0x05c6, 0x9e5: 0x084a, 0x9e6: 0x084e, 0x9e7: 0x085a, 0x9e8: 0x0866, 0x9e9: 0x086a, -+ 0x9ea: 0x086e, 0x9eb: 0x0876, 0x9ec: 0x0896, 0x9ed: 0x089a, 0x9ee: 0x08a2, 0x9ef: 0x08b2, -+ 0x9f0: 0x08ba, 0x9f1: 0x08be, 0x9f2: 0x08be, 0x9f3: 0x08be, 0x9f4: 0x166d, 0x9f5: 0x0e96, -+ 0x9f6: 0x08d2, 0x9f7: 0x08da, 0x9f8: 0x1672, 0x9f9: 0x08e6, 0x9fa: 0x08ee, 0x9fb: 0x08f6, -+ 0x9fc: 0x091e, 0x9fd: 0x090a, 0x9fe: 0x0916, 0x9ff: 0x091a, -+ // Block 0x28, offset 0xa00 -+ 0xa00: 0x0922, 0xa01: 0x092a, 0xa02: 0x092e, 0xa03: 0x0936, 0xa04: 0x093e, 0xa05: 0x0942, -+ 0xa06: 0x0942, 0xa07: 0x094a, 0xa08: 0x0952, 0xa09: 0x0956, 0xa0a: 0x0962, 0xa0b: 0x0986, -+ 0xa0c: 0x096a, 0xa0d: 0x098a, 0xa0e: 0x096e, 0xa0f: 0x0976, 0xa10: 0x080e, 0xa11: 0x09d2, -+ 0xa12: 0x099a, 0xa13: 0x099e, 0xa14: 0x09a2, 0xa15: 0x0996, 0xa16: 0x09aa, 0xa17: 0x09a6, -+ 0xa18: 0x09be, 0xa19: 0x1677, 0xa1a: 0x09da, 0xa1b: 0x09de, 0xa1c: 0x09e6, 0xa1d: 0x09f2, -+ 0xa1e: 0x09fa, 0xa1f: 0x0a16, 0xa20: 0x167c, 0xa21: 0x1681, 0xa22: 0x0a22, 0xa23: 0x0a26, -+ 0xa24: 0x0a2a, 0xa25: 0x0a1e, 0xa26: 0x0a32, 0xa27: 0x05ca, 0xa28: 0x05ce, 0xa29: 0x0a3a, -+ 0xa2a: 0x0a42, 0xa2b: 0x0a42, 0xa2c: 0x1686, 0xa2d: 0x0a5e, 0xa2e: 0x0a62, 0xa2f: 0x0a66, -+ 0xa30: 0x0a6e, 0xa31: 0x168b, 0xa32: 0x0a76, 0xa33: 0x0a7a, 0xa34: 0x0b52, 0xa35: 0x0a82, -+ 0xa36: 0x05d2, 0xa37: 0x0a8e, 0xa38: 0x0a9e, 0xa39: 0x0aaa, 0xa3a: 0x0aa6, 0xa3b: 0x1695, -+ 0xa3c: 0x0ab2, 0xa3d: 0x169a, 0xa3e: 0x0abe, 0xa3f: 0x0aba, -+ // Block 0x29, offset 0xa40 -+ 0xa40: 0x0ac2, 0xa41: 0x0ad2, 0xa42: 0x0ad6, 0xa43: 0x05d6, 0xa44: 0x0ae6, 0xa45: 0x0aee, -+ 0xa46: 0x0af2, 0xa47: 0x0af6, 0xa48: 0x05da, 0xa49: 0x169f, 0xa4a: 0x05de, 0xa4b: 0x0b12, -+ 0xa4c: 0x0b16, 0xa4d: 0x0b1a, 0xa4e: 0x0b22, 0xa4f: 0x1866, 0xa50: 0x0b3a, 0xa51: 0x16a9, -+ 0xa52: 0x16a9, 0xa53: 0x11da, 0xa54: 0x0b4a, 0xa55: 0x0b4a, 0xa56: 0x05e2, 0xa57: 0x16cc, -+ 0xa58: 0x179e, 0xa59: 0x0b5a, 0xa5a: 0x0b62, 0xa5b: 0x05e6, 0xa5c: 0x0b76, 0xa5d: 0x0b86, -+ 0xa5e: 0x0b8a, 0xa5f: 0x0b92, 0xa60: 0x0ba2, 0xa61: 0x05ee, 0xa62: 0x05ea, 0xa63: 0x0ba6, -+ 0xa64: 0x16ae, 0xa65: 0x0baa, 0xa66: 0x0bbe, 0xa67: 0x0bc2, 0xa68: 0x0bc6, 0xa69: 0x0bc2, -+ 0xa6a: 0x0bd2, 0xa6b: 0x0bd6, 0xa6c: 0x0be6, 0xa6d: 0x0bde, 0xa6e: 0x0be2, 0xa6f: 0x0bea, -+ 0xa70: 0x0bee, 0xa71: 0x0bf2, 0xa72: 0x0bfe, 0xa73: 0x0c02, 0xa74: 0x0c1a, 0xa75: 0x0c22, -+ 0xa76: 0x0c32, 0xa77: 0x0c46, 0xa78: 0x16bd, 0xa79: 0x0c42, 0xa7a: 0x0c36, 0xa7b: 0x0c4e, -+ 0xa7c: 0x0c56, 0xa7d: 0x0c6a, 0xa7e: 0x16c2, 0xa7f: 0x0c72, -+ // Block 0x2a, offset 0xa80 -+ 0xa80: 0x0c66, 0xa81: 0x0c5e, 0xa82: 0x05f2, 0xa83: 0x0c7a, 0xa84: 0x0c82, 0xa85: 0x0c8a, -+ 0xa86: 0x0c7e, 0xa87: 0x05f6, 0xa88: 0x0c9a, 0xa89: 0x0ca2, 0xa8a: 0x16c7, 0xa8b: 0x0cce, -+ 0xa8c: 0x0d02, 0xa8d: 0x0cde, 0xa8e: 0x0602, 0xa8f: 0x0cea, 0xa90: 0x05fe, 0xa91: 0x05fa, -+ 0xa92: 0x07c6, 0xa93: 0x07ca, 0xa94: 0x0d06, 0xa95: 0x0cee, 0xa96: 0x11ae, 0xa97: 0x0666, -+ 0xa98: 0x0d12, 0xa99: 0x0d16, 0xa9a: 0x0d1a, 0xa9b: 0x0d2e, 0xa9c: 0x0d26, 0xa9d: 0x16e0, -+ 0xa9e: 0x0606, 0xa9f: 0x0d42, 0xaa0: 0x0d36, 0xaa1: 0x0d52, 0xaa2: 0x0d5a, 0xaa3: 0x16ea, -+ 0xaa4: 0x0d5e, 0xaa5: 0x0d4a, 0xaa6: 0x0d66, 0xaa7: 0x060a, 0xaa8: 0x0d6a, 0xaa9: 0x0d6e, -+ 0xaaa: 0x0d72, 0xaab: 0x0d7e, 0xaac: 0x16ef, 0xaad: 0x0d86, 0xaae: 0x060e, 0xaaf: 0x0d92, -+ 0xab0: 0x16f4, 0xab1: 0x0d96, 0xab2: 0x0612, 0xab3: 0x0da2, 0xab4: 0x0dae, 0xab5: 0x0dba, -+ 0xab6: 0x0dbe, 0xab7: 0x16f9, 0xab8: 0x1690, 0xab9: 0x16fe, 0xaba: 0x0dde, 0xabb: 0x1703, -+ 0xabc: 0x0dea, 0xabd: 0x0df2, 0xabe: 0x0de2, 0xabf: 0x0dfe, -+ // Block 0x2b, offset 0xac0 -+ 0xac0: 0x0e0e, 0xac1: 0x0e1e, 0xac2: 0x0e12, 0xac3: 0x0e16, 0xac4: 0x0e22, 0xac5: 0x0e26, -+ 0xac6: 0x1708, 0xac7: 0x0e0a, 0xac8: 0x0e3e, 0xac9: 0x0e42, 0xaca: 0x0616, 0xacb: 0x0e56, -+ 0xacc: 0x0e52, 0xacd: 0x170d, 0xace: 0x0e36, 0xacf: 0x0e72, 0xad0: 0x1712, 0xad1: 0x1717, -+ 0xad2: 0x0e76, 0xad3: 0x0e8a, 0xad4: 0x0e86, 0xad5: 0x0e82, 0xad6: 0x061a, 0xad7: 0x0e8e, -+ 0xad8: 0x0e9e, 0xad9: 0x0e9a, 0xada: 0x0ea6, 0xadb: 0x1654, 0xadc: 0x0eb6, 0xadd: 0x171c, -+ 0xade: 0x0ec2, 0xadf: 0x1726, 0xae0: 0x0ed6, 0xae1: 0x0ee2, 0xae2: 0x0ef6, 0xae3: 0x172b, -+ 0xae4: 0x0f0a, 0xae5: 0x0f0e, 0xae6: 0x1730, 0xae7: 0x1735, 0xae8: 0x0f2a, 0xae9: 0x0f3a, -+ 0xaea: 0x061e, 0xaeb: 0x0f3e, 0xaec: 0x0622, 0xaed: 0x0622, 0xaee: 0x0f56, 0xaef: 0x0f5a, -+ 0xaf0: 0x0f62, 0xaf1: 0x0f66, 0xaf2: 0x0f72, 0xaf3: 0x0626, 0xaf4: 0x0f8a, 0xaf5: 0x173a, -+ 0xaf6: 0x0fa6, 0xaf7: 0x173f, 0xaf8: 0x0fb2, 0xaf9: 0x16a4, 0xafa: 0x0fc2, 0xafb: 0x1744, -+ 0xafc: 0x1749, 0xafd: 0x174e, 0xafe: 0x062a, 0xaff: 0x062e, -+ // Block 0x2c, offset 0xb00 -+ 0xb00: 0x0ffa, 0xb01: 0x1758, 0xb02: 0x1753, 0xb03: 0x175d, 0xb04: 0x1762, 0xb05: 0x1002, -+ 0xb06: 0x1006, 0xb07: 0x1006, 0xb08: 0x100e, 0xb09: 0x0636, 0xb0a: 0x1012, 0xb0b: 0x063a, -+ 0xb0c: 0x063e, 0xb0d: 0x176c, 0xb0e: 0x1026, 0xb0f: 0x102e, 0xb10: 0x103a, 0xb11: 0x0642, -+ 0xb12: 0x1771, 0xb13: 0x105e, 0xb14: 0x1776, 0xb15: 0x177b, 0xb16: 0x107e, 0xb17: 0x1096, -+ 0xb18: 0x0646, 0xb19: 0x109e, 0xb1a: 0x10a2, 0xb1b: 0x10a6, 0xb1c: 0x1780, 0xb1d: 0x1785, -+ 0xb1e: 0x1785, 0xb1f: 0x10be, 0xb20: 0x064a, 0xb21: 0x178a, 0xb22: 0x10d2, 0xb23: 0x10d6, -+ 0xb24: 0x064e, 0xb25: 0x178f, 0xb26: 0x10f2, 0xb27: 0x0652, 0xb28: 0x1102, 0xb29: 0x10fa, -+ 0xb2a: 0x110a, 0xb2b: 0x1799, 0xb2c: 0x1122, 0xb2d: 0x0656, 0xb2e: 0x112e, 0xb2f: 0x1136, -+ 0xb30: 0x1146, 0xb31: 0x065a, 0xb32: 0x17a3, 0xb33: 0x17a8, 0xb34: 0x065e, 0xb35: 0x17ad, -+ 0xb36: 0x115e, 0xb37: 0x17b2, 0xb38: 0x116a, 0xb39: 0x1176, 0xb3a: 0x117e, 0xb3b: 0x17b7, -+ 0xb3c: 0x17bc, 0xb3d: 0x1192, 0xb3e: 0x17c1, 0xb3f: 0x119a, -+ // Block 0x2d, offset 0xb40 -+ 0xb40: 0x16d1, 0xb41: 0x0662, 0xb42: 0x11b2, 0xb43: 0x11b6, 0xb44: 0x066a, 0xb45: 0x11ba, -+ 0xb46: 0x0a36, 0xb47: 0x17c6, 0xb48: 0x17cb, 0xb49: 0x16d6, 0xb4a: 0x16db, 0xb4b: 0x11da, -+ 0xb4c: 0x11de, 0xb4d: 0x13f6, 0xb4e: 0x066e, 0xb4f: 0x120a, 0xb50: 0x1206, 0xb51: 0x120e, -+ 0xb52: 0x0842, 0xb53: 0x1212, 0xb54: 0x1216, 0xb55: 0x121a, 0xb56: 0x1222, 0xb57: 0x17d0, -+ 0xb58: 0x121e, 0xb59: 0x1226, 0xb5a: 0x123a, 0xb5b: 0x123e, 0xb5c: 0x122a, 0xb5d: 0x1242, -+ 0xb5e: 0x1256, 0xb5f: 0x126a, 0xb60: 0x1236, 0xb61: 0x124a, 0xb62: 0x124e, 0xb63: 0x1252, -+ 0xb64: 0x17d5, 0xb65: 0x17df, 0xb66: 0x17da, 0xb67: 0x0672, 0xb68: 0x1272, 0xb69: 0x1276, -+ 0xb6a: 0x127e, 0xb6b: 0x17f3, 0xb6c: 0x1282, 0xb6d: 0x17e4, 0xb6e: 0x0676, 0xb6f: 0x067a, -+ 0xb70: 0x17e9, 0xb71: 0x17ee, 0xb72: 0x067e, 0xb73: 0x12a2, 0xb74: 0x12a6, 0xb75: 0x12aa, -+ 0xb76: 0x12ae, 0xb77: 0x12ba, 0xb78: 0x12b6, 0xb79: 0x12c2, 0xb7a: 0x12be, 0xb7b: 0x12ce, -+ 0xb7c: 0x12c6, 0xb7d: 0x12ca, 0xb7e: 0x12d2, 0xb7f: 0x0682, -+ // Block 0x2e, offset 0xb80 -+ 0xb80: 0x12da, 0xb81: 0x12de, 0xb82: 0x0686, 0xb83: 0x12ee, 0xb84: 0x12f2, 0xb85: 0x17f8, -+ 0xb86: 0x12fe, 0xb87: 0x1302, 0xb88: 0x068a, 0xb89: 0x130e, 0xb8a: 0x05be, 0xb8b: 0x17fd, -+ 0xb8c: 0x1802, 0xb8d: 0x068e, 0xb8e: 0x0692, 0xb8f: 0x133a, 0xb90: 0x1352, 0xb91: 0x136e, -+ 0xb92: 0x137e, 0xb93: 0x1807, 0xb94: 0x1392, 0xb95: 0x1396, 0xb96: 0x13ae, 0xb97: 0x13ba, -+ 0xb98: 0x1811, 0xb99: 0x1663, 0xb9a: 0x13c6, 0xb9b: 0x13c2, 0xb9c: 0x13ce, 0xb9d: 0x1668, -+ 0xb9e: 0x13da, 0xb9f: 0x13e6, 0xba0: 0x1816, 0xba1: 0x181b, 0xba2: 0x1426, 0xba3: 0x1432, -+ 0xba4: 0x143a, 0xba5: 0x1820, 0xba6: 0x143e, 0xba7: 0x146a, 0xba8: 0x1476, 0xba9: 0x147a, -+ 0xbaa: 0x1472, 0xbab: 0x1486, 0xbac: 0x148a, 0xbad: 0x1825, 0xbae: 0x1496, 0xbaf: 0x0696, -+ 0xbb0: 0x149e, 0xbb1: 0x182a, 0xbb2: 0x069a, 0xbb3: 0x14d6, 0xbb4: 0x0ac6, 0xbb5: 0x14ee, -+ 0xbb6: 0x182f, 0xbb7: 0x1839, 0xbb8: 0x069e, 0xbb9: 0x06a2, 0xbba: 0x1516, 0xbbb: 0x183e, -+ 0xbbc: 0x06a6, 0xbbd: 0x1843, 0xbbe: 0x152e, 0xbbf: 0x152e, -+ // Block 0x2f, offset 0xbc0 -+ 0xbc0: 0x1536, 0xbc1: 0x1848, 0xbc2: 0x154e, 0xbc3: 0x06aa, 0xbc4: 0x155e, 0xbc5: 0x156a, -+ 0xbc6: 0x1572, 0xbc7: 0x157a, 0xbc8: 0x06ae, 0xbc9: 0x184d, 0xbca: 0x158e, 0xbcb: 0x15aa, -+ 0xbcc: 0x15b6, 0xbcd: 0x06b2, 0xbce: 0x06b6, 0xbcf: 0x15ba, 0xbd0: 0x1852, 0xbd1: 0x06ba, -+ 0xbd2: 0x1857, 0xbd3: 0x185c, 0xbd4: 0x1861, 0xbd5: 0x15de, 0xbd6: 0x06be, 0xbd7: 0x15f2, -+ 0xbd8: 0x15fa, 0xbd9: 0x15fe, 0xbda: 0x1606, 0xbdb: 0x160e, 0xbdc: 0x1616, 0xbdd: 0x186b, -+} -+ -+// nfcIndex: 22 blocks, 1408 entries, 1408 bytes -+// Block 0 is the zero block. -+var nfcIndex = [1408]uint8{ -+ // Block 0x0, offset 0x0 -+ // Block 0x1, offset 0x40 -+ // Block 0x2, offset 0x80 -+ // Block 0x3, offset 0xc0 -+ 0xc2: 0x2e, 0xc3: 0x01, 0xc4: 0x02, 0xc5: 0x03, 0xc6: 0x2f, 0xc7: 0x04, -+ 0xc8: 0x05, 0xca: 0x30, 0xcb: 0x31, 0xcc: 0x06, 0xcd: 0x07, 0xce: 0x08, 0xcf: 0x32, -+ 0xd0: 0x09, 0xd1: 0x33, 0xd2: 0x34, 0xd3: 0x0a, 0xd6: 0x0b, 0xd7: 0x35, -+ 0xd8: 0x36, 0xd9: 0x0c, 0xdb: 0x37, 0xdc: 0x38, 0xdd: 0x39, 0xdf: 0x3a, -+ 0xe0: 0x02, 0xe1: 0x03, 0xe2: 0x04, 0xe3: 0x05, -+ 0xea: 0x06, 0xeb: 0x07, 0xec: 0x08, 0xed: 0x09, 0xef: 0x0a, -+ 0xf0: 0x13, -+ // Block 0x4, offset 0x100 -+ 0x120: 0x3b, 0x121: 0x3c, 0x123: 0x0d, 0x124: 0x3d, 0x125: 0x3e, 0x126: 0x3f, 0x127: 0x40, -+ 0x128: 0x41, 0x129: 0x42, 0x12a: 0x43, 0x12b: 0x44, 0x12c: 0x3f, 0x12d: 0x45, 0x12e: 0x46, 0x12f: 0x47, -+ 0x131: 0x48, 0x132: 0x49, 0x133: 0x4a, 0x134: 0x4b, 0x135: 0x4c, 0x137: 0x4d, -+ 0x138: 0x4e, 0x139: 0x4f, 0x13a: 0x50, 0x13b: 0x51, 0x13c: 0x52, 0x13d: 0x53, 0x13e: 0x54, 0x13f: 0x55, -+ // Block 0x5, offset 0x140 -+ 0x140: 0x56, 0x142: 0x57, 0x144: 0x58, 0x145: 0x59, 0x146: 0x5a, 0x147: 0x5b, -+ 0x14d: 0x5c, -+ 0x15c: 0x5d, 0x15f: 0x5e, -+ 0x162: 0x5f, 0x164: 0x60, -+ 0x168: 0x61, 0x169: 0x62, 0x16a: 0x63, 0x16b: 0x64, 0x16c: 0x0e, 0x16d: 0x65, 0x16e: 0x66, 0x16f: 0x67, -+ 0x170: 0x68, 0x173: 0x69, 0x177: 0x0f, -+ 0x178: 0x10, 0x179: 0x11, 0x17a: 0x12, 0x17b: 0x13, 0x17c: 0x14, 0x17d: 0x15, 0x17e: 0x16, 0x17f: 0x17, -+ // Block 0x6, offset 0x180 -+ 0x180: 0x6a, 0x183: 0x6b, 0x184: 0x6c, 0x186: 0x6d, 0x187: 0x6e, -+ 0x188: 0x6f, 0x189: 0x18, 0x18a: 0x19, 0x18b: 0x70, 0x18c: 0x71, -+ 0x1ab: 0x72, -+ 0x1b3: 0x73, 0x1b5: 0x74, 0x1b7: 0x75, -+ // Block 0x7, offset 0x1c0 -+ 0x1c0: 0x76, 0x1c1: 0x1a, 0x1c2: 0x1b, 0x1c3: 0x1c, 0x1c4: 0x77, 0x1c5: 0x78, -+ 0x1c9: 0x79, 0x1cc: 0x7a, 0x1cd: 0x7b, -+ // Block 0x8, offset 0x200 -+ 0x219: 0x7c, 0x21a: 0x7d, 0x21b: 0x7e, -+ 0x220: 0x7f, 0x223: 0x80, 0x224: 0x81, 0x225: 0x82, 0x226: 0x83, 0x227: 0x84, -+ 0x22a: 0x85, 0x22b: 0x86, 0x22f: 0x87, -+ 0x230: 0x88, 0x231: 0x89, 0x232: 0x8a, 0x233: 0x8b, 0x234: 0x8c, 0x235: 0x8d, 0x236: 0x8e, 0x237: 0x88, -+ 0x238: 0x89, 0x239: 0x8a, 0x23a: 0x8b, 0x23b: 0x8c, 0x23c: 0x8d, 0x23d: 0x8e, 0x23e: 0x88, 0x23f: 0x89, -+ // Block 0x9, offset 0x240 -+ 0x240: 0x8a, 0x241: 0x8b, 0x242: 0x8c, 0x243: 0x8d, 0x244: 0x8e, 0x245: 0x88, 0x246: 0x89, 0x247: 0x8a, -+ 0x248: 0x8b, 0x249: 0x8c, 0x24a: 0x8d, 0x24b: 0x8e, 0x24c: 0x88, 0x24d: 0x89, 0x24e: 0x8a, 0x24f: 0x8b, -+ 0x250: 0x8c, 0x251: 0x8d, 0x252: 0x8e, 0x253: 0x88, 0x254: 0x89, 0x255: 0x8a, 0x256: 0x8b, 0x257: 0x8c, -+ 0x258: 0x8d, 0x259: 0x8e, 0x25a: 0x88, 0x25b: 0x89, 0x25c: 0x8a, 0x25d: 0x8b, 0x25e: 0x8c, 0x25f: 0x8d, -+ 0x260: 0x8e, 0x261: 0x88, 0x262: 0x89, 0x263: 0x8a, 0x264: 0x8b, 0x265: 0x8c, 0x266: 0x8d, 0x267: 0x8e, -+ 0x268: 0x88, 0x269: 0x89, 0x26a: 0x8a, 0x26b: 0x8b, 0x26c: 0x8c, 0x26d: 0x8d, 0x26e: 0x8e, 0x26f: 0x88, -+ 0x270: 0x89, 0x271: 0x8a, 0x272: 0x8b, 0x273: 0x8c, 0x274: 0x8d, 0x275: 0x8e, 0x276: 0x88, 0x277: 0x89, -+ 0x278: 0x8a, 0x279: 0x8b, 0x27a: 0x8c, 0x27b: 0x8d, 0x27c: 0x8e, 0x27d: 0x88, 0x27e: 0x89, 0x27f: 0x8a, -+ // Block 0xa, offset 0x280 -+ 0x280: 0x8b, 0x281: 0x8c, 0x282: 0x8d, 0x283: 0x8e, 0x284: 0x88, 0x285: 0x89, 0x286: 0x8a, 0x287: 0x8b, -+ 0x288: 0x8c, 0x289: 0x8d, 0x28a: 0x8e, 0x28b: 0x88, 0x28c: 0x89, 0x28d: 0x8a, 0x28e: 0x8b, 0x28f: 0x8c, -+ 0x290: 0x8d, 0x291: 0x8e, 0x292: 0x88, 0x293: 0x89, 0x294: 0x8a, 0x295: 0x8b, 0x296: 0x8c, 0x297: 0x8d, -+ 0x298: 0x8e, 0x299: 0x88, 0x29a: 0x89, 0x29b: 0x8a, 0x29c: 0x8b, 0x29d: 0x8c, 0x29e: 0x8d, 0x29f: 0x8e, -+ 0x2a0: 0x88, 0x2a1: 0x89, 0x2a2: 0x8a, 0x2a3: 0x8b, 0x2a4: 0x8c, 0x2a5: 0x8d, 0x2a6: 0x8e, 0x2a7: 0x88, -+ 0x2a8: 0x89, 0x2a9: 0x8a, 0x2aa: 0x8b, 0x2ab: 0x8c, 0x2ac: 0x8d, 0x2ad: 0x8e, 0x2ae: 0x88, 0x2af: 0x89, -+ 0x2b0: 0x8a, 0x2b1: 0x8b, 0x2b2: 0x8c, 0x2b3: 0x8d, 0x2b4: 0x8e, 0x2b5: 0x88, 0x2b6: 0x89, 0x2b7: 0x8a, -+ 0x2b8: 0x8b, 0x2b9: 0x8c, 0x2ba: 0x8d, 0x2bb: 0x8e, 0x2bc: 0x88, 0x2bd: 0x89, 0x2be: 0x8a, 0x2bf: 0x8b, -+ // Block 0xb, offset 0x2c0 -+ 0x2c0: 0x8c, 0x2c1: 0x8d, 0x2c2: 0x8e, 0x2c3: 0x88, 0x2c4: 0x89, 0x2c5: 0x8a, 0x2c6: 0x8b, 0x2c7: 0x8c, -+ 0x2c8: 0x8d, 0x2c9: 0x8e, 0x2ca: 0x88, 0x2cb: 0x89, 0x2cc: 0x8a, 0x2cd: 0x8b, 0x2ce: 0x8c, 0x2cf: 0x8d, -+ 0x2d0: 0x8e, 0x2d1: 0x88, 0x2d2: 0x89, 0x2d3: 0x8a, 0x2d4: 0x8b, 0x2d5: 0x8c, 0x2d6: 0x8d, 0x2d7: 0x8e, -+ 0x2d8: 0x88, 0x2d9: 0x89, 0x2da: 0x8a, 0x2db: 0x8b, 0x2dc: 0x8c, 0x2dd: 0x8d, 0x2de: 0x8f, -+ // Block 0xc, offset 0x300 -+ 0x324: 0x1d, 0x325: 0x1e, 0x326: 0x1f, 0x327: 0x20, -+ 0x328: 0x21, 0x329: 0x22, 0x32a: 0x23, 0x32b: 0x24, 0x32c: 0x90, 0x32d: 0x91, 0x32e: 0x92, -+ 0x331: 0x93, 0x332: 0x94, 0x333: 0x95, 0x334: 0x96, -+ 0x338: 0x97, 0x339: 0x98, 0x33a: 0x99, 0x33b: 0x9a, 0x33e: 0x9b, 0x33f: 0x9c, -+ // Block 0xd, offset 0x340 -+ 0x347: 0x9d, -+ 0x34b: 0x9e, 0x34d: 0x9f, -+ 0x368: 0xa0, 0x36b: 0xa1, -+ 0x374: 0xa2, -+ 0x37a: 0xa3, 0x37d: 0xa4, -+ // Block 0xe, offset 0x380 -+ 0x381: 0xa5, 0x382: 0xa6, 0x384: 0xa7, 0x385: 0x83, 0x387: 0xa8, -+ 0x388: 0xa9, 0x38b: 0xaa, 0x38c: 0xab, 0x38d: 0xac, -+ 0x391: 0xad, 0x392: 0xae, 0x393: 0xaf, 0x396: 0xb0, 0x397: 0xb1, -+ 0x398: 0x74, 0x39a: 0xb2, 0x39c: 0xb3, -+ 0x3a0: 0xb4, 0x3a4: 0xb5, 0x3a5: 0xb6, 0x3a7: 0xb7, -+ 0x3a8: 0xb8, 0x3a9: 0xb9, 0x3aa: 0xba, -+ 0x3b0: 0x74, 0x3b5: 0xbb, 0x3b6: 0xbc, -+ // Block 0xf, offset 0x3c0 -+ 0x3eb: 0xbd, 0x3ec: 0xbe, -+ 0x3ff: 0xbf, -+ // Block 0x10, offset 0x400 -+ 0x432: 0xc0, -+ // Block 0x11, offset 0x440 -+ 0x445: 0xc1, 0x446: 0xc2, 0x447: 0xc3, -+ 0x449: 0xc4, -+ // Block 0x12, offset 0x480 -+ 0x480: 0xc5, 0x484: 0xbe, -+ 0x48b: 0xc6, -+ 0x4a3: 0xc7, 0x4a5: 0xc8, -+ // Block 0x13, offset 0x4c0 -+ 0x4c8: 0xc9, -+ // Block 0x14, offset 0x500 -+ 0x520: 0x25, 0x521: 0x26, 0x522: 0x27, 0x523: 0x28, 0x524: 0x29, 0x525: 0x2a, 0x526: 0x2b, 0x527: 0x2c, -+ 0x528: 0x2d, -+ // Block 0x15, offset 0x540 -+ 0x550: 0x0b, 0x551: 0x0c, 0x556: 0x0d, -+ 0x55b: 0x0e, 0x55d: 0x0f, 0x55e: 0x10, 0x55f: 0x11, -+ 0x56f: 0x12, -+} -+ -+// nfcSparseOffset: 156 entries, 312 bytes -+var nfcSparseOffset = []uint16{0x0, 0x5, 0x9, 0xb, 0xd, 0x18, 0x28, 0x2a, 0x2f, 0x3a, 0x49, 0x56, 0x5e, 0x63, 0x68, 0x6a, 0x72, 0x79, 0x7c, 0x84, 0x88, 0x8c, 0x8e, 0x90, 0x99, 0x9d, 0xa4, 0xa9, 0xac, 0xb6, 0xb9, 0xc0, 0xc8, 0xcb, 0xcd, 0xd0, 0xd2, 0xd7, 0xe8, 0xf4, 0xf6, 0xfc, 0xfe, 0x100, 0x102, 0x104, 0x106, 0x108, 0x10b, 0x10e, 0x110, 0x113, 0x116, 0x11a, 0x120, 0x122, 0x12b, 0x12d, 0x130, 0x132, 0x13d, 0x141, 0x14f, 0x152, 0x158, 0x15e, 0x169, 0x16d, 0x16f, 0x171, 0x173, 0x175, 0x177, 0x17d, 0x181, 0x183, 0x185, 0x18d, 0x191, 0x194, 0x196, 0x198, 0x19b, 0x19e, 0x1a0, 0x1a2, 0x1a4, 0x1a6, 0x1ac, 0x1af, 0x1b1, 0x1b8, 0x1be, 0x1c4, 0x1cc, 0x1d2, 0x1d8, 0x1de, 0x1e2, 0x1f0, 0x1f9, 0x1fc, 0x1ff, 0x201, 0x204, 0x206, 0x20a, 0x20f, 0x211, 0x213, 0x218, 0x21e, 0x220, 0x222, 0x224, 0x22a, 0x22d, 0x22f, 0x231, 0x237, 0x23a, 0x242, 0x249, 0x24c, 0x24f, 0x251, 0x254, 0x25c, 0x260, 0x267, 0x26a, 0x270, 0x272, 0x275, 0x277, 0x27a, 0x27f, 0x281, 0x283, 0x285, 0x287, 0x289, 0x28c, 0x28e, 0x290, 0x292, 0x294, 0x296, 0x2a3, 0x2ad, 0x2af, 0x2b1, 0x2b7, 0x2b9, 0x2bb, 0x2be} -+ -+// nfcSparseValues: 704 entries, 2816 bytes -+var nfcSparseValues = [704]valueRange{ -+ // Block 0x0, offset 0x0 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0xa100, lo: 0xa8, hi: 0xa8}, -+ {value: 0x8100, lo: 0xaf, hi: 0xaf}, -+ {value: 0x8100, lo: 0xb4, hi: 0xb4}, -+ {value: 0x8100, lo: 0xb8, hi: 0xb8}, -+ // Block 0x1, offset 0x5 -+ {value: 0x0091, lo: 0x03}, -+ {value: 0x46f9, lo: 0xa0, hi: 0xa1}, -+ {value: 0x472b, lo: 0xaf, hi: 0xb0}, -+ {value: 0xa000, lo: 0xb7, hi: 0xb7}, -+ // Block 0x2, offset 0x9 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0xa000, lo: 0x92, hi: 0x92}, -+ // Block 0x3, offset 0xb -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8100, lo: 0x98, hi: 0x9d}, -+ // Block 0x4, offset 0xd -+ {value: 0x0006, lo: 0x0a}, -+ {value: 0xa000, lo: 0x81, hi: 0x81}, -+ {value: 0xa000, lo: 0x85, hi: 0x85}, -+ {value: 0xa000, lo: 0x89, hi: 0x89}, -+ {value: 0x4857, lo: 0x8a, hi: 0x8a}, -+ {value: 0x4875, lo: 0x8b, hi: 0x8b}, -+ {value: 0x36de, lo: 0x8c, hi: 0x8c}, -+ {value: 0x36f6, lo: 0x8d, hi: 0x8d}, -+ {value: 0x488d, lo: 0x8e, hi: 0x8e}, -+ {value: 0xa000, lo: 0x92, hi: 0x92}, -+ {value: 0x3714, lo: 0x93, hi: 0x94}, -+ // Block 0x5, offset 0x18 -+ {value: 0x0000, lo: 0x0f}, -+ {value: 0xa000, lo: 0x83, hi: 0x83}, -+ {value: 0xa000, lo: 0x87, hi: 0x87}, -+ {value: 0xa000, lo: 0x8b, hi: 0x8b}, -+ {value: 0xa000, lo: 0x8d, hi: 0x8d}, -+ {value: 0x37bc, lo: 0x90, hi: 0x90}, -+ {value: 0x37c8, lo: 0x91, hi: 0x91}, -+ {value: 0x37b6, lo: 0x93, hi: 0x93}, -+ {value: 0xa000, lo: 0x96, hi: 0x96}, -+ {value: 0x382e, lo: 0x97, hi: 0x97}, -+ {value: 0x37f8, lo: 0x9c, hi: 0x9c}, -+ {value: 0x37e0, lo: 0x9d, hi: 0x9d}, -+ {value: 0x380a, lo: 0x9e, hi: 0x9e}, -+ {value: 0xa000, lo: 0xb4, hi: 0xb5}, -+ {value: 0x3834, lo: 0xb6, hi: 0xb6}, -+ {value: 0x383a, lo: 0xb7, hi: 0xb7}, -+ // Block 0x6, offset 0x28 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8133, lo: 0x83, hi: 0x87}, -+ // Block 0x7, offset 0x2a -+ {value: 0x0001, lo: 0x04}, -+ {value: 0x8114, lo: 0x81, hi: 0x82}, -+ {value: 0x8133, lo: 0x84, hi: 0x84}, -+ {value: 0x812e, lo: 0x85, hi: 0x85}, -+ {value: 0x810e, lo: 0x87, hi: 0x87}, -+ // Block 0x8, offset 0x2f -+ {value: 0x0000, lo: 0x0a}, -+ {value: 0x8133, lo: 0x90, hi: 0x97}, -+ {value: 0x811a, lo: 0x98, hi: 0x98}, -+ {value: 0x811b, lo: 0x99, hi: 0x99}, -+ {value: 0x811c, lo: 0x9a, hi: 0x9a}, -+ {value: 0x3858, lo: 0xa2, hi: 0xa2}, -+ {value: 0x385e, lo: 0xa3, hi: 0xa3}, -+ {value: 0x386a, lo: 0xa4, hi: 0xa4}, -+ {value: 0x3864, lo: 0xa5, hi: 0xa5}, -+ {value: 0x3870, lo: 0xa6, hi: 0xa6}, -+ {value: 0xa000, lo: 0xa7, hi: 0xa7}, -+ // Block 0x9, offset 0x3a -+ {value: 0x0000, lo: 0x0e}, -+ {value: 0x3882, lo: 0x80, hi: 0x80}, -+ {value: 0xa000, lo: 0x81, hi: 0x81}, -+ {value: 0x3876, lo: 0x82, hi: 0x82}, -+ {value: 0xa000, lo: 0x92, hi: 0x92}, -+ {value: 0x387c, lo: 0x93, hi: 0x93}, -+ {value: 0xa000, lo: 0x95, hi: 0x95}, -+ {value: 0x8133, lo: 0x96, hi: 0x9c}, -+ {value: 0x8133, lo: 0x9f, hi: 0xa2}, -+ {value: 0x812e, lo: 0xa3, hi: 0xa3}, -+ {value: 0x8133, lo: 0xa4, hi: 0xa4}, -+ {value: 0x8133, lo: 0xa7, hi: 0xa8}, -+ {value: 0x812e, lo: 0xaa, hi: 0xaa}, -+ {value: 0x8133, lo: 0xab, hi: 0xac}, -+ {value: 0x812e, lo: 0xad, hi: 0xad}, -+ // Block 0xa, offset 0x49 -+ {value: 0x0000, lo: 0x0c}, -+ {value: 0x8120, lo: 0x91, hi: 0x91}, -+ {value: 0x8133, lo: 0xb0, hi: 0xb0}, -+ {value: 0x812e, lo: 0xb1, hi: 0xb1}, -+ {value: 0x8133, lo: 0xb2, hi: 0xb3}, -+ {value: 0x812e, lo: 0xb4, hi: 0xb4}, -+ {value: 0x8133, lo: 0xb5, hi: 0xb6}, -+ {value: 0x812e, lo: 0xb7, hi: 0xb9}, -+ {value: 0x8133, lo: 0xba, hi: 0xba}, -+ {value: 0x812e, lo: 0xbb, hi: 0xbc}, -+ {value: 0x8133, lo: 0xbd, hi: 0xbd}, -+ {value: 0x812e, lo: 0xbe, hi: 0xbe}, -+ {value: 0x8133, lo: 0xbf, hi: 0xbf}, -+ // Block 0xb, offset 0x56 -+ {value: 0x0005, lo: 0x07}, -+ {value: 0x8133, lo: 0x80, hi: 0x80}, -+ {value: 0x8133, lo: 0x81, hi: 0x81}, -+ {value: 0x812e, lo: 0x82, hi: 0x83}, -+ {value: 0x812e, lo: 0x84, hi: 0x85}, -+ {value: 0x812e, lo: 0x86, hi: 0x87}, -+ {value: 0x812e, lo: 0x88, hi: 0x89}, -+ {value: 0x8133, lo: 0x8a, hi: 0x8a}, -+ // Block 0xc, offset 0x5e -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x8133, lo: 0xab, hi: 0xb1}, -+ {value: 0x812e, lo: 0xb2, hi: 0xb2}, -+ {value: 0x8133, lo: 0xb3, hi: 0xb3}, -+ {value: 0x812e, lo: 0xbd, hi: 0xbd}, -+ // Block 0xd, offset 0x63 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x8133, lo: 0x96, hi: 0x99}, -+ {value: 0x8133, lo: 0x9b, hi: 0xa3}, -+ {value: 0x8133, lo: 0xa5, hi: 0xa7}, -+ {value: 0x8133, lo: 0xa9, hi: 0xad}, -+ // Block 0xe, offset 0x68 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812e, lo: 0x99, hi: 0x9b}, -+ // Block 0xf, offset 0x6a -+ {value: 0x0000, lo: 0x07}, -+ {value: 0xa000, lo: 0xa8, hi: 0xa8}, -+ {value: 0x3eef, lo: 0xa9, hi: 0xa9}, -+ {value: 0xa000, lo: 0xb0, hi: 0xb0}, -+ {value: 0x3ef7, lo: 0xb1, hi: 0xb1}, -+ {value: 0xa000, lo: 0xb3, hi: 0xb3}, -+ {value: 0x3eff, lo: 0xb4, hi: 0xb4}, -+ {value: 0x9903, lo: 0xbc, hi: 0xbc}, -+ // Block 0x10, offset 0x72 -+ {value: 0x0008, lo: 0x06}, -+ {value: 0x8105, lo: 0x8d, hi: 0x8d}, -+ {value: 0x8133, lo: 0x91, hi: 0x91}, -+ {value: 0x812e, lo: 0x92, hi: 0x92}, -+ {value: 0x8133, lo: 0x93, hi: 0x93}, -+ {value: 0x8133, lo: 0x94, hi: 0x94}, -+ {value: 0x4533, lo: 0x98, hi: 0x9f}, -+ // Block 0x11, offset 0x79 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8103, lo: 0xbc, hi: 0xbc}, -+ {value: 0x9900, lo: 0xbe, hi: 0xbe}, -+ // Block 0x12, offset 0x7c -+ {value: 0x0008, lo: 0x07}, -+ {value: 0xa000, lo: 0x87, hi: 0x87}, -+ {value: 0x2cab, lo: 0x8b, hi: 0x8c}, -+ {value: 0x8105, lo: 0x8d, hi: 0x8d}, -+ {value: 0x9900, lo: 0x97, hi: 0x97}, -+ {value: 0x4573, lo: 0x9c, hi: 0x9d}, -+ {value: 0x4583, lo: 0x9f, hi: 0x9f}, -+ {value: 0x8133, lo: 0xbe, hi: 0xbe}, -+ // Block 0x13, offset 0x84 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x45ab, lo: 0xb3, hi: 0xb3}, -+ {value: 0x45b3, lo: 0xb6, hi: 0xb6}, -+ {value: 0x8103, lo: 0xbc, hi: 0xbc}, -+ // Block 0x14, offset 0x88 -+ {value: 0x0008, lo: 0x03}, -+ {value: 0x8105, lo: 0x8d, hi: 0x8d}, -+ {value: 0x458b, lo: 0x99, hi: 0x9b}, -+ {value: 0x45a3, lo: 0x9e, hi: 0x9e}, -+ // Block 0x15, offset 0x8c -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8103, lo: 0xbc, hi: 0xbc}, -+ // Block 0x16, offset 0x8e -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8105, lo: 0x8d, hi: 0x8d}, -+ // Block 0x17, offset 0x90 -+ {value: 0x0000, lo: 0x08}, -+ {value: 0xa000, lo: 0x87, hi: 0x87}, -+ {value: 0x2cc3, lo: 0x88, hi: 0x88}, -+ {value: 0x2cbb, lo: 0x8b, hi: 0x8b}, -+ {value: 0x2ccb, lo: 0x8c, hi: 0x8c}, -+ {value: 0x8105, lo: 0x8d, hi: 0x8d}, -+ {value: 0x9900, lo: 0x96, hi: 0x97}, -+ {value: 0x45bb, lo: 0x9c, hi: 0x9c}, -+ {value: 0x45c3, lo: 0x9d, hi: 0x9d}, -+ // Block 0x18, offset 0x99 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0xa000, lo: 0x92, hi: 0x92}, -+ {value: 0x2cd3, lo: 0x94, hi: 0x94}, -+ {value: 0x9900, lo: 0xbe, hi: 0xbe}, -+ // Block 0x19, offset 0x9d -+ {value: 0x0000, lo: 0x06}, -+ {value: 0xa000, lo: 0x86, hi: 0x87}, -+ {value: 0x2cdb, lo: 0x8a, hi: 0x8a}, -+ {value: 0x2ceb, lo: 0x8b, hi: 0x8b}, -+ {value: 0x2ce3, lo: 0x8c, hi: 0x8c}, -+ {value: 0x8105, lo: 0x8d, hi: 0x8d}, -+ {value: 0x9900, lo: 0x97, hi: 0x97}, -+ // Block 0x1a, offset 0xa4 -+ {value: 0x1801, lo: 0x04}, -+ {value: 0xa000, lo: 0x86, hi: 0x86}, -+ {value: 0x3f07, lo: 0x88, hi: 0x88}, -+ {value: 0x8105, lo: 0x8d, hi: 0x8d}, -+ {value: 0x8121, lo: 0x95, hi: 0x96}, -+ // Block 0x1b, offset 0xa9 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8103, lo: 0xbc, hi: 0xbc}, -+ {value: 0xa000, lo: 0xbf, hi: 0xbf}, -+ // Block 0x1c, offset 0xac -+ {value: 0x0000, lo: 0x09}, -+ {value: 0x2cf3, lo: 0x80, hi: 0x80}, -+ {value: 0x9900, lo: 0x82, hi: 0x82}, -+ {value: 0xa000, lo: 0x86, hi: 0x86}, -+ {value: 0x2cfb, lo: 0x87, hi: 0x87}, -+ {value: 0x2d03, lo: 0x88, hi: 0x88}, -+ {value: 0x2f67, lo: 0x8a, hi: 0x8a}, -+ {value: 0x2def, lo: 0x8b, hi: 0x8b}, -+ {value: 0x8105, lo: 0x8d, hi: 0x8d}, -+ {value: 0x9900, lo: 0x95, hi: 0x96}, -+ // Block 0x1d, offset 0xb6 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8105, lo: 0xbb, hi: 0xbc}, -+ {value: 0x9900, lo: 0xbe, hi: 0xbe}, -+ // Block 0x1e, offset 0xb9 -+ {value: 0x0000, lo: 0x06}, -+ {value: 0xa000, lo: 0x86, hi: 0x87}, -+ {value: 0x2d0b, lo: 0x8a, hi: 0x8a}, -+ {value: 0x2d1b, lo: 0x8b, hi: 0x8b}, -+ {value: 0x2d13, lo: 0x8c, hi: 0x8c}, -+ {value: 0x8105, lo: 0x8d, hi: 0x8d}, -+ {value: 0x9900, lo: 0x97, hi: 0x97}, -+ // Block 0x1f, offset 0xc0 -+ {value: 0x6bdd, lo: 0x07}, -+ {value: 0x9905, lo: 0x8a, hi: 0x8a}, -+ {value: 0x9900, lo: 0x8f, hi: 0x8f}, -+ {value: 0xa000, lo: 0x99, hi: 0x99}, -+ {value: 0x3f0f, lo: 0x9a, hi: 0x9a}, -+ {value: 0x2f6f, lo: 0x9c, hi: 0x9c}, -+ {value: 0x2dfa, lo: 0x9d, hi: 0x9d}, -+ {value: 0x2d23, lo: 0x9e, hi: 0x9f}, -+ // Block 0x20, offset 0xc8 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8123, lo: 0xb8, hi: 0xb9}, -+ {value: 0x8105, lo: 0xba, hi: 0xba}, -+ // Block 0x21, offset 0xcb -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8124, lo: 0x88, hi: 0x8b}, -+ // Block 0x22, offset 0xcd -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8125, lo: 0xb8, hi: 0xb9}, -+ {value: 0x8105, lo: 0xba, hi: 0xba}, -+ // Block 0x23, offset 0xd0 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8126, lo: 0x88, hi: 0x8b}, -+ // Block 0x24, offset 0xd2 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x812e, lo: 0x98, hi: 0x99}, -+ {value: 0x812e, lo: 0xb5, hi: 0xb5}, -+ {value: 0x812e, lo: 0xb7, hi: 0xb7}, -+ {value: 0x812c, lo: 0xb9, hi: 0xb9}, -+ // Block 0x25, offset 0xd7 -+ {value: 0x0000, lo: 0x10}, -+ {value: 0x264a, lo: 0x83, hi: 0x83}, -+ {value: 0x2651, lo: 0x8d, hi: 0x8d}, -+ {value: 0x2658, lo: 0x92, hi: 0x92}, -+ {value: 0x265f, lo: 0x97, hi: 0x97}, -+ {value: 0x2666, lo: 0x9c, hi: 0x9c}, -+ {value: 0x2643, lo: 0xa9, hi: 0xa9}, -+ {value: 0x8127, lo: 0xb1, hi: 0xb1}, -+ {value: 0x8128, lo: 0xb2, hi: 0xb2}, -+ {value: 0x4a9b, lo: 0xb3, hi: 0xb3}, -+ {value: 0x8129, lo: 0xb4, hi: 0xb4}, -+ {value: 0x4aa4, lo: 0xb5, hi: 0xb5}, -+ {value: 0x45cb, lo: 0xb6, hi: 0xb6}, -+ {value: 0x8200, lo: 0xb7, hi: 0xb7}, -+ {value: 0x45d3, lo: 0xb8, hi: 0xb8}, -+ {value: 0x8200, lo: 0xb9, hi: 0xb9}, -+ {value: 0x8128, lo: 0xba, hi: 0xbd}, -+ // Block 0x26, offset 0xe8 -+ {value: 0x0000, lo: 0x0b}, -+ {value: 0x8128, lo: 0x80, hi: 0x80}, -+ {value: 0x4aad, lo: 0x81, hi: 0x81}, -+ {value: 0x8133, lo: 0x82, hi: 0x83}, -+ {value: 0x8105, lo: 0x84, hi: 0x84}, -+ {value: 0x8133, lo: 0x86, hi: 0x87}, -+ {value: 0x2674, lo: 0x93, hi: 0x93}, -+ {value: 0x267b, lo: 0x9d, hi: 0x9d}, -+ {value: 0x2682, lo: 0xa2, hi: 0xa2}, -+ {value: 0x2689, lo: 0xa7, hi: 0xa7}, -+ {value: 0x2690, lo: 0xac, hi: 0xac}, -+ {value: 0x266d, lo: 0xb9, hi: 0xb9}, -+ // Block 0x27, offset 0xf4 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812e, lo: 0x86, hi: 0x86}, -+ // Block 0x28, offset 0xf6 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0xa000, lo: 0xa5, hi: 0xa5}, -+ {value: 0x2d2b, lo: 0xa6, hi: 0xa6}, -+ {value: 0x9900, lo: 0xae, hi: 0xae}, -+ {value: 0x8103, lo: 0xb7, hi: 0xb7}, -+ {value: 0x8105, lo: 0xb9, hi: 0xba}, -+ // Block 0x29, offset 0xfc -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812e, lo: 0x8d, hi: 0x8d}, -+ // Block 0x2a, offset 0xfe -+ {value: 0x0000, lo: 0x01}, -+ {value: 0xa000, lo: 0x80, hi: 0x92}, -+ // Block 0x2b, offset 0x100 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0xb900, lo: 0xa1, hi: 0xb5}, -+ // Block 0x2c, offset 0x102 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x9900, lo: 0xa8, hi: 0xbf}, -+ // Block 0x2d, offset 0x104 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x9900, lo: 0x80, hi: 0x82}, -+ // Block 0x2e, offset 0x106 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8133, lo: 0x9d, hi: 0x9f}, -+ // Block 0x2f, offset 0x108 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8105, lo: 0x94, hi: 0x94}, -+ {value: 0x8105, lo: 0xb4, hi: 0xb4}, -+ // Block 0x30, offset 0x10b -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8105, lo: 0x92, hi: 0x92}, -+ {value: 0x8133, lo: 0x9d, hi: 0x9d}, -+ // Block 0x31, offset 0x10e -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8132, lo: 0xa9, hi: 0xa9}, -+ // Block 0x32, offset 0x110 -+ {value: 0x0004, lo: 0x02}, -+ {value: 0x812f, lo: 0xb9, hi: 0xba}, -+ {value: 0x812e, lo: 0xbb, hi: 0xbb}, -+ // Block 0x33, offset 0x113 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8133, lo: 0x97, hi: 0x97}, -+ {value: 0x812e, lo: 0x98, hi: 0x98}, -+ // Block 0x34, offset 0x116 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x8105, lo: 0xa0, hi: 0xa0}, -+ {value: 0x8133, lo: 0xb5, hi: 0xbc}, -+ {value: 0x812e, lo: 0xbf, hi: 0xbf}, -+ // Block 0x35, offset 0x11a -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x8133, lo: 0xb0, hi: 0xb4}, -+ {value: 0x812e, lo: 0xb5, hi: 0xba}, -+ {value: 0x8133, lo: 0xbb, hi: 0xbc}, -+ {value: 0x812e, lo: 0xbd, hi: 0xbd}, -+ {value: 0x812e, lo: 0xbf, hi: 0xbf}, -+ // Block 0x36, offset 0x120 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812e, lo: 0x80, hi: 0x80}, -+ // Block 0x37, offset 0x122 -+ {value: 0x0000, lo: 0x08}, -+ {value: 0x2d73, lo: 0x80, hi: 0x80}, -+ {value: 0x2d7b, lo: 0x81, hi: 0x81}, -+ {value: 0xa000, lo: 0x82, hi: 0x82}, -+ {value: 0x2d83, lo: 0x83, hi: 0x83}, -+ {value: 0x8105, lo: 0x84, hi: 0x84}, -+ {value: 0x8133, lo: 0xab, hi: 0xab}, -+ {value: 0x812e, lo: 0xac, hi: 0xac}, -+ {value: 0x8133, lo: 0xad, hi: 0xb3}, -+ // Block 0x38, offset 0x12b -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8105, lo: 0xaa, hi: 0xab}, -+ // Block 0x39, offset 0x12d -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8103, lo: 0xa6, hi: 0xa6}, -+ {value: 0x8105, lo: 0xb2, hi: 0xb3}, -+ // Block 0x3a, offset 0x130 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8103, lo: 0xb7, hi: 0xb7}, -+ // Block 0x3b, offset 0x132 -+ {value: 0x0000, lo: 0x0a}, -+ {value: 0x8133, lo: 0x90, hi: 0x92}, -+ {value: 0x8101, lo: 0x94, hi: 0x94}, -+ {value: 0x812e, lo: 0x95, hi: 0x99}, -+ {value: 0x8133, lo: 0x9a, hi: 0x9b}, -+ {value: 0x812e, lo: 0x9c, hi: 0x9f}, -+ {value: 0x8133, lo: 0xa0, hi: 0xa0}, -+ {value: 0x8101, lo: 0xa2, hi: 0xa8}, -+ {value: 0x812e, lo: 0xad, hi: 0xad}, -+ {value: 0x8133, lo: 0xb4, hi: 0xb4}, -+ {value: 0x8133, lo: 0xb8, hi: 0xb9}, -+ // Block 0x3c, offset 0x13d -+ {value: 0x0004, lo: 0x03}, -+ {value: 0x0436, lo: 0x80, hi: 0x81}, -+ {value: 0x8100, lo: 0x97, hi: 0x97}, -+ {value: 0x8100, lo: 0xbe, hi: 0xbe}, -+ // Block 0x3d, offset 0x141 -+ {value: 0x0000, lo: 0x0d}, -+ {value: 0x8133, lo: 0x90, hi: 0x91}, -+ {value: 0x8101, lo: 0x92, hi: 0x93}, -+ {value: 0x8133, lo: 0x94, hi: 0x97}, -+ {value: 0x8101, lo: 0x98, hi: 0x9a}, -+ {value: 0x8133, lo: 0x9b, hi: 0x9c}, -+ {value: 0x8133, lo: 0xa1, hi: 0xa1}, -+ {value: 0x8101, lo: 0xa5, hi: 0xa6}, -+ {value: 0x8133, lo: 0xa7, hi: 0xa7}, -+ {value: 0x812e, lo: 0xa8, hi: 0xa8}, -+ {value: 0x8133, lo: 0xa9, hi: 0xa9}, -+ {value: 0x8101, lo: 0xaa, hi: 0xab}, -+ {value: 0x812e, lo: 0xac, hi: 0xaf}, -+ {value: 0x8133, lo: 0xb0, hi: 0xb0}, -+ // Block 0x3e, offset 0x14f -+ {value: 0x4292, lo: 0x02}, -+ {value: 0x01bb, lo: 0xa6, hi: 0xa6}, -+ {value: 0x0057, lo: 0xaa, hi: 0xab}, -+ // Block 0x3f, offset 0x152 -+ {value: 0x0007, lo: 0x05}, -+ {value: 0xa000, lo: 0x90, hi: 0x90}, -+ {value: 0xa000, lo: 0x92, hi: 0x92}, -+ {value: 0xa000, lo: 0x94, hi: 0x94}, -+ {value: 0x3bd0, lo: 0x9a, hi: 0x9b}, -+ {value: 0x3bde, lo: 0xae, hi: 0xae}, -+ // Block 0x40, offset 0x158 -+ {value: 0x000e, lo: 0x05}, -+ {value: 0x3be5, lo: 0x8d, hi: 0x8e}, -+ {value: 0x3bec, lo: 0x8f, hi: 0x8f}, -+ {value: 0xa000, lo: 0x90, hi: 0x90}, -+ {value: 0xa000, lo: 0x92, hi: 0x92}, -+ {value: 0xa000, lo: 0x94, hi: 0x94}, -+ // Block 0x41, offset 0x15e -+ {value: 0x63f1, lo: 0x0a}, -+ {value: 0xa000, lo: 0x83, hi: 0x83}, -+ {value: 0x3bfa, lo: 0x84, hi: 0x84}, -+ {value: 0xa000, lo: 0x88, hi: 0x88}, -+ {value: 0x3c01, lo: 0x89, hi: 0x89}, -+ {value: 0xa000, lo: 0x8b, hi: 0x8b}, -+ {value: 0x3c08, lo: 0x8c, hi: 0x8c}, -+ {value: 0xa000, lo: 0xa3, hi: 0xa3}, -+ {value: 0x3c0f, lo: 0xa4, hi: 0xa5}, -+ {value: 0x3c16, lo: 0xa6, hi: 0xa6}, -+ {value: 0xa000, lo: 0xbc, hi: 0xbc}, -+ // Block 0x42, offset 0x169 -+ {value: 0x0007, lo: 0x03}, -+ {value: 0x3c7f, lo: 0xa0, hi: 0xa1}, -+ {value: 0x3ca9, lo: 0xa2, hi: 0xa3}, -+ {value: 0x3cd3, lo: 0xaa, hi: 0xad}, -+ // Block 0x43, offset 0x16d -+ {value: 0x0004, lo: 0x01}, -+ {value: 0x048e, lo: 0xa9, hi: 0xaa}, -+ // Block 0x44, offset 0x16f -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x44f4, lo: 0x9c, hi: 0x9c}, -+ // Block 0x45, offset 0x171 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8133, lo: 0xaf, hi: 0xb1}, -+ // Block 0x46, offset 0x173 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8105, lo: 0xbf, hi: 0xbf}, -+ // Block 0x47, offset 0x175 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8133, lo: 0xa0, hi: 0xbf}, -+ // Block 0x48, offset 0x177 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x812d, lo: 0xaa, hi: 0xaa}, -+ {value: 0x8132, lo: 0xab, hi: 0xab}, -+ {value: 0x8134, lo: 0xac, hi: 0xac}, -+ {value: 0x812f, lo: 0xad, hi: 0xad}, -+ {value: 0x8130, lo: 0xae, hi: 0xaf}, -+ // Block 0x49, offset 0x17d -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x4ab6, lo: 0xb3, hi: 0xb3}, -+ {value: 0x4ab6, lo: 0xb5, hi: 0xb6}, -+ {value: 0x4ab6, lo: 0xba, hi: 0xbf}, -+ // Block 0x4a, offset 0x181 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x4ab6, lo: 0x8f, hi: 0xa3}, -+ // Block 0x4b, offset 0x183 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8100, lo: 0xae, hi: 0xbe}, -+ // Block 0x4c, offset 0x185 -+ {value: 0x0000, lo: 0x07}, -+ {value: 0x8100, lo: 0x84, hi: 0x84}, -+ {value: 0x8100, lo: 0x87, hi: 0x87}, -+ {value: 0x8100, lo: 0x90, hi: 0x90}, -+ {value: 0x8100, lo: 0x9e, hi: 0x9e}, -+ {value: 0x8100, lo: 0xa1, hi: 0xa1}, -+ {value: 0x8100, lo: 0xb2, hi: 0xb2}, -+ {value: 0x8100, lo: 0xbb, hi: 0xbb}, -+ // Block 0x4d, offset 0x18d -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x8100, lo: 0x80, hi: 0x80}, -+ {value: 0x8100, lo: 0x8b, hi: 0x8b}, -+ {value: 0x8100, lo: 0x8e, hi: 0x8e}, -+ // Block 0x4e, offset 0x191 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8133, lo: 0xaf, hi: 0xaf}, -+ {value: 0x8133, lo: 0xb4, hi: 0xbd}, -+ // Block 0x4f, offset 0x194 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8133, lo: 0x9e, hi: 0x9f}, -+ // Block 0x50, offset 0x196 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8133, lo: 0xb0, hi: 0xb1}, -+ // Block 0x51, offset 0x198 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8105, lo: 0x86, hi: 0x86}, -+ {value: 0x8105, lo: 0xac, hi: 0xac}, -+ // Block 0x52, offset 0x19b -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8105, lo: 0x84, hi: 0x84}, -+ {value: 0x8133, lo: 0xa0, hi: 0xb1}, -+ // Block 0x53, offset 0x19e -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812e, lo: 0xab, hi: 0xad}, -+ // Block 0x54, offset 0x1a0 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8105, lo: 0x93, hi: 0x93}, -+ // Block 0x55, offset 0x1a2 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8103, lo: 0xb3, hi: 0xb3}, -+ // Block 0x56, offset 0x1a4 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8105, lo: 0x80, hi: 0x80}, -+ // Block 0x57, offset 0x1a6 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x8133, lo: 0xb0, hi: 0xb0}, -+ {value: 0x8133, lo: 0xb2, hi: 0xb3}, -+ {value: 0x812e, lo: 0xb4, hi: 0xb4}, -+ {value: 0x8133, lo: 0xb7, hi: 0xb8}, -+ {value: 0x8133, lo: 0xbe, hi: 0xbf}, -+ // Block 0x58, offset 0x1ac -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8133, lo: 0x81, hi: 0x81}, -+ {value: 0x8105, lo: 0xb6, hi: 0xb6}, -+ // Block 0x59, offset 0x1af -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8105, lo: 0xad, hi: 0xad}, -+ // Block 0x5a, offset 0x1b1 -+ {value: 0x0000, lo: 0x06}, -+ {value: 0xe500, lo: 0x80, hi: 0x80}, -+ {value: 0xc600, lo: 0x81, hi: 0x9b}, -+ {value: 0xe500, lo: 0x9c, hi: 0x9c}, -+ {value: 0xc600, lo: 0x9d, hi: 0xb7}, -+ {value: 0xe500, lo: 0xb8, hi: 0xb8}, -+ {value: 0xc600, lo: 0xb9, hi: 0xbf}, -+ // Block 0x5b, offset 0x1b8 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0xc600, lo: 0x80, hi: 0x93}, -+ {value: 0xe500, lo: 0x94, hi: 0x94}, -+ {value: 0xc600, lo: 0x95, hi: 0xaf}, -+ {value: 0xe500, lo: 0xb0, hi: 0xb0}, -+ {value: 0xc600, lo: 0xb1, hi: 0xbf}, -+ // Block 0x5c, offset 0x1be -+ {value: 0x0000, lo: 0x05}, -+ {value: 0xc600, lo: 0x80, hi: 0x8b}, -+ {value: 0xe500, lo: 0x8c, hi: 0x8c}, -+ {value: 0xc600, lo: 0x8d, hi: 0xa7}, -+ {value: 0xe500, lo: 0xa8, hi: 0xa8}, -+ {value: 0xc600, lo: 0xa9, hi: 0xbf}, -+ // Block 0x5d, offset 0x1c4 -+ {value: 0x0000, lo: 0x07}, -+ {value: 0xc600, lo: 0x80, hi: 0x83}, -+ {value: 0xe500, lo: 0x84, hi: 0x84}, -+ {value: 0xc600, lo: 0x85, hi: 0x9f}, -+ {value: 0xe500, lo: 0xa0, hi: 0xa0}, -+ {value: 0xc600, lo: 0xa1, hi: 0xbb}, -+ {value: 0xe500, lo: 0xbc, hi: 0xbc}, -+ {value: 0xc600, lo: 0xbd, hi: 0xbf}, -+ // Block 0x5e, offset 0x1cc -+ {value: 0x0000, lo: 0x05}, -+ {value: 0xc600, lo: 0x80, hi: 0x97}, -+ {value: 0xe500, lo: 0x98, hi: 0x98}, -+ {value: 0xc600, lo: 0x99, hi: 0xb3}, -+ {value: 0xe500, lo: 0xb4, hi: 0xb4}, -+ {value: 0xc600, lo: 0xb5, hi: 0xbf}, -+ // Block 0x5f, offset 0x1d2 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0xc600, lo: 0x80, hi: 0x8f}, -+ {value: 0xe500, lo: 0x90, hi: 0x90}, -+ {value: 0xc600, lo: 0x91, hi: 0xab}, -+ {value: 0xe500, lo: 0xac, hi: 0xac}, -+ {value: 0xc600, lo: 0xad, hi: 0xbf}, -+ // Block 0x60, offset 0x1d8 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0xc600, lo: 0x80, hi: 0x87}, -+ {value: 0xe500, lo: 0x88, hi: 0x88}, -+ {value: 0xc600, lo: 0x89, hi: 0xa3}, -+ {value: 0xe500, lo: 0xa4, hi: 0xa4}, -+ {value: 0xc600, lo: 0xa5, hi: 0xbf}, -+ // Block 0x61, offset 0x1de -+ {value: 0x0000, lo: 0x03}, -+ {value: 0xc600, lo: 0x80, hi: 0x87}, -+ {value: 0xe500, lo: 0x88, hi: 0x88}, -+ {value: 0xc600, lo: 0x89, hi: 0xa3}, -+ // Block 0x62, offset 0x1e2 -+ {value: 0x0006, lo: 0x0d}, -+ {value: 0x43a7, lo: 0x9d, hi: 0x9d}, -+ {value: 0x8116, lo: 0x9e, hi: 0x9e}, -+ {value: 0x4419, lo: 0x9f, hi: 0x9f}, -+ {value: 0x4407, lo: 0xaa, hi: 0xab}, -+ {value: 0x450b, lo: 0xac, hi: 0xac}, -+ {value: 0x4513, lo: 0xad, hi: 0xad}, -+ {value: 0x435f, lo: 0xae, hi: 0xb1}, -+ {value: 0x437d, lo: 0xb2, hi: 0xb4}, -+ {value: 0x4395, lo: 0xb5, hi: 0xb6}, -+ {value: 0x43a1, lo: 0xb8, hi: 0xb8}, -+ {value: 0x43ad, lo: 0xb9, hi: 0xbb}, -+ {value: 0x43c5, lo: 0xbc, hi: 0xbc}, -+ {value: 0x43cb, lo: 0xbe, hi: 0xbe}, -+ // Block 0x63, offset 0x1f0 -+ {value: 0x0006, lo: 0x08}, -+ {value: 0x43d1, lo: 0x80, hi: 0x81}, -+ {value: 0x43dd, lo: 0x83, hi: 0x84}, -+ {value: 0x43ef, lo: 0x86, hi: 0x89}, -+ {value: 0x4413, lo: 0x8a, hi: 0x8a}, -+ {value: 0x438f, lo: 0x8b, hi: 0x8b}, -+ {value: 0x4377, lo: 0x8c, hi: 0x8c}, -+ {value: 0x43bf, lo: 0x8d, hi: 0x8d}, -+ {value: 0x43e9, lo: 0x8e, hi: 0x8e}, -+ // Block 0x64, offset 0x1f9 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8100, lo: 0xa4, hi: 0xa5}, -+ {value: 0x8100, lo: 0xb0, hi: 0xb1}, -+ // Block 0x65, offset 0x1fc -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8100, lo: 0x9b, hi: 0x9d}, -+ {value: 0x8200, lo: 0x9e, hi: 0xa3}, -+ // Block 0x66, offset 0x1ff -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8100, lo: 0x90, hi: 0x90}, -+ // Block 0x67, offset 0x201 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8100, lo: 0x99, hi: 0x99}, -+ {value: 0x8200, lo: 0xb2, hi: 0xb4}, -+ // Block 0x68, offset 0x204 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8100, lo: 0xbc, hi: 0xbd}, -+ // Block 0x69, offset 0x206 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x8133, lo: 0xa0, hi: 0xa6}, -+ {value: 0x812e, lo: 0xa7, hi: 0xad}, -+ {value: 0x8133, lo: 0xae, hi: 0xaf}, -+ // Block 0x6a, offset 0x20a -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x8100, lo: 0x89, hi: 0x8c}, -+ {value: 0x8100, lo: 0xb0, hi: 0xb2}, -+ {value: 0x8100, lo: 0xb4, hi: 0xb4}, -+ {value: 0x8100, lo: 0xb6, hi: 0xbf}, -+ // Block 0x6b, offset 0x20f -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8100, lo: 0x81, hi: 0x8c}, -+ // Block 0x6c, offset 0x211 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8100, lo: 0xb5, hi: 0xba}, -+ // Block 0x6d, offset 0x213 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x4ab6, lo: 0x9e, hi: 0x9f}, -+ {value: 0x4ab6, lo: 0xa3, hi: 0xa3}, -+ {value: 0x4ab6, lo: 0xa5, hi: 0xa6}, -+ {value: 0x4ab6, lo: 0xaa, hi: 0xaf}, -+ // Block 0x6e, offset 0x218 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x4ab6, lo: 0x82, hi: 0x87}, -+ {value: 0x4ab6, lo: 0x8a, hi: 0x8f}, -+ {value: 0x4ab6, lo: 0x92, hi: 0x97}, -+ {value: 0x4ab6, lo: 0x9a, hi: 0x9c}, -+ {value: 0x8100, lo: 0xa3, hi: 0xa3}, -+ // Block 0x6f, offset 0x21e -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812e, lo: 0xbd, hi: 0xbd}, -+ // Block 0x70, offset 0x220 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812e, lo: 0xa0, hi: 0xa0}, -+ // Block 0x71, offset 0x222 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8133, lo: 0xb6, hi: 0xba}, -+ // Block 0x72, offset 0x224 -+ {value: 0x002d, lo: 0x05}, -+ {value: 0x812e, lo: 0x8d, hi: 0x8d}, -+ {value: 0x8133, lo: 0x8f, hi: 0x8f}, -+ {value: 0x8133, lo: 0xb8, hi: 0xb8}, -+ {value: 0x8101, lo: 0xb9, hi: 0xba}, -+ {value: 0x8105, lo: 0xbf, hi: 0xbf}, -+ // Block 0x73, offset 0x22a -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8133, lo: 0xa5, hi: 0xa5}, -+ {value: 0x812e, lo: 0xa6, hi: 0xa6}, -+ // Block 0x74, offset 0x22d -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8133, lo: 0xa4, hi: 0xa7}, -+ // Block 0x75, offset 0x22f -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8133, lo: 0xab, hi: 0xac}, -+ // Block 0x76, offset 0x231 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x812e, lo: 0x86, hi: 0x87}, -+ {value: 0x8133, lo: 0x88, hi: 0x8a}, -+ {value: 0x812e, lo: 0x8b, hi: 0x8b}, -+ {value: 0x8133, lo: 0x8c, hi: 0x8c}, -+ {value: 0x812e, lo: 0x8d, hi: 0x90}, -+ // Block 0x77, offset 0x237 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8105, lo: 0x86, hi: 0x86}, -+ {value: 0x8105, lo: 0xbf, hi: 0xbf}, -+ // Block 0x78, offset 0x23a -+ {value: 0x17fe, lo: 0x07}, -+ {value: 0xa000, lo: 0x99, hi: 0x99}, -+ {value: 0x424f, lo: 0x9a, hi: 0x9a}, -+ {value: 0xa000, lo: 0x9b, hi: 0x9b}, -+ {value: 0x4259, lo: 0x9c, hi: 0x9c}, -+ {value: 0xa000, lo: 0xa5, hi: 0xa5}, -+ {value: 0x4263, lo: 0xab, hi: 0xab}, -+ {value: 0x8105, lo: 0xb9, hi: 0xba}, -+ // Block 0x79, offset 0x242 -+ {value: 0x0000, lo: 0x06}, -+ {value: 0x8133, lo: 0x80, hi: 0x82}, -+ {value: 0x9900, lo: 0xa7, hi: 0xa7}, -+ {value: 0x2d8b, lo: 0xae, hi: 0xae}, -+ {value: 0x2d95, lo: 0xaf, hi: 0xaf}, -+ {value: 0xa000, lo: 0xb1, hi: 0xb2}, -+ {value: 0x8105, lo: 0xb3, hi: 0xb4}, -+ // Block 0x7a, offset 0x249 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8105, lo: 0x80, hi: 0x80}, -+ {value: 0x8103, lo: 0x8a, hi: 0x8a}, -+ // Block 0x7b, offset 0x24c -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8105, lo: 0xb5, hi: 0xb5}, -+ {value: 0x8103, lo: 0xb6, hi: 0xb6}, -+ // Block 0x7c, offset 0x24f -+ {value: 0x0002, lo: 0x01}, -+ {value: 0x8103, lo: 0xa9, hi: 0xaa}, -+ // Block 0x7d, offset 0x251 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8103, lo: 0xbb, hi: 0xbc}, -+ {value: 0x9900, lo: 0xbe, hi: 0xbe}, -+ // Block 0x7e, offset 0x254 -+ {value: 0x0000, lo: 0x07}, -+ {value: 0xa000, lo: 0x87, hi: 0x87}, -+ {value: 0x2d9f, lo: 0x8b, hi: 0x8b}, -+ {value: 0x2da9, lo: 0x8c, hi: 0x8c}, -+ {value: 0x8105, lo: 0x8d, hi: 0x8d}, -+ {value: 0x9900, lo: 0x97, hi: 0x97}, -+ {value: 0x8133, lo: 0xa6, hi: 0xac}, -+ {value: 0x8133, lo: 0xb0, hi: 0xb4}, -+ // Block 0x7f, offset 0x25c -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x8105, lo: 0x82, hi: 0x82}, -+ {value: 0x8103, lo: 0x86, hi: 0x86}, -+ {value: 0x8133, lo: 0x9e, hi: 0x9e}, -+ // Block 0x80, offset 0x260 -+ {value: 0x6b4d, lo: 0x06}, -+ {value: 0x9900, lo: 0xb0, hi: 0xb0}, -+ {value: 0xa000, lo: 0xb9, hi: 0xb9}, -+ {value: 0x9900, lo: 0xba, hi: 0xba}, -+ {value: 0x2dbd, lo: 0xbb, hi: 0xbb}, -+ {value: 0x2db3, lo: 0xbc, hi: 0xbd}, -+ {value: 0x2dc7, lo: 0xbe, hi: 0xbe}, -+ // Block 0x81, offset 0x267 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8105, lo: 0x82, hi: 0x82}, -+ {value: 0x8103, lo: 0x83, hi: 0x83}, -+ // Block 0x82, offset 0x26a -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x9900, lo: 0xaf, hi: 0xaf}, -+ {value: 0xa000, lo: 0xb8, hi: 0xb9}, -+ {value: 0x2dd1, lo: 0xba, hi: 0xba}, -+ {value: 0x2ddb, lo: 0xbb, hi: 0xbb}, -+ {value: 0x8105, lo: 0xbf, hi: 0xbf}, -+ // Block 0x83, offset 0x270 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8103, lo: 0x80, hi: 0x80}, -+ // Block 0x84, offset 0x272 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8105, lo: 0xb6, hi: 0xb6}, -+ {value: 0x8103, lo: 0xb7, hi: 0xb7}, -+ // Block 0x85, offset 0x275 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8105, lo: 0xab, hi: 0xab}, -+ // Block 0x86, offset 0x277 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8105, lo: 0xb9, hi: 0xb9}, -+ {value: 0x8103, lo: 0xba, hi: 0xba}, -+ // Block 0x87, offset 0x27a -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x9900, lo: 0xb0, hi: 0xb0}, -+ {value: 0xa000, lo: 0xb5, hi: 0xb5}, -+ {value: 0x2de5, lo: 0xb8, hi: 0xb8}, -+ {value: 0x8105, lo: 0xbd, hi: 0xbe}, -+ // Block 0x88, offset 0x27f -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8103, lo: 0x83, hi: 0x83}, -+ // Block 0x89, offset 0x281 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8105, lo: 0xa0, hi: 0xa0}, -+ // Block 0x8a, offset 0x283 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8105, lo: 0xb4, hi: 0xb4}, -+ // Block 0x8b, offset 0x285 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8105, lo: 0x87, hi: 0x87}, -+ // Block 0x8c, offset 0x287 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8105, lo: 0x99, hi: 0x99}, -+ // Block 0x8d, offset 0x289 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8103, lo: 0x82, hi: 0x82}, -+ {value: 0x8105, lo: 0x84, hi: 0x85}, -+ // Block 0x8e, offset 0x28c -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8105, lo: 0x97, hi: 0x97}, -+ // Block 0x8f, offset 0x28e -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8101, lo: 0xb0, hi: 0xb4}, -+ // Block 0x90, offset 0x290 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8133, lo: 0xb0, hi: 0xb6}, -+ // Block 0x91, offset 0x292 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8102, lo: 0xb0, hi: 0xb1}, -+ // Block 0x92, offset 0x294 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8101, lo: 0x9e, hi: 0x9e}, -+ // Block 0x93, offset 0x296 -+ {value: 0x0000, lo: 0x0c}, -+ {value: 0x45e3, lo: 0x9e, hi: 0x9e}, -+ {value: 0x45ed, lo: 0x9f, hi: 0x9f}, -+ {value: 0x4621, lo: 0xa0, hi: 0xa0}, -+ {value: 0x462f, lo: 0xa1, hi: 0xa1}, -+ {value: 0x463d, lo: 0xa2, hi: 0xa2}, -+ {value: 0x464b, lo: 0xa3, hi: 0xa3}, -+ {value: 0x4659, lo: 0xa4, hi: 0xa4}, -+ {value: 0x812c, lo: 0xa5, hi: 0xa6}, -+ {value: 0x8101, lo: 0xa7, hi: 0xa9}, -+ {value: 0x8131, lo: 0xad, hi: 0xad}, -+ {value: 0x812c, lo: 0xae, hi: 0xb2}, -+ {value: 0x812e, lo: 0xbb, hi: 0xbf}, -+ // Block 0x94, offset 0x2a3 -+ {value: 0x0000, lo: 0x09}, -+ {value: 0x812e, lo: 0x80, hi: 0x82}, -+ {value: 0x8133, lo: 0x85, hi: 0x89}, -+ {value: 0x812e, lo: 0x8a, hi: 0x8b}, -+ {value: 0x8133, lo: 0xaa, hi: 0xad}, -+ {value: 0x45f7, lo: 0xbb, hi: 0xbb}, -+ {value: 0x4601, lo: 0xbc, hi: 0xbc}, -+ {value: 0x4667, lo: 0xbd, hi: 0xbd}, -+ {value: 0x4683, lo: 0xbe, hi: 0xbe}, -+ {value: 0x4675, lo: 0xbf, hi: 0xbf}, -+ // Block 0x95, offset 0x2ad -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x4691, lo: 0x80, hi: 0x80}, -+ // Block 0x96, offset 0x2af -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8133, lo: 0x82, hi: 0x84}, -+ // Block 0x97, offset 0x2b1 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x8133, lo: 0x80, hi: 0x86}, -+ {value: 0x8133, lo: 0x88, hi: 0x98}, -+ {value: 0x8133, lo: 0x9b, hi: 0xa1}, -+ {value: 0x8133, lo: 0xa3, hi: 0xa4}, -+ {value: 0x8133, lo: 0xa6, hi: 0xaa}, -+ // Block 0x98, offset 0x2b7 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8133, lo: 0xac, hi: 0xaf}, -+ // Block 0x99, offset 0x2b9 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812e, lo: 0x90, hi: 0x96}, -+ // Block 0x9a, offset 0x2bb -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8133, lo: 0x84, hi: 0x89}, -+ {value: 0x8103, lo: 0x8a, hi: 0x8a}, -+ // Block 0x9b, offset 0x2be -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8100, lo: 0x93, hi: 0x93}, -+} -+ -+// lookup returns the trie value for the first UTF-8 encoding in s and -+// the width in bytes of this encoding. The size will be 0 if s does not -+// hold enough bytes to complete the encoding. len(s) must be greater than 0. -+func (t *nfkcTrie) lookup(s []byte) (v uint16, sz int) { -+ c0 := s[0] -+ switch { -+ case c0 < 0x80: // is ASCII -+ return nfkcValues[c0], 1 -+ case c0 < 0xC2: -+ return 0, 1 // Illegal UTF-8: not a starter, not ASCII. -+ case c0 < 0xE0: // 2-byte UTF-8 -+ if len(s) < 2 { -+ return 0, 0 -+ } -+ i := nfkcIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c1), 2 -+ case c0 < 0xF0: // 3-byte UTF-8 -+ if len(s) < 3 { -+ return 0, 0 -+ } -+ i := nfkcIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = nfkcIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c2), 3 -+ case c0 < 0xF8: // 4-byte UTF-8 -+ if len(s) < 4 { -+ return 0, 0 -+ } -+ i := nfkcIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = nfkcIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ o = uint32(i)<<6 + uint32(c2) -+ i = nfkcIndex[o] -+ c3 := s[3] -+ if c3 < 0x80 || 0xC0 <= c3 { -+ return 0, 3 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c3), 4 -+ } -+ // Illegal rune -+ return 0, 1 -+} -+ -+// lookupUnsafe returns the trie value for the first UTF-8 encoding in s. -+// s must start with a full and valid UTF-8 encoded rune. -+func (t *nfkcTrie) lookupUnsafe(s []byte) uint16 { -+ c0 := s[0] -+ if c0 < 0x80 { // is ASCII -+ return nfkcValues[c0] -+ } -+ i := nfkcIndex[c0] -+ if c0 < 0xE0 { // 2-byte UTF-8 -+ return t.lookupValue(uint32(i), s[1]) -+ } -+ i = nfkcIndex[uint32(i)<<6+uint32(s[1])] -+ if c0 < 0xF0 { // 3-byte UTF-8 -+ return t.lookupValue(uint32(i), s[2]) -+ } -+ i = nfkcIndex[uint32(i)<<6+uint32(s[2])] -+ if c0 < 0xF8 { // 4-byte UTF-8 -+ return t.lookupValue(uint32(i), s[3]) -+ } -+ return 0 -+} -+ -+// lookupString returns the trie value for the first UTF-8 encoding in s and -+// the width in bytes of this encoding. The size will be 0 if s does not -+// hold enough bytes to complete the encoding. len(s) must be greater than 0. -+func (t *nfkcTrie) lookupString(s string) (v uint16, sz int) { -+ c0 := s[0] -+ switch { -+ case c0 < 0x80: // is ASCII -+ return nfkcValues[c0], 1 -+ case c0 < 0xC2: -+ return 0, 1 // Illegal UTF-8: not a starter, not ASCII. -+ case c0 < 0xE0: // 2-byte UTF-8 -+ if len(s) < 2 { -+ return 0, 0 -+ } -+ i := nfkcIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c1), 2 -+ case c0 < 0xF0: // 3-byte UTF-8 -+ if len(s) < 3 { -+ return 0, 0 -+ } -+ i := nfkcIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = nfkcIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c2), 3 -+ case c0 < 0xF8: // 4-byte UTF-8 -+ if len(s) < 4 { -+ return 0, 0 -+ } -+ i := nfkcIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = nfkcIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ o = uint32(i)<<6 + uint32(c2) -+ i = nfkcIndex[o] -+ c3 := s[3] -+ if c3 < 0x80 || 0xC0 <= c3 { -+ return 0, 3 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c3), 4 -+ } -+ // Illegal rune -+ return 0, 1 -+} -+ -+// lookupStringUnsafe returns the trie value for the first UTF-8 encoding in s. -+// s must start with a full and valid UTF-8 encoded rune. -+func (t *nfkcTrie) lookupStringUnsafe(s string) uint16 { -+ c0 := s[0] -+ if c0 < 0x80 { // is ASCII -+ return nfkcValues[c0] -+ } -+ i := nfkcIndex[c0] -+ if c0 < 0xE0 { // 2-byte UTF-8 -+ return t.lookupValue(uint32(i), s[1]) -+ } -+ i = nfkcIndex[uint32(i)<<6+uint32(s[1])] -+ if c0 < 0xF0 { // 3-byte UTF-8 -+ return t.lookupValue(uint32(i), s[2]) -+ } -+ i = nfkcIndex[uint32(i)<<6+uint32(s[2])] -+ if c0 < 0xF8 { // 4-byte UTF-8 -+ return t.lookupValue(uint32(i), s[3]) -+ } -+ return 0 -+} -+ -+// nfkcTrie. Total size: 18768 bytes (18.33 KiB). Checksum: c51186dd2412943d. -+type nfkcTrie struct{} -+ -+func newNfkcTrie(i int) *nfkcTrie { -+ return &nfkcTrie{} -+} -+ -+// lookupValue determines the type of block n and looks up the value for b. -+func (t *nfkcTrie) lookupValue(n uint32, b byte) uint16 { -+ switch { -+ case n < 92: -+ return uint16(nfkcValues[n<<6+uint32(b)]) -+ default: -+ n -= 92 -+ return uint16(nfkcSparse.lookup(n, b)) -+ } -+} -+ -+// nfkcValues: 94 blocks, 6016 entries, 12032 bytes -+// The third block is the zero block. -+var nfkcValues = [6016]uint16{ -+ // Block 0x0, offset 0x0 -+ 0x3c: 0xa000, 0x3d: 0xa000, 0x3e: 0xa000, -+ // Block 0x1, offset 0x40 -+ 0x41: 0xa000, 0x42: 0xa000, 0x43: 0xa000, 0x44: 0xa000, 0x45: 0xa000, -+ 0x46: 0xa000, 0x47: 0xa000, 0x48: 0xa000, 0x49: 0xa000, 0x4a: 0xa000, 0x4b: 0xa000, -+ 0x4c: 0xa000, 0x4d: 0xa000, 0x4e: 0xa000, 0x4f: 0xa000, 0x50: 0xa000, -+ 0x52: 0xa000, 0x53: 0xa000, 0x54: 0xa000, 0x55: 0xa000, 0x56: 0xa000, 0x57: 0xa000, -+ 0x58: 0xa000, 0x59: 0xa000, 0x5a: 0xa000, -+ 0x61: 0xa000, 0x62: 0xa000, 0x63: 0xa000, -+ 0x64: 0xa000, 0x65: 0xa000, 0x66: 0xa000, 0x67: 0xa000, 0x68: 0xa000, 0x69: 0xa000, -+ 0x6a: 0xa000, 0x6b: 0xa000, 0x6c: 0xa000, 0x6d: 0xa000, 0x6e: 0xa000, 0x6f: 0xa000, -+ 0x70: 0xa000, 0x72: 0xa000, 0x73: 0xa000, 0x74: 0xa000, 0x75: 0xa000, -+ 0x76: 0xa000, 0x77: 0xa000, 0x78: 0xa000, 0x79: 0xa000, 0x7a: 0xa000, -+ // Block 0x2, offset 0x80 -+ // Block 0x3, offset 0xc0 -+ 0xc0: 0x2f86, 0xc1: 0x2f8b, 0xc2: 0x469f, 0xc3: 0x2f90, 0xc4: 0x46ae, 0xc5: 0x46b3, -+ 0xc6: 0xa000, 0xc7: 0x46bd, 0xc8: 0x2ff9, 0xc9: 0x2ffe, 0xca: 0x46c2, 0xcb: 0x3012, -+ 0xcc: 0x3085, 0xcd: 0x308a, 0xce: 0x308f, 0xcf: 0x46d6, 0xd1: 0x311b, -+ 0xd2: 0x313e, 0xd3: 0x3143, 0xd4: 0x46e0, 0xd5: 0x46e5, 0xd6: 0x46f4, -+ 0xd8: 0xa000, 0xd9: 0x31ca, 0xda: 0x31cf, 0xdb: 0x31d4, 0xdc: 0x4726, 0xdd: 0x324c, -+ 0xe0: 0x3292, 0xe1: 0x3297, 0xe2: 0x4730, 0xe3: 0x329c, -+ 0xe4: 0x473f, 0xe5: 0x4744, 0xe6: 0xa000, 0xe7: 0x474e, 0xe8: 0x3305, 0xe9: 0x330a, -+ 0xea: 0x4753, 0xeb: 0x331e, 0xec: 0x3396, 0xed: 0x339b, 0xee: 0x33a0, 0xef: 0x4767, -+ 0xf1: 0x342c, 0xf2: 0x344f, 0xf3: 0x3454, 0xf4: 0x4771, 0xf5: 0x4776, -+ 0xf6: 0x4785, 0xf8: 0xa000, 0xf9: 0x34e0, 0xfa: 0x34e5, 0xfb: 0x34ea, -+ 0xfc: 0x47b7, 0xfd: 0x3567, 0xff: 0x3580, -+ // Block 0x4, offset 0x100 -+ 0x100: 0x2f95, 0x101: 0x32a1, 0x102: 0x46a4, 0x103: 0x4735, 0x104: 0x2fb3, 0x105: 0x32bf, -+ 0x106: 0x2fc7, 0x107: 0x32d3, 0x108: 0x2fcc, 0x109: 0x32d8, 0x10a: 0x2fd1, 0x10b: 0x32dd, -+ 0x10c: 0x2fd6, 0x10d: 0x32e2, 0x10e: 0x2fe0, 0x10f: 0x32ec, -+ 0x112: 0x46c7, 0x113: 0x4758, 0x114: 0x3008, 0x115: 0x3314, 0x116: 0x300d, 0x117: 0x3319, -+ 0x118: 0x302b, 0x119: 0x3337, 0x11a: 0x301c, 0x11b: 0x3328, 0x11c: 0x3044, 0x11d: 0x3350, -+ 0x11e: 0x304e, 0x11f: 0x335a, 0x120: 0x3053, 0x121: 0x335f, 0x122: 0x305d, 0x123: 0x3369, -+ 0x124: 0x3062, 0x125: 0x336e, 0x128: 0x3094, 0x129: 0x33a5, -+ 0x12a: 0x3099, 0x12b: 0x33aa, 0x12c: 0x309e, 0x12d: 0x33af, 0x12e: 0x30c1, 0x12f: 0x33cd, -+ 0x130: 0x30a3, 0x132: 0x1960, 0x133: 0x19ed, 0x134: 0x30cb, 0x135: 0x33d7, -+ 0x136: 0x30df, 0x137: 0x33f0, 0x139: 0x30e9, 0x13a: 0x33fa, 0x13b: 0x30f3, -+ 0x13c: 0x3404, 0x13d: 0x30ee, 0x13e: 0x33ff, 0x13f: 0x1bb2, -+ // Block 0x5, offset 0x140 -+ 0x140: 0x1c3a, 0x143: 0x3116, 0x144: 0x3427, 0x145: 0x312f, -+ 0x146: 0x3440, 0x147: 0x3125, 0x148: 0x3436, 0x149: 0x1c62, -+ 0x14c: 0x46ea, 0x14d: 0x477b, 0x14e: 0x3148, 0x14f: 0x3459, 0x150: 0x3152, 0x151: 0x3463, -+ 0x154: 0x3170, 0x155: 0x3481, 0x156: 0x3189, 0x157: 0x349a, -+ 0x158: 0x317a, 0x159: 0x348b, 0x15a: 0x470d, 0x15b: 0x479e, 0x15c: 0x3193, 0x15d: 0x34a4, -+ 0x15e: 0x31a2, 0x15f: 0x34b3, 0x160: 0x4712, 0x161: 0x47a3, 0x162: 0x31bb, 0x163: 0x34d1, -+ 0x164: 0x31ac, 0x165: 0x34c2, 0x168: 0x471c, 0x169: 0x47ad, -+ 0x16a: 0x4721, 0x16b: 0x47b2, 0x16c: 0x31d9, 0x16d: 0x34ef, 0x16e: 0x31e3, 0x16f: 0x34f9, -+ 0x170: 0x31e8, 0x171: 0x34fe, 0x172: 0x3206, 0x173: 0x351c, 0x174: 0x3229, 0x175: 0x353f, -+ 0x176: 0x3251, 0x177: 0x356c, 0x178: 0x3265, 0x179: 0x3274, 0x17a: 0x3594, 0x17b: 0x327e, -+ 0x17c: 0x359e, 0x17d: 0x3283, 0x17e: 0x35a3, 0x17f: 0x00a7, -+ // Block 0x6, offset 0x180 -+ 0x184: 0x2e05, 0x185: 0x2e0b, -+ 0x186: 0x2e11, 0x187: 0x1975, 0x188: 0x1978, 0x189: 0x1a0e, 0x18a: 0x198d, 0x18b: 0x1990, -+ 0x18c: 0x1a44, 0x18d: 0x2f9f, 0x18e: 0x32ab, 0x18f: 0x30ad, 0x190: 0x33b9, 0x191: 0x3157, -+ 0x192: 0x3468, 0x193: 0x31ed, 0x194: 0x3503, 0x195: 0x39e6, 0x196: 0x3b75, 0x197: 0x39df, -+ 0x198: 0x3b6e, 0x199: 0x39ed, 0x19a: 0x3b7c, 0x19b: 0x39d8, 0x19c: 0x3b67, -+ 0x19e: 0x38c7, 0x19f: 0x3a56, 0x1a0: 0x38c0, 0x1a1: 0x3a4f, 0x1a2: 0x35ca, 0x1a3: 0x35dc, -+ 0x1a6: 0x3058, 0x1a7: 0x3364, 0x1a8: 0x30d5, 0x1a9: 0x33e6, -+ 0x1aa: 0x4703, 0x1ab: 0x4794, 0x1ac: 0x39a7, 0x1ad: 0x3b36, 0x1ae: 0x35ee, 0x1af: 0x35f4, -+ 0x1b0: 0x33dc, 0x1b1: 0x1945, 0x1b2: 0x1948, 0x1b3: 0x19d5, 0x1b4: 0x303f, 0x1b5: 0x334b, -+ 0x1b8: 0x3111, 0x1b9: 0x3422, 0x1ba: 0x38ce, 0x1bb: 0x3a5d, -+ 0x1bc: 0x35c4, 0x1bd: 0x35d6, 0x1be: 0x35d0, 0x1bf: 0x35e2, -+ // Block 0x7, offset 0x1c0 -+ 0x1c0: 0x2fa4, 0x1c1: 0x32b0, 0x1c2: 0x2fa9, 0x1c3: 0x32b5, 0x1c4: 0x3021, 0x1c5: 0x332d, -+ 0x1c6: 0x3026, 0x1c7: 0x3332, 0x1c8: 0x30b2, 0x1c9: 0x33be, 0x1ca: 0x30b7, 0x1cb: 0x33c3, -+ 0x1cc: 0x315c, 0x1cd: 0x346d, 0x1ce: 0x3161, 0x1cf: 0x3472, 0x1d0: 0x317f, 0x1d1: 0x3490, -+ 0x1d2: 0x3184, 0x1d3: 0x3495, 0x1d4: 0x31f2, 0x1d5: 0x3508, 0x1d6: 0x31f7, 0x1d7: 0x350d, -+ 0x1d8: 0x319d, 0x1d9: 0x34ae, 0x1da: 0x31b6, 0x1db: 0x34cc, -+ 0x1de: 0x3071, 0x1df: 0x337d, -+ 0x1e6: 0x46a9, 0x1e7: 0x473a, 0x1e8: 0x46d1, 0x1e9: 0x4762, -+ 0x1ea: 0x3976, 0x1eb: 0x3b05, 0x1ec: 0x3953, 0x1ed: 0x3ae2, 0x1ee: 0x46ef, 0x1ef: 0x4780, -+ 0x1f0: 0x396f, 0x1f1: 0x3afe, 0x1f2: 0x325b, 0x1f3: 0x3576, -+ // Block 0x8, offset 0x200 -+ 0x200: 0x9933, 0x201: 0x9933, 0x202: 0x9933, 0x203: 0x9933, 0x204: 0x9933, 0x205: 0x8133, -+ 0x206: 0x9933, 0x207: 0x9933, 0x208: 0x9933, 0x209: 0x9933, 0x20a: 0x9933, 0x20b: 0x9933, -+ 0x20c: 0x9933, 0x20d: 0x8133, 0x20e: 0x8133, 0x20f: 0x9933, 0x210: 0x8133, 0x211: 0x9933, -+ 0x212: 0x8133, 0x213: 0x9933, 0x214: 0x9933, 0x215: 0x8134, 0x216: 0x812e, 0x217: 0x812e, -+ 0x218: 0x812e, 0x219: 0x812e, 0x21a: 0x8134, 0x21b: 0x992c, 0x21c: 0x812e, 0x21d: 0x812e, -+ 0x21e: 0x812e, 0x21f: 0x812e, 0x220: 0x812e, 0x221: 0x812a, 0x222: 0x812a, 0x223: 0x992e, -+ 0x224: 0x992e, 0x225: 0x992e, 0x226: 0x992e, 0x227: 0x992a, 0x228: 0x992a, 0x229: 0x812e, -+ 0x22a: 0x812e, 0x22b: 0x812e, 0x22c: 0x812e, 0x22d: 0x992e, 0x22e: 0x992e, 0x22f: 0x812e, -+ 0x230: 0x992e, 0x231: 0x992e, 0x232: 0x812e, 0x233: 0x812e, 0x234: 0x8101, 0x235: 0x8101, -+ 0x236: 0x8101, 0x237: 0x8101, 0x238: 0x9901, 0x239: 0x812e, 0x23a: 0x812e, 0x23b: 0x812e, -+ 0x23c: 0x812e, 0x23d: 0x8133, 0x23e: 0x8133, 0x23f: 0x8133, -+ // Block 0x9, offset 0x240 -+ 0x240: 0x49c5, 0x241: 0x49ca, 0x242: 0x9933, 0x243: 0x49cf, 0x244: 0x4a88, 0x245: 0x9937, -+ 0x246: 0x8133, 0x247: 0x812e, 0x248: 0x812e, 0x249: 0x812e, 0x24a: 0x8133, 0x24b: 0x8133, -+ 0x24c: 0x8133, 0x24d: 0x812e, 0x24e: 0x812e, 0x250: 0x8133, 0x251: 0x8133, -+ 0x252: 0x8133, 0x253: 0x812e, 0x254: 0x812e, 0x255: 0x812e, 0x256: 0x812e, 0x257: 0x8133, -+ 0x258: 0x8134, 0x259: 0x812e, 0x25a: 0x812e, 0x25b: 0x8133, 0x25c: 0x8135, 0x25d: 0x8136, -+ 0x25e: 0x8136, 0x25f: 0x8135, 0x260: 0x8136, 0x261: 0x8136, 0x262: 0x8135, 0x263: 0x8133, -+ 0x264: 0x8133, 0x265: 0x8133, 0x266: 0x8133, 0x267: 0x8133, 0x268: 0x8133, 0x269: 0x8133, -+ 0x26a: 0x8133, 0x26b: 0x8133, 0x26c: 0x8133, 0x26d: 0x8133, 0x26e: 0x8133, 0x26f: 0x8133, -+ 0x274: 0x0173, -+ 0x27a: 0x42bc, -+ 0x27e: 0x0037, -+ // Block 0xa, offset 0x280 -+ 0x284: 0x4271, 0x285: 0x4492, -+ 0x286: 0x3600, 0x287: 0x00ce, 0x288: 0x361e, 0x289: 0x362a, 0x28a: 0x363c, -+ 0x28c: 0x365a, 0x28e: 0x366c, 0x28f: 0x368a, 0x290: 0x3e1f, 0x291: 0xa000, -+ 0x295: 0xa000, 0x297: 0xa000, -+ 0x299: 0xa000, -+ 0x29f: 0xa000, 0x2a1: 0xa000, -+ 0x2a5: 0xa000, 0x2a9: 0xa000, -+ 0x2aa: 0x364e, 0x2ab: 0x367e, 0x2ac: 0x4815, 0x2ad: 0x36ae, 0x2ae: 0x483f, 0x2af: 0x36c0, -+ 0x2b0: 0x3e87, 0x2b1: 0xa000, 0x2b5: 0xa000, -+ 0x2b7: 0xa000, 0x2b9: 0xa000, -+ 0x2bf: 0xa000, -+ // Block 0xb, offset 0x2c0 -+ 0x2c1: 0xa000, 0x2c5: 0xa000, -+ 0x2c9: 0xa000, 0x2ca: 0x4857, 0x2cb: 0x4875, -+ 0x2cc: 0x36de, 0x2cd: 0x36f6, 0x2ce: 0x488d, 0x2d0: 0x01c1, 0x2d1: 0x01d3, -+ 0x2d2: 0x01af, 0x2d3: 0x4323, 0x2d4: 0x4329, 0x2d5: 0x01fd, 0x2d6: 0x01eb, -+ 0x2f0: 0x01d9, 0x2f1: 0x01ee, 0x2f2: 0x01f1, 0x2f4: 0x018b, 0x2f5: 0x01ca, -+ 0x2f9: 0x01a9, -+ // Block 0xc, offset 0x300 -+ 0x300: 0x3738, 0x301: 0x3744, 0x303: 0x3732, -+ 0x306: 0xa000, 0x307: 0x3720, -+ 0x30c: 0x3774, 0x30d: 0x375c, 0x30e: 0x3786, 0x310: 0xa000, -+ 0x313: 0xa000, 0x315: 0xa000, 0x316: 0xa000, 0x317: 0xa000, -+ 0x318: 0xa000, 0x319: 0x3768, 0x31a: 0xa000, -+ 0x31e: 0xa000, 0x323: 0xa000, -+ 0x327: 0xa000, -+ 0x32b: 0xa000, 0x32d: 0xa000, -+ 0x330: 0xa000, 0x333: 0xa000, 0x335: 0xa000, -+ 0x336: 0xa000, 0x337: 0xa000, 0x338: 0xa000, 0x339: 0x37ec, 0x33a: 0xa000, -+ 0x33e: 0xa000, -+ // Block 0xd, offset 0x340 -+ 0x341: 0x374a, 0x342: 0x37ce, -+ 0x350: 0x3726, 0x351: 0x37aa, -+ 0x352: 0x372c, 0x353: 0x37b0, 0x356: 0x373e, 0x357: 0x37c2, -+ 0x358: 0xa000, 0x359: 0xa000, 0x35a: 0x3840, 0x35b: 0x3846, 0x35c: 0x3750, 0x35d: 0x37d4, -+ 0x35e: 0x3756, 0x35f: 0x37da, 0x362: 0x3762, 0x363: 0x37e6, -+ 0x364: 0x376e, 0x365: 0x37f2, 0x366: 0x377a, 0x367: 0x37fe, 0x368: 0xa000, 0x369: 0xa000, -+ 0x36a: 0x384c, 0x36b: 0x3852, 0x36c: 0x37a4, 0x36d: 0x3828, 0x36e: 0x3780, 0x36f: 0x3804, -+ 0x370: 0x378c, 0x371: 0x3810, 0x372: 0x3792, 0x373: 0x3816, 0x374: 0x3798, 0x375: 0x381c, -+ 0x378: 0x379e, 0x379: 0x3822, -+ // Block 0xe, offset 0x380 -+ 0x387: 0x1d67, -+ 0x391: 0x812e, -+ 0x392: 0x8133, 0x393: 0x8133, 0x394: 0x8133, 0x395: 0x8133, 0x396: 0x812e, 0x397: 0x8133, -+ 0x398: 0x8133, 0x399: 0x8133, 0x39a: 0x812f, 0x39b: 0x812e, 0x39c: 0x8133, 0x39d: 0x8133, -+ 0x39e: 0x8133, 0x39f: 0x8133, 0x3a0: 0x8133, 0x3a1: 0x8133, 0x3a2: 0x812e, 0x3a3: 0x812e, -+ 0x3a4: 0x812e, 0x3a5: 0x812e, 0x3a6: 0x812e, 0x3a7: 0x812e, 0x3a8: 0x8133, 0x3a9: 0x8133, -+ 0x3aa: 0x812e, 0x3ab: 0x8133, 0x3ac: 0x8133, 0x3ad: 0x812f, 0x3ae: 0x8132, 0x3af: 0x8133, -+ 0x3b0: 0x8106, 0x3b1: 0x8107, 0x3b2: 0x8108, 0x3b3: 0x8109, 0x3b4: 0x810a, 0x3b5: 0x810b, -+ 0x3b6: 0x810c, 0x3b7: 0x810d, 0x3b8: 0x810e, 0x3b9: 0x810f, 0x3ba: 0x810f, 0x3bb: 0x8110, -+ 0x3bc: 0x8111, 0x3bd: 0x8112, 0x3bf: 0x8113, -+ // Block 0xf, offset 0x3c0 -+ 0x3c8: 0xa000, 0x3ca: 0xa000, 0x3cb: 0x8117, -+ 0x3cc: 0x8118, 0x3cd: 0x8119, 0x3ce: 0x811a, 0x3cf: 0x811b, 0x3d0: 0x811c, 0x3d1: 0x811d, -+ 0x3d2: 0x811e, 0x3d3: 0x9933, 0x3d4: 0x9933, 0x3d5: 0x992e, 0x3d6: 0x812e, 0x3d7: 0x8133, -+ 0x3d8: 0x8133, 0x3d9: 0x8133, 0x3da: 0x8133, 0x3db: 0x8133, 0x3dc: 0x812e, 0x3dd: 0x8133, -+ 0x3de: 0x8133, 0x3df: 0x812e, -+ 0x3f0: 0x811f, 0x3f5: 0x1d8a, -+ 0x3f6: 0x2019, 0x3f7: 0x2055, 0x3f8: 0x2050, -+ // Block 0x10, offset 0x400 -+ 0x413: 0x812e, 0x414: 0x8133, 0x415: 0x8133, 0x416: 0x8133, 0x417: 0x8133, -+ 0x418: 0x8133, 0x419: 0x8133, 0x41a: 0x8133, 0x41b: 0x8133, 0x41c: 0x8133, 0x41d: 0x8133, -+ 0x41e: 0x8133, 0x41f: 0x8133, 0x420: 0x8133, 0x421: 0x8133, 0x423: 0x812e, -+ 0x424: 0x8133, 0x425: 0x8133, 0x426: 0x812e, 0x427: 0x8133, 0x428: 0x8133, 0x429: 0x812e, -+ 0x42a: 0x8133, 0x42b: 0x8133, 0x42c: 0x8133, 0x42d: 0x812e, 0x42e: 0x812e, 0x42f: 0x812e, -+ 0x430: 0x8117, 0x431: 0x8118, 0x432: 0x8119, 0x433: 0x8133, 0x434: 0x8133, 0x435: 0x8133, -+ 0x436: 0x812e, 0x437: 0x8133, 0x438: 0x8133, 0x439: 0x812e, 0x43a: 0x812e, 0x43b: 0x8133, -+ 0x43c: 0x8133, 0x43d: 0x8133, 0x43e: 0x8133, 0x43f: 0x8133, -+ // Block 0x11, offset 0x440 -+ 0x445: 0xa000, -+ 0x446: 0x2d33, 0x447: 0xa000, 0x448: 0x2d3b, 0x449: 0xa000, 0x44a: 0x2d43, 0x44b: 0xa000, -+ 0x44c: 0x2d4b, 0x44d: 0xa000, 0x44e: 0x2d53, 0x451: 0xa000, -+ 0x452: 0x2d5b, -+ 0x474: 0x8103, 0x475: 0x9900, -+ 0x47a: 0xa000, 0x47b: 0x2d63, -+ 0x47c: 0xa000, 0x47d: 0x2d6b, 0x47e: 0xa000, 0x47f: 0xa000, -+ // Block 0x12, offset 0x480 -+ 0x480: 0x0069, 0x481: 0x006b, 0x482: 0x006f, 0x483: 0x0083, 0x484: 0x00f5, 0x485: 0x00f8, -+ 0x486: 0x0416, 0x487: 0x0085, 0x488: 0x0089, 0x489: 0x008b, 0x48a: 0x0104, 0x48b: 0x0107, -+ 0x48c: 0x010a, 0x48d: 0x008f, 0x48f: 0x0097, 0x490: 0x009b, 0x491: 0x00e0, -+ 0x492: 0x009f, 0x493: 0x00fe, 0x494: 0x041a, 0x495: 0x041e, 0x496: 0x00a1, 0x497: 0x00a9, -+ 0x498: 0x00ab, 0x499: 0x0426, 0x49a: 0x012b, 0x49b: 0x00ad, 0x49c: 0x042a, 0x49d: 0x01c1, -+ 0x49e: 0x01c4, 0x49f: 0x01c7, 0x4a0: 0x01fd, 0x4a1: 0x0200, 0x4a2: 0x0093, 0x4a3: 0x00a5, -+ 0x4a4: 0x00ab, 0x4a5: 0x00ad, 0x4a6: 0x01c1, 0x4a7: 0x01c4, 0x4a8: 0x01ee, 0x4a9: 0x01fd, -+ 0x4aa: 0x0200, -+ 0x4b8: 0x020f, -+ // Block 0x13, offset 0x4c0 -+ 0x4db: 0x00fb, 0x4dc: 0x0087, 0x4dd: 0x0101, -+ 0x4de: 0x00d4, 0x4df: 0x010a, 0x4e0: 0x008d, 0x4e1: 0x010d, 0x4e2: 0x0110, 0x4e3: 0x0116, -+ 0x4e4: 0x011c, 0x4e5: 0x011f, 0x4e6: 0x0122, 0x4e7: 0x042e, 0x4e8: 0x016d, 0x4e9: 0x0128, -+ 0x4ea: 0x0432, 0x4eb: 0x0170, 0x4ec: 0x0131, 0x4ed: 0x012e, 0x4ee: 0x0134, 0x4ef: 0x0137, -+ 0x4f0: 0x013a, 0x4f1: 0x013d, 0x4f2: 0x0140, 0x4f3: 0x014c, 0x4f4: 0x014f, 0x4f5: 0x00ec, -+ 0x4f6: 0x0152, 0x4f7: 0x0155, 0x4f8: 0x0422, 0x4f9: 0x0158, 0x4fa: 0x015b, 0x4fb: 0x00b5, -+ 0x4fc: 0x0161, 0x4fd: 0x0164, 0x4fe: 0x0167, 0x4ff: 0x01d3, -+ // Block 0x14, offset 0x500 -+ 0x500: 0x8133, 0x501: 0x8133, 0x502: 0x812e, 0x503: 0x8133, 0x504: 0x8133, 0x505: 0x8133, -+ 0x506: 0x8133, 0x507: 0x8133, 0x508: 0x8133, 0x509: 0x8133, 0x50a: 0x812e, 0x50b: 0x8133, -+ 0x50c: 0x8133, 0x50d: 0x8136, 0x50e: 0x812b, 0x50f: 0x812e, 0x510: 0x812a, 0x511: 0x8133, -+ 0x512: 0x8133, 0x513: 0x8133, 0x514: 0x8133, 0x515: 0x8133, 0x516: 0x8133, 0x517: 0x8133, -+ 0x518: 0x8133, 0x519: 0x8133, 0x51a: 0x8133, 0x51b: 0x8133, 0x51c: 0x8133, 0x51d: 0x8133, -+ 0x51e: 0x8133, 0x51f: 0x8133, 0x520: 0x8133, 0x521: 0x8133, 0x522: 0x8133, 0x523: 0x8133, -+ 0x524: 0x8133, 0x525: 0x8133, 0x526: 0x8133, 0x527: 0x8133, 0x528: 0x8133, 0x529: 0x8133, -+ 0x52a: 0x8133, 0x52b: 0x8133, 0x52c: 0x8133, 0x52d: 0x8133, 0x52e: 0x8133, 0x52f: 0x8133, -+ 0x530: 0x8133, 0x531: 0x8133, 0x532: 0x8133, 0x533: 0x8133, 0x534: 0x8133, 0x535: 0x8133, -+ 0x536: 0x8134, 0x537: 0x8132, 0x538: 0x8132, 0x539: 0x812e, 0x53b: 0x8133, -+ 0x53c: 0x8135, 0x53d: 0x812e, 0x53e: 0x8133, 0x53f: 0x812e, -+ // Block 0x15, offset 0x540 -+ 0x540: 0x2fae, 0x541: 0x32ba, 0x542: 0x2fb8, 0x543: 0x32c4, 0x544: 0x2fbd, 0x545: 0x32c9, -+ 0x546: 0x2fc2, 0x547: 0x32ce, 0x548: 0x38e3, 0x549: 0x3a72, 0x54a: 0x2fdb, 0x54b: 0x32e7, -+ 0x54c: 0x2fe5, 0x54d: 0x32f1, 0x54e: 0x2ff4, 0x54f: 0x3300, 0x550: 0x2fea, 0x551: 0x32f6, -+ 0x552: 0x2fef, 0x553: 0x32fb, 0x554: 0x3906, 0x555: 0x3a95, 0x556: 0x390d, 0x557: 0x3a9c, -+ 0x558: 0x3030, 0x559: 0x333c, 0x55a: 0x3035, 0x55b: 0x3341, 0x55c: 0x391b, 0x55d: 0x3aaa, -+ 0x55e: 0x303a, 0x55f: 0x3346, 0x560: 0x3049, 0x561: 0x3355, 0x562: 0x3067, 0x563: 0x3373, -+ 0x564: 0x3076, 0x565: 0x3382, 0x566: 0x306c, 0x567: 0x3378, 0x568: 0x307b, 0x569: 0x3387, -+ 0x56a: 0x3080, 0x56b: 0x338c, 0x56c: 0x30c6, 0x56d: 0x33d2, 0x56e: 0x3922, 0x56f: 0x3ab1, -+ 0x570: 0x30d0, 0x571: 0x33e1, 0x572: 0x30da, 0x573: 0x33eb, 0x574: 0x30e4, 0x575: 0x33f5, -+ 0x576: 0x46db, 0x577: 0x476c, 0x578: 0x3929, 0x579: 0x3ab8, 0x57a: 0x30fd, 0x57b: 0x340e, -+ 0x57c: 0x30f8, 0x57d: 0x3409, 0x57e: 0x3102, 0x57f: 0x3413, -+ // Block 0x16, offset 0x580 -+ 0x580: 0x3107, 0x581: 0x3418, 0x582: 0x310c, 0x583: 0x341d, 0x584: 0x3120, 0x585: 0x3431, -+ 0x586: 0x312a, 0x587: 0x343b, 0x588: 0x3139, 0x589: 0x344a, 0x58a: 0x3134, 0x58b: 0x3445, -+ 0x58c: 0x394c, 0x58d: 0x3adb, 0x58e: 0x395a, 0x58f: 0x3ae9, 0x590: 0x3961, 0x591: 0x3af0, -+ 0x592: 0x3968, 0x593: 0x3af7, 0x594: 0x3166, 0x595: 0x3477, 0x596: 0x316b, 0x597: 0x347c, -+ 0x598: 0x3175, 0x599: 0x3486, 0x59a: 0x4708, 0x59b: 0x4799, 0x59c: 0x39ae, 0x59d: 0x3b3d, -+ 0x59e: 0x318e, 0x59f: 0x349f, 0x5a0: 0x3198, 0x5a1: 0x34a9, 0x5a2: 0x4717, 0x5a3: 0x47a8, -+ 0x5a4: 0x39b5, 0x5a5: 0x3b44, 0x5a6: 0x39bc, 0x5a7: 0x3b4b, 0x5a8: 0x39c3, 0x5a9: 0x3b52, -+ 0x5aa: 0x31a7, 0x5ab: 0x34b8, 0x5ac: 0x31b1, 0x5ad: 0x34c7, 0x5ae: 0x31c5, 0x5af: 0x34db, -+ 0x5b0: 0x31c0, 0x5b1: 0x34d6, 0x5b2: 0x3201, 0x5b3: 0x3517, 0x5b4: 0x3210, 0x5b5: 0x3526, -+ 0x5b6: 0x320b, 0x5b7: 0x3521, 0x5b8: 0x39ca, 0x5b9: 0x3b59, 0x5ba: 0x39d1, 0x5bb: 0x3b60, -+ 0x5bc: 0x3215, 0x5bd: 0x352b, 0x5be: 0x321a, 0x5bf: 0x3530, -+ // Block 0x17, offset 0x5c0 -+ 0x5c0: 0x321f, 0x5c1: 0x3535, 0x5c2: 0x3224, 0x5c3: 0x353a, 0x5c4: 0x3233, 0x5c5: 0x3549, -+ 0x5c6: 0x322e, 0x5c7: 0x3544, 0x5c8: 0x3238, 0x5c9: 0x3553, 0x5ca: 0x323d, 0x5cb: 0x3558, -+ 0x5cc: 0x3242, 0x5cd: 0x355d, 0x5ce: 0x3260, 0x5cf: 0x357b, 0x5d0: 0x3279, 0x5d1: 0x3599, -+ 0x5d2: 0x3288, 0x5d3: 0x35a8, 0x5d4: 0x328d, 0x5d5: 0x35ad, 0x5d6: 0x3391, 0x5d7: 0x34bd, -+ 0x5d8: 0x354e, 0x5d9: 0x358a, 0x5da: 0x1be6, 0x5db: 0x42ee, -+ 0x5e0: 0x46b8, 0x5e1: 0x4749, 0x5e2: 0x2f9a, 0x5e3: 0x32a6, -+ 0x5e4: 0x388f, 0x5e5: 0x3a1e, 0x5e6: 0x3888, 0x5e7: 0x3a17, 0x5e8: 0x389d, 0x5e9: 0x3a2c, -+ 0x5ea: 0x3896, 0x5eb: 0x3a25, 0x5ec: 0x38d5, 0x5ed: 0x3a64, 0x5ee: 0x38ab, 0x5ef: 0x3a3a, -+ 0x5f0: 0x38a4, 0x5f1: 0x3a33, 0x5f2: 0x38b9, 0x5f3: 0x3a48, 0x5f4: 0x38b2, 0x5f5: 0x3a41, -+ 0x5f6: 0x38dc, 0x5f7: 0x3a6b, 0x5f8: 0x46cc, 0x5f9: 0x475d, 0x5fa: 0x3017, 0x5fb: 0x3323, -+ 0x5fc: 0x3003, 0x5fd: 0x330f, 0x5fe: 0x38f1, 0x5ff: 0x3a80, -+ // Block 0x18, offset 0x600 -+ 0x600: 0x38ea, 0x601: 0x3a79, 0x602: 0x38ff, 0x603: 0x3a8e, 0x604: 0x38f8, 0x605: 0x3a87, -+ 0x606: 0x3914, 0x607: 0x3aa3, 0x608: 0x30a8, 0x609: 0x33b4, 0x60a: 0x30bc, 0x60b: 0x33c8, -+ 0x60c: 0x46fe, 0x60d: 0x478f, 0x60e: 0x314d, 0x60f: 0x345e, 0x610: 0x3937, 0x611: 0x3ac6, -+ 0x612: 0x3930, 0x613: 0x3abf, 0x614: 0x3945, 0x615: 0x3ad4, 0x616: 0x393e, 0x617: 0x3acd, -+ 0x618: 0x39a0, 0x619: 0x3b2f, 0x61a: 0x3984, 0x61b: 0x3b13, 0x61c: 0x397d, 0x61d: 0x3b0c, -+ 0x61e: 0x3992, 0x61f: 0x3b21, 0x620: 0x398b, 0x621: 0x3b1a, 0x622: 0x3999, 0x623: 0x3b28, -+ 0x624: 0x31fc, 0x625: 0x3512, 0x626: 0x31de, 0x627: 0x34f4, 0x628: 0x39fb, 0x629: 0x3b8a, -+ 0x62a: 0x39f4, 0x62b: 0x3b83, 0x62c: 0x3a09, 0x62d: 0x3b98, 0x62e: 0x3a02, 0x62f: 0x3b91, -+ 0x630: 0x3a10, 0x631: 0x3b9f, 0x632: 0x3247, 0x633: 0x3562, 0x634: 0x326f, 0x635: 0x358f, -+ 0x636: 0x326a, 0x637: 0x3585, 0x638: 0x3256, 0x639: 0x3571, -+ // Block 0x19, offset 0x640 -+ 0x640: 0x481b, 0x641: 0x4821, 0x642: 0x4935, 0x643: 0x494d, 0x644: 0x493d, 0x645: 0x4955, -+ 0x646: 0x4945, 0x647: 0x495d, 0x648: 0x47c1, 0x649: 0x47c7, 0x64a: 0x48a5, 0x64b: 0x48bd, -+ 0x64c: 0x48ad, 0x64d: 0x48c5, 0x64e: 0x48b5, 0x64f: 0x48cd, 0x650: 0x482d, 0x651: 0x4833, -+ 0x652: 0x3dcf, 0x653: 0x3ddf, 0x654: 0x3dd7, 0x655: 0x3de7, -+ 0x658: 0x47cd, 0x659: 0x47d3, 0x65a: 0x3cff, 0x65b: 0x3d0f, 0x65c: 0x3d07, 0x65d: 0x3d17, -+ 0x660: 0x4845, 0x661: 0x484b, 0x662: 0x4965, 0x663: 0x497d, -+ 0x664: 0x496d, 0x665: 0x4985, 0x666: 0x4975, 0x667: 0x498d, 0x668: 0x47d9, 0x669: 0x47df, -+ 0x66a: 0x48d5, 0x66b: 0x48ed, 0x66c: 0x48dd, 0x66d: 0x48f5, 0x66e: 0x48e5, 0x66f: 0x48fd, -+ 0x670: 0x485d, 0x671: 0x4863, 0x672: 0x3e2f, 0x673: 0x3e47, 0x674: 0x3e37, 0x675: 0x3e4f, -+ 0x676: 0x3e3f, 0x677: 0x3e57, 0x678: 0x47e5, 0x679: 0x47eb, 0x67a: 0x3d2f, 0x67b: 0x3d47, -+ 0x67c: 0x3d37, 0x67d: 0x3d4f, 0x67e: 0x3d3f, 0x67f: 0x3d57, -+ // Block 0x1a, offset 0x680 -+ 0x680: 0x4869, 0x681: 0x486f, 0x682: 0x3e5f, 0x683: 0x3e6f, 0x684: 0x3e67, 0x685: 0x3e77, -+ 0x688: 0x47f1, 0x689: 0x47f7, 0x68a: 0x3d5f, 0x68b: 0x3d6f, -+ 0x68c: 0x3d67, 0x68d: 0x3d77, 0x690: 0x487b, 0x691: 0x4881, -+ 0x692: 0x3e97, 0x693: 0x3eaf, 0x694: 0x3e9f, 0x695: 0x3eb7, 0x696: 0x3ea7, 0x697: 0x3ebf, -+ 0x699: 0x47fd, 0x69b: 0x3d7f, 0x69d: 0x3d87, -+ 0x69f: 0x3d8f, 0x6a0: 0x4893, 0x6a1: 0x4899, 0x6a2: 0x4995, 0x6a3: 0x49ad, -+ 0x6a4: 0x499d, 0x6a5: 0x49b5, 0x6a6: 0x49a5, 0x6a7: 0x49bd, 0x6a8: 0x4803, 0x6a9: 0x4809, -+ 0x6aa: 0x4905, 0x6ab: 0x491d, 0x6ac: 0x490d, 0x6ad: 0x4925, 0x6ae: 0x4915, 0x6af: 0x492d, -+ 0x6b0: 0x480f, 0x6b1: 0x4335, 0x6b2: 0x36a8, 0x6b3: 0x433b, 0x6b4: 0x4839, 0x6b5: 0x4341, -+ 0x6b6: 0x36ba, 0x6b7: 0x4347, 0x6b8: 0x36d8, 0x6b9: 0x434d, 0x6ba: 0x36f0, 0x6bb: 0x4353, -+ 0x6bc: 0x4887, 0x6bd: 0x4359, -+ // Block 0x1b, offset 0x6c0 -+ 0x6c0: 0x3db7, 0x6c1: 0x3dbf, 0x6c2: 0x419b, 0x6c3: 0x41b9, 0x6c4: 0x41a5, 0x6c5: 0x41c3, -+ 0x6c6: 0x41af, 0x6c7: 0x41cd, 0x6c8: 0x3cef, 0x6c9: 0x3cf7, 0x6ca: 0x40e7, 0x6cb: 0x4105, -+ 0x6cc: 0x40f1, 0x6cd: 0x410f, 0x6ce: 0x40fb, 0x6cf: 0x4119, 0x6d0: 0x3dff, 0x6d1: 0x3e07, -+ 0x6d2: 0x41d7, 0x6d3: 0x41f5, 0x6d4: 0x41e1, 0x6d5: 0x41ff, 0x6d6: 0x41eb, 0x6d7: 0x4209, -+ 0x6d8: 0x3d1f, 0x6d9: 0x3d27, 0x6da: 0x4123, 0x6db: 0x4141, 0x6dc: 0x412d, 0x6dd: 0x414b, -+ 0x6de: 0x4137, 0x6df: 0x4155, 0x6e0: 0x3ed7, 0x6e1: 0x3edf, 0x6e2: 0x4213, 0x6e3: 0x4231, -+ 0x6e4: 0x421d, 0x6e5: 0x423b, 0x6e6: 0x4227, 0x6e7: 0x4245, 0x6e8: 0x3d97, 0x6e9: 0x3d9f, -+ 0x6ea: 0x415f, 0x6eb: 0x417d, 0x6ec: 0x4169, 0x6ed: 0x4187, 0x6ee: 0x4173, 0x6ef: 0x4191, -+ 0x6f0: 0x369c, 0x6f1: 0x3696, 0x6f2: 0x3da7, 0x6f3: 0x36a2, 0x6f4: 0x3daf, -+ 0x6f6: 0x4827, 0x6f7: 0x3dc7, 0x6f8: 0x360c, 0x6f9: 0x3606, 0x6fa: 0x35fa, 0x6fb: 0x4305, -+ 0x6fc: 0x3612, 0x6fd: 0x429e, 0x6fe: 0x01d6, 0x6ff: 0x429e, -+ // Block 0x1c, offset 0x700 -+ 0x700: 0x42b7, 0x701: 0x4499, 0x702: 0x3def, 0x703: 0x36b4, 0x704: 0x3df7, -+ 0x706: 0x4851, 0x707: 0x3e0f, 0x708: 0x3618, 0x709: 0x430b, 0x70a: 0x3624, 0x70b: 0x4311, -+ 0x70c: 0x3630, 0x70d: 0x44a0, 0x70e: 0x44a7, 0x70f: 0x44ae, 0x710: 0x36cc, 0x711: 0x36c6, -+ 0x712: 0x3e17, 0x713: 0x44fb, 0x716: 0x36d2, 0x717: 0x3e27, -+ 0x718: 0x3648, 0x719: 0x3642, 0x71a: 0x3636, 0x71b: 0x4317, 0x71d: 0x44b5, -+ 0x71e: 0x44bc, 0x71f: 0x44c3, 0x720: 0x3702, 0x721: 0x36fc, 0x722: 0x3e7f, 0x723: 0x4503, -+ 0x724: 0x36e4, 0x725: 0x36ea, 0x726: 0x3708, 0x727: 0x3e8f, 0x728: 0x3678, 0x729: 0x3672, -+ 0x72a: 0x3666, 0x72b: 0x4323, 0x72c: 0x3660, 0x72d: 0x448b, 0x72e: 0x4492, 0x72f: 0x0081, -+ 0x732: 0x3ec7, 0x733: 0x370e, 0x734: 0x3ecf, -+ 0x736: 0x489f, 0x737: 0x3ee7, 0x738: 0x3654, 0x739: 0x431d, 0x73a: 0x3684, 0x73b: 0x432f, -+ 0x73c: 0x3690, 0x73d: 0x4271, 0x73e: 0x42a3, -+ // Block 0x1d, offset 0x740 -+ 0x740: 0x1bde, 0x741: 0x1be2, 0x742: 0x0047, 0x743: 0x1c5a, 0x745: 0x1bee, -+ 0x746: 0x1bf2, 0x747: 0x00e9, 0x749: 0x1c5e, 0x74a: 0x008f, 0x74b: 0x0051, -+ 0x74c: 0x0051, 0x74d: 0x0051, 0x74e: 0x0091, 0x74f: 0x00da, 0x750: 0x0053, 0x751: 0x0053, -+ 0x752: 0x0059, 0x753: 0x0099, 0x755: 0x005d, 0x756: 0x1993, -+ 0x759: 0x0061, 0x75a: 0x0063, 0x75b: 0x0065, 0x75c: 0x0065, 0x75d: 0x0065, -+ 0x760: 0x19a5, 0x761: 0x1bce, 0x762: 0x19ae, -+ 0x764: 0x0075, 0x766: 0x01bb, 0x768: 0x0075, -+ 0x76a: 0x0057, 0x76b: 0x42e9, 0x76c: 0x0045, 0x76d: 0x0047, 0x76f: 0x008b, -+ 0x770: 0x004b, 0x771: 0x004d, 0x773: 0x005b, 0x774: 0x009f, 0x775: 0x0218, -+ 0x776: 0x021b, 0x777: 0x021e, 0x778: 0x0221, 0x779: 0x0093, 0x77b: 0x1b9e, -+ 0x77c: 0x01eb, 0x77d: 0x01c4, 0x77e: 0x017c, 0x77f: 0x01a3, -+ // Block 0x1e, offset 0x780 -+ 0x780: 0x0466, 0x785: 0x0049, -+ 0x786: 0x0089, 0x787: 0x008b, 0x788: 0x0093, 0x789: 0x0095, -+ 0x790: 0x2234, 0x791: 0x2240, -+ 0x792: 0x22f4, 0x793: 0x221c, 0x794: 0x22a0, 0x795: 0x2228, 0x796: 0x22a6, 0x797: 0x22be, -+ 0x798: 0x22ca, 0x799: 0x222e, 0x79a: 0x22d0, 0x79b: 0x223a, 0x79c: 0x22c4, 0x79d: 0x22d6, -+ 0x79e: 0x22dc, 0x79f: 0x1cc2, 0x7a0: 0x0053, 0x7a1: 0x195d, 0x7a2: 0x1baa, 0x7a3: 0x1966, -+ 0x7a4: 0x006d, 0x7a5: 0x19b1, 0x7a6: 0x1bd6, 0x7a7: 0x1d4e, 0x7a8: 0x1969, 0x7a9: 0x0071, -+ 0x7aa: 0x19bd, 0x7ab: 0x1bda, 0x7ac: 0x0059, 0x7ad: 0x0047, 0x7ae: 0x0049, 0x7af: 0x005b, -+ 0x7b0: 0x0093, 0x7b1: 0x19ea, 0x7b2: 0x1c1e, 0x7b3: 0x19f3, 0x7b4: 0x00ad, 0x7b5: 0x1a68, -+ 0x7b6: 0x1c52, 0x7b7: 0x1d62, 0x7b8: 0x19f6, 0x7b9: 0x00b1, 0x7ba: 0x1a6b, 0x7bb: 0x1c56, -+ 0x7bc: 0x0099, 0x7bd: 0x0087, 0x7be: 0x0089, 0x7bf: 0x009b, -+ // Block 0x1f, offset 0x7c0 -+ 0x7c1: 0x3c1d, 0x7c3: 0xa000, 0x7c4: 0x3c24, 0x7c5: 0xa000, -+ 0x7c7: 0x3c2b, 0x7c8: 0xa000, 0x7c9: 0x3c32, -+ 0x7cd: 0xa000, -+ 0x7e0: 0x2f7c, 0x7e1: 0xa000, 0x7e2: 0x3c40, -+ 0x7e4: 0xa000, 0x7e5: 0xa000, -+ 0x7ed: 0x3c39, 0x7ee: 0x2f77, 0x7ef: 0x2f81, -+ 0x7f0: 0x3c47, 0x7f1: 0x3c4e, 0x7f2: 0xa000, 0x7f3: 0xa000, 0x7f4: 0x3c55, 0x7f5: 0x3c5c, -+ 0x7f6: 0xa000, 0x7f7: 0xa000, 0x7f8: 0x3c63, 0x7f9: 0x3c6a, 0x7fa: 0xa000, 0x7fb: 0xa000, -+ 0x7fc: 0xa000, 0x7fd: 0xa000, -+ // Block 0x20, offset 0x800 -+ 0x800: 0x3c71, 0x801: 0x3c78, 0x802: 0xa000, 0x803: 0xa000, 0x804: 0x3c8d, 0x805: 0x3c94, -+ 0x806: 0xa000, 0x807: 0xa000, 0x808: 0x3c9b, 0x809: 0x3ca2, -+ 0x811: 0xa000, -+ 0x812: 0xa000, -+ 0x822: 0xa000, -+ 0x828: 0xa000, 0x829: 0xa000, -+ 0x82b: 0xa000, 0x82c: 0x3cb7, 0x82d: 0x3cbe, 0x82e: 0x3cc5, 0x82f: 0x3ccc, -+ 0x832: 0xa000, 0x833: 0xa000, 0x834: 0xa000, 0x835: 0xa000, -+ // Block 0x21, offset 0x840 -+ 0x860: 0x0023, 0x861: 0x0025, 0x862: 0x0027, 0x863: 0x0029, -+ 0x864: 0x002b, 0x865: 0x002d, 0x866: 0x002f, 0x867: 0x0031, 0x868: 0x0033, 0x869: 0x1885, -+ 0x86a: 0x1888, 0x86b: 0x188b, 0x86c: 0x188e, 0x86d: 0x1891, 0x86e: 0x1894, 0x86f: 0x1897, -+ 0x870: 0x189a, 0x871: 0x189d, 0x872: 0x18a0, 0x873: 0x18a9, 0x874: 0x1a6e, 0x875: 0x1a72, -+ 0x876: 0x1a76, 0x877: 0x1a7a, 0x878: 0x1a7e, 0x879: 0x1a82, 0x87a: 0x1a86, 0x87b: 0x1a8a, -+ 0x87c: 0x1a8e, 0x87d: 0x1c86, 0x87e: 0x1c8b, 0x87f: 0x1c90, -+ // Block 0x22, offset 0x880 -+ 0x880: 0x1c95, 0x881: 0x1c9a, 0x882: 0x1c9f, 0x883: 0x1ca4, 0x884: 0x1ca9, 0x885: 0x1cae, -+ 0x886: 0x1cb3, 0x887: 0x1cb8, 0x888: 0x1882, 0x889: 0x18a6, 0x88a: 0x18ca, 0x88b: 0x18ee, -+ 0x88c: 0x1912, 0x88d: 0x191b, 0x88e: 0x1921, 0x88f: 0x1927, 0x890: 0x192d, 0x891: 0x1b66, -+ 0x892: 0x1b6a, 0x893: 0x1b6e, 0x894: 0x1b72, 0x895: 0x1b76, 0x896: 0x1b7a, 0x897: 0x1b7e, -+ 0x898: 0x1b82, 0x899: 0x1b86, 0x89a: 0x1b8a, 0x89b: 0x1b8e, 0x89c: 0x1afa, 0x89d: 0x1afe, -+ 0x89e: 0x1b02, 0x89f: 0x1b06, 0x8a0: 0x1b0a, 0x8a1: 0x1b0e, 0x8a2: 0x1b12, 0x8a3: 0x1b16, -+ 0x8a4: 0x1b1a, 0x8a5: 0x1b1e, 0x8a6: 0x1b22, 0x8a7: 0x1b26, 0x8a8: 0x1b2a, 0x8a9: 0x1b2e, -+ 0x8aa: 0x1b32, 0x8ab: 0x1b36, 0x8ac: 0x1b3a, 0x8ad: 0x1b3e, 0x8ae: 0x1b42, 0x8af: 0x1b46, -+ 0x8b0: 0x1b4a, 0x8b1: 0x1b4e, 0x8b2: 0x1b52, 0x8b3: 0x1b56, 0x8b4: 0x1b5a, 0x8b5: 0x1b5e, -+ 0x8b6: 0x0043, 0x8b7: 0x0045, 0x8b8: 0x0047, 0x8b9: 0x0049, 0x8ba: 0x004b, 0x8bb: 0x004d, -+ 0x8bc: 0x004f, 0x8bd: 0x0051, 0x8be: 0x0053, 0x8bf: 0x0055, -+ // Block 0x23, offset 0x8c0 -+ 0x8c0: 0x06c2, 0x8c1: 0x06e6, 0x8c2: 0x06f2, 0x8c3: 0x0702, 0x8c4: 0x070a, 0x8c5: 0x0716, -+ 0x8c6: 0x071e, 0x8c7: 0x0726, 0x8c8: 0x0732, 0x8c9: 0x0786, 0x8ca: 0x079e, 0x8cb: 0x07ae, -+ 0x8cc: 0x07be, 0x8cd: 0x07ce, 0x8ce: 0x07de, 0x8cf: 0x07fe, 0x8d0: 0x0802, 0x8d1: 0x0806, -+ 0x8d2: 0x083a, 0x8d3: 0x0862, 0x8d4: 0x0872, 0x8d5: 0x087a, 0x8d6: 0x087e, 0x8d7: 0x088a, -+ 0x8d8: 0x08a6, 0x8d9: 0x08aa, 0x8da: 0x08c2, 0x8db: 0x08c6, 0x8dc: 0x08ce, 0x8dd: 0x08de, -+ 0x8de: 0x097a, 0x8df: 0x098e, 0x8e0: 0x09ce, 0x8e1: 0x09e2, 0x8e2: 0x09ea, 0x8e3: 0x09ee, -+ 0x8e4: 0x09fe, 0x8e5: 0x0a1a, 0x8e6: 0x0a46, 0x8e7: 0x0a52, 0x8e8: 0x0a72, 0x8e9: 0x0a7e, -+ 0x8ea: 0x0a82, 0x8eb: 0x0a86, 0x8ec: 0x0a9e, 0x8ed: 0x0aa2, 0x8ee: 0x0ace, 0x8ef: 0x0ada, -+ 0x8f0: 0x0ae2, 0x8f1: 0x0aea, 0x8f2: 0x0afa, 0x8f3: 0x0b02, 0x8f4: 0x0b0a, 0x8f5: 0x0b36, -+ 0x8f6: 0x0b3a, 0x8f7: 0x0b42, 0x8f8: 0x0b46, 0x8f9: 0x0b4e, 0x8fa: 0x0b56, 0x8fb: 0x0b66, -+ 0x8fc: 0x0b82, 0x8fd: 0x0bfa, 0x8fe: 0x0c0e, 0x8ff: 0x0c12, -+ // Block 0x24, offset 0x900 -+ 0x900: 0x0c92, 0x901: 0x0c96, 0x902: 0x0caa, 0x903: 0x0cae, 0x904: 0x0cb6, 0x905: 0x0cbe, -+ 0x906: 0x0cc6, 0x907: 0x0cd2, 0x908: 0x0cfa, 0x909: 0x0d0a, 0x90a: 0x0d1e, 0x90b: 0x0d8e, -+ 0x90c: 0x0d9a, 0x90d: 0x0daa, 0x90e: 0x0db6, 0x90f: 0x0dc2, 0x910: 0x0dca, 0x911: 0x0dce, -+ 0x912: 0x0dd2, 0x913: 0x0dd6, 0x914: 0x0dda, 0x915: 0x0e92, 0x916: 0x0eda, 0x917: 0x0ee6, -+ 0x918: 0x0eea, 0x919: 0x0eee, 0x91a: 0x0ef2, 0x91b: 0x0efa, 0x91c: 0x0efe, 0x91d: 0x0f12, -+ 0x91e: 0x0f2e, 0x91f: 0x0f36, 0x920: 0x0f76, 0x921: 0x0f7a, 0x922: 0x0f82, 0x923: 0x0f86, -+ 0x924: 0x0f8e, 0x925: 0x0f92, 0x926: 0x0fb6, 0x927: 0x0fba, 0x928: 0x0fd6, 0x929: 0x0fda, -+ 0x92a: 0x0fde, 0x92b: 0x0fe2, 0x92c: 0x0ff6, 0x92d: 0x101a, 0x92e: 0x101e, 0x92f: 0x1022, -+ 0x930: 0x1046, 0x931: 0x1086, 0x932: 0x108a, 0x933: 0x10aa, 0x934: 0x10ba, 0x935: 0x10c2, -+ 0x936: 0x10e2, 0x937: 0x1106, 0x938: 0x114a, 0x939: 0x1152, 0x93a: 0x1166, 0x93b: 0x1172, -+ 0x93c: 0x117a, 0x93d: 0x1182, 0x93e: 0x1186, 0x93f: 0x118a, -+ // Block 0x25, offset 0x940 -+ 0x940: 0x11a2, 0x941: 0x11a6, 0x942: 0x11c2, 0x943: 0x11ca, 0x944: 0x11d2, 0x945: 0x11d6, -+ 0x946: 0x11e2, 0x947: 0x11ea, 0x948: 0x11ee, 0x949: 0x11f2, 0x94a: 0x11fa, 0x94b: 0x11fe, -+ 0x94c: 0x129e, 0x94d: 0x12b2, 0x94e: 0x12e6, 0x94f: 0x12ea, 0x950: 0x12f2, 0x951: 0x131e, -+ 0x952: 0x1326, 0x953: 0x132e, 0x954: 0x1336, 0x955: 0x1372, 0x956: 0x1376, 0x957: 0x137e, -+ 0x958: 0x1382, 0x959: 0x1386, 0x95a: 0x13b2, 0x95b: 0x13b6, 0x95c: 0x13be, 0x95d: 0x13d2, -+ 0x95e: 0x13d6, 0x95f: 0x13f2, 0x960: 0x13fa, 0x961: 0x13fe, 0x962: 0x1422, 0x963: 0x1442, -+ 0x964: 0x1456, 0x965: 0x145a, 0x966: 0x1462, 0x967: 0x148e, 0x968: 0x1492, 0x969: 0x14a2, -+ 0x96a: 0x14c6, 0x96b: 0x14d2, 0x96c: 0x14e2, 0x96d: 0x14fa, 0x96e: 0x1502, 0x96f: 0x1506, -+ 0x970: 0x150a, 0x971: 0x150e, 0x972: 0x151a, 0x973: 0x151e, 0x974: 0x1526, 0x975: 0x1542, -+ 0x976: 0x1546, 0x977: 0x154a, 0x978: 0x1562, 0x979: 0x1566, 0x97a: 0x156e, 0x97b: 0x1582, -+ 0x97c: 0x1586, 0x97d: 0x158a, 0x97e: 0x1592, 0x97f: 0x1596, -+ // Block 0x26, offset 0x980 -+ 0x986: 0xa000, 0x98b: 0xa000, -+ 0x98c: 0x3f1f, 0x98d: 0xa000, 0x98e: 0x3f27, 0x98f: 0xa000, 0x990: 0x3f2f, 0x991: 0xa000, -+ 0x992: 0x3f37, 0x993: 0xa000, 0x994: 0x3f3f, 0x995: 0xa000, 0x996: 0x3f47, 0x997: 0xa000, -+ 0x998: 0x3f4f, 0x999: 0xa000, 0x99a: 0x3f57, 0x99b: 0xa000, 0x99c: 0x3f5f, 0x99d: 0xa000, -+ 0x99e: 0x3f67, 0x99f: 0xa000, 0x9a0: 0x3f6f, 0x9a1: 0xa000, 0x9a2: 0x3f77, -+ 0x9a4: 0xa000, 0x9a5: 0x3f7f, 0x9a6: 0xa000, 0x9a7: 0x3f87, 0x9a8: 0xa000, 0x9a9: 0x3f8f, -+ 0x9af: 0xa000, -+ 0x9b0: 0x3f97, 0x9b1: 0x3f9f, 0x9b2: 0xa000, 0x9b3: 0x3fa7, 0x9b4: 0x3faf, 0x9b5: 0xa000, -+ 0x9b6: 0x3fb7, 0x9b7: 0x3fbf, 0x9b8: 0xa000, 0x9b9: 0x3fc7, 0x9ba: 0x3fcf, 0x9bb: 0xa000, -+ 0x9bc: 0x3fd7, 0x9bd: 0x3fdf, -+ // Block 0x27, offset 0x9c0 -+ 0x9d4: 0x3f17, -+ 0x9d9: 0x9904, 0x9da: 0x9904, 0x9db: 0x42f3, 0x9dc: 0x42f9, 0x9dd: 0xa000, -+ 0x9de: 0x3fe7, 0x9df: 0x26ba, -+ 0x9e6: 0xa000, -+ 0x9eb: 0xa000, 0x9ec: 0x3ff7, 0x9ed: 0xa000, 0x9ee: 0x3fff, 0x9ef: 0xa000, -+ 0x9f0: 0x4007, 0x9f1: 0xa000, 0x9f2: 0x400f, 0x9f3: 0xa000, 0x9f4: 0x4017, 0x9f5: 0xa000, -+ 0x9f6: 0x401f, 0x9f7: 0xa000, 0x9f8: 0x4027, 0x9f9: 0xa000, 0x9fa: 0x402f, 0x9fb: 0xa000, -+ 0x9fc: 0x4037, 0x9fd: 0xa000, 0x9fe: 0x403f, 0x9ff: 0xa000, -+ // Block 0x28, offset 0xa00 -+ 0xa00: 0x4047, 0xa01: 0xa000, 0xa02: 0x404f, 0xa04: 0xa000, 0xa05: 0x4057, -+ 0xa06: 0xa000, 0xa07: 0x405f, 0xa08: 0xa000, 0xa09: 0x4067, -+ 0xa0f: 0xa000, 0xa10: 0x406f, 0xa11: 0x4077, -+ 0xa12: 0xa000, 0xa13: 0x407f, 0xa14: 0x4087, 0xa15: 0xa000, 0xa16: 0x408f, 0xa17: 0x4097, -+ 0xa18: 0xa000, 0xa19: 0x409f, 0xa1a: 0x40a7, 0xa1b: 0xa000, 0xa1c: 0x40af, 0xa1d: 0x40b7, -+ 0xa2f: 0xa000, -+ 0xa30: 0xa000, 0xa31: 0xa000, 0xa32: 0xa000, 0xa34: 0x3fef, -+ 0xa37: 0x40bf, 0xa38: 0x40c7, 0xa39: 0x40cf, 0xa3a: 0x40d7, -+ 0xa3d: 0xa000, 0xa3e: 0x40df, 0xa3f: 0x26cf, -+ // Block 0x29, offset 0xa40 -+ 0xa40: 0x036a, 0xa41: 0x032e, 0xa42: 0x0332, 0xa43: 0x0336, 0xa44: 0x037e, 0xa45: 0x033a, -+ 0xa46: 0x033e, 0xa47: 0x0342, 0xa48: 0x0346, 0xa49: 0x034a, 0xa4a: 0x034e, 0xa4b: 0x0352, -+ 0xa4c: 0x0356, 0xa4d: 0x035a, 0xa4e: 0x035e, 0xa4f: 0x49d4, 0xa50: 0x49da, 0xa51: 0x49e0, -+ 0xa52: 0x49e6, 0xa53: 0x49ec, 0xa54: 0x49f2, 0xa55: 0x49f8, 0xa56: 0x49fe, 0xa57: 0x4a04, -+ 0xa58: 0x4a0a, 0xa59: 0x4a10, 0xa5a: 0x4a16, 0xa5b: 0x4a1c, 0xa5c: 0x4a22, 0xa5d: 0x4a28, -+ 0xa5e: 0x4a2e, 0xa5f: 0x4a34, 0xa60: 0x4a3a, 0xa61: 0x4a40, 0xa62: 0x4a46, 0xa63: 0x4a4c, -+ 0xa64: 0x03c6, 0xa65: 0x0362, 0xa66: 0x0366, 0xa67: 0x03ea, 0xa68: 0x03ee, 0xa69: 0x03f2, -+ 0xa6a: 0x03f6, 0xa6b: 0x03fa, 0xa6c: 0x03fe, 0xa6d: 0x0402, 0xa6e: 0x036e, 0xa6f: 0x0406, -+ 0xa70: 0x040a, 0xa71: 0x0372, 0xa72: 0x0376, 0xa73: 0x037a, 0xa74: 0x0382, 0xa75: 0x0386, -+ 0xa76: 0x038a, 0xa77: 0x038e, 0xa78: 0x0392, 0xa79: 0x0396, 0xa7a: 0x039a, 0xa7b: 0x039e, -+ 0xa7c: 0x03a2, 0xa7d: 0x03a6, 0xa7e: 0x03aa, 0xa7f: 0x03ae, -+ // Block 0x2a, offset 0xa80 -+ 0xa80: 0x03b2, 0xa81: 0x03b6, 0xa82: 0x040e, 0xa83: 0x0412, 0xa84: 0x03ba, 0xa85: 0x03be, -+ 0xa86: 0x03c2, 0xa87: 0x03ca, 0xa88: 0x03ce, 0xa89: 0x03d2, 0xa8a: 0x03d6, 0xa8b: 0x03da, -+ 0xa8c: 0x03de, 0xa8d: 0x03e2, 0xa8e: 0x03e6, -+ 0xa92: 0x06c2, 0xa93: 0x071e, 0xa94: 0x06ce, 0xa95: 0x097e, 0xa96: 0x06d2, 0xa97: 0x06ea, -+ 0xa98: 0x06d6, 0xa99: 0x0f96, 0xa9a: 0x070a, 0xa9b: 0x06de, 0xa9c: 0x06c6, 0xa9d: 0x0a02, -+ 0xa9e: 0x0992, 0xa9f: 0x0732, -+ // Block 0x2b, offset 0xac0 -+ 0xac0: 0x205a, 0xac1: 0x2060, 0xac2: 0x2066, 0xac3: 0x206c, 0xac4: 0x2072, 0xac5: 0x2078, -+ 0xac6: 0x207e, 0xac7: 0x2084, 0xac8: 0x208a, 0xac9: 0x2090, 0xaca: 0x2096, 0xacb: 0x209c, -+ 0xacc: 0x20a2, 0xacd: 0x20a8, 0xace: 0x2733, 0xacf: 0x273c, 0xad0: 0x2745, 0xad1: 0x274e, -+ 0xad2: 0x2757, 0xad3: 0x2760, 0xad4: 0x2769, 0xad5: 0x2772, 0xad6: 0x277b, 0xad7: 0x278d, -+ 0xad8: 0x2796, 0xad9: 0x279f, 0xada: 0x27a8, 0xadb: 0x27b1, 0xadc: 0x2784, 0xadd: 0x2bb9, -+ 0xade: 0x2afa, 0xae0: 0x20ae, 0xae1: 0x20c6, 0xae2: 0x20ba, 0xae3: 0x210e, -+ 0xae4: 0x20cc, 0xae5: 0x20ea, 0xae6: 0x20b4, 0xae7: 0x20e4, 0xae8: 0x20c0, 0xae9: 0x20f6, -+ 0xaea: 0x2126, 0xaeb: 0x2144, 0xaec: 0x213e, 0xaed: 0x2132, 0xaee: 0x2180, 0xaef: 0x2114, -+ 0xaf0: 0x2120, 0xaf1: 0x2138, 0xaf2: 0x212c, 0xaf3: 0x2156, 0xaf4: 0x2102, 0xaf5: 0x214a, -+ 0xaf6: 0x2174, 0xaf7: 0x215c, 0xaf8: 0x20f0, 0xaf9: 0x20d2, 0xafa: 0x2108, 0xafb: 0x211a, -+ 0xafc: 0x2150, 0xafd: 0x20d8, 0xafe: 0x217a, 0xaff: 0x20fc, -+ // Block 0x2c, offset 0xb00 -+ 0xb00: 0x2162, 0xb01: 0x20de, 0xb02: 0x2168, 0xb03: 0x216e, 0xb04: 0x0932, 0xb05: 0x0b06, -+ 0xb06: 0x0caa, 0xb07: 0x10ca, -+ 0xb10: 0x1bca, 0xb11: 0x18ac, -+ 0xb12: 0x18af, 0xb13: 0x18b2, 0xb14: 0x18b5, 0xb15: 0x18b8, 0xb16: 0x18bb, 0xb17: 0x18be, -+ 0xb18: 0x18c1, 0xb19: 0x18c4, 0xb1a: 0x18cd, 0xb1b: 0x18d0, 0xb1c: 0x18d3, 0xb1d: 0x18d6, -+ 0xb1e: 0x18d9, 0xb1f: 0x18dc, 0xb20: 0x0316, 0xb21: 0x031e, 0xb22: 0x0322, 0xb23: 0x032a, -+ 0xb24: 0x032e, 0xb25: 0x0332, 0xb26: 0x033a, 0xb27: 0x0342, 0xb28: 0x0346, 0xb29: 0x034e, -+ 0xb2a: 0x0352, 0xb2b: 0x0356, 0xb2c: 0x035a, 0xb2d: 0x035e, 0xb2e: 0x2e2f, 0xb2f: 0x2e37, -+ 0xb30: 0x2e3f, 0xb31: 0x2e47, 0xb32: 0x2e4f, 0xb33: 0x2e57, 0xb34: 0x2e5f, 0xb35: 0x2e67, -+ 0xb36: 0x2e77, 0xb37: 0x2e7f, 0xb38: 0x2e87, 0xb39: 0x2e8f, 0xb3a: 0x2e97, 0xb3b: 0x2e9f, -+ 0xb3c: 0x2eea, 0xb3d: 0x2eb2, 0xb3e: 0x2e6f, -+ // Block 0x2d, offset 0xb40 -+ 0xb40: 0x06c2, 0xb41: 0x071e, 0xb42: 0x06ce, 0xb43: 0x097e, 0xb44: 0x0722, 0xb45: 0x07b2, -+ 0xb46: 0x06ca, 0xb47: 0x07ae, 0xb48: 0x070e, 0xb49: 0x088a, 0xb4a: 0x0d0a, 0xb4b: 0x0e92, -+ 0xb4c: 0x0dda, 0xb4d: 0x0d1e, 0xb4e: 0x1462, 0xb4f: 0x098e, 0xb50: 0x0cd2, 0xb51: 0x0d4e, -+ 0xb52: 0x0d0e, 0xb53: 0x104e, 0xb54: 0x08fe, 0xb55: 0x0f06, 0xb56: 0x138a, 0xb57: 0x1062, -+ 0xb58: 0x0846, 0xb59: 0x1092, 0xb5a: 0x0f9e, 0xb5b: 0x0a1a, 0xb5c: 0x1412, 0xb5d: 0x0782, -+ 0xb5e: 0x08ae, 0xb5f: 0x0dfa, 0xb60: 0x152a, 0xb61: 0x0746, 0xb62: 0x07d6, 0xb63: 0x0d9e, -+ 0xb64: 0x06d2, 0xb65: 0x06ea, 0xb66: 0x06d6, 0xb67: 0x0ade, 0xb68: 0x08f2, 0xb69: 0x0882, -+ 0xb6a: 0x0a5a, 0xb6b: 0x0a4e, 0xb6c: 0x0fee, 0xb6d: 0x0742, 0xb6e: 0x139e, 0xb6f: 0x089e, -+ 0xb70: 0x09f6, 0xb71: 0x18df, 0xb72: 0x18e2, 0xb73: 0x18e5, 0xb74: 0x18e8, 0xb75: 0x18f1, -+ 0xb76: 0x18f4, 0xb77: 0x18f7, 0xb78: 0x18fa, 0xb79: 0x18fd, 0xb7a: 0x1900, 0xb7b: 0x1903, -+ 0xb7c: 0x1906, 0xb7d: 0x1909, 0xb7e: 0x190c, 0xb7f: 0x1915, -+ // Block 0x2e, offset 0xb80 -+ 0xb80: 0x1ccc, 0xb81: 0x1cdb, 0xb82: 0x1cea, 0xb83: 0x1cf9, 0xb84: 0x1d08, 0xb85: 0x1d17, -+ 0xb86: 0x1d26, 0xb87: 0x1d35, 0xb88: 0x1d44, 0xb89: 0x2192, 0xb8a: 0x21a4, 0xb8b: 0x21b6, -+ 0xb8c: 0x1957, 0xb8d: 0x1c0a, 0xb8e: 0x19d8, 0xb8f: 0x1bae, 0xb90: 0x04ce, 0xb91: 0x04d6, -+ 0xb92: 0x04de, 0xb93: 0x04e6, 0xb94: 0x04ee, 0xb95: 0x04f2, 0xb96: 0x04f6, 0xb97: 0x04fa, -+ 0xb98: 0x04fe, 0xb99: 0x0502, 0xb9a: 0x0506, 0xb9b: 0x050a, 0xb9c: 0x050e, 0xb9d: 0x0512, -+ 0xb9e: 0x0516, 0xb9f: 0x051a, 0xba0: 0x051e, 0xba1: 0x0526, 0xba2: 0x052a, 0xba3: 0x052e, -+ 0xba4: 0x0532, 0xba5: 0x0536, 0xba6: 0x053a, 0xba7: 0x053e, 0xba8: 0x0542, 0xba9: 0x0546, -+ 0xbaa: 0x054a, 0xbab: 0x054e, 0xbac: 0x0552, 0xbad: 0x0556, 0xbae: 0x055a, 0xbaf: 0x055e, -+ 0xbb0: 0x0562, 0xbb1: 0x0566, 0xbb2: 0x056a, 0xbb3: 0x0572, 0xbb4: 0x057a, 0xbb5: 0x0582, -+ 0xbb6: 0x0586, 0xbb7: 0x058a, 0xbb8: 0x058e, 0xbb9: 0x0592, 0xbba: 0x0596, 0xbbb: 0x059a, -+ 0xbbc: 0x059e, 0xbbd: 0x05a2, 0xbbe: 0x05a6, 0xbbf: 0x2700, -+ // Block 0x2f, offset 0xbc0 -+ 0xbc0: 0x2b19, 0xbc1: 0x29b5, 0xbc2: 0x2b29, 0xbc3: 0x288d, 0xbc4: 0x2efb, 0xbc5: 0x2897, -+ 0xbc6: 0x28a1, 0xbc7: 0x2f3f, 0xbc8: 0x29c2, 0xbc9: 0x28ab, 0xbca: 0x28b5, 0xbcb: 0x28bf, -+ 0xbcc: 0x29e9, 0xbcd: 0x29f6, 0xbce: 0x29cf, 0xbcf: 0x29dc, 0xbd0: 0x2ec0, 0xbd1: 0x2a03, -+ 0xbd2: 0x2a10, 0xbd3: 0x2bcb, 0xbd4: 0x26c1, 0xbd5: 0x2bde, 0xbd6: 0x2bf1, 0xbd7: 0x2b39, -+ 0xbd8: 0x2a1d, 0xbd9: 0x2c04, 0xbda: 0x2c17, 0xbdb: 0x2a2a, 0xbdc: 0x28c9, 0xbdd: 0x28d3, -+ 0xbde: 0x2ece, 0xbdf: 0x2a37, 0xbe0: 0x2b49, 0xbe1: 0x2f0c, 0xbe2: 0x28dd, 0xbe3: 0x28e7, -+ 0xbe4: 0x2a44, 0xbe5: 0x28f1, 0xbe6: 0x28fb, 0xbe7: 0x26d6, 0xbe8: 0x26dd, 0xbe9: 0x2905, -+ 0xbea: 0x290f, 0xbeb: 0x2c2a, 0xbec: 0x2a51, 0xbed: 0x2b59, 0xbee: 0x2c3d, 0xbef: 0x2a5e, -+ 0xbf0: 0x2923, 0xbf1: 0x2919, 0xbf2: 0x2f53, 0xbf3: 0x2a6b, 0xbf4: 0x2c50, 0xbf5: 0x292d, -+ 0xbf6: 0x2b69, 0xbf7: 0x2937, 0xbf8: 0x2a85, 0xbf9: 0x2941, 0xbfa: 0x2a92, 0xbfb: 0x2f1d, -+ 0xbfc: 0x2a78, 0xbfd: 0x2b79, 0xbfe: 0x2a9f, 0xbff: 0x26e4, -+ // Block 0x30, offset 0xc00 -+ 0xc00: 0x2f2e, 0xc01: 0x294b, 0xc02: 0x2955, 0xc03: 0x2aac, 0xc04: 0x295f, 0xc05: 0x2969, -+ 0xc06: 0x2973, 0xc07: 0x2b89, 0xc08: 0x2ab9, 0xc09: 0x26eb, 0xc0a: 0x2c63, 0xc0b: 0x2ea7, -+ 0xc0c: 0x2b99, 0xc0d: 0x2ac6, 0xc0e: 0x2edc, 0xc0f: 0x297d, 0xc10: 0x2987, 0xc11: 0x2ad3, -+ 0xc12: 0x26f2, 0xc13: 0x2ae0, 0xc14: 0x2ba9, 0xc15: 0x26f9, 0xc16: 0x2c76, 0xc17: 0x2991, -+ 0xc18: 0x1cbd, 0xc19: 0x1cd1, 0xc1a: 0x1ce0, 0xc1b: 0x1cef, 0xc1c: 0x1cfe, 0xc1d: 0x1d0d, -+ 0xc1e: 0x1d1c, 0xc1f: 0x1d2b, 0xc20: 0x1d3a, 0xc21: 0x1d49, 0xc22: 0x2198, 0xc23: 0x21aa, -+ 0xc24: 0x21bc, 0xc25: 0x21c8, 0xc26: 0x21d4, 0xc27: 0x21e0, 0xc28: 0x21ec, 0xc29: 0x21f8, -+ 0xc2a: 0x2204, 0xc2b: 0x2210, 0xc2c: 0x224c, 0xc2d: 0x2258, 0xc2e: 0x2264, 0xc2f: 0x2270, -+ 0xc30: 0x227c, 0xc31: 0x1c1a, 0xc32: 0x19cc, 0xc33: 0x1939, 0xc34: 0x1bea, 0xc35: 0x1a4d, -+ 0xc36: 0x1a5c, 0xc37: 0x19d2, 0xc38: 0x1c02, 0xc39: 0x1c06, 0xc3a: 0x1963, 0xc3b: 0x270e, -+ 0xc3c: 0x271c, 0xc3d: 0x2707, 0xc3e: 0x2715, 0xc3f: 0x2aed, -+ // Block 0x31, offset 0xc40 -+ 0xc40: 0x1a50, 0xc41: 0x1a38, 0xc42: 0x1c66, 0xc43: 0x1a20, 0xc44: 0x19f9, 0xc45: 0x196c, -+ 0xc46: 0x197b, 0xc47: 0x194b, 0xc48: 0x1bf6, 0xc49: 0x1d58, 0xc4a: 0x1a53, 0xc4b: 0x1a3b, -+ 0xc4c: 0x1c6a, 0xc4d: 0x1c76, 0xc4e: 0x1a2c, 0xc4f: 0x1a02, 0xc50: 0x195a, 0xc51: 0x1c22, -+ 0xc52: 0x1bb6, 0xc53: 0x1ba2, 0xc54: 0x1bd2, 0xc55: 0x1c7a, 0xc56: 0x1a2f, 0xc57: 0x19cf, -+ 0xc58: 0x1a05, 0xc59: 0x19e4, 0xc5a: 0x1a47, 0xc5b: 0x1c7e, 0xc5c: 0x1a32, 0xc5d: 0x19c6, -+ 0xc5e: 0x1a08, 0xc5f: 0x1c42, 0xc60: 0x1bfa, 0xc61: 0x1a1a, 0xc62: 0x1c2a, 0xc63: 0x1c46, -+ 0xc64: 0x1bfe, 0xc65: 0x1a1d, 0xc66: 0x1c2e, 0xc67: 0x22ee, 0xc68: 0x2302, 0xc69: 0x199c, -+ 0xc6a: 0x1c26, 0xc6b: 0x1bba, 0xc6c: 0x1ba6, 0xc6d: 0x1c4e, 0xc6e: 0x2723, 0xc6f: 0x27ba, -+ 0xc70: 0x1a5f, 0xc71: 0x1a4a, 0xc72: 0x1c82, 0xc73: 0x1a35, 0xc74: 0x1a56, 0xc75: 0x1a3e, -+ 0xc76: 0x1c6e, 0xc77: 0x1a23, 0xc78: 0x19fc, 0xc79: 0x1987, 0xc7a: 0x1a59, 0xc7b: 0x1a41, -+ 0xc7c: 0x1c72, 0xc7d: 0x1a26, 0xc7e: 0x19ff, 0xc7f: 0x198a, -+ // Block 0x32, offset 0xc80 -+ 0xc80: 0x1c32, 0xc81: 0x1bbe, 0xc82: 0x1d53, 0xc83: 0x193c, 0xc84: 0x19c0, 0xc85: 0x19c3, -+ 0xc86: 0x22fb, 0xc87: 0x1b9a, 0xc88: 0x19c9, 0xc89: 0x194e, 0xc8a: 0x19e7, 0xc8b: 0x1951, -+ 0xc8c: 0x19f0, 0xc8d: 0x196f, 0xc8e: 0x1972, 0xc8f: 0x1a0b, 0xc90: 0x1a11, 0xc91: 0x1a14, -+ 0xc92: 0x1c36, 0xc93: 0x1a17, 0xc94: 0x1a29, 0xc95: 0x1c3e, 0xc96: 0x1c4a, 0xc97: 0x1996, -+ 0xc98: 0x1d5d, 0xc99: 0x1bc2, 0xc9a: 0x1999, 0xc9b: 0x1a62, 0xc9c: 0x19ab, 0xc9d: 0x19ba, -+ 0xc9e: 0x22e8, 0xc9f: 0x22e2, 0xca0: 0x1cc7, 0xca1: 0x1cd6, 0xca2: 0x1ce5, 0xca3: 0x1cf4, -+ 0xca4: 0x1d03, 0xca5: 0x1d12, 0xca6: 0x1d21, 0xca7: 0x1d30, 0xca8: 0x1d3f, 0xca9: 0x218c, -+ 0xcaa: 0x219e, 0xcab: 0x21b0, 0xcac: 0x21c2, 0xcad: 0x21ce, 0xcae: 0x21da, 0xcaf: 0x21e6, -+ 0xcb0: 0x21f2, 0xcb1: 0x21fe, 0xcb2: 0x220a, 0xcb3: 0x2246, 0xcb4: 0x2252, 0xcb5: 0x225e, -+ 0xcb6: 0x226a, 0xcb7: 0x2276, 0xcb8: 0x2282, 0xcb9: 0x2288, 0xcba: 0x228e, 0xcbb: 0x2294, -+ 0xcbc: 0x229a, 0xcbd: 0x22ac, 0xcbe: 0x22b2, 0xcbf: 0x1c16, -+ // Block 0x33, offset 0xcc0 -+ 0xcc0: 0x137a, 0xcc1: 0x0cfe, 0xcc2: 0x13d6, 0xcc3: 0x13a2, 0xcc4: 0x0e5a, 0xcc5: 0x06ee, -+ 0xcc6: 0x08e2, 0xcc7: 0x162e, 0xcc8: 0x162e, 0xcc9: 0x0a0e, 0xcca: 0x1462, 0xccb: 0x0946, -+ 0xccc: 0x0a0a, 0xccd: 0x0bf2, 0xcce: 0x0fd2, 0xccf: 0x1162, 0xcd0: 0x129a, 0xcd1: 0x12d6, -+ 0xcd2: 0x130a, 0xcd3: 0x141e, 0xcd4: 0x0d76, 0xcd5: 0x0e02, 0xcd6: 0x0eae, 0xcd7: 0x0f46, -+ 0xcd8: 0x1262, 0xcd9: 0x144a, 0xcda: 0x1576, 0xcdb: 0x0712, 0xcdc: 0x08b6, 0xcdd: 0x0d8a, -+ 0xcde: 0x0ed2, 0xcdf: 0x1296, 0xce0: 0x15c6, 0xce1: 0x0ab6, 0xce2: 0x0e7a, 0xce3: 0x1286, -+ 0xce4: 0x131a, 0xce5: 0x0c26, 0xce6: 0x11be, 0xce7: 0x12e2, 0xce8: 0x0b22, 0xce9: 0x0d12, -+ 0xcea: 0x0e1a, 0xceb: 0x0f1e, 0xcec: 0x142a, 0xced: 0x0752, 0xcee: 0x07ea, 0xcef: 0x0856, -+ 0xcf0: 0x0c8e, 0xcf1: 0x0d82, 0xcf2: 0x0ece, 0xcf3: 0x0ff2, 0xcf4: 0x117a, 0xcf5: 0x128e, -+ 0xcf6: 0x12a6, 0xcf7: 0x13ca, 0xcf8: 0x14f2, 0xcf9: 0x15a6, 0xcfa: 0x15c2, 0xcfb: 0x102e, -+ 0xcfc: 0x106e, 0xcfd: 0x1126, 0xcfe: 0x1246, 0xcff: 0x147e, -+ // Block 0x34, offset 0xd00 -+ 0xd00: 0x15ce, 0xd01: 0x134e, 0xd02: 0x09ca, 0xd03: 0x0b3e, 0xd04: 0x10de, 0xd05: 0x119e, -+ 0xd06: 0x0f02, 0xd07: 0x1036, 0xd08: 0x139a, 0xd09: 0x14ea, 0xd0a: 0x09c6, 0xd0b: 0x0a92, -+ 0xd0c: 0x0d7a, 0xd0d: 0x0e2e, 0xd0e: 0x0e62, 0xd0f: 0x1116, 0xd10: 0x113e, 0xd11: 0x14aa, -+ 0xd12: 0x0852, 0xd13: 0x11aa, 0xd14: 0x07f6, 0xd15: 0x07f2, 0xd16: 0x109a, 0xd17: 0x112a, -+ 0xd18: 0x125e, 0xd19: 0x14b2, 0xd1a: 0x136a, 0xd1b: 0x0c2a, 0xd1c: 0x0d76, 0xd1d: 0x135a, -+ 0xd1e: 0x06fa, 0xd1f: 0x0a66, 0xd20: 0x0b96, 0xd21: 0x0f32, 0xd22: 0x0fb2, 0xd23: 0x0876, -+ 0xd24: 0x103e, 0xd25: 0x0762, 0xd26: 0x0b7a, 0xd27: 0x06da, 0xd28: 0x0dee, 0xd29: 0x0ca6, -+ 0xd2a: 0x1112, 0xd2b: 0x08ca, 0xd2c: 0x09b6, 0xd2d: 0x0ffe, 0xd2e: 0x1266, 0xd2f: 0x133e, -+ 0xd30: 0x0dba, 0xd31: 0x13fa, 0xd32: 0x0de6, 0xd33: 0x0c3a, 0xd34: 0x121e, 0xd35: 0x0c5a, -+ 0xd36: 0x0fae, 0xd37: 0x072e, 0xd38: 0x07aa, 0xd39: 0x07ee, 0xd3a: 0x0d56, 0xd3b: 0x10fe, -+ 0xd3c: 0x11f6, 0xd3d: 0x134a, 0xd3e: 0x145e, 0xd3f: 0x085e, -+ // Block 0x35, offset 0xd40 -+ 0xd40: 0x0912, 0xd41: 0x0a1a, 0xd42: 0x0b32, 0xd43: 0x0cc2, 0xd44: 0x0e7e, 0xd45: 0x1042, -+ 0xd46: 0x149a, 0xd47: 0x157e, 0xd48: 0x15d2, 0xd49: 0x15ea, 0xd4a: 0x083a, 0xd4b: 0x0cf6, -+ 0xd4c: 0x0da6, 0xd4d: 0x13ee, 0xd4e: 0x0afe, 0xd4f: 0x0bda, 0xd50: 0x0bf6, 0xd51: 0x0c86, -+ 0xd52: 0x0e6e, 0xd53: 0x0eba, 0xd54: 0x0f6a, 0xd55: 0x108e, 0xd56: 0x1132, 0xd57: 0x1196, -+ 0xd58: 0x13de, 0xd59: 0x126e, 0xd5a: 0x1406, 0xd5b: 0x1482, 0xd5c: 0x0812, 0xd5d: 0x083e, -+ 0xd5e: 0x0926, 0xd5f: 0x0eaa, 0xd60: 0x12f6, 0xd61: 0x133e, 0xd62: 0x0b1e, 0xd63: 0x0b8e, -+ 0xd64: 0x0c52, 0xd65: 0x0db2, 0xd66: 0x10da, 0xd67: 0x0f26, 0xd68: 0x073e, 0xd69: 0x0982, -+ 0xd6a: 0x0a66, 0xd6b: 0x0aca, 0xd6c: 0x0b9a, 0xd6d: 0x0f42, 0xd6e: 0x0f5e, 0xd6f: 0x116e, -+ 0xd70: 0x118e, 0xd71: 0x1466, 0xd72: 0x14e6, 0xd73: 0x14f6, 0xd74: 0x1532, 0xd75: 0x0756, -+ 0xd76: 0x1082, 0xd77: 0x1452, 0xd78: 0x14ce, 0xd79: 0x0bb2, 0xd7a: 0x071a, 0xd7b: 0x077a, -+ 0xd7c: 0x0a6a, 0xd7d: 0x0a8a, 0xd7e: 0x0cb2, 0xd7f: 0x0d76, -+ // Block 0x36, offset 0xd80 -+ 0xd80: 0x0ec6, 0xd81: 0x0fce, 0xd82: 0x127a, 0xd83: 0x141a, 0xd84: 0x1626, 0xd85: 0x0ce6, -+ 0xd86: 0x14a6, 0xd87: 0x0836, 0xd88: 0x0d32, 0xd89: 0x0d3e, 0xd8a: 0x0e12, 0xd8b: 0x0e4a, -+ 0xd8c: 0x0f4e, 0xd8d: 0x0faa, 0xd8e: 0x102a, 0xd8f: 0x110e, 0xd90: 0x153e, 0xd91: 0x07b2, -+ 0xd92: 0x0c06, 0xd93: 0x14b6, 0xd94: 0x076a, 0xd95: 0x0aae, 0xd96: 0x0e32, 0xd97: 0x13e2, -+ 0xd98: 0x0b6a, 0xd99: 0x0bba, 0xd9a: 0x0d46, 0xd9b: 0x0f32, 0xd9c: 0x14be, 0xd9d: 0x081a, -+ 0xd9e: 0x0902, 0xd9f: 0x0a9a, 0xda0: 0x0cd6, 0xda1: 0x0d22, 0xda2: 0x0d62, 0xda3: 0x0df6, -+ 0xda4: 0x0f4a, 0xda5: 0x0fbe, 0xda6: 0x115a, 0xda7: 0x12fa, 0xda8: 0x1306, 0xda9: 0x145a, -+ 0xdaa: 0x14da, 0xdab: 0x0886, 0xdac: 0x0e4e, 0xdad: 0x0906, 0xdae: 0x0eca, 0xdaf: 0x0f6e, -+ 0xdb0: 0x128a, 0xdb1: 0x14c2, 0xdb2: 0x15ae, 0xdb3: 0x15d6, 0xdb4: 0x0d3a, 0xdb5: 0x0e2a, -+ 0xdb6: 0x11c6, 0xdb7: 0x10ba, 0xdb8: 0x10c6, 0xdb9: 0x10ea, 0xdba: 0x0f1a, 0xdbb: 0x0ea2, -+ 0xdbc: 0x1366, 0xdbd: 0x0736, 0xdbe: 0x122e, 0xdbf: 0x081e, -+ // Block 0x37, offset 0xdc0 -+ 0xdc0: 0x080e, 0xdc1: 0x0b0e, 0xdc2: 0x0c2e, 0xdc3: 0x10f6, 0xdc4: 0x0a56, 0xdc5: 0x0e06, -+ 0xdc6: 0x0cf2, 0xdc7: 0x13ea, 0xdc8: 0x12ea, 0xdc9: 0x14ae, 0xdca: 0x1326, 0xdcb: 0x0b2a, -+ 0xdcc: 0x078a, 0xdcd: 0x095e, 0xdd0: 0x09b2, -+ 0xdd2: 0x0ce2, 0xdd5: 0x07fa, 0xdd6: 0x0f22, 0xdd7: 0x0fe6, -+ 0xdd8: 0x104a, 0xdd9: 0x1066, 0xdda: 0x106a, 0xddb: 0x107e, 0xddc: 0x14fe, 0xddd: 0x10ee, -+ 0xdde: 0x1172, 0xde0: 0x1292, 0xde2: 0x1356, -+ 0xde5: 0x140a, 0xde6: 0x1436, -+ 0xdea: 0x1552, 0xdeb: 0x1556, 0xdec: 0x155a, 0xded: 0x15be, 0xdee: 0x142e, 0xdef: 0x14ca, -+ 0xdf0: 0x075a, 0xdf1: 0x077e, 0xdf2: 0x0792, 0xdf3: 0x084e, 0xdf4: 0x085a, 0xdf5: 0x089a, -+ 0xdf6: 0x094e, 0xdf7: 0x096a, 0xdf8: 0x0972, 0xdf9: 0x09ae, 0xdfa: 0x09ba, 0xdfb: 0x0a96, -+ 0xdfc: 0x0a9e, 0xdfd: 0x0ba6, 0xdfe: 0x0bce, 0xdff: 0x0bd6, -+ // Block 0x38, offset 0xe00 -+ 0xe00: 0x0bee, 0xe01: 0x0c9a, 0xe02: 0x0cca, 0xe03: 0x0cea, 0xe04: 0x0d5a, 0xe05: 0x0e1e, -+ 0xe06: 0x0e3a, 0xe07: 0x0e6a, 0xe08: 0x0ebe, 0xe09: 0x0ede, 0xe0a: 0x0f52, 0xe0b: 0x1032, -+ 0xe0c: 0x104e, 0xe0d: 0x1056, 0xe0e: 0x1052, 0xe0f: 0x105a, 0xe10: 0x105e, 0xe11: 0x1062, -+ 0xe12: 0x1076, 0xe13: 0x107a, 0xe14: 0x109e, 0xe15: 0x10b2, 0xe16: 0x10ce, 0xe17: 0x1132, -+ 0xe18: 0x113a, 0xe19: 0x1142, 0xe1a: 0x1156, 0xe1b: 0x117e, 0xe1c: 0x11ce, 0xe1d: 0x1202, -+ 0xe1e: 0x1202, 0xe1f: 0x126a, 0xe20: 0x1312, 0xe21: 0x132a, 0xe22: 0x135e, 0xe23: 0x1362, -+ 0xe24: 0x13a6, 0xe25: 0x13aa, 0xe26: 0x1402, 0xe27: 0x140a, 0xe28: 0x14de, 0xe29: 0x1522, -+ 0xe2a: 0x153a, 0xe2b: 0x0b9e, 0xe2c: 0x1721, 0xe2d: 0x11e6, -+ 0xe30: 0x06e2, 0xe31: 0x07e6, 0xe32: 0x07a6, 0xe33: 0x074e, 0xe34: 0x078e, 0xe35: 0x07ba, -+ 0xe36: 0x084a, 0xe37: 0x0866, 0xe38: 0x094e, 0xe39: 0x093a, 0xe3a: 0x094a, 0xe3b: 0x0966, -+ 0xe3c: 0x09b2, 0xe3d: 0x09c2, 0xe3e: 0x0a06, 0xe3f: 0x0a12, -+ // Block 0x39, offset 0xe40 -+ 0xe40: 0x0a2e, 0xe41: 0x0a3e, 0xe42: 0x0b26, 0xe43: 0x0b2e, 0xe44: 0x0b5e, 0xe45: 0x0b7e, -+ 0xe46: 0x0bae, 0xe47: 0x0bc6, 0xe48: 0x0bb6, 0xe49: 0x0bd6, 0xe4a: 0x0bca, 0xe4b: 0x0bee, -+ 0xe4c: 0x0c0a, 0xe4d: 0x0c62, 0xe4e: 0x0c6e, 0xe4f: 0x0c76, 0xe50: 0x0c9e, 0xe51: 0x0ce2, -+ 0xe52: 0x0d12, 0xe53: 0x0d16, 0xe54: 0x0d2a, 0xe55: 0x0daa, 0xe56: 0x0dba, 0xe57: 0x0e12, -+ 0xe58: 0x0e5e, 0xe59: 0x0e56, 0xe5a: 0x0e6a, 0xe5b: 0x0e86, 0xe5c: 0x0ebe, 0xe5d: 0x1016, -+ 0xe5e: 0x0ee2, 0xe5f: 0x0f16, 0xe60: 0x0f22, 0xe61: 0x0f62, 0xe62: 0x0f7e, 0xe63: 0x0fa2, -+ 0xe64: 0x0fc6, 0xe65: 0x0fca, 0xe66: 0x0fe6, 0xe67: 0x0fea, 0xe68: 0x0ffa, 0xe69: 0x100e, -+ 0xe6a: 0x100a, 0xe6b: 0x103a, 0xe6c: 0x10b6, 0xe6d: 0x10ce, 0xe6e: 0x10e6, 0xe6f: 0x111e, -+ 0xe70: 0x1132, 0xe71: 0x114e, 0xe72: 0x117e, 0xe73: 0x1232, 0xe74: 0x125a, 0xe75: 0x12ce, -+ 0xe76: 0x1316, 0xe77: 0x1322, 0xe78: 0x132a, 0xe79: 0x1342, 0xe7a: 0x1356, 0xe7b: 0x1346, -+ 0xe7c: 0x135e, 0xe7d: 0x135a, 0xe7e: 0x1352, 0xe7f: 0x1362, -+ // Block 0x3a, offset 0xe80 -+ 0xe80: 0x136e, 0xe81: 0x13aa, 0xe82: 0x13e6, 0xe83: 0x1416, 0xe84: 0x144e, 0xe85: 0x146e, -+ 0xe86: 0x14ba, 0xe87: 0x14de, 0xe88: 0x14fe, 0xe89: 0x1512, 0xe8a: 0x1522, 0xe8b: 0x152e, -+ 0xe8c: 0x153a, 0xe8d: 0x158e, 0xe8e: 0x162e, 0xe8f: 0x16b8, 0xe90: 0x16b3, 0xe91: 0x16e5, -+ 0xe92: 0x060a, 0xe93: 0x0632, 0xe94: 0x0636, 0xe95: 0x1767, 0xe96: 0x1794, 0xe97: 0x180c, -+ 0xe98: 0x161a, 0xe99: 0x162a, -+ // Block 0x3b, offset 0xec0 -+ 0xec0: 0x19db, 0xec1: 0x19de, 0xec2: 0x19e1, 0xec3: 0x1c0e, 0xec4: 0x1c12, 0xec5: 0x1a65, -+ 0xec6: 0x1a65, -+ 0xed3: 0x1d7b, 0xed4: 0x1d6c, 0xed5: 0x1d71, 0xed6: 0x1d80, 0xed7: 0x1d76, -+ 0xedd: 0x43a7, -+ 0xede: 0x8116, 0xedf: 0x4419, 0xee0: 0x0230, 0xee1: 0x0218, 0xee2: 0x0221, 0xee3: 0x0224, -+ 0xee4: 0x0227, 0xee5: 0x022a, 0xee6: 0x022d, 0xee7: 0x0233, 0xee8: 0x0236, 0xee9: 0x0017, -+ 0xeea: 0x4407, 0xeeb: 0x440d, 0xeec: 0x450b, 0xeed: 0x4513, 0xeee: 0x435f, 0xeef: 0x4365, -+ 0xef0: 0x436b, 0xef1: 0x4371, 0xef2: 0x437d, 0xef3: 0x4383, 0xef4: 0x4389, 0xef5: 0x4395, -+ 0xef6: 0x439b, 0xef8: 0x43a1, 0xef9: 0x43ad, 0xefa: 0x43b3, 0xefb: 0x43b9, -+ 0xefc: 0x43c5, 0xefe: 0x43cb, -+ // Block 0x3c, offset 0xf00 -+ 0xf00: 0x43d1, 0xf01: 0x43d7, 0xf03: 0x43dd, 0xf04: 0x43e3, -+ 0xf06: 0x43ef, 0xf07: 0x43f5, 0xf08: 0x43fb, 0xf09: 0x4401, 0xf0a: 0x4413, 0xf0b: 0x438f, -+ 0xf0c: 0x4377, 0xf0d: 0x43bf, 0xf0e: 0x43e9, 0xf0f: 0x1d85, 0xf10: 0x029c, 0xf11: 0x029c, -+ 0xf12: 0x02a5, 0xf13: 0x02a5, 0xf14: 0x02a5, 0xf15: 0x02a5, 0xf16: 0x02a8, 0xf17: 0x02a8, -+ 0xf18: 0x02a8, 0xf19: 0x02a8, 0xf1a: 0x02ae, 0xf1b: 0x02ae, 0xf1c: 0x02ae, 0xf1d: 0x02ae, -+ 0xf1e: 0x02a2, 0xf1f: 0x02a2, 0xf20: 0x02a2, 0xf21: 0x02a2, 0xf22: 0x02ab, 0xf23: 0x02ab, -+ 0xf24: 0x02ab, 0xf25: 0x02ab, 0xf26: 0x029f, 0xf27: 0x029f, 0xf28: 0x029f, 0xf29: 0x029f, -+ 0xf2a: 0x02d2, 0xf2b: 0x02d2, 0xf2c: 0x02d2, 0xf2d: 0x02d2, 0xf2e: 0x02d5, 0xf2f: 0x02d5, -+ 0xf30: 0x02d5, 0xf31: 0x02d5, 0xf32: 0x02b4, 0xf33: 0x02b4, 0xf34: 0x02b4, 0xf35: 0x02b4, -+ 0xf36: 0x02b1, 0xf37: 0x02b1, 0xf38: 0x02b1, 0xf39: 0x02b1, 0xf3a: 0x02b7, 0xf3b: 0x02b7, -+ 0xf3c: 0x02b7, 0xf3d: 0x02b7, 0xf3e: 0x02ba, 0xf3f: 0x02ba, -+ // Block 0x3d, offset 0xf40 -+ 0xf40: 0x02ba, 0xf41: 0x02ba, 0xf42: 0x02c3, 0xf43: 0x02c3, 0xf44: 0x02c0, 0xf45: 0x02c0, -+ 0xf46: 0x02c6, 0xf47: 0x02c6, 0xf48: 0x02bd, 0xf49: 0x02bd, 0xf4a: 0x02cc, 0xf4b: 0x02cc, -+ 0xf4c: 0x02c9, 0xf4d: 0x02c9, 0xf4e: 0x02d8, 0xf4f: 0x02d8, 0xf50: 0x02d8, 0xf51: 0x02d8, -+ 0xf52: 0x02de, 0xf53: 0x02de, 0xf54: 0x02de, 0xf55: 0x02de, 0xf56: 0x02e4, 0xf57: 0x02e4, -+ 0xf58: 0x02e4, 0xf59: 0x02e4, 0xf5a: 0x02e1, 0xf5b: 0x02e1, 0xf5c: 0x02e1, 0xf5d: 0x02e1, -+ 0xf5e: 0x02e7, 0xf5f: 0x02e7, 0xf60: 0x02ea, 0xf61: 0x02ea, 0xf62: 0x02ea, 0xf63: 0x02ea, -+ 0xf64: 0x4485, 0xf65: 0x4485, 0xf66: 0x02f0, 0xf67: 0x02f0, 0xf68: 0x02f0, 0xf69: 0x02f0, -+ 0xf6a: 0x02ed, 0xf6b: 0x02ed, 0xf6c: 0x02ed, 0xf6d: 0x02ed, 0xf6e: 0x030b, 0xf6f: 0x030b, -+ 0xf70: 0x447f, 0xf71: 0x447f, -+ // Block 0x3e, offset 0xf80 -+ 0xf93: 0x02db, 0xf94: 0x02db, 0xf95: 0x02db, 0xf96: 0x02db, 0xf97: 0x02f9, -+ 0xf98: 0x02f9, 0xf99: 0x02f6, 0xf9a: 0x02f6, 0xf9b: 0x02fc, 0xf9c: 0x02fc, 0xf9d: 0x2055, -+ 0xf9e: 0x0302, 0xf9f: 0x0302, 0xfa0: 0x02f3, 0xfa1: 0x02f3, 0xfa2: 0x02ff, 0xfa3: 0x02ff, -+ 0xfa4: 0x0308, 0xfa5: 0x0308, 0xfa6: 0x0308, 0xfa7: 0x0308, 0xfa8: 0x0290, 0xfa9: 0x0290, -+ 0xfaa: 0x25b0, 0xfab: 0x25b0, 0xfac: 0x2620, 0xfad: 0x2620, 0xfae: 0x25ef, 0xfaf: 0x25ef, -+ 0xfb0: 0x260b, 0xfb1: 0x260b, 0xfb2: 0x2604, 0xfb3: 0x2604, 0xfb4: 0x2612, 0xfb5: 0x2612, -+ 0xfb6: 0x2619, 0xfb7: 0x2619, 0xfb8: 0x2619, 0xfb9: 0x25f6, 0xfba: 0x25f6, 0xfbb: 0x25f6, -+ 0xfbc: 0x0305, 0xfbd: 0x0305, 0xfbe: 0x0305, 0xfbf: 0x0305, -+ // Block 0x3f, offset 0xfc0 -+ 0xfc0: 0x25b7, 0xfc1: 0x25be, 0xfc2: 0x25da, 0xfc3: 0x25f6, 0xfc4: 0x25fd, 0xfc5: 0x1d8f, -+ 0xfc6: 0x1d94, 0xfc7: 0x1d99, 0xfc8: 0x1da8, 0xfc9: 0x1db7, 0xfca: 0x1dbc, 0xfcb: 0x1dc1, -+ 0xfcc: 0x1dc6, 0xfcd: 0x1dcb, 0xfce: 0x1dda, 0xfcf: 0x1de9, 0xfd0: 0x1dee, 0xfd1: 0x1df3, -+ 0xfd2: 0x1e02, 0xfd3: 0x1e11, 0xfd4: 0x1e16, 0xfd5: 0x1e1b, 0xfd6: 0x1e20, 0xfd7: 0x1e2f, -+ 0xfd8: 0x1e34, 0xfd9: 0x1e43, 0xfda: 0x1e48, 0xfdb: 0x1e4d, 0xfdc: 0x1e5c, 0xfdd: 0x1e61, -+ 0xfde: 0x1e66, 0xfdf: 0x1e70, 0xfe0: 0x1eac, 0xfe1: 0x1ebb, 0xfe2: 0x1eca, 0xfe3: 0x1ecf, -+ 0xfe4: 0x1ed4, 0xfe5: 0x1ede, 0xfe6: 0x1eed, 0xfe7: 0x1ef2, 0xfe8: 0x1f01, 0xfe9: 0x1f06, -+ 0xfea: 0x1f0b, 0xfeb: 0x1f1a, 0xfec: 0x1f1f, 0xfed: 0x1f2e, 0xfee: 0x1f33, 0xfef: 0x1f38, -+ 0xff0: 0x1f3d, 0xff1: 0x1f42, 0xff2: 0x1f47, 0xff3: 0x1f4c, 0xff4: 0x1f51, 0xff5: 0x1f56, -+ 0xff6: 0x1f5b, 0xff7: 0x1f60, 0xff8: 0x1f65, 0xff9: 0x1f6a, 0xffa: 0x1f6f, 0xffb: 0x1f74, -+ 0xffc: 0x1f79, 0xffd: 0x1f7e, 0xffe: 0x1f83, 0xfff: 0x1f8d, -+ // Block 0x40, offset 0x1000 -+ 0x1000: 0x1f92, 0x1001: 0x1f97, 0x1002: 0x1f9c, 0x1003: 0x1fa6, 0x1004: 0x1fab, 0x1005: 0x1fb5, -+ 0x1006: 0x1fba, 0x1007: 0x1fbf, 0x1008: 0x1fc4, 0x1009: 0x1fc9, 0x100a: 0x1fce, 0x100b: 0x1fd3, -+ 0x100c: 0x1fd8, 0x100d: 0x1fdd, 0x100e: 0x1fec, 0x100f: 0x1ffb, 0x1010: 0x2000, 0x1011: 0x2005, -+ 0x1012: 0x200a, 0x1013: 0x200f, 0x1014: 0x2014, 0x1015: 0x201e, 0x1016: 0x2023, 0x1017: 0x2028, -+ 0x1018: 0x2037, 0x1019: 0x2046, 0x101a: 0x204b, 0x101b: 0x4437, 0x101c: 0x443d, 0x101d: 0x4473, -+ 0x101e: 0x44ca, 0x101f: 0x44d1, 0x1020: 0x44d8, 0x1021: 0x44df, 0x1022: 0x44e6, 0x1023: 0x44ed, -+ 0x1024: 0x25cc, 0x1025: 0x25d3, 0x1026: 0x25da, 0x1027: 0x25e1, 0x1028: 0x25f6, 0x1029: 0x25fd, -+ 0x102a: 0x1d9e, 0x102b: 0x1da3, 0x102c: 0x1da8, 0x102d: 0x1dad, 0x102e: 0x1db7, 0x102f: 0x1dbc, -+ 0x1030: 0x1dd0, 0x1031: 0x1dd5, 0x1032: 0x1dda, 0x1033: 0x1ddf, 0x1034: 0x1de9, 0x1035: 0x1dee, -+ 0x1036: 0x1df8, 0x1037: 0x1dfd, 0x1038: 0x1e02, 0x1039: 0x1e07, 0x103a: 0x1e11, 0x103b: 0x1e16, -+ 0x103c: 0x1f42, 0x103d: 0x1f47, 0x103e: 0x1f56, 0x103f: 0x1f5b, -+ // Block 0x41, offset 0x1040 -+ 0x1040: 0x1f60, 0x1041: 0x1f74, 0x1042: 0x1f79, 0x1043: 0x1f7e, 0x1044: 0x1f83, 0x1045: 0x1f9c, -+ 0x1046: 0x1fa6, 0x1047: 0x1fab, 0x1048: 0x1fb0, 0x1049: 0x1fc4, 0x104a: 0x1fe2, 0x104b: 0x1fe7, -+ 0x104c: 0x1fec, 0x104d: 0x1ff1, 0x104e: 0x1ffb, 0x104f: 0x2000, 0x1050: 0x4473, 0x1051: 0x202d, -+ 0x1052: 0x2032, 0x1053: 0x2037, 0x1054: 0x203c, 0x1055: 0x2046, 0x1056: 0x204b, 0x1057: 0x25b7, -+ 0x1058: 0x25be, 0x1059: 0x25c5, 0x105a: 0x25da, 0x105b: 0x25e8, 0x105c: 0x1d8f, 0x105d: 0x1d94, -+ 0x105e: 0x1d99, 0x105f: 0x1da8, 0x1060: 0x1db2, 0x1061: 0x1dc1, 0x1062: 0x1dc6, 0x1063: 0x1dcb, -+ 0x1064: 0x1dda, 0x1065: 0x1de4, 0x1066: 0x1e02, 0x1067: 0x1e1b, 0x1068: 0x1e20, 0x1069: 0x1e2f, -+ 0x106a: 0x1e34, 0x106b: 0x1e43, 0x106c: 0x1e4d, 0x106d: 0x1e5c, 0x106e: 0x1e61, 0x106f: 0x1e66, -+ 0x1070: 0x1e70, 0x1071: 0x1eac, 0x1072: 0x1eb1, 0x1073: 0x1ebb, 0x1074: 0x1eca, 0x1075: 0x1ecf, -+ 0x1076: 0x1ed4, 0x1077: 0x1ede, 0x1078: 0x1eed, 0x1079: 0x1f01, 0x107a: 0x1f06, 0x107b: 0x1f0b, -+ 0x107c: 0x1f1a, 0x107d: 0x1f1f, 0x107e: 0x1f2e, 0x107f: 0x1f33, -+ // Block 0x42, offset 0x1080 -+ 0x1080: 0x1f38, 0x1081: 0x1f3d, 0x1082: 0x1f4c, 0x1083: 0x1f51, 0x1084: 0x1f65, 0x1085: 0x1f6a, -+ 0x1086: 0x1f6f, 0x1087: 0x1f74, 0x1088: 0x1f79, 0x1089: 0x1f8d, 0x108a: 0x1f92, 0x108b: 0x1f97, -+ 0x108c: 0x1f9c, 0x108d: 0x1fa1, 0x108e: 0x1fb5, 0x108f: 0x1fba, 0x1090: 0x1fbf, 0x1091: 0x1fc4, -+ 0x1092: 0x1fd3, 0x1093: 0x1fd8, 0x1094: 0x1fdd, 0x1095: 0x1fec, 0x1096: 0x1ff6, 0x1097: 0x2005, -+ 0x1098: 0x200a, 0x1099: 0x4467, 0x109a: 0x201e, 0x109b: 0x2023, 0x109c: 0x2028, 0x109d: 0x2037, -+ 0x109e: 0x2041, 0x109f: 0x25da, 0x10a0: 0x25e8, 0x10a1: 0x1da8, 0x10a2: 0x1db2, 0x10a3: 0x1dda, -+ 0x10a4: 0x1de4, 0x10a5: 0x1e02, 0x10a6: 0x1e0c, 0x10a7: 0x1e70, 0x10a8: 0x1e75, 0x10a9: 0x1e98, -+ 0x10aa: 0x1e9d, 0x10ab: 0x1f74, 0x10ac: 0x1f79, 0x10ad: 0x1f9c, 0x10ae: 0x1fec, 0x10af: 0x1ff6, -+ 0x10b0: 0x2037, 0x10b1: 0x2041, 0x10b2: 0x451b, 0x10b3: 0x4523, 0x10b4: 0x452b, 0x10b5: 0x1ef7, -+ 0x10b6: 0x1efc, 0x10b7: 0x1f10, 0x10b8: 0x1f15, 0x10b9: 0x1f24, 0x10ba: 0x1f29, 0x10bb: 0x1e7a, -+ 0x10bc: 0x1e7f, 0x10bd: 0x1ea2, 0x10be: 0x1ea7, 0x10bf: 0x1e39, -+ // Block 0x43, offset 0x10c0 -+ 0x10c0: 0x1e3e, 0x10c1: 0x1e25, 0x10c2: 0x1e2a, 0x10c3: 0x1e52, 0x10c4: 0x1e57, 0x10c5: 0x1ec0, -+ 0x10c6: 0x1ec5, 0x10c7: 0x1ee3, 0x10c8: 0x1ee8, 0x10c9: 0x1e84, 0x10ca: 0x1e89, 0x10cb: 0x1e8e, -+ 0x10cc: 0x1e98, 0x10cd: 0x1e93, 0x10ce: 0x1e6b, 0x10cf: 0x1eb6, 0x10d0: 0x1ed9, 0x10d1: 0x1ef7, -+ 0x10d2: 0x1efc, 0x10d3: 0x1f10, 0x10d4: 0x1f15, 0x10d5: 0x1f24, 0x10d6: 0x1f29, 0x10d7: 0x1e7a, -+ 0x10d8: 0x1e7f, 0x10d9: 0x1ea2, 0x10da: 0x1ea7, 0x10db: 0x1e39, 0x10dc: 0x1e3e, 0x10dd: 0x1e25, -+ 0x10de: 0x1e2a, 0x10df: 0x1e52, 0x10e0: 0x1e57, 0x10e1: 0x1ec0, 0x10e2: 0x1ec5, 0x10e3: 0x1ee3, -+ 0x10e4: 0x1ee8, 0x10e5: 0x1e84, 0x10e6: 0x1e89, 0x10e7: 0x1e8e, 0x10e8: 0x1e98, 0x10e9: 0x1e93, -+ 0x10ea: 0x1e6b, 0x10eb: 0x1eb6, 0x10ec: 0x1ed9, 0x10ed: 0x1e84, 0x10ee: 0x1e89, 0x10ef: 0x1e8e, -+ 0x10f0: 0x1e98, 0x10f1: 0x1e75, 0x10f2: 0x1e9d, 0x10f3: 0x1ef2, 0x10f4: 0x1e5c, 0x10f5: 0x1e61, -+ 0x10f6: 0x1e66, 0x10f7: 0x1e84, 0x10f8: 0x1e89, 0x10f9: 0x1e8e, 0x10fa: 0x1ef2, 0x10fb: 0x1f01, -+ 0x10fc: 0x441f, 0x10fd: 0x441f, -+ // Block 0x44, offset 0x1100 -+ 0x1110: 0x2317, 0x1111: 0x232c, -+ 0x1112: 0x232c, 0x1113: 0x2333, 0x1114: 0x233a, 0x1115: 0x234f, 0x1116: 0x2356, 0x1117: 0x235d, -+ 0x1118: 0x2380, 0x1119: 0x2380, 0x111a: 0x23a3, 0x111b: 0x239c, 0x111c: 0x23b8, 0x111d: 0x23aa, -+ 0x111e: 0x23b1, 0x111f: 0x23d4, 0x1120: 0x23d4, 0x1121: 0x23cd, 0x1122: 0x23db, 0x1123: 0x23db, -+ 0x1124: 0x2405, 0x1125: 0x2405, 0x1126: 0x2421, 0x1127: 0x23e9, 0x1128: 0x23e9, 0x1129: 0x23e2, -+ 0x112a: 0x23f7, 0x112b: 0x23f7, 0x112c: 0x23fe, 0x112d: 0x23fe, 0x112e: 0x2428, 0x112f: 0x2436, -+ 0x1130: 0x2436, 0x1131: 0x243d, 0x1132: 0x243d, 0x1133: 0x2444, 0x1134: 0x244b, 0x1135: 0x2452, -+ 0x1136: 0x2459, 0x1137: 0x2459, 0x1138: 0x2460, 0x1139: 0x246e, 0x113a: 0x247c, 0x113b: 0x2475, -+ 0x113c: 0x2483, 0x113d: 0x2483, 0x113e: 0x2498, 0x113f: 0x249f, -+ // Block 0x45, offset 0x1140 -+ 0x1140: 0x24d0, 0x1141: 0x24de, 0x1142: 0x24d7, 0x1143: 0x24bb, 0x1144: 0x24bb, 0x1145: 0x24e5, -+ 0x1146: 0x24e5, 0x1147: 0x24ec, 0x1148: 0x24ec, 0x1149: 0x2516, 0x114a: 0x251d, 0x114b: 0x2524, -+ 0x114c: 0x24fa, 0x114d: 0x2508, 0x114e: 0x252b, 0x114f: 0x2532, -+ 0x1152: 0x2501, 0x1153: 0x2586, 0x1154: 0x258d, 0x1155: 0x2563, 0x1156: 0x256a, 0x1157: 0x254e, -+ 0x1158: 0x254e, 0x1159: 0x2555, 0x115a: 0x257f, 0x115b: 0x2578, 0x115c: 0x25a2, 0x115d: 0x25a2, -+ 0x115e: 0x2310, 0x115f: 0x2325, 0x1160: 0x231e, 0x1161: 0x2348, 0x1162: 0x2341, 0x1163: 0x236b, -+ 0x1164: 0x2364, 0x1165: 0x238e, 0x1166: 0x2372, 0x1167: 0x2387, 0x1168: 0x23bf, 0x1169: 0x240c, -+ 0x116a: 0x23f0, 0x116b: 0x242f, 0x116c: 0x24c9, 0x116d: 0x24f3, 0x116e: 0x259b, 0x116f: 0x2594, -+ 0x1170: 0x25a9, 0x1171: 0x2540, 0x1172: 0x24a6, 0x1173: 0x2571, 0x1174: 0x2498, 0x1175: 0x24d0, -+ 0x1176: 0x2467, 0x1177: 0x24b4, 0x1178: 0x2547, 0x1179: 0x2539, 0x117a: 0x24c2, 0x117b: 0x24ad, -+ 0x117c: 0x24c2, 0x117d: 0x2547, 0x117e: 0x2379, 0x117f: 0x2395, -+ // Block 0x46, offset 0x1180 -+ 0x1180: 0x250f, 0x1181: 0x248a, 0x1182: 0x2309, 0x1183: 0x24ad, 0x1184: 0x2452, 0x1185: 0x2421, -+ 0x1186: 0x23c6, 0x1187: 0x255c, -+ 0x11b0: 0x241a, 0x11b1: 0x2491, 0x11b2: 0x27cc, 0x11b3: 0x27c3, 0x11b4: 0x27f9, 0x11b5: 0x27e7, -+ 0x11b6: 0x27d5, 0x11b7: 0x27f0, 0x11b8: 0x2802, 0x11b9: 0x2413, 0x11ba: 0x2c89, 0x11bb: 0x2b09, -+ 0x11bc: 0x27de, -+ // Block 0x47, offset 0x11c0 -+ 0x11d0: 0x0019, 0x11d1: 0x0486, -+ 0x11d2: 0x048a, 0x11d3: 0x0035, 0x11d4: 0x0037, 0x11d5: 0x0003, 0x11d6: 0x003f, 0x11d7: 0x04c2, -+ 0x11d8: 0x04c6, 0x11d9: 0x1b62, -+ 0x11e0: 0x8133, 0x11e1: 0x8133, 0x11e2: 0x8133, 0x11e3: 0x8133, -+ 0x11e4: 0x8133, 0x11e5: 0x8133, 0x11e6: 0x8133, 0x11e7: 0x812e, 0x11e8: 0x812e, 0x11e9: 0x812e, -+ 0x11ea: 0x812e, 0x11eb: 0x812e, 0x11ec: 0x812e, 0x11ed: 0x812e, 0x11ee: 0x8133, 0x11ef: 0x8133, -+ 0x11f0: 0x1876, 0x11f1: 0x0446, 0x11f2: 0x0442, 0x11f3: 0x007f, 0x11f4: 0x007f, 0x11f5: 0x0011, -+ 0x11f6: 0x0013, 0x11f7: 0x00b7, 0x11f8: 0x00bb, 0x11f9: 0x04ba, 0x11fa: 0x04be, 0x11fb: 0x04ae, -+ 0x11fc: 0x04b2, 0x11fd: 0x0496, 0x11fe: 0x049a, 0x11ff: 0x048e, -+ // Block 0x48, offset 0x1200 -+ 0x1200: 0x0492, 0x1201: 0x049e, 0x1202: 0x04a2, 0x1203: 0x04a6, 0x1204: 0x04aa, -+ 0x1207: 0x0077, 0x1208: 0x007b, 0x1209: 0x4280, 0x120a: 0x4280, 0x120b: 0x4280, -+ 0x120c: 0x4280, 0x120d: 0x007f, 0x120e: 0x007f, 0x120f: 0x007f, 0x1210: 0x0019, 0x1211: 0x0486, -+ 0x1212: 0x001d, 0x1214: 0x0037, 0x1215: 0x0035, 0x1216: 0x003f, 0x1217: 0x0003, -+ 0x1218: 0x0446, 0x1219: 0x0011, 0x121a: 0x0013, 0x121b: 0x00b7, 0x121c: 0x00bb, 0x121d: 0x04ba, -+ 0x121e: 0x04be, 0x121f: 0x0007, 0x1220: 0x000d, 0x1221: 0x0015, 0x1222: 0x0017, 0x1223: 0x001b, -+ 0x1224: 0x0039, 0x1225: 0x003d, 0x1226: 0x003b, 0x1228: 0x0079, 0x1229: 0x0009, -+ 0x122a: 0x000b, 0x122b: 0x0041, -+ 0x1230: 0x42c1, 0x1231: 0x4443, 0x1232: 0x42c6, 0x1234: 0x42cb, -+ 0x1236: 0x42d0, 0x1237: 0x4449, 0x1238: 0x42d5, 0x1239: 0x444f, 0x123a: 0x42da, 0x123b: 0x4455, -+ 0x123c: 0x42df, 0x123d: 0x445b, 0x123e: 0x42e4, 0x123f: 0x4461, -+ // Block 0x49, offset 0x1240 -+ 0x1240: 0x0239, 0x1241: 0x4425, 0x1242: 0x4425, 0x1243: 0x442b, 0x1244: 0x442b, 0x1245: 0x446d, -+ 0x1246: 0x446d, 0x1247: 0x4431, 0x1248: 0x4431, 0x1249: 0x4479, 0x124a: 0x4479, 0x124b: 0x4479, -+ 0x124c: 0x4479, 0x124d: 0x023c, 0x124e: 0x023c, 0x124f: 0x023f, 0x1250: 0x023f, 0x1251: 0x023f, -+ 0x1252: 0x023f, 0x1253: 0x0242, 0x1254: 0x0242, 0x1255: 0x0245, 0x1256: 0x0245, 0x1257: 0x0245, -+ 0x1258: 0x0245, 0x1259: 0x0248, 0x125a: 0x0248, 0x125b: 0x0248, 0x125c: 0x0248, 0x125d: 0x024b, -+ 0x125e: 0x024b, 0x125f: 0x024b, 0x1260: 0x024b, 0x1261: 0x024e, 0x1262: 0x024e, 0x1263: 0x024e, -+ 0x1264: 0x024e, 0x1265: 0x0251, 0x1266: 0x0251, 0x1267: 0x0251, 0x1268: 0x0251, 0x1269: 0x0254, -+ 0x126a: 0x0254, 0x126b: 0x0257, 0x126c: 0x0257, 0x126d: 0x025a, 0x126e: 0x025a, 0x126f: 0x025d, -+ 0x1270: 0x025d, 0x1271: 0x0260, 0x1272: 0x0260, 0x1273: 0x0260, 0x1274: 0x0260, 0x1275: 0x0263, -+ 0x1276: 0x0263, 0x1277: 0x0263, 0x1278: 0x0263, 0x1279: 0x0266, 0x127a: 0x0266, 0x127b: 0x0266, -+ 0x127c: 0x0266, 0x127d: 0x0269, 0x127e: 0x0269, 0x127f: 0x0269, -+ // Block 0x4a, offset 0x1280 -+ 0x1280: 0x0269, 0x1281: 0x026c, 0x1282: 0x026c, 0x1283: 0x026c, 0x1284: 0x026c, 0x1285: 0x026f, -+ 0x1286: 0x026f, 0x1287: 0x026f, 0x1288: 0x026f, 0x1289: 0x0272, 0x128a: 0x0272, 0x128b: 0x0272, -+ 0x128c: 0x0272, 0x128d: 0x0275, 0x128e: 0x0275, 0x128f: 0x0275, 0x1290: 0x0275, 0x1291: 0x0278, -+ 0x1292: 0x0278, 0x1293: 0x0278, 0x1294: 0x0278, 0x1295: 0x027b, 0x1296: 0x027b, 0x1297: 0x027b, -+ 0x1298: 0x027b, 0x1299: 0x027e, 0x129a: 0x027e, 0x129b: 0x027e, 0x129c: 0x027e, 0x129d: 0x0281, -+ 0x129e: 0x0281, 0x129f: 0x0281, 0x12a0: 0x0281, 0x12a1: 0x0284, 0x12a2: 0x0284, 0x12a3: 0x0284, -+ 0x12a4: 0x0284, 0x12a5: 0x0287, 0x12a6: 0x0287, 0x12a7: 0x0287, 0x12a8: 0x0287, 0x12a9: 0x028a, -+ 0x12aa: 0x028a, 0x12ab: 0x028a, 0x12ac: 0x028a, 0x12ad: 0x028d, 0x12ae: 0x028d, 0x12af: 0x0290, -+ 0x12b0: 0x0290, 0x12b1: 0x0293, 0x12b2: 0x0293, 0x12b3: 0x0293, 0x12b4: 0x0293, 0x12b5: 0x2e17, -+ 0x12b6: 0x2e17, 0x12b7: 0x2e1f, 0x12b8: 0x2e1f, 0x12b9: 0x2e27, 0x12ba: 0x2e27, 0x12bb: 0x1f88, -+ 0x12bc: 0x1f88, -+ // Block 0x4b, offset 0x12c0 -+ 0x12c0: 0x0081, 0x12c1: 0x0083, 0x12c2: 0x0085, 0x12c3: 0x0087, 0x12c4: 0x0089, 0x12c5: 0x008b, -+ 0x12c6: 0x008d, 0x12c7: 0x008f, 0x12c8: 0x0091, 0x12c9: 0x0093, 0x12ca: 0x0095, 0x12cb: 0x0097, -+ 0x12cc: 0x0099, 0x12cd: 0x009b, 0x12ce: 0x009d, 0x12cf: 0x009f, 0x12d0: 0x00a1, 0x12d1: 0x00a3, -+ 0x12d2: 0x00a5, 0x12d3: 0x00a7, 0x12d4: 0x00a9, 0x12d5: 0x00ab, 0x12d6: 0x00ad, 0x12d7: 0x00af, -+ 0x12d8: 0x00b1, 0x12d9: 0x00b3, 0x12da: 0x00b5, 0x12db: 0x00b7, 0x12dc: 0x00b9, 0x12dd: 0x00bb, -+ 0x12de: 0x00bd, 0x12df: 0x047a, 0x12e0: 0x047e, 0x12e1: 0x048a, 0x12e2: 0x049e, 0x12e3: 0x04a2, -+ 0x12e4: 0x0486, 0x12e5: 0x05ae, 0x12e6: 0x05a6, 0x12e7: 0x04ca, 0x12e8: 0x04d2, 0x12e9: 0x04da, -+ 0x12ea: 0x04e2, 0x12eb: 0x04ea, 0x12ec: 0x056e, 0x12ed: 0x0576, 0x12ee: 0x057e, 0x12ef: 0x0522, -+ 0x12f0: 0x05b2, 0x12f1: 0x04ce, 0x12f2: 0x04d6, 0x12f3: 0x04de, 0x12f4: 0x04e6, 0x12f5: 0x04ee, -+ 0x12f6: 0x04f2, 0x12f7: 0x04f6, 0x12f8: 0x04fa, 0x12f9: 0x04fe, 0x12fa: 0x0502, 0x12fb: 0x0506, -+ 0x12fc: 0x050a, 0x12fd: 0x050e, 0x12fe: 0x0512, 0x12ff: 0x0516, -+ // Block 0x4c, offset 0x1300 -+ 0x1300: 0x051a, 0x1301: 0x051e, 0x1302: 0x0526, 0x1303: 0x052a, 0x1304: 0x052e, 0x1305: 0x0532, -+ 0x1306: 0x0536, 0x1307: 0x053a, 0x1308: 0x053e, 0x1309: 0x0542, 0x130a: 0x0546, 0x130b: 0x054a, -+ 0x130c: 0x054e, 0x130d: 0x0552, 0x130e: 0x0556, 0x130f: 0x055a, 0x1310: 0x055e, 0x1311: 0x0562, -+ 0x1312: 0x0566, 0x1313: 0x056a, 0x1314: 0x0572, 0x1315: 0x057a, 0x1316: 0x0582, 0x1317: 0x0586, -+ 0x1318: 0x058a, 0x1319: 0x058e, 0x131a: 0x0592, 0x131b: 0x0596, 0x131c: 0x059a, 0x131d: 0x05aa, -+ 0x131e: 0x4a8f, 0x131f: 0x4a95, 0x1320: 0x03c6, 0x1321: 0x0316, 0x1322: 0x031a, 0x1323: 0x4a52, -+ 0x1324: 0x031e, 0x1325: 0x4a58, 0x1326: 0x4a5e, 0x1327: 0x0322, 0x1328: 0x0326, 0x1329: 0x032a, -+ 0x132a: 0x4a64, 0x132b: 0x4a6a, 0x132c: 0x4a70, 0x132d: 0x4a76, 0x132e: 0x4a7c, 0x132f: 0x4a82, -+ 0x1330: 0x036a, 0x1331: 0x032e, 0x1332: 0x0332, 0x1333: 0x0336, 0x1334: 0x037e, 0x1335: 0x033a, -+ 0x1336: 0x033e, 0x1337: 0x0342, 0x1338: 0x0346, 0x1339: 0x034a, 0x133a: 0x034e, 0x133b: 0x0352, -+ 0x133c: 0x0356, 0x133d: 0x035a, 0x133e: 0x035e, -+ // Block 0x4d, offset 0x1340 -+ 0x1342: 0x49d4, 0x1343: 0x49da, 0x1344: 0x49e0, 0x1345: 0x49e6, -+ 0x1346: 0x49ec, 0x1347: 0x49f2, 0x134a: 0x49f8, 0x134b: 0x49fe, -+ 0x134c: 0x4a04, 0x134d: 0x4a0a, 0x134e: 0x4a10, 0x134f: 0x4a16, -+ 0x1352: 0x4a1c, 0x1353: 0x4a22, 0x1354: 0x4a28, 0x1355: 0x4a2e, 0x1356: 0x4a34, 0x1357: 0x4a3a, -+ 0x135a: 0x4a40, 0x135b: 0x4a46, 0x135c: 0x4a4c, -+ 0x1360: 0x00bf, 0x1361: 0x00c2, 0x1362: 0x00cb, 0x1363: 0x427b, -+ 0x1364: 0x00c8, 0x1365: 0x00c5, 0x1366: 0x044a, 0x1368: 0x046e, 0x1369: 0x044e, -+ 0x136a: 0x0452, 0x136b: 0x0456, 0x136c: 0x045a, 0x136d: 0x0472, 0x136e: 0x0476, -+ // Block 0x4e, offset 0x1380 -+ 0x1380: 0x0063, 0x1381: 0x0065, 0x1382: 0x0067, 0x1383: 0x0069, 0x1384: 0x006b, 0x1385: 0x006d, -+ 0x1386: 0x006f, 0x1387: 0x0071, 0x1388: 0x0073, 0x1389: 0x0075, 0x138a: 0x0083, 0x138b: 0x0085, -+ 0x138c: 0x0087, 0x138d: 0x0089, 0x138e: 0x008b, 0x138f: 0x008d, 0x1390: 0x008f, 0x1391: 0x0091, -+ 0x1392: 0x0093, 0x1393: 0x0095, 0x1394: 0x0097, 0x1395: 0x0099, 0x1396: 0x009b, 0x1397: 0x009d, -+ 0x1398: 0x009f, 0x1399: 0x00a1, 0x139a: 0x00a3, 0x139b: 0x00a5, 0x139c: 0x00a7, 0x139d: 0x00a9, -+ 0x139e: 0x00ab, 0x139f: 0x00ad, 0x13a0: 0x00af, 0x13a1: 0x00b1, 0x13a2: 0x00b3, 0x13a3: 0x00b5, -+ 0x13a4: 0x00dd, 0x13a5: 0x00f2, 0x13a8: 0x0176, 0x13a9: 0x0179, -+ 0x13aa: 0x017c, 0x13ab: 0x017f, 0x13ac: 0x0182, 0x13ad: 0x0185, 0x13ae: 0x0188, 0x13af: 0x018b, -+ 0x13b0: 0x018e, 0x13b1: 0x0191, 0x13b2: 0x0194, 0x13b3: 0x0197, 0x13b4: 0x019a, 0x13b5: 0x019d, -+ 0x13b6: 0x01a0, 0x13b7: 0x01a3, 0x13b8: 0x01a6, 0x13b9: 0x018b, 0x13ba: 0x01a9, 0x13bb: 0x01ac, -+ 0x13bc: 0x01af, 0x13bd: 0x01b2, 0x13be: 0x01b5, 0x13bf: 0x01b8, -+ // Block 0x4f, offset 0x13c0 -+ 0x13c0: 0x0200, 0x13c1: 0x0203, 0x13c2: 0x0206, 0x13c3: 0x045e, 0x13c4: 0x01ca, 0x13c5: 0x01d3, -+ 0x13c6: 0x01d9, 0x13c7: 0x01fd, 0x13c8: 0x01ee, 0x13c9: 0x01eb, 0x13ca: 0x0209, 0x13cb: 0x020c, -+ 0x13ce: 0x0021, 0x13cf: 0x0023, 0x13d0: 0x0025, 0x13d1: 0x0027, -+ 0x13d2: 0x0029, 0x13d3: 0x002b, 0x13d4: 0x002d, 0x13d5: 0x002f, 0x13d6: 0x0031, 0x13d7: 0x0033, -+ 0x13d8: 0x0021, 0x13d9: 0x0023, 0x13da: 0x0025, 0x13db: 0x0027, 0x13dc: 0x0029, 0x13dd: 0x002b, -+ 0x13de: 0x002d, 0x13df: 0x002f, 0x13e0: 0x0031, 0x13e1: 0x0033, 0x13e2: 0x0021, 0x13e3: 0x0023, -+ 0x13e4: 0x0025, 0x13e5: 0x0027, 0x13e6: 0x0029, 0x13e7: 0x002b, 0x13e8: 0x002d, 0x13e9: 0x002f, -+ 0x13ea: 0x0031, 0x13eb: 0x0033, 0x13ec: 0x0021, 0x13ed: 0x0023, 0x13ee: 0x0025, 0x13ef: 0x0027, -+ 0x13f0: 0x0029, 0x13f1: 0x002b, 0x13f2: 0x002d, 0x13f3: 0x002f, 0x13f4: 0x0031, 0x13f5: 0x0033, -+ 0x13f6: 0x0021, 0x13f7: 0x0023, 0x13f8: 0x0025, 0x13f9: 0x0027, 0x13fa: 0x0029, 0x13fb: 0x002b, -+ 0x13fc: 0x002d, 0x13fd: 0x002f, 0x13fe: 0x0031, 0x13ff: 0x0033, -+ // Block 0x50, offset 0x1400 -+ 0x1400: 0x023c, 0x1401: 0x023f, 0x1402: 0x024b, 0x1403: 0x0254, 0x1405: 0x028d, -+ 0x1406: 0x025d, 0x1407: 0x024e, 0x1408: 0x026c, 0x1409: 0x0293, 0x140a: 0x027e, 0x140b: 0x0281, -+ 0x140c: 0x0284, 0x140d: 0x0287, 0x140e: 0x0260, 0x140f: 0x0272, 0x1410: 0x0278, 0x1411: 0x0266, -+ 0x1412: 0x027b, 0x1413: 0x025a, 0x1414: 0x0263, 0x1415: 0x0245, 0x1416: 0x0248, 0x1417: 0x0251, -+ 0x1418: 0x0257, 0x1419: 0x0269, 0x141a: 0x026f, 0x141b: 0x0275, 0x141c: 0x0296, 0x141d: 0x02e7, -+ 0x141e: 0x02cf, 0x141f: 0x0299, 0x1421: 0x023f, 0x1422: 0x024b, -+ 0x1424: 0x028a, 0x1427: 0x024e, 0x1429: 0x0293, -+ 0x142a: 0x027e, 0x142b: 0x0281, 0x142c: 0x0284, 0x142d: 0x0287, 0x142e: 0x0260, 0x142f: 0x0272, -+ 0x1430: 0x0278, 0x1431: 0x0266, 0x1432: 0x027b, 0x1434: 0x0263, 0x1435: 0x0245, -+ 0x1436: 0x0248, 0x1437: 0x0251, 0x1439: 0x0269, 0x143b: 0x0275, -+ // Block 0x51, offset 0x1440 -+ 0x1442: 0x024b, -+ 0x1447: 0x024e, 0x1449: 0x0293, 0x144b: 0x0281, -+ 0x144d: 0x0287, 0x144e: 0x0260, 0x144f: 0x0272, 0x1451: 0x0266, -+ 0x1452: 0x027b, 0x1454: 0x0263, 0x1457: 0x0251, -+ 0x1459: 0x0269, 0x145b: 0x0275, 0x145d: 0x02e7, -+ 0x145f: 0x0299, 0x1461: 0x023f, 0x1462: 0x024b, -+ 0x1464: 0x028a, 0x1467: 0x024e, 0x1468: 0x026c, 0x1469: 0x0293, -+ 0x146a: 0x027e, 0x146c: 0x0284, 0x146d: 0x0287, 0x146e: 0x0260, 0x146f: 0x0272, -+ 0x1470: 0x0278, 0x1471: 0x0266, 0x1472: 0x027b, 0x1474: 0x0263, 0x1475: 0x0245, -+ 0x1476: 0x0248, 0x1477: 0x0251, 0x1479: 0x0269, 0x147a: 0x026f, 0x147b: 0x0275, -+ 0x147c: 0x0296, 0x147e: 0x02cf, -+ // Block 0x52, offset 0x1480 -+ 0x1480: 0x023c, 0x1481: 0x023f, 0x1482: 0x024b, 0x1483: 0x0254, 0x1484: 0x028a, 0x1485: 0x028d, -+ 0x1486: 0x025d, 0x1487: 0x024e, 0x1488: 0x026c, 0x1489: 0x0293, 0x148b: 0x0281, -+ 0x148c: 0x0284, 0x148d: 0x0287, 0x148e: 0x0260, 0x148f: 0x0272, 0x1490: 0x0278, 0x1491: 0x0266, -+ 0x1492: 0x027b, 0x1493: 0x025a, 0x1494: 0x0263, 0x1495: 0x0245, 0x1496: 0x0248, 0x1497: 0x0251, -+ 0x1498: 0x0257, 0x1499: 0x0269, 0x149a: 0x026f, 0x149b: 0x0275, -+ 0x14a1: 0x023f, 0x14a2: 0x024b, 0x14a3: 0x0254, -+ 0x14a5: 0x028d, 0x14a6: 0x025d, 0x14a7: 0x024e, 0x14a8: 0x026c, 0x14a9: 0x0293, -+ 0x14ab: 0x0281, 0x14ac: 0x0284, 0x14ad: 0x0287, 0x14ae: 0x0260, 0x14af: 0x0272, -+ 0x14b0: 0x0278, 0x14b1: 0x0266, 0x14b2: 0x027b, 0x14b3: 0x025a, 0x14b4: 0x0263, 0x14b5: 0x0245, -+ 0x14b6: 0x0248, 0x14b7: 0x0251, 0x14b8: 0x0257, 0x14b9: 0x0269, 0x14ba: 0x026f, 0x14bb: 0x0275, -+ // Block 0x53, offset 0x14c0 -+ 0x14c0: 0x187c, 0x14c1: 0x1879, 0x14c2: 0x187f, 0x14c3: 0x18a3, 0x14c4: 0x18c7, 0x14c5: 0x18eb, -+ 0x14c6: 0x190f, 0x14c7: 0x1918, 0x14c8: 0x191e, 0x14c9: 0x1924, 0x14ca: 0x192a, -+ 0x14d0: 0x1a92, 0x14d1: 0x1a96, -+ 0x14d2: 0x1a9a, 0x14d3: 0x1a9e, 0x14d4: 0x1aa2, 0x14d5: 0x1aa6, 0x14d6: 0x1aaa, 0x14d7: 0x1aae, -+ 0x14d8: 0x1ab2, 0x14d9: 0x1ab6, 0x14da: 0x1aba, 0x14db: 0x1abe, 0x14dc: 0x1ac2, 0x14dd: 0x1ac6, -+ 0x14de: 0x1aca, 0x14df: 0x1ace, 0x14e0: 0x1ad2, 0x14e1: 0x1ad6, 0x14e2: 0x1ada, 0x14e3: 0x1ade, -+ 0x14e4: 0x1ae2, 0x14e5: 0x1ae6, 0x14e6: 0x1aea, 0x14e7: 0x1aee, 0x14e8: 0x1af2, 0x14e9: 0x1af6, -+ 0x14ea: 0x272b, 0x14eb: 0x0047, 0x14ec: 0x0065, 0x14ed: 0x193f, 0x14ee: 0x19b7, -+ 0x14f0: 0x0043, 0x14f1: 0x0045, 0x14f2: 0x0047, 0x14f3: 0x0049, 0x14f4: 0x004b, 0x14f5: 0x004d, -+ 0x14f6: 0x004f, 0x14f7: 0x0051, 0x14f8: 0x0053, 0x14f9: 0x0055, 0x14fa: 0x0057, 0x14fb: 0x0059, -+ 0x14fc: 0x005b, 0x14fd: 0x005d, 0x14fe: 0x005f, 0x14ff: 0x0061, -+ // Block 0x54, offset 0x1500 -+ 0x1500: 0x26b3, 0x1501: 0x26c8, 0x1502: 0x0506, -+ 0x1510: 0x0c12, 0x1511: 0x0a4a, -+ 0x1512: 0x08d6, 0x1513: 0x45db, 0x1514: 0x071e, 0x1515: 0x09f2, 0x1516: 0x1332, 0x1517: 0x0a02, -+ 0x1518: 0x072a, 0x1519: 0x0cda, 0x151a: 0x0eb2, 0x151b: 0x0cb2, 0x151c: 0x082a, 0x151d: 0x0b6e, -+ 0x151e: 0x07c2, 0x151f: 0x0cba, 0x1520: 0x0816, 0x1521: 0x111a, 0x1522: 0x0f86, 0x1523: 0x138e, -+ 0x1524: 0x09d6, 0x1525: 0x090e, 0x1526: 0x0e66, 0x1527: 0x0c1e, 0x1528: 0x0c4a, 0x1529: 0x06c2, -+ 0x152a: 0x06ce, 0x152b: 0x140e, 0x152c: 0x0ade, 0x152d: 0x06ea, 0x152e: 0x08f2, 0x152f: 0x0c3e, -+ 0x1530: 0x13b6, 0x1531: 0x0c16, 0x1532: 0x1072, 0x1533: 0x10ae, 0x1534: 0x08fa, 0x1535: 0x0e46, -+ 0x1536: 0x0d0e, 0x1537: 0x0d0a, 0x1538: 0x0f9a, 0x1539: 0x082e, 0x153a: 0x095a, 0x153b: 0x1446, -+ // Block 0x55, offset 0x1540 -+ 0x1540: 0x06fe, 0x1541: 0x06f6, 0x1542: 0x0706, 0x1543: 0x164a, 0x1544: 0x074a, 0x1545: 0x075a, -+ 0x1546: 0x075e, 0x1547: 0x0766, 0x1548: 0x076e, 0x1549: 0x0772, 0x154a: 0x077e, 0x154b: 0x0776, -+ 0x154c: 0x05b6, 0x154d: 0x165e, 0x154e: 0x0792, 0x154f: 0x0796, 0x1550: 0x079a, 0x1551: 0x07b6, -+ 0x1552: 0x164f, 0x1553: 0x05ba, 0x1554: 0x07a2, 0x1555: 0x07c2, 0x1556: 0x1659, 0x1557: 0x07d2, -+ 0x1558: 0x07da, 0x1559: 0x073a, 0x155a: 0x07e2, 0x155b: 0x07e6, 0x155c: 0x1834, 0x155d: 0x0802, -+ 0x155e: 0x080a, 0x155f: 0x05c2, 0x1560: 0x0822, 0x1561: 0x0826, 0x1562: 0x082e, 0x1563: 0x0832, -+ 0x1564: 0x05c6, 0x1565: 0x084a, 0x1566: 0x084e, 0x1567: 0x085a, 0x1568: 0x0866, 0x1569: 0x086a, -+ 0x156a: 0x086e, 0x156b: 0x0876, 0x156c: 0x0896, 0x156d: 0x089a, 0x156e: 0x08a2, 0x156f: 0x08b2, -+ 0x1570: 0x08ba, 0x1571: 0x08be, 0x1572: 0x08be, 0x1573: 0x08be, 0x1574: 0x166d, 0x1575: 0x0e96, -+ 0x1576: 0x08d2, 0x1577: 0x08da, 0x1578: 0x1672, 0x1579: 0x08e6, 0x157a: 0x08ee, 0x157b: 0x08f6, -+ 0x157c: 0x091e, 0x157d: 0x090a, 0x157e: 0x0916, 0x157f: 0x091a, -+ // Block 0x56, offset 0x1580 -+ 0x1580: 0x0922, 0x1581: 0x092a, 0x1582: 0x092e, 0x1583: 0x0936, 0x1584: 0x093e, 0x1585: 0x0942, -+ 0x1586: 0x0942, 0x1587: 0x094a, 0x1588: 0x0952, 0x1589: 0x0956, 0x158a: 0x0962, 0x158b: 0x0986, -+ 0x158c: 0x096a, 0x158d: 0x098a, 0x158e: 0x096e, 0x158f: 0x0976, 0x1590: 0x080e, 0x1591: 0x09d2, -+ 0x1592: 0x099a, 0x1593: 0x099e, 0x1594: 0x09a2, 0x1595: 0x0996, 0x1596: 0x09aa, 0x1597: 0x09a6, -+ 0x1598: 0x09be, 0x1599: 0x1677, 0x159a: 0x09da, 0x159b: 0x09de, 0x159c: 0x09e6, 0x159d: 0x09f2, -+ 0x159e: 0x09fa, 0x159f: 0x0a16, 0x15a0: 0x167c, 0x15a1: 0x1681, 0x15a2: 0x0a22, 0x15a3: 0x0a26, -+ 0x15a4: 0x0a2a, 0x15a5: 0x0a1e, 0x15a6: 0x0a32, 0x15a7: 0x05ca, 0x15a8: 0x05ce, 0x15a9: 0x0a3a, -+ 0x15aa: 0x0a42, 0x15ab: 0x0a42, 0x15ac: 0x1686, 0x15ad: 0x0a5e, 0x15ae: 0x0a62, 0x15af: 0x0a66, -+ 0x15b0: 0x0a6e, 0x15b1: 0x168b, 0x15b2: 0x0a76, 0x15b3: 0x0a7a, 0x15b4: 0x0b52, 0x15b5: 0x0a82, -+ 0x15b6: 0x05d2, 0x15b7: 0x0a8e, 0x15b8: 0x0a9e, 0x15b9: 0x0aaa, 0x15ba: 0x0aa6, 0x15bb: 0x1695, -+ 0x15bc: 0x0ab2, 0x15bd: 0x169a, 0x15be: 0x0abe, 0x15bf: 0x0aba, -+ // Block 0x57, offset 0x15c0 -+ 0x15c0: 0x0ac2, 0x15c1: 0x0ad2, 0x15c2: 0x0ad6, 0x15c3: 0x05d6, 0x15c4: 0x0ae6, 0x15c5: 0x0aee, -+ 0x15c6: 0x0af2, 0x15c7: 0x0af6, 0x15c8: 0x05da, 0x15c9: 0x169f, 0x15ca: 0x05de, 0x15cb: 0x0b12, -+ 0x15cc: 0x0b16, 0x15cd: 0x0b1a, 0x15ce: 0x0b22, 0x15cf: 0x1866, 0x15d0: 0x0b3a, 0x15d1: 0x16a9, -+ 0x15d2: 0x16a9, 0x15d3: 0x11da, 0x15d4: 0x0b4a, 0x15d5: 0x0b4a, 0x15d6: 0x05e2, 0x15d7: 0x16cc, -+ 0x15d8: 0x179e, 0x15d9: 0x0b5a, 0x15da: 0x0b62, 0x15db: 0x05e6, 0x15dc: 0x0b76, 0x15dd: 0x0b86, -+ 0x15de: 0x0b8a, 0x15df: 0x0b92, 0x15e0: 0x0ba2, 0x15e1: 0x05ee, 0x15e2: 0x05ea, 0x15e3: 0x0ba6, -+ 0x15e4: 0x16ae, 0x15e5: 0x0baa, 0x15e6: 0x0bbe, 0x15e7: 0x0bc2, 0x15e8: 0x0bc6, 0x15e9: 0x0bc2, -+ 0x15ea: 0x0bd2, 0x15eb: 0x0bd6, 0x15ec: 0x0be6, 0x15ed: 0x0bde, 0x15ee: 0x0be2, 0x15ef: 0x0bea, -+ 0x15f0: 0x0bee, 0x15f1: 0x0bf2, 0x15f2: 0x0bfe, 0x15f3: 0x0c02, 0x15f4: 0x0c1a, 0x15f5: 0x0c22, -+ 0x15f6: 0x0c32, 0x15f7: 0x0c46, 0x15f8: 0x16bd, 0x15f9: 0x0c42, 0x15fa: 0x0c36, 0x15fb: 0x0c4e, -+ 0x15fc: 0x0c56, 0x15fd: 0x0c6a, 0x15fe: 0x16c2, 0x15ff: 0x0c72, -+ // Block 0x58, offset 0x1600 -+ 0x1600: 0x0c66, 0x1601: 0x0c5e, 0x1602: 0x05f2, 0x1603: 0x0c7a, 0x1604: 0x0c82, 0x1605: 0x0c8a, -+ 0x1606: 0x0c7e, 0x1607: 0x05f6, 0x1608: 0x0c9a, 0x1609: 0x0ca2, 0x160a: 0x16c7, 0x160b: 0x0cce, -+ 0x160c: 0x0d02, 0x160d: 0x0cde, 0x160e: 0x0602, 0x160f: 0x0cea, 0x1610: 0x05fe, 0x1611: 0x05fa, -+ 0x1612: 0x07c6, 0x1613: 0x07ca, 0x1614: 0x0d06, 0x1615: 0x0cee, 0x1616: 0x11ae, 0x1617: 0x0666, -+ 0x1618: 0x0d12, 0x1619: 0x0d16, 0x161a: 0x0d1a, 0x161b: 0x0d2e, 0x161c: 0x0d26, 0x161d: 0x16e0, -+ 0x161e: 0x0606, 0x161f: 0x0d42, 0x1620: 0x0d36, 0x1621: 0x0d52, 0x1622: 0x0d5a, 0x1623: 0x16ea, -+ 0x1624: 0x0d5e, 0x1625: 0x0d4a, 0x1626: 0x0d66, 0x1627: 0x060a, 0x1628: 0x0d6a, 0x1629: 0x0d6e, -+ 0x162a: 0x0d72, 0x162b: 0x0d7e, 0x162c: 0x16ef, 0x162d: 0x0d86, 0x162e: 0x060e, 0x162f: 0x0d92, -+ 0x1630: 0x16f4, 0x1631: 0x0d96, 0x1632: 0x0612, 0x1633: 0x0da2, 0x1634: 0x0dae, 0x1635: 0x0dba, -+ 0x1636: 0x0dbe, 0x1637: 0x16f9, 0x1638: 0x1690, 0x1639: 0x16fe, 0x163a: 0x0dde, 0x163b: 0x1703, -+ 0x163c: 0x0dea, 0x163d: 0x0df2, 0x163e: 0x0de2, 0x163f: 0x0dfe, -+ // Block 0x59, offset 0x1640 -+ 0x1640: 0x0e0e, 0x1641: 0x0e1e, 0x1642: 0x0e12, 0x1643: 0x0e16, 0x1644: 0x0e22, 0x1645: 0x0e26, -+ 0x1646: 0x1708, 0x1647: 0x0e0a, 0x1648: 0x0e3e, 0x1649: 0x0e42, 0x164a: 0x0616, 0x164b: 0x0e56, -+ 0x164c: 0x0e52, 0x164d: 0x170d, 0x164e: 0x0e36, 0x164f: 0x0e72, 0x1650: 0x1712, 0x1651: 0x1717, -+ 0x1652: 0x0e76, 0x1653: 0x0e8a, 0x1654: 0x0e86, 0x1655: 0x0e82, 0x1656: 0x061a, 0x1657: 0x0e8e, -+ 0x1658: 0x0e9e, 0x1659: 0x0e9a, 0x165a: 0x0ea6, 0x165b: 0x1654, 0x165c: 0x0eb6, 0x165d: 0x171c, -+ 0x165e: 0x0ec2, 0x165f: 0x1726, 0x1660: 0x0ed6, 0x1661: 0x0ee2, 0x1662: 0x0ef6, 0x1663: 0x172b, -+ 0x1664: 0x0f0a, 0x1665: 0x0f0e, 0x1666: 0x1730, 0x1667: 0x1735, 0x1668: 0x0f2a, 0x1669: 0x0f3a, -+ 0x166a: 0x061e, 0x166b: 0x0f3e, 0x166c: 0x0622, 0x166d: 0x0622, 0x166e: 0x0f56, 0x166f: 0x0f5a, -+ 0x1670: 0x0f62, 0x1671: 0x0f66, 0x1672: 0x0f72, 0x1673: 0x0626, 0x1674: 0x0f8a, 0x1675: 0x173a, -+ 0x1676: 0x0fa6, 0x1677: 0x173f, 0x1678: 0x0fb2, 0x1679: 0x16a4, 0x167a: 0x0fc2, 0x167b: 0x1744, -+ 0x167c: 0x1749, 0x167d: 0x174e, 0x167e: 0x062a, 0x167f: 0x062e, -+ // Block 0x5a, offset 0x1680 -+ 0x1680: 0x0ffa, 0x1681: 0x1758, 0x1682: 0x1753, 0x1683: 0x175d, 0x1684: 0x1762, 0x1685: 0x1002, -+ 0x1686: 0x1006, 0x1687: 0x1006, 0x1688: 0x100e, 0x1689: 0x0636, 0x168a: 0x1012, 0x168b: 0x063a, -+ 0x168c: 0x063e, 0x168d: 0x176c, 0x168e: 0x1026, 0x168f: 0x102e, 0x1690: 0x103a, 0x1691: 0x0642, -+ 0x1692: 0x1771, 0x1693: 0x105e, 0x1694: 0x1776, 0x1695: 0x177b, 0x1696: 0x107e, 0x1697: 0x1096, -+ 0x1698: 0x0646, 0x1699: 0x109e, 0x169a: 0x10a2, 0x169b: 0x10a6, 0x169c: 0x1780, 0x169d: 0x1785, -+ 0x169e: 0x1785, 0x169f: 0x10be, 0x16a0: 0x064a, 0x16a1: 0x178a, 0x16a2: 0x10d2, 0x16a3: 0x10d6, -+ 0x16a4: 0x064e, 0x16a5: 0x178f, 0x16a6: 0x10f2, 0x16a7: 0x0652, 0x16a8: 0x1102, 0x16a9: 0x10fa, -+ 0x16aa: 0x110a, 0x16ab: 0x1799, 0x16ac: 0x1122, 0x16ad: 0x0656, 0x16ae: 0x112e, 0x16af: 0x1136, -+ 0x16b0: 0x1146, 0x16b1: 0x065a, 0x16b2: 0x17a3, 0x16b3: 0x17a8, 0x16b4: 0x065e, 0x16b5: 0x17ad, -+ 0x16b6: 0x115e, 0x16b7: 0x17b2, 0x16b8: 0x116a, 0x16b9: 0x1176, 0x16ba: 0x117e, 0x16bb: 0x17b7, -+ 0x16bc: 0x17bc, 0x16bd: 0x1192, 0x16be: 0x17c1, 0x16bf: 0x119a, -+ // Block 0x5b, offset 0x16c0 -+ 0x16c0: 0x16d1, 0x16c1: 0x0662, 0x16c2: 0x11b2, 0x16c3: 0x11b6, 0x16c4: 0x066a, 0x16c5: 0x11ba, -+ 0x16c6: 0x0a36, 0x16c7: 0x17c6, 0x16c8: 0x17cb, 0x16c9: 0x16d6, 0x16ca: 0x16db, 0x16cb: 0x11da, -+ 0x16cc: 0x11de, 0x16cd: 0x13f6, 0x16ce: 0x066e, 0x16cf: 0x120a, 0x16d0: 0x1206, 0x16d1: 0x120e, -+ 0x16d2: 0x0842, 0x16d3: 0x1212, 0x16d4: 0x1216, 0x16d5: 0x121a, 0x16d6: 0x1222, 0x16d7: 0x17d0, -+ 0x16d8: 0x121e, 0x16d9: 0x1226, 0x16da: 0x123a, 0x16db: 0x123e, 0x16dc: 0x122a, 0x16dd: 0x1242, -+ 0x16de: 0x1256, 0x16df: 0x126a, 0x16e0: 0x1236, 0x16e1: 0x124a, 0x16e2: 0x124e, 0x16e3: 0x1252, -+ 0x16e4: 0x17d5, 0x16e5: 0x17df, 0x16e6: 0x17da, 0x16e7: 0x0672, 0x16e8: 0x1272, 0x16e9: 0x1276, -+ 0x16ea: 0x127e, 0x16eb: 0x17f3, 0x16ec: 0x1282, 0x16ed: 0x17e4, 0x16ee: 0x0676, 0x16ef: 0x067a, -+ 0x16f0: 0x17e9, 0x16f1: 0x17ee, 0x16f2: 0x067e, 0x16f3: 0x12a2, 0x16f4: 0x12a6, 0x16f5: 0x12aa, -+ 0x16f6: 0x12ae, 0x16f7: 0x12ba, 0x16f8: 0x12b6, 0x16f9: 0x12c2, 0x16fa: 0x12be, 0x16fb: 0x12ce, -+ 0x16fc: 0x12c6, 0x16fd: 0x12ca, 0x16fe: 0x12d2, 0x16ff: 0x0682, -+ // Block 0x5c, offset 0x1700 -+ 0x1700: 0x12da, 0x1701: 0x12de, 0x1702: 0x0686, 0x1703: 0x12ee, 0x1704: 0x12f2, 0x1705: 0x17f8, -+ 0x1706: 0x12fe, 0x1707: 0x1302, 0x1708: 0x068a, 0x1709: 0x130e, 0x170a: 0x05be, 0x170b: 0x17fd, -+ 0x170c: 0x1802, 0x170d: 0x068e, 0x170e: 0x0692, 0x170f: 0x133a, 0x1710: 0x1352, 0x1711: 0x136e, -+ 0x1712: 0x137e, 0x1713: 0x1807, 0x1714: 0x1392, 0x1715: 0x1396, 0x1716: 0x13ae, 0x1717: 0x13ba, -+ 0x1718: 0x1811, 0x1719: 0x1663, 0x171a: 0x13c6, 0x171b: 0x13c2, 0x171c: 0x13ce, 0x171d: 0x1668, -+ 0x171e: 0x13da, 0x171f: 0x13e6, 0x1720: 0x1816, 0x1721: 0x181b, 0x1722: 0x1426, 0x1723: 0x1432, -+ 0x1724: 0x143a, 0x1725: 0x1820, 0x1726: 0x143e, 0x1727: 0x146a, 0x1728: 0x1476, 0x1729: 0x147a, -+ 0x172a: 0x1472, 0x172b: 0x1486, 0x172c: 0x148a, 0x172d: 0x1825, 0x172e: 0x1496, 0x172f: 0x0696, -+ 0x1730: 0x149e, 0x1731: 0x182a, 0x1732: 0x069a, 0x1733: 0x14d6, 0x1734: 0x0ac6, 0x1735: 0x14ee, -+ 0x1736: 0x182f, 0x1737: 0x1839, 0x1738: 0x069e, 0x1739: 0x06a2, 0x173a: 0x1516, 0x173b: 0x183e, -+ 0x173c: 0x06a6, 0x173d: 0x1843, 0x173e: 0x152e, 0x173f: 0x152e, -+ // Block 0x5d, offset 0x1740 -+ 0x1740: 0x1536, 0x1741: 0x1848, 0x1742: 0x154e, 0x1743: 0x06aa, 0x1744: 0x155e, 0x1745: 0x156a, -+ 0x1746: 0x1572, 0x1747: 0x157a, 0x1748: 0x06ae, 0x1749: 0x184d, 0x174a: 0x158e, 0x174b: 0x15aa, -+ 0x174c: 0x15b6, 0x174d: 0x06b2, 0x174e: 0x06b6, 0x174f: 0x15ba, 0x1750: 0x1852, 0x1751: 0x06ba, -+ 0x1752: 0x1857, 0x1753: 0x185c, 0x1754: 0x1861, 0x1755: 0x15de, 0x1756: 0x06be, 0x1757: 0x15f2, -+ 0x1758: 0x15fa, 0x1759: 0x15fe, 0x175a: 0x1606, 0x175b: 0x160e, 0x175c: 0x1616, 0x175d: 0x186b, -+} -+ -+// nfkcIndex: 22 blocks, 1408 entries, 2816 bytes -+// Block 0 is the zero block. -+var nfkcIndex = [1408]uint16{ -+ // Block 0x0, offset 0x0 -+ // Block 0x1, offset 0x40 -+ // Block 0x2, offset 0x80 -+ // Block 0x3, offset 0xc0 -+ 0xc2: 0x5c, 0xc3: 0x01, 0xc4: 0x02, 0xc5: 0x03, 0xc6: 0x5d, 0xc7: 0x04, -+ 0xc8: 0x05, 0xca: 0x5e, 0xcb: 0x5f, 0xcc: 0x06, 0xcd: 0x07, 0xce: 0x08, 0xcf: 0x09, -+ 0xd0: 0x0a, 0xd1: 0x60, 0xd2: 0x61, 0xd3: 0x0b, 0xd6: 0x0c, 0xd7: 0x62, -+ 0xd8: 0x63, 0xd9: 0x0d, 0xdb: 0x64, 0xdc: 0x65, 0xdd: 0x66, 0xdf: 0x67, -+ 0xe0: 0x02, 0xe1: 0x03, 0xe2: 0x04, 0xe3: 0x05, -+ 0xea: 0x06, 0xeb: 0x07, 0xec: 0x08, 0xed: 0x09, 0xef: 0x0a, -+ 0xf0: 0x13, -+ // Block 0x4, offset 0x100 -+ 0x120: 0x68, 0x121: 0x69, 0x123: 0x0e, 0x124: 0x6a, 0x125: 0x6b, 0x126: 0x6c, 0x127: 0x6d, -+ 0x128: 0x6e, 0x129: 0x6f, 0x12a: 0x70, 0x12b: 0x71, 0x12c: 0x6c, 0x12d: 0x72, 0x12e: 0x73, 0x12f: 0x74, -+ 0x131: 0x75, 0x132: 0x76, 0x133: 0x77, 0x134: 0x78, 0x135: 0x79, 0x137: 0x7a, -+ 0x138: 0x7b, 0x139: 0x7c, 0x13a: 0x7d, 0x13b: 0x7e, 0x13c: 0x7f, 0x13d: 0x80, 0x13e: 0x81, 0x13f: 0x82, -+ // Block 0x5, offset 0x140 -+ 0x140: 0x83, 0x142: 0x84, 0x143: 0x85, 0x144: 0x86, 0x145: 0x87, 0x146: 0x88, 0x147: 0x89, -+ 0x14d: 0x8a, -+ 0x15c: 0x8b, 0x15f: 0x8c, -+ 0x162: 0x8d, 0x164: 0x8e, -+ 0x168: 0x8f, 0x169: 0x90, 0x16a: 0x91, 0x16b: 0x92, 0x16c: 0x0f, 0x16d: 0x93, 0x16e: 0x94, 0x16f: 0x95, -+ 0x170: 0x96, 0x173: 0x97, 0x174: 0x98, 0x175: 0x10, 0x176: 0x11, 0x177: 0x12, -+ 0x178: 0x13, 0x179: 0x14, 0x17a: 0x15, 0x17b: 0x16, 0x17c: 0x17, 0x17d: 0x18, 0x17e: 0x19, 0x17f: 0x1a, -+ // Block 0x6, offset 0x180 -+ 0x180: 0x99, 0x181: 0x9a, 0x182: 0x9b, 0x183: 0x9c, 0x184: 0x1b, 0x185: 0x1c, 0x186: 0x9d, 0x187: 0x9e, -+ 0x188: 0x9f, 0x189: 0x1d, 0x18a: 0x1e, 0x18b: 0xa0, 0x18c: 0xa1, -+ 0x191: 0x1f, 0x192: 0x20, 0x193: 0xa2, -+ 0x1a8: 0xa3, 0x1a9: 0xa4, 0x1ab: 0xa5, -+ 0x1b1: 0xa6, 0x1b3: 0xa7, 0x1b5: 0xa8, 0x1b7: 0xa9, -+ 0x1ba: 0xaa, 0x1bb: 0xab, 0x1bc: 0x21, 0x1bd: 0x22, 0x1be: 0x23, 0x1bf: 0xac, -+ // Block 0x7, offset 0x1c0 -+ 0x1c0: 0xad, 0x1c1: 0x24, 0x1c2: 0x25, 0x1c3: 0x26, 0x1c4: 0xae, 0x1c5: 0x27, 0x1c6: 0x28, -+ 0x1c8: 0x29, 0x1c9: 0x2a, 0x1ca: 0x2b, 0x1cb: 0x2c, 0x1cc: 0x2d, 0x1cd: 0x2e, 0x1ce: 0x2f, 0x1cf: 0x30, -+ // Block 0x8, offset 0x200 -+ 0x219: 0xaf, 0x21a: 0xb0, 0x21b: 0xb1, 0x21d: 0xb2, 0x21f: 0xb3, -+ 0x220: 0xb4, 0x223: 0xb5, 0x224: 0xb6, 0x225: 0xb7, 0x226: 0xb8, 0x227: 0xb9, -+ 0x22a: 0xba, 0x22b: 0xbb, 0x22d: 0xbc, 0x22f: 0xbd, -+ 0x230: 0xbe, 0x231: 0xbf, 0x232: 0xc0, 0x233: 0xc1, 0x234: 0xc2, 0x235: 0xc3, 0x236: 0xc4, 0x237: 0xbe, -+ 0x238: 0xbf, 0x239: 0xc0, 0x23a: 0xc1, 0x23b: 0xc2, 0x23c: 0xc3, 0x23d: 0xc4, 0x23e: 0xbe, 0x23f: 0xbf, -+ // Block 0x9, offset 0x240 -+ 0x240: 0xc0, 0x241: 0xc1, 0x242: 0xc2, 0x243: 0xc3, 0x244: 0xc4, 0x245: 0xbe, 0x246: 0xbf, 0x247: 0xc0, -+ 0x248: 0xc1, 0x249: 0xc2, 0x24a: 0xc3, 0x24b: 0xc4, 0x24c: 0xbe, 0x24d: 0xbf, 0x24e: 0xc0, 0x24f: 0xc1, -+ 0x250: 0xc2, 0x251: 0xc3, 0x252: 0xc4, 0x253: 0xbe, 0x254: 0xbf, 0x255: 0xc0, 0x256: 0xc1, 0x257: 0xc2, -+ 0x258: 0xc3, 0x259: 0xc4, 0x25a: 0xbe, 0x25b: 0xbf, 0x25c: 0xc0, 0x25d: 0xc1, 0x25e: 0xc2, 0x25f: 0xc3, -+ 0x260: 0xc4, 0x261: 0xbe, 0x262: 0xbf, 0x263: 0xc0, 0x264: 0xc1, 0x265: 0xc2, 0x266: 0xc3, 0x267: 0xc4, -+ 0x268: 0xbe, 0x269: 0xbf, 0x26a: 0xc0, 0x26b: 0xc1, 0x26c: 0xc2, 0x26d: 0xc3, 0x26e: 0xc4, 0x26f: 0xbe, -+ 0x270: 0xbf, 0x271: 0xc0, 0x272: 0xc1, 0x273: 0xc2, 0x274: 0xc3, 0x275: 0xc4, 0x276: 0xbe, 0x277: 0xbf, -+ 0x278: 0xc0, 0x279: 0xc1, 0x27a: 0xc2, 0x27b: 0xc3, 0x27c: 0xc4, 0x27d: 0xbe, 0x27e: 0xbf, 0x27f: 0xc0, -+ // Block 0xa, offset 0x280 -+ 0x280: 0xc1, 0x281: 0xc2, 0x282: 0xc3, 0x283: 0xc4, 0x284: 0xbe, 0x285: 0xbf, 0x286: 0xc0, 0x287: 0xc1, -+ 0x288: 0xc2, 0x289: 0xc3, 0x28a: 0xc4, 0x28b: 0xbe, 0x28c: 0xbf, 0x28d: 0xc0, 0x28e: 0xc1, 0x28f: 0xc2, -+ 0x290: 0xc3, 0x291: 0xc4, 0x292: 0xbe, 0x293: 0xbf, 0x294: 0xc0, 0x295: 0xc1, 0x296: 0xc2, 0x297: 0xc3, -+ 0x298: 0xc4, 0x299: 0xbe, 0x29a: 0xbf, 0x29b: 0xc0, 0x29c: 0xc1, 0x29d: 0xc2, 0x29e: 0xc3, 0x29f: 0xc4, -+ 0x2a0: 0xbe, 0x2a1: 0xbf, 0x2a2: 0xc0, 0x2a3: 0xc1, 0x2a4: 0xc2, 0x2a5: 0xc3, 0x2a6: 0xc4, 0x2a7: 0xbe, -+ 0x2a8: 0xbf, 0x2a9: 0xc0, 0x2aa: 0xc1, 0x2ab: 0xc2, 0x2ac: 0xc3, 0x2ad: 0xc4, 0x2ae: 0xbe, 0x2af: 0xbf, -+ 0x2b0: 0xc0, 0x2b1: 0xc1, 0x2b2: 0xc2, 0x2b3: 0xc3, 0x2b4: 0xc4, 0x2b5: 0xbe, 0x2b6: 0xbf, 0x2b7: 0xc0, -+ 0x2b8: 0xc1, 0x2b9: 0xc2, 0x2ba: 0xc3, 0x2bb: 0xc4, 0x2bc: 0xbe, 0x2bd: 0xbf, 0x2be: 0xc0, 0x2bf: 0xc1, -+ // Block 0xb, offset 0x2c0 -+ 0x2c0: 0xc2, 0x2c1: 0xc3, 0x2c2: 0xc4, 0x2c3: 0xbe, 0x2c4: 0xbf, 0x2c5: 0xc0, 0x2c6: 0xc1, 0x2c7: 0xc2, -+ 0x2c8: 0xc3, 0x2c9: 0xc4, 0x2ca: 0xbe, 0x2cb: 0xbf, 0x2cc: 0xc0, 0x2cd: 0xc1, 0x2ce: 0xc2, 0x2cf: 0xc3, -+ 0x2d0: 0xc4, 0x2d1: 0xbe, 0x2d2: 0xbf, 0x2d3: 0xc0, 0x2d4: 0xc1, 0x2d5: 0xc2, 0x2d6: 0xc3, 0x2d7: 0xc4, -+ 0x2d8: 0xbe, 0x2d9: 0xbf, 0x2da: 0xc0, 0x2db: 0xc1, 0x2dc: 0xc2, 0x2dd: 0xc3, 0x2de: 0xc5, -+ // Block 0xc, offset 0x300 -+ 0x324: 0x31, 0x325: 0x32, 0x326: 0x33, 0x327: 0x34, -+ 0x328: 0x35, 0x329: 0x36, 0x32a: 0x37, 0x32b: 0x38, 0x32c: 0x39, 0x32d: 0x3a, 0x32e: 0x3b, 0x32f: 0x3c, -+ 0x330: 0x3d, 0x331: 0x3e, 0x332: 0x3f, 0x333: 0x40, 0x334: 0x41, 0x335: 0x42, 0x336: 0x43, 0x337: 0x44, -+ 0x338: 0x45, 0x339: 0x46, 0x33a: 0x47, 0x33b: 0x48, 0x33c: 0xc6, 0x33d: 0x49, 0x33e: 0x4a, 0x33f: 0x4b, -+ // Block 0xd, offset 0x340 -+ 0x347: 0xc7, -+ 0x34b: 0xc8, 0x34d: 0xc9, -+ 0x368: 0xca, 0x36b: 0xcb, -+ 0x374: 0xcc, -+ 0x37a: 0xcd, 0x37d: 0xce, -+ // Block 0xe, offset 0x380 -+ 0x381: 0xcf, 0x382: 0xd0, 0x384: 0xd1, 0x385: 0xb8, 0x387: 0xd2, -+ 0x388: 0xd3, 0x38b: 0xd4, 0x38c: 0xd5, 0x38d: 0xd6, -+ 0x391: 0xd7, 0x392: 0xd8, 0x393: 0xd9, 0x396: 0xda, 0x397: 0xdb, -+ 0x398: 0xdc, 0x39a: 0xdd, 0x39c: 0xde, -+ 0x3a0: 0xdf, 0x3a4: 0xe0, 0x3a5: 0xe1, 0x3a7: 0xe2, -+ 0x3a8: 0xe3, 0x3a9: 0xe4, 0x3aa: 0xe5, -+ 0x3b0: 0xdc, 0x3b5: 0xe6, 0x3b6: 0xe7, -+ // Block 0xf, offset 0x3c0 -+ 0x3eb: 0xe8, 0x3ec: 0xe9, -+ 0x3ff: 0xea, -+ // Block 0x10, offset 0x400 -+ 0x432: 0xeb, -+ // Block 0x11, offset 0x440 -+ 0x445: 0xec, 0x446: 0xed, 0x447: 0xee, -+ 0x449: 0xef, -+ 0x450: 0xf0, 0x451: 0xf1, 0x452: 0xf2, 0x453: 0xf3, 0x454: 0xf4, 0x455: 0xf5, 0x456: 0xf6, 0x457: 0xf7, -+ 0x458: 0xf8, 0x459: 0xf9, 0x45a: 0x4c, 0x45b: 0xfa, 0x45c: 0xfb, 0x45d: 0xfc, 0x45e: 0xfd, 0x45f: 0x4d, -+ // Block 0x12, offset 0x480 -+ 0x480: 0xfe, 0x484: 0xe9, -+ 0x48b: 0xff, -+ 0x4a3: 0x100, 0x4a5: 0x101, -+ 0x4b8: 0x4e, 0x4b9: 0x4f, 0x4ba: 0x50, -+ // Block 0x13, offset 0x4c0 -+ 0x4c4: 0x51, 0x4c5: 0x102, 0x4c6: 0x103, -+ 0x4c8: 0x52, 0x4c9: 0x104, -+ 0x4ef: 0x105, -+ // Block 0x14, offset 0x500 -+ 0x520: 0x53, 0x521: 0x54, 0x522: 0x55, 0x523: 0x56, 0x524: 0x57, 0x525: 0x58, 0x526: 0x59, 0x527: 0x5a, -+ 0x528: 0x5b, -+ // Block 0x15, offset 0x540 -+ 0x550: 0x0b, 0x551: 0x0c, 0x556: 0x0d, -+ 0x55b: 0x0e, 0x55d: 0x0f, 0x55e: 0x10, 0x55f: 0x11, -+ 0x56f: 0x12, -+} -+ -+// nfkcSparseOffset: 170 entries, 340 bytes -+var nfkcSparseOffset = []uint16{0x0, 0xe, 0x12, 0x1b, 0x25, 0x35, 0x37, 0x3c, 0x47, 0x56, 0x63, 0x6b, 0x70, 0x75, 0x77, 0x7f, 0x86, 0x89, 0x91, 0x95, 0x99, 0x9b, 0x9d, 0xa6, 0xaa, 0xb1, 0xb6, 0xb9, 0xc3, 0xc6, 0xcd, 0xd5, 0xd9, 0xdb, 0xdf, 0xe3, 0xe9, 0xfa, 0x106, 0x108, 0x10e, 0x110, 0x112, 0x114, 0x116, 0x118, 0x11a, 0x11c, 0x11f, 0x122, 0x124, 0x127, 0x12a, 0x12e, 0x134, 0x136, 0x13f, 0x141, 0x144, 0x146, 0x151, 0x15c, 0x16a, 0x178, 0x188, 0x196, 0x19d, 0x1a3, 0x1b2, 0x1b6, 0x1b8, 0x1bc, 0x1be, 0x1c1, 0x1c3, 0x1c6, 0x1c8, 0x1cb, 0x1cd, 0x1cf, 0x1d1, 0x1dd, 0x1e7, 0x1f1, 0x1f4, 0x1f8, 0x1fa, 0x1fc, 0x1fe, 0x201, 0x204, 0x206, 0x208, 0x20a, 0x20c, 0x212, 0x215, 0x21a, 0x21c, 0x223, 0x229, 0x22f, 0x237, 0x23d, 0x243, 0x249, 0x24d, 0x24f, 0x251, 0x253, 0x255, 0x25b, 0x25e, 0x260, 0x262, 0x268, 0x26b, 0x273, 0x27a, 0x27d, 0x280, 0x282, 0x285, 0x28d, 0x291, 0x298, 0x29b, 0x2a1, 0x2a3, 0x2a5, 0x2a8, 0x2aa, 0x2ad, 0x2b2, 0x2b4, 0x2b6, 0x2b8, 0x2ba, 0x2bc, 0x2bf, 0x2c1, 0x2c3, 0x2c5, 0x2c7, 0x2c9, 0x2d6, 0x2e0, 0x2e2, 0x2e4, 0x2e8, 0x2ed, 0x2f9, 0x2fe, 0x307, 0x30d, 0x312, 0x316, 0x31b, 0x31f, 0x32f, 0x33d, 0x34b, 0x359, 0x35f, 0x361, 0x363, 0x366, 0x371, 0x373, 0x37d} -+ -+// nfkcSparseValues: 895 entries, 3580 bytes -+var nfkcSparseValues = [895]valueRange{ -+ // Block 0x0, offset 0x0 -+ {value: 0x0002, lo: 0x0d}, -+ {value: 0x0001, lo: 0xa0, hi: 0xa0}, -+ {value: 0x428f, lo: 0xa8, hi: 0xa8}, -+ {value: 0x0083, lo: 0xaa, hi: 0xaa}, -+ {value: 0x427b, lo: 0xaf, hi: 0xaf}, -+ {value: 0x0025, lo: 0xb2, hi: 0xb3}, -+ {value: 0x4271, lo: 0xb4, hi: 0xb4}, -+ {value: 0x01df, lo: 0xb5, hi: 0xb5}, -+ {value: 0x42a8, lo: 0xb8, hi: 0xb8}, -+ {value: 0x0023, lo: 0xb9, hi: 0xb9}, -+ {value: 0x009f, lo: 0xba, hi: 0xba}, -+ {value: 0x2222, lo: 0xbc, hi: 0xbc}, -+ {value: 0x2216, lo: 0xbd, hi: 0xbd}, -+ {value: 0x22b8, lo: 0xbe, hi: 0xbe}, -+ // Block 0x1, offset 0xe -+ {value: 0x0091, lo: 0x03}, -+ {value: 0x46f9, lo: 0xa0, hi: 0xa1}, -+ {value: 0x472b, lo: 0xaf, hi: 0xb0}, -+ {value: 0xa000, lo: 0xb7, hi: 0xb7}, -+ // Block 0x2, offset 0x12 -+ {value: 0x0003, lo: 0x08}, -+ {value: 0xa000, lo: 0x92, hi: 0x92}, -+ {value: 0x0091, lo: 0xb0, hi: 0xb0}, -+ {value: 0x0119, lo: 0xb1, hi: 0xb1}, -+ {value: 0x0095, lo: 0xb2, hi: 0xb2}, -+ {value: 0x00a5, lo: 0xb3, hi: 0xb3}, -+ {value: 0x0143, lo: 0xb4, hi: 0xb6}, -+ {value: 0x00af, lo: 0xb7, hi: 0xb7}, -+ {value: 0x00b3, lo: 0xb8, hi: 0xb8}, -+ // Block 0x3, offset 0x1b -+ {value: 0x000a, lo: 0x09}, -+ {value: 0x4285, lo: 0x98, hi: 0x98}, -+ {value: 0x428a, lo: 0x99, hi: 0x9a}, -+ {value: 0x42ad, lo: 0x9b, hi: 0x9b}, -+ {value: 0x4276, lo: 0x9c, hi: 0x9c}, -+ {value: 0x4299, lo: 0x9d, hi: 0x9d}, -+ {value: 0x0113, lo: 0xa0, hi: 0xa0}, -+ {value: 0x0099, lo: 0xa1, hi: 0xa1}, -+ {value: 0x00a7, lo: 0xa2, hi: 0xa3}, -+ {value: 0x016a, lo: 0xa4, hi: 0xa4}, -+ // Block 0x4, offset 0x25 -+ {value: 0x0000, lo: 0x0f}, -+ {value: 0xa000, lo: 0x83, hi: 0x83}, -+ {value: 0xa000, lo: 0x87, hi: 0x87}, -+ {value: 0xa000, lo: 0x8b, hi: 0x8b}, -+ {value: 0xa000, lo: 0x8d, hi: 0x8d}, -+ {value: 0x37bc, lo: 0x90, hi: 0x90}, -+ {value: 0x37c8, lo: 0x91, hi: 0x91}, -+ {value: 0x37b6, lo: 0x93, hi: 0x93}, -+ {value: 0xa000, lo: 0x96, hi: 0x96}, -+ {value: 0x382e, lo: 0x97, hi: 0x97}, -+ {value: 0x37f8, lo: 0x9c, hi: 0x9c}, -+ {value: 0x37e0, lo: 0x9d, hi: 0x9d}, -+ {value: 0x380a, lo: 0x9e, hi: 0x9e}, -+ {value: 0xa000, lo: 0xb4, hi: 0xb5}, -+ {value: 0x3834, lo: 0xb6, hi: 0xb6}, -+ {value: 0x383a, lo: 0xb7, hi: 0xb7}, -+ // Block 0x5, offset 0x35 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8133, lo: 0x83, hi: 0x87}, -+ // Block 0x6, offset 0x37 -+ {value: 0x0001, lo: 0x04}, -+ {value: 0x8114, lo: 0x81, hi: 0x82}, -+ {value: 0x8133, lo: 0x84, hi: 0x84}, -+ {value: 0x812e, lo: 0x85, hi: 0x85}, -+ {value: 0x810e, lo: 0x87, hi: 0x87}, -+ // Block 0x7, offset 0x3c -+ {value: 0x0000, lo: 0x0a}, -+ {value: 0x8133, lo: 0x90, hi: 0x97}, -+ {value: 0x811a, lo: 0x98, hi: 0x98}, -+ {value: 0x811b, lo: 0x99, hi: 0x99}, -+ {value: 0x811c, lo: 0x9a, hi: 0x9a}, -+ {value: 0x3858, lo: 0xa2, hi: 0xa2}, -+ {value: 0x385e, lo: 0xa3, hi: 0xa3}, -+ {value: 0x386a, lo: 0xa4, hi: 0xa4}, -+ {value: 0x3864, lo: 0xa5, hi: 0xa5}, -+ {value: 0x3870, lo: 0xa6, hi: 0xa6}, -+ {value: 0xa000, lo: 0xa7, hi: 0xa7}, -+ // Block 0x8, offset 0x47 -+ {value: 0x0000, lo: 0x0e}, -+ {value: 0x3882, lo: 0x80, hi: 0x80}, -+ {value: 0xa000, lo: 0x81, hi: 0x81}, -+ {value: 0x3876, lo: 0x82, hi: 0x82}, -+ {value: 0xa000, lo: 0x92, hi: 0x92}, -+ {value: 0x387c, lo: 0x93, hi: 0x93}, -+ {value: 0xa000, lo: 0x95, hi: 0x95}, -+ {value: 0x8133, lo: 0x96, hi: 0x9c}, -+ {value: 0x8133, lo: 0x9f, hi: 0xa2}, -+ {value: 0x812e, lo: 0xa3, hi: 0xa3}, -+ {value: 0x8133, lo: 0xa4, hi: 0xa4}, -+ {value: 0x8133, lo: 0xa7, hi: 0xa8}, -+ {value: 0x812e, lo: 0xaa, hi: 0xaa}, -+ {value: 0x8133, lo: 0xab, hi: 0xac}, -+ {value: 0x812e, lo: 0xad, hi: 0xad}, -+ // Block 0x9, offset 0x56 -+ {value: 0x0000, lo: 0x0c}, -+ {value: 0x8120, lo: 0x91, hi: 0x91}, -+ {value: 0x8133, lo: 0xb0, hi: 0xb0}, -+ {value: 0x812e, lo: 0xb1, hi: 0xb1}, -+ {value: 0x8133, lo: 0xb2, hi: 0xb3}, -+ {value: 0x812e, lo: 0xb4, hi: 0xb4}, -+ {value: 0x8133, lo: 0xb5, hi: 0xb6}, -+ {value: 0x812e, lo: 0xb7, hi: 0xb9}, -+ {value: 0x8133, lo: 0xba, hi: 0xba}, -+ {value: 0x812e, lo: 0xbb, hi: 0xbc}, -+ {value: 0x8133, lo: 0xbd, hi: 0xbd}, -+ {value: 0x812e, lo: 0xbe, hi: 0xbe}, -+ {value: 0x8133, lo: 0xbf, hi: 0xbf}, -+ // Block 0xa, offset 0x63 -+ {value: 0x0005, lo: 0x07}, -+ {value: 0x8133, lo: 0x80, hi: 0x80}, -+ {value: 0x8133, lo: 0x81, hi: 0x81}, -+ {value: 0x812e, lo: 0x82, hi: 0x83}, -+ {value: 0x812e, lo: 0x84, hi: 0x85}, -+ {value: 0x812e, lo: 0x86, hi: 0x87}, -+ {value: 0x812e, lo: 0x88, hi: 0x89}, -+ {value: 0x8133, lo: 0x8a, hi: 0x8a}, -+ // Block 0xb, offset 0x6b -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x8133, lo: 0xab, hi: 0xb1}, -+ {value: 0x812e, lo: 0xb2, hi: 0xb2}, -+ {value: 0x8133, lo: 0xb3, hi: 0xb3}, -+ {value: 0x812e, lo: 0xbd, hi: 0xbd}, -+ // Block 0xc, offset 0x70 -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x8133, lo: 0x96, hi: 0x99}, -+ {value: 0x8133, lo: 0x9b, hi: 0xa3}, -+ {value: 0x8133, lo: 0xa5, hi: 0xa7}, -+ {value: 0x8133, lo: 0xa9, hi: 0xad}, -+ // Block 0xd, offset 0x75 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812e, lo: 0x99, hi: 0x9b}, -+ // Block 0xe, offset 0x77 -+ {value: 0x0000, lo: 0x07}, -+ {value: 0xa000, lo: 0xa8, hi: 0xa8}, -+ {value: 0x3eef, lo: 0xa9, hi: 0xa9}, -+ {value: 0xa000, lo: 0xb0, hi: 0xb0}, -+ {value: 0x3ef7, lo: 0xb1, hi: 0xb1}, -+ {value: 0xa000, lo: 0xb3, hi: 0xb3}, -+ {value: 0x3eff, lo: 0xb4, hi: 0xb4}, -+ {value: 0x9903, lo: 0xbc, hi: 0xbc}, -+ // Block 0xf, offset 0x7f -+ {value: 0x0008, lo: 0x06}, -+ {value: 0x8105, lo: 0x8d, hi: 0x8d}, -+ {value: 0x8133, lo: 0x91, hi: 0x91}, -+ {value: 0x812e, lo: 0x92, hi: 0x92}, -+ {value: 0x8133, lo: 0x93, hi: 0x93}, -+ {value: 0x8133, lo: 0x94, hi: 0x94}, -+ {value: 0x4533, lo: 0x98, hi: 0x9f}, -+ // Block 0x10, offset 0x86 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8103, lo: 0xbc, hi: 0xbc}, -+ {value: 0x9900, lo: 0xbe, hi: 0xbe}, -+ // Block 0x11, offset 0x89 -+ {value: 0x0008, lo: 0x07}, -+ {value: 0xa000, lo: 0x87, hi: 0x87}, -+ {value: 0x2cab, lo: 0x8b, hi: 0x8c}, -+ {value: 0x8105, lo: 0x8d, hi: 0x8d}, -+ {value: 0x9900, lo: 0x97, hi: 0x97}, -+ {value: 0x4573, lo: 0x9c, hi: 0x9d}, -+ {value: 0x4583, lo: 0x9f, hi: 0x9f}, -+ {value: 0x8133, lo: 0xbe, hi: 0xbe}, -+ // Block 0x12, offset 0x91 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x45ab, lo: 0xb3, hi: 0xb3}, -+ {value: 0x45b3, lo: 0xb6, hi: 0xb6}, -+ {value: 0x8103, lo: 0xbc, hi: 0xbc}, -+ // Block 0x13, offset 0x95 -+ {value: 0x0008, lo: 0x03}, -+ {value: 0x8105, lo: 0x8d, hi: 0x8d}, -+ {value: 0x458b, lo: 0x99, hi: 0x9b}, -+ {value: 0x45a3, lo: 0x9e, hi: 0x9e}, -+ // Block 0x14, offset 0x99 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8103, lo: 0xbc, hi: 0xbc}, -+ // Block 0x15, offset 0x9b -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8105, lo: 0x8d, hi: 0x8d}, -+ // Block 0x16, offset 0x9d -+ {value: 0x0000, lo: 0x08}, -+ {value: 0xa000, lo: 0x87, hi: 0x87}, -+ {value: 0x2cc3, lo: 0x88, hi: 0x88}, -+ {value: 0x2cbb, lo: 0x8b, hi: 0x8b}, -+ {value: 0x2ccb, lo: 0x8c, hi: 0x8c}, -+ {value: 0x8105, lo: 0x8d, hi: 0x8d}, -+ {value: 0x9900, lo: 0x96, hi: 0x97}, -+ {value: 0x45bb, lo: 0x9c, hi: 0x9c}, -+ {value: 0x45c3, lo: 0x9d, hi: 0x9d}, -+ // Block 0x17, offset 0xa6 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0xa000, lo: 0x92, hi: 0x92}, -+ {value: 0x2cd3, lo: 0x94, hi: 0x94}, -+ {value: 0x9900, lo: 0xbe, hi: 0xbe}, -+ // Block 0x18, offset 0xaa -+ {value: 0x0000, lo: 0x06}, -+ {value: 0xa000, lo: 0x86, hi: 0x87}, -+ {value: 0x2cdb, lo: 0x8a, hi: 0x8a}, -+ {value: 0x2ceb, lo: 0x8b, hi: 0x8b}, -+ {value: 0x2ce3, lo: 0x8c, hi: 0x8c}, -+ {value: 0x8105, lo: 0x8d, hi: 0x8d}, -+ {value: 0x9900, lo: 0x97, hi: 0x97}, -+ // Block 0x19, offset 0xb1 -+ {value: 0x1801, lo: 0x04}, -+ {value: 0xa000, lo: 0x86, hi: 0x86}, -+ {value: 0x3f07, lo: 0x88, hi: 0x88}, -+ {value: 0x8105, lo: 0x8d, hi: 0x8d}, -+ {value: 0x8121, lo: 0x95, hi: 0x96}, -+ // Block 0x1a, offset 0xb6 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8103, lo: 0xbc, hi: 0xbc}, -+ {value: 0xa000, lo: 0xbf, hi: 0xbf}, -+ // Block 0x1b, offset 0xb9 -+ {value: 0x0000, lo: 0x09}, -+ {value: 0x2cf3, lo: 0x80, hi: 0x80}, -+ {value: 0x9900, lo: 0x82, hi: 0x82}, -+ {value: 0xa000, lo: 0x86, hi: 0x86}, -+ {value: 0x2cfb, lo: 0x87, hi: 0x87}, -+ {value: 0x2d03, lo: 0x88, hi: 0x88}, -+ {value: 0x2f67, lo: 0x8a, hi: 0x8a}, -+ {value: 0x2def, lo: 0x8b, hi: 0x8b}, -+ {value: 0x8105, lo: 0x8d, hi: 0x8d}, -+ {value: 0x9900, lo: 0x95, hi: 0x96}, -+ // Block 0x1c, offset 0xc3 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8105, lo: 0xbb, hi: 0xbc}, -+ {value: 0x9900, lo: 0xbe, hi: 0xbe}, -+ // Block 0x1d, offset 0xc6 -+ {value: 0x0000, lo: 0x06}, -+ {value: 0xa000, lo: 0x86, hi: 0x87}, -+ {value: 0x2d0b, lo: 0x8a, hi: 0x8a}, -+ {value: 0x2d1b, lo: 0x8b, hi: 0x8b}, -+ {value: 0x2d13, lo: 0x8c, hi: 0x8c}, -+ {value: 0x8105, lo: 0x8d, hi: 0x8d}, -+ {value: 0x9900, lo: 0x97, hi: 0x97}, -+ // Block 0x1e, offset 0xcd -+ {value: 0x6bdd, lo: 0x07}, -+ {value: 0x9905, lo: 0x8a, hi: 0x8a}, -+ {value: 0x9900, lo: 0x8f, hi: 0x8f}, -+ {value: 0xa000, lo: 0x99, hi: 0x99}, -+ {value: 0x3f0f, lo: 0x9a, hi: 0x9a}, -+ {value: 0x2f6f, lo: 0x9c, hi: 0x9c}, -+ {value: 0x2dfa, lo: 0x9d, hi: 0x9d}, -+ {value: 0x2d23, lo: 0x9e, hi: 0x9f}, -+ // Block 0x1f, offset 0xd5 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x2627, lo: 0xb3, hi: 0xb3}, -+ {value: 0x8123, lo: 0xb8, hi: 0xb9}, -+ {value: 0x8105, lo: 0xba, hi: 0xba}, -+ // Block 0x20, offset 0xd9 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8124, lo: 0x88, hi: 0x8b}, -+ // Block 0x21, offset 0xdb -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x263c, lo: 0xb3, hi: 0xb3}, -+ {value: 0x8125, lo: 0xb8, hi: 0xb9}, -+ {value: 0x8105, lo: 0xba, hi: 0xba}, -+ // Block 0x22, offset 0xdf -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x8126, lo: 0x88, hi: 0x8b}, -+ {value: 0x262e, lo: 0x9c, hi: 0x9c}, -+ {value: 0x2635, lo: 0x9d, hi: 0x9d}, -+ // Block 0x23, offset 0xe3 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x030e, lo: 0x8c, hi: 0x8c}, -+ {value: 0x812e, lo: 0x98, hi: 0x99}, -+ {value: 0x812e, lo: 0xb5, hi: 0xb5}, -+ {value: 0x812e, lo: 0xb7, hi: 0xb7}, -+ {value: 0x812c, lo: 0xb9, hi: 0xb9}, -+ // Block 0x24, offset 0xe9 -+ {value: 0x0000, lo: 0x10}, -+ {value: 0x264a, lo: 0x83, hi: 0x83}, -+ {value: 0x2651, lo: 0x8d, hi: 0x8d}, -+ {value: 0x2658, lo: 0x92, hi: 0x92}, -+ {value: 0x265f, lo: 0x97, hi: 0x97}, -+ {value: 0x2666, lo: 0x9c, hi: 0x9c}, -+ {value: 0x2643, lo: 0xa9, hi: 0xa9}, -+ {value: 0x8127, lo: 0xb1, hi: 0xb1}, -+ {value: 0x8128, lo: 0xb2, hi: 0xb2}, -+ {value: 0x4a9b, lo: 0xb3, hi: 0xb3}, -+ {value: 0x8129, lo: 0xb4, hi: 0xb4}, -+ {value: 0x4aa4, lo: 0xb5, hi: 0xb5}, -+ {value: 0x45cb, lo: 0xb6, hi: 0xb6}, -+ {value: 0x460b, lo: 0xb7, hi: 0xb7}, -+ {value: 0x45d3, lo: 0xb8, hi: 0xb8}, -+ {value: 0x4616, lo: 0xb9, hi: 0xb9}, -+ {value: 0x8128, lo: 0xba, hi: 0xbd}, -+ // Block 0x25, offset 0xfa -+ {value: 0x0000, lo: 0x0b}, -+ {value: 0x8128, lo: 0x80, hi: 0x80}, -+ {value: 0x4aad, lo: 0x81, hi: 0x81}, -+ {value: 0x8133, lo: 0x82, hi: 0x83}, -+ {value: 0x8105, lo: 0x84, hi: 0x84}, -+ {value: 0x8133, lo: 0x86, hi: 0x87}, -+ {value: 0x2674, lo: 0x93, hi: 0x93}, -+ {value: 0x267b, lo: 0x9d, hi: 0x9d}, -+ {value: 0x2682, lo: 0xa2, hi: 0xa2}, -+ {value: 0x2689, lo: 0xa7, hi: 0xa7}, -+ {value: 0x2690, lo: 0xac, hi: 0xac}, -+ {value: 0x266d, lo: 0xb9, hi: 0xb9}, -+ // Block 0x26, offset 0x106 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812e, lo: 0x86, hi: 0x86}, -+ // Block 0x27, offset 0x108 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0xa000, lo: 0xa5, hi: 0xa5}, -+ {value: 0x2d2b, lo: 0xa6, hi: 0xa6}, -+ {value: 0x9900, lo: 0xae, hi: 0xae}, -+ {value: 0x8103, lo: 0xb7, hi: 0xb7}, -+ {value: 0x8105, lo: 0xb9, hi: 0xba}, -+ // Block 0x28, offset 0x10e -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812e, lo: 0x8d, hi: 0x8d}, -+ // Block 0x29, offset 0x110 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x0312, lo: 0xbc, hi: 0xbc}, -+ // Block 0x2a, offset 0x112 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0xa000, lo: 0x80, hi: 0x92}, -+ // Block 0x2b, offset 0x114 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0xb900, lo: 0xa1, hi: 0xb5}, -+ // Block 0x2c, offset 0x116 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x9900, lo: 0xa8, hi: 0xbf}, -+ // Block 0x2d, offset 0x118 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x9900, lo: 0x80, hi: 0x82}, -+ // Block 0x2e, offset 0x11a -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8133, lo: 0x9d, hi: 0x9f}, -+ // Block 0x2f, offset 0x11c -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8105, lo: 0x94, hi: 0x94}, -+ {value: 0x8105, lo: 0xb4, hi: 0xb4}, -+ // Block 0x30, offset 0x11f -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8105, lo: 0x92, hi: 0x92}, -+ {value: 0x8133, lo: 0x9d, hi: 0x9d}, -+ // Block 0x31, offset 0x122 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8132, lo: 0xa9, hi: 0xa9}, -+ // Block 0x32, offset 0x124 -+ {value: 0x0004, lo: 0x02}, -+ {value: 0x812f, lo: 0xb9, hi: 0xba}, -+ {value: 0x812e, lo: 0xbb, hi: 0xbb}, -+ // Block 0x33, offset 0x127 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8133, lo: 0x97, hi: 0x97}, -+ {value: 0x812e, lo: 0x98, hi: 0x98}, -+ // Block 0x34, offset 0x12a -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x8105, lo: 0xa0, hi: 0xa0}, -+ {value: 0x8133, lo: 0xb5, hi: 0xbc}, -+ {value: 0x812e, lo: 0xbf, hi: 0xbf}, -+ // Block 0x35, offset 0x12e -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x8133, lo: 0xb0, hi: 0xb4}, -+ {value: 0x812e, lo: 0xb5, hi: 0xba}, -+ {value: 0x8133, lo: 0xbb, hi: 0xbc}, -+ {value: 0x812e, lo: 0xbd, hi: 0xbd}, -+ {value: 0x812e, lo: 0xbf, hi: 0xbf}, -+ // Block 0x36, offset 0x134 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812e, lo: 0x80, hi: 0x80}, -+ // Block 0x37, offset 0x136 -+ {value: 0x0000, lo: 0x08}, -+ {value: 0x2d73, lo: 0x80, hi: 0x80}, -+ {value: 0x2d7b, lo: 0x81, hi: 0x81}, -+ {value: 0xa000, lo: 0x82, hi: 0x82}, -+ {value: 0x2d83, lo: 0x83, hi: 0x83}, -+ {value: 0x8105, lo: 0x84, hi: 0x84}, -+ {value: 0x8133, lo: 0xab, hi: 0xab}, -+ {value: 0x812e, lo: 0xac, hi: 0xac}, -+ {value: 0x8133, lo: 0xad, hi: 0xb3}, -+ // Block 0x38, offset 0x13f -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8105, lo: 0xaa, hi: 0xab}, -+ // Block 0x39, offset 0x141 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8103, lo: 0xa6, hi: 0xa6}, -+ {value: 0x8105, lo: 0xb2, hi: 0xb3}, -+ // Block 0x3a, offset 0x144 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8103, lo: 0xb7, hi: 0xb7}, -+ // Block 0x3b, offset 0x146 -+ {value: 0x0000, lo: 0x0a}, -+ {value: 0x8133, lo: 0x90, hi: 0x92}, -+ {value: 0x8101, lo: 0x94, hi: 0x94}, -+ {value: 0x812e, lo: 0x95, hi: 0x99}, -+ {value: 0x8133, lo: 0x9a, hi: 0x9b}, -+ {value: 0x812e, lo: 0x9c, hi: 0x9f}, -+ {value: 0x8133, lo: 0xa0, hi: 0xa0}, -+ {value: 0x8101, lo: 0xa2, hi: 0xa8}, -+ {value: 0x812e, lo: 0xad, hi: 0xad}, -+ {value: 0x8133, lo: 0xb4, hi: 0xb4}, -+ {value: 0x8133, lo: 0xb8, hi: 0xb9}, -+ // Block 0x3c, offset 0x151 -+ {value: 0x0002, lo: 0x0a}, -+ {value: 0x0043, lo: 0xac, hi: 0xac}, -+ {value: 0x00d1, lo: 0xad, hi: 0xad}, -+ {value: 0x0045, lo: 0xae, hi: 0xae}, -+ {value: 0x0049, lo: 0xb0, hi: 0xb1}, -+ {value: 0x00e6, lo: 0xb2, hi: 0xb2}, -+ {value: 0x004f, lo: 0xb3, hi: 0xba}, -+ {value: 0x005f, lo: 0xbc, hi: 0xbc}, -+ {value: 0x00ef, lo: 0xbd, hi: 0xbd}, -+ {value: 0x0061, lo: 0xbe, hi: 0xbe}, -+ {value: 0x0065, lo: 0xbf, hi: 0xbf}, -+ // Block 0x3d, offset 0x15c -+ {value: 0x0000, lo: 0x0d}, -+ {value: 0x0001, lo: 0x80, hi: 0x8a}, -+ {value: 0x043e, lo: 0x91, hi: 0x91}, -+ {value: 0x42b2, lo: 0x97, hi: 0x97}, -+ {value: 0x001d, lo: 0xa4, hi: 0xa4}, -+ {value: 0x1876, lo: 0xa5, hi: 0xa5}, -+ {value: 0x1b62, lo: 0xa6, hi: 0xa6}, -+ {value: 0x0001, lo: 0xaf, hi: 0xaf}, -+ {value: 0x2697, lo: 0xb3, hi: 0xb3}, -+ {value: 0x280b, lo: 0xb4, hi: 0xb4}, -+ {value: 0x269e, lo: 0xb6, hi: 0xb6}, -+ {value: 0x2815, lo: 0xb7, hi: 0xb7}, -+ {value: 0x1870, lo: 0xbc, hi: 0xbc}, -+ {value: 0x4280, lo: 0xbe, hi: 0xbe}, -+ // Block 0x3e, offset 0x16a -+ {value: 0x0002, lo: 0x0d}, -+ {value: 0x1936, lo: 0x87, hi: 0x87}, -+ {value: 0x1933, lo: 0x88, hi: 0x88}, -+ {value: 0x1873, lo: 0x89, hi: 0x89}, -+ {value: 0x299b, lo: 0x97, hi: 0x97}, -+ {value: 0x0001, lo: 0x9f, hi: 0x9f}, -+ {value: 0x0021, lo: 0xb0, hi: 0xb0}, -+ {value: 0x0093, lo: 0xb1, hi: 0xb1}, -+ {value: 0x0029, lo: 0xb4, hi: 0xb9}, -+ {value: 0x0017, lo: 0xba, hi: 0xba}, -+ {value: 0x046a, lo: 0xbb, hi: 0xbb}, -+ {value: 0x003b, lo: 0xbc, hi: 0xbc}, -+ {value: 0x0011, lo: 0xbd, hi: 0xbe}, -+ {value: 0x009d, lo: 0xbf, hi: 0xbf}, -+ // Block 0x3f, offset 0x178 -+ {value: 0x0002, lo: 0x0f}, -+ {value: 0x0021, lo: 0x80, hi: 0x89}, -+ {value: 0x0017, lo: 0x8a, hi: 0x8a}, -+ {value: 0x046a, lo: 0x8b, hi: 0x8b}, -+ {value: 0x003b, lo: 0x8c, hi: 0x8c}, -+ {value: 0x0011, lo: 0x8d, hi: 0x8e}, -+ {value: 0x0083, lo: 0x90, hi: 0x90}, -+ {value: 0x008b, lo: 0x91, hi: 0x91}, -+ {value: 0x009f, lo: 0x92, hi: 0x92}, -+ {value: 0x00b1, lo: 0x93, hi: 0x93}, -+ {value: 0x0104, lo: 0x94, hi: 0x94}, -+ {value: 0x0091, lo: 0x95, hi: 0x95}, -+ {value: 0x0097, lo: 0x96, hi: 0x99}, -+ {value: 0x00a1, lo: 0x9a, hi: 0x9a}, -+ {value: 0x00a7, lo: 0x9b, hi: 0x9c}, -+ {value: 0x199f, lo: 0xa8, hi: 0xa8}, -+ // Block 0x40, offset 0x188 -+ {value: 0x0000, lo: 0x0d}, -+ {value: 0x8133, lo: 0x90, hi: 0x91}, -+ {value: 0x8101, lo: 0x92, hi: 0x93}, -+ {value: 0x8133, lo: 0x94, hi: 0x97}, -+ {value: 0x8101, lo: 0x98, hi: 0x9a}, -+ {value: 0x8133, lo: 0x9b, hi: 0x9c}, -+ {value: 0x8133, lo: 0xa1, hi: 0xa1}, -+ {value: 0x8101, lo: 0xa5, hi: 0xa6}, -+ {value: 0x8133, lo: 0xa7, hi: 0xa7}, -+ {value: 0x812e, lo: 0xa8, hi: 0xa8}, -+ {value: 0x8133, lo: 0xa9, hi: 0xa9}, -+ {value: 0x8101, lo: 0xaa, hi: 0xab}, -+ {value: 0x812e, lo: 0xac, hi: 0xaf}, -+ {value: 0x8133, lo: 0xb0, hi: 0xb0}, -+ // Block 0x41, offset 0x196 -+ {value: 0x0007, lo: 0x06}, -+ {value: 0x2186, lo: 0x89, hi: 0x89}, -+ {value: 0xa000, lo: 0x90, hi: 0x90}, -+ {value: 0xa000, lo: 0x92, hi: 0x92}, -+ {value: 0xa000, lo: 0x94, hi: 0x94}, -+ {value: 0x3bd0, lo: 0x9a, hi: 0x9b}, -+ {value: 0x3bde, lo: 0xae, hi: 0xae}, -+ // Block 0x42, offset 0x19d -+ {value: 0x000e, lo: 0x05}, -+ {value: 0x3be5, lo: 0x8d, hi: 0x8e}, -+ {value: 0x3bec, lo: 0x8f, hi: 0x8f}, -+ {value: 0xa000, lo: 0x90, hi: 0x90}, -+ {value: 0xa000, lo: 0x92, hi: 0x92}, -+ {value: 0xa000, lo: 0x94, hi: 0x94}, -+ // Block 0x43, offset 0x1a3 -+ {value: 0x017a, lo: 0x0e}, -+ {value: 0xa000, lo: 0x83, hi: 0x83}, -+ {value: 0x3bfa, lo: 0x84, hi: 0x84}, -+ {value: 0xa000, lo: 0x88, hi: 0x88}, -+ {value: 0x3c01, lo: 0x89, hi: 0x89}, -+ {value: 0xa000, lo: 0x8b, hi: 0x8b}, -+ {value: 0x3c08, lo: 0x8c, hi: 0x8c}, -+ {value: 0xa000, lo: 0xa3, hi: 0xa3}, -+ {value: 0x3c0f, lo: 0xa4, hi: 0xa4}, -+ {value: 0xa000, lo: 0xa5, hi: 0xa5}, -+ {value: 0x3c16, lo: 0xa6, hi: 0xa6}, -+ {value: 0x26a5, lo: 0xac, hi: 0xad}, -+ {value: 0x26ac, lo: 0xaf, hi: 0xaf}, -+ {value: 0x2829, lo: 0xb0, hi: 0xb0}, -+ {value: 0xa000, lo: 0xbc, hi: 0xbc}, -+ // Block 0x44, offset 0x1b2 -+ {value: 0x0007, lo: 0x03}, -+ {value: 0x3c7f, lo: 0xa0, hi: 0xa1}, -+ {value: 0x3ca9, lo: 0xa2, hi: 0xa3}, -+ {value: 0x3cd3, lo: 0xaa, hi: 0xad}, -+ // Block 0x45, offset 0x1b6 -+ {value: 0x0004, lo: 0x01}, -+ {value: 0x048e, lo: 0xa9, hi: 0xaa}, -+ // Block 0x46, offset 0x1b8 -+ {value: 0x0002, lo: 0x03}, -+ {value: 0x0057, lo: 0x80, hi: 0x8f}, -+ {value: 0x0083, lo: 0x90, hi: 0xa9}, -+ {value: 0x0021, lo: 0xaa, hi: 0xaa}, -+ // Block 0x47, offset 0x1bc -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x29a8, lo: 0x8c, hi: 0x8c}, -+ // Block 0x48, offset 0x1be -+ {value: 0x0266, lo: 0x02}, -+ {value: 0x1b92, lo: 0xb4, hi: 0xb4}, -+ {value: 0x1930, lo: 0xb5, hi: 0xb6}, -+ // Block 0x49, offset 0x1c1 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x44f4, lo: 0x9c, hi: 0x9c}, -+ // Block 0x4a, offset 0x1c3 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0095, lo: 0xbc, hi: 0xbc}, -+ {value: 0x006d, lo: 0xbd, hi: 0xbd}, -+ // Block 0x4b, offset 0x1c6 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8133, lo: 0xaf, hi: 0xb1}, -+ // Block 0x4c, offset 0x1c8 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x0482, lo: 0xaf, hi: 0xaf}, -+ {value: 0x8105, lo: 0xbf, hi: 0xbf}, -+ // Block 0x4d, offset 0x1cb -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8133, lo: 0xa0, hi: 0xbf}, -+ // Block 0x4e, offset 0x1cd -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x0dc6, lo: 0x9f, hi: 0x9f}, -+ // Block 0x4f, offset 0x1cf -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x1632, lo: 0xb3, hi: 0xb3}, -+ // Block 0x50, offset 0x1d1 -+ {value: 0x0004, lo: 0x0b}, -+ {value: 0x159a, lo: 0x80, hi: 0x82}, -+ {value: 0x15b2, lo: 0x83, hi: 0x83}, -+ {value: 0x15ca, lo: 0x84, hi: 0x85}, -+ {value: 0x15da, lo: 0x86, hi: 0x89}, -+ {value: 0x15ee, lo: 0x8a, hi: 0x8c}, -+ {value: 0x1602, lo: 0x8d, hi: 0x8d}, -+ {value: 0x160a, lo: 0x8e, hi: 0x8e}, -+ {value: 0x1612, lo: 0x8f, hi: 0x90}, -+ {value: 0x161e, lo: 0x91, hi: 0x93}, -+ {value: 0x162e, lo: 0x94, hi: 0x94}, -+ {value: 0x1636, lo: 0x95, hi: 0x95}, -+ // Block 0x51, offset 0x1dd -+ {value: 0x0004, lo: 0x09}, -+ {value: 0x0001, lo: 0x80, hi: 0x80}, -+ {value: 0x812d, lo: 0xaa, hi: 0xaa}, -+ {value: 0x8132, lo: 0xab, hi: 0xab}, -+ {value: 0x8134, lo: 0xac, hi: 0xac}, -+ {value: 0x812f, lo: 0xad, hi: 0xad}, -+ {value: 0x8130, lo: 0xae, hi: 0xae}, -+ {value: 0x8130, lo: 0xaf, hi: 0xaf}, -+ {value: 0x04b6, lo: 0xb6, hi: 0xb6}, -+ {value: 0x088a, lo: 0xb8, hi: 0xba}, -+ // Block 0x52, offset 0x1e7 -+ {value: 0x0006, lo: 0x09}, -+ {value: 0x0316, lo: 0xb1, hi: 0xb1}, -+ {value: 0x031a, lo: 0xb2, hi: 0xb2}, -+ {value: 0x4a52, lo: 0xb3, hi: 0xb3}, -+ {value: 0x031e, lo: 0xb4, hi: 0xb4}, -+ {value: 0x4a58, lo: 0xb5, hi: 0xb6}, -+ {value: 0x0322, lo: 0xb7, hi: 0xb7}, -+ {value: 0x0326, lo: 0xb8, hi: 0xb8}, -+ {value: 0x032a, lo: 0xb9, hi: 0xb9}, -+ {value: 0x4a64, lo: 0xba, hi: 0xbf}, -+ // Block 0x53, offset 0x1f1 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8133, lo: 0xaf, hi: 0xaf}, -+ {value: 0x8133, lo: 0xb4, hi: 0xbd}, -+ // Block 0x54, offset 0x1f4 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x0212, lo: 0x9c, hi: 0x9c}, -+ {value: 0x0215, lo: 0x9d, hi: 0x9d}, -+ {value: 0x8133, lo: 0x9e, hi: 0x9f}, -+ // Block 0x55, offset 0x1f8 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8133, lo: 0xb0, hi: 0xb1}, -+ // Block 0x56, offset 0x1fa -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x163e, lo: 0xb0, hi: 0xb0}, -+ // Block 0x57, offset 0x1fc -+ {value: 0x000c, lo: 0x01}, -+ {value: 0x00d7, lo: 0xb8, hi: 0xb9}, -+ // Block 0x58, offset 0x1fe -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8105, lo: 0x86, hi: 0x86}, -+ {value: 0x8105, lo: 0xac, hi: 0xac}, -+ // Block 0x59, offset 0x201 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8105, lo: 0x84, hi: 0x84}, -+ {value: 0x8133, lo: 0xa0, hi: 0xb1}, -+ // Block 0x5a, offset 0x204 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812e, lo: 0xab, hi: 0xad}, -+ // Block 0x5b, offset 0x206 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8105, lo: 0x93, hi: 0x93}, -+ // Block 0x5c, offset 0x208 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8103, lo: 0xb3, hi: 0xb3}, -+ // Block 0x5d, offset 0x20a -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8105, lo: 0x80, hi: 0x80}, -+ // Block 0x5e, offset 0x20c -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x8133, lo: 0xb0, hi: 0xb0}, -+ {value: 0x8133, lo: 0xb2, hi: 0xb3}, -+ {value: 0x812e, lo: 0xb4, hi: 0xb4}, -+ {value: 0x8133, lo: 0xb7, hi: 0xb8}, -+ {value: 0x8133, lo: 0xbe, hi: 0xbf}, -+ // Block 0x5f, offset 0x212 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8133, lo: 0x81, hi: 0x81}, -+ {value: 0x8105, lo: 0xb6, hi: 0xb6}, -+ // Block 0x60, offset 0x215 -+ {value: 0x0008, lo: 0x04}, -+ {value: 0x163a, lo: 0x9c, hi: 0x9d}, -+ {value: 0x0125, lo: 0x9e, hi: 0x9e}, -+ {value: 0x1646, lo: 0x9f, hi: 0x9f}, -+ {value: 0x015e, lo: 0xa9, hi: 0xa9}, -+ // Block 0x61, offset 0x21a -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8105, lo: 0xad, hi: 0xad}, -+ // Block 0x62, offset 0x21c -+ {value: 0x0000, lo: 0x06}, -+ {value: 0xe500, lo: 0x80, hi: 0x80}, -+ {value: 0xc600, lo: 0x81, hi: 0x9b}, -+ {value: 0xe500, lo: 0x9c, hi: 0x9c}, -+ {value: 0xc600, lo: 0x9d, hi: 0xb7}, -+ {value: 0xe500, lo: 0xb8, hi: 0xb8}, -+ {value: 0xc600, lo: 0xb9, hi: 0xbf}, -+ // Block 0x63, offset 0x223 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0xc600, lo: 0x80, hi: 0x93}, -+ {value: 0xe500, lo: 0x94, hi: 0x94}, -+ {value: 0xc600, lo: 0x95, hi: 0xaf}, -+ {value: 0xe500, lo: 0xb0, hi: 0xb0}, -+ {value: 0xc600, lo: 0xb1, hi: 0xbf}, -+ // Block 0x64, offset 0x229 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0xc600, lo: 0x80, hi: 0x8b}, -+ {value: 0xe500, lo: 0x8c, hi: 0x8c}, -+ {value: 0xc600, lo: 0x8d, hi: 0xa7}, -+ {value: 0xe500, lo: 0xa8, hi: 0xa8}, -+ {value: 0xc600, lo: 0xa9, hi: 0xbf}, -+ // Block 0x65, offset 0x22f -+ {value: 0x0000, lo: 0x07}, -+ {value: 0xc600, lo: 0x80, hi: 0x83}, -+ {value: 0xe500, lo: 0x84, hi: 0x84}, -+ {value: 0xc600, lo: 0x85, hi: 0x9f}, -+ {value: 0xe500, lo: 0xa0, hi: 0xa0}, -+ {value: 0xc600, lo: 0xa1, hi: 0xbb}, -+ {value: 0xe500, lo: 0xbc, hi: 0xbc}, -+ {value: 0xc600, lo: 0xbd, hi: 0xbf}, -+ // Block 0x66, offset 0x237 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0xc600, lo: 0x80, hi: 0x97}, -+ {value: 0xe500, lo: 0x98, hi: 0x98}, -+ {value: 0xc600, lo: 0x99, hi: 0xb3}, -+ {value: 0xe500, lo: 0xb4, hi: 0xb4}, -+ {value: 0xc600, lo: 0xb5, hi: 0xbf}, -+ // Block 0x67, offset 0x23d -+ {value: 0x0000, lo: 0x05}, -+ {value: 0xc600, lo: 0x80, hi: 0x8f}, -+ {value: 0xe500, lo: 0x90, hi: 0x90}, -+ {value: 0xc600, lo: 0x91, hi: 0xab}, -+ {value: 0xe500, lo: 0xac, hi: 0xac}, -+ {value: 0xc600, lo: 0xad, hi: 0xbf}, -+ // Block 0x68, offset 0x243 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0xc600, lo: 0x80, hi: 0x87}, -+ {value: 0xe500, lo: 0x88, hi: 0x88}, -+ {value: 0xc600, lo: 0x89, hi: 0xa3}, -+ {value: 0xe500, lo: 0xa4, hi: 0xa4}, -+ {value: 0xc600, lo: 0xa5, hi: 0xbf}, -+ // Block 0x69, offset 0x249 -+ {value: 0x0000, lo: 0x03}, -+ {value: 0xc600, lo: 0x80, hi: 0x87}, -+ {value: 0xe500, lo: 0x88, hi: 0x88}, -+ {value: 0xc600, lo: 0x89, hi: 0xa3}, -+ // Block 0x6a, offset 0x24d -+ {value: 0x0002, lo: 0x01}, -+ {value: 0x0003, lo: 0x81, hi: 0xbf}, -+ // Block 0x6b, offset 0x24f -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812e, lo: 0xbd, hi: 0xbd}, -+ // Block 0x6c, offset 0x251 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812e, lo: 0xa0, hi: 0xa0}, -+ // Block 0x6d, offset 0x253 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8133, lo: 0xb6, hi: 0xba}, -+ // Block 0x6e, offset 0x255 -+ {value: 0x002d, lo: 0x05}, -+ {value: 0x812e, lo: 0x8d, hi: 0x8d}, -+ {value: 0x8133, lo: 0x8f, hi: 0x8f}, -+ {value: 0x8133, lo: 0xb8, hi: 0xb8}, -+ {value: 0x8101, lo: 0xb9, hi: 0xba}, -+ {value: 0x8105, lo: 0xbf, hi: 0xbf}, -+ // Block 0x6f, offset 0x25b -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8133, lo: 0xa5, hi: 0xa5}, -+ {value: 0x812e, lo: 0xa6, hi: 0xa6}, -+ // Block 0x70, offset 0x25e -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8133, lo: 0xa4, hi: 0xa7}, -+ // Block 0x71, offset 0x260 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8133, lo: 0xab, hi: 0xac}, -+ // Block 0x72, offset 0x262 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x812e, lo: 0x86, hi: 0x87}, -+ {value: 0x8133, lo: 0x88, hi: 0x8a}, -+ {value: 0x812e, lo: 0x8b, hi: 0x8b}, -+ {value: 0x8133, lo: 0x8c, hi: 0x8c}, -+ {value: 0x812e, lo: 0x8d, hi: 0x90}, -+ // Block 0x73, offset 0x268 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8105, lo: 0x86, hi: 0x86}, -+ {value: 0x8105, lo: 0xbf, hi: 0xbf}, -+ // Block 0x74, offset 0x26b -+ {value: 0x17fe, lo: 0x07}, -+ {value: 0xa000, lo: 0x99, hi: 0x99}, -+ {value: 0x424f, lo: 0x9a, hi: 0x9a}, -+ {value: 0xa000, lo: 0x9b, hi: 0x9b}, -+ {value: 0x4259, lo: 0x9c, hi: 0x9c}, -+ {value: 0xa000, lo: 0xa5, hi: 0xa5}, -+ {value: 0x4263, lo: 0xab, hi: 0xab}, -+ {value: 0x8105, lo: 0xb9, hi: 0xba}, -+ // Block 0x75, offset 0x273 -+ {value: 0x0000, lo: 0x06}, -+ {value: 0x8133, lo: 0x80, hi: 0x82}, -+ {value: 0x9900, lo: 0xa7, hi: 0xa7}, -+ {value: 0x2d8b, lo: 0xae, hi: 0xae}, -+ {value: 0x2d95, lo: 0xaf, hi: 0xaf}, -+ {value: 0xa000, lo: 0xb1, hi: 0xb2}, -+ {value: 0x8105, lo: 0xb3, hi: 0xb4}, -+ // Block 0x76, offset 0x27a -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8105, lo: 0x80, hi: 0x80}, -+ {value: 0x8103, lo: 0x8a, hi: 0x8a}, -+ // Block 0x77, offset 0x27d -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8105, lo: 0xb5, hi: 0xb5}, -+ {value: 0x8103, lo: 0xb6, hi: 0xb6}, -+ // Block 0x78, offset 0x280 -+ {value: 0x0002, lo: 0x01}, -+ {value: 0x8103, lo: 0xa9, hi: 0xaa}, -+ // Block 0x79, offset 0x282 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8103, lo: 0xbb, hi: 0xbc}, -+ {value: 0x9900, lo: 0xbe, hi: 0xbe}, -+ // Block 0x7a, offset 0x285 -+ {value: 0x0000, lo: 0x07}, -+ {value: 0xa000, lo: 0x87, hi: 0x87}, -+ {value: 0x2d9f, lo: 0x8b, hi: 0x8b}, -+ {value: 0x2da9, lo: 0x8c, hi: 0x8c}, -+ {value: 0x8105, lo: 0x8d, hi: 0x8d}, -+ {value: 0x9900, lo: 0x97, hi: 0x97}, -+ {value: 0x8133, lo: 0xa6, hi: 0xac}, -+ {value: 0x8133, lo: 0xb0, hi: 0xb4}, -+ // Block 0x7b, offset 0x28d -+ {value: 0x0000, lo: 0x03}, -+ {value: 0x8105, lo: 0x82, hi: 0x82}, -+ {value: 0x8103, lo: 0x86, hi: 0x86}, -+ {value: 0x8133, lo: 0x9e, hi: 0x9e}, -+ // Block 0x7c, offset 0x291 -+ {value: 0x6b4d, lo: 0x06}, -+ {value: 0x9900, lo: 0xb0, hi: 0xb0}, -+ {value: 0xa000, lo: 0xb9, hi: 0xb9}, -+ {value: 0x9900, lo: 0xba, hi: 0xba}, -+ {value: 0x2dbd, lo: 0xbb, hi: 0xbb}, -+ {value: 0x2db3, lo: 0xbc, hi: 0xbd}, -+ {value: 0x2dc7, lo: 0xbe, hi: 0xbe}, -+ // Block 0x7d, offset 0x298 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8105, lo: 0x82, hi: 0x82}, -+ {value: 0x8103, lo: 0x83, hi: 0x83}, -+ // Block 0x7e, offset 0x29b -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x9900, lo: 0xaf, hi: 0xaf}, -+ {value: 0xa000, lo: 0xb8, hi: 0xb9}, -+ {value: 0x2dd1, lo: 0xba, hi: 0xba}, -+ {value: 0x2ddb, lo: 0xbb, hi: 0xbb}, -+ {value: 0x8105, lo: 0xbf, hi: 0xbf}, -+ // Block 0x7f, offset 0x2a1 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8103, lo: 0x80, hi: 0x80}, -+ // Block 0x80, offset 0x2a3 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8105, lo: 0xbf, hi: 0xbf}, -+ // Block 0x81, offset 0x2a5 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8105, lo: 0xb6, hi: 0xb6}, -+ {value: 0x8103, lo: 0xb7, hi: 0xb7}, -+ // Block 0x82, offset 0x2a8 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8105, lo: 0xab, hi: 0xab}, -+ // Block 0x83, offset 0x2aa -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8105, lo: 0xb9, hi: 0xb9}, -+ {value: 0x8103, lo: 0xba, hi: 0xba}, -+ // Block 0x84, offset 0x2ad -+ {value: 0x0000, lo: 0x04}, -+ {value: 0x9900, lo: 0xb0, hi: 0xb0}, -+ {value: 0xa000, lo: 0xb5, hi: 0xb5}, -+ {value: 0x2de5, lo: 0xb8, hi: 0xb8}, -+ {value: 0x8105, lo: 0xbd, hi: 0xbe}, -+ // Block 0x85, offset 0x2b2 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8103, lo: 0x83, hi: 0x83}, -+ // Block 0x86, offset 0x2b4 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8105, lo: 0xa0, hi: 0xa0}, -+ // Block 0x87, offset 0x2b6 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8105, lo: 0xb4, hi: 0xb4}, -+ // Block 0x88, offset 0x2b8 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8105, lo: 0x87, hi: 0x87}, -+ // Block 0x89, offset 0x2ba -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8105, lo: 0x99, hi: 0x99}, -+ // Block 0x8a, offset 0x2bc -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8103, lo: 0x82, hi: 0x82}, -+ {value: 0x8105, lo: 0x84, hi: 0x85}, -+ // Block 0x8b, offset 0x2bf -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8105, lo: 0x97, hi: 0x97}, -+ // Block 0x8c, offset 0x2c1 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8101, lo: 0xb0, hi: 0xb4}, -+ // Block 0x8d, offset 0x2c3 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8133, lo: 0xb0, hi: 0xb6}, -+ // Block 0x8e, offset 0x2c5 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8102, lo: 0xb0, hi: 0xb1}, -+ // Block 0x8f, offset 0x2c7 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8101, lo: 0x9e, hi: 0x9e}, -+ // Block 0x90, offset 0x2c9 -+ {value: 0x0000, lo: 0x0c}, -+ {value: 0x45e3, lo: 0x9e, hi: 0x9e}, -+ {value: 0x45ed, lo: 0x9f, hi: 0x9f}, -+ {value: 0x4621, lo: 0xa0, hi: 0xa0}, -+ {value: 0x462f, lo: 0xa1, hi: 0xa1}, -+ {value: 0x463d, lo: 0xa2, hi: 0xa2}, -+ {value: 0x464b, lo: 0xa3, hi: 0xa3}, -+ {value: 0x4659, lo: 0xa4, hi: 0xa4}, -+ {value: 0x812c, lo: 0xa5, hi: 0xa6}, -+ {value: 0x8101, lo: 0xa7, hi: 0xa9}, -+ {value: 0x8131, lo: 0xad, hi: 0xad}, -+ {value: 0x812c, lo: 0xae, hi: 0xb2}, -+ {value: 0x812e, lo: 0xbb, hi: 0xbf}, -+ // Block 0x91, offset 0x2d6 -+ {value: 0x0000, lo: 0x09}, -+ {value: 0x812e, lo: 0x80, hi: 0x82}, -+ {value: 0x8133, lo: 0x85, hi: 0x89}, -+ {value: 0x812e, lo: 0x8a, hi: 0x8b}, -+ {value: 0x8133, lo: 0xaa, hi: 0xad}, -+ {value: 0x45f7, lo: 0xbb, hi: 0xbb}, -+ {value: 0x4601, lo: 0xbc, hi: 0xbc}, -+ {value: 0x4667, lo: 0xbd, hi: 0xbd}, -+ {value: 0x4683, lo: 0xbe, hi: 0xbe}, -+ {value: 0x4675, lo: 0xbf, hi: 0xbf}, -+ // Block 0x92, offset 0x2e0 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x4691, lo: 0x80, hi: 0x80}, -+ // Block 0x93, offset 0x2e2 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8133, lo: 0x82, hi: 0x84}, -+ // Block 0x94, offset 0x2e4 -+ {value: 0x0002, lo: 0x03}, -+ {value: 0x0043, lo: 0x80, hi: 0x99}, -+ {value: 0x0083, lo: 0x9a, hi: 0xb3}, -+ {value: 0x0043, lo: 0xb4, hi: 0xbf}, -+ // Block 0x95, offset 0x2e8 -+ {value: 0x0002, lo: 0x04}, -+ {value: 0x005b, lo: 0x80, hi: 0x8d}, -+ {value: 0x0083, lo: 0x8e, hi: 0x94}, -+ {value: 0x0093, lo: 0x96, hi: 0xa7}, -+ {value: 0x0043, lo: 0xa8, hi: 0xbf}, -+ // Block 0x96, offset 0x2ed -+ {value: 0x0002, lo: 0x0b}, -+ {value: 0x0073, lo: 0x80, hi: 0x81}, -+ {value: 0x0083, lo: 0x82, hi: 0x9b}, -+ {value: 0x0043, lo: 0x9c, hi: 0x9c}, -+ {value: 0x0047, lo: 0x9e, hi: 0x9f}, -+ {value: 0x004f, lo: 0xa2, hi: 0xa2}, -+ {value: 0x0055, lo: 0xa5, hi: 0xa6}, -+ {value: 0x005d, lo: 0xa9, hi: 0xac}, -+ {value: 0x0067, lo: 0xae, hi: 0xb5}, -+ {value: 0x0083, lo: 0xb6, hi: 0xb9}, -+ {value: 0x008d, lo: 0xbb, hi: 0xbb}, -+ {value: 0x0091, lo: 0xbd, hi: 0xbf}, -+ // Block 0x97, offset 0x2f9 -+ {value: 0x0002, lo: 0x04}, -+ {value: 0x0097, lo: 0x80, hi: 0x83}, -+ {value: 0x00a1, lo: 0x85, hi: 0x8f}, -+ {value: 0x0043, lo: 0x90, hi: 0xa9}, -+ {value: 0x0083, lo: 0xaa, hi: 0xbf}, -+ // Block 0x98, offset 0x2fe -+ {value: 0x0002, lo: 0x08}, -+ {value: 0x00af, lo: 0x80, hi: 0x83}, -+ {value: 0x0043, lo: 0x84, hi: 0x85}, -+ {value: 0x0049, lo: 0x87, hi: 0x8a}, -+ {value: 0x0055, lo: 0x8d, hi: 0x94}, -+ {value: 0x0067, lo: 0x96, hi: 0x9c}, -+ {value: 0x0083, lo: 0x9e, hi: 0xb7}, -+ {value: 0x0043, lo: 0xb8, hi: 0xb9}, -+ {value: 0x0049, lo: 0xbb, hi: 0xbe}, -+ // Block 0x99, offset 0x307 -+ {value: 0x0002, lo: 0x05}, -+ {value: 0x0053, lo: 0x80, hi: 0x84}, -+ {value: 0x005f, lo: 0x86, hi: 0x86}, -+ {value: 0x0067, lo: 0x8a, hi: 0x90}, -+ {value: 0x0083, lo: 0x92, hi: 0xab}, -+ {value: 0x0043, lo: 0xac, hi: 0xbf}, -+ // Block 0x9a, offset 0x30d -+ {value: 0x0002, lo: 0x04}, -+ {value: 0x006b, lo: 0x80, hi: 0x85}, -+ {value: 0x0083, lo: 0x86, hi: 0x9f}, -+ {value: 0x0043, lo: 0xa0, hi: 0xb9}, -+ {value: 0x0083, lo: 0xba, hi: 0xbf}, -+ // Block 0x9b, offset 0x312 -+ {value: 0x0002, lo: 0x03}, -+ {value: 0x008f, lo: 0x80, hi: 0x93}, -+ {value: 0x0043, lo: 0x94, hi: 0xad}, -+ {value: 0x0083, lo: 0xae, hi: 0xbf}, -+ // Block 0x9c, offset 0x316 -+ {value: 0x0002, lo: 0x04}, -+ {value: 0x00a7, lo: 0x80, hi: 0x87}, -+ {value: 0x0043, lo: 0x88, hi: 0xa1}, -+ {value: 0x0083, lo: 0xa2, hi: 0xbb}, -+ {value: 0x0043, lo: 0xbc, hi: 0xbf}, -+ // Block 0x9d, offset 0x31b -+ {value: 0x0002, lo: 0x03}, -+ {value: 0x004b, lo: 0x80, hi: 0x95}, -+ {value: 0x0083, lo: 0x96, hi: 0xaf}, -+ {value: 0x0043, lo: 0xb0, hi: 0xbf}, -+ // Block 0x9e, offset 0x31f -+ {value: 0x0003, lo: 0x0f}, -+ {value: 0x01bb, lo: 0x80, hi: 0x80}, -+ {value: 0x0462, lo: 0x81, hi: 0x81}, -+ {value: 0x01be, lo: 0x82, hi: 0x9a}, -+ {value: 0x045e, lo: 0x9b, hi: 0x9b}, -+ {value: 0x01ca, lo: 0x9c, hi: 0x9c}, -+ {value: 0x01d3, lo: 0x9d, hi: 0x9d}, -+ {value: 0x01d9, lo: 0x9e, hi: 0x9e}, -+ {value: 0x01fd, lo: 0x9f, hi: 0x9f}, -+ {value: 0x01ee, lo: 0xa0, hi: 0xa0}, -+ {value: 0x01eb, lo: 0xa1, hi: 0xa1}, -+ {value: 0x0176, lo: 0xa2, hi: 0xb2}, -+ {value: 0x018b, lo: 0xb3, hi: 0xb3}, -+ {value: 0x01a9, lo: 0xb4, hi: 0xba}, -+ {value: 0x0462, lo: 0xbb, hi: 0xbb}, -+ {value: 0x01be, lo: 0xbc, hi: 0xbf}, -+ // Block 0x9f, offset 0x32f -+ {value: 0x0003, lo: 0x0d}, -+ {value: 0x01ca, lo: 0x80, hi: 0x94}, -+ {value: 0x045e, lo: 0x95, hi: 0x95}, -+ {value: 0x01ca, lo: 0x96, hi: 0x96}, -+ {value: 0x01d3, lo: 0x97, hi: 0x97}, -+ {value: 0x01d9, lo: 0x98, hi: 0x98}, -+ {value: 0x01fd, lo: 0x99, hi: 0x99}, -+ {value: 0x01ee, lo: 0x9a, hi: 0x9a}, -+ {value: 0x01eb, lo: 0x9b, hi: 0x9b}, -+ {value: 0x0176, lo: 0x9c, hi: 0xac}, -+ {value: 0x018b, lo: 0xad, hi: 0xad}, -+ {value: 0x01a9, lo: 0xae, hi: 0xb4}, -+ {value: 0x0462, lo: 0xb5, hi: 0xb5}, -+ {value: 0x01be, lo: 0xb6, hi: 0xbf}, -+ // Block 0xa0, offset 0x33d -+ {value: 0x0003, lo: 0x0d}, -+ {value: 0x01dc, lo: 0x80, hi: 0x8e}, -+ {value: 0x045e, lo: 0x8f, hi: 0x8f}, -+ {value: 0x01ca, lo: 0x90, hi: 0x90}, -+ {value: 0x01d3, lo: 0x91, hi: 0x91}, -+ {value: 0x01d9, lo: 0x92, hi: 0x92}, -+ {value: 0x01fd, lo: 0x93, hi: 0x93}, -+ {value: 0x01ee, lo: 0x94, hi: 0x94}, -+ {value: 0x01eb, lo: 0x95, hi: 0x95}, -+ {value: 0x0176, lo: 0x96, hi: 0xa6}, -+ {value: 0x018b, lo: 0xa7, hi: 0xa7}, -+ {value: 0x01a9, lo: 0xa8, hi: 0xae}, -+ {value: 0x0462, lo: 0xaf, hi: 0xaf}, -+ {value: 0x01be, lo: 0xb0, hi: 0xbf}, -+ // Block 0xa1, offset 0x34b -+ {value: 0x0003, lo: 0x0d}, -+ {value: 0x01ee, lo: 0x80, hi: 0x88}, -+ {value: 0x045e, lo: 0x89, hi: 0x89}, -+ {value: 0x01ca, lo: 0x8a, hi: 0x8a}, -+ {value: 0x01d3, lo: 0x8b, hi: 0x8b}, -+ {value: 0x01d9, lo: 0x8c, hi: 0x8c}, -+ {value: 0x01fd, lo: 0x8d, hi: 0x8d}, -+ {value: 0x01ee, lo: 0x8e, hi: 0x8e}, -+ {value: 0x01eb, lo: 0x8f, hi: 0x8f}, -+ {value: 0x0176, lo: 0x90, hi: 0xa0}, -+ {value: 0x018b, lo: 0xa1, hi: 0xa1}, -+ {value: 0x01a9, lo: 0xa2, hi: 0xa8}, -+ {value: 0x0462, lo: 0xa9, hi: 0xa9}, -+ {value: 0x01be, lo: 0xaa, hi: 0xbf}, -+ // Block 0xa2, offset 0x359 -+ {value: 0x0000, lo: 0x05}, -+ {value: 0x8133, lo: 0x80, hi: 0x86}, -+ {value: 0x8133, lo: 0x88, hi: 0x98}, -+ {value: 0x8133, lo: 0x9b, hi: 0xa1}, -+ {value: 0x8133, lo: 0xa3, hi: 0xa4}, -+ {value: 0x8133, lo: 0xa6, hi: 0xaa}, -+ // Block 0xa3, offset 0x35f -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x8133, lo: 0xac, hi: 0xaf}, -+ // Block 0xa4, offset 0x361 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x812e, lo: 0x90, hi: 0x96}, -+ // Block 0xa5, offset 0x363 -+ {value: 0x0000, lo: 0x02}, -+ {value: 0x8133, lo: 0x84, hi: 0x89}, -+ {value: 0x8103, lo: 0x8a, hi: 0x8a}, -+ // Block 0xa6, offset 0x366 -+ {value: 0x0002, lo: 0x0a}, -+ {value: 0x0063, lo: 0x80, hi: 0x89}, -+ {value: 0x1954, lo: 0x8a, hi: 0x8a}, -+ {value: 0x1987, lo: 0x8b, hi: 0x8b}, -+ {value: 0x19a2, lo: 0x8c, hi: 0x8c}, -+ {value: 0x19a8, lo: 0x8d, hi: 0x8d}, -+ {value: 0x1bc6, lo: 0x8e, hi: 0x8e}, -+ {value: 0x19b4, lo: 0x8f, hi: 0x8f}, -+ {value: 0x197e, lo: 0xaa, hi: 0xaa}, -+ {value: 0x1981, lo: 0xab, hi: 0xab}, -+ {value: 0x1984, lo: 0xac, hi: 0xac}, -+ // Block 0xa7, offset 0x371 -+ {value: 0x0000, lo: 0x01}, -+ {value: 0x1942, lo: 0x90, hi: 0x90}, -+ // Block 0xa8, offset 0x373 -+ {value: 0x0028, lo: 0x09}, -+ {value: 0x286f, lo: 0x80, hi: 0x80}, -+ {value: 0x2833, lo: 0x81, hi: 0x81}, -+ {value: 0x283d, lo: 0x82, hi: 0x82}, -+ {value: 0x2851, lo: 0x83, hi: 0x84}, -+ {value: 0x285b, lo: 0x85, hi: 0x86}, -+ {value: 0x2847, lo: 0x87, hi: 0x87}, -+ {value: 0x2865, lo: 0x88, hi: 0x88}, -+ {value: 0x0b72, lo: 0x90, hi: 0x90}, -+ {value: 0x08ea, lo: 0x91, hi: 0x91}, -+ // Block 0xa9, offset 0x37d -+ {value: 0x0002, lo: 0x01}, -+ {value: 0x0021, lo: 0xb0, hi: 0xb9}, -+} -+ -+// recompMap: 7528 bytes (entries only) -+var recompMap map[uint32]rune -+var recompMapOnce sync.Once -+ -+const recompMapPacked = "" + -+ "\x00A\x03\x00\x00\x00\x00\xc0" + // 0x00410300: 0x000000C0 -+ "\x00A\x03\x01\x00\x00\x00\xc1" + // 0x00410301: 0x000000C1 -+ "\x00A\x03\x02\x00\x00\x00\xc2" + // 0x00410302: 0x000000C2 -+ "\x00A\x03\x03\x00\x00\x00\xc3" + // 0x00410303: 0x000000C3 -+ "\x00A\x03\b\x00\x00\x00\xc4" + // 0x00410308: 0x000000C4 -+ "\x00A\x03\n\x00\x00\x00\xc5" + // 0x0041030A: 0x000000C5 -+ "\x00C\x03'\x00\x00\x00\xc7" + // 0x00430327: 0x000000C7 -+ "\x00E\x03\x00\x00\x00\x00\xc8" + // 0x00450300: 0x000000C8 -+ "\x00E\x03\x01\x00\x00\x00\xc9" + // 0x00450301: 0x000000C9 -+ "\x00E\x03\x02\x00\x00\x00\xca" + // 0x00450302: 0x000000CA -+ "\x00E\x03\b\x00\x00\x00\xcb" + // 0x00450308: 0x000000CB -+ "\x00I\x03\x00\x00\x00\x00\xcc" + // 0x00490300: 0x000000CC -+ "\x00I\x03\x01\x00\x00\x00\xcd" + // 0x00490301: 0x000000CD -+ "\x00I\x03\x02\x00\x00\x00\xce" + // 0x00490302: 0x000000CE -+ "\x00I\x03\b\x00\x00\x00\xcf" + // 0x00490308: 0x000000CF -+ "\x00N\x03\x03\x00\x00\x00\xd1" + // 0x004E0303: 0x000000D1 -+ "\x00O\x03\x00\x00\x00\x00\xd2" + // 0x004F0300: 0x000000D2 -+ "\x00O\x03\x01\x00\x00\x00\xd3" + // 0x004F0301: 0x000000D3 -+ "\x00O\x03\x02\x00\x00\x00\xd4" + // 0x004F0302: 0x000000D4 -+ "\x00O\x03\x03\x00\x00\x00\xd5" + // 0x004F0303: 0x000000D5 -+ "\x00O\x03\b\x00\x00\x00\xd6" + // 0x004F0308: 0x000000D6 -+ "\x00U\x03\x00\x00\x00\x00\xd9" + // 0x00550300: 0x000000D9 -+ "\x00U\x03\x01\x00\x00\x00\xda" + // 0x00550301: 0x000000DA -+ "\x00U\x03\x02\x00\x00\x00\xdb" + // 0x00550302: 0x000000DB -+ "\x00U\x03\b\x00\x00\x00\xdc" + // 0x00550308: 0x000000DC -+ "\x00Y\x03\x01\x00\x00\x00\xdd" + // 0x00590301: 0x000000DD -+ "\x00a\x03\x00\x00\x00\x00\xe0" + // 0x00610300: 0x000000E0 -+ "\x00a\x03\x01\x00\x00\x00\xe1" + // 0x00610301: 0x000000E1 -+ "\x00a\x03\x02\x00\x00\x00\xe2" + // 0x00610302: 0x000000E2 -+ "\x00a\x03\x03\x00\x00\x00\xe3" + // 0x00610303: 0x000000E3 -+ "\x00a\x03\b\x00\x00\x00\xe4" + // 0x00610308: 0x000000E4 -+ "\x00a\x03\n\x00\x00\x00\xe5" + // 0x0061030A: 0x000000E5 -+ "\x00c\x03'\x00\x00\x00\xe7" + // 0x00630327: 0x000000E7 -+ "\x00e\x03\x00\x00\x00\x00\xe8" + // 0x00650300: 0x000000E8 -+ "\x00e\x03\x01\x00\x00\x00\xe9" + // 0x00650301: 0x000000E9 -+ "\x00e\x03\x02\x00\x00\x00\xea" + // 0x00650302: 0x000000EA -+ "\x00e\x03\b\x00\x00\x00\xeb" + // 0x00650308: 0x000000EB -+ "\x00i\x03\x00\x00\x00\x00\xec" + // 0x00690300: 0x000000EC -+ "\x00i\x03\x01\x00\x00\x00\xed" + // 0x00690301: 0x000000ED -+ "\x00i\x03\x02\x00\x00\x00\xee" + // 0x00690302: 0x000000EE -+ "\x00i\x03\b\x00\x00\x00\xef" + // 0x00690308: 0x000000EF -+ "\x00n\x03\x03\x00\x00\x00\xf1" + // 0x006E0303: 0x000000F1 -+ "\x00o\x03\x00\x00\x00\x00\xf2" + // 0x006F0300: 0x000000F2 -+ "\x00o\x03\x01\x00\x00\x00\xf3" + // 0x006F0301: 0x000000F3 -+ "\x00o\x03\x02\x00\x00\x00\xf4" + // 0x006F0302: 0x000000F4 -+ "\x00o\x03\x03\x00\x00\x00\xf5" + // 0x006F0303: 0x000000F5 -+ "\x00o\x03\b\x00\x00\x00\xf6" + // 0x006F0308: 0x000000F6 -+ "\x00u\x03\x00\x00\x00\x00\xf9" + // 0x00750300: 0x000000F9 -+ "\x00u\x03\x01\x00\x00\x00\xfa" + // 0x00750301: 0x000000FA -+ "\x00u\x03\x02\x00\x00\x00\xfb" + // 0x00750302: 0x000000FB -+ "\x00u\x03\b\x00\x00\x00\xfc" + // 0x00750308: 0x000000FC -+ "\x00y\x03\x01\x00\x00\x00\xfd" + // 0x00790301: 0x000000FD -+ "\x00y\x03\b\x00\x00\x00\xff" + // 0x00790308: 0x000000FF -+ "\x00A\x03\x04\x00\x00\x01\x00" + // 0x00410304: 0x00000100 -+ "\x00a\x03\x04\x00\x00\x01\x01" + // 0x00610304: 0x00000101 -+ "\x00A\x03\x06\x00\x00\x01\x02" + // 0x00410306: 0x00000102 -+ "\x00a\x03\x06\x00\x00\x01\x03" + // 0x00610306: 0x00000103 -+ "\x00A\x03(\x00\x00\x01\x04" + // 0x00410328: 0x00000104 -+ "\x00a\x03(\x00\x00\x01\x05" + // 0x00610328: 0x00000105 -+ "\x00C\x03\x01\x00\x00\x01\x06" + // 0x00430301: 0x00000106 -+ "\x00c\x03\x01\x00\x00\x01\a" + // 0x00630301: 0x00000107 -+ "\x00C\x03\x02\x00\x00\x01\b" + // 0x00430302: 0x00000108 -+ "\x00c\x03\x02\x00\x00\x01\t" + // 0x00630302: 0x00000109 -+ "\x00C\x03\a\x00\x00\x01\n" + // 0x00430307: 0x0000010A -+ "\x00c\x03\a\x00\x00\x01\v" + // 0x00630307: 0x0000010B -+ "\x00C\x03\f\x00\x00\x01\f" + // 0x0043030C: 0x0000010C -+ "\x00c\x03\f\x00\x00\x01\r" + // 0x0063030C: 0x0000010D -+ "\x00D\x03\f\x00\x00\x01\x0e" + // 0x0044030C: 0x0000010E -+ "\x00d\x03\f\x00\x00\x01\x0f" + // 0x0064030C: 0x0000010F -+ "\x00E\x03\x04\x00\x00\x01\x12" + // 0x00450304: 0x00000112 -+ "\x00e\x03\x04\x00\x00\x01\x13" + // 0x00650304: 0x00000113 -+ "\x00E\x03\x06\x00\x00\x01\x14" + // 0x00450306: 0x00000114 -+ "\x00e\x03\x06\x00\x00\x01\x15" + // 0x00650306: 0x00000115 -+ "\x00E\x03\a\x00\x00\x01\x16" + // 0x00450307: 0x00000116 -+ "\x00e\x03\a\x00\x00\x01\x17" + // 0x00650307: 0x00000117 -+ "\x00E\x03(\x00\x00\x01\x18" + // 0x00450328: 0x00000118 -+ "\x00e\x03(\x00\x00\x01\x19" + // 0x00650328: 0x00000119 -+ "\x00E\x03\f\x00\x00\x01\x1a" + // 0x0045030C: 0x0000011A -+ "\x00e\x03\f\x00\x00\x01\x1b" + // 0x0065030C: 0x0000011B -+ "\x00G\x03\x02\x00\x00\x01\x1c" + // 0x00470302: 0x0000011C -+ "\x00g\x03\x02\x00\x00\x01\x1d" + // 0x00670302: 0x0000011D -+ "\x00G\x03\x06\x00\x00\x01\x1e" + // 0x00470306: 0x0000011E -+ "\x00g\x03\x06\x00\x00\x01\x1f" + // 0x00670306: 0x0000011F -+ "\x00G\x03\a\x00\x00\x01 " + // 0x00470307: 0x00000120 -+ "\x00g\x03\a\x00\x00\x01!" + // 0x00670307: 0x00000121 -+ "\x00G\x03'\x00\x00\x01\"" + // 0x00470327: 0x00000122 -+ "\x00g\x03'\x00\x00\x01#" + // 0x00670327: 0x00000123 -+ "\x00H\x03\x02\x00\x00\x01$" + // 0x00480302: 0x00000124 -+ "\x00h\x03\x02\x00\x00\x01%" + // 0x00680302: 0x00000125 -+ "\x00I\x03\x03\x00\x00\x01(" + // 0x00490303: 0x00000128 -+ "\x00i\x03\x03\x00\x00\x01)" + // 0x00690303: 0x00000129 -+ "\x00I\x03\x04\x00\x00\x01*" + // 0x00490304: 0x0000012A -+ "\x00i\x03\x04\x00\x00\x01+" + // 0x00690304: 0x0000012B -+ "\x00I\x03\x06\x00\x00\x01," + // 0x00490306: 0x0000012C -+ "\x00i\x03\x06\x00\x00\x01-" + // 0x00690306: 0x0000012D -+ "\x00I\x03(\x00\x00\x01." + // 0x00490328: 0x0000012E -+ "\x00i\x03(\x00\x00\x01/" + // 0x00690328: 0x0000012F -+ "\x00I\x03\a\x00\x00\x010" + // 0x00490307: 0x00000130 -+ "\x00J\x03\x02\x00\x00\x014" + // 0x004A0302: 0x00000134 -+ "\x00j\x03\x02\x00\x00\x015" + // 0x006A0302: 0x00000135 -+ "\x00K\x03'\x00\x00\x016" + // 0x004B0327: 0x00000136 -+ "\x00k\x03'\x00\x00\x017" + // 0x006B0327: 0x00000137 -+ "\x00L\x03\x01\x00\x00\x019" + // 0x004C0301: 0x00000139 -+ "\x00l\x03\x01\x00\x00\x01:" + // 0x006C0301: 0x0000013A -+ "\x00L\x03'\x00\x00\x01;" + // 0x004C0327: 0x0000013B -+ "\x00l\x03'\x00\x00\x01<" + // 0x006C0327: 0x0000013C -+ "\x00L\x03\f\x00\x00\x01=" + // 0x004C030C: 0x0000013D -+ "\x00l\x03\f\x00\x00\x01>" + // 0x006C030C: 0x0000013E -+ "\x00N\x03\x01\x00\x00\x01C" + // 0x004E0301: 0x00000143 -+ "\x00n\x03\x01\x00\x00\x01D" + // 0x006E0301: 0x00000144 -+ "\x00N\x03'\x00\x00\x01E" + // 0x004E0327: 0x00000145 -+ "\x00n\x03'\x00\x00\x01F" + // 0x006E0327: 0x00000146 -+ "\x00N\x03\f\x00\x00\x01G" + // 0x004E030C: 0x00000147 -+ "\x00n\x03\f\x00\x00\x01H" + // 0x006E030C: 0x00000148 -+ "\x00O\x03\x04\x00\x00\x01L" + // 0x004F0304: 0x0000014C -+ "\x00o\x03\x04\x00\x00\x01M" + // 0x006F0304: 0x0000014D -+ "\x00O\x03\x06\x00\x00\x01N" + // 0x004F0306: 0x0000014E -+ "\x00o\x03\x06\x00\x00\x01O" + // 0x006F0306: 0x0000014F -+ "\x00O\x03\v\x00\x00\x01P" + // 0x004F030B: 0x00000150 -+ "\x00o\x03\v\x00\x00\x01Q" + // 0x006F030B: 0x00000151 -+ "\x00R\x03\x01\x00\x00\x01T" + // 0x00520301: 0x00000154 -+ "\x00r\x03\x01\x00\x00\x01U" + // 0x00720301: 0x00000155 -+ "\x00R\x03'\x00\x00\x01V" + // 0x00520327: 0x00000156 -+ "\x00r\x03'\x00\x00\x01W" + // 0x00720327: 0x00000157 -+ "\x00R\x03\f\x00\x00\x01X" + // 0x0052030C: 0x00000158 -+ "\x00r\x03\f\x00\x00\x01Y" + // 0x0072030C: 0x00000159 -+ "\x00S\x03\x01\x00\x00\x01Z" + // 0x00530301: 0x0000015A -+ "\x00s\x03\x01\x00\x00\x01[" + // 0x00730301: 0x0000015B -+ "\x00S\x03\x02\x00\x00\x01\\" + // 0x00530302: 0x0000015C -+ "\x00s\x03\x02\x00\x00\x01]" + // 0x00730302: 0x0000015D -+ "\x00S\x03'\x00\x00\x01^" + // 0x00530327: 0x0000015E -+ "\x00s\x03'\x00\x00\x01_" + // 0x00730327: 0x0000015F -+ "\x00S\x03\f\x00\x00\x01`" + // 0x0053030C: 0x00000160 -+ "\x00s\x03\f\x00\x00\x01a" + // 0x0073030C: 0x00000161 -+ "\x00T\x03'\x00\x00\x01b" + // 0x00540327: 0x00000162 -+ "\x00t\x03'\x00\x00\x01c" + // 0x00740327: 0x00000163 -+ "\x00T\x03\f\x00\x00\x01d" + // 0x0054030C: 0x00000164 -+ "\x00t\x03\f\x00\x00\x01e" + // 0x0074030C: 0x00000165 -+ "\x00U\x03\x03\x00\x00\x01h" + // 0x00550303: 0x00000168 -+ "\x00u\x03\x03\x00\x00\x01i" + // 0x00750303: 0x00000169 -+ "\x00U\x03\x04\x00\x00\x01j" + // 0x00550304: 0x0000016A -+ "\x00u\x03\x04\x00\x00\x01k" + // 0x00750304: 0x0000016B -+ "\x00U\x03\x06\x00\x00\x01l" + // 0x00550306: 0x0000016C -+ "\x00u\x03\x06\x00\x00\x01m" + // 0x00750306: 0x0000016D -+ "\x00U\x03\n\x00\x00\x01n" + // 0x0055030A: 0x0000016E -+ "\x00u\x03\n\x00\x00\x01o" + // 0x0075030A: 0x0000016F -+ "\x00U\x03\v\x00\x00\x01p" + // 0x0055030B: 0x00000170 -+ "\x00u\x03\v\x00\x00\x01q" + // 0x0075030B: 0x00000171 -+ "\x00U\x03(\x00\x00\x01r" + // 0x00550328: 0x00000172 -+ "\x00u\x03(\x00\x00\x01s" + // 0x00750328: 0x00000173 -+ "\x00W\x03\x02\x00\x00\x01t" + // 0x00570302: 0x00000174 -+ "\x00w\x03\x02\x00\x00\x01u" + // 0x00770302: 0x00000175 -+ "\x00Y\x03\x02\x00\x00\x01v" + // 0x00590302: 0x00000176 -+ "\x00y\x03\x02\x00\x00\x01w" + // 0x00790302: 0x00000177 -+ "\x00Y\x03\b\x00\x00\x01x" + // 0x00590308: 0x00000178 -+ "\x00Z\x03\x01\x00\x00\x01y" + // 0x005A0301: 0x00000179 -+ "\x00z\x03\x01\x00\x00\x01z" + // 0x007A0301: 0x0000017A -+ "\x00Z\x03\a\x00\x00\x01{" + // 0x005A0307: 0x0000017B -+ "\x00z\x03\a\x00\x00\x01|" + // 0x007A0307: 0x0000017C -+ "\x00Z\x03\f\x00\x00\x01}" + // 0x005A030C: 0x0000017D -+ "\x00z\x03\f\x00\x00\x01~" + // 0x007A030C: 0x0000017E -+ "\x00O\x03\x1b\x00\x00\x01\xa0" + // 0x004F031B: 0x000001A0 -+ "\x00o\x03\x1b\x00\x00\x01\xa1" + // 0x006F031B: 0x000001A1 -+ "\x00U\x03\x1b\x00\x00\x01\xaf" + // 0x0055031B: 0x000001AF -+ "\x00u\x03\x1b\x00\x00\x01\xb0" + // 0x0075031B: 0x000001B0 -+ "\x00A\x03\f\x00\x00\x01\xcd" + // 0x0041030C: 0x000001CD -+ "\x00a\x03\f\x00\x00\x01\xce" + // 0x0061030C: 0x000001CE -+ "\x00I\x03\f\x00\x00\x01\xcf" + // 0x0049030C: 0x000001CF -+ "\x00i\x03\f\x00\x00\x01\xd0" + // 0x0069030C: 0x000001D0 -+ "\x00O\x03\f\x00\x00\x01\xd1" + // 0x004F030C: 0x000001D1 -+ "\x00o\x03\f\x00\x00\x01\xd2" + // 0x006F030C: 0x000001D2 -+ "\x00U\x03\f\x00\x00\x01\xd3" + // 0x0055030C: 0x000001D3 -+ "\x00u\x03\f\x00\x00\x01\xd4" + // 0x0075030C: 0x000001D4 -+ "\x00\xdc\x03\x04\x00\x00\x01\xd5" + // 0x00DC0304: 0x000001D5 -+ "\x00\xfc\x03\x04\x00\x00\x01\xd6" + // 0x00FC0304: 0x000001D6 -+ "\x00\xdc\x03\x01\x00\x00\x01\xd7" + // 0x00DC0301: 0x000001D7 -+ "\x00\xfc\x03\x01\x00\x00\x01\xd8" + // 0x00FC0301: 0x000001D8 -+ "\x00\xdc\x03\f\x00\x00\x01\xd9" + // 0x00DC030C: 0x000001D9 -+ "\x00\xfc\x03\f\x00\x00\x01\xda" + // 0x00FC030C: 0x000001DA -+ "\x00\xdc\x03\x00\x00\x00\x01\xdb" + // 0x00DC0300: 0x000001DB -+ "\x00\xfc\x03\x00\x00\x00\x01\xdc" + // 0x00FC0300: 0x000001DC -+ "\x00\xc4\x03\x04\x00\x00\x01\xde" + // 0x00C40304: 0x000001DE -+ "\x00\xe4\x03\x04\x00\x00\x01\xdf" + // 0x00E40304: 0x000001DF -+ "\x02&\x03\x04\x00\x00\x01\xe0" + // 0x02260304: 0x000001E0 -+ "\x02'\x03\x04\x00\x00\x01\xe1" + // 0x02270304: 0x000001E1 -+ "\x00\xc6\x03\x04\x00\x00\x01\xe2" + // 0x00C60304: 0x000001E2 -+ "\x00\xe6\x03\x04\x00\x00\x01\xe3" + // 0x00E60304: 0x000001E3 -+ "\x00G\x03\f\x00\x00\x01\xe6" + // 0x0047030C: 0x000001E6 -+ "\x00g\x03\f\x00\x00\x01\xe7" + // 0x0067030C: 0x000001E7 -+ "\x00K\x03\f\x00\x00\x01\xe8" + // 0x004B030C: 0x000001E8 -+ "\x00k\x03\f\x00\x00\x01\xe9" + // 0x006B030C: 0x000001E9 -+ "\x00O\x03(\x00\x00\x01\xea" + // 0x004F0328: 0x000001EA -+ "\x00o\x03(\x00\x00\x01\xeb" + // 0x006F0328: 0x000001EB -+ "\x01\xea\x03\x04\x00\x00\x01\xec" + // 0x01EA0304: 0x000001EC -+ "\x01\xeb\x03\x04\x00\x00\x01\xed" + // 0x01EB0304: 0x000001ED -+ "\x01\xb7\x03\f\x00\x00\x01\xee" + // 0x01B7030C: 0x000001EE -+ "\x02\x92\x03\f\x00\x00\x01\xef" + // 0x0292030C: 0x000001EF -+ "\x00j\x03\f\x00\x00\x01\xf0" + // 0x006A030C: 0x000001F0 -+ "\x00G\x03\x01\x00\x00\x01\xf4" + // 0x00470301: 0x000001F4 -+ "\x00g\x03\x01\x00\x00\x01\xf5" + // 0x00670301: 0x000001F5 -+ "\x00N\x03\x00\x00\x00\x01\xf8" + // 0x004E0300: 0x000001F8 -+ "\x00n\x03\x00\x00\x00\x01\xf9" + // 0x006E0300: 0x000001F9 -+ "\x00\xc5\x03\x01\x00\x00\x01\xfa" + // 0x00C50301: 0x000001FA -+ "\x00\xe5\x03\x01\x00\x00\x01\xfb" + // 0x00E50301: 0x000001FB -+ "\x00\xc6\x03\x01\x00\x00\x01\xfc" + // 0x00C60301: 0x000001FC -+ "\x00\xe6\x03\x01\x00\x00\x01\xfd" + // 0x00E60301: 0x000001FD -+ "\x00\xd8\x03\x01\x00\x00\x01\xfe" + // 0x00D80301: 0x000001FE -+ "\x00\xf8\x03\x01\x00\x00\x01\xff" + // 0x00F80301: 0x000001FF -+ "\x00A\x03\x0f\x00\x00\x02\x00" + // 0x0041030F: 0x00000200 -+ "\x00a\x03\x0f\x00\x00\x02\x01" + // 0x0061030F: 0x00000201 -+ "\x00A\x03\x11\x00\x00\x02\x02" + // 0x00410311: 0x00000202 -+ "\x00a\x03\x11\x00\x00\x02\x03" + // 0x00610311: 0x00000203 -+ "\x00E\x03\x0f\x00\x00\x02\x04" + // 0x0045030F: 0x00000204 -+ "\x00e\x03\x0f\x00\x00\x02\x05" + // 0x0065030F: 0x00000205 -+ "\x00E\x03\x11\x00\x00\x02\x06" + // 0x00450311: 0x00000206 -+ "\x00e\x03\x11\x00\x00\x02\a" + // 0x00650311: 0x00000207 -+ "\x00I\x03\x0f\x00\x00\x02\b" + // 0x0049030F: 0x00000208 -+ "\x00i\x03\x0f\x00\x00\x02\t" + // 0x0069030F: 0x00000209 -+ "\x00I\x03\x11\x00\x00\x02\n" + // 0x00490311: 0x0000020A -+ "\x00i\x03\x11\x00\x00\x02\v" + // 0x00690311: 0x0000020B -+ "\x00O\x03\x0f\x00\x00\x02\f" + // 0x004F030F: 0x0000020C -+ "\x00o\x03\x0f\x00\x00\x02\r" + // 0x006F030F: 0x0000020D -+ "\x00O\x03\x11\x00\x00\x02\x0e" + // 0x004F0311: 0x0000020E -+ "\x00o\x03\x11\x00\x00\x02\x0f" + // 0x006F0311: 0x0000020F -+ "\x00R\x03\x0f\x00\x00\x02\x10" + // 0x0052030F: 0x00000210 -+ "\x00r\x03\x0f\x00\x00\x02\x11" + // 0x0072030F: 0x00000211 -+ "\x00R\x03\x11\x00\x00\x02\x12" + // 0x00520311: 0x00000212 -+ "\x00r\x03\x11\x00\x00\x02\x13" + // 0x00720311: 0x00000213 -+ "\x00U\x03\x0f\x00\x00\x02\x14" + // 0x0055030F: 0x00000214 -+ "\x00u\x03\x0f\x00\x00\x02\x15" + // 0x0075030F: 0x00000215 -+ "\x00U\x03\x11\x00\x00\x02\x16" + // 0x00550311: 0x00000216 -+ "\x00u\x03\x11\x00\x00\x02\x17" + // 0x00750311: 0x00000217 -+ "\x00S\x03&\x00\x00\x02\x18" + // 0x00530326: 0x00000218 -+ "\x00s\x03&\x00\x00\x02\x19" + // 0x00730326: 0x00000219 -+ "\x00T\x03&\x00\x00\x02\x1a" + // 0x00540326: 0x0000021A -+ "\x00t\x03&\x00\x00\x02\x1b" + // 0x00740326: 0x0000021B -+ "\x00H\x03\f\x00\x00\x02\x1e" + // 0x0048030C: 0x0000021E -+ "\x00h\x03\f\x00\x00\x02\x1f" + // 0x0068030C: 0x0000021F -+ "\x00A\x03\a\x00\x00\x02&" + // 0x00410307: 0x00000226 -+ "\x00a\x03\a\x00\x00\x02'" + // 0x00610307: 0x00000227 -+ "\x00E\x03'\x00\x00\x02(" + // 0x00450327: 0x00000228 -+ "\x00e\x03'\x00\x00\x02)" + // 0x00650327: 0x00000229 -+ "\x00\xd6\x03\x04\x00\x00\x02*" + // 0x00D60304: 0x0000022A -+ "\x00\xf6\x03\x04\x00\x00\x02+" + // 0x00F60304: 0x0000022B -+ "\x00\xd5\x03\x04\x00\x00\x02," + // 0x00D50304: 0x0000022C -+ "\x00\xf5\x03\x04\x00\x00\x02-" + // 0x00F50304: 0x0000022D -+ "\x00O\x03\a\x00\x00\x02." + // 0x004F0307: 0x0000022E -+ "\x00o\x03\a\x00\x00\x02/" + // 0x006F0307: 0x0000022F -+ "\x02.\x03\x04\x00\x00\x020" + // 0x022E0304: 0x00000230 -+ "\x02/\x03\x04\x00\x00\x021" + // 0x022F0304: 0x00000231 -+ "\x00Y\x03\x04\x00\x00\x022" + // 0x00590304: 0x00000232 -+ "\x00y\x03\x04\x00\x00\x023" + // 0x00790304: 0x00000233 -+ "\x00\xa8\x03\x01\x00\x00\x03\x85" + // 0x00A80301: 0x00000385 -+ "\x03\x91\x03\x01\x00\x00\x03\x86" + // 0x03910301: 0x00000386 -+ "\x03\x95\x03\x01\x00\x00\x03\x88" + // 0x03950301: 0x00000388 -+ "\x03\x97\x03\x01\x00\x00\x03\x89" + // 0x03970301: 0x00000389 -+ "\x03\x99\x03\x01\x00\x00\x03\x8a" + // 0x03990301: 0x0000038A -+ "\x03\x9f\x03\x01\x00\x00\x03\x8c" + // 0x039F0301: 0x0000038C -+ "\x03\xa5\x03\x01\x00\x00\x03\x8e" + // 0x03A50301: 0x0000038E -+ "\x03\xa9\x03\x01\x00\x00\x03\x8f" + // 0x03A90301: 0x0000038F -+ "\x03\xca\x03\x01\x00\x00\x03\x90" + // 0x03CA0301: 0x00000390 -+ "\x03\x99\x03\b\x00\x00\x03\xaa" + // 0x03990308: 0x000003AA -+ "\x03\xa5\x03\b\x00\x00\x03\xab" + // 0x03A50308: 0x000003AB -+ "\x03\xb1\x03\x01\x00\x00\x03\xac" + // 0x03B10301: 0x000003AC -+ "\x03\xb5\x03\x01\x00\x00\x03\xad" + // 0x03B50301: 0x000003AD -+ "\x03\xb7\x03\x01\x00\x00\x03\xae" + // 0x03B70301: 0x000003AE -+ "\x03\xb9\x03\x01\x00\x00\x03\xaf" + // 0x03B90301: 0x000003AF -+ "\x03\xcb\x03\x01\x00\x00\x03\xb0" + // 0x03CB0301: 0x000003B0 -+ "\x03\xb9\x03\b\x00\x00\x03\xca" + // 0x03B90308: 0x000003CA -+ "\x03\xc5\x03\b\x00\x00\x03\xcb" + // 0x03C50308: 0x000003CB -+ "\x03\xbf\x03\x01\x00\x00\x03\xcc" + // 0x03BF0301: 0x000003CC -+ "\x03\xc5\x03\x01\x00\x00\x03\xcd" + // 0x03C50301: 0x000003CD -+ "\x03\xc9\x03\x01\x00\x00\x03\xce" + // 0x03C90301: 0x000003CE -+ "\x03\xd2\x03\x01\x00\x00\x03\xd3" + // 0x03D20301: 0x000003D3 -+ "\x03\xd2\x03\b\x00\x00\x03\xd4" + // 0x03D20308: 0x000003D4 -+ "\x04\x15\x03\x00\x00\x00\x04\x00" + // 0x04150300: 0x00000400 -+ "\x04\x15\x03\b\x00\x00\x04\x01" + // 0x04150308: 0x00000401 -+ "\x04\x13\x03\x01\x00\x00\x04\x03" + // 0x04130301: 0x00000403 -+ "\x04\x06\x03\b\x00\x00\x04\a" + // 0x04060308: 0x00000407 -+ "\x04\x1a\x03\x01\x00\x00\x04\f" + // 0x041A0301: 0x0000040C -+ "\x04\x18\x03\x00\x00\x00\x04\r" + // 0x04180300: 0x0000040D -+ "\x04#\x03\x06\x00\x00\x04\x0e" + // 0x04230306: 0x0000040E -+ "\x04\x18\x03\x06\x00\x00\x04\x19" + // 0x04180306: 0x00000419 -+ "\x048\x03\x06\x00\x00\x049" + // 0x04380306: 0x00000439 -+ "\x045\x03\x00\x00\x00\x04P" + // 0x04350300: 0x00000450 -+ "\x045\x03\b\x00\x00\x04Q" + // 0x04350308: 0x00000451 -+ "\x043\x03\x01\x00\x00\x04S" + // 0x04330301: 0x00000453 -+ "\x04V\x03\b\x00\x00\x04W" + // 0x04560308: 0x00000457 -+ "\x04:\x03\x01\x00\x00\x04\\" + // 0x043A0301: 0x0000045C -+ "\x048\x03\x00\x00\x00\x04]" + // 0x04380300: 0x0000045D -+ "\x04C\x03\x06\x00\x00\x04^" + // 0x04430306: 0x0000045E -+ "\x04t\x03\x0f\x00\x00\x04v" + // 0x0474030F: 0x00000476 -+ "\x04u\x03\x0f\x00\x00\x04w" + // 0x0475030F: 0x00000477 -+ "\x04\x16\x03\x06\x00\x00\x04\xc1" + // 0x04160306: 0x000004C1 -+ "\x046\x03\x06\x00\x00\x04\xc2" + // 0x04360306: 0x000004C2 -+ "\x04\x10\x03\x06\x00\x00\x04\xd0" + // 0x04100306: 0x000004D0 -+ "\x040\x03\x06\x00\x00\x04\xd1" + // 0x04300306: 0x000004D1 -+ "\x04\x10\x03\b\x00\x00\x04\xd2" + // 0x04100308: 0x000004D2 -+ "\x040\x03\b\x00\x00\x04\xd3" + // 0x04300308: 0x000004D3 -+ "\x04\x15\x03\x06\x00\x00\x04\xd6" + // 0x04150306: 0x000004D6 -+ "\x045\x03\x06\x00\x00\x04\xd7" + // 0x04350306: 0x000004D7 -+ "\x04\xd8\x03\b\x00\x00\x04\xda" + // 0x04D80308: 0x000004DA -+ "\x04\xd9\x03\b\x00\x00\x04\xdb" + // 0x04D90308: 0x000004DB -+ "\x04\x16\x03\b\x00\x00\x04\xdc" + // 0x04160308: 0x000004DC -+ "\x046\x03\b\x00\x00\x04\xdd" + // 0x04360308: 0x000004DD -+ "\x04\x17\x03\b\x00\x00\x04\xde" + // 0x04170308: 0x000004DE -+ "\x047\x03\b\x00\x00\x04\xdf" + // 0x04370308: 0x000004DF -+ "\x04\x18\x03\x04\x00\x00\x04\xe2" + // 0x04180304: 0x000004E2 -+ "\x048\x03\x04\x00\x00\x04\xe3" + // 0x04380304: 0x000004E3 -+ "\x04\x18\x03\b\x00\x00\x04\xe4" + // 0x04180308: 0x000004E4 -+ "\x048\x03\b\x00\x00\x04\xe5" + // 0x04380308: 0x000004E5 -+ "\x04\x1e\x03\b\x00\x00\x04\xe6" + // 0x041E0308: 0x000004E6 -+ "\x04>\x03\b\x00\x00\x04\xe7" + // 0x043E0308: 0x000004E7 -+ "\x04\xe8\x03\b\x00\x00\x04\xea" + // 0x04E80308: 0x000004EA -+ "\x04\xe9\x03\b\x00\x00\x04\xeb" + // 0x04E90308: 0x000004EB -+ "\x04-\x03\b\x00\x00\x04\xec" + // 0x042D0308: 0x000004EC -+ "\x04M\x03\b\x00\x00\x04\xed" + // 0x044D0308: 0x000004ED -+ "\x04#\x03\x04\x00\x00\x04\xee" + // 0x04230304: 0x000004EE -+ "\x04C\x03\x04\x00\x00\x04\xef" + // 0x04430304: 0x000004EF -+ "\x04#\x03\b\x00\x00\x04\xf0" + // 0x04230308: 0x000004F0 -+ "\x04C\x03\b\x00\x00\x04\xf1" + // 0x04430308: 0x000004F1 -+ "\x04#\x03\v\x00\x00\x04\xf2" + // 0x0423030B: 0x000004F2 -+ "\x04C\x03\v\x00\x00\x04\xf3" + // 0x0443030B: 0x000004F3 -+ "\x04'\x03\b\x00\x00\x04\xf4" + // 0x04270308: 0x000004F4 -+ "\x04G\x03\b\x00\x00\x04\xf5" + // 0x04470308: 0x000004F5 -+ "\x04+\x03\b\x00\x00\x04\xf8" + // 0x042B0308: 0x000004F8 -+ "\x04K\x03\b\x00\x00\x04\xf9" + // 0x044B0308: 0x000004F9 -+ "\x06'\x06S\x00\x00\x06\"" + // 0x06270653: 0x00000622 -+ "\x06'\x06T\x00\x00\x06#" + // 0x06270654: 0x00000623 -+ "\x06H\x06T\x00\x00\x06$" + // 0x06480654: 0x00000624 -+ "\x06'\x06U\x00\x00\x06%" + // 0x06270655: 0x00000625 -+ "\x06J\x06T\x00\x00\x06&" + // 0x064A0654: 0x00000626 -+ "\x06\xd5\x06T\x00\x00\x06\xc0" + // 0x06D50654: 0x000006C0 -+ "\x06\xc1\x06T\x00\x00\x06\xc2" + // 0x06C10654: 0x000006C2 -+ "\x06\xd2\x06T\x00\x00\x06\xd3" + // 0x06D20654: 0x000006D3 -+ "\t(\t<\x00\x00\t)" + // 0x0928093C: 0x00000929 -+ "\t0\t<\x00\x00\t1" + // 0x0930093C: 0x00000931 -+ "\t3\t<\x00\x00\t4" + // 0x0933093C: 0x00000934 -+ "\t\xc7\t\xbe\x00\x00\t\xcb" + // 0x09C709BE: 0x000009CB -+ "\t\xc7\t\xd7\x00\x00\t\xcc" + // 0x09C709D7: 0x000009CC -+ "\vG\vV\x00\x00\vH" + // 0x0B470B56: 0x00000B48 -+ "\vG\v>\x00\x00\vK" + // 0x0B470B3E: 0x00000B4B -+ "\vG\vW\x00\x00\vL" + // 0x0B470B57: 0x00000B4C -+ "\v\x92\v\xd7\x00\x00\v\x94" + // 0x0B920BD7: 0x00000B94 -+ "\v\xc6\v\xbe\x00\x00\v\xca" + // 0x0BC60BBE: 0x00000BCA -+ "\v\xc7\v\xbe\x00\x00\v\xcb" + // 0x0BC70BBE: 0x00000BCB -+ "\v\xc6\v\xd7\x00\x00\v\xcc" + // 0x0BC60BD7: 0x00000BCC -+ "\fF\fV\x00\x00\fH" + // 0x0C460C56: 0x00000C48 -+ "\f\xbf\f\xd5\x00\x00\f\xc0" + // 0x0CBF0CD5: 0x00000CC0 -+ "\f\xc6\f\xd5\x00\x00\f\xc7" + // 0x0CC60CD5: 0x00000CC7 -+ "\f\xc6\f\xd6\x00\x00\f\xc8" + // 0x0CC60CD6: 0x00000CC8 -+ "\f\xc6\f\xc2\x00\x00\f\xca" + // 0x0CC60CC2: 0x00000CCA -+ "\f\xca\f\xd5\x00\x00\f\xcb" + // 0x0CCA0CD5: 0x00000CCB -+ "\rF\r>\x00\x00\rJ" + // 0x0D460D3E: 0x00000D4A -+ "\rG\r>\x00\x00\rK" + // 0x0D470D3E: 0x00000D4B -+ "\rF\rW\x00\x00\rL" + // 0x0D460D57: 0x00000D4C -+ "\r\xd9\r\xca\x00\x00\r\xda" + // 0x0DD90DCA: 0x00000DDA -+ "\r\xd9\r\xcf\x00\x00\r\xdc" + // 0x0DD90DCF: 0x00000DDC -+ "\r\xdc\r\xca\x00\x00\r\xdd" + // 0x0DDC0DCA: 0x00000DDD -+ "\r\xd9\r\xdf\x00\x00\r\xde" + // 0x0DD90DDF: 0x00000DDE -+ "\x10%\x10.\x00\x00\x10&" + // 0x1025102E: 0x00001026 -+ "\x1b\x05\x1b5\x00\x00\x1b\x06" + // 0x1B051B35: 0x00001B06 -+ "\x1b\a\x1b5\x00\x00\x1b\b" + // 0x1B071B35: 0x00001B08 -+ "\x1b\t\x1b5\x00\x00\x1b\n" + // 0x1B091B35: 0x00001B0A -+ "\x1b\v\x1b5\x00\x00\x1b\f" + // 0x1B0B1B35: 0x00001B0C -+ "\x1b\r\x1b5\x00\x00\x1b\x0e" + // 0x1B0D1B35: 0x00001B0E -+ "\x1b\x11\x1b5\x00\x00\x1b\x12" + // 0x1B111B35: 0x00001B12 -+ "\x1b:\x1b5\x00\x00\x1b;" + // 0x1B3A1B35: 0x00001B3B -+ "\x1b<\x1b5\x00\x00\x1b=" + // 0x1B3C1B35: 0x00001B3D -+ "\x1b>\x1b5\x00\x00\x1b@" + // 0x1B3E1B35: 0x00001B40 -+ "\x1b?\x1b5\x00\x00\x1bA" + // 0x1B3F1B35: 0x00001B41 -+ "\x1bB\x1b5\x00\x00\x1bC" + // 0x1B421B35: 0x00001B43 -+ "\x00A\x03%\x00\x00\x1e\x00" + // 0x00410325: 0x00001E00 -+ "\x00a\x03%\x00\x00\x1e\x01" + // 0x00610325: 0x00001E01 -+ "\x00B\x03\a\x00\x00\x1e\x02" + // 0x00420307: 0x00001E02 -+ "\x00b\x03\a\x00\x00\x1e\x03" + // 0x00620307: 0x00001E03 -+ "\x00B\x03#\x00\x00\x1e\x04" + // 0x00420323: 0x00001E04 -+ "\x00b\x03#\x00\x00\x1e\x05" + // 0x00620323: 0x00001E05 -+ "\x00B\x031\x00\x00\x1e\x06" + // 0x00420331: 0x00001E06 -+ "\x00b\x031\x00\x00\x1e\a" + // 0x00620331: 0x00001E07 -+ "\x00\xc7\x03\x01\x00\x00\x1e\b" + // 0x00C70301: 0x00001E08 -+ "\x00\xe7\x03\x01\x00\x00\x1e\t" + // 0x00E70301: 0x00001E09 -+ "\x00D\x03\a\x00\x00\x1e\n" + // 0x00440307: 0x00001E0A -+ "\x00d\x03\a\x00\x00\x1e\v" + // 0x00640307: 0x00001E0B -+ "\x00D\x03#\x00\x00\x1e\f" + // 0x00440323: 0x00001E0C -+ "\x00d\x03#\x00\x00\x1e\r" + // 0x00640323: 0x00001E0D -+ "\x00D\x031\x00\x00\x1e\x0e" + // 0x00440331: 0x00001E0E -+ "\x00d\x031\x00\x00\x1e\x0f" + // 0x00640331: 0x00001E0F -+ "\x00D\x03'\x00\x00\x1e\x10" + // 0x00440327: 0x00001E10 -+ "\x00d\x03'\x00\x00\x1e\x11" + // 0x00640327: 0x00001E11 -+ "\x00D\x03-\x00\x00\x1e\x12" + // 0x0044032D: 0x00001E12 -+ "\x00d\x03-\x00\x00\x1e\x13" + // 0x0064032D: 0x00001E13 -+ "\x01\x12\x03\x00\x00\x00\x1e\x14" + // 0x01120300: 0x00001E14 -+ "\x01\x13\x03\x00\x00\x00\x1e\x15" + // 0x01130300: 0x00001E15 -+ "\x01\x12\x03\x01\x00\x00\x1e\x16" + // 0x01120301: 0x00001E16 -+ "\x01\x13\x03\x01\x00\x00\x1e\x17" + // 0x01130301: 0x00001E17 -+ "\x00E\x03-\x00\x00\x1e\x18" + // 0x0045032D: 0x00001E18 -+ "\x00e\x03-\x00\x00\x1e\x19" + // 0x0065032D: 0x00001E19 -+ "\x00E\x030\x00\x00\x1e\x1a" + // 0x00450330: 0x00001E1A -+ "\x00e\x030\x00\x00\x1e\x1b" + // 0x00650330: 0x00001E1B -+ "\x02(\x03\x06\x00\x00\x1e\x1c" + // 0x02280306: 0x00001E1C -+ "\x02)\x03\x06\x00\x00\x1e\x1d" + // 0x02290306: 0x00001E1D -+ "\x00F\x03\a\x00\x00\x1e\x1e" + // 0x00460307: 0x00001E1E -+ "\x00f\x03\a\x00\x00\x1e\x1f" + // 0x00660307: 0x00001E1F -+ "\x00G\x03\x04\x00\x00\x1e " + // 0x00470304: 0x00001E20 -+ "\x00g\x03\x04\x00\x00\x1e!" + // 0x00670304: 0x00001E21 -+ "\x00H\x03\a\x00\x00\x1e\"" + // 0x00480307: 0x00001E22 -+ "\x00h\x03\a\x00\x00\x1e#" + // 0x00680307: 0x00001E23 -+ "\x00H\x03#\x00\x00\x1e$" + // 0x00480323: 0x00001E24 -+ "\x00h\x03#\x00\x00\x1e%" + // 0x00680323: 0x00001E25 -+ "\x00H\x03\b\x00\x00\x1e&" + // 0x00480308: 0x00001E26 -+ "\x00h\x03\b\x00\x00\x1e'" + // 0x00680308: 0x00001E27 -+ "\x00H\x03'\x00\x00\x1e(" + // 0x00480327: 0x00001E28 -+ "\x00h\x03'\x00\x00\x1e)" + // 0x00680327: 0x00001E29 -+ "\x00H\x03.\x00\x00\x1e*" + // 0x0048032E: 0x00001E2A -+ "\x00h\x03.\x00\x00\x1e+" + // 0x0068032E: 0x00001E2B -+ "\x00I\x030\x00\x00\x1e," + // 0x00490330: 0x00001E2C -+ "\x00i\x030\x00\x00\x1e-" + // 0x00690330: 0x00001E2D -+ "\x00\xcf\x03\x01\x00\x00\x1e." + // 0x00CF0301: 0x00001E2E -+ "\x00\xef\x03\x01\x00\x00\x1e/" + // 0x00EF0301: 0x00001E2F -+ "\x00K\x03\x01\x00\x00\x1e0" + // 0x004B0301: 0x00001E30 -+ "\x00k\x03\x01\x00\x00\x1e1" + // 0x006B0301: 0x00001E31 -+ "\x00K\x03#\x00\x00\x1e2" + // 0x004B0323: 0x00001E32 -+ "\x00k\x03#\x00\x00\x1e3" + // 0x006B0323: 0x00001E33 -+ "\x00K\x031\x00\x00\x1e4" + // 0x004B0331: 0x00001E34 -+ "\x00k\x031\x00\x00\x1e5" + // 0x006B0331: 0x00001E35 -+ "\x00L\x03#\x00\x00\x1e6" + // 0x004C0323: 0x00001E36 -+ "\x00l\x03#\x00\x00\x1e7" + // 0x006C0323: 0x00001E37 -+ "\x1e6\x03\x04\x00\x00\x1e8" + // 0x1E360304: 0x00001E38 -+ "\x1e7\x03\x04\x00\x00\x1e9" + // 0x1E370304: 0x00001E39 -+ "\x00L\x031\x00\x00\x1e:" + // 0x004C0331: 0x00001E3A -+ "\x00l\x031\x00\x00\x1e;" + // 0x006C0331: 0x00001E3B -+ "\x00L\x03-\x00\x00\x1e<" + // 0x004C032D: 0x00001E3C -+ "\x00l\x03-\x00\x00\x1e=" + // 0x006C032D: 0x00001E3D -+ "\x00M\x03\x01\x00\x00\x1e>" + // 0x004D0301: 0x00001E3E -+ "\x00m\x03\x01\x00\x00\x1e?" + // 0x006D0301: 0x00001E3F -+ "\x00M\x03\a\x00\x00\x1e@" + // 0x004D0307: 0x00001E40 -+ "\x00m\x03\a\x00\x00\x1eA" + // 0x006D0307: 0x00001E41 -+ "\x00M\x03#\x00\x00\x1eB" + // 0x004D0323: 0x00001E42 -+ "\x00m\x03#\x00\x00\x1eC" + // 0x006D0323: 0x00001E43 -+ "\x00N\x03\a\x00\x00\x1eD" + // 0x004E0307: 0x00001E44 -+ "\x00n\x03\a\x00\x00\x1eE" + // 0x006E0307: 0x00001E45 -+ "\x00N\x03#\x00\x00\x1eF" + // 0x004E0323: 0x00001E46 -+ "\x00n\x03#\x00\x00\x1eG" + // 0x006E0323: 0x00001E47 -+ "\x00N\x031\x00\x00\x1eH" + // 0x004E0331: 0x00001E48 -+ "\x00n\x031\x00\x00\x1eI" + // 0x006E0331: 0x00001E49 -+ "\x00N\x03-\x00\x00\x1eJ" + // 0x004E032D: 0x00001E4A -+ "\x00n\x03-\x00\x00\x1eK" + // 0x006E032D: 0x00001E4B -+ "\x00\xd5\x03\x01\x00\x00\x1eL" + // 0x00D50301: 0x00001E4C -+ "\x00\xf5\x03\x01\x00\x00\x1eM" + // 0x00F50301: 0x00001E4D -+ "\x00\xd5\x03\b\x00\x00\x1eN" + // 0x00D50308: 0x00001E4E -+ "\x00\xf5\x03\b\x00\x00\x1eO" + // 0x00F50308: 0x00001E4F -+ "\x01L\x03\x00\x00\x00\x1eP" + // 0x014C0300: 0x00001E50 -+ "\x01M\x03\x00\x00\x00\x1eQ" + // 0x014D0300: 0x00001E51 -+ "\x01L\x03\x01\x00\x00\x1eR" + // 0x014C0301: 0x00001E52 -+ "\x01M\x03\x01\x00\x00\x1eS" + // 0x014D0301: 0x00001E53 -+ "\x00P\x03\x01\x00\x00\x1eT" + // 0x00500301: 0x00001E54 -+ "\x00p\x03\x01\x00\x00\x1eU" + // 0x00700301: 0x00001E55 -+ "\x00P\x03\a\x00\x00\x1eV" + // 0x00500307: 0x00001E56 -+ "\x00p\x03\a\x00\x00\x1eW" + // 0x00700307: 0x00001E57 -+ "\x00R\x03\a\x00\x00\x1eX" + // 0x00520307: 0x00001E58 -+ "\x00r\x03\a\x00\x00\x1eY" + // 0x00720307: 0x00001E59 -+ "\x00R\x03#\x00\x00\x1eZ" + // 0x00520323: 0x00001E5A -+ "\x00r\x03#\x00\x00\x1e[" + // 0x00720323: 0x00001E5B -+ "\x1eZ\x03\x04\x00\x00\x1e\\" + // 0x1E5A0304: 0x00001E5C -+ "\x1e[\x03\x04\x00\x00\x1e]" + // 0x1E5B0304: 0x00001E5D -+ "\x00R\x031\x00\x00\x1e^" + // 0x00520331: 0x00001E5E -+ "\x00r\x031\x00\x00\x1e_" + // 0x00720331: 0x00001E5F -+ "\x00S\x03\a\x00\x00\x1e`" + // 0x00530307: 0x00001E60 -+ "\x00s\x03\a\x00\x00\x1ea" + // 0x00730307: 0x00001E61 -+ "\x00S\x03#\x00\x00\x1eb" + // 0x00530323: 0x00001E62 -+ "\x00s\x03#\x00\x00\x1ec" + // 0x00730323: 0x00001E63 -+ "\x01Z\x03\a\x00\x00\x1ed" + // 0x015A0307: 0x00001E64 -+ "\x01[\x03\a\x00\x00\x1ee" + // 0x015B0307: 0x00001E65 -+ "\x01`\x03\a\x00\x00\x1ef" + // 0x01600307: 0x00001E66 -+ "\x01a\x03\a\x00\x00\x1eg" + // 0x01610307: 0x00001E67 -+ "\x1eb\x03\a\x00\x00\x1eh" + // 0x1E620307: 0x00001E68 -+ "\x1ec\x03\a\x00\x00\x1ei" + // 0x1E630307: 0x00001E69 -+ "\x00T\x03\a\x00\x00\x1ej" + // 0x00540307: 0x00001E6A -+ "\x00t\x03\a\x00\x00\x1ek" + // 0x00740307: 0x00001E6B -+ "\x00T\x03#\x00\x00\x1el" + // 0x00540323: 0x00001E6C -+ "\x00t\x03#\x00\x00\x1em" + // 0x00740323: 0x00001E6D -+ "\x00T\x031\x00\x00\x1en" + // 0x00540331: 0x00001E6E -+ "\x00t\x031\x00\x00\x1eo" + // 0x00740331: 0x00001E6F -+ "\x00T\x03-\x00\x00\x1ep" + // 0x0054032D: 0x00001E70 -+ "\x00t\x03-\x00\x00\x1eq" + // 0x0074032D: 0x00001E71 -+ "\x00U\x03$\x00\x00\x1er" + // 0x00550324: 0x00001E72 -+ "\x00u\x03$\x00\x00\x1es" + // 0x00750324: 0x00001E73 -+ "\x00U\x030\x00\x00\x1et" + // 0x00550330: 0x00001E74 -+ "\x00u\x030\x00\x00\x1eu" + // 0x00750330: 0x00001E75 -+ "\x00U\x03-\x00\x00\x1ev" + // 0x0055032D: 0x00001E76 -+ "\x00u\x03-\x00\x00\x1ew" + // 0x0075032D: 0x00001E77 -+ "\x01h\x03\x01\x00\x00\x1ex" + // 0x01680301: 0x00001E78 -+ "\x01i\x03\x01\x00\x00\x1ey" + // 0x01690301: 0x00001E79 -+ "\x01j\x03\b\x00\x00\x1ez" + // 0x016A0308: 0x00001E7A -+ "\x01k\x03\b\x00\x00\x1e{" + // 0x016B0308: 0x00001E7B -+ "\x00V\x03\x03\x00\x00\x1e|" + // 0x00560303: 0x00001E7C -+ "\x00v\x03\x03\x00\x00\x1e}" + // 0x00760303: 0x00001E7D -+ "\x00V\x03#\x00\x00\x1e~" + // 0x00560323: 0x00001E7E -+ "\x00v\x03#\x00\x00\x1e\u007f" + // 0x00760323: 0x00001E7F -+ "\x00W\x03\x00\x00\x00\x1e\x80" + // 0x00570300: 0x00001E80 -+ "\x00w\x03\x00\x00\x00\x1e\x81" + // 0x00770300: 0x00001E81 -+ "\x00W\x03\x01\x00\x00\x1e\x82" + // 0x00570301: 0x00001E82 -+ "\x00w\x03\x01\x00\x00\x1e\x83" + // 0x00770301: 0x00001E83 -+ "\x00W\x03\b\x00\x00\x1e\x84" + // 0x00570308: 0x00001E84 -+ "\x00w\x03\b\x00\x00\x1e\x85" + // 0x00770308: 0x00001E85 -+ "\x00W\x03\a\x00\x00\x1e\x86" + // 0x00570307: 0x00001E86 -+ "\x00w\x03\a\x00\x00\x1e\x87" + // 0x00770307: 0x00001E87 -+ "\x00W\x03#\x00\x00\x1e\x88" + // 0x00570323: 0x00001E88 -+ "\x00w\x03#\x00\x00\x1e\x89" + // 0x00770323: 0x00001E89 -+ "\x00X\x03\a\x00\x00\x1e\x8a" + // 0x00580307: 0x00001E8A -+ "\x00x\x03\a\x00\x00\x1e\x8b" + // 0x00780307: 0x00001E8B -+ "\x00X\x03\b\x00\x00\x1e\x8c" + // 0x00580308: 0x00001E8C -+ "\x00x\x03\b\x00\x00\x1e\x8d" + // 0x00780308: 0x00001E8D -+ "\x00Y\x03\a\x00\x00\x1e\x8e" + // 0x00590307: 0x00001E8E -+ "\x00y\x03\a\x00\x00\x1e\x8f" + // 0x00790307: 0x00001E8F -+ "\x00Z\x03\x02\x00\x00\x1e\x90" + // 0x005A0302: 0x00001E90 -+ "\x00z\x03\x02\x00\x00\x1e\x91" + // 0x007A0302: 0x00001E91 -+ "\x00Z\x03#\x00\x00\x1e\x92" + // 0x005A0323: 0x00001E92 -+ "\x00z\x03#\x00\x00\x1e\x93" + // 0x007A0323: 0x00001E93 -+ "\x00Z\x031\x00\x00\x1e\x94" + // 0x005A0331: 0x00001E94 -+ "\x00z\x031\x00\x00\x1e\x95" + // 0x007A0331: 0x00001E95 -+ "\x00h\x031\x00\x00\x1e\x96" + // 0x00680331: 0x00001E96 -+ "\x00t\x03\b\x00\x00\x1e\x97" + // 0x00740308: 0x00001E97 -+ "\x00w\x03\n\x00\x00\x1e\x98" + // 0x0077030A: 0x00001E98 -+ "\x00y\x03\n\x00\x00\x1e\x99" + // 0x0079030A: 0x00001E99 -+ "\x01\u007f\x03\a\x00\x00\x1e\x9b" + // 0x017F0307: 0x00001E9B -+ "\x00A\x03#\x00\x00\x1e\xa0" + // 0x00410323: 0x00001EA0 -+ "\x00a\x03#\x00\x00\x1e\xa1" + // 0x00610323: 0x00001EA1 -+ "\x00A\x03\t\x00\x00\x1e\xa2" + // 0x00410309: 0x00001EA2 -+ "\x00a\x03\t\x00\x00\x1e\xa3" + // 0x00610309: 0x00001EA3 -+ "\x00\xc2\x03\x01\x00\x00\x1e\xa4" + // 0x00C20301: 0x00001EA4 -+ "\x00\xe2\x03\x01\x00\x00\x1e\xa5" + // 0x00E20301: 0x00001EA5 -+ "\x00\xc2\x03\x00\x00\x00\x1e\xa6" + // 0x00C20300: 0x00001EA6 -+ "\x00\xe2\x03\x00\x00\x00\x1e\xa7" + // 0x00E20300: 0x00001EA7 -+ "\x00\xc2\x03\t\x00\x00\x1e\xa8" + // 0x00C20309: 0x00001EA8 -+ "\x00\xe2\x03\t\x00\x00\x1e\xa9" + // 0x00E20309: 0x00001EA9 -+ "\x00\xc2\x03\x03\x00\x00\x1e\xaa" + // 0x00C20303: 0x00001EAA -+ "\x00\xe2\x03\x03\x00\x00\x1e\xab" + // 0x00E20303: 0x00001EAB -+ "\x1e\xa0\x03\x02\x00\x00\x1e\xac" + // 0x1EA00302: 0x00001EAC -+ "\x1e\xa1\x03\x02\x00\x00\x1e\xad" + // 0x1EA10302: 0x00001EAD -+ "\x01\x02\x03\x01\x00\x00\x1e\xae" + // 0x01020301: 0x00001EAE -+ "\x01\x03\x03\x01\x00\x00\x1e\xaf" + // 0x01030301: 0x00001EAF -+ "\x01\x02\x03\x00\x00\x00\x1e\xb0" + // 0x01020300: 0x00001EB0 -+ "\x01\x03\x03\x00\x00\x00\x1e\xb1" + // 0x01030300: 0x00001EB1 -+ "\x01\x02\x03\t\x00\x00\x1e\xb2" + // 0x01020309: 0x00001EB2 -+ "\x01\x03\x03\t\x00\x00\x1e\xb3" + // 0x01030309: 0x00001EB3 -+ "\x01\x02\x03\x03\x00\x00\x1e\xb4" + // 0x01020303: 0x00001EB4 -+ "\x01\x03\x03\x03\x00\x00\x1e\xb5" + // 0x01030303: 0x00001EB5 -+ "\x1e\xa0\x03\x06\x00\x00\x1e\xb6" + // 0x1EA00306: 0x00001EB6 -+ "\x1e\xa1\x03\x06\x00\x00\x1e\xb7" + // 0x1EA10306: 0x00001EB7 -+ "\x00E\x03#\x00\x00\x1e\xb8" + // 0x00450323: 0x00001EB8 -+ "\x00e\x03#\x00\x00\x1e\xb9" + // 0x00650323: 0x00001EB9 -+ "\x00E\x03\t\x00\x00\x1e\xba" + // 0x00450309: 0x00001EBA -+ "\x00e\x03\t\x00\x00\x1e\xbb" + // 0x00650309: 0x00001EBB -+ "\x00E\x03\x03\x00\x00\x1e\xbc" + // 0x00450303: 0x00001EBC -+ "\x00e\x03\x03\x00\x00\x1e\xbd" + // 0x00650303: 0x00001EBD -+ "\x00\xca\x03\x01\x00\x00\x1e\xbe" + // 0x00CA0301: 0x00001EBE -+ "\x00\xea\x03\x01\x00\x00\x1e\xbf" + // 0x00EA0301: 0x00001EBF -+ "\x00\xca\x03\x00\x00\x00\x1e\xc0" + // 0x00CA0300: 0x00001EC0 -+ "\x00\xea\x03\x00\x00\x00\x1e\xc1" + // 0x00EA0300: 0x00001EC1 -+ "\x00\xca\x03\t\x00\x00\x1e\xc2" + // 0x00CA0309: 0x00001EC2 -+ "\x00\xea\x03\t\x00\x00\x1e\xc3" + // 0x00EA0309: 0x00001EC3 -+ "\x00\xca\x03\x03\x00\x00\x1e\xc4" + // 0x00CA0303: 0x00001EC4 -+ "\x00\xea\x03\x03\x00\x00\x1e\xc5" + // 0x00EA0303: 0x00001EC5 -+ "\x1e\xb8\x03\x02\x00\x00\x1e\xc6" + // 0x1EB80302: 0x00001EC6 -+ "\x1e\xb9\x03\x02\x00\x00\x1e\xc7" + // 0x1EB90302: 0x00001EC7 -+ "\x00I\x03\t\x00\x00\x1e\xc8" + // 0x00490309: 0x00001EC8 -+ "\x00i\x03\t\x00\x00\x1e\xc9" + // 0x00690309: 0x00001EC9 -+ "\x00I\x03#\x00\x00\x1e\xca" + // 0x00490323: 0x00001ECA -+ "\x00i\x03#\x00\x00\x1e\xcb" + // 0x00690323: 0x00001ECB -+ "\x00O\x03#\x00\x00\x1e\xcc" + // 0x004F0323: 0x00001ECC -+ "\x00o\x03#\x00\x00\x1e\xcd" + // 0x006F0323: 0x00001ECD -+ "\x00O\x03\t\x00\x00\x1e\xce" + // 0x004F0309: 0x00001ECE -+ "\x00o\x03\t\x00\x00\x1e\xcf" + // 0x006F0309: 0x00001ECF -+ "\x00\xd4\x03\x01\x00\x00\x1e\xd0" + // 0x00D40301: 0x00001ED0 -+ "\x00\xf4\x03\x01\x00\x00\x1e\xd1" + // 0x00F40301: 0x00001ED1 -+ "\x00\xd4\x03\x00\x00\x00\x1e\xd2" + // 0x00D40300: 0x00001ED2 -+ "\x00\xf4\x03\x00\x00\x00\x1e\xd3" + // 0x00F40300: 0x00001ED3 -+ "\x00\xd4\x03\t\x00\x00\x1e\xd4" + // 0x00D40309: 0x00001ED4 -+ "\x00\xf4\x03\t\x00\x00\x1e\xd5" + // 0x00F40309: 0x00001ED5 -+ "\x00\xd4\x03\x03\x00\x00\x1e\xd6" + // 0x00D40303: 0x00001ED6 -+ "\x00\xf4\x03\x03\x00\x00\x1e\xd7" + // 0x00F40303: 0x00001ED7 -+ "\x1e\xcc\x03\x02\x00\x00\x1e\xd8" + // 0x1ECC0302: 0x00001ED8 -+ "\x1e\xcd\x03\x02\x00\x00\x1e\xd9" + // 0x1ECD0302: 0x00001ED9 -+ "\x01\xa0\x03\x01\x00\x00\x1e\xda" + // 0x01A00301: 0x00001EDA -+ "\x01\xa1\x03\x01\x00\x00\x1e\xdb" + // 0x01A10301: 0x00001EDB -+ "\x01\xa0\x03\x00\x00\x00\x1e\xdc" + // 0x01A00300: 0x00001EDC -+ "\x01\xa1\x03\x00\x00\x00\x1e\xdd" + // 0x01A10300: 0x00001EDD -+ "\x01\xa0\x03\t\x00\x00\x1e\xde" + // 0x01A00309: 0x00001EDE -+ "\x01\xa1\x03\t\x00\x00\x1e\xdf" + // 0x01A10309: 0x00001EDF -+ "\x01\xa0\x03\x03\x00\x00\x1e\xe0" + // 0x01A00303: 0x00001EE0 -+ "\x01\xa1\x03\x03\x00\x00\x1e\xe1" + // 0x01A10303: 0x00001EE1 -+ "\x01\xa0\x03#\x00\x00\x1e\xe2" + // 0x01A00323: 0x00001EE2 -+ "\x01\xa1\x03#\x00\x00\x1e\xe3" + // 0x01A10323: 0x00001EE3 -+ "\x00U\x03#\x00\x00\x1e\xe4" + // 0x00550323: 0x00001EE4 -+ "\x00u\x03#\x00\x00\x1e\xe5" + // 0x00750323: 0x00001EE5 -+ "\x00U\x03\t\x00\x00\x1e\xe6" + // 0x00550309: 0x00001EE6 -+ "\x00u\x03\t\x00\x00\x1e\xe7" + // 0x00750309: 0x00001EE7 -+ "\x01\xaf\x03\x01\x00\x00\x1e\xe8" + // 0x01AF0301: 0x00001EE8 -+ "\x01\xb0\x03\x01\x00\x00\x1e\xe9" + // 0x01B00301: 0x00001EE9 -+ "\x01\xaf\x03\x00\x00\x00\x1e\xea" + // 0x01AF0300: 0x00001EEA -+ "\x01\xb0\x03\x00\x00\x00\x1e\xeb" + // 0x01B00300: 0x00001EEB -+ "\x01\xaf\x03\t\x00\x00\x1e\xec" + // 0x01AF0309: 0x00001EEC -+ "\x01\xb0\x03\t\x00\x00\x1e\xed" + // 0x01B00309: 0x00001EED -+ "\x01\xaf\x03\x03\x00\x00\x1e\xee" + // 0x01AF0303: 0x00001EEE -+ "\x01\xb0\x03\x03\x00\x00\x1e\xef" + // 0x01B00303: 0x00001EEF -+ "\x01\xaf\x03#\x00\x00\x1e\xf0" + // 0x01AF0323: 0x00001EF0 -+ "\x01\xb0\x03#\x00\x00\x1e\xf1" + // 0x01B00323: 0x00001EF1 -+ "\x00Y\x03\x00\x00\x00\x1e\xf2" + // 0x00590300: 0x00001EF2 -+ "\x00y\x03\x00\x00\x00\x1e\xf3" + // 0x00790300: 0x00001EF3 -+ "\x00Y\x03#\x00\x00\x1e\xf4" + // 0x00590323: 0x00001EF4 -+ "\x00y\x03#\x00\x00\x1e\xf5" + // 0x00790323: 0x00001EF5 -+ "\x00Y\x03\t\x00\x00\x1e\xf6" + // 0x00590309: 0x00001EF6 -+ "\x00y\x03\t\x00\x00\x1e\xf7" + // 0x00790309: 0x00001EF7 -+ "\x00Y\x03\x03\x00\x00\x1e\xf8" + // 0x00590303: 0x00001EF8 -+ "\x00y\x03\x03\x00\x00\x1e\xf9" + // 0x00790303: 0x00001EF9 -+ "\x03\xb1\x03\x13\x00\x00\x1f\x00" + // 0x03B10313: 0x00001F00 -+ "\x03\xb1\x03\x14\x00\x00\x1f\x01" + // 0x03B10314: 0x00001F01 -+ "\x1f\x00\x03\x00\x00\x00\x1f\x02" + // 0x1F000300: 0x00001F02 -+ "\x1f\x01\x03\x00\x00\x00\x1f\x03" + // 0x1F010300: 0x00001F03 -+ "\x1f\x00\x03\x01\x00\x00\x1f\x04" + // 0x1F000301: 0x00001F04 -+ "\x1f\x01\x03\x01\x00\x00\x1f\x05" + // 0x1F010301: 0x00001F05 -+ "\x1f\x00\x03B\x00\x00\x1f\x06" + // 0x1F000342: 0x00001F06 -+ "\x1f\x01\x03B\x00\x00\x1f\a" + // 0x1F010342: 0x00001F07 -+ "\x03\x91\x03\x13\x00\x00\x1f\b" + // 0x03910313: 0x00001F08 -+ "\x03\x91\x03\x14\x00\x00\x1f\t" + // 0x03910314: 0x00001F09 -+ "\x1f\b\x03\x00\x00\x00\x1f\n" + // 0x1F080300: 0x00001F0A -+ "\x1f\t\x03\x00\x00\x00\x1f\v" + // 0x1F090300: 0x00001F0B -+ "\x1f\b\x03\x01\x00\x00\x1f\f" + // 0x1F080301: 0x00001F0C -+ "\x1f\t\x03\x01\x00\x00\x1f\r" + // 0x1F090301: 0x00001F0D -+ "\x1f\b\x03B\x00\x00\x1f\x0e" + // 0x1F080342: 0x00001F0E -+ "\x1f\t\x03B\x00\x00\x1f\x0f" + // 0x1F090342: 0x00001F0F -+ "\x03\xb5\x03\x13\x00\x00\x1f\x10" + // 0x03B50313: 0x00001F10 -+ "\x03\xb5\x03\x14\x00\x00\x1f\x11" + // 0x03B50314: 0x00001F11 -+ "\x1f\x10\x03\x00\x00\x00\x1f\x12" + // 0x1F100300: 0x00001F12 -+ "\x1f\x11\x03\x00\x00\x00\x1f\x13" + // 0x1F110300: 0x00001F13 -+ "\x1f\x10\x03\x01\x00\x00\x1f\x14" + // 0x1F100301: 0x00001F14 -+ "\x1f\x11\x03\x01\x00\x00\x1f\x15" + // 0x1F110301: 0x00001F15 -+ "\x03\x95\x03\x13\x00\x00\x1f\x18" + // 0x03950313: 0x00001F18 -+ "\x03\x95\x03\x14\x00\x00\x1f\x19" + // 0x03950314: 0x00001F19 -+ "\x1f\x18\x03\x00\x00\x00\x1f\x1a" + // 0x1F180300: 0x00001F1A -+ "\x1f\x19\x03\x00\x00\x00\x1f\x1b" + // 0x1F190300: 0x00001F1B -+ "\x1f\x18\x03\x01\x00\x00\x1f\x1c" + // 0x1F180301: 0x00001F1C -+ "\x1f\x19\x03\x01\x00\x00\x1f\x1d" + // 0x1F190301: 0x00001F1D -+ "\x03\xb7\x03\x13\x00\x00\x1f " + // 0x03B70313: 0x00001F20 -+ "\x03\xb7\x03\x14\x00\x00\x1f!" + // 0x03B70314: 0x00001F21 -+ "\x1f \x03\x00\x00\x00\x1f\"" + // 0x1F200300: 0x00001F22 -+ "\x1f!\x03\x00\x00\x00\x1f#" + // 0x1F210300: 0x00001F23 -+ "\x1f \x03\x01\x00\x00\x1f$" + // 0x1F200301: 0x00001F24 -+ "\x1f!\x03\x01\x00\x00\x1f%" + // 0x1F210301: 0x00001F25 -+ "\x1f \x03B\x00\x00\x1f&" + // 0x1F200342: 0x00001F26 -+ "\x1f!\x03B\x00\x00\x1f'" + // 0x1F210342: 0x00001F27 -+ "\x03\x97\x03\x13\x00\x00\x1f(" + // 0x03970313: 0x00001F28 -+ "\x03\x97\x03\x14\x00\x00\x1f)" + // 0x03970314: 0x00001F29 -+ "\x1f(\x03\x00\x00\x00\x1f*" + // 0x1F280300: 0x00001F2A -+ "\x1f)\x03\x00\x00\x00\x1f+" + // 0x1F290300: 0x00001F2B -+ "\x1f(\x03\x01\x00\x00\x1f," + // 0x1F280301: 0x00001F2C -+ "\x1f)\x03\x01\x00\x00\x1f-" + // 0x1F290301: 0x00001F2D -+ "\x1f(\x03B\x00\x00\x1f." + // 0x1F280342: 0x00001F2E -+ "\x1f)\x03B\x00\x00\x1f/" + // 0x1F290342: 0x00001F2F -+ "\x03\xb9\x03\x13\x00\x00\x1f0" + // 0x03B90313: 0x00001F30 -+ "\x03\xb9\x03\x14\x00\x00\x1f1" + // 0x03B90314: 0x00001F31 -+ "\x1f0\x03\x00\x00\x00\x1f2" + // 0x1F300300: 0x00001F32 -+ "\x1f1\x03\x00\x00\x00\x1f3" + // 0x1F310300: 0x00001F33 -+ "\x1f0\x03\x01\x00\x00\x1f4" + // 0x1F300301: 0x00001F34 -+ "\x1f1\x03\x01\x00\x00\x1f5" + // 0x1F310301: 0x00001F35 -+ "\x1f0\x03B\x00\x00\x1f6" + // 0x1F300342: 0x00001F36 -+ "\x1f1\x03B\x00\x00\x1f7" + // 0x1F310342: 0x00001F37 -+ "\x03\x99\x03\x13\x00\x00\x1f8" + // 0x03990313: 0x00001F38 -+ "\x03\x99\x03\x14\x00\x00\x1f9" + // 0x03990314: 0x00001F39 -+ "\x1f8\x03\x00\x00\x00\x1f:" + // 0x1F380300: 0x00001F3A -+ "\x1f9\x03\x00\x00\x00\x1f;" + // 0x1F390300: 0x00001F3B -+ "\x1f8\x03\x01\x00\x00\x1f<" + // 0x1F380301: 0x00001F3C -+ "\x1f9\x03\x01\x00\x00\x1f=" + // 0x1F390301: 0x00001F3D -+ "\x1f8\x03B\x00\x00\x1f>" + // 0x1F380342: 0x00001F3E -+ "\x1f9\x03B\x00\x00\x1f?" + // 0x1F390342: 0x00001F3F -+ "\x03\xbf\x03\x13\x00\x00\x1f@" + // 0x03BF0313: 0x00001F40 -+ "\x03\xbf\x03\x14\x00\x00\x1fA" + // 0x03BF0314: 0x00001F41 -+ "\x1f@\x03\x00\x00\x00\x1fB" + // 0x1F400300: 0x00001F42 -+ "\x1fA\x03\x00\x00\x00\x1fC" + // 0x1F410300: 0x00001F43 -+ "\x1f@\x03\x01\x00\x00\x1fD" + // 0x1F400301: 0x00001F44 -+ "\x1fA\x03\x01\x00\x00\x1fE" + // 0x1F410301: 0x00001F45 -+ "\x03\x9f\x03\x13\x00\x00\x1fH" + // 0x039F0313: 0x00001F48 -+ "\x03\x9f\x03\x14\x00\x00\x1fI" + // 0x039F0314: 0x00001F49 -+ "\x1fH\x03\x00\x00\x00\x1fJ" + // 0x1F480300: 0x00001F4A -+ "\x1fI\x03\x00\x00\x00\x1fK" + // 0x1F490300: 0x00001F4B -+ "\x1fH\x03\x01\x00\x00\x1fL" + // 0x1F480301: 0x00001F4C -+ "\x1fI\x03\x01\x00\x00\x1fM" + // 0x1F490301: 0x00001F4D -+ "\x03\xc5\x03\x13\x00\x00\x1fP" + // 0x03C50313: 0x00001F50 -+ "\x03\xc5\x03\x14\x00\x00\x1fQ" + // 0x03C50314: 0x00001F51 -+ "\x1fP\x03\x00\x00\x00\x1fR" + // 0x1F500300: 0x00001F52 -+ "\x1fQ\x03\x00\x00\x00\x1fS" + // 0x1F510300: 0x00001F53 -+ "\x1fP\x03\x01\x00\x00\x1fT" + // 0x1F500301: 0x00001F54 -+ "\x1fQ\x03\x01\x00\x00\x1fU" + // 0x1F510301: 0x00001F55 -+ "\x1fP\x03B\x00\x00\x1fV" + // 0x1F500342: 0x00001F56 -+ "\x1fQ\x03B\x00\x00\x1fW" + // 0x1F510342: 0x00001F57 -+ "\x03\xa5\x03\x14\x00\x00\x1fY" + // 0x03A50314: 0x00001F59 -+ "\x1fY\x03\x00\x00\x00\x1f[" + // 0x1F590300: 0x00001F5B -+ "\x1fY\x03\x01\x00\x00\x1f]" + // 0x1F590301: 0x00001F5D -+ "\x1fY\x03B\x00\x00\x1f_" + // 0x1F590342: 0x00001F5F -+ "\x03\xc9\x03\x13\x00\x00\x1f`" + // 0x03C90313: 0x00001F60 -+ "\x03\xc9\x03\x14\x00\x00\x1fa" + // 0x03C90314: 0x00001F61 -+ "\x1f`\x03\x00\x00\x00\x1fb" + // 0x1F600300: 0x00001F62 -+ "\x1fa\x03\x00\x00\x00\x1fc" + // 0x1F610300: 0x00001F63 -+ "\x1f`\x03\x01\x00\x00\x1fd" + // 0x1F600301: 0x00001F64 -+ "\x1fa\x03\x01\x00\x00\x1fe" + // 0x1F610301: 0x00001F65 -+ "\x1f`\x03B\x00\x00\x1ff" + // 0x1F600342: 0x00001F66 -+ "\x1fa\x03B\x00\x00\x1fg" + // 0x1F610342: 0x00001F67 -+ "\x03\xa9\x03\x13\x00\x00\x1fh" + // 0x03A90313: 0x00001F68 -+ "\x03\xa9\x03\x14\x00\x00\x1fi" + // 0x03A90314: 0x00001F69 -+ "\x1fh\x03\x00\x00\x00\x1fj" + // 0x1F680300: 0x00001F6A -+ "\x1fi\x03\x00\x00\x00\x1fk" + // 0x1F690300: 0x00001F6B -+ "\x1fh\x03\x01\x00\x00\x1fl" + // 0x1F680301: 0x00001F6C -+ "\x1fi\x03\x01\x00\x00\x1fm" + // 0x1F690301: 0x00001F6D -+ "\x1fh\x03B\x00\x00\x1fn" + // 0x1F680342: 0x00001F6E -+ "\x1fi\x03B\x00\x00\x1fo" + // 0x1F690342: 0x00001F6F -+ "\x03\xb1\x03\x00\x00\x00\x1fp" + // 0x03B10300: 0x00001F70 -+ "\x03\xb5\x03\x00\x00\x00\x1fr" + // 0x03B50300: 0x00001F72 -+ "\x03\xb7\x03\x00\x00\x00\x1ft" + // 0x03B70300: 0x00001F74 -+ "\x03\xb9\x03\x00\x00\x00\x1fv" + // 0x03B90300: 0x00001F76 -+ "\x03\xbf\x03\x00\x00\x00\x1fx" + // 0x03BF0300: 0x00001F78 -+ "\x03\xc5\x03\x00\x00\x00\x1fz" + // 0x03C50300: 0x00001F7A -+ "\x03\xc9\x03\x00\x00\x00\x1f|" + // 0x03C90300: 0x00001F7C -+ "\x1f\x00\x03E\x00\x00\x1f\x80" + // 0x1F000345: 0x00001F80 -+ "\x1f\x01\x03E\x00\x00\x1f\x81" + // 0x1F010345: 0x00001F81 -+ "\x1f\x02\x03E\x00\x00\x1f\x82" + // 0x1F020345: 0x00001F82 -+ "\x1f\x03\x03E\x00\x00\x1f\x83" + // 0x1F030345: 0x00001F83 -+ "\x1f\x04\x03E\x00\x00\x1f\x84" + // 0x1F040345: 0x00001F84 -+ "\x1f\x05\x03E\x00\x00\x1f\x85" + // 0x1F050345: 0x00001F85 -+ "\x1f\x06\x03E\x00\x00\x1f\x86" + // 0x1F060345: 0x00001F86 -+ "\x1f\a\x03E\x00\x00\x1f\x87" + // 0x1F070345: 0x00001F87 -+ "\x1f\b\x03E\x00\x00\x1f\x88" + // 0x1F080345: 0x00001F88 -+ "\x1f\t\x03E\x00\x00\x1f\x89" + // 0x1F090345: 0x00001F89 -+ "\x1f\n\x03E\x00\x00\x1f\x8a" + // 0x1F0A0345: 0x00001F8A -+ "\x1f\v\x03E\x00\x00\x1f\x8b" + // 0x1F0B0345: 0x00001F8B -+ "\x1f\f\x03E\x00\x00\x1f\x8c" + // 0x1F0C0345: 0x00001F8C -+ "\x1f\r\x03E\x00\x00\x1f\x8d" + // 0x1F0D0345: 0x00001F8D -+ "\x1f\x0e\x03E\x00\x00\x1f\x8e" + // 0x1F0E0345: 0x00001F8E -+ "\x1f\x0f\x03E\x00\x00\x1f\x8f" + // 0x1F0F0345: 0x00001F8F -+ "\x1f \x03E\x00\x00\x1f\x90" + // 0x1F200345: 0x00001F90 -+ "\x1f!\x03E\x00\x00\x1f\x91" + // 0x1F210345: 0x00001F91 -+ "\x1f\"\x03E\x00\x00\x1f\x92" + // 0x1F220345: 0x00001F92 -+ "\x1f#\x03E\x00\x00\x1f\x93" + // 0x1F230345: 0x00001F93 -+ "\x1f$\x03E\x00\x00\x1f\x94" + // 0x1F240345: 0x00001F94 -+ "\x1f%\x03E\x00\x00\x1f\x95" + // 0x1F250345: 0x00001F95 -+ "\x1f&\x03E\x00\x00\x1f\x96" + // 0x1F260345: 0x00001F96 -+ "\x1f'\x03E\x00\x00\x1f\x97" + // 0x1F270345: 0x00001F97 -+ "\x1f(\x03E\x00\x00\x1f\x98" + // 0x1F280345: 0x00001F98 -+ "\x1f)\x03E\x00\x00\x1f\x99" + // 0x1F290345: 0x00001F99 -+ "\x1f*\x03E\x00\x00\x1f\x9a" + // 0x1F2A0345: 0x00001F9A -+ "\x1f+\x03E\x00\x00\x1f\x9b" + // 0x1F2B0345: 0x00001F9B -+ "\x1f,\x03E\x00\x00\x1f\x9c" + // 0x1F2C0345: 0x00001F9C -+ "\x1f-\x03E\x00\x00\x1f\x9d" + // 0x1F2D0345: 0x00001F9D -+ "\x1f.\x03E\x00\x00\x1f\x9e" + // 0x1F2E0345: 0x00001F9E -+ "\x1f/\x03E\x00\x00\x1f\x9f" + // 0x1F2F0345: 0x00001F9F -+ "\x1f`\x03E\x00\x00\x1f\xa0" + // 0x1F600345: 0x00001FA0 -+ "\x1fa\x03E\x00\x00\x1f\xa1" + // 0x1F610345: 0x00001FA1 -+ "\x1fb\x03E\x00\x00\x1f\xa2" + // 0x1F620345: 0x00001FA2 -+ "\x1fc\x03E\x00\x00\x1f\xa3" + // 0x1F630345: 0x00001FA3 -+ "\x1fd\x03E\x00\x00\x1f\xa4" + // 0x1F640345: 0x00001FA4 -+ "\x1fe\x03E\x00\x00\x1f\xa5" + // 0x1F650345: 0x00001FA5 -+ "\x1ff\x03E\x00\x00\x1f\xa6" + // 0x1F660345: 0x00001FA6 -+ "\x1fg\x03E\x00\x00\x1f\xa7" + // 0x1F670345: 0x00001FA7 -+ "\x1fh\x03E\x00\x00\x1f\xa8" + // 0x1F680345: 0x00001FA8 -+ "\x1fi\x03E\x00\x00\x1f\xa9" + // 0x1F690345: 0x00001FA9 -+ "\x1fj\x03E\x00\x00\x1f\xaa" + // 0x1F6A0345: 0x00001FAA -+ "\x1fk\x03E\x00\x00\x1f\xab" + // 0x1F6B0345: 0x00001FAB -+ "\x1fl\x03E\x00\x00\x1f\xac" + // 0x1F6C0345: 0x00001FAC -+ "\x1fm\x03E\x00\x00\x1f\xad" + // 0x1F6D0345: 0x00001FAD -+ "\x1fn\x03E\x00\x00\x1f\xae" + // 0x1F6E0345: 0x00001FAE -+ "\x1fo\x03E\x00\x00\x1f\xaf" + // 0x1F6F0345: 0x00001FAF -+ "\x03\xb1\x03\x06\x00\x00\x1f\xb0" + // 0x03B10306: 0x00001FB0 -+ "\x03\xb1\x03\x04\x00\x00\x1f\xb1" + // 0x03B10304: 0x00001FB1 -+ "\x1fp\x03E\x00\x00\x1f\xb2" + // 0x1F700345: 0x00001FB2 -+ "\x03\xb1\x03E\x00\x00\x1f\xb3" + // 0x03B10345: 0x00001FB3 -+ "\x03\xac\x03E\x00\x00\x1f\xb4" + // 0x03AC0345: 0x00001FB4 -+ "\x03\xb1\x03B\x00\x00\x1f\xb6" + // 0x03B10342: 0x00001FB6 -+ "\x1f\xb6\x03E\x00\x00\x1f\xb7" + // 0x1FB60345: 0x00001FB7 -+ "\x03\x91\x03\x06\x00\x00\x1f\xb8" + // 0x03910306: 0x00001FB8 -+ "\x03\x91\x03\x04\x00\x00\x1f\xb9" + // 0x03910304: 0x00001FB9 -+ "\x03\x91\x03\x00\x00\x00\x1f\xba" + // 0x03910300: 0x00001FBA -+ "\x03\x91\x03E\x00\x00\x1f\xbc" + // 0x03910345: 0x00001FBC -+ "\x00\xa8\x03B\x00\x00\x1f\xc1" + // 0x00A80342: 0x00001FC1 -+ "\x1ft\x03E\x00\x00\x1f\xc2" + // 0x1F740345: 0x00001FC2 -+ "\x03\xb7\x03E\x00\x00\x1f\xc3" + // 0x03B70345: 0x00001FC3 -+ "\x03\xae\x03E\x00\x00\x1f\xc4" + // 0x03AE0345: 0x00001FC4 -+ "\x03\xb7\x03B\x00\x00\x1f\xc6" + // 0x03B70342: 0x00001FC6 -+ "\x1f\xc6\x03E\x00\x00\x1f\xc7" + // 0x1FC60345: 0x00001FC7 -+ "\x03\x95\x03\x00\x00\x00\x1f\xc8" + // 0x03950300: 0x00001FC8 -+ "\x03\x97\x03\x00\x00\x00\x1f\xca" + // 0x03970300: 0x00001FCA -+ "\x03\x97\x03E\x00\x00\x1f\xcc" + // 0x03970345: 0x00001FCC -+ "\x1f\xbf\x03\x00\x00\x00\x1f\xcd" + // 0x1FBF0300: 0x00001FCD -+ "\x1f\xbf\x03\x01\x00\x00\x1f\xce" + // 0x1FBF0301: 0x00001FCE -+ "\x1f\xbf\x03B\x00\x00\x1f\xcf" + // 0x1FBF0342: 0x00001FCF -+ "\x03\xb9\x03\x06\x00\x00\x1f\xd0" + // 0x03B90306: 0x00001FD0 -+ "\x03\xb9\x03\x04\x00\x00\x1f\xd1" + // 0x03B90304: 0x00001FD1 -+ "\x03\xca\x03\x00\x00\x00\x1f\xd2" + // 0x03CA0300: 0x00001FD2 -+ "\x03\xb9\x03B\x00\x00\x1f\xd6" + // 0x03B90342: 0x00001FD6 -+ "\x03\xca\x03B\x00\x00\x1f\xd7" + // 0x03CA0342: 0x00001FD7 -+ "\x03\x99\x03\x06\x00\x00\x1f\xd8" + // 0x03990306: 0x00001FD8 -+ "\x03\x99\x03\x04\x00\x00\x1f\xd9" + // 0x03990304: 0x00001FD9 -+ "\x03\x99\x03\x00\x00\x00\x1f\xda" + // 0x03990300: 0x00001FDA -+ "\x1f\xfe\x03\x00\x00\x00\x1f\xdd" + // 0x1FFE0300: 0x00001FDD -+ "\x1f\xfe\x03\x01\x00\x00\x1f\xde" + // 0x1FFE0301: 0x00001FDE -+ "\x1f\xfe\x03B\x00\x00\x1f\xdf" + // 0x1FFE0342: 0x00001FDF -+ "\x03\xc5\x03\x06\x00\x00\x1f\xe0" + // 0x03C50306: 0x00001FE0 -+ "\x03\xc5\x03\x04\x00\x00\x1f\xe1" + // 0x03C50304: 0x00001FE1 -+ "\x03\xcb\x03\x00\x00\x00\x1f\xe2" + // 0x03CB0300: 0x00001FE2 -+ "\x03\xc1\x03\x13\x00\x00\x1f\xe4" + // 0x03C10313: 0x00001FE4 -+ "\x03\xc1\x03\x14\x00\x00\x1f\xe5" + // 0x03C10314: 0x00001FE5 -+ "\x03\xc5\x03B\x00\x00\x1f\xe6" + // 0x03C50342: 0x00001FE6 -+ "\x03\xcb\x03B\x00\x00\x1f\xe7" + // 0x03CB0342: 0x00001FE7 -+ "\x03\xa5\x03\x06\x00\x00\x1f\xe8" + // 0x03A50306: 0x00001FE8 -+ "\x03\xa5\x03\x04\x00\x00\x1f\xe9" + // 0x03A50304: 0x00001FE9 -+ "\x03\xa5\x03\x00\x00\x00\x1f\xea" + // 0x03A50300: 0x00001FEA -+ "\x03\xa1\x03\x14\x00\x00\x1f\xec" + // 0x03A10314: 0x00001FEC -+ "\x00\xa8\x03\x00\x00\x00\x1f\xed" + // 0x00A80300: 0x00001FED -+ "\x1f|\x03E\x00\x00\x1f\xf2" + // 0x1F7C0345: 0x00001FF2 -+ "\x03\xc9\x03E\x00\x00\x1f\xf3" + // 0x03C90345: 0x00001FF3 -+ "\x03\xce\x03E\x00\x00\x1f\xf4" + // 0x03CE0345: 0x00001FF4 -+ "\x03\xc9\x03B\x00\x00\x1f\xf6" + // 0x03C90342: 0x00001FF6 -+ "\x1f\xf6\x03E\x00\x00\x1f\xf7" + // 0x1FF60345: 0x00001FF7 -+ "\x03\x9f\x03\x00\x00\x00\x1f\xf8" + // 0x039F0300: 0x00001FF8 -+ "\x03\xa9\x03\x00\x00\x00\x1f\xfa" + // 0x03A90300: 0x00001FFA -+ "\x03\xa9\x03E\x00\x00\x1f\xfc" + // 0x03A90345: 0x00001FFC -+ "!\x90\x038\x00\x00!\x9a" + // 0x21900338: 0x0000219A -+ "!\x92\x038\x00\x00!\x9b" + // 0x21920338: 0x0000219B -+ "!\x94\x038\x00\x00!\xae" + // 0x21940338: 0x000021AE -+ "!\xd0\x038\x00\x00!\xcd" + // 0x21D00338: 0x000021CD -+ "!\xd4\x038\x00\x00!\xce" + // 0x21D40338: 0x000021CE -+ "!\xd2\x038\x00\x00!\xcf" + // 0x21D20338: 0x000021CF -+ "\"\x03\x038\x00\x00\"\x04" + // 0x22030338: 0x00002204 -+ "\"\b\x038\x00\x00\"\t" + // 0x22080338: 0x00002209 -+ "\"\v\x038\x00\x00\"\f" + // 0x220B0338: 0x0000220C -+ "\"#\x038\x00\x00\"$" + // 0x22230338: 0x00002224 -+ "\"%\x038\x00\x00\"&" + // 0x22250338: 0x00002226 -+ "\"<\x038\x00\x00\"A" + // 0x223C0338: 0x00002241 -+ "\"C\x038\x00\x00\"D" + // 0x22430338: 0x00002244 -+ "\"E\x038\x00\x00\"G" + // 0x22450338: 0x00002247 -+ "\"H\x038\x00\x00\"I" + // 0x22480338: 0x00002249 -+ "\x00=\x038\x00\x00\"`" + // 0x003D0338: 0x00002260 -+ "\"a\x038\x00\x00\"b" + // 0x22610338: 0x00002262 -+ "\"M\x038\x00\x00\"m" + // 0x224D0338: 0x0000226D -+ "\x00<\x038\x00\x00\"n" + // 0x003C0338: 0x0000226E -+ "\x00>\x038\x00\x00\"o" + // 0x003E0338: 0x0000226F -+ "\"d\x038\x00\x00\"p" + // 0x22640338: 0x00002270 -+ "\"e\x038\x00\x00\"q" + // 0x22650338: 0x00002271 -+ "\"r\x038\x00\x00\"t" + // 0x22720338: 0x00002274 -+ "\"s\x038\x00\x00\"u" + // 0x22730338: 0x00002275 -+ "\"v\x038\x00\x00\"x" + // 0x22760338: 0x00002278 -+ "\"w\x038\x00\x00\"y" + // 0x22770338: 0x00002279 -+ "\"z\x038\x00\x00\"\x80" + // 0x227A0338: 0x00002280 -+ "\"{\x038\x00\x00\"\x81" + // 0x227B0338: 0x00002281 -+ "\"\x82\x038\x00\x00\"\x84" + // 0x22820338: 0x00002284 -+ "\"\x83\x038\x00\x00\"\x85" + // 0x22830338: 0x00002285 -+ "\"\x86\x038\x00\x00\"\x88" + // 0x22860338: 0x00002288 -+ "\"\x87\x038\x00\x00\"\x89" + // 0x22870338: 0x00002289 -+ "\"\xa2\x038\x00\x00\"\xac" + // 0x22A20338: 0x000022AC -+ "\"\xa8\x038\x00\x00\"\xad" + // 0x22A80338: 0x000022AD -+ "\"\xa9\x038\x00\x00\"\xae" + // 0x22A90338: 0x000022AE -+ "\"\xab\x038\x00\x00\"\xaf" + // 0x22AB0338: 0x000022AF -+ "\"|\x038\x00\x00\"\xe0" + // 0x227C0338: 0x000022E0 -+ "\"}\x038\x00\x00\"\xe1" + // 0x227D0338: 0x000022E1 -+ "\"\x91\x038\x00\x00\"\xe2" + // 0x22910338: 0x000022E2 -+ "\"\x92\x038\x00\x00\"\xe3" + // 0x22920338: 0x000022E3 -+ "\"\xb2\x038\x00\x00\"\xea" + // 0x22B20338: 0x000022EA -+ "\"\xb3\x038\x00\x00\"\xeb" + // 0x22B30338: 0x000022EB -+ "\"\xb4\x038\x00\x00\"\xec" + // 0x22B40338: 0x000022EC -+ "\"\xb5\x038\x00\x00\"\xed" + // 0x22B50338: 0x000022ED -+ "0K0\x99\x00\x000L" + // 0x304B3099: 0x0000304C -+ "0M0\x99\x00\x000N" + // 0x304D3099: 0x0000304E -+ "0O0\x99\x00\x000P" + // 0x304F3099: 0x00003050 -+ "0Q0\x99\x00\x000R" + // 0x30513099: 0x00003052 -+ "0S0\x99\x00\x000T" + // 0x30533099: 0x00003054 -+ "0U0\x99\x00\x000V" + // 0x30553099: 0x00003056 -+ "0W0\x99\x00\x000X" + // 0x30573099: 0x00003058 -+ "0Y0\x99\x00\x000Z" + // 0x30593099: 0x0000305A -+ "0[0\x99\x00\x000\\" + // 0x305B3099: 0x0000305C -+ "0]0\x99\x00\x000^" + // 0x305D3099: 0x0000305E -+ "0_0\x99\x00\x000`" + // 0x305F3099: 0x00003060 -+ "0a0\x99\x00\x000b" + // 0x30613099: 0x00003062 -+ "0d0\x99\x00\x000e" + // 0x30643099: 0x00003065 -+ "0f0\x99\x00\x000g" + // 0x30663099: 0x00003067 -+ "0h0\x99\x00\x000i" + // 0x30683099: 0x00003069 -+ "0o0\x99\x00\x000p" + // 0x306F3099: 0x00003070 -+ "0o0\x9a\x00\x000q" + // 0x306F309A: 0x00003071 -+ "0r0\x99\x00\x000s" + // 0x30723099: 0x00003073 -+ "0r0\x9a\x00\x000t" + // 0x3072309A: 0x00003074 -+ "0u0\x99\x00\x000v" + // 0x30753099: 0x00003076 -+ "0u0\x9a\x00\x000w" + // 0x3075309A: 0x00003077 -+ "0x0\x99\x00\x000y" + // 0x30783099: 0x00003079 -+ "0x0\x9a\x00\x000z" + // 0x3078309A: 0x0000307A -+ "0{0\x99\x00\x000|" + // 0x307B3099: 0x0000307C -+ "0{0\x9a\x00\x000}" + // 0x307B309A: 0x0000307D -+ "0F0\x99\x00\x000\x94" + // 0x30463099: 0x00003094 -+ "0\x9d0\x99\x00\x000\x9e" + // 0x309D3099: 0x0000309E -+ "0\xab0\x99\x00\x000\xac" + // 0x30AB3099: 0x000030AC -+ "0\xad0\x99\x00\x000\xae" + // 0x30AD3099: 0x000030AE -+ "0\xaf0\x99\x00\x000\xb0" + // 0x30AF3099: 0x000030B0 -+ "0\xb10\x99\x00\x000\xb2" + // 0x30B13099: 0x000030B2 -+ "0\xb30\x99\x00\x000\xb4" + // 0x30B33099: 0x000030B4 -+ "0\xb50\x99\x00\x000\xb6" + // 0x30B53099: 0x000030B6 -+ "0\xb70\x99\x00\x000\xb8" + // 0x30B73099: 0x000030B8 -+ "0\xb90\x99\x00\x000\xba" + // 0x30B93099: 0x000030BA -+ "0\xbb0\x99\x00\x000\xbc" + // 0x30BB3099: 0x000030BC -+ "0\xbd0\x99\x00\x000\xbe" + // 0x30BD3099: 0x000030BE -+ "0\xbf0\x99\x00\x000\xc0" + // 0x30BF3099: 0x000030C0 -+ "0\xc10\x99\x00\x000\xc2" + // 0x30C13099: 0x000030C2 -+ "0\xc40\x99\x00\x000\xc5" + // 0x30C43099: 0x000030C5 -+ "0\xc60\x99\x00\x000\xc7" + // 0x30C63099: 0x000030C7 -+ "0\xc80\x99\x00\x000\xc9" + // 0x30C83099: 0x000030C9 -+ "0\xcf0\x99\x00\x000\xd0" + // 0x30CF3099: 0x000030D0 -+ "0\xcf0\x9a\x00\x000\xd1" + // 0x30CF309A: 0x000030D1 -+ "0\xd20\x99\x00\x000\xd3" + // 0x30D23099: 0x000030D3 -+ "0\xd20\x9a\x00\x000\xd4" + // 0x30D2309A: 0x000030D4 -+ "0\xd50\x99\x00\x000\xd6" + // 0x30D53099: 0x000030D6 -+ "0\xd50\x9a\x00\x000\xd7" + // 0x30D5309A: 0x000030D7 -+ "0\xd80\x99\x00\x000\xd9" + // 0x30D83099: 0x000030D9 -+ "0\xd80\x9a\x00\x000\xda" + // 0x30D8309A: 0x000030DA -+ "0\xdb0\x99\x00\x000\xdc" + // 0x30DB3099: 0x000030DC -+ "0\xdb0\x9a\x00\x000\xdd" + // 0x30DB309A: 0x000030DD -+ "0\xa60\x99\x00\x000\xf4" + // 0x30A63099: 0x000030F4 -+ "0\xef0\x99\x00\x000\xf7" + // 0x30EF3099: 0x000030F7 -+ "0\xf00\x99\x00\x000\xf8" + // 0x30F03099: 0x000030F8 -+ "0\xf10\x99\x00\x000\xf9" + // 0x30F13099: 0x000030F9 -+ "0\xf20\x99\x00\x000\xfa" + // 0x30F23099: 0x000030FA -+ "0\xfd0\x99\x00\x000\xfe" + // 0x30FD3099: 0x000030FE -+ "\x10\x99\x10\xba\x00\x01\x10\x9a" + // 0x109910BA: 0x0001109A -+ "\x10\x9b\x10\xba\x00\x01\x10\x9c" + // 0x109B10BA: 0x0001109C -+ "\x10\xa5\x10\xba\x00\x01\x10\xab" + // 0x10A510BA: 0x000110AB -+ "\x111\x11'\x00\x01\x11." + // 0x11311127: 0x0001112E -+ "\x112\x11'\x00\x01\x11/" + // 0x11321127: 0x0001112F -+ "\x13G\x13>\x00\x01\x13K" + // 0x1347133E: 0x0001134B -+ "\x13G\x13W\x00\x01\x13L" + // 0x13471357: 0x0001134C -+ "\x14\xb9\x14\xba\x00\x01\x14\xbb" + // 0x14B914BA: 0x000114BB -+ "\x14\xb9\x14\xb0\x00\x01\x14\xbc" + // 0x14B914B0: 0x000114BC -+ "\x14\xb9\x14\xbd\x00\x01\x14\xbe" + // 0x14B914BD: 0x000114BE -+ "\x15\xb8\x15\xaf\x00\x01\x15\xba" + // 0x15B815AF: 0x000115BA -+ "\x15\xb9\x15\xaf\x00\x01\x15\xbb" + // 0x15B915AF: 0x000115BB -+ "\x195\x190\x00\x01\x198" + // 0x19351930: 0x00011938 -+ "" -+ // Total size of tables: 55KB (56160 bytes) -diff --git a/vendor/golang.org/x/text/unicode/norm/tables9.0.0.go b/vendor/golang.org/x/text/unicode/norm/tables9.0.0.go -index 9429069..0175eae 100644 ---- a/vendor/golang.org/x/text/unicode/norm/tables9.0.0.go -+++ b/vendor/golang.org/x/text/unicode/norm/tables9.0.0.go -@@ -1,5 +1,6 @@ - // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. - -+//go:build !go1.10 - // +build !go1.10 - - package norm -diff --git a/vendor/golang.org/x/text/width/tables10.0.0.go b/vendor/golang.org/x/text/width/tables10.0.0.go -index decb8e4..186b1d4 100644 ---- a/vendor/golang.org/x/text/width/tables10.0.0.go -+++ b/vendor/golang.org/x/text/width/tables10.0.0.go -@@ -1,5 +1,6 @@ - // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. - -+//go:build go1.10 && !go1.13 - // +build go1.10,!go1.13 - - package width -diff --git a/vendor/golang.org/x/text/width/tables11.0.0.go b/vendor/golang.org/x/text/width/tables11.0.0.go -index d6def0e..990f762 100644 ---- a/vendor/golang.org/x/text/width/tables11.0.0.go -+++ b/vendor/golang.org/x/text/width/tables11.0.0.go -@@ -1,6 +1,7 @@ - // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. - --// +build go1.13 -+//go:build go1.13 && !go1.14 -+// +build go1.13,!go1.14 - - package width - -diff --git a/vendor/golang.org/x/text/width/tables12.0.0.go b/vendor/golang.org/x/text/width/tables12.0.0.go -new file mode 100644 -index 0000000..8529629 ---- /dev/null -+++ b/vendor/golang.org/x/text/width/tables12.0.0.go -@@ -0,0 +1,1351 @@ -+// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. -+ -+//go:build go1.14 && !go1.16 -+// +build go1.14,!go1.16 -+ -+package width -+ -+// UnicodeVersion is the Unicode version from which the tables in this package are derived. -+const UnicodeVersion = "12.0.0" -+ -+// lookup returns the trie value for the first UTF-8 encoding in s and -+// the width in bytes of this encoding. The size will be 0 if s does not -+// hold enough bytes to complete the encoding. len(s) must be greater than 0. -+func (t *widthTrie) lookup(s []byte) (v uint16, sz int) { -+ c0 := s[0] -+ switch { -+ case c0 < 0x80: // is ASCII -+ return widthValues[c0], 1 -+ case c0 < 0xC2: -+ return 0, 1 // Illegal UTF-8: not a starter, not ASCII. -+ case c0 < 0xE0: // 2-byte UTF-8 -+ if len(s) < 2 { -+ return 0, 0 -+ } -+ i := widthIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c1), 2 -+ case c0 < 0xF0: // 3-byte UTF-8 -+ if len(s) < 3 { -+ return 0, 0 -+ } -+ i := widthIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = widthIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c2), 3 -+ case c0 < 0xF8: // 4-byte UTF-8 -+ if len(s) < 4 { -+ return 0, 0 -+ } -+ i := widthIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = widthIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ o = uint32(i)<<6 + uint32(c2) -+ i = widthIndex[o] -+ c3 := s[3] -+ if c3 < 0x80 || 0xC0 <= c3 { -+ return 0, 3 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c3), 4 -+ } -+ // Illegal rune -+ return 0, 1 -+} -+ -+// lookupUnsafe returns the trie value for the first UTF-8 encoding in s. -+// s must start with a full and valid UTF-8 encoded rune. -+func (t *widthTrie) lookupUnsafe(s []byte) uint16 { -+ c0 := s[0] -+ if c0 < 0x80 { // is ASCII -+ return widthValues[c0] -+ } -+ i := widthIndex[c0] -+ if c0 < 0xE0 { // 2-byte UTF-8 -+ return t.lookupValue(uint32(i), s[1]) -+ } -+ i = widthIndex[uint32(i)<<6+uint32(s[1])] -+ if c0 < 0xF0 { // 3-byte UTF-8 -+ return t.lookupValue(uint32(i), s[2]) -+ } -+ i = widthIndex[uint32(i)<<6+uint32(s[2])] -+ if c0 < 0xF8 { // 4-byte UTF-8 -+ return t.lookupValue(uint32(i), s[3]) -+ } -+ return 0 -+} -+ -+// lookupString returns the trie value for the first UTF-8 encoding in s and -+// the width in bytes of this encoding. The size will be 0 if s does not -+// hold enough bytes to complete the encoding. len(s) must be greater than 0. -+func (t *widthTrie) lookupString(s string) (v uint16, sz int) { -+ c0 := s[0] -+ switch { -+ case c0 < 0x80: // is ASCII -+ return widthValues[c0], 1 -+ case c0 < 0xC2: -+ return 0, 1 // Illegal UTF-8: not a starter, not ASCII. -+ case c0 < 0xE0: // 2-byte UTF-8 -+ if len(s) < 2 { -+ return 0, 0 -+ } -+ i := widthIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c1), 2 -+ case c0 < 0xF0: // 3-byte UTF-8 -+ if len(s) < 3 { -+ return 0, 0 -+ } -+ i := widthIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = widthIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c2), 3 -+ case c0 < 0xF8: // 4-byte UTF-8 -+ if len(s) < 4 { -+ return 0, 0 -+ } -+ i := widthIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = widthIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ o = uint32(i)<<6 + uint32(c2) -+ i = widthIndex[o] -+ c3 := s[3] -+ if c3 < 0x80 || 0xC0 <= c3 { -+ return 0, 3 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c3), 4 -+ } -+ // Illegal rune -+ return 0, 1 -+} -+ -+// lookupStringUnsafe returns the trie value for the first UTF-8 encoding in s. -+// s must start with a full and valid UTF-8 encoded rune. -+func (t *widthTrie) lookupStringUnsafe(s string) uint16 { -+ c0 := s[0] -+ if c0 < 0x80 { // is ASCII -+ return widthValues[c0] -+ } -+ i := widthIndex[c0] -+ if c0 < 0xE0 { // 2-byte UTF-8 -+ return t.lookupValue(uint32(i), s[1]) -+ } -+ i = widthIndex[uint32(i)<<6+uint32(s[1])] -+ if c0 < 0xF0 { // 3-byte UTF-8 -+ return t.lookupValue(uint32(i), s[2]) -+ } -+ i = widthIndex[uint32(i)<<6+uint32(s[2])] -+ if c0 < 0xF8 { // 4-byte UTF-8 -+ return t.lookupValue(uint32(i), s[3]) -+ } -+ return 0 -+} -+ -+// widthTrie. Total size: 14720 bytes (14.38 KiB). Checksum: 3f4f2516ded5489b. -+type widthTrie struct{} -+ -+func newWidthTrie(i int) *widthTrie { -+ return &widthTrie{} -+} -+ -+// lookupValue determines the type of block n and looks up the value for b. -+func (t *widthTrie) lookupValue(n uint32, b byte) uint16 { -+ switch { -+ default: -+ return uint16(widthValues[n<<6+uint32(b)]) -+ } -+} -+ -+// widthValues: 104 blocks, 6656 entries, 13312 bytes -+// The third block is the zero block. -+var widthValues = [6656]uint16{ -+ // Block 0x0, offset 0x0 -+ 0x20: 0x6001, 0x21: 0x6002, 0x22: 0x6002, 0x23: 0x6002, -+ 0x24: 0x6002, 0x25: 0x6002, 0x26: 0x6002, 0x27: 0x6002, 0x28: 0x6002, 0x29: 0x6002, -+ 0x2a: 0x6002, 0x2b: 0x6002, 0x2c: 0x6002, 0x2d: 0x6002, 0x2e: 0x6002, 0x2f: 0x6002, -+ 0x30: 0x6002, 0x31: 0x6002, 0x32: 0x6002, 0x33: 0x6002, 0x34: 0x6002, 0x35: 0x6002, -+ 0x36: 0x6002, 0x37: 0x6002, 0x38: 0x6002, 0x39: 0x6002, 0x3a: 0x6002, 0x3b: 0x6002, -+ 0x3c: 0x6002, 0x3d: 0x6002, 0x3e: 0x6002, 0x3f: 0x6002, -+ // Block 0x1, offset 0x40 -+ 0x40: 0x6003, 0x41: 0x6003, 0x42: 0x6003, 0x43: 0x6003, 0x44: 0x6003, 0x45: 0x6003, -+ 0x46: 0x6003, 0x47: 0x6003, 0x48: 0x6003, 0x49: 0x6003, 0x4a: 0x6003, 0x4b: 0x6003, -+ 0x4c: 0x6003, 0x4d: 0x6003, 0x4e: 0x6003, 0x4f: 0x6003, 0x50: 0x6003, 0x51: 0x6003, -+ 0x52: 0x6003, 0x53: 0x6003, 0x54: 0x6003, 0x55: 0x6003, 0x56: 0x6003, 0x57: 0x6003, -+ 0x58: 0x6003, 0x59: 0x6003, 0x5a: 0x6003, 0x5b: 0x6003, 0x5c: 0x6003, 0x5d: 0x6003, -+ 0x5e: 0x6003, 0x5f: 0x6003, 0x60: 0x6004, 0x61: 0x6004, 0x62: 0x6004, 0x63: 0x6004, -+ 0x64: 0x6004, 0x65: 0x6004, 0x66: 0x6004, 0x67: 0x6004, 0x68: 0x6004, 0x69: 0x6004, -+ 0x6a: 0x6004, 0x6b: 0x6004, 0x6c: 0x6004, 0x6d: 0x6004, 0x6e: 0x6004, 0x6f: 0x6004, -+ 0x70: 0x6004, 0x71: 0x6004, 0x72: 0x6004, 0x73: 0x6004, 0x74: 0x6004, 0x75: 0x6004, -+ 0x76: 0x6004, 0x77: 0x6004, 0x78: 0x6004, 0x79: 0x6004, 0x7a: 0x6004, 0x7b: 0x6004, -+ 0x7c: 0x6004, 0x7d: 0x6004, 0x7e: 0x6004, -+ // Block 0x2, offset 0x80 -+ // Block 0x3, offset 0xc0 -+ 0xe1: 0x2000, 0xe2: 0x6005, 0xe3: 0x6005, -+ 0xe4: 0x2000, 0xe5: 0x6006, 0xe6: 0x6005, 0xe7: 0x2000, 0xe8: 0x2000, -+ 0xea: 0x2000, 0xec: 0x6007, 0xed: 0x2000, 0xee: 0x2000, 0xef: 0x6008, -+ 0xf0: 0x2000, 0xf1: 0x2000, 0xf2: 0x2000, 0xf3: 0x2000, 0xf4: 0x2000, -+ 0xf6: 0x2000, 0xf7: 0x2000, 0xf8: 0x2000, 0xf9: 0x2000, 0xfa: 0x2000, -+ 0xfc: 0x2000, 0xfd: 0x2000, 0xfe: 0x2000, 0xff: 0x2000, -+ // Block 0x4, offset 0x100 -+ 0x106: 0x2000, -+ 0x110: 0x2000, -+ 0x117: 0x2000, -+ 0x118: 0x2000, -+ 0x11e: 0x2000, 0x11f: 0x2000, 0x120: 0x2000, 0x121: 0x2000, -+ 0x126: 0x2000, 0x128: 0x2000, 0x129: 0x2000, -+ 0x12a: 0x2000, 0x12c: 0x2000, 0x12d: 0x2000, -+ 0x130: 0x2000, 0x132: 0x2000, 0x133: 0x2000, -+ 0x137: 0x2000, 0x138: 0x2000, 0x139: 0x2000, 0x13a: 0x2000, -+ 0x13c: 0x2000, 0x13e: 0x2000, -+ // Block 0x5, offset 0x140 -+ 0x141: 0x2000, -+ 0x151: 0x2000, -+ 0x153: 0x2000, -+ 0x15b: 0x2000, -+ 0x166: 0x2000, 0x167: 0x2000, -+ 0x16b: 0x2000, -+ 0x171: 0x2000, 0x172: 0x2000, 0x173: 0x2000, -+ 0x178: 0x2000, -+ 0x17f: 0x2000, -+ // Block 0x6, offset 0x180 -+ 0x180: 0x2000, 0x181: 0x2000, 0x182: 0x2000, 0x184: 0x2000, -+ 0x188: 0x2000, 0x189: 0x2000, 0x18a: 0x2000, 0x18b: 0x2000, -+ 0x18d: 0x2000, -+ 0x192: 0x2000, 0x193: 0x2000, -+ 0x1a6: 0x2000, 0x1a7: 0x2000, -+ 0x1ab: 0x2000, -+ // Block 0x7, offset 0x1c0 -+ 0x1ce: 0x2000, 0x1d0: 0x2000, -+ 0x1d2: 0x2000, 0x1d4: 0x2000, 0x1d6: 0x2000, -+ 0x1d8: 0x2000, 0x1da: 0x2000, 0x1dc: 0x2000, -+ // Block 0x8, offset 0x200 -+ 0x211: 0x2000, -+ 0x221: 0x2000, -+ // Block 0x9, offset 0x240 -+ 0x244: 0x2000, -+ 0x247: 0x2000, 0x249: 0x2000, 0x24a: 0x2000, 0x24b: 0x2000, -+ 0x24d: 0x2000, 0x250: 0x2000, -+ 0x258: 0x2000, 0x259: 0x2000, 0x25a: 0x2000, 0x25b: 0x2000, 0x25d: 0x2000, -+ 0x25f: 0x2000, -+ // Block 0xa, offset 0x280 -+ 0x280: 0x2000, 0x281: 0x2000, 0x282: 0x2000, 0x283: 0x2000, 0x284: 0x2000, 0x285: 0x2000, -+ 0x286: 0x2000, 0x287: 0x2000, 0x288: 0x2000, 0x289: 0x2000, 0x28a: 0x2000, 0x28b: 0x2000, -+ 0x28c: 0x2000, 0x28d: 0x2000, 0x28e: 0x2000, 0x28f: 0x2000, 0x290: 0x2000, 0x291: 0x2000, -+ 0x292: 0x2000, 0x293: 0x2000, 0x294: 0x2000, 0x295: 0x2000, 0x296: 0x2000, 0x297: 0x2000, -+ 0x298: 0x2000, 0x299: 0x2000, 0x29a: 0x2000, 0x29b: 0x2000, 0x29c: 0x2000, 0x29d: 0x2000, -+ 0x29e: 0x2000, 0x29f: 0x2000, 0x2a0: 0x2000, 0x2a1: 0x2000, 0x2a2: 0x2000, 0x2a3: 0x2000, -+ 0x2a4: 0x2000, 0x2a5: 0x2000, 0x2a6: 0x2000, 0x2a7: 0x2000, 0x2a8: 0x2000, 0x2a9: 0x2000, -+ 0x2aa: 0x2000, 0x2ab: 0x2000, 0x2ac: 0x2000, 0x2ad: 0x2000, 0x2ae: 0x2000, 0x2af: 0x2000, -+ 0x2b0: 0x2000, 0x2b1: 0x2000, 0x2b2: 0x2000, 0x2b3: 0x2000, 0x2b4: 0x2000, 0x2b5: 0x2000, -+ 0x2b6: 0x2000, 0x2b7: 0x2000, 0x2b8: 0x2000, 0x2b9: 0x2000, 0x2ba: 0x2000, 0x2bb: 0x2000, -+ 0x2bc: 0x2000, 0x2bd: 0x2000, 0x2be: 0x2000, 0x2bf: 0x2000, -+ // Block 0xb, offset 0x2c0 -+ 0x2c0: 0x2000, 0x2c1: 0x2000, 0x2c2: 0x2000, 0x2c3: 0x2000, 0x2c4: 0x2000, 0x2c5: 0x2000, -+ 0x2c6: 0x2000, 0x2c7: 0x2000, 0x2c8: 0x2000, 0x2c9: 0x2000, 0x2ca: 0x2000, 0x2cb: 0x2000, -+ 0x2cc: 0x2000, 0x2cd: 0x2000, 0x2ce: 0x2000, 0x2cf: 0x2000, 0x2d0: 0x2000, 0x2d1: 0x2000, -+ 0x2d2: 0x2000, 0x2d3: 0x2000, 0x2d4: 0x2000, 0x2d5: 0x2000, 0x2d6: 0x2000, 0x2d7: 0x2000, -+ 0x2d8: 0x2000, 0x2d9: 0x2000, 0x2da: 0x2000, 0x2db: 0x2000, 0x2dc: 0x2000, 0x2dd: 0x2000, -+ 0x2de: 0x2000, 0x2df: 0x2000, 0x2e0: 0x2000, 0x2e1: 0x2000, 0x2e2: 0x2000, 0x2e3: 0x2000, -+ 0x2e4: 0x2000, 0x2e5: 0x2000, 0x2e6: 0x2000, 0x2e7: 0x2000, 0x2e8: 0x2000, 0x2e9: 0x2000, -+ 0x2ea: 0x2000, 0x2eb: 0x2000, 0x2ec: 0x2000, 0x2ed: 0x2000, 0x2ee: 0x2000, 0x2ef: 0x2000, -+ // Block 0xc, offset 0x300 -+ 0x311: 0x2000, -+ 0x312: 0x2000, 0x313: 0x2000, 0x314: 0x2000, 0x315: 0x2000, 0x316: 0x2000, 0x317: 0x2000, -+ 0x318: 0x2000, 0x319: 0x2000, 0x31a: 0x2000, 0x31b: 0x2000, 0x31c: 0x2000, 0x31d: 0x2000, -+ 0x31e: 0x2000, 0x31f: 0x2000, 0x320: 0x2000, 0x321: 0x2000, 0x323: 0x2000, -+ 0x324: 0x2000, 0x325: 0x2000, 0x326: 0x2000, 0x327: 0x2000, 0x328: 0x2000, 0x329: 0x2000, -+ 0x331: 0x2000, 0x332: 0x2000, 0x333: 0x2000, 0x334: 0x2000, 0x335: 0x2000, -+ 0x336: 0x2000, 0x337: 0x2000, 0x338: 0x2000, 0x339: 0x2000, 0x33a: 0x2000, 0x33b: 0x2000, -+ 0x33c: 0x2000, 0x33d: 0x2000, 0x33e: 0x2000, 0x33f: 0x2000, -+ // Block 0xd, offset 0x340 -+ 0x340: 0x2000, 0x341: 0x2000, 0x343: 0x2000, 0x344: 0x2000, 0x345: 0x2000, -+ 0x346: 0x2000, 0x347: 0x2000, 0x348: 0x2000, 0x349: 0x2000, -+ // Block 0xe, offset 0x380 -+ 0x381: 0x2000, -+ 0x390: 0x2000, 0x391: 0x2000, -+ 0x392: 0x2000, 0x393: 0x2000, 0x394: 0x2000, 0x395: 0x2000, 0x396: 0x2000, 0x397: 0x2000, -+ 0x398: 0x2000, 0x399: 0x2000, 0x39a: 0x2000, 0x39b: 0x2000, 0x39c: 0x2000, 0x39d: 0x2000, -+ 0x39e: 0x2000, 0x39f: 0x2000, 0x3a0: 0x2000, 0x3a1: 0x2000, 0x3a2: 0x2000, 0x3a3: 0x2000, -+ 0x3a4: 0x2000, 0x3a5: 0x2000, 0x3a6: 0x2000, 0x3a7: 0x2000, 0x3a8: 0x2000, 0x3a9: 0x2000, -+ 0x3aa: 0x2000, 0x3ab: 0x2000, 0x3ac: 0x2000, 0x3ad: 0x2000, 0x3ae: 0x2000, 0x3af: 0x2000, -+ 0x3b0: 0x2000, 0x3b1: 0x2000, 0x3b2: 0x2000, 0x3b3: 0x2000, 0x3b4: 0x2000, 0x3b5: 0x2000, -+ 0x3b6: 0x2000, 0x3b7: 0x2000, 0x3b8: 0x2000, 0x3b9: 0x2000, 0x3ba: 0x2000, 0x3bb: 0x2000, -+ 0x3bc: 0x2000, 0x3bd: 0x2000, 0x3be: 0x2000, 0x3bf: 0x2000, -+ // Block 0xf, offset 0x3c0 -+ 0x3c0: 0x2000, 0x3c1: 0x2000, 0x3c2: 0x2000, 0x3c3: 0x2000, 0x3c4: 0x2000, 0x3c5: 0x2000, -+ 0x3c6: 0x2000, 0x3c7: 0x2000, 0x3c8: 0x2000, 0x3c9: 0x2000, 0x3ca: 0x2000, 0x3cb: 0x2000, -+ 0x3cc: 0x2000, 0x3cd: 0x2000, 0x3ce: 0x2000, 0x3cf: 0x2000, 0x3d1: 0x2000, -+ // Block 0x10, offset 0x400 -+ 0x400: 0x4000, 0x401: 0x4000, 0x402: 0x4000, 0x403: 0x4000, 0x404: 0x4000, 0x405: 0x4000, -+ 0x406: 0x4000, 0x407: 0x4000, 0x408: 0x4000, 0x409: 0x4000, 0x40a: 0x4000, 0x40b: 0x4000, -+ 0x40c: 0x4000, 0x40d: 0x4000, 0x40e: 0x4000, 0x40f: 0x4000, 0x410: 0x4000, 0x411: 0x4000, -+ 0x412: 0x4000, 0x413: 0x4000, 0x414: 0x4000, 0x415: 0x4000, 0x416: 0x4000, 0x417: 0x4000, -+ 0x418: 0x4000, 0x419: 0x4000, 0x41a: 0x4000, 0x41b: 0x4000, 0x41c: 0x4000, 0x41d: 0x4000, -+ 0x41e: 0x4000, 0x41f: 0x4000, 0x420: 0x4000, 0x421: 0x4000, 0x422: 0x4000, 0x423: 0x4000, -+ 0x424: 0x4000, 0x425: 0x4000, 0x426: 0x4000, 0x427: 0x4000, 0x428: 0x4000, 0x429: 0x4000, -+ 0x42a: 0x4000, 0x42b: 0x4000, 0x42c: 0x4000, 0x42d: 0x4000, 0x42e: 0x4000, 0x42f: 0x4000, -+ 0x430: 0x4000, 0x431: 0x4000, 0x432: 0x4000, 0x433: 0x4000, 0x434: 0x4000, 0x435: 0x4000, -+ 0x436: 0x4000, 0x437: 0x4000, 0x438: 0x4000, 0x439: 0x4000, 0x43a: 0x4000, 0x43b: 0x4000, -+ 0x43c: 0x4000, 0x43d: 0x4000, 0x43e: 0x4000, 0x43f: 0x4000, -+ // Block 0x11, offset 0x440 -+ 0x440: 0x4000, 0x441: 0x4000, 0x442: 0x4000, 0x443: 0x4000, 0x444: 0x4000, 0x445: 0x4000, -+ 0x446: 0x4000, 0x447: 0x4000, 0x448: 0x4000, 0x449: 0x4000, 0x44a: 0x4000, 0x44b: 0x4000, -+ 0x44c: 0x4000, 0x44d: 0x4000, 0x44e: 0x4000, 0x44f: 0x4000, 0x450: 0x4000, 0x451: 0x4000, -+ 0x452: 0x4000, 0x453: 0x4000, 0x454: 0x4000, 0x455: 0x4000, 0x456: 0x4000, 0x457: 0x4000, -+ 0x458: 0x4000, 0x459: 0x4000, 0x45a: 0x4000, 0x45b: 0x4000, 0x45c: 0x4000, 0x45d: 0x4000, -+ 0x45e: 0x4000, 0x45f: 0x4000, -+ // Block 0x12, offset 0x480 -+ 0x490: 0x2000, -+ 0x493: 0x2000, 0x494: 0x2000, 0x495: 0x2000, 0x496: 0x2000, -+ 0x498: 0x2000, 0x499: 0x2000, 0x49c: 0x2000, 0x49d: 0x2000, -+ 0x4a0: 0x2000, 0x4a1: 0x2000, 0x4a2: 0x2000, -+ 0x4a4: 0x2000, 0x4a5: 0x2000, 0x4a6: 0x2000, 0x4a7: 0x2000, -+ 0x4b0: 0x2000, 0x4b2: 0x2000, 0x4b3: 0x2000, 0x4b5: 0x2000, -+ 0x4bb: 0x2000, -+ 0x4be: 0x2000, -+ // Block 0x13, offset 0x4c0 -+ 0x4f4: 0x2000, -+ 0x4ff: 0x2000, -+ // Block 0x14, offset 0x500 -+ 0x501: 0x2000, 0x502: 0x2000, 0x503: 0x2000, 0x504: 0x2000, -+ 0x529: 0xa009, -+ 0x52c: 0x2000, -+ // Block 0x15, offset 0x540 -+ 0x543: 0x2000, 0x545: 0x2000, -+ 0x549: 0x2000, -+ 0x553: 0x2000, 0x556: 0x2000, -+ 0x561: 0x2000, 0x562: 0x2000, -+ 0x566: 0x2000, -+ 0x56b: 0x2000, -+ // Block 0x16, offset 0x580 -+ 0x593: 0x2000, 0x594: 0x2000, -+ 0x59b: 0x2000, 0x59c: 0x2000, 0x59d: 0x2000, -+ 0x59e: 0x2000, 0x5a0: 0x2000, 0x5a1: 0x2000, 0x5a2: 0x2000, 0x5a3: 0x2000, -+ 0x5a4: 0x2000, 0x5a5: 0x2000, 0x5a6: 0x2000, 0x5a7: 0x2000, 0x5a8: 0x2000, 0x5a9: 0x2000, -+ 0x5aa: 0x2000, 0x5ab: 0x2000, -+ 0x5b0: 0x2000, 0x5b1: 0x2000, 0x5b2: 0x2000, 0x5b3: 0x2000, 0x5b4: 0x2000, 0x5b5: 0x2000, -+ 0x5b6: 0x2000, 0x5b7: 0x2000, 0x5b8: 0x2000, 0x5b9: 0x2000, -+ // Block 0x17, offset 0x5c0 -+ 0x5c9: 0x2000, -+ 0x5d0: 0x200a, 0x5d1: 0x200b, -+ 0x5d2: 0x200a, 0x5d3: 0x200c, 0x5d4: 0x2000, 0x5d5: 0x2000, 0x5d6: 0x2000, 0x5d7: 0x2000, -+ 0x5d8: 0x2000, 0x5d9: 0x2000, -+ 0x5f8: 0x2000, 0x5f9: 0x2000, -+ // Block 0x18, offset 0x600 -+ 0x612: 0x2000, 0x614: 0x2000, -+ 0x627: 0x2000, -+ // Block 0x19, offset 0x640 -+ 0x640: 0x2000, 0x642: 0x2000, 0x643: 0x2000, -+ 0x647: 0x2000, 0x648: 0x2000, 0x64b: 0x2000, -+ 0x64f: 0x2000, 0x651: 0x2000, -+ 0x655: 0x2000, -+ 0x65a: 0x2000, 0x65d: 0x2000, -+ 0x65e: 0x2000, 0x65f: 0x2000, 0x660: 0x2000, 0x663: 0x2000, -+ 0x665: 0x2000, 0x667: 0x2000, 0x668: 0x2000, 0x669: 0x2000, -+ 0x66a: 0x2000, 0x66b: 0x2000, 0x66c: 0x2000, 0x66e: 0x2000, -+ 0x674: 0x2000, 0x675: 0x2000, -+ 0x676: 0x2000, 0x677: 0x2000, -+ 0x67c: 0x2000, 0x67d: 0x2000, -+ // Block 0x1a, offset 0x680 -+ 0x688: 0x2000, -+ 0x68c: 0x2000, -+ 0x692: 0x2000, -+ 0x6a0: 0x2000, 0x6a1: 0x2000, -+ 0x6a4: 0x2000, 0x6a5: 0x2000, 0x6a6: 0x2000, 0x6a7: 0x2000, -+ 0x6aa: 0x2000, 0x6ab: 0x2000, 0x6ae: 0x2000, 0x6af: 0x2000, -+ // Block 0x1b, offset 0x6c0 -+ 0x6c2: 0x2000, 0x6c3: 0x2000, -+ 0x6c6: 0x2000, 0x6c7: 0x2000, -+ 0x6d5: 0x2000, -+ 0x6d9: 0x2000, -+ 0x6e5: 0x2000, -+ 0x6ff: 0x2000, -+ // Block 0x1c, offset 0x700 -+ 0x712: 0x2000, -+ 0x71a: 0x4000, 0x71b: 0x4000, -+ 0x729: 0x4000, -+ 0x72a: 0x4000, -+ // Block 0x1d, offset 0x740 -+ 0x769: 0x4000, -+ 0x76a: 0x4000, 0x76b: 0x4000, 0x76c: 0x4000, -+ 0x770: 0x4000, 0x773: 0x4000, -+ // Block 0x1e, offset 0x780 -+ 0x7a0: 0x2000, 0x7a1: 0x2000, 0x7a2: 0x2000, 0x7a3: 0x2000, -+ 0x7a4: 0x2000, 0x7a5: 0x2000, 0x7a6: 0x2000, 0x7a7: 0x2000, 0x7a8: 0x2000, 0x7a9: 0x2000, -+ 0x7aa: 0x2000, 0x7ab: 0x2000, 0x7ac: 0x2000, 0x7ad: 0x2000, 0x7ae: 0x2000, 0x7af: 0x2000, -+ 0x7b0: 0x2000, 0x7b1: 0x2000, 0x7b2: 0x2000, 0x7b3: 0x2000, 0x7b4: 0x2000, 0x7b5: 0x2000, -+ 0x7b6: 0x2000, 0x7b7: 0x2000, 0x7b8: 0x2000, 0x7b9: 0x2000, 0x7ba: 0x2000, 0x7bb: 0x2000, -+ 0x7bc: 0x2000, 0x7bd: 0x2000, 0x7be: 0x2000, 0x7bf: 0x2000, -+ // Block 0x1f, offset 0x7c0 -+ 0x7c0: 0x2000, 0x7c1: 0x2000, 0x7c2: 0x2000, 0x7c3: 0x2000, 0x7c4: 0x2000, 0x7c5: 0x2000, -+ 0x7c6: 0x2000, 0x7c7: 0x2000, 0x7c8: 0x2000, 0x7c9: 0x2000, 0x7ca: 0x2000, 0x7cb: 0x2000, -+ 0x7cc: 0x2000, 0x7cd: 0x2000, 0x7ce: 0x2000, 0x7cf: 0x2000, 0x7d0: 0x2000, 0x7d1: 0x2000, -+ 0x7d2: 0x2000, 0x7d3: 0x2000, 0x7d4: 0x2000, 0x7d5: 0x2000, 0x7d6: 0x2000, 0x7d7: 0x2000, -+ 0x7d8: 0x2000, 0x7d9: 0x2000, 0x7da: 0x2000, 0x7db: 0x2000, 0x7dc: 0x2000, 0x7dd: 0x2000, -+ 0x7de: 0x2000, 0x7df: 0x2000, 0x7e0: 0x2000, 0x7e1: 0x2000, 0x7e2: 0x2000, 0x7e3: 0x2000, -+ 0x7e4: 0x2000, 0x7e5: 0x2000, 0x7e6: 0x2000, 0x7e7: 0x2000, 0x7e8: 0x2000, 0x7e9: 0x2000, -+ 0x7eb: 0x2000, 0x7ec: 0x2000, 0x7ed: 0x2000, 0x7ee: 0x2000, 0x7ef: 0x2000, -+ 0x7f0: 0x2000, 0x7f1: 0x2000, 0x7f2: 0x2000, 0x7f3: 0x2000, 0x7f4: 0x2000, 0x7f5: 0x2000, -+ 0x7f6: 0x2000, 0x7f7: 0x2000, 0x7f8: 0x2000, 0x7f9: 0x2000, 0x7fa: 0x2000, 0x7fb: 0x2000, -+ 0x7fc: 0x2000, 0x7fd: 0x2000, 0x7fe: 0x2000, 0x7ff: 0x2000, -+ // Block 0x20, offset 0x800 -+ 0x800: 0x2000, 0x801: 0x2000, 0x802: 0x200d, 0x803: 0x2000, 0x804: 0x2000, 0x805: 0x2000, -+ 0x806: 0x2000, 0x807: 0x2000, 0x808: 0x2000, 0x809: 0x2000, 0x80a: 0x2000, 0x80b: 0x2000, -+ 0x80c: 0x2000, 0x80d: 0x2000, 0x80e: 0x2000, 0x80f: 0x2000, 0x810: 0x2000, 0x811: 0x2000, -+ 0x812: 0x2000, 0x813: 0x2000, 0x814: 0x2000, 0x815: 0x2000, 0x816: 0x2000, 0x817: 0x2000, -+ 0x818: 0x2000, 0x819: 0x2000, 0x81a: 0x2000, 0x81b: 0x2000, 0x81c: 0x2000, 0x81d: 0x2000, -+ 0x81e: 0x2000, 0x81f: 0x2000, 0x820: 0x2000, 0x821: 0x2000, 0x822: 0x2000, 0x823: 0x2000, -+ 0x824: 0x2000, 0x825: 0x2000, 0x826: 0x2000, 0x827: 0x2000, 0x828: 0x2000, 0x829: 0x2000, -+ 0x82a: 0x2000, 0x82b: 0x2000, 0x82c: 0x2000, 0x82d: 0x2000, 0x82e: 0x2000, 0x82f: 0x2000, -+ 0x830: 0x2000, 0x831: 0x2000, 0x832: 0x2000, 0x833: 0x2000, 0x834: 0x2000, 0x835: 0x2000, -+ 0x836: 0x2000, 0x837: 0x2000, 0x838: 0x2000, 0x839: 0x2000, 0x83a: 0x2000, 0x83b: 0x2000, -+ 0x83c: 0x2000, 0x83d: 0x2000, 0x83e: 0x2000, 0x83f: 0x2000, -+ // Block 0x21, offset 0x840 -+ 0x840: 0x2000, 0x841: 0x2000, 0x842: 0x2000, 0x843: 0x2000, 0x844: 0x2000, 0x845: 0x2000, -+ 0x846: 0x2000, 0x847: 0x2000, 0x848: 0x2000, 0x849: 0x2000, 0x84a: 0x2000, 0x84b: 0x2000, -+ 0x850: 0x2000, 0x851: 0x2000, -+ 0x852: 0x2000, 0x853: 0x2000, 0x854: 0x2000, 0x855: 0x2000, 0x856: 0x2000, 0x857: 0x2000, -+ 0x858: 0x2000, 0x859: 0x2000, 0x85a: 0x2000, 0x85b: 0x2000, 0x85c: 0x2000, 0x85d: 0x2000, -+ 0x85e: 0x2000, 0x85f: 0x2000, 0x860: 0x2000, 0x861: 0x2000, 0x862: 0x2000, 0x863: 0x2000, -+ 0x864: 0x2000, 0x865: 0x2000, 0x866: 0x2000, 0x867: 0x2000, 0x868: 0x2000, 0x869: 0x2000, -+ 0x86a: 0x2000, 0x86b: 0x2000, 0x86c: 0x2000, 0x86d: 0x2000, 0x86e: 0x2000, 0x86f: 0x2000, -+ 0x870: 0x2000, 0x871: 0x2000, 0x872: 0x2000, 0x873: 0x2000, -+ // Block 0x22, offset 0x880 -+ 0x880: 0x2000, 0x881: 0x2000, 0x882: 0x2000, 0x883: 0x2000, 0x884: 0x2000, 0x885: 0x2000, -+ 0x886: 0x2000, 0x887: 0x2000, 0x888: 0x2000, 0x889: 0x2000, 0x88a: 0x2000, 0x88b: 0x2000, -+ 0x88c: 0x2000, 0x88d: 0x2000, 0x88e: 0x2000, 0x88f: 0x2000, -+ 0x892: 0x2000, 0x893: 0x2000, 0x894: 0x2000, 0x895: 0x2000, -+ 0x8a0: 0x200e, 0x8a1: 0x2000, 0x8a3: 0x2000, -+ 0x8a4: 0x2000, 0x8a5: 0x2000, 0x8a6: 0x2000, 0x8a7: 0x2000, 0x8a8: 0x2000, 0x8a9: 0x2000, -+ 0x8b2: 0x2000, 0x8b3: 0x2000, -+ 0x8b6: 0x2000, 0x8b7: 0x2000, -+ 0x8bc: 0x2000, 0x8bd: 0x2000, -+ // Block 0x23, offset 0x8c0 -+ 0x8c0: 0x2000, 0x8c1: 0x2000, -+ 0x8c6: 0x2000, 0x8c7: 0x2000, 0x8c8: 0x2000, 0x8cb: 0x200f, -+ 0x8ce: 0x2000, 0x8cf: 0x2000, 0x8d0: 0x2000, 0x8d1: 0x2000, -+ 0x8e2: 0x2000, 0x8e3: 0x2000, -+ 0x8e4: 0x2000, 0x8e5: 0x2000, -+ 0x8ef: 0x2000, -+ 0x8fd: 0x4000, 0x8fe: 0x4000, -+ // Block 0x24, offset 0x900 -+ 0x905: 0x2000, -+ 0x906: 0x2000, 0x909: 0x2000, -+ 0x90e: 0x2000, 0x90f: 0x2000, -+ 0x914: 0x4000, 0x915: 0x4000, -+ 0x91c: 0x2000, -+ 0x91e: 0x2000, -+ // Block 0x25, offset 0x940 -+ 0x940: 0x2000, 0x942: 0x2000, -+ 0x948: 0x4000, 0x949: 0x4000, 0x94a: 0x4000, 0x94b: 0x4000, -+ 0x94c: 0x4000, 0x94d: 0x4000, 0x94e: 0x4000, 0x94f: 0x4000, 0x950: 0x4000, 0x951: 0x4000, -+ 0x952: 0x4000, 0x953: 0x4000, -+ 0x960: 0x2000, 0x961: 0x2000, 0x963: 0x2000, -+ 0x964: 0x2000, 0x965: 0x2000, 0x967: 0x2000, 0x968: 0x2000, 0x969: 0x2000, -+ 0x96a: 0x2000, 0x96c: 0x2000, 0x96d: 0x2000, 0x96f: 0x2000, -+ 0x97f: 0x4000, -+ // Block 0x26, offset 0x980 -+ 0x993: 0x4000, -+ 0x99e: 0x2000, 0x99f: 0x2000, 0x9a1: 0x4000, -+ 0x9aa: 0x4000, 0x9ab: 0x4000, -+ 0x9bd: 0x4000, 0x9be: 0x4000, 0x9bf: 0x2000, -+ // Block 0x27, offset 0x9c0 -+ 0x9c4: 0x4000, 0x9c5: 0x4000, -+ 0x9c6: 0x2000, 0x9c7: 0x2000, 0x9c8: 0x2000, 0x9c9: 0x2000, 0x9ca: 0x2000, 0x9cb: 0x2000, -+ 0x9cc: 0x2000, 0x9cd: 0x2000, 0x9ce: 0x4000, 0x9cf: 0x2000, 0x9d0: 0x2000, 0x9d1: 0x2000, -+ 0x9d2: 0x2000, 0x9d3: 0x2000, 0x9d4: 0x4000, 0x9d5: 0x2000, 0x9d6: 0x2000, 0x9d7: 0x2000, -+ 0x9d8: 0x2000, 0x9d9: 0x2000, 0x9da: 0x2000, 0x9db: 0x2000, 0x9dc: 0x2000, 0x9dd: 0x2000, -+ 0x9de: 0x2000, 0x9df: 0x2000, 0x9e0: 0x2000, 0x9e1: 0x2000, 0x9e3: 0x2000, -+ 0x9e8: 0x2000, 0x9e9: 0x2000, -+ 0x9ea: 0x4000, 0x9eb: 0x2000, 0x9ec: 0x2000, 0x9ed: 0x2000, 0x9ee: 0x2000, 0x9ef: 0x2000, -+ 0x9f0: 0x2000, 0x9f1: 0x2000, 0x9f2: 0x4000, 0x9f3: 0x4000, 0x9f4: 0x2000, 0x9f5: 0x4000, -+ 0x9f6: 0x2000, 0x9f7: 0x2000, 0x9f8: 0x2000, 0x9f9: 0x2000, 0x9fa: 0x4000, 0x9fb: 0x2000, -+ 0x9fc: 0x2000, 0x9fd: 0x4000, 0x9fe: 0x2000, 0x9ff: 0x2000, -+ // Block 0x28, offset 0xa00 -+ 0xa05: 0x4000, -+ 0xa0a: 0x4000, 0xa0b: 0x4000, -+ 0xa28: 0x4000, -+ 0xa3d: 0x2000, -+ // Block 0x29, offset 0xa40 -+ 0xa4c: 0x4000, 0xa4e: 0x4000, -+ 0xa53: 0x4000, 0xa54: 0x4000, 0xa55: 0x4000, 0xa57: 0x4000, -+ 0xa76: 0x2000, 0xa77: 0x2000, 0xa78: 0x2000, 0xa79: 0x2000, 0xa7a: 0x2000, 0xa7b: 0x2000, -+ 0xa7c: 0x2000, 0xa7d: 0x2000, 0xa7e: 0x2000, 0xa7f: 0x2000, -+ // Block 0x2a, offset 0xa80 -+ 0xa95: 0x4000, 0xa96: 0x4000, 0xa97: 0x4000, -+ 0xab0: 0x4000, -+ 0xabf: 0x4000, -+ // Block 0x2b, offset 0xac0 -+ 0xae6: 0x6000, 0xae7: 0x6000, 0xae8: 0x6000, 0xae9: 0x6000, -+ 0xaea: 0x6000, 0xaeb: 0x6000, 0xaec: 0x6000, 0xaed: 0x6000, -+ // Block 0x2c, offset 0xb00 -+ 0xb05: 0x6010, -+ 0xb06: 0x6011, -+ // Block 0x2d, offset 0xb40 -+ 0xb5b: 0x4000, 0xb5c: 0x4000, -+ // Block 0x2e, offset 0xb80 -+ 0xb90: 0x4000, -+ 0xb95: 0x4000, 0xb96: 0x2000, 0xb97: 0x2000, -+ 0xb98: 0x2000, 0xb99: 0x2000, -+ // Block 0x2f, offset 0xbc0 -+ 0xbc0: 0x4000, 0xbc1: 0x4000, 0xbc2: 0x4000, 0xbc3: 0x4000, 0xbc4: 0x4000, 0xbc5: 0x4000, -+ 0xbc6: 0x4000, 0xbc7: 0x4000, 0xbc8: 0x4000, 0xbc9: 0x4000, 0xbca: 0x4000, 0xbcb: 0x4000, -+ 0xbcc: 0x4000, 0xbcd: 0x4000, 0xbce: 0x4000, 0xbcf: 0x4000, 0xbd0: 0x4000, 0xbd1: 0x4000, -+ 0xbd2: 0x4000, 0xbd3: 0x4000, 0xbd4: 0x4000, 0xbd5: 0x4000, 0xbd6: 0x4000, 0xbd7: 0x4000, -+ 0xbd8: 0x4000, 0xbd9: 0x4000, 0xbdb: 0x4000, 0xbdc: 0x4000, 0xbdd: 0x4000, -+ 0xbde: 0x4000, 0xbdf: 0x4000, 0xbe0: 0x4000, 0xbe1: 0x4000, 0xbe2: 0x4000, 0xbe3: 0x4000, -+ 0xbe4: 0x4000, 0xbe5: 0x4000, 0xbe6: 0x4000, 0xbe7: 0x4000, 0xbe8: 0x4000, 0xbe9: 0x4000, -+ 0xbea: 0x4000, 0xbeb: 0x4000, 0xbec: 0x4000, 0xbed: 0x4000, 0xbee: 0x4000, 0xbef: 0x4000, -+ 0xbf0: 0x4000, 0xbf1: 0x4000, 0xbf2: 0x4000, 0xbf3: 0x4000, 0xbf4: 0x4000, 0xbf5: 0x4000, -+ 0xbf6: 0x4000, 0xbf7: 0x4000, 0xbf8: 0x4000, 0xbf9: 0x4000, 0xbfa: 0x4000, 0xbfb: 0x4000, -+ 0xbfc: 0x4000, 0xbfd: 0x4000, 0xbfe: 0x4000, 0xbff: 0x4000, -+ // Block 0x30, offset 0xc00 -+ 0xc00: 0x4000, 0xc01: 0x4000, 0xc02: 0x4000, 0xc03: 0x4000, 0xc04: 0x4000, 0xc05: 0x4000, -+ 0xc06: 0x4000, 0xc07: 0x4000, 0xc08: 0x4000, 0xc09: 0x4000, 0xc0a: 0x4000, 0xc0b: 0x4000, -+ 0xc0c: 0x4000, 0xc0d: 0x4000, 0xc0e: 0x4000, 0xc0f: 0x4000, 0xc10: 0x4000, 0xc11: 0x4000, -+ 0xc12: 0x4000, 0xc13: 0x4000, 0xc14: 0x4000, 0xc15: 0x4000, 0xc16: 0x4000, 0xc17: 0x4000, -+ 0xc18: 0x4000, 0xc19: 0x4000, 0xc1a: 0x4000, 0xc1b: 0x4000, 0xc1c: 0x4000, 0xc1d: 0x4000, -+ 0xc1e: 0x4000, 0xc1f: 0x4000, 0xc20: 0x4000, 0xc21: 0x4000, 0xc22: 0x4000, 0xc23: 0x4000, -+ 0xc24: 0x4000, 0xc25: 0x4000, 0xc26: 0x4000, 0xc27: 0x4000, 0xc28: 0x4000, 0xc29: 0x4000, -+ 0xc2a: 0x4000, 0xc2b: 0x4000, 0xc2c: 0x4000, 0xc2d: 0x4000, 0xc2e: 0x4000, 0xc2f: 0x4000, -+ 0xc30: 0x4000, 0xc31: 0x4000, 0xc32: 0x4000, 0xc33: 0x4000, -+ // Block 0x31, offset 0xc40 -+ 0xc40: 0x4000, 0xc41: 0x4000, 0xc42: 0x4000, 0xc43: 0x4000, 0xc44: 0x4000, 0xc45: 0x4000, -+ 0xc46: 0x4000, 0xc47: 0x4000, 0xc48: 0x4000, 0xc49: 0x4000, 0xc4a: 0x4000, 0xc4b: 0x4000, -+ 0xc4c: 0x4000, 0xc4d: 0x4000, 0xc4e: 0x4000, 0xc4f: 0x4000, 0xc50: 0x4000, 0xc51: 0x4000, -+ 0xc52: 0x4000, 0xc53: 0x4000, 0xc54: 0x4000, 0xc55: 0x4000, -+ 0xc70: 0x4000, 0xc71: 0x4000, 0xc72: 0x4000, 0xc73: 0x4000, 0xc74: 0x4000, 0xc75: 0x4000, -+ 0xc76: 0x4000, 0xc77: 0x4000, 0xc78: 0x4000, 0xc79: 0x4000, 0xc7a: 0x4000, 0xc7b: 0x4000, -+ // Block 0x32, offset 0xc80 -+ 0xc80: 0x9012, 0xc81: 0x4013, 0xc82: 0x4014, 0xc83: 0x4000, 0xc84: 0x4000, 0xc85: 0x4000, -+ 0xc86: 0x4000, 0xc87: 0x4000, 0xc88: 0x4000, 0xc89: 0x4000, 0xc8a: 0x4000, 0xc8b: 0x4000, -+ 0xc8c: 0x4015, 0xc8d: 0x4015, 0xc8e: 0x4000, 0xc8f: 0x4000, 0xc90: 0x4000, 0xc91: 0x4000, -+ 0xc92: 0x4000, 0xc93: 0x4000, 0xc94: 0x4000, 0xc95: 0x4000, 0xc96: 0x4000, 0xc97: 0x4000, -+ 0xc98: 0x4000, 0xc99: 0x4000, 0xc9a: 0x4000, 0xc9b: 0x4000, 0xc9c: 0x4000, 0xc9d: 0x4000, -+ 0xc9e: 0x4000, 0xc9f: 0x4000, 0xca0: 0x4000, 0xca1: 0x4000, 0xca2: 0x4000, 0xca3: 0x4000, -+ 0xca4: 0x4000, 0xca5: 0x4000, 0xca6: 0x4000, 0xca7: 0x4000, 0xca8: 0x4000, 0xca9: 0x4000, -+ 0xcaa: 0x4000, 0xcab: 0x4000, 0xcac: 0x4000, 0xcad: 0x4000, 0xcae: 0x4000, 0xcaf: 0x4000, -+ 0xcb0: 0x4000, 0xcb1: 0x4000, 0xcb2: 0x4000, 0xcb3: 0x4000, 0xcb4: 0x4000, 0xcb5: 0x4000, -+ 0xcb6: 0x4000, 0xcb7: 0x4000, 0xcb8: 0x4000, 0xcb9: 0x4000, 0xcba: 0x4000, 0xcbb: 0x4000, -+ 0xcbc: 0x4000, 0xcbd: 0x4000, 0xcbe: 0x4000, -+ // Block 0x33, offset 0xcc0 -+ 0xcc1: 0x4000, 0xcc2: 0x4000, 0xcc3: 0x4000, 0xcc4: 0x4000, 0xcc5: 0x4000, -+ 0xcc6: 0x4000, 0xcc7: 0x4000, 0xcc8: 0x4000, 0xcc9: 0x4000, 0xcca: 0x4000, 0xccb: 0x4000, -+ 0xccc: 0x4000, 0xccd: 0x4000, 0xcce: 0x4000, 0xccf: 0x4000, 0xcd0: 0x4000, 0xcd1: 0x4000, -+ 0xcd2: 0x4000, 0xcd3: 0x4000, 0xcd4: 0x4000, 0xcd5: 0x4000, 0xcd6: 0x4000, 0xcd7: 0x4000, -+ 0xcd8: 0x4000, 0xcd9: 0x4000, 0xcda: 0x4000, 0xcdb: 0x4000, 0xcdc: 0x4000, 0xcdd: 0x4000, -+ 0xcde: 0x4000, 0xcdf: 0x4000, 0xce0: 0x4000, 0xce1: 0x4000, 0xce2: 0x4000, 0xce3: 0x4000, -+ 0xce4: 0x4000, 0xce5: 0x4000, 0xce6: 0x4000, 0xce7: 0x4000, 0xce8: 0x4000, 0xce9: 0x4000, -+ 0xcea: 0x4000, 0xceb: 0x4000, 0xcec: 0x4000, 0xced: 0x4000, 0xcee: 0x4000, 0xcef: 0x4000, -+ 0xcf0: 0x4000, 0xcf1: 0x4000, 0xcf2: 0x4000, 0xcf3: 0x4000, 0xcf4: 0x4000, 0xcf5: 0x4000, -+ 0xcf6: 0x4000, 0xcf7: 0x4000, 0xcf8: 0x4000, 0xcf9: 0x4000, 0xcfa: 0x4000, 0xcfb: 0x4000, -+ 0xcfc: 0x4000, 0xcfd: 0x4000, 0xcfe: 0x4000, 0xcff: 0x4000, -+ // Block 0x34, offset 0xd00 -+ 0xd00: 0x4000, 0xd01: 0x4000, 0xd02: 0x4000, 0xd03: 0x4000, 0xd04: 0x4000, 0xd05: 0x4000, -+ 0xd06: 0x4000, 0xd07: 0x4000, 0xd08: 0x4000, 0xd09: 0x4000, 0xd0a: 0x4000, 0xd0b: 0x4000, -+ 0xd0c: 0x4000, 0xd0d: 0x4000, 0xd0e: 0x4000, 0xd0f: 0x4000, 0xd10: 0x4000, 0xd11: 0x4000, -+ 0xd12: 0x4000, 0xd13: 0x4000, 0xd14: 0x4000, 0xd15: 0x4000, 0xd16: 0x4000, -+ 0xd19: 0x4016, 0xd1a: 0x4017, 0xd1b: 0x4000, 0xd1c: 0x4000, 0xd1d: 0x4000, -+ 0xd1e: 0x4000, 0xd1f: 0x4000, 0xd20: 0x4000, 0xd21: 0x4018, 0xd22: 0x4019, 0xd23: 0x401a, -+ 0xd24: 0x401b, 0xd25: 0x401c, 0xd26: 0x401d, 0xd27: 0x401e, 0xd28: 0x401f, 0xd29: 0x4020, -+ 0xd2a: 0x4021, 0xd2b: 0x4022, 0xd2c: 0x4000, 0xd2d: 0x4010, 0xd2e: 0x4000, 0xd2f: 0x4023, -+ 0xd30: 0x4000, 0xd31: 0x4024, 0xd32: 0x4000, 0xd33: 0x4025, 0xd34: 0x4000, 0xd35: 0x4026, -+ 0xd36: 0x4000, 0xd37: 0x401a, 0xd38: 0x4000, 0xd39: 0x4027, 0xd3a: 0x4000, 0xd3b: 0x4028, -+ 0xd3c: 0x4000, 0xd3d: 0x4020, 0xd3e: 0x4000, 0xd3f: 0x4029, -+ // Block 0x35, offset 0xd40 -+ 0xd40: 0x4000, 0xd41: 0x402a, 0xd42: 0x4000, 0xd43: 0x402b, 0xd44: 0x402c, 0xd45: 0x4000, -+ 0xd46: 0x4017, 0xd47: 0x4000, 0xd48: 0x402d, 0xd49: 0x4000, 0xd4a: 0x402e, 0xd4b: 0x402f, -+ 0xd4c: 0x4030, 0xd4d: 0x4017, 0xd4e: 0x4016, 0xd4f: 0x4017, 0xd50: 0x4000, 0xd51: 0x4000, -+ 0xd52: 0x4031, 0xd53: 0x4000, 0xd54: 0x4000, 0xd55: 0x4031, 0xd56: 0x4000, 0xd57: 0x4000, -+ 0xd58: 0x4032, 0xd59: 0x4000, 0xd5a: 0x4000, 0xd5b: 0x4032, 0xd5c: 0x4000, 0xd5d: 0x4000, -+ 0xd5e: 0x4033, 0xd5f: 0x402e, 0xd60: 0x4034, 0xd61: 0x4035, 0xd62: 0x4034, 0xd63: 0x4036, -+ 0xd64: 0x4037, 0xd65: 0x4024, 0xd66: 0x4035, 0xd67: 0x4025, 0xd68: 0x4038, 0xd69: 0x4038, -+ 0xd6a: 0x4039, 0xd6b: 0x4039, 0xd6c: 0x403a, 0xd6d: 0x403a, 0xd6e: 0x4000, 0xd6f: 0x4035, -+ 0xd70: 0x4000, 0xd71: 0x4000, 0xd72: 0x403b, 0xd73: 0x403c, 0xd74: 0x4000, 0xd75: 0x4000, -+ 0xd76: 0x4000, 0xd77: 0x4000, 0xd78: 0x4000, 0xd79: 0x4000, 0xd7a: 0x4000, 0xd7b: 0x403d, -+ 0xd7c: 0x401c, 0xd7d: 0x4000, 0xd7e: 0x4000, 0xd7f: 0x4000, -+ // Block 0x36, offset 0xd80 -+ 0xd85: 0x4000, -+ 0xd86: 0x4000, 0xd87: 0x4000, 0xd88: 0x4000, 0xd89: 0x4000, 0xd8a: 0x4000, 0xd8b: 0x4000, -+ 0xd8c: 0x4000, 0xd8d: 0x4000, 0xd8e: 0x4000, 0xd8f: 0x4000, 0xd90: 0x4000, 0xd91: 0x4000, -+ 0xd92: 0x4000, 0xd93: 0x4000, 0xd94: 0x4000, 0xd95: 0x4000, 0xd96: 0x4000, 0xd97: 0x4000, -+ 0xd98: 0x4000, 0xd99: 0x4000, 0xd9a: 0x4000, 0xd9b: 0x4000, 0xd9c: 0x4000, 0xd9d: 0x4000, -+ 0xd9e: 0x4000, 0xd9f: 0x4000, 0xda0: 0x4000, 0xda1: 0x4000, 0xda2: 0x4000, 0xda3: 0x4000, -+ 0xda4: 0x4000, 0xda5: 0x4000, 0xda6: 0x4000, 0xda7: 0x4000, 0xda8: 0x4000, 0xda9: 0x4000, -+ 0xdaa: 0x4000, 0xdab: 0x4000, 0xdac: 0x4000, 0xdad: 0x4000, 0xdae: 0x4000, 0xdaf: 0x4000, -+ 0xdb1: 0x403e, 0xdb2: 0x403e, 0xdb3: 0x403e, 0xdb4: 0x403e, 0xdb5: 0x403e, -+ 0xdb6: 0x403e, 0xdb7: 0x403e, 0xdb8: 0x403e, 0xdb9: 0x403e, 0xdba: 0x403e, 0xdbb: 0x403e, -+ 0xdbc: 0x403e, 0xdbd: 0x403e, 0xdbe: 0x403e, 0xdbf: 0x403e, -+ // Block 0x37, offset 0xdc0 -+ 0xdc0: 0x4037, 0xdc1: 0x4037, 0xdc2: 0x4037, 0xdc3: 0x4037, 0xdc4: 0x4037, 0xdc5: 0x4037, -+ 0xdc6: 0x4037, 0xdc7: 0x4037, 0xdc8: 0x4037, 0xdc9: 0x4037, 0xdca: 0x4037, 0xdcb: 0x4037, -+ 0xdcc: 0x4037, 0xdcd: 0x4037, 0xdce: 0x4037, 0xdcf: 0x400e, 0xdd0: 0x403f, 0xdd1: 0x4040, -+ 0xdd2: 0x4041, 0xdd3: 0x4040, 0xdd4: 0x403f, 0xdd5: 0x4042, 0xdd6: 0x4043, 0xdd7: 0x4044, -+ 0xdd8: 0x4040, 0xdd9: 0x4041, 0xdda: 0x4040, 0xddb: 0x4045, 0xddc: 0x4009, 0xddd: 0x4045, -+ 0xdde: 0x4046, 0xddf: 0x4045, 0xde0: 0x4047, 0xde1: 0x400b, 0xde2: 0x400a, 0xde3: 0x400c, -+ 0xde4: 0x4048, 0xde5: 0x4000, 0xde6: 0x4000, 0xde7: 0x4000, 0xde8: 0x4000, 0xde9: 0x4000, -+ 0xdea: 0x4000, 0xdeb: 0x4000, 0xdec: 0x4000, 0xded: 0x4000, 0xdee: 0x4000, 0xdef: 0x4000, -+ 0xdf0: 0x4000, 0xdf1: 0x4000, 0xdf2: 0x4000, 0xdf3: 0x4000, 0xdf4: 0x4000, 0xdf5: 0x4000, -+ 0xdf6: 0x4000, 0xdf7: 0x4000, 0xdf8: 0x4000, 0xdf9: 0x4000, 0xdfa: 0x4000, 0xdfb: 0x4000, -+ 0xdfc: 0x4000, 0xdfd: 0x4000, 0xdfe: 0x4000, 0xdff: 0x4000, -+ // Block 0x38, offset 0xe00 -+ 0xe00: 0x4000, 0xe01: 0x4000, 0xe02: 0x4000, 0xe03: 0x4000, 0xe04: 0x4000, 0xe05: 0x4000, -+ 0xe06: 0x4000, 0xe07: 0x4000, 0xe08: 0x4000, 0xe09: 0x4000, 0xe0a: 0x4000, 0xe0b: 0x4000, -+ 0xe0c: 0x4000, 0xe0d: 0x4000, 0xe0e: 0x4000, 0xe10: 0x4000, 0xe11: 0x4000, -+ 0xe12: 0x4000, 0xe13: 0x4000, 0xe14: 0x4000, 0xe15: 0x4000, 0xe16: 0x4000, 0xe17: 0x4000, -+ 0xe18: 0x4000, 0xe19: 0x4000, 0xe1a: 0x4000, 0xe1b: 0x4000, 0xe1c: 0x4000, 0xe1d: 0x4000, -+ 0xe1e: 0x4000, 0xe1f: 0x4000, 0xe20: 0x4000, 0xe21: 0x4000, 0xe22: 0x4000, 0xe23: 0x4000, -+ 0xe24: 0x4000, 0xe25: 0x4000, 0xe26: 0x4000, 0xe27: 0x4000, 0xe28: 0x4000, 0xe29: 0x4000, -+ 0xe2a: 0x4000, 0xe2b: 0x4000, 0xe2c: 0x4000, 0xe2d: 0x4000, 0xe2e: 0x4000, 0xe2f: 0x4000, -+ 0xe30: 0x4000, 0xe31: 0x4000, 0xe32: 0x4000, 0xe33: 0x4000, 0xe34: 0x4000, 0xe35: 0x4000, -+ 0xe36: 0x4000, 0xe37: 0x4000, 0xe38: 0x4000, 0xe39: 0x4000, 0xe3a: 0x4000, -+ // Block 0x39, offset 0xe40 -+ 0xe40: 0x4000, 0xe41: 0x4000, 0xe42: 0x4000, 0xe43: 0x4000, 0xe44: 0x4000, 0xe45: 0x4000, -+ 0xe46: 0x4000, 0xe47: 0x4000, 0xe48: 0x4000, 0xe49: 0x4000, 0xe4a: 0x4000, 0xe4b: 0x4000, -+ 0xe4c: 0x4000, 0xe4d: 0x4000, 0xe4e: 0x4000, 0xe4f: 0x4000, 0xe50: 0x4000, 0xe51: 0x4000, -+ 0xe52: 0x4000, 0xe53: 0x4000, 0xe54: 0x4000, 0xe55: 0x4000, 0xe56: 0x4000, 0xe57: 0x4000, -+ 0xe58: 0x4000, 0xe59: 0x4000, 0xe5a: 0x4000, 0xe5b: 0x4000, 0xe5c: 0x4000, 0xe5d: 0x4000, -+ 0xe5e: 0x4000, 0xe5f: 0x4000, 0xe60: 0x4000, 0xe61: 0x4000, 0xe62: 0x4000, 0xe63: 0x4000, -+ 0xe70: 0x4000, 0xe71: 0x4000, 0xe72: 0x4000, 0xe73: 0x4000, 0xe74: 0x4000, 0xe75: 0x4000, -+ 0xe76: 0x4000, 0xe77: 0x4000, 0xe78: 0x4000, 0xe79: 0x4000, 0xe7a: 0x4000, 0xe7b: 0x4000, -+ 0xe7c: 0x4000, 0xe7d: 0x4000, 0xe7e: 0x4000, 0xe7f: 0x4000, -+ // Block 0x3a, offset 0xe80 -+ 0xe80: 0x4000, 0xe81: 0x4000, 0xe82: 0x4000, 0xe83: 0x4000, 0xe84: 0x4000, 0xe85: 0x4000, -+ 0xe86: 0x4000, 0xe87: 0x4000, 0xe88: 0x4000, 0xe89: 0x4000, 0xe8a: 0x4000, 0xe8b: 0x4000, -+ 0xe8c: 0x4000, 0xe8d: 0x4000, 0xe8e: 0x4000, 0xe8f: 0x4000, 0xe90: 0x4000, 0xe91: 0x4000, -+ 0xe92: 0x4000, 0xe93: 0x4000, 0xe94: 0x4000, 0xe95: 0x4000, 0xe96: 0x4000, 0xe97: 0x4000, -+ 0xe98: 0x4000, 0xe99: 0x4000, 0xe9a: 0x4000, 0xe9b: 0x4000, 0xe9c: 0x4000, 0xe9d: 0x4000, -+ 0xe9e: 0x4000, 0xea0: 0x4000, 0xea1: 0x4000, 0xea2: 0x4000, 0xea3: 0x4000, -+ 0xea4: 0x4000, 0xea5: 0x4000, 0xea6: 0x4000, 0xea7: 0x4000, 0xea8: 0x4000, 0xea9: 0x4000, -+ 0xeaa: 0x4000, 0xeab: 0x4000, 0xeac: 0x4000, 0xead: 0x4000, 0xeae: 0x4000, 0xeaf: 0x4000, -+ 0xeb0: 0x4000, 0xeb1: 0x4000, 0xeb2: 0x4000, 0xeb3: 0x4000, 0xeb4: 0x4000, 0xeb5: 0x4000, -+ 0xeb6: 0x4000, 0xeb7: 0x4000, 0xeb8: 0x4000, 0xeb9: 0x4000, 0xeba: 0x4000, 0xebb: 0x4000, -+ 0xebc: 0x4000, 0xebd: 0x4000, 0xebe: 0x4000, 0xebf: 0x4000, -+ // Block 0x3b, offset 0xec0 -+ 0xec0: 0x4000, 0xec1: 0x4000, 0xec2: 0x4000, 0xec3: 0x4000, 0xec4: 0x4000, 0xec5: 0x4000, -+ 0xec6: 0x4000, 0xec7: 0x4000, 0xec8: 0x2000, 0xec9: 0x2000, 0xeca: 0x2000, 0xecb: 0x2000, -+ 0xecc: 0x2000, 0xecd: 0x2000, 0xece: 0x2000, 0xecf: 0x2000, 0xed0: 0x4000, 0xed1: 0x4000, -+ 0xed2: 0x4000, 0xed3: 0x4000, 0xed4: 0x4000, 0xed5: 0x4000, 0xed6: 0x4000, 0xed7: 0x4000, -+ 0xed8: 0x4000, 0xed9: 0x4000, 0xeda: 0x4000, 0xedb: 0x4000, 0xedc: 0x4000, 0xedd: 0x4000, -+ 0xede: 0x4000, 0xedf: 0x4000, 0xee0: 0x4000, 0xee1: 0x4000, 0xee2: 0x4000, 0xee3: 0x4000, -+ 0xee4: 0x4000, 0xee5: 0x4000, 0xee6: 0x4000, 0xee7: 0x4000, 0xee8: 0x4000, 0xee9: 0x4000, -+ 0xeea: 0x4000, 0xeeb: 0x4000, 0xeec: 0x4000, 0xeed: 0x4000, 0xeee: 0x4000, 0xeef: 0x4000, -+ 0xef0: 0x4000, 0xef1: 0x4000, 0xef2: 0x4000, 0xef3: 0x4000, 0xef4: 0x4000, 0xef5: 0x4000, -+ 0xef6: 0x4000, 0xef7: 0x4000, 0xef8: 0x4000, 0xef9: 0x4000, 0xefa: 0x4000, 0xefb: 0x4000, -+ 0xefc: 0x4000, 0xefd: 0x4000, 0xefe: 0x4000, 0xeff: 0x4000, -+ // Block 0x3c, offset 0xf00 -+ 0xf00: 0x4000, 0xf01: 0x4000, 0xf02: 0x4000, 0xf03: 0x4000, 0xf04: 0x4000, 0xf05: 0x4000, -+ 0xf06: 0x4000, 0xf07: 0x4000, 0xf08: 0x4000, 0xf09: 0x4000, 0xf0a: 0x4000, 0xf0b: 0x4000, -+ 0xf0c: 0x4000, 0xf0d: 0x4000, 0xf0e: 0x4000, 0xf0f: 0x4000, 0xf10: 0x4000, 0xf11: 0x4000, -+ 0xf12: 0x4000, 0xf13: 0x4000, 0xf14: 0x4000, 0xf15: 0x4000, 0xf16: 0x4000, 0xf17: 0x4000, -+ 0xf18: 0x4000, 0xf19: 0x4000, 0xf1a: 0x4000, 0xf1b: 0x4000, 0xf1c: 0x4000, 0xf1d: 0x4000, -+ 0xf1e: 0x4000, 0xf1f: 0x4000, 0xf20: 0x4000, 0xf21: 0x4000, 0xf22: 0x4000, 0xf23: 0x4000, -+ 0xf24: 0x4000, 0xf25: 0x4000, 0xf26: 0x4000, 0xf27: 0x4000, 0xf28: 0x4000, 0xf29: 0x4000, -+ 0xf2a: 0x4000, 0xf2b: 0x4000, 0xf2c: 0x4000, 0xf2d: 0x4000, 0xf2e: 0x4000, 0xf2f: 0x4000, -+ 0xf30: 0x4000, 0xf31: 0x4000, 0xf32: 0x4000, 0xf33: 0x4000, 0xf34: 0x4000, 0xf35: 0x4000, -+ 0xf36: 0x4000, 0xf37: 0x4000, 0xf38: 0x4000, 0xf39: 0x4000, 0xf3a: 0x4000, 0xf3b: 0x4000, -+ 0xf3c: 0x4000, 0xf3d: 0x4000, 0xf3e: 0x4000, -+ // Block 0x3d, offset 0xf40 -+ 0xf40: 0x4000, 0xf41: 0x4000, 0xf42: 0x4000, 0xf43: 0x4000, 0xf44: 0x4000, 0xf45: 0x4000, -+ 0xf46: 0x4000, 0xf47: 0x4000, 0xf48: 0x4000, 0xf49: 0x4000, 0xf4a: 0x4000, 0xf4b: 0x4000, -+ 0xf4c: 0x4000, 0xf50: 0x4000, 0xf51: 0x4000, -+ 0xf52: 0x4000, 0xf53: 0x4000, 0xf54: 0x4000, 0xf55: 0x4000, 0xf56: 0x4000, 0xf57: 0x4000, -+ 0xf58: 0x4000, 0xf59: 0x4000, 0xf5a: 0x4000, 0xf5b: 0x4000, 0xf5c: 0x4000, 0xf5d: 0x4000, -+ 0xf5e: 0x4000, 0xf5f: 0x4000, 0xf60: 0x4000, 0xf61: 0x4000, 0xf62: 0x4000, 0xf63: 0x4000, -+ 0xf64: 0x4000, 0xf65: 0x4000, 0xf66: 0x4000, 0xf67: 0x4000, 0xf68: 0x4000, 0xf69: 0x4000, -+ 0xf6a: 0x4000, 0xf6b: 0x4000, 0xf6c: 0x4000, 0xf6d: 0x4000, 0xf6e: 0x4000, 0xf6f: 0x4000, -+ 0xf70: 0x4000, 0xf71: 0x4000, 0xf72: 0x4000, 0xf73: 0x4000, 0xf74: 0x4000, 0xf75: 0x4000, -+ 0xf76: 0x4000, 0xf77: 0x4000, 0xf78: 0x4000, 0xf79: 0x4000, 0xf7a: 0x4000, 0xf7b: 0x4000, -+ 0xf7c: 0x4000, 0xf7d: 0x4000, 0xf7e: 0x4000, 0xf7f: 0x4000, -+ // Block 0x3e, offset 0xf80 -+ 0xf80: 0x4000, 0xf81: 0x4000, 0xf82: 0x4000, 0xf83: 0x4000, 0xf84: 0x4000, 0xf85: 0x4000, -+ 0xf86: 0x4000, -+ // Block 0x3f, offset 0xfc0 -+ 0xfe0: 0x4000, 0xfe1: 0x4000, 0xfe2: 0x4000, 0xfe3: 0x4000, -+ 0xfe4: 0x4000, 0xfe5: 0x4000, 0xfe6: 0x4000, 0xfe7: 0x4000, 0xfe8: 0x4000, 0xfe9: 0x4000, -+ 0xfea: 0x4000, 0xfeb: 0x4000, 0xfec: 0x4000, 0xfed: 0x4000, 0xfee: 0x4000, 0xfef: 0x4000, -+ 0xff0: 0x4000, 0xff1: 0x4000, 0xff2: 0x4000, 0xff3: 0x4000, 0xff4: 0x4000, 0xff5: 0x4000, -+ 0xff6: 0x4000, 0xff7: 0x4000, 0xff8: 0x4000, 0xff9: 0x4000, 0xffa: 0x4000, 0xffb: 0x4000, -+ 0xffc: 0x4000, -+ // Block 0x40, offset 0x1000 -+ 0x1000: 0x4000, 0x1001: 0x4000, 0x1002: 0x4000, 0x1003: 0x4000, 0x1004: 0x4000, 0x1005: 0x4000, -+ 0x1006: 0x4000, 0x1007: 0x4000, 0x1008: 0x4000, 0x1009: 0x4000, 0x100a: 0x4000, 0x100b: 0x4000, -+ 0x100c: 0x4000, 0x100d: 0x4000, 0x100e: 0x4000, 0x100f: 0x4000, 0x1010: 0x4000, 0x1011: 0x4000, -+ 0x1012: 0x4000, 0x1013: 0x4000, 0x1014: 0x4000, 0x1015: 0x4000, 0x1016: 0x4000, 0x1017: 0x4000, -+ 0x1018: 0x4000, 0x1019: 0x4000, 0x101a: 0x4000, 0x101b: 0x4000, 0x101c: 0x4000, 0x101d: 0x4000, -+ 0x101e: 0x4000, 0x101f: 0x4000, 0x1020: 0x4000, 0x1021: 0x4000, 0x1022: 0x4000, 0x1023: 0x4000, -+ // Block 0x41, offset 0x1040 -+ 0x1040: 0x2000, 0x1041: 0x2000, 0x1042: 0x2000, 0x1043: 0x2000, 0x1044: 0x2000, 0x1045: 0x2000, -+ 0x1046: 0x2000, 0x1047: 0x2000, 0x1048: 0x2000, 0x1049: 0x2000, 0x104a: 0x2000, 0x104b: 0x2000, -+ 0x104c: 0x2000, 0x104d: 0x2000, 0x104e: 0x2000, 0x104f: 0x2000, 0x1050: 0x4000, 0x1051: 0x4000, -+ 0x1052: 0x4000, 0x1053: 0x4000, 0x1054: 0x4000, 0x1055: 0x4000, 0x1056: 0x4000, 0x1057: 0x4000, -+ 0x1058: 0x4000, 0x1059: 0x4000, -+ 0x1070: 0x4000, 0x1071: 0x4000, 0x1072: 0x4000, 0x1073: 0x4000, 0x1074: 0x4000, 0x1075: 0x4000, -+ 0x1076: 0x4000, 0x1077: 0x4000, 0x1078: 0x4000, 0x1079: 0x4000, 0x107a: 0x4000, 0x107b: 0x4000, -+ 0x107c: 0x4000, 0x107d: 0x4000, 0x107e: 0x4000, 0x107f: 0x4000, -+ // Block 0x42, offset 0x1080 -+ 0x1080: 0x4000, 0x1081: 0x4000, 0x1082: 0x4000, 0x1083: 0x4000, 0x1084: 0x4000, 0x1085: 0x4000, -+ 0x1086: 0x4000, 0x1087: 0x4000, 0x1088: 0x4000, 0x1089: 0x4000, 0x108a: 0x4000, 0x108b: 0x4000, -+ 0x108c: 0x4000, 0x108d: 0x4000, 0x108e: 0x4000, 0x108f: 0x4000, 0x1090: 0x4000, 0x1091: 0x4000, -+ 0x1092: 0x4000, 0x1094: 0x4000, 0x1095: 0x4000, 0x1096: 0x4000, 0x1097: 0x4000, -+ 0x1098: 0x4000, 0x1099: 0x4000, 0x109a: 0x4000, 0x109b: 0x4000, 0x109c: 0x4000, 0x109d: 0x4000, -+ 0x109e: 0x4000, 0x109f: 0x4000, 0x10a0: 0x4000, 0x10a1: 0x4000, 0x10a2: 0x4000, 0x10a3: 0x4000, -+ 0x10a4: 0x4000, 0x10a5: 0x4000, 0x10a6: 0x4000, 0x10a8: 0x4000, 0x10a9: 0x4000, -+ 0x10aa: 0x4000, 0x10ab: 0x4000, -+ // Block 0x43, offset 0x10c0 -+ 0x10c1: 0x9012, 0x10c2: 0x9012, 0x10c3: 0x9012, 0x10c4: 0x9012, 0x10c5: 0x9012, -+ 0x10c6: 0x9012, 0x10c7: 0x9012, 0x10c8: 0x9012, 0x10c9: 0x9012, 0x10ca: 0x9012, 0x10cb: 0x9012, -+ 0x10cc: 0x9012, 0x10cd: 0x9012, 0x10ce: 0x9012, 0x10cf: 0x9012, 0x10d0: 0x9012, 0x10d1: 0x9012, -+ 0x10d2: 0x9012, 0x10d3: 0x9012, 0x10d4: 0x9012, 0x10d5: 0x9012, 0x10d6: 0x9012, 0x10d7: 0x9012, -+ 0x10d8: 0x9012, 0x10d9: 0x9012, 0x10da: 0x9012, 0x10db: 0x9012, 0x10dc: 0x9012, 0x10dd: 0x9012, -+ 0x10de: 0x9012, 0x10df: 0x9012, 0x10e0: 0x9049, 0x10e1: 0x9049, 0x10e2: 0x9049, 0x10e3: 0x9049, -+ 0x10e4: 0x9049, 0x10e5: 0x9049, 0x10e6: 0x9049, 0x10e7: 0x9049, 0x10e8: 0x9049, 0x10e9: 0x9049, -+ 0x10ea: 0x9049, 0x10eb: 0x9049, 0x10ec: 0x9049, 0x10ed: 0x9049, 0x10ee: 0x9049, 0x10ef: 0x9049, -+ 0x10f0: 0x9049, 0x10f1: 0x9049, 0x10f2: 0x9049, 0x10f3: 0x9049, 0x10f4: 0x9049, 0x10f5: 0x9049, -+ 0x10f6: 0x9049, 0x10f7: 0x9049, 0x10f8: 0x9049, 0x10f9: 0x9049, 0x10fa: 0x9049, 0x10fb: 0x9049, -+ 0x10fc: 0x9049, 0x10fd: 0x9049, 0x10fe: 0x9049, 0x10ff: 0x9049, -+ // Block 0x44, offset 0x1100 -+ 0x1100: 0x9049, 0x1101: 0x9049, 0x1102: 0x9049, 0x1103: 0x9049, 0x1104: 0x9049, 0x1105: 0x9049, -+ 0x1106: 0x9049, 0x1107: 0x9049, 0x1108: 0x9049, 0x1109: 0x9049, 0x110a: 0x9049, 0x110b: 0x9049, -+ 0x110c: 0x9049, 0x110d: 0x9049, 0x110e: 0x9049, 0x110f: 0x9049, 0x1110: 0x9049, 0x1111: 0x9049, -+ 0x1112: 0x9049, 0x1113: 0x9049, 0x1114: 0x9049, 0x1115: 0x9049, 0x1116: 0x9049, 0x1117: 0x9049, -+ 0x1118: 0x9049, 0x1119: 0x9049, 0x111a: 0x9049, 0x111b: 0x9049, 0x111c: 0x9049, 0x111d: 0x9049, -+ 0x111e: 0x9049, 0x111f: 0x904a, 0x1120: 0x904b, 0x1121: 0xb04c, 0x1122: 0xb04d, 0x1123: 0xb04d, -+ 0x1124: 0xb04e, 0x1125: 0xb04f, 0x1126: 0xb050, 0x1127: 0xb051, 0x1128: 0xb052, 0x1129: 0xb053, -+ 0x112a: 0xb054, 0x112b: 0xb055, 0x112c: 0xb056, 0x112d: 0xb057, 0x112e: 0xb058, 0x112f: 0xb059, -+ 0x1130: 0xb05a, 0x1131: 0xb05b, 0x1132: 0xb05c, 0x1133: 0xb05d, 0x1134: 0xb05e, 0x1135: 0xb05f, -+ 0x1136: 0xb060, 0x1137: 0xb061, 0x1138: 0xb062, 0x1139: 0xb063, 0x113a: 0xb064, 0x113b: 0xb065, -+ 0x113c: 0xb052, 0x113d: 0xb066, 0x113e: 0xb067, 0x113f: 0xb055, -+ // Block 0x45, offset 0x1140 -+ 0x1140: 0xb068, 0x1141: 0xb069, 0x1142: 0xb06a, 0x1143: 0xb06b, 0x1144: 0xb05a, 0x1145: 0xb056, -+ 0x1146: 0xb06c, 0x1147: 0xb06d, 0x1148: 0xb06b, 0x1149: 0xb06e, 0x114a: 0xb06b, 0x114b: 0xb06f, -+ 0x114c: 0xb06f, 0x114d: 0xb070, 0x114e: 0xb070, 0x114f: 0xb071, 0x1150: 0xb056, 0x1151: 0xb072, -+ 0x1152: 0xb073, 0x1153: 0xb072, 0x1154: 0xb074, 0x1155: 0xb073, 0x1156: 0xb075, 0x1157: 0xb075, -+ 0x1158: 0xb076, 0x1159: 0xb076, 0x115a: 0xb077, 0x115b: 0xb077, 0x115c: 0xb073, 0x115d: 0xb078, -+ 0x115e: 0xb079, 0x115f: 0xb067, 0x1160: 0xb07a, 0x1161: 0xb07b, 0x1162: 0xb07b, 0x1163: 0xb07b, -+ 0x1164: 0xb07b, 0x1165: 0xb07b, 0x1166: 0xb07b, 0x1167: 0xb07b, 0x1168: 0xb07b, 0x1169: 0xb07b, -+ 0x116a: 0xb07b, 0x116b: 0xb07b, 0x116c: 0xb07b, 0x116d: 0xb07b, 0x116e: 0xb07b, 0x116f: 0xb07b, -+ 0x1170: 0xb07c, 0x1171: 0xb07c, 0x1172: 0xb07c, 0x1173: 0xb07c, 0x1174: 0xb07c, 0x1175: 0xb07c, -+ 0x1176: 0xb07c, 0x1177: 0xb07c, 0x1178: 0xb07c, 0x1179: 0xb07c, 0x117a: 0xb07c, 0x117b: 0xb07c, -+ 0x117c: 0xb07c, 0x117d: 0xb07c, 0x117e: 0xb07c, -+ // Block 0x46, offset 0x1180 -+ 0x1182: 0xb07d, 0x1183: 0xb07e, 0x1184: 0xb07f, 0x1185: 0xb080, -+ 0x1186: 0xb07f, 0x1187: 0xb07e, 0x118a: 0xb081, 0x118b: 0xb082, -+ 0x118c: 0xb083, 0x118d: 0xb07f, 0x118e: 0xb080, 0x118f: 0xb07f, -+ 0x1192: 0xb084, 0x1193: 0xb085, 0x1194: 0xb084, 0x1195: 0xb086, 0x1196: 0xb084, 0x1197: 0xb087, -+ 0x119a: 0xb088, 0x119b: 0xb089, 0x119c: 0xb08a, -+ 0x11a0: 0x908b, 0x11a1: 0x908b, 0x11a2: 0x908c, 0x11a3: 0x908d, -+ 0x11a4: 0x908b, 0x11a5: 0x908e, 0x11a6: 0x908f, 0x11a8: 0xb090, 0x11a9: 0xb091, -+ 0x11aa: 0xb092, 0x11ab: 0xb091, 0x11ac: 0xb093, 0x11ad: 0xb094, 0x11ae: 0xb095, -+ 0x11bd: 0x2000, -+ // Block 0x47, offset 0x11c0 -+ 0x11e0: 0x4000, 0x11e1: 0x4000, 0x11e2: 0x4000, 0x11e3: 0x4000, -+ // Block 0x48, offset 0x1200 -+ 0x1200: 0x4000, 0x1201: 0x4000, 0x1202: 0x4000, 0x1203: 0x4000, 0x1204: 0x4000, 0x1205: 0x4000, -+ 0x1206: 0x4000, 0x1207: 0x4000, 0x1208: 0x4000, 0x1209: 0x4000, 0x120a: 0x4000, 0x120b: 0x4000, -+ 0x120c: 0x4000, 0x120d: 0x4000, 0x120e: 0x4000, 0x120f: 0x4000, 0x1210: 0x4000, 0x1211: 0x4000, -+ 0x1212: 0x4000, 0x1213: 0x4000, 0x1214: 0x4000, 0x1215: 0x4000, 0x1216: 0x4000, 0x1217: 0x4000, -+ 0x1218: 0x4000, 0x1219: 0x4000, 0x121a: 0x4000, 0x121b: 0x4000, 0x121c: 0x4000, 0x121d: 0x4000, -+ 0x121e: 0x4000, 0x121f: 0x4000, 0x1220: 0x4000, 0x1221: 0x4000, 0x1222: 0x4000, 0x1223: 0x4000, -+ 0x1224: 0x4000, 0x1225: 0x4000, 0x1226: 0x4000, 0x1227: 0x4000, 0x1228: 0x4000, 0x1229: 0x4000, -+ 0x122a: 0x4000, 0x122b: 0x4000, 0x122c: 0x4000, 0x122d: 0x4000, 0x122e: 0x4000, 0x122f: 0x4000, -+ 0x1230: 0x4000, 0x1231: 0x4000, 0x1232: 0x4000, 0x1233: 0x4000, 0x1234: 0x4000, 0x1235: 0x4000, -+ 0x1236: 0x4000, 0x1237: 0x4000, -+ // Block 0x49, offset 0x1240 -+ 0x1240: 0x4000, 0x1241: 0x4000, 0x1242: 0x4000, 0x1243: 0x4000, 0x1244: 0x4000, 0x1245: 0x4000, -+ 0x1246: 0x4000, 0x1247: 0x4000, 0x1248: 0x4000, 0x1249: 0x4000, 0x124a: 0x4000, 0x124b: 0x4000, -+ 0x124c: 0x4000, 0x124d: 0x4000, 0x124e: 0x4000, 0x124f: 0x4000, 0x1250: 0x4000, 0x1251: 0x4000, -+ 0x1252: 0x4000, 0x1253: 0x4000, 0x1254: 0x4000, 0x1255: 0x4000, 0x1256: 0x4000, 0x1257: 0x4000, -+ 0x1258: 0x4000, 0x1259: 0x4000, 0x125a: 0x4000, 0x125b: 0x4000, 0x125c: 0x4000, 0x125d: 0x4000, -+ 0x125e: 0x4000, 0x125f: 0x4000, 0x1260: 0x4000, 0x1261: 0x4000, 0x1262: 0x4000, 0x1263: 0x4000, -+ 0x1264: 0x4000, 0x1265: 0x4000, 0x1266: 0x4000, 0x1267: 0x4000, 0x1268: 0x4000, 0x1269: 0x4000, -+ 0x126a: 0x4000, 0x126b: 0x4000, 0x126c: 0x4000, 0x126d: 0x4000, 0x126e: 0x4000, 0x126f: 0x4000, -+ 0x1270: 0x4000, 0x1271: 0x4000, 0x1272: 0x4000, -+ // Block 0x4a, offset 0x1280 -+ 0x1280: 0x4000, 0x1281: 0x4000, 0x1282: 0x4000, 0x1283: 0x4000, 0x1284: 0x4000, 0x1285: 0x4000, -+ 0x1286: 0x4000, 0x1287: 0x4000, 0x1288: 0x4000, 0x1289: 0x4000, 0x128a: 0x4000, 0x128b: 0x4000, -+ 0x128c: 0x4000, 0x128d: 0x4000, 0x128e: 0x4000, 0x128f: 0x4000, 0x1290: 0x4000, 0x1291: 0x4000, -+ 0x1292: 0x4000, 0x1293: 0x4000, 0x1294: 0x4000, 0x1295: 0x4000, 0x1296: 0x4000, 0x1297: 0x4000, -+ 0x1298: 0x4000, 0x1299: 0x4000, 0x129a: 0x4000, 0x129b: 0x4000, 0x129c: 0x4000, 0x129d: 0x4000, -+ 0x129e: 0x4000, -+ // Block 0x4b, offset 0x12c0 -+ 0x12d0: 0x4000, 0x12d1: 0x4000, -+ 0x12d2: 0x4000, -+ 0x12e4: 0x4000, 0x12e5: 0x4000, 0x12e6: 0x4000, 0x12e7: 0x4000, -+ 0x12f0: 0x4000, 0x12f1: 0x4000, 0x12f2: 0x4000, 0x12f3: 0x4000, 0x12f4: 0x4000, 0x12f5: 0x4000, -+ 0x12f6: 0x4000, 0x12f7: 0x4000, 0x12f8: 0x4000, 0x12f9: 0x4000, 0x12fa: 0x4000, 0x12fb: 0x4000, -+ 0x12fc: 0x4000, 0x12fd: 0x4000, 0x12fe: 0x4000, 0x12ff: 0x4000, -+ // Block 0x4c, offset 0x1300 -+ 0x1300: 0x4000, 0x1301: 0x4000, 0x1302: 0x4000, 0x1303: 0x4000, 0x1304: 0x4000, 0x1305: 0x4000, -+ 0x1306: 0x4000, 0x1307: 0x4000, 0x1308: 0x4000, 0x1309: 0x4000, 0x130a: 0x4000, 0x130b: 0x4000, -+ 0x130c: 0x4000, 0x130d: 0x4000, 0x130e: 0x4000, 0x130f: 0x4000, 0x1310: 0x4000, 0x1311: 0x4000, -+ 0x1312: 0x4000, 0x1313: 0x4000, 0x1314: 0x4000, 0x1315: 0x4000, 0x1316: 0x4000, 0x1317: 0x4000, -+ 0x1318: 0x4000, 0x1319: 0x4000, 0x131a: 0x4000, 0x131b: 0x4000, 0x131c: 0x4000, 0x131d: 0x4000, -+ 0x131e: 0x4000, 0x131f: 0x4000, 0x1320: 0x4000, 0x1321: 0x4000, 0x1322: 0x4000, 0x1323: 0x4000, -+ 0x1324: 0x4000, 0x1325: 0x4000, 0x1326: 0x4000, 0x1327: 0x4000, 0x1328: 0x4000, 0x1329: 0x4000, -+ 0x132a: 0x4000, 0x132b: 0x4000, 0x132c: 0x4000, 0x132d: 0x4000, 0x132e: 0x4000, 0x132f: 0x4000, -+ 0x1330: 0x4000, 0x1331: 0x4000, 0x1332: 0x4000, 0x1333: 0x4000, 0x1334: 0x4000, 0x1335: 0x4000, -+ 0x1336: 0x4000, 0x1337: 0x4000, 0x1338: 0x4000, 0x1339: 0x4000, 0x133a: 0x4000, 0x133b: 0x4000, -+ // Block 0x4d, offset 0x1340 -+ 0x1344: 0x4000, -+ // Block 0x4e, offset 0x1380 -+ 0x138f: 0x4000, -+ // Block 0x4f, offset 0x13c0 -+ 0x13c0: 0x2000, 0x13c1: 0x2000, 0x13c2: 0x2000, 0x13c3: 0x2000, 0x13c4: 0x2000, 0x13c5: 0x2000, -+ 0x13c6: 0x2000, 0x13c7: 0x2000, 0x13c8: 0x2000, 0x13c9: 0x2000, 0x13ca: 0x2000, -+ 0x13d0: 0x2000, 0x13d1: 0x2000, -+ 0x13d2: 0x2000, 0x13d3: 0x2000, 0x13d4: 0x2000, 0x13d5: 0x2000, 0x13d6: 0x2000, 0x13d7: 0x2000, -+ 0x13d8: 0x2000, 0x13d9: 0x2000, 0x13da: 0x2000, 0x13db: 0x2000, 0x13dc: 0x2000, 0x13dd: 0x2000, -+ 0x13de: 0x2000, 0x13df: 0x2000, 0x13e0: 0x2000, 0x13e1: 0x2000, 0x13e2: 0x2000, 0x13e3: 0x2000, -+ 0x13e4: 0x2000, 0x13e5: 0x2000, 0x13e6: 0x2000, 0x13e7: 0x2000, 0x13e8: 0x2000, 0x13e9: 0x2000, -+ 0x13ea: 0x2000, 0x13eb: 0x2000, 0x13ec: 0x2000, 0x13ed: 0x2000, -+ 0x13f0: 0x2000, 0x13f1: 0x2000, 0x13f2: 0x2000, 0x13f3: 0x2000, 0x13f4: 0x2000, 0x13f5: 0x2000, -+ 0x13f6: 0x2000, 0x13f7: 0x2000, 0x13f8: 0x2000, 0x13f9: 0x2000, 0x13fa: 0x2000, 0x13fb: 0x2000, -+ 0x13fc: 0x2000, 0x13fd: 0x2000, 0x13fe: 0x2000, 0x13ff: 0x2000, -+ // Block 0x50, offset 0x1400 -+ 0x1400: 0x2000, 0x1401: 0x2000, 0x1402: 0x2000, 0x1403: 0x2000, 0x1404: 0x2000, 0x1405: 0x2000, -+ 0x1406: 0x2000, 0x1407: 0x2000, 0x1408: 0x2000, 0x1409: 0x2000, 0x140a: 0x2000, 0x140b: 0x2000, -+ 0x140c: 0x2000, 0x140d: 0x2000, 0x140e: 0x2000, 0x140f: 0x2000, 0x1410: 0x2000, 0x1411: 0x2000, -+ 0x1412: 0x2000, 0x1413: 0x2000, 0x1414: 0x2000, 0x1415: 0x2000, 0x1416: 0x2000, 0x1417: 0x2000, -+ 0x1418: 0x2000, 0x1419: 0x2000, 0x141a: 0x2000, 0x141b: 0x2000, 0x141c: 0x2000, 0x141d: 0x2000, -+ 0x141e: 0x2000, 0x141f: 0x2000, 0x1420: 0x2000, 0x1421: 0x2000, 0x1422: 0x2000, 0x1423: 0x2000, -+ 0x1424: 0x2000, 0x1425: 0x2000, 0x1426: 0x2000, 0x1427: 0x2000, 0x1428: 0x2000, 0x1429: 0x2000, -+ 0x1430: 0x2000, 0x1431: 0x2000, 0x1432: 0x2000, 0x1433: 0x2000, 0x1434: 0x2000, 0x1435: 0x2000, -+ 0x1436: 0x2000, 0x1437: 0x2000, 0x1438: 0x2000, 0x1439: 0x2000, 0x143a: 0x2000, 0x143b: 0x2000, -+ 0x143c: 0x2000, 0x143d: 0x2000, 0x143e: 0x2000, 0x143f: 0x2000, -+ // Block 0x51, offset 0x1440 -+ 0x1440: 0x2000, 0x1441: 0x2000, 0x1442: 0x2000, 0x1443: 0x2000, 0x1444: 0x2000, 0x1445: 0x2000, -+ 0x1446: 0x2000, 0x1447: 0x2000, 0x1448: 0x2000, 0x1449: 0x2000, 0x144a: 0x2000, 0x144b: 0x2000, -+ 0x144c: 0x2000, 0x144d: 0x2000, 0x144e: 0x4000, 0x144f: 0x2000, 0x1450: 0x2000, 0x1451: 0x4000, -+ 0x1452: 0x4000, 0x1453: 0x4000, 0x1454: 0x4000, 0x1455: 0x4000, 0x1456: 0x4000, 0x1457: 0x4000, -+ 0x1458: 0x4000, 0x1459: 0x4000, 0x145a: 0x4000, 0x145b: 0x2000, 0x145c: 0x2000, 0x145d: 0x2000, -+ 0x145e: 0x2000, 0x145f: 0x2000, 0x1460: 0x2000, 0x1461: 0x2000, 0x1462: 0x2000, 0x1463: 0x2000, -+ 0x1464: 0x2000, 0x1465: 0x2000, 0x1466: 0x2000, 0x1467: 0x2000, 0x1468: 0x2000, 0x1469: 0x2000, -+ 0x146a: 0x2000, 0x146b: 0x2000, 0x146c: 0x2000, -+ // Block 0x52, offset 0x1480 -+ 0x1480: 0x4000, 0x1481: 0x4000, 0x1482: 0x4000, -+ 0x1490: 0x4000, 0x1491: 0x4000, -+ 0x1492: 0x4000, 0x1493: 0x4000, 0x1494: 0x4000, 0x1495: 0x4000, 0x1496: 0x4000, 0x1497: 0x4000, -+ 0x1498: 0x4000, 0x1499: 0x4000, 0x149a: 0x4000, 0x149b: 0x4000, 0x149c: 0x4000, 0x149d: 0x4000, -+ 0x149e: 0x4000, 0x149f: 0x4000, 0x14a0: 0x4000, 0x14a1: 0x4000, 0x14a2: 0x4000, 0x14a3: 0x4000, -+ 0x14a4: 0x4000, 0x14a5: 0x4000, 0x14a6: 0x4000, 0x14a7: 0x4000, 0x14a8: 0x4000, 0x14a9: 0x4000, -+ 0x14aa: 0x4000, 0x14ab: 0x4000, 0x14ac: 0x4000, 0x14ad: 0x4000, 0x14ae: 0x4000, 0x14af: 0x4000, -+ 0x14b0: 0x4000, 0x14b1: 0x4000, 0x14b2: 0x4000, 0x14b3: 0x4000, 0x14b4: 0x4000, 0x14b5: 0x4000, -+ 0x14b6: 0x4000, 0x14b7: 0x4000, 0x14b8: 0x4000, 0x14b9: 0x4000, 0x14ba: 0x4000, 0x14bb: 0x4000, -+ // Block 0x53, offset 0x14c0 -+ 0x14c0: 0x4000, 0x14c1: 0x4000, 0x14c2: 0x4000, 0x14c3: 0x4000, 0x14c4: 0x4000, 0x14c5: 0x4000, -+ 0x14c6: 0x4000, 0x14c7: 0x4000, 0x14c8: 0x4000, -+ 0x14d0: 0x4000, 0x14d1: 0x4000, -+ 0x14e0: 0x4000, 0x14e1: 0x4000, 0x14e2: 0x4000, 0x14e3: 0x4000, -+ 0x14e4: 0x4000, 0x14e5: 0x4000, -+ // Block 0x54, offset 0x1500 -+ 0x1500: 0x4000, 0x1501: 0x4000, 0x1502: 0x4000, 0x1503: 0x4000, 0x1504: 0x4000, 0x1505: 0x4000, -+ 0x1506: 0x4000, 0x1507: 0x4000, 0x1508: 0x4000, 0x1509: 0x4000, 0x150a: 0x4000, 0x150b: 0x4000, -+ 0x150c: 0x4000, 0x150d: 0x4000, 0x150e: 0x4000, 0x150f: 0x4000, 0x1510: 0x4000, 0x1511: 0x4000, -+ 0x1512: 0x4000, 0x1513: 0x4000, 0x1514: 0x4000, 0x1515: 0x4000, 0x1516: 0x4000, 0x1517: 0x4000, -+ 0x1518: 0x4000, 0x1519: 0x4000, 0x151a: 0x4000, 0x151b: 0x4000, 0x151c: 0x4000, 0x151d: 0x4000, -+ 0x151e: 0x4000, 0x151f: 0x4000, 0x1520: 0x4000, -+ 0x152d: 0x4000, 0x152e: 0x4000, 0x152f: 0x4000, -+ 0x1530: 0x4000, 0x1531: 0x4000, 0x1532: 0x4000, 0x1533: 0x4000, 0x1534: 0x4000, 0x1535: 0x4000, -+ 0x1537: 0x4000, 0x1538: 0x4000, 0x1539: 0x4000, 0x153a: 0x4000, 0x153b: 0x4000, -+ 0x153c: 0x4000, 0x153d: 0x4000, 0x153e: 0x4000, 0x153f: 0x4000, -+ // Block 0x55, offset 0x1540 -+ 0x1540: 0x4000, 0x1541: 0x4000, 0x1542: 0x4000, 0x1543: 0x4000, 0x1544: 0x4000, 0x1545: 0x4000, -+ 0x1546: 0x4000, 0x1547: 0x4000, 0x1548: 0x4000, 0x1549: 0x4000, 0x154a: 0x4000, 0x154b: 0x4000, -+ 0x154c: 0x4000, 0x154d: 0x4000, 0x154e: 0x4000, 0x154f: 0x4000, 0x1550: 0x4000, 0x1551: 0x4000, -+ 0x1552: 0x4000, 0x1553: 0x4000, 0x1554: 0x4000, 0x1555: 0x4000, 0x1556: 0x4000, 0x1557: 0x4000, -+ 0x1558: 0x4000, 0x1559: 0x4000, 0x155a: 0x4000, 0x155b: 0x4000, 0x155c: 0x4000, 0x155d: 0x4000, -+ 0x155e: 0x4000, 0x155f: 0x4000, 0x1560: 0x4000, 0x1561: 0x4000, 0x1562: 0x4000, 0x1563: 0x4000, -+ 0x1564: 0x4000, 0x1565: 0x4000, 0x1566: 0x4000, 0x1567: 0x4000, 0x1568: 0x4000, 0x1569: 0x4000, -+ 0x156a: 0x4000, 0x156b: 0x4000, 0x156c: 0x4000, 0x156d: 0x4000, 0x156e: 0x4000, 0x156f: 0x4000, -+ 0x1570: 0x4000, 0x1571: 0x4000, 0x1572: 0x4000, 0x1573: 0x4000, 0x1574: 0x4000, 0x1575: 0x4000, -+ 0x1576: 0x4000, 0x1577: 0x4000, 0x1578: 0x4000, 0x1579: 0x4000, 0x157a: 0x4000, 0x157b: 0x4000, -+ 0x157c: 0x4000, 0x157e: 0x4000, 0x157f: 0x4000, -+ // Block 0x56, offset 0x1580 -+ 0x1580: 0x4000, 0x1581: 0x4000, 0x1582: 0x4000, 0x1583: 0x4000, 0x1584: 0x4000, 0x1585: 0x4000, -+ 0x1586: 0x4000, 0x1587: 0x4000, 0x1588: 0x4000, 0x1589: 0x4000, 0x158a: 0x4000, 0x158b: 0x4000, -+ 0x158c: 0x4000, 0x158d: 0x4000, 0x158e: 0x4000, 0x158f: 0x4000, 0x1590: 0x4000, 0x1591: 0x4000, -+ 0x1592: 0x4000, 0x1593: 0x4000, -+ 0x15a0: 0x4000, 0x15a1: 0x4000, 0x15a2: 0x4000, 0x15a3: 0x4000, -+ 0x15a4: 0x4000, 0x15a5: 0x4000, 0x15a6: 0x4000, 0x15a7: 0x4000, 0x15a8: 0x4000, 0x15a9: 0x4000, -+ 0x15aa: 0x4000, 0x15ab: 0x4000, 0x15ac: 0x4000, 0x15ad: 0x4000, 0x15ae: 0x4000, 0x15af: 0x4000, -+ 0x15b0: 0x4000, 0x15b1: 0x4000, 0x15b2: 0x4000, 0x15b3: 0x4000, 0x15b4: 0x4000, 0x15b5: 0x4000, -+ 0x15b6: 0x4000, 0x15b7: 0x4000, 0x15b8: 0x4000, 0x15b9: 0x4000, 0x15ba: 0x4000, 0x15bb: 0x4000, -+ 0x15bc: 0x4000, 0x15bd: 0x4000, 0x15be: 0x4000, 0x15bf: 0x4000, -+ // Block 0x57, offset 0x15c0 -+ 0x15c0: 0x4000, 0x15c1: 0x4000, 0x15c2: 0x4000, 0x15c3: 0x4000, 0x15c4: 0x4000, 0x15c5: 0x4000, -+ 0x15c6: 0x4000, 0x15c7: 0x4000, 0x15c8: 0x4000, 0x15c9: 0x4000, 0x15ca: 0x4000, -+ 0x15cf: 0x4000, 0x15d0: 0x4000, 0x15d1: 0x4000, -+ 0x15d2: 0x4000, 0x15d3: 0x4000, -+ 0x15e0: 0x4000, 0x15e1: 0x4000, 0x15e2: 0x4000, 0x15e3: 0x4000, -+ 0x15e4: 0x4000, 0x15e5: 0x4000, 0x15e6: 0x4000, 0x15e7: 0x4000, 0x15e8: 0x4000, 0x15e9: 0x4000, -+ 0x15ea: 0x4000, 0x15eb: 0x4000, 0x15ec: 0x4000, 0x15ed: 0x4000, 0x15ee: 0x4000, 0x15ef: 0x4000, -+ 0x15f0: 0x4000, 0x15f4: 0x4000, -+ 0x15f8: 0x4000, 0x15f9: 0x4000, 0x15fa: 0x4000, 0x15fb: 0x4000, -+ 0x15fc: 0x4000, 0x15fd: 0x4000, 0x15fe: 0x4000, 0x15ff: 0x4000, -+ // Block 0x58, offset 0x1600 -+ 0x1600: 0x4000, 0x1602: 0x4000, 0x1603: 0x4000, 0x1604: 0x4000, 0x1605: 0x4000, -+ 0x1606: 0x4000, 0x1607: 0x4000, 0x1608: 0x4000, 0x1609: 0x4000, 0x160a: 0x4000, 0x160b: 0x4000, -+ 0x160c: 0x4000, 0x160d: 0x4000, 0x160e: 0x4000, 0x160f: 0x4000, 0x1610: 0x4000, 0x1611: 0x4000, -+ 0x1612: 0x4000, 0x1613: 0x4000, 0x1614: 0x4000, 0x1615: 0x4000, 0x1616: 0x4000, 0x1617: 0x4000, -+ 0x1618: 0x4000, 0x1619: 0x4000, 0x161a: 0x4000, 0x161b: 0x4000, 0x161c: 0x4000, 0x161d: 0x4000, -+ 0x161e: 0x4000, 0x161f: 0x4000, 0x1620: 0x4000, 0x1621: 0x4000, 0x1622: 0x4000, 0x1623: 0x4000, -+ 0x1624: 0x4000, 0x1625: 0x4000, 0x1626: 0x4000, 0x1627: 0x4000, 0x1628: 0x4000, 0x1629: 0x4000, -+ 0x162a: 0x4000, 0x162b: 0x4000, 0x162c: 0x4000, 0x162d: 0x4000, 0x162e: 0x4000, 0x162f: 0x4000, -+ 0x1630: 0x4000, 0x1631: 0x4000, 0x1632: 0x4000, 0x1633: 0x4000, 0x1634: 0x4000, 0x1635: 0x4000, -+ 0x1636: 0x4000, 0x1637: 0x4000, 0x1638: 0x4000, 0x1639: 0x4000, 0x163a: 0x4000, 0x163b: 0x4000, -+ 0x163c: 0x4000, 0x163d: 0x4000, 0x163e: 0x4000, 0x163f: 0x4000, -+ // Block 0x59, offset 0x1640 -+ 0x1640: 0x4000, 0x1641: 0x4000, 0x1642: 0x4000, 0x1643: 0x4000, 0x1644: 0x4000, 0x1645: 0x4000, -+ 0x1646: 0x4000, 0x1647: 0x4000, 0x1648: 0x4000, 0x1649: 0x4000, 0x164a: 0x4000, 0x164b: 0x4000, -+ 0x164c: 0x4000, 0x164d: 0x4000, 0x164e: 0x4000, 0x164f: 0x4000, 0x1650: 0x4000, 0x1651: 0x4000, -+ 0x1652: 0x4000, 0x1653: 0x4000, 0x1654: 0x4000, 0x1655: 0x4000, 0x1656: 0x4000, 0x1657: 0x4000, -+ 0x1658: 0x4000, 0x1659: 0x4000, 0x165a: 0x4000, 0x165b: 0x4000, 0x165c: 0x4000, 0x165d: 0x4000, -+ 0x165e: 0x4000, 0x165f: 0x4000, 0x1660: 0x4000, 0x1661: 0x4000, 0x1662: 0x4000, 0x1663: 0x4000, -+ 0x1664: 0x4000, 0x1665: 0x4000, 0x1666: 0x4000, 0x1667: 0x4000, 0x1668: 0x4000, 0x1669: 0x4000, -+ 0x166a: 0x4000, 0x166b: 0x4000, 0x166c: 0x4000, 0x166d: 0x4000, 0x166e: 0x4000, 0x166f: 0x4000, -+ 0x1670: 0x4000, 0x1671: 0x4000, 0x1672: 0x4000, 0x1673: 0x4000, 0x1674: 0x4000, 0x1675: 0x4000, -+ 0x1676: 0x4000, 0x1677: 0x4000, 0x1678: 0x4000, 0x1679: 0x4000, 0x167a: 0x4000, 0x167b: 0x4000, -+ 0x167c: 0x4000, 0x167f: 0x4000, -+ // Block 0x5a, offset 0x1680 -+ 0x1680: 0x4000, 0x1681: 0x4000, 0x1682: 0x4000, 0x1683: 0x4000, 0x1684: 0x4000, 0x1685: 0x4000, -+ 0x1686: 0x4000, 0x1687: 0x4000, 0x1688: 0x4000, 0x1689: 0x4000, 0x168a: 0x4000, 0x168b: 0x4000, -+ 0x168c: 0x4000, 0x168d: 0x4000, 0x168e: 0x4000, 0x168f: 0x4000, 0x1690: 0x4000, 0x1691: 0x4000, -+ 0x1692: 0x4000, 0x1693: 0x4000, 0x1694: 0x4000, 0x1695: 0x4000, 0x1696: 0x4000, 0x1697: 0x4000, -+ 0x1698: 0x4000, 0x1699: 0x4000, 0x169a: 0x4000, 0x169b: 0x4000, 0x169c: 0x4000, 0x169d: 0x4000, -+ 0x169e: 0x4000, 0x169f: 0x4000, 0x16a0: 0x4000, 0x16a1: 0x4000, 0x16a2: 0x4000, 0x16a3: 0x4000, -+ 0x16a4: 0x4000, 0x16a5: 0x4000, 0x16a6: 0x4000, 0x16a7: 0x4000, 0x16a8: 0x4000, 0x16a9: 0x4000, -+ 0x16aa: 0x4000, 0x16ab: 0x4000, 0x16ac: 0x4000, 0x16ad: 0x4000, 0x16ae: 0x4000, 0x16af: 0x4000, -+ 0x16b0: 0x4000, 0x16b1: 0x4000, 0x16b2: 0x4000, 0x16b3: 0x4000, 0x16b4: 0x4000, 0x16b5: 0x4000, -+ 0x16b6: 0x4000, 0x16b7: 0x4000, 0x16b8: 0x4000, 0x16b9: 0x4000, 0x16ba: 0x4000, 0x16bb: 0x4000, -+ 0x16bc: 0x4000, 0x16bd: 0x4000, -+ // Block 0x5b, offset 0x16c0 -+ 0x16cb: 0x4000, -+ 0x16cc: 0x4000, 0x16cd: 0x4000, 0x16ce: 0x4000, 0x16d0: 0x4000, 0x16d1: 0x4000, -+ 0x16d2: 0x4000, 0x16d3: 0x4000, 0x16d4: 0x4000, 0x16d5: 0x4000, 0x16d6: 0x4000, 0x16d7: 0x4000, -+ 0x16d8: 0x4000, 0x16d9: 0x4000, 0x16da: 0x4000, 0x16db: 0x4000, 0x16dc: 0x4000, 0x16dd: 0x4000, -+ 0x16de: 0x4000, 0x16df: 0x4000, 0x16e0: 0x4000, 0x16e1: 0x4000, 0x16e2: 0x4000, 0x16e3: 0x4000, -+ 0x16e4: 0x4000, 0x16e5: 0x4000, 0x16e6: 0x4000, 0x16e7: 0x4000, -+ 0x16fa: 0x4000, -+ // Block 0x5c, offset 0x1700 -+ 0x1715: 0x4000, 0x1716: 0x4000, -+ 0x1724: 0x4000, -+ // Block 0x5d, offset 0x1740 -+ 0x177b: 0x4000, -+ 0x177c: 0x4000, 0x177d: 0x4000, 0x177e: 0x4000, 0x177f: 0x4000, -+ // Block 0x5e, offset 0x1780 -+ 0x1780: 0x4000, 0x1781: 0x4000, 0x1782: 0x4000, 0x1783: 0x4000, 0x1784: 0x4000, 0x1785: 0x4000, -+ 0x1786: 0x4000, 0x1787: 0x4000, 0x1788: 0x4000, 0x1789: 0x4000, 0x178a: 0x4000, 0x178b: 0x4000, -+ 0x178c: 0x4000, 0x178d: 0x4000, 0x178e: 0x4000, 0x178f: 0x4000, -+ // Block 0x5f, offset 0x17c0 -+ 0x17c0: 0x4000, 0x17c1: 0x4000, 0x17c2: 0x4000, 0x17c3: 0x4000, 0x17c4: 0x4000, 0x17c5: 0x4000, -+ 0x17cc: 0x4000, 0x17d0: 0x4000, 0x17d1: 0x4000, -+ 0x17d2: 0x4000, 0x17d5: 0x4000, -+ 0x17eb: 0x4000, 0x17ec: 0x4000, -+ 0x17f4: 0x4000, 0x17f5: 0x4000, -+ 0x17f6: 0x4000, 0x17f7: 0x4000, 0x17f8: 0x4000, 0x17f9: 0x4000, 0x17fa: 0x4000, -+ // Block 0x60, offset 0x1800 -+ 0x1820: 0x4000, 0x1821: 0x4000, 0x1822: 0x4000, 0x1823: 0x4000, -+ 0x1824: 0x4000, 0x1825: 0x4000, 0x1826: 0x4000, 0x1827: 0x4000, 0x1828: 0x4000, 0x1829: 0x4000, -+ 0x182a: 0x4000, 0x182b: 0x4000, -+ // Block 0x61, offset 0x1840 -+ 0x184d: 0x4000, 0x184e: 0x4000, 0x184f: 0x4000, 0x1850: 0x4000, 0x1851: 0x4000, -+ 0x1852: 0x4000, 0x1853: 0x4000, 0x1854: 0x4000, 0x1855: 0x4000, 0x1856: 0x4000, 0x1857: 0x4000, -+ 0x1858: 0x4000, 0x1859: 0x4000, 0x185a: 0x4000, 0x185b: 0x4000, 0x185c: 0x4000, 0x185d: 0x4000, -+ 0x185e: 0x4000, 0x185f: 0x4000, 0x1860: 0x4000, 0x1861: 0x4000, 0x1862: 0x4000, 0x1863: 0x4000, -+ 0x1864: 0x4000, 0x1865: 0x4000, 0x1866: 0x4000, 0x1867: 0x4000, 0x1868: 0x4000, 0x1869: 0x4000, -+ 0x186a: 0x4000, 0x186b: 0x4000, 0x186c: 0x4000, 0x186d: 0x4000, 0x186e: 0x4000, 0x186f: 0x4000, -+ 0x1870: 0x4000, 0x1871: 0x4000, 0x1872: 0x4000, 0x1873: 0x4000, 0x1874: 0x4000, 0x1875: 0x4000, -+ 0x1876: 0x4000, 0x1877: 0x4000, 0x1878: 0x4000, 0x1879: 0x4000, 0x187a: 0x4000, 0x187b: 0x4000, -+ 0x187c: 0x4000, 0x187d: 0x4000, 0x187e: 0x4000, 0x187f: 0x4000, -+ // Block 0x62, offset 0x1880 -+ 0x1880: 0x4000, 0x1881: 0x4000, 0x1882: 0x4000, 0x1883: 0x4000, 0x1884: 0x4000, 0x1885: 0x4000, -+ 0x1886: 0x4000, 0x1887: 0x4000, 0x1888: 0x4000, 0x1889: 0x4000, 0x188a: 0x4000, 0x188b: 0x4000, -+ 0x188c: 0x4000, 0x188d: 0x4000, 0x188e: 0x4000, 0x188f: 0x4000, 0x1890: 0x4000, 0x1891: 0x4000, -+ 0x1892: 0x4000, 0x1893: 0x4000, 0x1894: 0x4000, 0x1895: 0x4000, 0x1896: 0x4000, 0x1897: 0x4000, -+ 0x1898: 0x4000, 0x1899: 0x4000, 0x189a: 0x4000, 0x189b: 0x4000, 0x189c: 0x4000, 0x189d: 0x4000, -+ 0x189e: 0x4000, 0x189f: 0x4000, 0x18a0: 0x4000, 0x18a1: 0x4000, 0x18a2: 0x4000, 0x18a3: 0x4000, -+ 0x18a4: 0x4000, 0x18a5: 0x4000, 0x18a6: 0x4000, 0x18a7: 0x4000, 0x18a8: 0x4000, 0x18a9: 0x4000, -+ 0x18aa: 0x4000, 0x18ab: 0x4000, 0x18ac: 0x4000, 0x18ad: 0x4000, 0x18ae: 0x4000, 0x18af: 0x4000, -+ 0x18b0: 0x4000, 0x18b1: 0x4000, 0x18b3: 0x4000, 0x18b4: 0x4000, 0x18b5: 0x4000, -+ 0x18b6: 0x4000, 0x18ba: 0x4000, 0x18bb: 0x4000, -+ 0x18bc: 0x4000, 0x18bd: 0x4000, 0x18be: 0x4000, 0x18bf: 0x4000, -+ // Block 0x63, offset 0x18c0 -+ 0x18c0: 0x4000, 0x18c1: 0x4000, 0x18c2: 0x4000, 0x18c3: 0x4000, 0x18c4: 0x4000, 0x18c5: 0x4000, -+ 0x18c6: 0x4000, 0x18c7: 0x4000, 0x18c8: 0x4000, 0x18c9: 0x4000, 0x18ca: 0x4000, 0x18cb: 0x4000, -+ 0x18cc: 0x4000, 0x18cd: 0x4000, 0x18ce: 0x4000, 0x18cf: 0x4000, 0x18d0: 0x4000, 0x18d1: 0x4000, -+ 0x18d2: 0x4000, 0x18d3: 0x4000, 0x18d4: 0x4000, 0x18d5: 0x4000, 0x18d6: 0x4000, 0x18d7: 0x4000, -+ 0x18d8: 0x4000, 0x18d9: 0x4000, 0x18da: 0x4000, 0x18db: 0x4000, 0x18dc: 0x4000, 0x18dd: 0x4000, -+ 0x18de: 0x4000, 0x18df: 0x4000, 0x18e0: 0x4000, 0x18e1: 0x4000, 0x18e2: 0x4000, -+ 0x18e5: 0x4000, 0x18e6: 0x4000, 0x18e7: 0x4000, 0x18e8: 0x4000, 0x18e9: 0x4000, -+ 0x18ea: 0x4000, 0x18ee: 0x4000, 0x18ef: 0x4000, -+ 0x18f0: 0x4000, 0x18f1: 0x4000, 0x18f2: 0x4000, 0x18f3: 0x4000, 0x18f4: 0x4000, 0x18f5: 0x4000, -+ 0x18f6: 0x4000, 0x18f7: 0x4000, 0x18f8: 0x4000, 0x18f9: 0x4000, 0x18fa: 0x4000, 0x18fb: 0x4000, -+ 0x18fc: 0x4000, 0x18fd: 0x4000, 0x18fe: 0x4000, 0x18ff: 0x4000, -+ // Block 0x64, offset 0x1900 -+ 0x1900: 0x4000, 0x1901: 0x4000, 0x1902: 0x4000, 0x1903: 0x4000, 0x1904: 0x4000, 0x1905: 0x4000, -+ 0x1906: 0x4000, 0x1907: 0x4000, 0x1908: 0x4000, 0x1909: 0x4000, 0x190a: 0x4000, -+ 0x190d: 0x4000, 0x190e: 0x4000, 0x190f: 0x4000, 0x1910: 0x4000, 0x1911: 0x4000, -+ 0x1912: 0x4000, 0x1913: 0x4000, 0x1914: 0x4000, 0x1915: 0x4000, 0x1916: 0x4000, 0x1917: 0x4000, -+ 0x1918: 0x4000, 0x1919: 0x4000, 0x191a: 0x4000, 0x191b: 0x4000, 0x191c: 0x4000, 0x191d: 0x4000, -+ 0x191e: 0x4000, 0x191f: 0x4000, 0x1920: 0x4000, 0x1921: 0x4000, 0x1922: 0x4000, 0x1923: 0x4000, -+ 0x1924: 0x4000, 0x1925: 0x4000, 0x1926: 0x4000, 0x1927: 0x4000, 0x1928: 0x4000, 0x1929: 0x4000, -+ 0x192a: 0x4000, 0x192b: 0x4000, 0x192c: 0x4000, 0x192d: 0x4000, 0x192e: 0x4000, 0x192f: 0x4000, -+ 0x1930: 0x4000, 0x1931: 0x4000, 0x1932: 0x4000, 0x1933: 0x4000, 0x1934: 0x4000, 0x1935: 0x4000, -+ 0x1936: 0x4000, 0x1937: 0x4000, 0x1938: 0x4000, 0x1939: 0x4000, 0x193a: 0x4000, 0x193b: 0x4000, -+ 0x193c: 0x4000, 0x193d: 0x4000, 0x193e: 0x4000, 0x193f: 0x4000, -+ // Block 0x65, offset 0x1940 -+ 0x1970: 0x4000, 0x1971: 0x4000, 0x1972: 0x4000, 0x1973: 0x4000, -+ 0x1978: 0x4000, 0x1979: 0x4000, 0x197a: 0x4000, -+ // Block 0x66, offset 0x1980 -+ 0x1980: 0x4000, 0x1981: 0x4000, 0x1982: 0x4000, -+ 0x1990: 0x4000, 0x1991: 0x4000, -+ 0x1992: 0x4000, 0x1993: 0x4000, 0x1994: 0x4000, 0x1995: 0x4000, -+ // Block 0x67, offset 0x19c0 -+ 0x19c0: 0x2000, 0x19c1: 0x2000, 0x19c2: 0x2000, 0x19c3: 0x2000, 0x19c4: 0x2000, 0x19c5: 0x2000, -+ 0x19c6: 0x2000, 0x19c7: 0x2000, 0x19c8: 0x2000, 0x19c9: 0x2000, 0x19ca: 0x2000, 0x19cb: 0x2000, -+ 0x19cc: 0x2000, 0x19cd: 0x2000, 0x19ce: 0x2000, 0x19cf: 0x2000, 0x19d0: 0x2000, 0x19d1: 0x2000, -+ 0x19d2: 0x2000, 0x19d3: 0x2000, 0x19d4: 0x2000, 0x19d5: 0x2000, 0x19d6: 0x2000, 0x19d7: 0x2000, -+ 0x19d8: 0x2000, 0x19d9: 0x2000, 0x19da: 0x2000, 0x19db: 0x2000, 0x19dc: 0x2000, 0x19dd: 0x2000, -+ 0x19de: 0x2000, 0x19df: 0x2000, 0x19e0: 0x2000, 0x19e1: 0x2000, 0x19e2: 0x2000, 0x19e3: 0x2000, -+ 0x19e4: 0x2000, 0x19e5: 0x2000, 0x19e6: 0x2000, 0x19e7: 0x2000, 0x19e8: 0x2000, 0x19e9: 0x2000, -+ 0x19ea: 0x2000, 0x19eb: 0x2000, 0x19ec: 0x2000, 0x19ed: 0x2000, 0x19ee: 0x2000, 0x19ef: 0x2000, -+ 0x19f0: 0x2000, 0x19f1: 0x2000, 0x19f2: 0x2000, 0x19f3: 0x2000, 0x19f4: 0x2000, 0x19f5: 0x2000, -+ 0x19f6: 0x2000, 0x19f7: 0x2000, 0x19f8: 0x2000, 0x19f9: 0x2000, 0x19fa: 0x2000, 0x19fb: 0x2000, -+ 0x19fc: 0x2000, 0x19fd: 0x2000, -+} -+ -+// widthIndex: 22 blocks, 1408 entries, 1408 bytes -+// Block 0 is the zero block. -+var widthIndex = [1408]uint8{ -+ // Block 0x0, offset 0x0 -+ // Block 0x1, offset 0x40 -+ // Block 0x2, offset 0x80 -+ // Block 0x3, offset 0xc0 -+ 0xc2: 0x01, 0xc3: 0x02, 0xc4: 0x03, 0xc5: 0x04, 0xc7: 0x05, -+ 0xc9: 0x06, 0xcb: 0x07, 0xcc: 0x08, 0xcd: 0x09, 0xce: 0x0a, 0xcf: 0x0b, -+ 0xd0: 0x0c, 0xd1: 0x0d, -+ 0xe1: 0x02, 0xe2: 0x03, 0xe3: 0x04, 0xe4: 0x05, 0xe5: 0x06, 0xe6: 0x06, 0xe7: 0x06, -+ 0xe8: 0x06, 0xe9: 0x06, 0xea: 0x07, 0xeb: 0x06, 0xec: 0x06, 0xed: 0x08, 0xee: 0x09, 0xef: 0x0a, -+ 0xf0: 0x0f, 0xf3: 0x12, 0xf4: 0x13, -+ // Block 0x4, offset 0x100 -+ 0x104: 0x0e, 0x105: 0x0f, -+ // Block 0x5, offset 0x140 -+ 0x140: 0x10, 0x141: 0x11, 0x142: 0x12, 0x144: 0x13, 0x145: 0x14, 0x146: 0x15, 0x147: 0x16, -+ 0x148: 0x17, 0x149: 0x18, 0x14a: 0x19, 0x14c: 0x1a, 0x14f: 0x1b, -+ 0x151: 0x1c, 0x152: 0x08, 0x153: 0x1d, 0x154: 0x1e, 0x155: 0x1f, 0x156: 0x20, 0x157: 0x21, -+ 0x158: 0x22, 0x159: 0x23, 0x15a: 0x24, 0x15b: 0x25, 0x15c: 0x26, 0x15d: 0x27, 0x15e: 0x28, 0x15f: 0x29, -+ 0x166: 0x2a, -+ 0x16c: 0x2b, 0x16d: 0x2c, -+ 0x17a: 0x2d, 0x17b: 0x2e, 0x17c: 0x0e, 0x17d: 0x0e, 0x17e: 0x0e, 0x17f: 0x2f, -+ // Block 0x6, offset 0x180 -+ 0x180: 0x30, 0x181: 0x31, 0x182: 0x32, 0x183: 0x33, 0x184: 0x34, 0x185: 0x35, 0x186: 0x36, 0x187: 0x37, -+ 0x188: 0x38, 0x189: 0x39, 0x18a: 0x0e, 0x18b: 0x3a, 0x18c: 0x0e, 0x18d: 0x0e, 0x18e: 0x0e, 0x18f: 0x0e, -+ 0x190: 0x0e, 0x191: 0x0e, 0x192: 0x0e, 0x193: 0x0e, 0x194: 0x0e, 0x195: 0x0e, 0x196: 0x0e, 0x197: 0x0e, -+ 0x198: 0x0e, 0x199: 0x0e, 0x19a: 0x0e, 0x19b: 0x0e, 0x19c: 0x0e, 0x19d: 0x0e, 0x19e: 0x0e, 0x19f: 0x0e, -+ 0x1a0: 0x0e, 0x1a1: 0x0e, 0x1a2: 0x0e, 0x1a3: 0x0e, 0x1a4: 0x0e, 0x1a5: 0x0e, 0x1a6: 0x0e, 0x1a7: 0x0e, -+ 0x1a8: 0x0e, 0x1a9: 0x0e, 0x1aa: 0x0e, 0x1ab: 0x0e, 0x1ac: 0x0e, 0x1ad: 0x0e, 0x1ae: 0x0e, 0x1af: 0x0e, -+ 0x1b0: 0x0e, 0x1b1: 0x0e, 0x1b2: 0x0e, 0x1b3: 0x0e, 0x1b4: 0x0e, 0x1b5: 0x0e, 0x1b6: 0x0e, 0x1b7: 0x0e, -+ 0x1b8: 0x0e, 0x1b9: 0x0e, 0x1ba: 0x0e, 0x1bb: 0x0e, 0x1bc: 0x0e, 0x1bd: 0x0e, 0x1be: 0x0e, 0x1bf: 0x0e, -+ // Block 0x7, offset 0x1c0 -+ 0x1c0: 0x0e, 0x1c1: 0x0e, 0x1c2: 0x0e, 0x1c3: 0x0e, 0x1c4: 0x0e, 0x1c5: 0x0e, 0x1c6: 0x0e, 0x1c7: 0x0e, -+ 0x1c8: 0x0e, 0x1c9: 0x0e, 0x1ca: 0x0e, 0x1cb: 0x0e, 0x1cc: 0x0e, 0x1cd: 0x0e, 0x1ce: 0x0e, 0x1cf: 0x0e, -+ 0x1d0: 0x0e, 0x1d1: 0x0e, 0x1d2: 0x0e, 0x1d3: 0x0e, 0x1d4: 0x0e, 0x1d5: 0x0e, 0x1d6: 0x0e, 0x1d7: 0x0e, -+ 0x1d8: 0x0e, 0x1d9: 0x0e, 0x1da: 0x0e, 0x1db: 0x0e, 0x1dc: 0x0e, 0x1dd: 0x0e, 0x1de: 0x0e, 0x1df: 0x0e, -+ 0x1e0: 0x0e, 0x1e1: 0x0e, 0x1e2: 0x0e, 0x1e3: 0x0e, 0x1e4: 0x0e, 0x1e5: 0x0e, 0x1e6: 0x0e, 0x1e7: 0x0e, -+ 0x1e8: 0x0e, 0x1e9: 0x0e, 0x1ea: 0x0e, 0x1eb: 0x0e, 0x1ec: 0x0e, 0x1ed: 0x0e, 0x1ee: 0x0e, 0x1ef: 0x0e, -+ 0x1f0: 0x0e, 0x1f1: 0x0e, 0x1f2: 0x0e, 0x1f3: 0x0e, 0x1f4: 0x0e, 0x1f5: 0x0e, 0x1f6: 0x0e, -+ 0x1f8: 0x0e, 0x1f9: 0x0e, 0x1fa: 0x0e, 0x1fb: 0x0e, 0x1fc: 0x0e, 0x1fd: 0x0e, 0x1fe: 0x0e, 0x1ff: 0x0e, -+ // Block 0x8, offset 0x200 -+ 0x200: 0x0e, 0x201: 0x0e, 0x202: 0x0e, 0x203: 0x0e, 0x204: 0x0e, 0x205: 0x0e, 0x206: 0x0e, 0x207: 0x0e, -+ 0x208: 0x0e, 0x209: 0x0e, 0x20a: 0x0e, 0x20b: 0x0e, 0x20c: 0x0e, 0x20d: 0x0e, 0x20e: 0x0e, 0x20f: 0x0e, -+ 0x210: 0x0e, 0x211: 0x0e, 0x212: 0x0e, 0x213: 0x0e, 0x214: 0x0e, 0x215: 0x0e, 0x216: 0x0e, 0x217: 0x0e, -+ 0x218: 0x0e, 0x219: 0x0e, 0x21a: 0x0e, 0x21b: 0x0e, 0x21c: 0x0e, 0x21d: 0x0e, 0x21e: 0x0e, 0x21f: 0x0e, -+ 0x220: 0x0e, 0x221: 0x0e, 0x222: 0x0e, 0x223: 0x0e, 0x224: 0x0e, 0x225: 0x0e, 0x226: 0x0e, 0x227: 0x0e, -+ 0x228: 0x0e, 0x229: 0x0e, 0x22a: 0x0e, 0x22b: 0x0e, 0x22c: 0x0e, 0x22d: 0x0e, 0x22e: 0x0e, 0x22f: 0x0e, -+ 0x230: 0x0e, 0x231: 0x0e, 0x232: 0x0e, 0x233: 0x0e, 0x234: 0x0e, 0x235: 0x0e, 0x236: 0x0e, 0x237: 0x0e, -+ 0x238: 0x0e, 0x239: 0x0e, 0x23a: 0x0e, 0x23b: 0x0e, 0x23c: 0x0e, 0x23d: 0x0e, 0x23e: 0x0e, 0x23f: 0x0e, -+ // Block 0x9, offset 0x240 -+ 0x240: 0x0e, 0x241: 0x0e, 0x242: 0x0e, 0x243: 0x0e, 0x244: 0x0e, 0x245: 0x0e, 0x246: 0x0e, 0x247: 0x0e, -+ 0x248: 0x0e, 0x249: 0x0e, 0x24a: 0x0e, 0x24b: 0x0e, 0x24c: 0x0e, 0x24d: 0x0e, 0x24e: 0x0e, 0x24f: 0x0e, -+ 0x250: 0x0e, 0x251: 0x0e, 0x252: 0x3b, 0x253: 0x3c, -+ 0x265: 0x3d, -+ 0x270: 0x0e, 0x271: 0x0e, 0x272: 0x0e, 0x273: 0x0e, 0x274: 0x0e, 0x275: 0x0e, 0x276: 0x0e, 0x277: 0x0e, -+ 0x278: 0x0e, 0x279: 0x0e, 0x27a: 0x0e, 0x27b: 0x0e, 0x27c: 0x0e, 0x27d: 0x0e, 0x27e: 0x0e, 0x27f: 0x0e, -+ // Block 0xa, offset 0x280 -+ 0x280: 0x0e, 0x281: 0x0e, 0x282: 0x0e, 0x283: 0x0e, 0x284: 0x0e, 0x285: 0x0e, 0x286: 0x0e, 0x287: 0x0e, -+ 0x288: 0x0e, 0x289: 0x0e, 0x28a: 0x0e, 0x28b: 0x0e, 0x28c: 0x0e, 0x28d: 0x0e, 0x28e: 0x0e, 0x28f: 0x0e, -+ 0x290: 0x0e, 0x291: 0x0e, 0x292: 0x0e, 0x293: 0x0e, 0x294: 0x0e, 0x295: 0x0e, 0x296: 0x0e, 0x297: 0x0e, -+ 0x298: 0x0e, 0x299: 0x0e, 0x29a: 0x0e, 0x29b: 0x0e, 0x29c: 0x0e, 0x29d: 0x0e, 0x29e: 0x3e, -+ // Block 0xb, offset 0x2c0 -+ 0x2c0: 0x08, 0x2c1: 0x08, 0x2c2: 0x08, 0x2c3: 0x08, 0x2c4: 0x08, 0x2c5: 0x08, 0x2c6: 0x08, 0x2c7: 0x08, -+ 0x2c8: 0x08, 0x2c9: 0x08, 0x2ca: 0x08, 0x2cb: 0x08, 0x2cc: 0x08, 0x2cd: 0x08, 0x2ce: 0x08, 0x2cf: 0x08, -+ 0x2d0: 0x08, 0x2d1: 0x08, 0x2d2: 0x08, 0x2d3: 0x08, 0x2d4: 0x08, 0x2d5: 0x08, 0x2d6: 0x08, 0x2d7: 0x08, -+ 0x2d8: 0x08, 0x2d9: 0x08, 0x2da: 0x08, 0x2db: 0x08, 0x2dc: 0x08, 0x2dd: 0x08, 0x2de: 0x08, 0x2df: 0x08, -+ 0x2e0: 0x08, 0x2e1: 0x08, 0x2e2: 0x08, 0x2e3: 0x08, 0x2e4: 0x08, 0x2e5: 0x08, 0x2e6: 0x08, 0x2e7: 0x08, -+ 0x2e8: 0x08, 0x2e9: 0x08, 0x2ea: 0x08, 0x2eb: 0x08, 0x2ec: 0x08, 0x2ed: 0x08, 0x2ee: 0x08, 0x2ef: 0x08, -+ 0x2f0: 0x08, 0x2f1: 0x08, 0x2f2: 0x08, 0x2f3: 0x08, 0x2f4: 0x08, 0x2f5: 0x08, 0x2f6: 0x08, 0x2f7: 0x08, -+ 0x2f8: 0x08, 0x2f9: 0x08, 0x2fa: 0x08, 0x2fb: 0x08, 0x2fc: 0x08, 0x2fd: 0x08, 0x2fe: 0x08, 0x2ff: 0x08, -+ // Block 0xc, offset 0x300 -+ 0x300: 0x08, 0x301: 0x08, 0x302: 0x08, 0x303: 0x08, 0x304: 0x08, 0x305: 0x08, 0x306: 0x08, 0x307: 0x08, -+ 0x308: 0x08, 0x309: 0x08, 0x30a: 0x08, 0x30b: 0x08, 0x30c: 0x08, 0x30d: 0x08, 0x30e: 0x08, 0x30f: 0x08, -+ 0x310: 0x08, 0x311: 0x08, 0x312: 0x08, 0x313: 0x08, 0x314: 0x08, 0x315: 0x08, 0x316: 0x08, 0x317: 0x08, -+ 0x318: 0x08, 0x319: 0x08, 0x31a: 0x08, 0x31b: 0x08, 0x31c: 0x08, 0x31d: 0x08, 0x31e: 0x08, 0x31f: 0x08, -+ 0x320: 0x08, 0x321: 0x08, 0x322: 0x08, 0x323: 0x08, 0x324: 0x0e, 0x325: 0x0e, 0x326: 0x0e, 0x327: 0x0e, -+ 0x328: 0x0e, 0x329: 0x0e, 0x32a: 0x0e, 0x32b: 0x0e, -+ 0x338: 0x3f, 0x339: 0x40, 0x33c: 0x41, 0x33d: 0x42, 0x33e: 0x43, 0x33f: 0x44, -+ // Block 0xd, offset 0x340 -+ 0x37f: 0x45, -+ // Block 0xe, offset 0x380 -+ 0x380: 0x0e, 0x381: 0x0e, 0x382: 0x0e, 0x383: 0x0e, 0x384: 0x0e, 0x385: 0x0e, 0x386: 0x0e, 0x387: 0x0e, -+ 0x388: 0x0e, 0x389: 0x0e, 0x38a: 0x0e, 0x38b: 0x0e, 0x38c: 0x0e, 0x38d: 0x0e, 0x38e: 0x0e, 0x38f: 0x0e, -+ 0x390: 0x0e, 0x391: 0x0e, 0x392: 0x0e, 0x393: 0x0e, 0x394: 0x0e, 0x395: 0x0e, 0x396: 0x0e, 0x397: 0x0e, -+ 0x398: 0x0e, 0x399: 0x0e, 0x39a: 0x0e, 0x39b: 0x0e, 0x39c: 0x0e, 0x39d: 0x0e, 0x39e: 0x0e, 0x39f: 0x46, -+ 0x3a0: 0x0e, 0x3a1: 0x0e, 0x3a2: 0x0e, 0x3a3: 0x0e, 0x3a4: 0x0e, 0x3a5: 0x0e, 0x3a6: 0x0e, 0x3a7: 0x0e, -+ 0x3a8: 0x0e, 0x3a9: 0x0e, 0x3aa: 0x0e, 0x3ab: 0x47, -+ // Block 0xf, offset 0x3c0 -+ 0x3c0: 0x0e, 0x3c1: 0x0e, 0x3c2: 0x0e, 0x3c3: 0x0e, 0x3c4: 0x48, 0x3c5: 0x49, 0x3c6: 0x0e, 0x3c7: 0x0e, -+ 0x3c8: 0x0e, 0x3c9: 0x0e, 0x3ca: 0x0e, 0x3cb: 0x4a, -+ // Block 0x10, offset 0x400 -+ 0x400: 0x4b, 0x403: 0x4c, 0x404: 0x4d, 0x405: 0x4e, 0x406: 0x4f, -+ 0x408: 0x50, 0x409: 0x51, 0x40c: 0x52, 0x40d: 0x53, 0x40e: 0x54, 0x40f: 0x55, -+ 0x410: 0x3a, 0x411: 0x56, 0x412: 0x0e, 0x413: 0x57, 0x414: 0x58, 0x415: 0x59, 0x416: 0x5a, 0x417: 0x5b, -+ 0x418: 0x0e, 0x419: 0x5c, 0x41a: 0x0e, 0x41b: 0x5d, 0x41f: 0x5e, -+ 0x424: 0x5f, 0x425: 0x60, 0x426: 0x61, 0x427: 0x62, -+ 0x429: 0x63, 0x42a: 0x64, -+ // Block 0x11, offset 0x440 -+ 0x456: 0x0b, 0x457: 0x06, -+ 0x458: 0x0c, 0x45b: 0x0d, 0x45f: 0x0e, -+ 0x460: 0x06, 0x461: 0x06, 0x462: 0x06, 0x463: 0x06, 0x464: 0x06, 0x465: 0x06, 0x466: 0x06, 0x467: 0x06, -+ 0x468: 0x06, 0x469: 0x06, 0x46a: 0x06, 0x46b: 0x06, 0x46c: 0x06, 0x46d: 0x06, 0x46e: 0x06, 0x46f: 0x06, -+ 0x470: 0x06, 0x471: 0x06, 0x472: 0x06, 0x473: 0x06, 0x474: 0x06, 0x475: 0x06, 0x476: 0x06, 0x477: 0x06, -+ 0x478: 0x06, 0x479: 0x06, 0x47a: 0x06, 0x47b: 0x06, 0x47c: 0x06, 0x47d: 0x06, 0x47e: 0x06, 0x47f: 0x06, -+ // Block 0x12, offset 0x480 -+ 0x484: 0x08, 0x485: 0x08, 0x486: 0x08, 0x487: 0x09, -+ // Block 0x13, offset 0x4c0 -+ 0x4c0: 0x08, 0x4c1: 0x08, 0x4c2: 0x08, 0x4c3: 0x08, 0x4c4: 0x08, 0x4c5: 0x08, 0x4c6: 0x08, 0x4c7: 0x08, -+ 0x4c8: 0x08, 0x4c9: 0x08, 0x4ca: 0x08, 0x4cb: 0x08, 0x4cc: 0x08, 0x4cd: 0x08, 0x4ce: 0x08, 0x4cf: 0x08, -+ 0x4d0: 0x08, 0x4d1: 0x08, 0x4d2: 0x08, 0x4d3: 0x08, 0x4d4: 0x08, 0x4d5: 0x08, 0x4d6: 0x08, 0x4d7: 0x08, -+ 0x4d8: 0x08, 0x4d9: 0x08, 0x4da: 0x08, 0x4db: 0x08, 0x4dc: 0x08, 0x4dd: 0x08, 0x4de: 0x08, 0x4df: 0x08, -+ 0x4e0: 0x08, 0x4e1: 0x08, 0x4e2: 0x08, 0x4e3: 0x08, 0x4e4: 0x08, 0x4e5: 0x08, 0x4e6: 0x08, 0x4e7: 0x08, -+ 0x4e8: 0x08, 0x4e9: 0x08, 0x4ea: 0x08, 0x4eb: 0x08, 0x4ec: 0x08, 0x4ed: 0x08, 0x4ee: 0x08, 0x4ef: 0x08, -+ 0x4f0: 0x08, 0x4f1: 0x08, 0x4f2: 0x08, 0x4f3: 0x08, 0x4f4: 0x08, 0x4f5: 0x08, 0x4f6: 0x08, 0x4f7: 0x08, -+ 0x4f8: 0x08, 0x4f9: 0x08, 0x4fa: 0x08, 0x4fb: 0x08, 0x4fc: 0x08, 0x4fd: 0x08, 0x4fe: 0x08, 0x4ff: 0x65, -+ // Block 0x14, offset 0x500 -+ 0x520: 0x10, -+ 0x530: 0x09, 0x531: 0x09, 0x532: 0x09, 0x533: 0x09, 0x534: 0x09, 0x535: 0x09, 0x536: 0x09, 0x537: 0x09, -+ 0x538: 0x09, 0x539: 0x09, 0x53a: 0x09, 0x53b: 0x09, 0x53c: 0x09, 0x53d: 0x09, 0x53e: 0x09, 0x53f: 0x11, -+ // Block 0x15, offset 0x540 -+ 0x540: 0x09, 0x541: 0x09, 0x542: 0x09, 0x543: 0x09, 0x544: 0x09, 0x545: 0x09, 0x546: 0x09, 0x547: 0x09, -+ 0x548: 0x09, 0x549: 0x09, 0x54a: 0x09, 0x54b: 0x09, 0x54c: 0x09, 0x54d: 0x09, 0x54e: 0x09, 0x54f: 0x11, -+} -+ -+// inverseData contains 4-byte entries of the following format: -+// <0 padding> -+// The last byte of the UTF-8-encoded rune is xor-ed with the last byte of the -+// UTF-8 encoding of the original rune. Mappings often have the following -+// pattern: -+// A -> A (U+FF21 -> U+0041) -+// B -> B (U+FF22 -> U+0042) -+// ... -+// By xor-ing the last byte the same entry can be shared by many mappings. This -+// reduces the total number of distinct entries by about two thirds. -+// The resulting entry for the aforementioned mappings is -+// { 0x01, 0xE0, 0x00, 0x00 } -+// Using this entry to map U+FF21 (UTF-8 [EF BC A1]), we get -+// E0 ^ A1 = 41. -+// Similarly, for U+FF22 (UTF-8 [EF BC A2]), we get -+// E0 ^ A2 = 42. -+// Note that because of the xor-ing, the byte sequence stored in the entry is -+// not valid UTF-8. -+var inverseData = [150][4]byte{ -+ {0x00, 0x00, 0x00, 0x00}, -+ {0x03, 0xe3, 0x80, 0xa0}, -+ {0x03, 0xef, 0xbc, 0xa0}, -+ {0x03, 0xef, 0xbc, 0xe0}, -+ {0x03, 0xef, 0xbd, 0xe0}, -+ {0x03, 0xef, 0xbf, 0x02}, -+ {0x03, 0xef, 0xbf, 0x00}, -+ {0x03, 0xef, 0xbf, 0x0e}, -+ {0x03, 0xef, 0xbf, 0x0c}, -+ {0x03, 0xef, 0xbf, 0x0f}, -+ {0x03, 0xef, 0xbf, 0x39}, -+ {0x03, 0xef, 0xbf, 0x3b}, -+ {0x03, 0xef, 0xbf, 0x3f}, -+ {0x03, 0xef, 0xbf, 0x2a}, -+ {0x03, 0xef, 0xbf, 0x0d}, -+ {0x03, 0xef, 0xbf, 0x25}, -+ {0x03, 0xef, 0xbd, 0x1a}, -+ {0x03, 0xef, 0xbd, 0x26}, -+ {0x01, 0xa0, 0x00, 0x00}, -+ {0x03, 0xef, 0xbd, 0x25}, -+ {0x03, 0xef, 0xbd, 0x23}, -+ {0x03, 0xef, 0xbd, 0x2e}, -+ {0x03, 0xef, 0xbe, 0x07}, -+ {0x03, 0xef, 0xbe, 0x05}, -+ {0x03, 0xef, 0xbd, 0x06}, -+ {0x03, 0xef, 0xbd, 0x13}, -+ {0x03, 0xef, 0xbd, 0x0b}, -+ {0x03, 0xef, 0xbd, 0x16}, -+ {0x03, 0xef, 0xbd, 0x0c}, -+ {0x03, 0xef, 0xbd, 0x15}, -+ {0x03, 0xef, 0xbd, 0x0d}, -+ {0x03, 0xef, 0xbd, 0x1c}, -+ {0x03, 0xef, 0xbd, 0x02}, -+ {0x03, 0xef, 0xbd, 0x1f}, -+ {0x03, 0xef, 0xbd, 0x1d}, -+ {0x03, 0xef, 0xbd, 0x17}, -+ {0x03, 0xef, 0xbd, 0x08}, -+ {0x03, 0xef, 0xbd, 0x09}, -+ {0x03, 0xef, 0xbd, 0x0e}, -+ {0x03, 0xef, 0xbd, 0x04}, -+ {0x03, 0xef, 0xbd, 0x05}, -+ {0x03, 0xef, 0xbe, 0x3f}, -+ {0x03, 0xef, 0xbe, 0x00}, -+ {0x03, 0xef, 0xbd, 0x2c}, -+ {0x03, 0xef, 0xbe, 0x06}, -+ {0x03, 0xef, 0xbe, 0x0c}, -+ {0x03, 0xef, 0xbe, 0x0f}, -+ {0x03, 0xef, 0xbe, 0x0d}, -+ {0x03, 0xef, 0xbe, 0x0b}, -+ {0x03, 0xef, 0xbe, 0x19}, -+ {0x03, 0xef, 0xbe, 0x15}, -+ {0x03, 0xef, 0xbe, 0x11}, -+ {0x03, 0xef, 0xbe, 0x31}, -+ {0x03, 0xef, 0xbe, 0x33}, -+ {0x03, 0xef, 0xbd, 0x0f}, -+ {0x03, 0xef, 0xbe, 0x30}, -+ {0x03, 0xef, 0xbe, 0x3e}, -+ {0x03, 0xef, 0xbe, 0x32}, -+ {0x03, 0xef, 0xbe, 0x36}, -+ {0x03, 0xef, 0xbd, 0x14}, -+ {0x03, 0xef, 0xbe, 0x2e}, -+ {0x03, 0xef, 0xbd, 0x1e}, -+ {0x03, 0xef, 0xbe, 0x10}, -+ {0x03, 0xef, 0xbf, 0x13}, -+ {0x03, 0xef, 0xbf, 0x15}, -+ {0x03, 0xef, 0xbf, 0x17}, -+ {0x03, 0xef, 0xbf, 0x1f}, -+ {0x03, 0xef, 0xbf, 0x1d}, -+ {0x03, 0xef, 0xbf, 0x1b}, -+ {0x03, 0xef, 0xbf, 0x09}, -+ {0x03, 0xef, 0xbf, 0x0b}, -+ {0x03, 0xef, 0xbf, 0x37}, -+ {0x03, 0xef, 0xbe, 0x04}, -+ {0x01, 0xe0, 0x00, 0x00}, -+ {0x03, 0xe2, 0xa6, 0x1a}, -+ {0x03, 0xe2, 0xa6, 0x26}, -+ {0x03, 0xe3, 0x80, 0x23}, -+ {0x03, 0xe3, 0x80, 0x2e}, -+ {0x03, 0xe3, 0x80, 0x25}, -+ {0x03, 0xe3, 0x83, 0x1e}, -+ {0x03, 0xe3, 0x83, 0x14}, -+ {0x03, 0xe3, 0x82, 0x06}, -+ {0x03, 0xe3, 0x82, 0x0b}, -+ {0x03, 0xe3, 0x82, 0x0c}, -+ {0x03, 0xe3, 0x82, 0x0d}, -+ {0x03, 0xe3, 0x82, 0x02}, -+ {0x03, 0xe3, 0x83, 0x0f}, -+ {0x03, 0xe3, 0x83, 0x08}, -+ {0x03, 0xe3, 0x83, 0x09}, -+ {0x03, 0xe3, 0x83, 0x2c}, -+ {0x03, 0xe3, 0x83, 0x0c}, -+ {0x03, 0xe3, 0x82, 0x13}, -+ {0x03, 0xe3, 0x82, 0x16}, -+ {0x03, 0xe3, 0x82, 0x15}, -+ {0x03, 0xe3, 0x82, 0x1c}, -+ {0x03, 0xe3, 0x82, 0x1f}, -+ {0x03, 0xe3, 0x82, 0x1d}, -+ {0x03, 0xe3, 0x82, 0x1a}, -+ {0x03, 0xe3, 0x82, 0x17}, -+ {0x03, 0xe3, 0x82, 0x08}, -+ {0x03, 0xe3, 0x82, 0x09}, -+ {0x03, 0xe3, 0x82, 0x0e}, -+ {0x03, 0xe3, 0x82, 0x04}, -+ {0x03, 0xe3, 0x82, 0x05}, -+ {0x03, 0xe3, 0x82, 0x3f}, -+ {0x03, 0xe3, 0x83, 0x00}, -+ {0x03, 0xe3, 0x83, 0x06}, -+ {0x03, 0xe3, 0x83, 0x05}, -+ {0x03, 0xe3, 0x83, 0x0d}, -+ {0x03, 0xe3, 0x83, 0x0b}, -+ {0x03, 0xe3, 0x83, 0x07}, -+ {0x03, 0xe3, 0x83, 0x19}, -+ {0x03, 0xe3, 0x83, 0x15}, -+ {0x03, 0xe3, 0x83, 0x11}, -+ {0x03, 0xe3, 0x83, 0x31}, -+ {0x03, 0xe3, 0x83, 0x33}, -+ {0x03, 0xe3, 0x83, 0x30}, -+ {0x03, 0xe3, 0x83, 0x3e}, -+ {0x03, 0xe3, 0x83, 0x32}, -+ {0x03, 0xe3, 0x83, 0x36}, -+ {0x03, 0xe3, 0x83, 0x2e}, -+ {0x03, 0xe3, 0x82, 0x07}, -+ {0x03, 0xe3, 0x85, 0x04}, -+ {0x03, 0xe3, 0x84, 0x10}, -+ {0x03, 0xe3, 0x85, 0x30}, -+ {0x03, 0xe3, 0x85, 0x0d}, -+ {0x03, 0xe3, 0x85, 0x13}, -+ {0x03, 0xe3, 0x85, 0x15}, -+ {0x03, 0xe3, 0x85, 0x17}, -+ {0x03, 0xe3, 0x85, 0x1f}, -+ {0x03, 0xe3, 0x85, 0x1d}, -+ {0x03, 0xe3, 0x85, 0x1b}, -+ {0x03, 0xe3, 0x85, 0x09}, -+ {0x03, 0xe3, 0x85, 0x0f}, -+ {0x03, 0xe3, 0x85, 0x0b}, -+ {0x03, 0xe3, 0x85, 0x37}, -+ {0x03, 0xe3, 0x85, 0x3b}, -+ {0x03, 0xe3, 0x85, 0x39}, -+ {0x03, 0xe3, 0x85, 0x3f}, -+ {0x02, 0xc2, 0x02, 0x00}, -+ {0x02, 0xc2, 0x0e, 0x00}, -+ {0x02, 0xc2, 0x0c, 0x00}, -+ {0x02, 0xc2, 0x00, 0x00}, -+ {0x03, 0xe2, 0x82, 0x0f}, -+ {0x03, 0xe2, 0x94, 0x2a}, -+ {0x03, 0xe2, 0x86, 0x39}, -+ {0x03, 0xe2, 0x86, 0x3b}, -+ {0x03, 0xe2, 0x86, 0x3f}, -+ {0x03, 0xe2, 0x96, 0x0d}, -+ {0x03, 0xe2, 0x97, 0x25}, -+} -+ -+// Total table size 15320 bytes (14KiB) -diff --git a/vendor/golang.org/x/text/width/tables13.0.0.go b/vendor/golang.org/x/text/width/tables13.0.0.go -new file mode 100644 -index 0000000..bac3f1a ---- /dev/null -+++ b/vendor/golang.org/x/text/width/tables13.0.0.go -@@ -0,0 +1,1352 @@ -+// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. -+ -+//go:build go1.16 -+// +build go1.16 -+ -+package width -+ -+// UnicodeVersion is the Unicode version from which the tables in this package are derived. -+const UnicodeVersion = "13.0.0" -+ -+// lookup returns the trie value for the first UTF-8 encoding in s and -+// the width in bytes of this encoding. The size will be 0 if s does not -+// hold enough bytes to complete the encoding. len(s) must be greater than 0. -+func (t *widthTrie) lookup(s []byte) (v uint16, sz int) { -+ c0 := s[0] -+ switch { -+ case c0 < 0x80: // is ASCII -+ return widthValues[c0], 1 -+ case c0 < 0xC2: -+ return 0, 1 // Illegal UTF-8: not a starter, not ASCII. -+ case c0 < 0xE0: // 2-byte UTF-8 -+ if len(s) < 2 { -+ return 0, 0 -+ } -+ i := widthIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c1), 2 -+ case c0 < 0xF0: // 3-byte UTF-8 -+ if len(s) < 3 { -+ return 0, 0 -+ } -+ i := widthIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = widthIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c2), 3 -+ case c0 < 0xF8: // 4-byte UTF-8 -+ if len(s) < 4 { -+ return 0, 0 -+ } -+ i := widthIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = widthIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ o = uint32(i)<<6 + uint32(c2) -+ i = widthIndex[o] -+ c3 := s[3] -+ if c3 < 0x80 || 0xC0 <= c3 { -+ return 0, 3 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c3), 4 -+ } -+ // Illegal rune -+ return 0, 1 -+} -+ -+// lookupUnsafe returns the trie value for the first UTF-8 encoding in s. -+// s must start with a full and valid UTF-8 encoded rune. -+func (t *widthTrie) lookupUnsafe(s []byte) uint16 { -+ c0 := s[0] -+ if c0 < 0x80 { // is ASCII -+ return widthValues[c0] -+ } -+ i := widthIndex[c0] -+ if c0 < 0xE0 { // 2-byte UTF-8 -+ return t.lookupValue(uint32(i), s[1]) -+ } -+ i = widthIndex[uint32(i)<<6+uint32(s[1])] -+ if c0 < 0xF0 { // 3-byte UTF-8 -+ return t.lookupValue(uint32(i), s[2]) -+ } -+ i = widthIndex[uint32(i)<<6+uint32(s[2])] -+ if c0 < 0xF8 { // 4-byte UTF-8 -+ return t.lookupValue(uint32(i), s[3]) -+ } -+ return 0 -+} -+ -+// lookupString returns the trie value for the first UTF-8 encoding in s and -+// the width in bytes of this encoding. The size will be 0 if s does not -+// hold enough bytes to complete the encoding. len(s) must be greater than 0. -+func (t *widthTrie) lookupString(s string) (v uint16, sz int) { -+ c0 := s[0] -+ switch { -+ case c0 < 0x80: // is ASCII -+ return widthValues[c0], 1 -+ case c0 < 0xC2: -+ return 0, 1 // Illegal UTF-8: not a starter, not ASCII. -+ case c0 < 0xE0: // 2-byte UTF-8 -+ if len(s) < 2 { -+ return 0, 0 -+ } -+ i := widthIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c1), 2 -+ case c0 < 0xF0: // 3-byte UTF-8 -+ if len(s) < 3 { -+ return 0, 0 -+ } -+ i := widthIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = widthIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c2), 3 -+ case c0 < 0xF8: // 4-byte UTF-8 -+ if len(s) < 4 { -+ return 0, 0 -+ } -+ i := widthIndex[c0] -+ c1 := s[1] -+ if c1 < 0x80 || 0xC0 <= c1 { -+ return 0, 1 // Illegal UTF-8: not a continuation byte. -+ } -+ o := uint32(i)<<6 + uint32(c1) -+ i = widthIndex[o] -+ c2 := s[2] -+ if c2 < 0x80 || 0xC0 <= c2 { -+ return 0, 2 // Illegal UTF-8: not a continuation byte. -+ } -+ o = uint32(i)<<6 + uint32(c2) -+ i = widthIndex[o] -+ c3 := s[3] -+ if c3 < 0x80 || 0xC0 <= c3 { -+ return 0, 3 // Illegal UTF-8: not a continuation byte. -+ } -+ return t.lookupValue(uint32(i), c3), 4 -+ } -+ // Illegal rune -+ return 0, 1 -+} -+ -+// lookupStringUnsafe returns the trie value for the first UTF-8 encoding in s. -+// s must start with a full and valid UTF-8 encoded rune. -+func (t *widthTrie) lookupStringUnsafe(s string) uint16 { -+ c0 := s[0] -+ if c0 < 0x80 { // is ASCII -+ return widthValues[c0] -+ } -+ i := widthIndex[c0] -+ if c0 < 0xE0 { // 2-byte UTF-8 -+ return t.lookupValue(uint32(i), s[1]) -+ } -+ i = widthIndex[uint32(i)<<6+uint32(s[1])] -+ if c0 < 0xF0 { // 3-byte UTF-8 -+ return t.lookupValue(uint32(i), s[2]) -+ } -+ i = widthIndex[uint32(i)<<6+uint32(s[2])] -+ if c0 < 0xF8 { // 4-byte UTF-8 -+ return t.lookupValue(uint32(i), s[3]) -+ } -+ return 0 -+} -+ -+// widthTrie. Total size: 14848 bytes (14.50 KiB). Checksum: 17e24343536472f6. -+type widthTrie struct{} -+ -+func newWidthTrie(i int) *widthTrie { -+ return &widthTrie{} -+} -+ -+// lookupValue determines the type of block n and looks up the value for b. -+func (t *widthTrie) lookupValue(n uint32, b byte) uint16 { -+ switch { -+ default: -+ return uint16(widthValues[n<<6+uint32(b)]) -+ } -+} -+ -+// widthValues: 105 blocks, 6720 entries, 13440 bytes -+// The third block is the zero block. -+var widthValues = [6720]uint16{ -+ // Block 0x0, offset 0x0 -+ 0x20: 0x6001, 0x21: 0x6002, 0x22: 0x6002, 0x23: 0x6002, -+ 0x24: 0x6002, 0x25: 0x6002, 0x26: 0x6002, 0x27: 0x6002, 0x28: 0x6002, 0x29: 0x6002, -+ 0x2a: 0x6002, 0x2b: 0x6002, 0x2c: 0x6002, 0x2d: 0x6002, 0x2e: 0x6002, 0x2f: 0x6002, -+ 0x30: 0x6002, 0x31: 0x6002, 0x32: 0x6002, 0x33: 0x6002, 0x34: 0x6002, 0x35: 0x6002, -+ 0x36: 0x6002, 0x37: 0x6002, 0x38: 0x6002, 0x39: 0x6002, 0x3a: 0x6002, 0x3b: 0x6002, -+ 0x3c: 0x6002, 0x3d: 0x6002, 0x3e: 0x6002, 0x3f: 0x6002, -+ // Block 0x1, offset 0x40 -+ 0x40: 0x6003, 0x41: 0x6003, 0x42: 0x6003, 0x43: 0x6003, 0x44: 0x6003, 0x45: 0x6003, -+ 0x46: 0x6003, 0x47: 0x6003, 0x48: 0x6003, 0x49: 0x6003, 0x4a: 0x6003, 0x4b: 0x6003, -+ 0x4c: 0x6003, 0x4d: 0x6003, 0x4e: 0x6003, 0x4f: 0x6003, 0x50: 0x6003, 0x51: 0x6003, -+ 0x52: 0x6003, 0x53: 0x6003, 0x54: 0x6003, 0x55: 0x6003, 0x56: 0x6003, 0x57: 0x6003, -+ 0x58: 0x6003, 0x59: 0x6003, 0x5a: 0x6003, 0x5b: 0x6003, 0x5c: 0x6003, 0x5d: 0x6003, -+ 0x5e: 0x6003, 0x5f: 0x6003, 0x60: 0x6004, 0x61: 0x6004, 0x62: 0x6004, 0x63: 0x6004, -+ 0x64: 0x6004, 0x65: 0x6004, 0x66: 0x6004, 0x67: 0x6004, 0x68: 0x6004, 0x69: 0x6004, -+ 0x6a: 0x6004, 0x6b: 0x6004, 0x6c: 0x6004, 0x6d: 0x6004, 0x6e: 0x6004, 0x6f: 0x6004, -+ 0x70: 0x6004, 0x71: 0x6004, 0x72: 0x6004, 0x73: 0x6004, 0x74: 0x6004, 0x75: 0x6004, -+ 0x76: 0x6004, 0x77: 0x6004, 0x78: 0x6004, 0x79: 0x6004, 0x7a: 0x6004, 0x7b: 0x6004, -+ 0x7c: 0x6004, 0x7d: 0x6004, 0x7e: 0x6004, -+ // Block 0x2, offset 0x80 -+ // Block 0x3, offset 0xc0 -+ 0xe1: 0x2000, 0xe2: 0x6005, 0xe3: 0x6005, -+ 0xe4: 0x2000, 0xe5: 0x6006, 0xe6: 0x6005, 0xe7: 0x2000, 0xe8: 0x2000, -+ 0xea: 0x2000, 0xec: 0x6007, 0xed: 0x2000, 0xee: 0x2000, 0xef: 0x6008, -+ 0xf0: 0x2000, 0xf1: 0x2000, 0xf2: 0x2000, 0xf3: 0x2000, 0xf4: 0x2000, -+ 0xf6: 0x2000, 0xf7: 0x2000, 0xf8: 0x2000, 0xf9: 0x2000, 0xfa: 0x2000, -+ 0xfc: 0x2000, 0xfd: 0x2000, 0xfe: 0x2000, 0xff: 0x2000, -+ // Block 0x4, offset 0x100 -+ 0x106: 0x2000, -+ 0x110: 0x2000, -+ 0x117: 0x2000, -+ 0x118: 0x2000, -+ 0x11e: 0x2000, 0x11f: 0x2000, 0x120: 0x2000, 0x121: 0x2000, -+ 0x126: 0x2000, 0x128: 0x2000, 0x129: 0x2000, -+ 0x12a: 0x2000, 0x12c: 0x2000, 0x12d: 0x2000, -+ 0x130: 0x2000, 0x132: 0x2000, 0x133: 0x2000, -+ 0x137: 0x2000, 0x138: 0x2000, 0x139: 0x2000, 0x13a: 0x2000, -+ 0x13c: 0x2000, 0x13e: 0x2000, -+ // Block 0x5, offset 0x140 -+ 0x141: 0x2000, -+ 0x151: 0x2000, -+ 0x153: 0x2000, -+ 0x15b: 0x2000, -+ 0x166: 0x2000, 0x167: 0x2000, -+ 0x16b: 0x2000, -+ 0x171: 0x2000, 0x172: 0x2000, 0x173: 0x2000, -+ 0x178: 0x2000, -+ 0x17f: 0x2000, -+ // Block 0x6, offset 0x180 -+ 0x180: 0x2000, 0x181: 0x2000, 0x182: 0x2000, 0x184: 0x2000, -+ 0x188: 0x2000, 0x189: 0x2000, 0x18a: 0x2000, 0x18b: 0x2000, -+ 0x18d: 0x2000, -+ 0x192: 0x2000, 0x193: 0x2000, -+ 0x1a6: 0x2000, 0x1a7: 0x2000, -+ 0x1ab: 0x2000, -+ // Block 0x7, offset 0x1c0 -+ 0x1ce: 0x2000, 0x1d0: 0x2000, -+ 0x1d2: 0x2000, 0x1d4: 0x2000, 0x1d6: 0x2000, -+ 0x1d8: 0x2000, 0x1da: 0x2000, 0x1dc: 0x2000, -+ // Block 0x8, offset 0x200 -+ 0x211: 0x2000, -+ 0x221: 0x2000, -+ // Block 0x9, offset 0x240 -+ 0x244: 0x2000, -+ 0x247: 0x2000, 0x249: 0x2000, 0x24a: 0x2000, 0x24b: 0x2000, -+ 0x24d: 0x2000, 0x250: 0x2000, -+ 0x258: 0x2000, 0x259: 0x2000, 0x25a: 0x2000, 0x25b: 0x2000, 0x25d: 0x2000, -+ 0x25f: 0x2000, -+ // Block 0xa, offset 0x280 -+ 0x280: 0x2000, 0x281: 0x2000, 0x282: 0x2000, 0x283: 0x2000, 0x284: 0x2000, 0x285: 0x2000, -+ 0x286: 0x2000, 0x287: 0x2000, 0x288: 0x2000, 0x289: 0x2000, 0x28a: 0x2000, 0x28b: 0x2000, -+ 0x28c: 0x2000, 0x28d: 0x2000, 0x28e: 0x2000, 0x28f: 0x2000, 0x290: 0x2000, 0x291: 0x2000, -+ 0x292: 0x2000, 0x293: 0x2000, 0x294: 0x2000, 0x295: 0x2000, 0x296: 0x2000, 0x297: 0x2000, -+ 0x298: 0x2000, 0x299: 0x2000, 0x29a: 0x2000, 0x29b: 0x2000, 0x29c: 0x2000, 0x29d: 0x2000, -+ 0x29e: 0x2000, 0x29f: 0x2000, 0x2a0: 0x2000, 0x2a1: 0x2000, 0x2a2: 0x2000, 0x2a3: 0x2000, -+ 0x2a4: 0x2000, 0x2a5: 0x2000, 0x2a6: 0x2000, 0x2a7: 0x2000, 0x2a8: 0x2000, 0x2a9: 0x2000, -+ 0x2aa: 0x2000, 0x2ab: 0x2000, 0x2ac: 0x2000, 0x2ad: 0x2000, 0x2ae: 0x2000, 0x2af: 0x2000, -+ 0x2b0: 0x2000, 0x2b1: 0x2000, 0x2b2: 0x2000, 0x2b3: 0x2000, 0x2b4: 0x2000, 0x2b5: 0x2000, -+ 0x2b6: 0x2000, 0x2b7: 0x2000, 0x2b8: 0x2000, 0x2b9: 0x2000, 0x2ba: 0x2000, 0x2bb: 0x2000, -+ 0x2bc: 0x2000, 0x2bd: 0x2000, 0x2be: 0x2000, 0x2bf: 0x2000, -+ // Block 0xb, offset 0x2c0 -+ 0x2c0: 0x2000, 0x2c1: 0x2000, 0x2c2: 0x2000, 0x2c3: 0x2000, 0x2c4: 0x2000, 0x2c5: 0x2000, -+ 0x2c6: 0x2000, 0x2c7: 0x2000, 0x2c8: 0x2000, 0x2c9: 0x2000, 0x2ca: 0x2000, 0x2cb: 0x2000, -+ 0x2cc: 0x2000, 0x2cd: 0x2000, 0x2ce: 0x2000, 0x2cf: 0x2000, 0x2d0: 0x2000, 0x2d1: 0x2000, -+ 0x2d2: 0x2000, 0x2d3: 0x2000, 0x2d4: 0x2000, 0x2d5: 0x2000, 0x2d6: 0x2000, 0x2d7: 0x2000, -+ 0x2d8: 0x2000, 0x2d9: 0x2000, 0x2da: 0x2000, 0x2db: 0x2000, 0x2dc: 0x2000, 0x2dd: 0x2000, -+ 0x2de: 0x2000, 0x2df: 0x2000, 0x2e0: 0x2000, 0x2e1: 0x2000, 0x2e2: 0x2000, 0x2e3: 0x2000, -+ 0x2e4: 0x2000, 0x2e5: 0x2000, 0x2e6: 0x2000, 0x2e7: 0x2000, 0x2e8: 0x2000, 0x2e9: 0x2000, -+ 0x2ea: 0x2000, 0x2eb: 0x2000, 0x2ec: 0x2000, 0x2ed: 0x2000, 0x2ee: 0x2000, 0x2ef: 0x2000, -+ // Block 0xc, offset 0x300 -+ 0x311: 0x2000, -+ 0x312: 0x2000, 0x313: 0x2000, 0x314: 0x2000, 0x315: 0x2000, 0x316: 0x2000, 0x317: 0x2000, -+ 0x318: 0x2000, 0x319: 0x2000, 0x31a: 0x2000, 0x31b: 0x2000, 0x31c: 0x2000, 0x31d: 0x2000, -+ 0x31e: 0x2000, 0x31f: 0x2000, 0x320: 0x2000, 0x321: 0x2000, 0x323: 0x2000, -+ 0x324: 0x2000, 0x325: 0x2000, 0x326: 0x2000, 0x327: 0x2000, 0x328: 0x2000, 0x329: 0x2000, -+ 0x331: 0x2000, 0x332: 0x2000, 0x333: 0x2000, 0x334: 0x2000, 0x335: 0x2000, -+ 0x336: 0x2000, 0x337: 0x2000, 0x338: 0x2000, 0x339: 0x2000, 0x33a: 0x2000, 0x33b: 0x2000, -+ 0x33c: 0x2000, 0x33d: 0x2000, 0x33e: 0x2000, 0x33f: 0x2000, -+ // Block 0xd, offset 0x340 -+ 0x340: 0x2000, 0x341: 0x2000, 0x343: 0x2000, 0x344: 0x2000, 0x345: 0x2000, -+ 0x346: 0x2000, 0x347: 0x2000, 0x348: 0x2000, 0x349: 0x2000, -+ // Block 0xe, offset 0x380 -+ 0x381: 0x2000, -+ 0x390: 0x2000, 0x391: 0x2000, -+ 0x392: 0x2000, 0x393: 0x2000, 0x394: 0x2000, 0x395: 0x2000, 0x396: 0x2000, 0x397: 0x2000, -+ 0x398: 0x2000, 0x399: 0x2000, 0x39a: 0x2000, 0x39b: 0x2000, 0x39c: 0x2000, 0x39d: 0x2000, -+ 0x39e: 0x2000, 0x39f: 0x2000, 0x3a0: 0x2000, 0x3a1: 0x2000, 0x3a2: 0x2000, 0x3a3: 0x2000, -+ 0x3a4: 0x2000, 0x3a5: 0x2000, 0x3a6: 0x2000, 0x3a7: 0x2000, 0x3a8: 0x2000, 0x3a9: 0x2000, -+ 0x3aa: 0x2000, 0x3ab: 0x2000, 0x3ac: 0x2000, 0x3ad: 0x2000, 0x3ae: 0x2000, 0x3af: 0x2000, -+ 0x3b0: 0x2000, 0x3b1: 0x2000, 0x3b2: 0x2000, 0x3b3: 0x2000, 0x3b4: 0x2000, 0x3b5: 0x2000, -+ 0x3b6: 0x2000, 0x3b7: 0x2000, 0x3b8: 0x2000, 0x3b9: 0x2000, 0x3ba: 0x2000, 0x3bb: 0x2000, -+ 0x3bc: 0x2000, 0x3bd: 0x2000, 0x3be: 0x2000, 0x3bf: 0x2000, -+ // Block 0xf, offset 0x3c0 -+ 0x3c0: 0x2000, 0x3c1: 0x2000, 0x3c2: 0x2000, 0x3c3: 0x2000, 0x3c4: 0x2000, 0x3c5: 0x2000, -+ 0x3c6: 0x2000, 0x3c7: 0x2000, 0x3c8: 0x2000, 0x3c9: 0x2000, 0x3ca: 0x2000, 0x3cb: 0x2000, -+ 0x3cc: 0x2000, 0x3cd: 0x2000, 0x3ce: 0x2000, 0x3cf: 0x2000, 0x3d1: 0x2000, -+ // Block 0x10, offset 0x400 -+ 0x400: 0x4000, 0x401: 0x4000, 0x402: 0x4000, 0x403: 0x4000, 0x404: 0x4000, 0x405: 0x4000, -+ 0x406: 0x4000, 0x407: 0x4000, 0x408: 0x4000, 0x409: 0x4000, 0x40a: 0x4000, 0x40b: 0x4000, -+ 0x40c: 0x4000, 0x40d: 0x4000, 0x40e: 0x4000, 0x40f: 0x4000, 0x410: 0x4000, 0x411: 0x4000, -+ 0x412: 0x4000, 0x413: 0x4000, 0x414: 0x4000, 0x415: 0x4000, 0x416: 0x4000, 0x417: 0x4000, -+ 0x418: 0x4000, 0x419: 0x4000, 0x41a: 0x4000, 0x41b: 0x4000, 0x41c: 0x4000, 0x41d: 0x4000, -+ 0x41e: 0x4000, 0x41f: 0x4000, 0x420: 0x4000, 0x421: 0x4000, 0x422: 0x4000, 0x423: 0x4000, -+ 0x424: 0x4000, 0x425: 0x4000, 0x426: 0x4000, 0x427: 0x4000, 0x428: 0x4000, 0x429: 0x4000, -+ 0x42a: 0x4000, 0x42b: 0x4000, 0x42c: 0x4000, 0x42d: 0x4000, 0x42e: 0x4000, 0x42f: 0x4000, -+ 0x430: 0x4000, 0x431: 0x4000, 0x432: 0x4000, 0x433: 0x4000, 0x434: 0x4000, 0x435: 0x4000, -+ 0x436: 0x4000, 0x437: 0x4000, 0x438: 0x4000, 0x439: 0x4000, 0x43a: 0x4000, 0x43b: 0x4000, -+ 0x43c: 0x4000, 0x43d: 0x4000, 0x43e: 0x4000, 0x43f: 0x4000, -+ // Block 0x11, offset 0x440 -+ 0x440: 0x4000, 0x441: 0x4000, 0x442: 0x4000, 0x443: 0x4000, 0x444: 0x4000, 0x445: 0x4000, -+ 0x446: 0x4000, 0x447: 0x4000, 0x448: 0x4000, 0x449: 0x4000, 0x44a: 0x4000, 0x44b: 0x4000, -+ 0x44c: 0x4000, 0x44d: 0x4000, 0x44e: 0x4000, 0x44f: 0x4000, 0x450: 0x4000, 0x451: 0x4000, -+ 0x452: 0x4000, 0x453: 0x4000, 0x454: 0x4000, 0x455: 0x4000, 0x456: 0x4000, 0x457: 0x4000, -+ 0x458: 0x4000, 0x459: 0x4000, 0x45a: 0x4000, 0x45b: 0x4000, 0x45c: 0x4000, 0x45d: 0x4000, -+ 0x45e: 0x4000, 0x45f: 0x4000, -+ // Block 0x12, offset 0x480 -+ 0x490: 0x2000, -+ 0x493: 0x2000, 0x494: 0x2000, 0x495: 0x2000, 0x496: 0x2000, -+ 0x498: 0x2000, 0x499: 0x2000, 0x49c: 0x2000, 0x49d: 0x2000, -+ 0x4a0: 0x2000, 0x4a1: 0x2000, 0x4a2: 0x2000, -+ 0x4a4: 0x2000, 0x4a5: 0x2000, 0x4a6: 0x2000, 0x4a7: 0x2000, -+ 0x4b0: 0x2000, 0x4b2: 0x2000, 0x4b3: 0x2000, 0x4b5: 0x2000, -+ 0x4bb: 0x2000, -+ 0x4be: 0x2000, -+ // Block 0x13, offset 0x4c0 -+ 0x4f4: 0x2000, -+ 0x4ff: 0x2000, -+ // Block 0x14, offset 0x500 -+ 0x501: 0x2000, 0x502: 0x2000, 0x503: 0x2000, 0x504: 0x2000, -+ 0x529: 0xa009, -+ 0x52c: 0x2000, -+ // Block 0x15, offset 0x540 -+ 0x543: 0x2000, 0x545: 0x2000, -+ 0x549: 0x2000, -+ 0x553: 0x2000, 0x556: 0x2000, -+ 0x561: 0x2000, 0x562: 0x2000, -+ 0x566: 0x2000, -+ 0x56b: 0x2000, -+ // Block 0x16, offset 0x580 -+ 0x593: 0x2000, 0x594: 0x2000, -+ 0x59b: 0x2000, 0x59c: 0x2000, 0x59d: 0x2000, -+ 0x59e: 0x2000, 0x5a0: 0x2000, 0x5a1: 0x2000, 0x5a2: 0x2000, 0x5a3: 0x2000, -+ 0x5a4: 0x2000, 0x5a5: 0x2000, 0x5a6: 0x2000, 0x5a7: 0x2000, 0x5a8: 0x2000, 0x5a9: 0x2000, -+ 0x5aa: 0x2000, 0x5ab: 0x2000, -+ 0x5b0: 0x2000, 0x5b1: 0x2000, 0x5b2: 0x2000, 0x5b3: 0x2000, 0x5b4: 0x2000, 0x5b5: 0x2000, -+ 0x5b6: 0x2000, 0x5b7: 0x2000, 0x5b8: 0x2000, 0x5b9: 0x2000, -+ // Block 0x17, offset 0x5c0 -+ 0x5c9: 0x2000, -+ 0x5d0: 0x200a, 0x5d1: 0x200b, -+ 0x5d2: 0x200a, 0x5d3: 0x200c, 0x5d4: 0x2000, 0x5d5: 0x2000, 0x5d6: 0x2000, 0x5d7: 0x2000, -+ 0x5d8: 0x2000, 0x5d9: 0x2000, -+ 0x5f8: 0x2000, 0x5f9: 0x2000, -+ // Block 0x18, offset 0x600 -+ 0x612: 0x2000, 0x614: 0x2000, -+ 0x627: 0x2000, -+ // Block 0x19, offset 0x640 -+ 0x640: 0x2000, 0x642: 0x2000, 0x643: 0x2000, -+ 0x647: 0x2000, 0x648: 0x2000, 0x64b: 0x2000, -+ 0x64f: 0x2000, 0x651: 0x2000, -+ 0x655: 0x2000, -+ 0x65a: 0x2000, 0x65d: 0x2000, -+ 0x65e: 0x2000, 0x65f: 0x2000, 0x660: 0x2000, 0x663: 0x2000, -+ 0x665: 0x2000, 0x667: 0x2000, 0x668: 0x2000, 0x669: 0x2000, -+ 0x66a: 0x2000, 0x66b: 0x2000, 0x66c: 0x2000, 0x66e: 0x2000, -+ 0x674: 0x2000, 0x675: 0x2000, -+ 0x676: 0x2000, 0x677: 0x2000, -+ 0x67c: 0x2000, 0x67d: 0x2000, -+ // Block 0x1a, offset 0x680 -+ 0x688: 0x2000, -+ 0x68c: 0x2000, -+ 0x692: 0x2000, -+ 0x6a0: 0x2000, 0x6a1: 0x2000, -+ 0x6a4: 0x2000, 0x6a5: 0x2000, 0x6a6: 0x2000, 0x6a7: 0x2000, -+ 0x6aa: 0x2000, 0x6ab: 0x2000, 0x6ae: 0x2000, 0x6af: 0x2000, -+ // Block 0x1b, offset 0x6c0 -+ 0x6c2: 0x2000, 0x6c3: 0x2000, -+ 0x6c6: 0x2000, 0x6c7: 0x2000, -+ 0x6d5: 0x2000, -+ 0x6d9: 0x2000, -+ 0x6e5: 0x2000, -+ 0x6ff: 0x2000, -+ // Block 0x1c, offset 0x700 -+ 0x712: 0x2000, -+ 0x71a: 0x4000, 0x71b: 0x4000, -+ 0x729: 0x4000, -+ 0x72a: 0x4000, -+ // Block 0x1d, offset 0x740 -+ 0x769: 0x4000, -+ 0x76a: 0x4000, 0x76b: 0x4000, 0x76c: 0x4000, -+ 0x770: 0x4000, 0x773: 0x4000, -+ // Block 0x1e, offset 0x780 -+ 0x7a0: 0x2000, 0x7a1: 0x2000, 0x7a2: 0x2000, 0x7a3: 0x2000, -+ 0x7a4: 0x2000, 0x7a5: 0x2000, 0x7a6: 0x2000, 0x7a7: 0x2000, 0x7a8: 0x2000, 0x7a9: 0x2000, -+ 0x7aa: 0x2000, 0x7ab: 0x2000, 0x7ac: 0x2000, 0x7ad: 0x2000, 0x7ae: 0x2000, 0x7af: 0x2000, -+ 0x7b0: 0x2000, 0x7b1: 0x2000, 0x7b2: 0x2000, 0x7b3: 0x2000, 0x7b4: 0x2000, 0x7b5: 0x2000, -+ 0x7b6: 0x2000, 0x7b7: 0x2000, 0x7b8: 0x2000, 0x7b9: 0x2000, 0x7ba: 0x2000, 0x7bb: 0x2000, -+ 0x7bc: 0x2000, 0x7bd: 0x2000, 0x7be: 0x2000, 0x7bf: 0x2000, -+ // Block 0x1f, offset 0x7c0 -+ 0x7c0: 0x2000, 0x7c1: 0x2000, 0x7c2: 0x2000, 0x7c3: 0x2000, 0x7c4: 0x2000, 0x7c5: 0x2000, -+ 0x7c6: 0x2000, 0x7c7: 0x2000, 0x7c8: 0x2000, 0x7c9: 0x2000, 0x7ca: 0x2000, 0x7cb: 0x2000, -+ 0x7cc: 0x2000, 0x7cd: 0x2000, 0x7ce: 0x2000, 0x7cf: 0x2000, 0x7d0: 0x2000, 0x7d1: 0x2000, -+ 0x7d2: 0x2000, 0x7d3: 0x2000, 0x7d4: 0x2000, 0x7d5: 0x2000, 0x7d6: 0x2000, 0x7d7: 0x2000, -+ 0x7d8: 0x2000, 0x7d9: 0x2000, 0x7da: 0x2000, 0x7db: 0x2000, 0x7dc: 0x2000, 0x7dd: 0x2000, -+ 0x7de: 0x2000, 0x7df: 0x2000, 0x7e0: 0x2000, 0x7e1: 0x2000, 0x7e2: 0x2000, 0x7e3: 0x2000, -+ 0x7e4: 0x2000, 0x7e5: 0x2000, 0x7e6: 0x2000, 0x7e7: 0x2000, 0x7e8: 0x2000, 0x7e9: 0x2000, -+ 0x7eb: 0x2000, 0x7ec: 0x2000, 0x7ed: 0x2000, 0x7ee: 0x2000, 0x7ef: 0x2000, -+ 0x7f0: 0x2000, 0x7f1: 0x2000, 0x7f2: 0x2000, 0x7f3: 0x2000, 0x7f4: 0x2000, 0x7f5: 0x2000, -+ 0x7f6: 0x2000, 0x7f7: 0x2000, 0x7f8: 0x2000, 0x7f9: 0x2000, 0x7fa: 0x2000, 0x7fb: 0x2000, -+ 0x7fc: 0x2000, 0x7fd: 0x2000, 0x7fe: 0x2000, 0x7ff: 0x2000, -+ // Block 0x20, offset 0x800 -+ 0x800: 0x2000, 0x801: 0x2000, 0x802: 0x200d, 0x803: 0x2000, 0x804: 0x2000, 0x805: 0x2000, -+ 0x806: 0x2000, 0x807: 0x2000, 0x808: 0x2000, 0x809: 0x2000, 0x80a: 0x2000, 0x80b: 0x2000, -+ 0x80c: 0x2000, 0x80d: 0x2000, 0x80e: 0x2000, 0x80f: 0x2000, 0x810: 0x2000, 0x811: 0x2000, -+ 0x812: 0x2000, 0x813: 0x2000, 0x814: 0x2000, 0x815: 0x2000, 0x816: 0x2000, 0x817: 0x2000, -+ 0x818: 0x2000, 0x819: 0x2000, 0x81a: 0x2000, 0x81b: 0x2000, 0x81c: 0x2000, 0x81d: 0x2000, -+ 0x81e: 0x2000, 0x81f: 0x2000, 0x820: 0x2000, 0x821: 0x2000, 0x822: 0x2000, 0x823: 0x2000, -+ 0x824: 0x2000, 0x825: 0x2000, 0x826: 0x2000, 0x827: 0x2000, 0x828: 0x2000, 0x829: 0x2000, -+ 0x82a: 0x2000, 0x82b: 0x2000, 0x82c: 0x2000, 0x82d: 0x2000, 0x82e: 0x2000, 0x82f: 0x2000, -+ 0x830: 0x2000, 0x831: 0x2000, 0x832: 0x2000, 0x833: 0x2000, 0x834: 0x2000, 0x835: 0x2000, -+ 0x836: 0x2000, 0x837: 0x2000, 0x838: 0x2000, 0x839: 0x2000, 0x83a: 0x2000, 0x83b: 0x2000, -+ 0x83c: 0x2000, 0x83d: 0x2000, 0x83e: 0x2000, 0x83f: 0x2000, -+ // Block 0x21, offset 0x840 -+ 0x840: 0x2000, 0x841: 0x2000, 0x842: 0x2000, 0x843: 0x2000, 0x844: 0x2000, 0x845: 0x2000, -+ 0x846: 0x2000, 0x847: 0x2000, 0x848: 0x2000, 0x849: 0x2000, 0x84a: 0x2000, 0x84b: 0x2000, -+ 0x850: 0x2000, 0x851: 0x2000, -+ 0x852: 0x2000, 0x853: 0x2000, 0x854: 0x2000, 0x855: 0x2000, 0x856: 0x2000, 0x857: 0x2000, -+ 0x858: 0x2000, 0x859: 0x2000, 0x85a: 0x2000, 0x85b: 0x2000, 0x85c: 0x2000, 0x85d: 0x2000, -+ 0x85e: 0x2000, 0x85f: 0x2000, 0x860: 0x2000, 0x861: 0x2000, 0x862: 0x2000, 0x863: 0x2000, -+ 0x864: 0x2000, 0x865: 0x2000, 0x866: 0x2000, 0x867: 0x2000, 0x868: 0x2000, 0x869: 0x2000, -+ 0x86a: 0x2000, 0x86b: 0x2000, 0x86c: 0x2000, 0x86d: 0x2000, 0x86e: 0x2000, 0x86f: 0x2000, -+ 0x870: 0x2000, 0x871: 0x2000, 0x872: 0x2000, 0x873: 0x2000, -+ // Block 0x22, offset 0x880 -+ 0x880: 0x2000, 0x881: 0x2000, 0x882: 0x2000, 0x883: 0x2000, 0x884: 0x2000, 0x885: 0x2000, -+ 0x886: 0x2000, 0x887: 0x2000, 0x888: 0x2000, 0x889: 0x2000, 0x88a: 0x2000, 0x88b: 0x2000, -+ 0x88c: 0x2000, 0x88d: 0x2000, 0x88e: 0x2000, 0x88f: 0x2000, -+ 0x892: 0x2000, 0x893: 0x2000, 0x894: 0x2000, 0x895: 0x2000, -+ 0x8a0: 0x200e, 0x8a1: 0x2000, 0x8a3: 0x2000, -+ 0x8a4: 0x2000, 0x8a5: 0x2000, 0x8a6: 0x2000, 0x8a7: 0x2000, 0x8a8: 0x2000, 0x8a9: 0x2000, -+ 0x8b2: 0x2000, 0x8b3: 0x2000, -+ 0x8b6: 0x2000, 0x8b7: 0x2000, -+ 0x8bc: 0x2000, 0x8bd: 0x2000, -+ // Block 0x23, offset 0x8c0 -+ 0x8c0: 0x2000, 0x8c1: 0x2000, -+ 0x8c6: 0x2000, 0x8c7: 0x2000, 0x8c8: 0x2000, 0x8cb: 0x200f, -+ 0x8ce: 0x2000, 0x8cf: 0x2000, 0x8d0: 0x2000, 0x8d1: 0x2000, -+ 0x8e2: 0x2000, 0x8e3: 0x2000, -+ 0x8e4: 0x2000, 0x8e5: 0x2000, -+ 0x8ef: 0x2000, -+ 0x8fd: 0x4000, 0x8fe: 0x4000, -+ // Block 0x24, offset 0x900 -+ 0x905: 0x2000, -+ 0x906: 0x2000, 0x909: 0x2000, -+ 0x90e: 0x2000, 0x90f: 0x2000, -+ 0x914: 0x4000, 0x915: 0x4000, -+ 0x91c: 0x2000, -+ 0x91e: 0x2000, -+ // Block 0x25, offset 0x940 -+ 0x940: 0x2000, 0x942: 0x2000, -+ 0x948: 0x4000, 0x949: 0x4000, 0x94a: 0x4000, 0x94b: 0x4000, -+ 0x94c: 0x4000, 0x94d: 0x4000, 0x94e: 0x4000, 0x94f: 0x4000, 0x950: 0x4000, 0x951: 0x4000, -+ 0x952: 0x4000, 0x953: 0x4000, -+ 0x960: 0x2000, 0x961: 0x2000, 0x963: 0x2000, -+ 0x964: 0x2000, 0x965: 0x2000, 0x967: 0x2000, 0x968: 0x2000, 0x969: 0x2000, -+ 0x96a: 0x2000, 0x96c: 0x2000, 0x96d: 0x2000, 0x96f: 0x2000, -+ 0x97f: 0x4000, -+ // Block 0x26, offset 0x980 -+ 0x993: 0x4000, -+ 0x99e: 0x2000, 0x99f: 0x2000, 0x9a1: 0x4000, -+ 0x9aa: 0x4000, 0x9ab: 0x4000, -+ 0x9bd: 0x4000, 0x9be: 0x4000, 0x9bf: 0x2000, -+ // Block 0x27, offset 0x9c0 -+ 0x9c4: 0x4000, 0x9c5: 0x4000, -+ 0x9c6: 0x2000, 0x9c7: 0x2000, 0x9c8: 0x2000, 0x9c9: 0x2000, 0x9ca: 0x2000, 0x9cb: 0x2000, -+ 0x9cc: 0x2000, 0x9cd: 0x2000, 0x9ce: 0x4000, 0x9cf: 0x2000, 0x9d0: 0x2000, 0x9d1: 0x2000, -+ 0x9d2: 0x2000, 0x9d3: 0x2000, 0x9d4: 0x4000, 0x9d5: 0x2000, 0x9d6: 0x2000, 0x9d7: 0x2000, -+ 0x9d8: 0x2000, 0x9d9: 0x2000, 0x9da: 0x2000, 0x9db: 0x2000, 0x9dc: 0x2000, 0x9dd: 0x2000, -+ 0x9de: 0x2000, 0x9df: 0x2000, 0x9e0: 0x2000, 0x9e1: 0x2000, 0x9e3: 0x2000, -+ 0x9e8: 0x2000, 0x9e9: 0x2000, -+ 0x9ea: 0x4000, 0x9eb: 0x2000, 0x9ec: 0x2000, 0x9ed: 0x2000, 0x9ee: 0x2000, 0x9ef: 0x2000, -+ 0x9f0: 0x2000, 0x9f1: 0x2000, 0x9f2: 0x4000, 0x9f3: 0x4000, 0x9f4: 0x2000, 0x9f5: 0x4000, -+ 0x9f6: 0x2000, 0x9f7: 0x2000, 0x9f8: 0x2000, 0x9f9: 0x2000, 0x9fa: 0x4000, 0x9fb: 0x2000, -+ 0x9fc: 0x2000, 0x9fd: 0x4000, 0x9fe: 0x2000, 0x9ff: 0x2000, -+ // Block 0x28, offset 0xa00 -+ 0xa05: 0x4000, -+ 0xa0a: 0x4000, 0xa0b: 0x4000, -+ 0xa28: 0x4000, -+ 0xa3d: 0x2000, -+ // Block 0x29, offset 0xa40 -+ 0xa4c: 0x4000, 0xa4e: 0x4000, -+ 0xa53: 0x4000, 0xa54: 0x4000, 0xa55: 0x4000, 0xa57: 0x4000, -+ 0xa76: 0x2000, 0xa77: 0x2000, 0xa78: 0x2000, 0xa79: 0x2000, 0xa7a: 0x2000, 0xa7b: 0x2000, -+ 0xa7c: 0x2000, 0xa7d: 0x2000, 0xa7e: 0x2000, 0xa7f: 0x2000, -+ // Block 0x2a, offset 0xa80 -+ 0xa95: 0x4000, 0xa96: 0x4000, 0xa97: 0x4000, -+ 0xab0: 0x4000, -+ 0xabf: 0x4000, -+ // Block 0x2b, offset 0xac0 -+ 0xae6: 0x6000, 0xae7: 0x6000, 0xae8: 0x6000, 0xae9: 0x6000, -+ 0xaea: 0x6000, 0xaeb: 0x6000, 0xaec: 0x6000, 0xaed: 0x6000, -+ // Block 0x2c, offset 0xb00 -+ 0xb05: 0x6010, -+ 0xb06: 0x6011, -+ // Block 0x2d, offset 0xb40 -+ 0xb5b: 0x4000, 0xb5c: 0x4000, -+ // Block 0x2e, offset 0xb80 -+ 0xb90: 0x4000, -+ 0xb95: 0x4000, 0xb96: 0x2000, 0xb97: 0x2000, -+ 0xb98: 0x2000, 0xb99: 0x2000, -+ // Block 0x2f, offset 0xbc0 -+ 0xbc0: 0x4000, 0xbc1: 0x4000, 0xbc2: 0x4000, 0xbc3: 0x4000, 0xbc4: 0x4000, 0xbc5: 0x4000, -+ 0xbc6: 0x4000, 0xbc7: 0x4000, 0xbc8: 0x4000, 0xbc9: 0x4000, 0xbca: 0x4000, 0xbcb: 0x4000, -+ 0xbcc: 0x4000, 0xbcd: 0x4000, 0xbce: 0x4000, 0xbcf: 0x4000, 0xbd0: 0x4000, 0xbd1: 0x4000, -+ 0xbd2: 0x4000, 0xbd3: 0x4000, 0xbd4: 0x4000, 0xbd5: 0x4000, 0xbd6: 0x4000, 0xbd7: 0x4000, -+ 0xbd8: 0x4000, 0xbd9: 0x4000, 0xbdb: 0x4000, 0xbdc: 0x4000, 0xbdd: 0x4000, -+ 0xbde: 0x4000, 0xbdf: 0x4000, 0xbe0: 0x4000, 0xbe1: 0x4000, 0xbe2: 0x4000, 0xbe3: 0x4000, -+ 0xbe4: 0x4000, 0xbe5: 0x4000, 0xbe6: 0x4000, 0xbe7: 0x4000, 0xbe8: 0x4000, 0xbe9: 0x4000, -+ 0xbea: 0x4000, 0xbeb: 0x4000, 0xbec: 0x4000, 0xbed: 0x4000, 0xbee: 0x4000, 0xbef: 0x4000, -+ 0xbf0: 0x4000, 0xbf1: 0x4000, 0xbf2: 0x4000, 0xbf3: 0x4000, 0xbf4: 0x4000, 0xbf5: 0x4000, -+ 0xbf6: 0x4000, 0xbf7: 0x4000, 0xbf8: 0x4000, 0xbf9: 0x4000, 0xbfa: 0x4000, 0xbfb: 0x4000, -+ 0xbfc: 0x4000, 0xbfd: 0x4000, 0xbfe: 0x4000, 0xbff: 0x4000, -+ // Block 0x30, offset 0xc00 -+ 0xc00: 0x4000, 0xc01: 0x4000, 0xc02: 0x4000, 0xc03: 0x4000, 0xc04: 0x4000, 0xc05: 0x4000, -+ 0xc06: 0x4000, 0xc07: 0x4000, 0xc08: 0x4000, 0xc09: 0x4000, 0xc0a: 0x4000, 0xc0b: 0x4000, -+ 0xc0c: 0x4000, 0xc0d: 0x4000, 0xc0e: 0x4000, 0xc0f: 0x4000, 0xc10: 0x4000, 0xc11: 0x4000, -+ 0xc12: 0x4000, 0xc13: 0x4000, 0xc14: 0x4000, 0xc15: 0x4000, 0xc16: 0x4000, 0xc17: 0x4000, -+ 0xc18: 0x4000, 0xc19: 0x4000, 0xc1a: 0x4000, 0xc1b: 0x4000, 0xc1c: 0x4000, 0xc1d: 0x4000, -+ 0xc1e: 0x4000, 0xc1f: 0x4000, 0xc20: 0x4000, 0xc21: 0x4000, 0xc22: 0x4000, 0xc23: 0x4000, -+ 0xc24: 0x4000, 0xc25: 0x4000, 0xc26: 0x4000, 0xc27: 0x4000, 0xc28: 0x4000, 0xc29: 0x4000, -+ 0xc2a: 0x4000, 0xc2b: 0x4000, 0xc2c: 0x4000, 0xc2d: 0x4000, 0xc2e: 0x4000, 0xc2f: 0x4000, -+ 0xc30: 0x4000, 0xc31: 0x4000, 0xc32: 0x4000, 0xc33: 0x4000, -+ // Block 0x31, offset 0xc40 -+ 0xc40: 0x4000, 0xc41: 0x4000, 0xc42: 0x4000, 0xc43: 0x4000, 0xc44: 0x4000, 0xc45: 0x4000, -+ 0xc46: 0x4000, 0xc47: 0x4000, 0xc48: 0x4000, 0xc49: 0x4000, 0xc4a: 0x4000, 0xc4b: 0x4000, -+ 0xc4c: 0x4000, 0xc4d: 0x4000, 0xc4e: 0x4000, 0xc4f: 0x4000, 0xc50: 0x4000, 0xc51: 0x4000, -+ 0xc52: 0x4000, 0xc53: 0x4000, 0xc54: 0x4000, 0xc55: 0x4000, -+ 0xc70: 0x4000, 0xc71: 0x4000, 0xc72: 0x4000, 0xc73: 0x4000, 0xc74: 0x4000, 0xc75: 0x4000, -+ 0xc76: 0x4000, 0xc77: 0x4000, 0xc78: 0x4000, 0xc79: 0x4000, 0xc7a: 0x4000, 0xc7b: 0x4000, -+ // Block 0x32, offset 0xc80 -+ 0xc80: 0x9012, 0xc81: 0x4013, 0xc82: 0x4014, 0xc83: 0x4000, 0xc84: 0x4000, 0xc85: 0x4000, -+ 0xc86: 0x4000, 0xc87: 0x4000, 0xc88: 0x4000, 0xc89: 0x4000, 0xc8a: 0x4000, 0xc8b: 0x4000, -+ 0xc8c: 0x4015, 0xc8d: 0x4015, 0xc8e: 0x4000, 0xc8f: 0x4000, 0xc90: 0x4000, 0xc91: 0x4000, -+ 0xc92: 0x4000, 0xc93: 0x4000, 0xc94: 0x4000, 0xc95: 0x4000, 0xc96: 0x4000, 0xc97: 0x4000, -+ 0xc98: 0x4000, 0xc99: 0x4000, 0xc9a: 0x4000, 0xc9b: 0x4000, 0xc9c: 0x4000, 0xc9d: 0x4000, -+ 0xc9e: 0x4000, 0xc9f: 0x4000, 0xca0: 0x4000, 0xca1: 0x4000, 0xca2: 0x4000, 0xca3: 0x4000, -+ 0xca4: 0x4000, 0xca5: 0x4000, 0xca6: 0x4000, 0xca7: 0x4000, 0xca8: 0x4000, 0xca9: 0x4000, -+ 0xcaa: 0x4000, 0xcab: 0x4000, 0xcac: 0x4000, 0xcad: 0x4000, 0xcae: 0x4000, 0xcaf: 0x4000, -+ 0xcb0: 0x4000, 0xcb1: 0x4000, 0xcb2: 0x4000, 0xcb3: 0x4000, 0xcb4: 0x4000, 0xcb5: 0x4000, -+ 0xcb6: 0x4000, 0xcb7: 0x4000, 0xcb8: 0x4000, 0xcb9: 0x4000, 0xcba: 0x4000, 0xcbb: 0x4000, -+ 0xcbc: 0x4000, 0xcbd: 0x4000, 0xcbe: 0x4000, -+ // Block 0x33, offset 0xcc0 -+ 0xcc1: 0x4000, 0xcc2: 0x4000, 0xcc3: 0x4000, 0xcc4: 0x4000, 0xcc5: 0x4000, -+ 0xcc6: 0x4000, 0xcc7: 0x4000, 0xcc8: 0x4000, 0xcc9: 0x4000, 0xcca: 0x4000, 0xccb: 0x4000, -+ 0xccc: 0x4000, 0xccd: 0x4000, 0xcce: 0x4000, 0xccf: 0x4000, 0xcd0: 0x4000, 0xcd1: 0x4000, -+ 0xcd2: 0x4000, 0xcd3: 0x4000, 0xcd4: 0x4000, 0xcd5: 0x4000, 0xcd6: 0x4000, 0xcd7: 0x4000, -+ 0xcd8: 0x4000, 0xcd9: 0x4000, 0xcda: 0x4000, 0xcdb: 0x4000, 0xcdc: 0x4000, 0xcdd: 0x4000, -+ 0xcde: 0x4000, 0xcdf: 0x4000, 0xce0: 0x4000, 0xce1: 0x4000, 0xce2: 0x4000, 0xce3: 0x4000, -+ 0xce4: 0x4000, 0xce5: 0x4000, 0xce6: 0x4000, 0xce7: 0x4000, 0xce8: 0x4000, 0xce9: 0x4000, -+ 0xcea: 0x4000, 0xceb: 0x4000, 0xcec: 0x4000, 0xced: 0x4000, 0xcee: 0x4000, 0xcef: 0x4000, -+ 0xcf0: 0x4000, 0xcf1: 0x4000, 0xcf2: 0x4000, 0xcf3: 0x4000, 0xcf4: 0x4000, 0xcf5: 0x4000, -+ 0xcf6: 0x4000, 0xcf7: 0x4000, 0xcf8: 0x4000, 0xcf9: 0x4000, 0xcfa: 0x4000, 0xcfb: 0x4000, -+ 0xcfc: 0x4000, 0xcfd: 0x4000, 0xcfe: 0x4000, 0xcff: 0x4000, -+ // Block 0x34, offset 0xd00 -+ 0xd00: 0x4000, 0xd01: 0x4000, 0xd02: 0x4000, 0xd03: 0x4000, 0xd04: 0x4000, 0xd05: 0x4000, -+ 0xd06: 0x4000, 0xd07: 0x4000, 0xd08: 0x4000, 0xd09: 0x4000, 0xd0a: 0x4000, 0xd0b: 0x4000, -+ 0xd0c: 0x4000, 0xd0d: 0x4000, 0xd0e: 0x4000, 0xd0f: 0x4000, 0xd10: 0x4000, 0xd11: 0x4000, -+ 0xd12: 0x4000, 0xd13: 0x4000, 0xd14: 0x4000, 0xd15: 0x4000, 0xd16: 0x4000, -+ 0xd19: 0x4016, 0xd1a: 0x4017, 0xd1b: 0x4000, 0xd1c: 0x4000, 0xd1d: 0x4000, -+ 0xd1e: 0x4000, 0xd1f: 0x4000, 0xd20: 0x4000, 0xd21: 0x4018, 0xd22: 0x4019, 0xd23: 0x401a, -+ 0xd24: 0x401b, 0xd25: 0x401c, 0xd26: 0x401d, 0xd27: 0x401e, 0xd28: 0x401f, 0xd29: 0x4020, -+ 0xd2a: 0x4021, 0xd2b: 0x4022, 0xd2c: 0x4000, 0xd2d: 0x4010, 0xd2e: 0x4000, 0xd2f: 0x4023, -+ 0xd30: 0x4000, 0xd31: 0x4024, 0xd32: 0x4000, 0xd33: 0x4025, 0xd34: 0x4000, 0xd35: 0x4026, -+ 0xd36: 0x4000, 0xd37: 0x401a, 0xd38: 0x4000, 0xd39: 0x4027, 0xd3a: 0x4000, 0xd3b: 0x4028, -+ 0xd3c: 0x4000, 0xd3d: 0x4020, 0xd3e: 0x4000, 0xd3f: 0x4029, -+ // Block 0x35, offset 0xd40 -+ 0xd40: 0x4000, 0xd41: 0x402a, 0xd42: 0x4000, 0xd43: 0x402b, 0xd44: 0x402c, 0xd45: 0x4000, -+ 0xd46: 0x4017, 0xd47: 0x4000, 0xd48: 0x402d, 0xd49: 0x4000, 0xd4a: 0x402e, 0xd4b: 0x402f, -+ 0xd4c: 0x4030, 0xd4d: 0x4017, 0xd4e: 0x4016, 0xd4f: 0x4017, 0xd50: 0x4000, 0xd51: 0x4000, -+ 0xd52: 0x4031, 0xd53: 0x4000, 0xd54: 0x4000, 0xd55: 0x4031, 0xd56: 0x4000, 0xd57: 0x4000, -+ 0xd58: 0x4032, 0xd59: 0x4000, 0xd5a: 0x4000, 0xd5b: 0x4032, 0xd5c: 0x4000, 0xd5d: 0x4000, -+ 0xd5e: 0x4033, 0xd5f: 0x402e, 0xd60: 0x4034, 0xd61: 0x4035, 0xd62: 0x4034, 0xd63: 0x4036, -+ 0xd64: 0x4037, 0xd65: 0x4024, 0xd66: 0x4035, 0xd67: 0x4025, 0xd68: 0x4038, 0xd69: 0x4038, -+ 0xd6a: 0x4039, 0xd6b: 0x4039, 0xd6c: 0x403a, 0xd6d: 0x403a, 0xd6e: 0x4000, 0xd6f: 0x4035, -+ 0xd70: 0x4000, 0xd71: 0x4000, 0xd72: 0x403b, 0xd73: 0x403c, 0xd74: 0x4000, 0xd75: 0x4000, -+ 0xd76: 0x4000, 0xd77: 0x4000, 0xd78: 0x4000, 0xd79: 0x4000, 0xd7a: 0x4000, 0xd7b: 0x403d, -+ 0xd7c: 0x401c, 0xd7d: 0x4000, 0xd7e: 0x4000, 0xd7f: 0x4000, -+ // Block 0x36, offset 0xd80 -+ 0xd85: 0x4000, -+ 0xd86: 0x4000, 0xd87: 0x4000, 0xd88: 0x4000, 0xd89: 0x4000, 0xd8a: 0x4000, 0xd8b: 0x4000, -+ 0xd8c: 0x4000, 0xd8d: 0x4000, 0xd8e: 0x4000, 0xd8f: 0x4000, 0xd90: 0x4000, 0xd91: 0x4000, -+ 0xd92: 0x4000, 0xd93: 0x4000, 0xd94: 0x4000, 0xd95: 0x4000, 0xd96: 0x4000, 0xd97: 0x4000, -+ 0xd98: 0x4000, 0xd99: 0x4000, 0xd9a: 0x4000, 0xd9b: 0x4000, 0xd9c: 0x4000, 0xd9d: 0x4000, -+ 0xd9e: 0x4000, 0xd9f: 0x4000, 0xda0: 0x4000, 0xda1: 0x4000, 0xda2: 0x4000, 0xda3: 0x4000, -+ 0xda4: 0x4000, 0xda5: 0x4000, 0xda6: 0x4000, 0xda7: 0x4000, 0xda8: 0x4000, 0xda9: 0x4000, -+ 0xdaa: 0x4000, 0xdab: 0x4000, 0xdac: 0x4000, 0xdad: 0x4000, 0xdae: 0x4000, 0xdaf: 0x4000, -+ 0xdb1: 0x403e, 0xdb2: 0x403e, 0xdb3: 0x403e, 0xdb4: 0x403e, 0xdb5: 0x403e, -+ 0xdb6: 0x403e, 0xdb7: 0x403e, 0xdb8: 0x403e, 0xdb9: 0x403e, 0xdba: 0x403e, 0xdbb: 0x403e, -+ 0xdbc: 0x403e, 0xdbd: 0x403e, 0xdbe: 0x403e, 0xdbf: 0x403e, -+ // Block 0x37, offset 0xdc0 -+ 0xdc0: 0x4037, 0xdc1: 0x4037, 0xdc2: 0x4037, 0xdc3: 0x4037, 0xdc4: 0x4037, 0xdc5: 0x4037, -+ 0xdc6: 0x4037, 0xdc7: 0x4037, 0xdc8: 0x4037, 0xdc9: 0x4037, 0xdca: 0x4037, 0xdcb: 0x4037, -+ 0xdcc: 0x4037, 0xdcd: 0x4037, 0xdce: 0x4037, 0xdcf: 0x400e, 0xdd0: 0x403f, 0xdd1: 0x4040, -+ 0xdd2: 0x4041, 0xdd3: 0x4040, 0xdd4: 0x403f, 0xdd5: 0x4042, 0xdd6: 0x4043, 0xdd7: 0x4044, -+ 0xdd8: 0x4040, 0xdd9: 0x4041, 0xdda: 0x4040, 0xddb: 0x4045, 0xddc: 0x4009, 0xddd: 0x4045, -+ 0xdde: 0x4046, 0xddf: 0x4045, 0xde0: 0x4047, 0xde1: 0x400b, 0xde2: 0x400a, 0xde3: 0x400c, -+ 0xde4: 0x4048, 0xde5: 0x4000, 0xde6: 0x4000, 0xde7: 0x4000, 0xde8: 0x4000, 0xde9: 0x4000, -+ 0xdea: 0x4000, 0xdeb: 0x4000, 0xdec: 0x4000, 0xded: 0x4000, 0xdee: 0x4000, 0xdef: 0x4000, -+ 0xdf0: 0x4000, 0xdf1: 0x4000, 0xdf2: 0x4000, 0xdf3: 0x4000, 0xdf4: 0x4000, 0xdf5: 0x4000, -+ 0xdf6: 0x4000, 0xdf7: 0x4000, 0xdf8: 0x4000, 0xdf9: 0x4000, 0xdfa: 0x4000, 0xdfb: 0x4000, -+ 0xdfc: 0x4000, 0xdfd: 0x4000, 0xdfe: 0x4000, 0xdff: 0x4000, -+ // Block 0x38, offset 0xe00 -+ 0xe00: 0x4000, 0xe01: 0x4000, 0xe02: 0x4000, 0xe03: 0x4000, 0xe04: 0x4000, 0xe05: 0x4000, -+ 0xe06: 0x4000, 0xe07: 0x4000, 0xe08: 0x4000, 0xe09: 0x4000, 0xe0a: 0x4000, 0xe0b: 0x4000, -+ 0xe0c: 0x4000, 0xe0d: 0x4000, 0xe0e: 0x4000, 0xe10: 0x4000, 0xe11: 0x4000, -+ 0xe12: 0x4000, 0xe13: 0x4000, 0xe14: 0x4000, 0xe15: 0x4000, 0xe16: 0x4000, 0xe17: 0x4000, -+ 0xe18: 0x4000, 0xe19: 0x4000, 0xe1a: 0x4000, 0xe1b: 0x4000, 0xe1c: 0x4000, 0xe1d: 0x4000, -+ 0xe1e: 0x4000, 0xe1f: 0x4000, 0xe20: 0x4000, 0xe21: 0x4000, 0xe22: 0x4000, 0xe23: 0x4000, -+ 0xe24: 0x4000, 0xe25: 0x4000, 0xe26: 0x4000, 0xe27: 0x4000, 0xe28: 0x4000, 0xe29: 0x4000, -+ 0xe2a: 0x4000, 0xe2b: 0x4000, 0xe2c: 0x4000, 0xe2d: 0x4000, 0xe2e: 0x4000, 0xe2f: 0x4000, -+ 0xe30: 0x4000, 0xe31: 0x4000, 0xe32: 0x4000, 0xe33: 0x4000, 0xe34: 0x4000, 0xe35: 0x4000, -+ 0xe36: 0x4000, 0xe37: 0x4000, 0xe38: 0x4000, 0xe39: 0x4000, 0xe3a: 0x4000, 0xe3b: 0x4000, -+ 0xe3c: 0x4000, 0xe3d: 0x4000, 0xe3e: 0x4000, 0xe3f: 0x4000, -+ // Block 0x39, offset 0xe40 -+ 0xe40: 0x4000, 0xe41: 0x4000, 0xe42: 0x4000, 0xe43: 0x4000, 0xe44: 0x4000, 0xe45: 0x4000, -+ 0xe46: 0x4000, 0xe47: 0x4000, 0xe48: 0x4000, 0xe49: 0x4000, 0xe4a: 0x4000, 0xe4b: 0x4000, -+ 0xe4c: 0x4000, 0xe4d: 0x4000, 0xe4e: 0x4000, 0xe4f: 0x4000, 0xe50: 0x4000, 0xe51: 0x4000, -+ 0xe52: 0x4000, 0xe53: 0x4000, 0xe54: 0x4000, 0xe55: 0x4000, 0xe56: 0x4000, 0xe57: 0x4000, -+ 0xe58: 0x4000, 0xe59: 0x4000, 0xe5a: 0x4000, 0xe5b: 0x4000, 0xe5c: 0x4000, 0xe5d: 0x4000, -+ 0xe5e: 0x4000, 0xe5f: 0x4000, 0xe60: 0x4000, 0xe61: 0x4000, 0xe62: 0x4000, 0xe63: 0x4000, -+ 0xe70: 0x4000, 0xe71: 0x4000, 0xe72: 0x4000, 0xe73: 0x4000, 0xe74: 0x4000, 0xe75: 0x4000, -+ 0xe76: 0x4000, 0xe77: 0x4000, 0xe78: 0x4000, 0xe79: 0x4000, 0xe7a: 0x4000, 0xe7b: 0x4000, -+ 0xe7c: 0x4000, 0xe7d: 0x4000, 0xe7e: 0x4000, 0xe7f: 0x4000, -+ // Block 0x3a, offset 0xe80 -+ 0xe80: 0x4000, 0xe81: 0x4000, 0xe82: 0x4000, 0xe83: 0x4000, 0xe84: 0x4000, 0xe85: 0x4000, -+ 0xe86: 0x4000, 0xe87: 0x4000, 0xe88: 0x4000, 0xe89: 0x4000, 0xe8a: 0x4000, 0xe8b: 0x4000, -+ 0xe8c: 0x4000, 0xe8d: 0x4000, 0xe8e: 0x4000, 0xe8f: 0x4000, 0xe90: 0x4000, 0xe91: 0x4000, -+ 0xe92: 0x4000, 0xe93: 0x4000, 0xe94: 0x4000, 0xe95: 0x4000, 0xe96: 0x4000, 0xe97: 0x4000, -+ 0xe98: 0x4000, 0xe99: 0x4000, 0xe9a: 0x4000, 0xe9b: 0x4000, 0xe9c: 0x4000, 0xe9d: 0x4000, -+ 0xe9e: 0x4000, 0xea0: 0x4000, 0xea1: 0x4000, 0xea2: 0x4000, 0xea3: 0x4000, -+ 0xea4: 0x4000, 0xea5: 0x4000, 0xea6: 0x4000, 0xea7: 0x4000, 0xea8: 0x4000, 0xea9: 0x4000, -+ 0xeaa: 0x4000, 0xeab: 0x4000, 0xeac: 0x4000, 0xead: 0x4000, 0xeae: 0x4000, 0xeaf: 0x4000, -+ 0xeb0: 0x4000, 0xeb1: 0x4000, 0xeb2: 0x4000, 0xeb3: 0x4000, 0xeb4: 0x4000, 0xeb5: 0x4000, -+ 0xeb6: 0x4000, 0xeb7: 0x4000, 0xeb8: 0x4000, 0xeb9: 0x4000, 0xeba: 0x4000, 0xebb: 0x4000, -+ 0xebc: 0x4000, 0xebd: 0x4000, 0xebe: 0x4000, 0xebf: 0x4000, -+ // Block 0x3b, offset 0xec0 -+ 0xec0: 0x4000, 0xec1: 0x4000, 0xec2: 0x4000, 0xec3: 0x4000, 0xec4: 0x4000, 0xec5: 0x4000, -+ 0xec6: 0x4000, 0xec7: 0x4000, 0xec8: 0x2000, 0xec9: 0x2000, 0xeca: 0x2000, 0xecb: 0x2000, -+ 0xecc: 0x2000, 0xecd: 0x2000, 0xece: 0x2000, 0xecf: 0x2000, 0xed0: 0x4000, 0xed1: 0x4000, -+ 0xed2: 0x4000, 0xed3: 0x4000, 0xed4: 0x4000, 0xed5: 0x4000, 0xed6: 0x4000, 0xed7: 0x4000, -+ 0xed8: 0x4000, 0xed9: 0x4000, 0xeda: 0x4000, 0xedb: 0x4000, 0xedc: 0x4000, 0xedd: 0x4000, -+ 0xede: 0x4000, 0xedf: 0x4000, 0xee0: 0x4000, 0xee1: 0x4000, 0xee2: 0x4000, 0xee3: 0x4000, -+ 0xee4: 0x4000, 0xee5: 0x4000, 0xee6: 0x4000, 0xee7: 0x4000, 0xee8: 0x4000, 0xee9: 0x4000, -+ 0xeea: 0x4000, 0xeeb: 0x4000, 0xeec: 0x4000, 0xeed: 0x4000, 0xeee: 0x4000, 0xeef: 0x4000, -+ 0xef0: 0x4000, 0xef1: 0x4000, 0xef2: 0x4000, 0xef3: 0x4000, 0xef4: 0x4000, 0xef5: 0x4000, -+ 0xef6: 0x4000, 0xef7: 0x4000, 0xef8: 0x4000, 0xef9: 0x4000, 0xefa: 0x4000, 0xefb: 0x4000, -+ 0xefc: 0x4000, 0xefd: 0x4000, 0xefe: 0x4000, 0xeff: 0x4000, -+ // Block 0x3c, offset 0xf00 -+ 0xf00: 0x4000, 0xf01: 0x4000, 0xf02: 0x4000, 0xf03: 0x4000, 0xf04: 0x4000, 0xf05: 0x4000, -+ 0xf06: 0x4000, 0xf07: 0x4000, 0xf08: 0x4000, 0xf09: 0x4000, 0xf0a: 0x4000, 0xf0b: 0x4000, -+ 0xf0c: 0x4000, 0xf10: 0x4000, 0xf11: 0x4000, -+ 0xf12: 0x4000, 0xf13: 0x4000, 0xf14: 0x4000, 0xf15: 0x4000, 0xf16: 0x4000, 0xf17: 0x4000, -+ 0xf18: 0x4000, 0xf19: 0x4000, 0xf1a: 0x4000, 0xf1b: 0x4000, 0xf1c: 0x4000, 0xf1d: 0x4000, -+ 0xf1e: 0x4000, 0xf1f: 0x4000, 0xf20: 0x4000, 0xf21: 0x4000, 0xf22: 0x4000, 0xf23: 0x4000, -+ 0xf24: 0x4000, 0xf25: 0x4000, 0xf26: 0x4000, 0xf27: 0x4000, 0xf28: 0x4000, 0xf29: 0x4000, -+ 0xf2a: 0x4000, 0xf2b: 0x4000, 0xf2c: 0x4000, 0xf2d: 0x4000, 0xf2e: 0x4000, 0xf2f: 0x4000, -+ 0xf30: 0x4000, 0xf31: 0x4000, 0xf32: 0x4000, 0xf33: 0x4000, 0xf34: 0x4000, 0xf35: 0x4000, -+ 0xf36: 0x4000, 0xf37: 0x4000, 0xf38: 0x4000, 0xf39: 0x4000, 0xf3a: 0x4000, 0xf3b: 0x4000, -+ 0xf3c: 0x4000, 0xf3d: 0x4000, 0xf3e: 0x4000, 0xf3f: 0x4000, -+ // Block 0x3d, offset 0xf40 -+ 0xf40: 0x4000, 0xf41: 0x4000, 0xf42: 0x4000, 0xf43: 0x4000, 0xf44: 0x4000, 0xf45: 0x4000, -+ 0xf46: 0x4000, -+ // Block 0x3e, offset 0xf80 -+ 0xfa0: 0x4000, 0xfa1: 0x4000, 0xfa2: 0x4000, 0xfa3: 0x4000, -+ 0xfa4: 0x4000, 0xfa5: 0x4000, 0xfa6: 0x4000, 0xfa7: 0x4000, 0xfa8: 0x4000, 0xfa9: 0x4000, -+ 0xfaa: 0x4000, 0xfab: 0x4000, 0xfac: 0x4000, 0xfad: 0x4000, 0xfae: 0x4000, 0xfaf: 0x4000, -+ 0xfb0: 0x4000, 0xfb1: 0x4000, 0xfb2: 0x4000, 0xfb3: 0x4000, 0xfb4: 0x4000, 0xfb5: 0x4000, -+ 0xfb6: 0x4000, 0xfb7: 0x4000, 0xfb8: 0x4000, 0xfb9: 0x4000, 0xfba: 0x4000, 0xfbb: 0x4000, -+ 0xfbc: 0x4000, -+ // Block 0x3f, offset 0xfc0 -+ 0xfc0: 0x4000, 0xfc1: 0x4000, 0xfc2: 0x4000, 0xfc3: 0x4000, 0xfc4: 0x4000, 0xfc5: 0x4000, -+ 0xfc6: 0x4000, 0xfc7: 0x4000, 0xfc8: 0x4000, 0xfc9: 0x4000, 0xfca: 0x4000, 0xfcb: 0x4000, -+ 0xfcc: 0x4000, 0xfcd: 0x4000, 0xfce: 0x4000, 0xfcf: 0x4000, 0xfd0: 0x4000, 0xfd1: 0x4000, -+ 0xfd2: 0x4000, 0xfd3: 0x4000, 0xfd4: 0x4000, 0xfd5: 0x4000, 0xfd6: 0x4000, 0xfd7: 0x4000, -+ 0xfd8: 0x4000, 0xfd9: 0x4000, 0xfda: 0x4000, 0xfdb: 0x4000, 0xfdc: 0x4000, 0xfdd: 0x4000, -+ 0xfde: 0x4000, 0xfdf: 0x4000, 0xfe0: 0x4000, 0xfe1: 0x4000, 0xfe2: 0x4000, 0xfe3: 0x4000, -+ // Block 0x40, offset 0x1000 -+ 0x1000: 0x2000, 0x1001: 0x2000, 0x1002: 0x2000, 0x1003: 0x2000, 0x1004: 0x2000, 0x1005: 0x2000, -+ 0x1006: 0x2000, 0x1007: 0x2000, 0x1008: 0x2000, 0x1009: 0x2000, 0x100a: 0x2000, 0x100b: 0x2000, -+ 0x100c: 0x2000, 0x100d: 0x2000, 0x100e: 0x2000, 0x100f: 0x2000, 0x1010: 0x4000, 0x1011: 0x4000, -+ 0x1012: 0x4000, 0x1013: 0x4000, 0x1014: 0x4000, 0x1015: 0x4000, 0x1016: 0x4000, 0x1017: 0x4000, -+ 0x1018: 0x4000, 0x1019: 0x4000, -+ 0x1030: 0x4000, 0x1031: 0x4000, 0x1032: 0x4000, 0x1033: 0x4000, 0x1034: 0x4000, 0x1035: 0x4000, -+ 0x1036: 0x4000, 0x1037: 0x4000, 0x1038: 0x4000, 0x1039: 0x4000, 0x103a: 0x4000, 0x103b: 0x4000, -+ 0x103c: 0x4000, 0x103d: 0x4000, 0x103e: 0x4000, 0x103f: 0x4000, -+ // Block 0x41, offset 0x1040 -+ 0x1040: 0x4000, 0x1041: 0x4000, 0x1042: 0x4000, 0x1043: 0x4000, 0x1044: 0x4000, 0x1045: 0x4000, -+ 0x1046: 0x4000, 0x1047: 0x4000, 0x1048: 0x4000, 0x1049: 0x4000, 0x104a: 0x4000, 0x104b: 0x4000, -+ 0x104c: 0x4000, 0x104d: 0x4000, 0x104e: 0x4000, 0x104f: 0x4000, 0x1050: 0x4000, 0x1051: 0x4000, -+ 0x1052: 0x4000, 0x1054: 0x4000, 0x1055: 0x4000, 0x1056: 0x4000, 0x1057: 0x4000, -+ 0x1058: 0x4000, 0x1059: 0x4000, 0x105a: 0x4000, 0x105b: 0x4000, 0x105c: 0x4000, 0x105d: 0x4000, -+ 0x105e: 0x4000, 0x105f: 0x4000, 0x1060: 0x4000, 0x1061: 0x4000, 0x1062: 0x4000, 0x1063: 0x4000, -+ 0x1064: 0x4000, 0x1065: 0x4000, 0x1066: 0x4000, 0x1068: 0x4000, 0x1069: 0x4000, -+ 0x106a: 0x4000, 0x106b: 0x4000, -+ // Block 0x42, offset 0x1080 -+ 0x1081: 0x9012, 0x1082: 0x9012, 0x1083: 0x9012, 0x1084: 0x9012, 0x1085: 0x9012, -+ 0x1086: 0x9012, 0x1087: 0x9012, 0x1088: 0x9012, 0x1089: 0x9012, 0x108a: 0x9012, 0x108b: 0x9012, -+ 0x108c: 0x9012, 0x108d: 0x9012, 0x108e: 0x9012, 0x108f: 0x9012, 0x1090: 0x9012, 0x1091: 0x9012, -+ 0x1092: 0x9012, 0x1093: 0x9012, 0x1094: 0x9012, 0x1095: 0x9012, 0x1096: 0x9012, 0x1097: 0x9012, -+ 0x1098: 0x9012, 0x1099: 0x9012, 0x109a: 0x9012, 0x109b: 0x9012, 0x109c: 0x9012, 0x109d: 0x9012, -+ 0x109e: 0x9012, 0x109f: 0x9012, 0x10a0: 0x9049, 0x10a1: 0x9049, 0x10a2: 0x9049, 0x10a3: 0x9049, -+ 0x10a4: 0x9049, 0x10a5: 0x9049, 0x10a6: 0x9049, 0x10a7: 0x9049, 0x10a8: 0x9049, 0x10a9: 0x9049, -+ 0x10aa: 0x9049, 0x10ab: 0x9049, 0x10ac: 0x9049, 0x10ad: 0x9049, 0x10ae: 0x9049, 0x10af: 0x9049, -+ 0x10b0: 0x9049, 0x10b1: 0x9049, 0x10b2: 0x9049, 0x10b3: 0x9049, 0x10b4: 0x9049, 0x10b5: 0x9049, -+ 0x10b6: 0x9049, 0x10b7: 0x9049, 0x10b8: 0x9049, 0x10b9: 0x9049, 0x10ba: 0x9049, 0x10bb: 0x9049, -+ 0x10bc: 0x9049, 0x10bd: 0x9049, 0x10be: 0x9049, 0x10bf: 0x9049, -+ // Block 0x43, offset 0x10c0 -+ 0x10c0: 0x9049, 0x10c1: 0x9049, 0x10c2: 0x9049, 0x10c3: 0x9049, 0x10c4: 0x9049, 0x10c5: 0x9049, -+ 0x10c6: 0x9049, 0x10c7: 0x9049, 0x10c8: 0x9049, 0x10c9: 0x9049, 0x10ca: 0x9049, 0x10cb: 0x9049, -+ 0x10cc: 0x9049, 0x10cd: 0x9049, 0x10ce: 0x9049, 0x10cf: 0x9049, 0x10d0: 0x9049, 0x10d1: 0x9049, -+ 0x10d2: 0x9049, 0x10d3: 0x9049, 0x10d4: 0x9049, 0x10d5: 0x9049, 0x10d6: 0x9049, 0x10d7: 0x9049, -+ 0x10d8: 0x9049, 0x10d9: 0x9049, 0x10da: 0x9049, 0x10db: 0x9049, 0x10dc: 0x9049, 0x10dd: 0x9049, -+ 0x10de: 0x9049, 0x10df: 0x904a, 0x10e0: 0x904b, 0x10e1: 0xb04c, 0x10e2: 0xb04d, 0x10e3: 0xb04d, -+ 0x10e4: 0xb04e, 0x10e5: 0xb04f, 0x10e6: 0xb050, 0x10e7: 0xb051, 0x10e8: 0xb052, 0x10e9: 0xb053, -+ 0x10ea: 0xb054, 0x10eb: 0xb055, 0x10ec: 0xb056, 0x10ed: 0xb057, 0x10ee: 0xb058, 0x10ef: 0xb059, -+ 0x10f0: 0xb05a, 0x10f1: 0xb05b, 0x10f2: 0xb05c, 0x10f3: 0xb05d, 0x10f4: 0xb05e, 0x10f5: 0xb05f, -+ 0x10f6: 0xb060, 0x10f7: 0xb061, 0x10f8: 0xb062, 0x10f9: 0xb063, 0x10fa: 0xb064, 0x10fb: 0xb065, -+ 0x10fc: 0xb052, 0x10fd: 0xb066, 0x10fe: 0xb067, 0x10ff: 0xb055, -+ // Block 0x44, offset 0x1100 -+ 0x1100: 0xb068, 0x1101: 0xb069, 0x1102: 0xb06a, 0x1103: 0xb06b, 0x1104: 0xb05a, 0x1105: 0xb056, -+ 0x1106: 0xb06c, 0x1107: 0xb06d, 0x1108: 0xb06b, 0x1109: 0xb06e, 0x110a: 0xb06b, 0x110b: 0xb06f, -+ 0x110c: 0xb06f, 0x110d: 0xb070, 0x110e: 0xb070, 0x110f: 0xb071, 0x1110: 0xb056, 0x1111: 0xb072, -+ 0x1112: 0xb073, 0x1113: 0xb072, 0x1114: 0xb074, 0x1115: 0xb073, 0x1116: 0xb075, 0x1117: 0xb075, -+ 0x1118: 0xb076, 0x1119: 0xb076, 0x111a: 0xb077, 0x111b: 0xb077, 0x111c: 0xb073, 0x111d: 0xb078, -+ 0x111e: 0xb079, 0x111f: 0xb067, 0x1120: 0xb07a, 0x1121: 0xb07b, 0x1122: 0xb07b, 0x1123: 0xb07b, -+ 0x1124: 0xb07b, 0x1125: 0xb07b, 0x1126: 0xb07b, 0x1127: 0xb07b, 0x1128: 0xb07b, 0x1129: 0xb07b, -+ 0x112a: 0xb07b, 0x112b: 0xb07b, 0x112c: 0xb07b, 0x112d: 0xb07b, 0x112e: 0xb07b, 0x112f: 0xb07b, -+ 0x1130: 0xb07c, 0x1131: 0xb07c, 0x1132: 0xb07c, 0x1133: 0xb07c, 0x1134: 0xb07c, 0x1135: 0xb07c, -+ 0x1136: 0xb07c, 0x1137: 0xb07c, 0x1138: 0xb07c, 0x1139: 0xb07c, 0x113a: 0xb07c, 0x113b: 0xb07c, -+ 0x113c: 0xb07c, 0x113d: 0xb07c, 0x113e: 0xb07c, -+ // Block 0x45, offset 0x1140 -+ 0x1142: 0xb07d, 0x1143: 0xb07e, 0x1144: 0xb07f, 0x1145: 0xb080, -+ 0x1146: 0xb07f, 0x1147: 0xb07e, 0x114a: 0xb081, 0x114b: 0xb082, -+ 0x114c: 0xb083, 0x114d: 0xb07f, 0x114e: 0xb080, 0x114f: 0xb07f, -+ 0x1152: 0xb084, 0x1153: 0xb085, 0x1154: 0xb084, 0x1155: 0xb086, 0x1156: 0xb084, 0x1157: 0xb087, -+ 0x115a: 0xb088, 0x115b: 0xb089, 0x115c: 0xb08a, -+ 0x1160: 0x908b, 0x1161: 0x908b, 0x1162: 0x908c, 0x1163: 0x908d, -+ 0x1164: 0x908b, 0x1165: 0x908e, 0x1166: 0x908f, 0x1168: 0xb090, 0x1169: 0xb091, -+ 0x116a: 0xb092, 0x116b: 0xb091, 0x116c: 0xb093, 0x116d: 0xb094, 0x116e: 0xb095, -+ 0x117d: 0x2000, -+ // Block 0x46, offset 0x1180 -+ 0x11a0: 0x4000, 0x11a1: 0x4000, 0x11a2: 0x4000, 0x11a3: 0x4000, -+ 0x11a4: 0x4000, -+ 0x11b0: 0x4000, 0x11b1: 0x4000, -+ // Block 0x47, offset 0x11c0 -+ 0x11c0: 0x4000, 0x11c1: 0x4000, 0x11c2: 0x4000, 0x11c3: 0x4000, 0x11c4: 0x4000, 0x11c5: 0x4000, -+ 0x11c6: 0x4000, 0x11c7: 0x4000, 0x11c8: 0x4000, 0x11c9: 0x4000, 0x11ca: 0x4000, 0x11cb: 0x4000, -+ 0x11cc: 0x4000, 0x11cd: 0x4000, 0x11ce: 0x4000, 0x11cf: 0x4000, 0x11d0: 0x4000, 0x11d1: 0x4000, -+ 0x11d2: 0x4000, 0x11d3: 0x4000, 0x11d4: 0x4000, 0x11d5: 0x4000, 0x11d6: 0x4000, 0x11d7: 0x4000, -+ 0x11d8: 0x4000, 0x11d9: 0x4000, 0x11da: 0x4000, 0x11db: 0x4000, 0x11dc: 0x4000, 0x11dd: 0x4000, -+ 0x11de: 0x4000, 0x11df: 0x4000, 0x11e0: 0x4000, 0x11e1: 0x4000, 0x11e2: 0x4000, 0x11e3: 0x4000, -+ 0x11e4: 0x4000, 0x11e5: 0x4000, 0x11e6: 0x4000, 0x11e7: 0x4000, 0x11e8: 0x4000, 0x11e9: 0x4000, -+ 0x11ea: 0x4000, 0x11eb: 0x4000, 0x11ec: 0x4000, 0x11ed: 0x4000, 0x11ee: 0x4000, 0x11ef: 0x4000, -+ 0x11f0: 0x4000, 0x11f1: 0x4000, 0x11f2: 0x4000, 0x11f3: 0x4000, 0x11f4: 0x4000, 0x11f5: 0x4000, -+ 0x11f6: 0x4000, 0x11f7: 0x4000, -+ // Block 0x48, offset 0x1200 -+ 0x1200: 0x4000, 0x1201: 0x4000, 0x1202: 0x4000, 0x1203: 0x4000, 0x1204: 0x4000, 0x1205: 0x4000, -+ 0x1206: 0x4000, 0x1207: 0x4000, 0x1208: 0x4000, 0x1209: 0x4000, 0x120a: 0x4000, 0x120b: 0x4000, -+ 0x120c: 0x4000, 0x120d: 0x4000, 0x120e: 0x4000, 0x120f: 0x4000, 0x1210: 0x4000, 0x1211: 0x4000, -+ 0x1212: 0x4000, 0x1213: 0x4000, 0x1214: 0x4000, 0x1215: 0x4000, -+ // Block 0x49, offset 0x1240 -+ 0x1240: 0x4000, 0x1241: 0x4000, 0x1242: 0x4000, 0x1243: 0x4000, 0x1244: 0x4000, 0x1245: 0x4000, -+ 0x1246: 0x4000, 0x1247: 0x4000, 0x1248: 0x4000, -+ // Block 0x4a, offset 0x1280 -+ 0x1280: 0x4000, 0x1281: 0x4000, 0x1282: 0x4000, 0x1283: 0x4000, 0x1284: 0x4000, 0x1285: 0x4000, -+ 0x1286: 0x4000, 0x1287: 0x4000, 0x1288: 0x4000, 0x1289: 0x4000, 0x128a: 0x4000, 0x128b: 0x4000, -+ 0x128c: 0x4000, 0x128d: 0x4000, 0x128e: 0x4000, 0x128f: 0x4000, 0x1290: 0x4000, 0x1291: 0x4000, -+ 0x1292: 0x4000, 0x1293: 0x4000, 0x1294: 0x4000, 0x1295: 0x4000, 0x1296: 0x4000, 0x1297: 0x4000, -+ 0x1298: 0x4000, 0x1299: 0x4000, 0x129a: 0x4000, 0x129b: 0x4000, 0x129c: 0x4000, 0x129d: 0x4000, -+ 0x129e: 0x4000, -+ // Block 0x4b, offset 0x12c0 -+ 0x12d0: 0x4000, 0x12d1: 0x4000, -+ 0x12d2: 0x4000, -+ 0x12e4: 0x4000, 0x12e5: 0x4000, 0x12e6: 0x4000, 0x12e7: 0x4000, -+ 0x12f0: 0x4000, 0x12f1: 0x4000, 0x12f2: 0x4000, 0x12f3: 0x4000, 0x12f4: 0x4000, 0x12f5: 0x4000, -+ 0x12f6: 0x4000, 0x12f7: 0x4000, 0x12f8: 0x4000, 0x12f9: 0x4000, 0x12fa: 0x4000, 0x12fb: 0x4000, -+ 0x12fc: 0x4000, 0x12fd: 0x4000, 0x12fe: 0x4000, 0x12ff: 0x4000, -+ // Block 0x4c, offset 0x1300 -+ 0x1300: 0x4000, 0x1301: 0x4000, 0x1302: 0x4000, 0x1303: 0x4000, 0x1304: 0x4000, 0x1305: 0x4000, -+ 0x1306: 0x4000, 0x1307: 0x4000, 0x1308: 0x4000, 0x1309: 0x4000, 0x130a: 0x4000, 0x130b: 0x4000, -+ 0x130c: 0x4000, 0x130d: 0x4000, 0x130e: 0x4000, 0x130f: 0x4000, 0x1310: 0x4000, 0x1311: 0x4000, -+ 0x1312: 0x4000, 0x1313: 0x4000, 0x1314: 0x4000, 0x1315: 0x4000, 0x1316: 0x4000, 0x1317: 0x4000, -+ 0x1318: 0x4000, 0x1319: 0x4000, 0x131a: 0x4000, 0x131b: 0x4000, 0x131c: 0x4000, 0x131d: 0x4000, -+ 0x131e: 0x4000, 0x131f: 0x4000, 0x1320: 0x4000, 0x1321: 0x4000, 0x1322: 0x4000, 0x1323: 0x4000, -+ 0x1324: 0x4000, 0x1325: 0x4000, 0x1326: 0x4000, 0x1327: 0x4000, 0x1328: 0x4000, 0x1329: 0x4000, -+ 0x132a: 0x4000, 0x132b: 0x4000, 0x132c: 0x4000, 0x132d: 0x4000, 0x132e: 0x4000, 0x132f: 0x4000, -+ 0x1330: 0x4000, 0x1331: 0x4000, 0x1332: 0x4000, 0x1333: 0x4000, 0x1334: 0x4000, 0x1335: 0x4000, -+ 0x1336: 0x4000, 0x1337: 0x4000, 0x1338: 0x4000, 0x1339: 0x4000, 0x133a: 0x4000, 0x133b: 0x4000, -+ // Block 0x4d, offset 0x1340 -+ 0x1344: 0x4000, -+ // Block 0x4e, offset 0x1380 -+ 0x138f: 0x4000, -+ // Block 0x4f, offset 0x13c0 -+ 0x13c0: 0x2000, 0x13c1: 0x2000, 0x13c2: 0x2000, 0x13c3: 0x2000, 0x13c4: 0x2000, 0x13c5: 0x2000, -+ 0x13c6: 0x2000, 0x13c7: 0x2000, 0x13c8: 0x2000, 0x13c9: 0x2000, 0x13ca: 0x2000, -+ 0x13d0: 0x2000, 0x13d1: 0x2000, -+ 0x13d2: 0x2000, 0x13d3: 0x2000, 0x13d4: 0x2000, 0x13d5: 0x2000, 0x13d6: 0x2000, 0x13d7: 0x2000, -+ 0x13d8: 0x2000, 0x13d9: 0x2000, 0x13da: 0x2000, 0x13db: 0x2000, 0x13dc: 0x2000, 0x13dd: 0x2000, -+ 0x13de: 0x2000, 0x13df: 0x2000, 0x13e0: 0x2000, 0x13e1: 0x2000, 0x13e2: 0x2000, 0x13e3: 0x2000, -+ 0x13e4: 0x2000, 0x13e5: 0x2000, 0x13e6: 0x2000, 0x13e7: 0x2000, 0x13e8: 0x2000, 0x13e9: 0x2000, -+ 0x13ea: 0x2000, 0x13eb: 0x2000, 0x13ec: 0x2000, 0x13ed: 0x2000, -+ 0x13f0: 0x2000, 0x13f1: 0x2000, 0x13f2: 0x2000, 0x13f3: 0x2000, 0x13f4: 0x2000, 0x13f5: 0x2000, -+ 0x13f6: 0x2000, 0x13f7: 0x2000, 0x13f8: 0x2000, 0x13f9: 0x2000, 0x13fa: 0x2000, 0x13fb: 0x2000, -+ 0x13fc: 0x2000, 0x13fd: 0x2000, 0x13fe: 0x2000, 0x13ff: 0x2000, -+ // Block 0x50, offset 0x1400 -+ 0x1400: 0x2000, 0x1401: 0x2000, 0x1402: 0x2000, 0x1403: 0x2000, 0x1404: 0x2000, 0x1405: 0x2000, -+ 0x1406: 0x2000, 0x1407: 0x2000, 0x1408: 0x2000, 0x1409: 0x2000, 0x140a: 0x2000, 0x140b: 0x2000, -+ 0x140c: 0x2000, 0x140d: 0x2000, 0x140e: 0x2000, 0x140f: 0x2000, 0x1410: 0x2000, 0x1411: 0x2000, -+ 0x1412: 0x2000, 0x1413: 0x2000, 0x1414: 0x2000, 0x1415: 0x2000, 0x1416: 0x2000, 0x1417: 0x2000, -+ 0x1418: 0x2000, 0x1419: 0x2000, 0x141a: 0x2000, 0x141b: 0x2000, 0x141c: 0x2000, 0x141d: 0x2000, -+ 0x141e: 0x2000, 0x141f: 0x2000, 0x1420: 0x2000, 0x1421: 0x2000, 0x1422: 0x2000, 0x1423: 0x2000, -+ 0x1424: 0x2000, 0x1425: 0x2000, 0x1426: 0x2000, 0x1427: 0x2000, 0x1428: 0x2000, 0x1429: 0x2000, -+ 0x1430: 0x2000, 0x1431: 0x2000, 0x1432: 0x2000, 0x1433: 0x2000, 0x1434: 0x2000, 0x1435: 0x2000, -+ 0x1436: 0x2000, 0x1437: 0x2000, 0x1438: 0x2000, 0x1439: 0x2000, 0x143a: 0x2000, 0x143b: 0x2000, -+ 0x143c: 0x2000, 0x143d: 0x2000, 0x143e: 0x2000, 0x143f: 0x2000, -+ // Block 0x51, offset 0x1440 -+ 0x1440: 0x2000, 0x1441: 0x2000, 0x1442: 0x2000, 0x1443: 0x2000, 0x1444: 0x2000, 0x1445: 0x2000, -+ 0x1446: 0x2000, 0x1447: 0x2000, 0x1448: 0x2000, 0x1449: 0x2000, 0x144a: 0x2000, 0x144b: 0x2000, -+ 0x144c: 0x2000, 0x144d: 0x2000, 0x144e: 0x4000, 0x144f: 0x2000, 0x1450: 0x2000, 0x1451: 0x4000, -+ 0x1452: 0x4000, 0x1453: 0x4000, 0x1454: 0x4000, 0x1455: 0x4000, 0x1456: 0x4000, 0x1457: 0x4000, -+ 0x1458: 0x4000, 0x1459: 0x4000, 0x145a: 0x4000, 0x145b: 0x2000, 0x145c: 0x2000, 0x145d: 0x2000, -+ 0x145e: 0x2000, 0x145f: 0x2000, 0x1460: 0x2000, 0x1461: 0x2000, 0x1462: 0x2000, 0x1463: 0x2000, -+ 0x1464: 0x2000, 0x1465: 0x2000, 0x1466: 0x2000, 0x1467: 0x2000, 0x1468: 0x2000, 0x1469: 0x2000, -+ 0x146a: 0x2000, 0x146b: 0x2000, 0x146c: 0x2000, -+ // Block 0x52, offset 0x1480 -+ 0x1480: 0x4000, 0x1481: 0x4000, 0x1482: 0x4000, -+ 0x1490: 0x4000, 0x1491: 0x4000, -+ 0x1492: 0x4000, 0x1493: 0x4000, 0x1494: 0x4000, 0x1495: 0x4000, 0x1496: 0x4000, 0x1497: 0x4000, -+ 0x1498: 0x4000, 0x1499: 0x4000, 0x149a: 0x4000, 0x149b: 0x4000, 0x149c: 0x4000, 0x149d: 0x4000, -+ 0x149e: 0x4000, 0x149f: 0x4000, 0x14a0: 0x4000, 0x14a1: 0x4000, 0x14a2: 0x4000, 0x14a3: 0x4000, -+ 0x14a4: 0x4000, 0x14a5: 0x4000, 0x14a6: 0x4000, 0x14a7: 0x4000, 0x14a8: 0x4000, 0x14a9: 0x4000, -+ 0x14aa: 0x4000, 0x14ab: 0x4000, 0x14ac: 0x4000, 0x14ad: 0x4000, 0x14ae: 0x4000, 0x14af: 0x4000, -+ 0x14b0: 0x4000, 0x14b1: 0x4000, 0x14b2: 0x4000, 0x14b3: 0x4000, 0x14b4: 0x4000, 0x14b5: 0x4000, -+ 0x14b6: 0x4000, 0x14b7: 0x4000, 0x14b8: 0x4000, 0x14b9: 0x4000, 0x14ba: 0x4000, 0x14bb: 0x4000, -+ // Block 0x53, offset 0x14c0 -+ 0x14c0: 0x4000, 0x14c1: 0x4000, 0x14c2: 0x4000, 0x14c3: 0x4000, 0x14c4: 0x4000, 0x14c5: 0x4000, -+ 0x14c6: 0x4000, 0x14c7: 0x4000, 0x14c8: 0x4000, -+ 0x14d0: 0x4000, 0x14d1: 0x4000, -+ 0x14e0: 0x4000, 0x14e1: 0x4000, 0x14e2: 0x4000, 0x14e3: 0x4000, -+ 0x14e4: 0x4000, 0x14e5: 0x4000, -+ // Block 0x54, offset 0x1500 -+ 0x1500: 0x4000, 0x1501: 0x4000, 0x1502: 0x4000, 0x1503: 0x4000, 0x1504: 0x4000, 0x1505: 0x4000, -+ 0x1506: 0x4000, 0x1507: 0x4000, 0x1508: 0x4000, 0x1509: 0x4000, 0x150a: 0x4000, 0x150b: 0x4000, -+ 0x150c: 0x4000, 0x150d: 0x4000, 0x150e: 0x4000, 0x150f: 0x4000, 0x1510: 0x4000, 0x1511: 0x4000, -+ 0x1512: 0x4000, 0x1513: 0x4000, 0x1514: 0x4000, 0x1515: 0x4000, 0x1516: 0x4000, 0x1517: 0x4000, -+ 0x1518: 0x4000, 0x1519: 0x4000, 0x151a: 0x4000, 0x151b: 0x4000, 0x151c: 0x4000, 0x151d: 0x4000, -+ 0x151e: 0x4000, 0x151f: 0x4000, 0x1520: 0x4000, -+ 0x152d: 0x4000, 0x152e: 0x4000, 0x152f: 0x4000, -+ 0x1530: 0x4000, 0x1531: 0x4000, 0x1532: 0x4000, 0x1533: 0x4000, 0x1534: 0x4000, 0x1535: 0x4000, -+ 0x1537: 0x4000, 0x1538: 0x4000, 0x1539: 0x4000, 0x153a: 0x4000, 0x153b: 0x4000, -+ 0x153c: 0x4000, 0x153d: 0x4000, 0x153e: 0x4000, 0x153f: 0x4000, -+ // Block 0x55, offset 0x1540 -+ 0x1540: 0x4000, 0x1541: 0x4000, 0x1542: 0x4000, 0x1543: 0x4000, 0x1544: 0x4000, 0x1545: 0x4000, -+ 0x1546: 0x4000, 0x1547: 0x4000, 0x1548: 0x4000, 0x1549: 0x4000, 0x154a: 0x4000, 0x154b: 0x4000, -+ 0x154c: 0x4000, 0x154d: 0x4000, 0x154e: 0x4000, 0x154f: 0x4000, 0x1550: 0x4000, 0x1551: 0x4000, -+ 0x1552: 0x4000, 0x1553: 0x4000, 0x1554: 0x4000, 0x1555: 0x4000, 0x1556: 0x4000, 0x1557: 0x4000, -+ 0x1558: 0x4000, 0x1559: 0x4000, 0x155a: 0x4000, 0x155b: 0x4000, 0x155c: 0x4000, 0x155d: 0x4000, -+ 0x155e: 0x4000, 0x155f: 0x4000, 0x1560: 0x4000, 0x1561: 0x4000, 0x1562: 0x4000, 0x1563: 0x4000, -+ 0x1564: 0x4000, 0x1565: 0x4000, 0x1566: 0x4000, 0x1567: 0x4000, 0x1568: 0x4000, 0x1569: 0x4000, -+ 0x156a: 0x4000, 0x156b: 0x4000, 0x156c: 0x4000, 0x156d: 0x4000, 0x156e: 0x4000, 0x156f: 0x4000, -+ 0x1570: 0x4000, 0x1571: 0x4000, 0x1572: 0x4000, 0x1573: 0x4000, 0x1574: 0x4000, 0x1575: 0x4000, -+ 0x1576: 0x4000, 0x1577: 0x4000, 0x1578: 0x4000, 0x1579: 0x4000, 0x157a: 0x4000, 0x157b: 0x4000, -+ 0x157c: 0x4000, 0x157e: 0x4000, 0x157f: 0x4000, -+ // Block 0x56, offset 0x1580 -+ 0x1580: 0x4000, 0x1581: 0x4000, 0x1582: 0x4000, 0x1583: 0x4000, 0x1584: 0x4000, 0x1585: 0x4000, -+ 0x1586: 0x4000, 0x1587: 0x4000, 0x1588: 0x4000, 0x1589: 0x4000, 0x158a: 0x4000, 0x158b: 0x4000, -+ 0x158c: 0x4000, 0x158d: 0x4000, 0x158e: 0x4000, 0x158f: 0x4000, 0x1590: 0x4000, 0x1591: 0x4000, -+ 0x1592: 0x4000, 0x1593: 0x4000, -+ 0x15a0: 0x4000, 0x15a1: 0x4000, 0x15a2: 0x4000, 0x15a3: 0x4000, -+ 0x15a4: 0x4000, 0x15a5: 0x4000, 0x15a6: 0x4000, 0x15a7: 0x4000, 0x15a8: 0x4000, 0x15a9: 0x4000, -+ 0x15aa: 0x4000, 0x15ab: 0x4000, 0x15ac: 0x4000, 0x15ad: 0x4000, 0x15ae: 0x4000, 0x15af: 0x4000, -+ 0x15b0: 0x4000, 0x15b1: 0x4000, 0x15b2: 0x4000, 0x15b3: 0x4000, 0x15b4: 0x4000, 0x15b5: 0x4000, -+ 0x15b6: 0x4000, 0x15b7: 0x4000, 0x15b8: 0x4000, 0x15b9: 0x4000, 0x15ba: 0x4000, 0x15bb: 0x4000, -+ 0x15bc: 0x4000, 0x15bd: 0x4000, 0x15be: 0x4000, 0x15bf: 0x4000, -+ // Block 0x57, offset 0x15c0 -+ 0x15c0: 0x4000, 0x15c1: 0x4000, 0x15c2: 0x4000, 0x15c3: 0x4000, 0x15c4: 0x4000, 0x15c5: 0x4000, -+ 0x15c6: 0x4000, 0x15c7: 0x4000, 0x15c8: 0x4000, 0x15c9: 0x4000, 0x15ca: 0x4000, -+ 0x15cf: 0x4000, 0x15d0: 0x4000, 0x15d1: 0x4000, -+ 0x15d2: 0x4000, 0x15d3: 0x4000, -+ 0x15e0: 0x4000, 0x15e1: 0x4000, 0x15e2: 0x4000, 0x15e3: 0x4000, -+ 0x15e4: 0x4000, 0x15e5: 0x4000, 0x15e6: 0x4000, 0x15e7: 0x4000, 0x15e8: 0x4000, 0x15e9: 0x4000, -+ 0x15ea: 0x4000, 0x15eb: 0x4000, 0x15ec: 0x4000, 0x15ed: 0x4000, 0x15ee: 0x4000, 0x15ef: 0x4000, -+ 0x15f0: 0x4000, 0x15f4: 0x4000, -+ 0x15f8: 0x4000, 0x15f9: 0x4000, 0x15fa: 0x4000, 0x15fb: 0x4000, -+ 0x15fc: 0x4000, 0x15fd: 0x4000, 0x15fe: 0x4000, 0x15ff: 0x4000, -+ // Block 0x58, offset 0x1600 -+ 0x1600: 0x4000, 0x1601: 0x4000, 0x1602: 0x4000, 0x1603: 0x4000, 0x1604: 0x4000, 0x1605: 0x4000, -+ 0x1606: 0x4000, 0x1607: 0x4000, 0x1608: 0x4000, 0x1609: 0x4000, 0x160a: 0x4000, 0x160b: 0x4000, -+ 0x160c: 0x4000, 0x160d: 0x4000, 0x160e: 0x4000, 0x160f: 0x4000, 0x1610: 0x4000, 0x1611: 0x4000, -+ 0x1612: 0x4000, 0x1613: 0x4000, 0x1614: 0x4000, 0x1615: 0x4000, 0x1616: 0x4000, 0x1617: 0x4000, -+ 0x1618: 0x4000, 0x1619: 0x4000, 0x161a: 0x4000, 0x161b: 0x4000, 0x161c: 0x4000, 0x161d: 0x4000, -+ 0x161e: 0x4000, 0x161f: 0x4000, 0x1620: 0x4000, 0x1621: 0x4000, 0x1622: 0x4000, 0x1623: 0x4000, -+ 0x1624: 0x4000, 0x1625: 0x4000, 0x1626: 0x4000, 0x1627: 0x4000, 0x1628: 0x4000, 0x1629: 0x4000, -+ 0x162a: 0x4000, 0x162b: 0x4000, 0x162c: 0x4000, 0x162d: 0x4000, 0x162e: 0x4000, 0x162f: 0x4000, -+ 0x1630: 0x4000, 0x1631: 0x4000, 0x1632: 0x4000, 0x1633: 0x4000, 0x1634: 0x4000, 0x1635: 0x4000, -+ 0x1636: 0x4000, 0x1637: 0x4000, 0x1638: 0x4000, 0x1639: 0x4000, 0x163a: 0x4000, 0x163b: 0x4000, -+ 0x163c: 0x4000, 0x163d: 0x4000, 0x163e: 0x4000, -+ // Block 0x59, offset 0x1640 -+ 0x1640: 0x4000, 0x1642: 0x4000, 0x1643: 0x4000, 0x1644: 0x4000, 0x1645: 0x4000, -+ 0x1646: 0x4000, 0x1647: 0x4000, 0x1648: 0x4000, 0x1649: 0x4000, 0x164a: 0x4000, 0x164b: 0x4000, -+ 0x164c: 0x4000, 0x164d: 0x4000, 0x164e: 0x4000, 0x164f: 0x4000, 0x1650: 0x4000, 0x1651: 0x4000, -+ 0x1652: 0x4000, 0x1653: 0x4000, 0x1654: 0x4000, 0x1655: 0x4000, 0x1656: 0x4000, 0x1657: 0x4000, -+ 0x1658: 0x4000, 0x1659: 0x4000, 0x165a: 0x4000, 0x165b: 0x4000, 0x165c: 0x4000, 0x165d: 0x4000, -+ 0x165e: 0x4000, 0x165f: 0x4000, 0x1660: 0x4000, 0x1661: 0x4000, 0x1662: 0x4000, 0x1663: 0x4000, -+ 0x1664: 0x4000, 0x1665: 0x4000, 0x1666: 0x4000, 0x1667: 0x4000, 0x1668: 0x4000, 0x1669: 0x4000, -+ 0x166a: 0x4000, 0x166b: 0x4000, 0x166c: 0x4000, 0x166d: 0x4000, 0x166e: 0x4000, 0x166f: 0x4000, -+ 0x1670: 0x4000, 0x1671: 0x4000, 0x1672: 0x4000, 0x1673: 0x4000, 0x1674: 0x4000, 0x1675: 0x4000, -+ 0x1676: 0x4000, 0x1677: 0x4000, 0x1678: 0x4000, 0x1679: 0x4000, 0x167a: 0x4000, 0x167b: 0x4000, -+ 0x167c: 0x4000, 0x167d: 0x4000, 0x167e: 0x4000, 0x167f: 0x4000, -+ // Block 0x5a, offset 0x1680 -+ 0x1680: 0x4000, 0x1681: 0x4000, 0x1682: 0x4000, 0x1683: 0x4000, 0x1684: 0x4000, 0x1685: 0x4000, -+ 0x1686: 0x4000, 0x1687: 0x4000, 0x1688: 0x4000, 0x1689: 0x4000, 0x168a: 0x4000, 0x168b: 0x4000, -+ 0x168c: 0x4000, 0x168d: 0x4000, 0x168e: 0x4000, 0x168f: 0x4000, 0x1690: 0x4000, 0x1691: 0x4000, -+ 0x1692: 0x4000, 0x1693: 0x4000, 0x1694: 0x4000, 0x1695: 0x4000, 0x1696: 0x4000, 0x1697: 0x4000, -+ 0x1698: 0x4000, 0x1699: 0x4000, 0x169a: 0x4000, 0x169b: 0x4000, 0x169c: 0x4000, 0x169d: 0x4000, -+ 0x169e: 0x4000, 0x169f: 0x4000, 0x16a0: 0x4000, 0x16a1: 0x4000, 0x16a2: 0x4000, 0x16a3: 0x4000, -+ 0x16a4: 0x4000, 0x16a5: 0x4000, 0x16a6: 0x4000, 0x16a7: 0x4000, 0x16a8: 0x4000, 0x16a9: 0x4000, -+ 0x16aa: 0x4000, 0x16ab: 0x4000, 0x16ac: 0x4000, 0x16ad: 0x4000, 0x16ae: 0x4000, 0x16af: 0x4000, -+ 0x16b0: 0x4000, 0x16b1: 0x4000, 0x16b2: 0x4000, 0x16b3: 0x4000, 0x16b4: 0x4000, 0x16b5: 0x4000, -+ 0x16b6: 0x4000, 0x16b7: 0x4000, 0x16b8: 0x4000, 0x16b9: 0x4000, 0x16ba: 0x4000, 0x16bb: 0x4000, -+ 0x16bc: 0x4000, 0x16bf: 0x4000, -+ // Block 0x5b, offset 0x16c0 -+ 0x16c0: 0x4000, 0x16c1: 0x4000, 0x16c2: 0x4000, 0x16c3: 0x4000, 0x16c4: 0x4000, 0x16c5: 0x4000, -+ 0x16c6: 0x4000, 0x16c7: 0x4000, 0x16c8: 0x4000, 0x16c9: 0x4000, 0x16ca: 0x4000, 0x16cb: 0x4000, -+ 0x16cc: 0x4000, 0x16cd: 0x4000, 0x16ce: 0x4000, 0x16cf: 0x4000, 0x16d0: 0x4000, 0x16d1: 0x4000, -+ 0x16d2: 0x4000, 0x16d3: 0x4000, 0x16d4: 0x4000, 0x16d5: 0x4000, 0x16d6: 0x4000, 0x16d7: 0x4000, -+ 0x16d8: 0x4000, 0x16d9: 0x4000, 0x16da: 0x4000, 0x16db: 0x4000, 0x16dc: 0x4000, 0x16dd: 0x4000, -+ 0x16de: 0x4000, 0x16df: 0x4000, 0x16e0: 0x4000, 0x16e1: 0x4000, 0x16e2: 0x4000, 0x16e3: 0x4000, -+ 0x16e4: 0x4000, 0x16e5: 0x4000, 0x16e6: 0x4000, 0x16e7: 0x4000, 0x16e8: 0x4000, 0x16e9: 0x4000, -+ 0x16ea: 0x4000, 0x16eb: 0x4000, 0x16ec: 0x4000, 0x16ed: 0x4000, 0x16ee: 0x4000, 0x16ef: 0x4000, -+ 0x16f0: 0x4000, 0x16f1: 0x4000, 0x16f2: 0x4000, 0x16f3: 0x4000, 0x16f4: 0x4000, 0x16f5: 0x4000, -+ 0x16f6: 0x4000, 0x16f7: 0x4000, 0x16f8: 0x4000, 0x16f9: 0x4000, 0x16fa: 0x4000, 0x16fb: 0x4000, -+ 0x16fc: 0x4000, 0x16fd: 0x4000, -+ // Block 0x5c, offset 0x1700 -+ 0x170b: 0x4000, -+ 0x170c: 0x4000, 0x170d: 0x4000, 0x170e: 0x4000, 0x1710: 0x4000, 0x1711: 0x4000, -+ 0x1712: 0x4000, 0x1713: 0x4000, 0x1714: 0x4000, 0x1715: 0x4000, 0x1716: 0x4000, 0x1717: 0x4000, -+ 0x1718: 0x4000, 0x1719: 0x4000, 0x171a: 0x4000, 0x171b: 0x4000, 0x171c: 0x4000, 0x171d: 0x4000, -+ 0x171e: 0x4000, 0x171f: 0x4000, 0x1720: 0x4000, 0x1721: 0x4000, 0x1722: 0x4000, 0x1723: 0x4000, -+ 0x1724: 0x4000, 0x1725: 0x4000, 0x1726: 0x4000, 0x1727: 0x4000, -+ 0x173a: 0x4000, -+ // Block 0x5d, offset 0x1740 -+ 0x1755: 0x4000, 0x1756: 0x4000, -+ 0x1764: 0x4000, -+ // Block 0x5e, offset 0x1780 -+ 0x17bb: 0x4000, -+ 0x17bc: 0x4000, 0x17bd: 0x4000, 0x17be: 0x4000, 0x17bf: 0x4000, -+ // Block 0x5f, offset 0x17c0 -+ 0x17c0: 0x4000, 0x17c1: 0x4000, 0x17c2: 0x4000, 0x17c3: 0x4000, 0x17c4: 0x4000, 0x17c5: 0x4000, -+ 0x17c6: 0x4000, 0x17c7: 0x4000, 0x17c8: 0x4000, 0x17c9: 0x4000, 0x17ca: 0x4000, 0x17cb: 0x4000, -+ 0x17cc: 0x4000, 0x17cd: 0x4000, 0x17ce: 0x4000, 0x17cf: 0x4000, -+ // Block 0x60, offset 0x1800 -+ 0x1800: 0x4000, 0x1801: 0x4000, 0x1802: 0x4000, 0x1803: 0x4000, 0x1804: 0x4000, 0x1805: 0x4000, -+ 0x180c: 0x4000, 0x1810: 0x4000, 0x1811: 0x4000, -+ 0x1812: 0x4000, 0x1815: 0x4000, 0x1816: 0x4000, 0x1817: 0x4000, -+ 0x182b: 0x4000, 0x182c: 0x4000, -+ 0x1834: 0x4000, 0x1835: 0x4000, -+ 0x1836: 0x4000, 0x1837: 0x4000, 0x1838: 0x4000, 0x1839: 0x4000, 0x183a: 0x4000, 0x183b: 0x4000, -+ 0x183c: 0x4000, -+ // Block 0x61, offset 0x1840 -+ 0x1860: 0x4000, 0x1861: 0x4000, 0x1862: 0x4000, 0x1863: 0x4000, -+ 0x1864: 0x4000, 0x1865: 0x4000, 0x1866: 0x4000, 0x1867: 0x4000, 0x1868: 0x4000, 0x1869: 0x4000, -+ 0x186a: 0x4000, 0x186b: 0x4000, -+ // Block 0x62, offset 0x1880 -+ 0x188c: 0x4000, 0x188d: 0x4000, 0x188e: 0x4000, 0x188f: 0x4000, 0x1890: 0x4000, 0x1891: 0x4000, -+ 0x1892: 0x4000, 0x1893: 0x4000, 0x1894: 0x4000, 0x1895: 0x4000, 0x1896: 0x4000, 0x1897: 0x4000, -+ 0x1898: 0x4000, 0x1899: 0x4000, 0x189a: 0x4000, 0x189b: 0x4000, 0x189c: 0x4000, 0x189d: 0x4000, -+ 0x189e: 0x4000, 0x189f: 0x4000, 0x18a0: 0x4000, 0x18a1: 0x4000, 0x18a2: 0x4000, 0x18a3: 0x4000, -+ 0x18a4: 0x4000, 0x18a5: 0x4000, 0x18a6: 0x4000, 0x18a7: 0x4000, 0x18a8: 0x4000, 0x18a9: 0x4000, -+ 0x18aa: 0x4000, 0x18ab: 0x4000, 0x18ac: 0x4000, 0x18ad: 0x4000, 0x18ae: 0x4000, 0x18af: 0x4000, -+ 0x18b0: 0x4000, 0x18b1: 0x4000, 0x18b2: 0x4000, 0x18b3: 0x4000, 0x18b4: 0x4000, 0x18b5: 0x4000, -+ 0x18b6: 0x4000, 0x18b7: 0x4000, 0x18b8: 0x4000, 0x18b9: 0x4000, 0x18ba: 0x4000, -+ 0x18bc: 0x4000, 0x18bd: 0x4000, 0x18be: 0x4000, 0x18bf: 0x4000, -+ // Block 0x63, offset 0x18c0 -+ 0x18c0: 0x4000, 0x18c1: 0x4000, 0x18c2: 0x4000, 0x18c3: 0x4000, 0x18c4: 0x4000, 0x18c5: 0x4000, -+ 0x18c7: 0x4000, 0x18c8: 0x4000, 0x18c9: 0x4000, 0x18ca: 0x4000, 0x18cb: 0x4000, -+ 0x18cc: 0x4000, 0x18cd: 0x4000, 0x18ce: 0x4000, 0x18cf: 0x4000, 0x18d0: 0x4000, 0x18d1: 0x4000, -+ 0x18d2: 0x4000, 0x18d3: 0x4000, 0x18d4: 0x4000, 0x18d5: 0x4000, 0x18d6: 0x4000, 0x18d7: 0x4000, -+ 0x18d8: 0x4000, 0x18d9: 0x4000, 0x18da: 0x4000, 0x18db: 0x4000, 0x18dc: 0x4000, 0x18dd: 0x4000, -+ 0x18de: 0x4000, 0x18df: 0x4000, 0x18e0: 0x4000, 0x18e1: 0x4000, 0x18e2: 0x4000, 0x18e3: 0x4000, -+ 0x18e4: 0x4000, 0x18e5: 0x4000, 0x18e6: 0x4000, 0x18e7: 0x4000, 0x18e8: 0x4000, 0x18e9: 0x4000, -+ 0x18ea: 0x4000, 0x18eb: 0x4000, 0x18ec: 0x4000, 0x18ed: 0x4000, 0x18ee: 0x4000, 0x18ef: 0x4000, -+ 0x18f0: 0x4000, 0x18f1: 0x4000, 0x18f2: 0x4000, 0x18f3: 0x4000, 0x18f4: 0x4000, 0x18f5: 0x4000, -+ 0x18f6: 0x4000, 0x18f7: 0x4000, 0x18f8: 0x4000, 0x18fa: 0x4000, 0x18fb: 0x4000, -+ 0x18fc: 0x4000, 0x18fd: 0x4000, 0x18fe: 0x4000, 0x18ff: 0x4000, -+ // Block 0x64, offset 0x1900 -+ 0x1900: 0x4000, 0x1901: 0x4000, 0x1902: 0x4000, 0x1903: 0x4000, 0x1904: 0x4000, 0x1905: 0x4000, -+ 0x1906: 0x4000, 0x1907: 0x4000, 0x1908: 0x4000, 0x1909: 0x4000, 0x190a: 0x4000, 0x190b: 0x4000, -+ 0x190d: 0x4000, 0x190e: 0x4000, 0x190f: 0x4000, 0x1910: 0x4000, 0x1911: 0x4000, -+ 0x1912: 0x4000, 0x1913: 0x4000, 0x1914: 0x4000, 0x1915: 0x4000, 0x1916: 0x4000, 0x1917: 0x4000, -+ 0x1918: 0x4000, 0x1919: 0x4000, 0x191a: 0x4000, 0x191b: 0x4000, 0x191c: 0x4000, 0x191d: 0x4000, -+ 0x191e: 0x4000, 0x191f: 0x4000, 0x1920: 0x4000, 0x1921: 0x4000, 0x1922: 0x4000, 0x1923: 0x4000, -+ 0x1924: 0x4000, 0x1925: 0x4000, 0x1926: 0x4000, 0x1927: 0x4000, 0x1928: 0x4000, 0x1929: 0x4000, -+ 0x192a: 0x4000, 0x192b: 0x4000, 0x192c: 0x4000, 0x192d: 0x4000, 0x192e: 0x4000, 0x192f: 0x4000, -+ 0x1930: 0x4000, 0x1931: 0x4000, 0x1932: 0x4000, 0x1933: 0x4000, 0x1934: 0x4000, 0x1935: 0x4000, -+ 0x1936: 0x4000, 0x1937: 0x4000, 0x1938: 0x4000, 0x1939: 0x4000, 0x193a: 0x4000, 0x193b: 0x4000, -+ 0x193c: 0x4000, 0x193d: 0x4000, 0x193e: 0x4000, 0x193f: 0x4000, -+ // Block 0x65, offset 0x1940 -+ 0x1970: 0x4000, 0x1971: 0x4000, 0x1972: 0x4000, 0x1973: 0x4000, 0x1974: 0x4000, -+ 0x1978: 0x4000, 0x1979: 0x4000, 0x197a: 0x4000, -+ // Block 0x66, offset 0x1980 -+ 0x1980: 0x4000, 0x1981: 0x4000, 0x1982: 0x4000, 0x1983: 0x4000, 0x1984: 0x4000, 0x1985: 0x4000, -+ 0x1986: 0x4000, -+ 0x1990: 0x4000, 0x1991: 0x4000, -+ 0x1992: 0x4000, 0x1993: 0x4000, 0x1994: 0x4000, 0x1995: 0x4000, 0x1996: 0x4000, 0x1997: 0x4000, -+ 0x1998: 0x4000, 0x1999: 0x4000, 0x199a: 0x4000, 0x199b: 0x4000, 0x199c: 0x4000, 0x199d: 0x4000, -+ 0x199e: 0x4000, 0x199f: 0x4000, 0x19a0: 0x4000, 0x19a1: 0x4000, 0x19a2: 0x4000, 0x19a3: 0x4000, -+ 0x19a4: 0x4000, 0x19a5: 0x4000, 0x19a6: 0x4000, 0x19a7: 0x4000, 0x19a8: 0x4000, -+ 0x19b0: 0x4000, 0x19b1: 0x4000, 0x19b2: 0x4000, 0x19b3: 0x4000, 0x19b4: 0x4000, 0x19b5: 0x4000, -+ 0x19b6: 0x4000, -+ // Block 0x67, offset 0x19c0 -+ 0x19c0: 0x4000, 0x19c1: 0x4000, 0x19c2: 0x4000, -+ 0x19d0: 0x4000, 0x19d1: 0x4000, -+ 0x19d2: 0x4000, 0x19d3: 0x4000, 0x19d4: 0x4000, 0x19d5: 0x4000, 0x19d6: 0x4000, -+ // Block 0x68, offset 0x1a00 -+ 0x1a00: 0x2000, 0x1a01: 0x2000, 0x1a02: 0x2000, 0x1a03: 0x2000, 0x1a04: 0x2000, 0x1a05: 0x2000, -+ 0x1a06: 0x2000, 0x1a07: 0x2000, 0x1a08: 0x2000, 0x1a09: 0x2000, 0x1a0a: 0x2000, 0x1a0b: 0x2000, -+ 0x1a0c: 0x2000, 0x1a0d: 0x2000, 0x1a0e: 0x2000, 0x1a0f: 0x2000, 0x1a10: 0x2000, 0x1a11: 0x2000, -+ 0x1a12: 0x2000, 0x1a13: 0x2000, 0x1a14: 0x2000, 0x1a15: 0x2000, 0x1a16: 0x2000, 0x1a17: 0x2000, -+ 0x1a18: 0x2000, 0x1a19: 0x2000, 0x1a1a: 0x2000, 0x1a1b: 0x2000, 0x1a1c: 0x2000, 0x1a1d: 0x2000, -+ 0x1a1e: 0x2000, 0x1a1f: 0x2000, 0x1a20: 0x2000, 0x1a21: 0x2000, 0x1a22: 0x2000, 0x1a23: 0x2000, -+ 0x1a24: 0x2000, 0x1a25: 0x2000, 0x1a26: 0x2000, 0x1a27: 0x2000, 0x1a28: 0x2000, 0x1a29: 0x2000, -+ 0x1a2a: 0x2000, 0x1a2b: 0x2000, 0x1a2c: 0x2000, 0x1a2d: 0x2000, 0x1a2e: 0x2000, 0x1a2f: 0x2000, -+ 0x1a30: 0x2000, 0x1a31: 0x2000, 0x1a32: 0x2000, 0x1a33: 0x2000, 0x1a34: 0x2000, 0x1a35: 0x2000, -+ 0x1a36: 0x2000, 0x1a37: 0x2000, 0x1a38: 0x2000, 0x1a39: 0x2000, 0x1a3a: 0x2000, 0x1a3b: 0x2000, -+ 0x1a3c: 0x2000, 0x1a3d: 0x2000, -+} -+ -+// widthIndex: 22 blocks, 1408 entries, 1408 bytes -+// Block 0 is the zero block. -+var widthIndex = [1408]uint8{ -+ // Block 0x0, offset 0x0 -+ // Block 0x1, offset 0x40 -+ // Block 0x2, offset 0x80 -+ // Block 0x3, offset 0xc0 -+ 0xc2: 0x01, 0xc3: 0x02, 0xc4: 0x03, 0xc5: 0x04, 0xc7: 0x05, -+ 0xc9: 0x06, 0xcb: 0x07, 0xcc: 0x08, 0xcd: 0x09, 0xce: 0x0a, 0xcf: 0x0b, -+ 0xd0: 0x0c, 0xd1: 0x0d, -+ 0xe1: 0x02, 0xe2: 0x03, 0xe3: 0x04, 0xe4: 0x05, 0xe5: 0x06, 0xe6: 0x06, 0xe7: 0x06, -+ 0xe8: 0x06, 0xe9: 0x06, 0xea: 0x07, 0xeb: 0x06, 0xec: 0x06, 0xed: 0x08, 0xee: 0x09, 0xef: 0x0a, -+ 0xf0: 0x0f, 0xf3: 0x12, 0xf4: 0x13, -+ // Block 0x4, offset 0x100 -+ 0x104: 0x0e, 0x105: 0x0f, -+ // Block 0x5, offset 0x140 -+ 0x140: 0x10, 0x141: 0x11, 0x142: 0x12, 0x144: 0x13, 0x145: 0x14, 0x146: 0x15, 0x147: 0x16, -+ 0x148: 0x17, 0x149: 0x18, 0x14a: 0x19, 0x14c: 0x1a, 0x14f: 0x1b, -+ 0x151: 0x1c, 0x152: 0x08, 0x153: 0x1d, 0x154: 0x1e, 0x155: 0x1f, 0x156: 0x20, 0x157: 0x21, -+ 0x158: 0x22, 0x159: 0x23, 0x15a: 0x24, 0x15b: 0x25, 0x15c: 0x26, 0x15d: 0x27, 0x15e: 0x28, 0x15f: 0x29, -+ 0x166: 0x2a, -+ 0x16c: 0x2b, 0x16d: 0x2c, -+ 0x17a: 0x2d, 0x17b: 0x2e, 0x17c: 0x0e, 0x17d: 0x0e, 0x17e: 0x0e, 0x17f: 0x2f, -+ // Block 0x6, offset 0x180 -+ 0x180: 0x30, 0x181: 0x31, 0x182: 0x32, 0x183: 0x33, 0x184: 0x34, 0x185: 0x35, 0x186: 0x36, 0x187: 0x37, -+ 0x188: 0x38, 0x189: 0x39, 0x18a: 0x0e, 0x18b: 0x0e, 0x18c: 0x0e, 0x18d: 0x0e, 0x18e: 0x0e, 0x18f: 0x0e, -+ 0x190: 0x0e, 0x191: 0x0e, 0x192: 0x0e, 0x193: 0x0e, 0x194: 0x0e, 0x195: 0x0e, 0x196: 0x0e, 0x197: 0x0e, -+ 0x198: 0x0e, 0x199: 0x0e, 0x19a: 0x0e, 0x19b: 0x0e, 0x19c: 0x0e, 0x19d: 0x0e, 0x19e: 0x0e, 0x19f: 0x0e, -+ 0x1a0: 0x0e, 0x1a1: 0x0e, 0x1a2: 0x0e, 0x1a3: 0x0e, 0x1a4: 0x0e, 0x1a5: 0x0e, 0x1a6: 0x0e, 0x1a7: 0x0e, -+ 0x1a8: 0x0e, 0x1a9: 0x0e, 0x1aa: 0x0e, 0x1ab: 0x0e, 0x1ac: 0x0e, 0x1ad: 0x0e, 0x1ae: 0x0e, 0x1af: 0x0e, -+ 0x1b0: 0x0e, 0x1b1: 0x0e, 0x1b2: 0x0e, 0x1b3: 0x0e, 0x1b4: 0x0e, 0x1b5: 0x0e, 0x1b6: 0x0e, 0x1b7: 0x0e, -+ 0x1b8: 0x0e, 0x1b9: 0x0e, 0x1ba: 0x0e, 0x1bb: 0x0e, 0x1bc: 0x0e, 0x1bd: 0x0e, 0x1be: 0x0e, 0x1bf: 0x0e, -+ // Block 0x7, offset 0x1c0 -+ 0x1c0: 0x0e, 0x1c1: 0x0e, 0x1c2: 0x0e, 0x1c3: 0x0e, 0x1c4: 0x0e, 0x1c5: 0x0e, 0x1c6: 0x0e, 0x1c7: 0x0e, -+ 0x1c8: 0x0e, 0x1c9: 0x0e, 0x1ca: 0x0e, 0x1cb: 0x0e, 0x1cc: 0x0e, 0x1cd: 0x0e, 0x1ce: 0x0e, 0x1cf: 0x0e, -+ 0x1d0: 0x0e, 0x1d1: 0x0e, 0x1d2: 0x0e, 0x1d3: 0x0e, 0x1d4: 0x0e, 0x1d5: 0x0e, 0x1d6: 0x0e, 0x1d7: 0x0e, -+ 0x1d8: 0x0e, 0x1d9: 0x0e, 0x1da: 0x0e, 0x1db: 0x0e, 0x1dc: 0x0e, 0x1dd: 0x0e, 0x1de: 0x0e, 0x1df: 0x0e, -+ 0x1e0: 0x0e, 0x1e1: 0x0e, 0x1e2: 0x0e, 0x1e3: 0x0e, 0x1e4: 0x0e, 0x1e5: 0x0e, 0x1e6: 0x0e, 0x1e7: 0x0e, -+ 0x1e8: 0x0e, 0x1e9: 0x0e, 0x1ea: 0x0e, 0x1eb: 0x0e, 0x1ec: 0x0e, 0x1ed: 0x0e, 0x1ee: 0x0e, 0x1ef: 0x0e, -+ 0x1f0: 0x0e, 0x1f1: 0x0e, 0x1f2: 0x0e, 0x1f3: 0x0e, 0x1f4: 0x0e, 0x1f5: 0x0e, 0x1f6: 0x0e, -+ 0x1f8: 0x0e, 0x1f9: 0x0e, 0x1fa: 0x0e, 0x1fb: 0x0e, 0x1fc: 0x0e, 0x1fd: 0x0e, 0x1fe: 0x0e, 0x1ff: 0x0e, -+ // Block 0x8, offset 0x200 -+ 0x200: 0x0e, 0x201: 0x0e, 0x202: 0x0e, 0x203: 0x0e, 0x204: 0x0e, 0x205: 0x0e, 0x206: 0x0e, 0x207: 0x0e, -+ 0x208: 0x0e, 0x209: 0x0e, 0x20a: 0x0e, 0x20b: 0x0e, 0x20c: 0x0e, 0x20d: 0x0e, 0x20e: 0x0e, 0x20f: 0x0e, -+ 0x210: 0x0e, 0x211: 0x0e, 0x212: 0x0e, 0x213: 0x0e, 0x214: 0x0e, 0x215: 0x0e, 0x216: 0x0e, 0x217: 0x0e, -+ 0x218: 0x0e, 0x219: 0x0e, 0x21a: 0x0e, 0x21b: 0x0e, 0x21c: 0x0e, 0x21d: 0x0e, 0x21e: 0x0e, 0x21f: 0x0e, -+ 0x220: 0x0e, 0x221: 0x0e, 0x222: 0x0e, 0x223: 0x0e, 0x224: 0x0e, 0x225: 0x0e, 0x226: 0x0e, 0x227: 0x0e, -+ 0x228: 0x0e, 0x229: 0x0e, 0x22a: 0x0e, 0x22b: 0x0e, 0x22c: 0x0e, 0x22d: 0x0e, 0x22e: 0x0e, 0x22f: 0x0e, -+ 0x230: 0x0e, 0x231: 0x0e, 0x232: 0x0e, 0x233: 0x0e, 0x234: 0x0e, 0x235: 0x0e, 0x236: 0x0e, 0x237: 0x0e, -+ 0x238: 0x0e, 0x239: 0x0e, 0x23a: 0x0e, 0x23b: 0x0e, 0x23c: 0x0e, 0x23d: 0x0e, 0x23e: 0x0e, 0x23f: 0x0e, -+ // Block 0x9, offset 0x240 -+ 0x240: 0x0e, 0x241: 0x0e, 0x242: 0x0e, 0x243: 0x0e, 0x244: 0x0e, 0x245: 0x0e, 0x246: 0x0e, 0x247: 0x0e, -+ 0x248: 0x0e, 0x249: 0x0e, 0x24a: 0x0e, 0x24b: 0x0e, 0x24c: 0x0e, 0x24d: 0x0e, 0x24e: 0x0e, 0x24f: 0x0e, -+ 0x250: 0x0e, 0x251: 0x0e, 0x252: 0x3a, 0x253: 0x3b, -+ 0x265: 0x3c, -+ 0x270: 0x0e, 0x271: 0x0e, 0x272: 0x0e, 0x273: 0x0e, 0x274: 0x0e, 0x275: 0x0e, 0x276: 0x0e, 0x277: 0x0e, -+ 0x278: 0x0e, 0x279: 0x0e, 0x27a: 0x0e, 0x27b: 0x0e, 0x27c: 0x0e, 0x27d: 0x0e, 0x27e: 0x0e, 0x27f: 0x0e, -+ // Block 0xa, offset 0x280 -+ 0x280: 0x0e, 0x281: 0x0e, 0x282: 0x0e, 0x283: 0x0e, 0x284: 0x0e, 0x285: 0x0e, 0x286: 0x0e, 0x287: 0x0e, -+ 0x288: 0x0e, 0x289: 0x0e, 0x28a: 0x0e, 0x28b: 0x0e, 0x28c: 0x0e, 0x28d: 0x0e, 0x28e: 0x0e, 0x28f: 0x0e, -+ 0x290: 0x0e, 0x291: 0x0e, 0x292: 0x0e, 0x293: 0x0e, 0x294: 0x0e, 0x295: 0x0e, 0x296: 0x0e, 0x297: 0x0e, -+ 0x298: 0x0e, 0x299: 0x0e, 0x29a: 0x0e, 0x29b: 0x0e, 0x29c: 0x0e, 0x29d: 0x0e, 0x29e: 0x3d, -+ // Block 0xb, offset 0x2c0 -+ 0x2c0: 0x08, 0x2c1: 0x08, 0x2c2: 0x08, 0x2c3: 0x08, 0x2c4: 0x08, 0x2c5: 0x08, 0x2c6: 0x08, 0x2c7: 0x08, -+ 0x2c8: 0x08, 0x2c9: 0x08, 0x2ca: 0x08, 0x2cb: 0x08, 0x2cc: 0x08, 0x2cd: 0x08, 0x2ce: 0x08, 0x2cf: 0x08, -+ 0x2d0: 0x08, 0x2d1: 0x08, 0x2d2: 0x08, 0x2d3: 0x08, 0x2d4: 0x08, 0x2d5: 0x08, 0x2d6: 0x08, 0x2d7: 0x08, -+ 0x2d8: 0x08, 0x2d9: 0x08, 0x2da: 0x08, 0x2db: 0x08, 0x2dc: 0x08, 0x2dd: 0x08, 0x2de: 0x08, 0x2df: 0x08, -+ 0x2e0: 0x08, 0x2e1: 0x08, 0x2e2: 0x08, 0x2e3: 0x08, 0x2e4: 0x08, 0x2e5: 0x08, 0x2e6: 0x08, 0x2e7: 0x08, -+ 0x2e8: 0x08, 0x2e9: 0x08, 0x2ea: 0x08, 0x2eb: 0x08, 0x2ec: 0x08, 0x2ed: 0x08, 0x2ee: 0x08, 0x2ef: 0x08, -+ 0x2f0: 0x08, 0x2f1: 0x08, 0x2f2: 0x08, 0x2f3: 0x08, 0x2f4: 0x08, 0x2f5: 0x08, 0x2f6: 0x08, 0x2f7: 0x08, -+ 0x2f8: 0x08, 0x2f9: 0x08, 0x2fa: 0x08, 0x2fb: 0x08, 0x2fc: 0x08, 0x2fd: 0x08, 0x2fe: 0x08, 0x2ff: 0x08, -+ // Block 0xc, offset 0x300 -+ 0x300: 0x08, 0x301: 0x08, 0x302: 0x08, 0x303: 0x08, 0x304: 0x08, 0x305: 0x08, 0x306: 0x08, 0x307: 0x08, -+ 0x308: 0x08, 0x309: 0x08, 0x30a: 0x08, 0x30b: 0x08, 0x30c: 0x08, 0x30d: 0x08, 0x30e: 0x08, 0x30f: 0x08, -+ 0x310: 0x08, 0x311: 0x08, 0x312: 0x08, 0x313: 0x08, 0x314: 0x08, 0x315: 0x08, 0x316: 0x08, 0x317: 0x08, -+ 0x318: 0x08, 0x319: 0x08, 0x31a: 0x08, 0x31b: 0x08, 0x31c: 0x08, 0x31d: 0x08, 0x31e: 0x08, 0x31f: 0x08, -+ 0x320: 0x08, 0x321: 0x08, 0x322: 0x08, 0x323: 0x08, 0x324: 0x0e, 0x325: 0x0e, 0x326: 0x0e, 0x327: 0x0e, -+ 0x328: 0x0e, 0x329: 0x0e, 0x32a: 0x0e, 0x32b: 0x0e, -+ 0x338: 0x3e, 0x339: 0x3f, 0x33c: 0x40, 0x33d: 0x41, 0x33e: 0x42, 0x33f: 0x43, -+ // Block 0xd, offset 0x340 -+ 0x37f: 0x44, -+ // Block 0xe, offset 0x380 -+ 0x380: 0x0e, 0x381: 0x0e, 0x382: 0x0e, 0x383: 0x0e, 0x384: 0x0e, 0x385: 0x0e, 0x386: 0x0e, 0x387: 0x0e, -+ 0x388: 0x0e, 0x389: 0x0e, 0x38a: 0x0e, 0x38b: 0x0e, 0x38c: 0x0e, 0x38d: 0x0e, 0x38e: 0x0e, 0x38f: 0x0e, -+ 0x390: 0x0e, 0x391: 0x0e, 0x392: 0x0e, 0x393: 0x0e, 0x394: 0x0e, 0x395: 0x0e, 0x396: 0x0e, 0x397: 0x0e, -+ 0x398: 0x0e, 0x399: 0x0e, 0x39a: 0x0e, 0x39b: 0x0e, 0x39c: 0x0e, 0x39d: 0x0e, 0x39e: 0x0e, 0x39f: 0x45, -+ 0x3a0: 0x0e, 0x3a1: 0x0e, 0x3a2: 0x0e, 0x3a3: 0x0e, 0x3a4: 0x0e, 0x3a5: 0x0e, 0x3a6: 0x0e, 0x3a7: 0x0e, -+ 0x3a8: 0x0e, 0x3a9: 0x0e, 0x3aa: 0x0e, 0x3ab: 0x0e, 0x3ac: 0x0e, 0x3ad: 0x0e, 0x3ae: 0x0e, 0x3af: 0x0e, -+ 0x3b0: 0x0e, 0x3b1: 0x0e, 0x3b2: 0x0e, 0x3b3: 0x46, 0x3b4: 0x47, -+ // Block 0xf, offset 0x3c0 -+ 0x3c0: 0x0e, 0x3c1: 0x0e, 0x3c2: 0x0e, 0x3c3: 0x0e, 0x3c4: 0x48, 0x3c5: 0x49, 0x3c6: 0x0e, 0x3c7: 0x0e, -+ 0x3c8: 0x0e, 0x3c9: 0x0e, 0x3ca: 0x0e, 0x3cb: 0x4a, -+ // Block 0x10, offset 0x400 -+ 0x400: 0x4b, 0x403: 0x4c, 0x404: 0x4d, 0x405: 0x4e, 0x406: 0x4f, -+ 0x408: 0x50, 0x409: 0x51, 0x40c: 0x52, 0x40d: 0x53, 0x40e: 0x54, 0x40f: 0x55, -+ 0x410: 0x56, 0x411: 0x57, 0x412: 0x0e, 0x413: 0x58, 0x414: 0x59, 0x415: 0x5a, 0x416: 0x5b, 0x417: 0x5c, -+ 0x418: 0x0e, 0x419: 0x5d, 0x41a: 0x0e, 0x41b: 0x5e, 0x41f: 0x5f, -+ 0x424: 0x60, 0x425: 0x61, 0x426: 0x0e, 0x427: 0x62, -+ 0x429: 0x63, 0x42a: 0x64, 0x42b: 0x65, -+ // Block 0x11, offset 0x440 -+ 0x456: 0x0b, 0x457: 0x06, -+ 0x458: 0x0c, 0x45b: 0x0d, 0x45f: 0x0e, -+ 0x460: 0x06, 0x461: 0x06, 0x462: 0x06, 0x463: 0x06, 0x464: 0x06, 0x465: 0x06, 0x466: 0x06, 0x467: 0x06, -+ 0x468: 0x06, 0x469: 0x06, 0x46a: 0x06, 0x46b: 0x06, 0x46c: 0x06, 0x46d: 0x06, 0x46e: 0x06, 0x46f: 0x06, -+ 0x470: 0x06, 0x471: 0x06, 0x472: 0x06, 0x473: 0x06, 0x474: 0x06, 0x475: 0x06, 0x476: 0x06, 0x477: 0x06, -+ 0x478: 0x06, 0x479: 0x06, 0x47a: 0x06, 0x47b: 0x06, 0x47c: 0x06, 0x47d: 0x06, 0x47e: 0x06, 0x47f: 0x06, -+ // Block 0x12, offset 0x480 -+ 0x484: 0x08, 0x485: 0x08, 0x486: 0x08, 0x487: 0x09, -+ // Block 0x13, offset 0x4c0 -+ 0x4c0: 0x08, 0x4c1: 0x08, 0x4c2: 0x08, 0x4c3: 0x08, 0x4c4: 0x08, 0x4c5: 0x08, 0x4c6: 0x08, 0x4c7: 0x08, -+ 0x4c8: 0x08, 0x4c9: 0x08, 0x4ca: 0x08, 0x4cb: 0x08, 0x4cc: 0x08, 0x4cd: 0x08, 0x4ce: 0x08, 0x4cf: 0x08, -+ 0x4d0: 0x08, 0x4d1: 0x08, 0x4d2: 0x08, 0x4d3: 0x08, 0x4d4: 0x08, 0x4d5: 0x08, 0x4d6: 0x08, 0x4d7: 0x08, -+ 0x4d8: 0x08, 0x4d9: 0x08, 0x4da: 0x08, 0x4db: 0x08, 0x4dc: 0x08, 0x4dd: 0x08, 0x4de: 0x08, 0x4df: 0x08, -+ 0x4e0: 0x08, 0x4e1: 0x08, 0x4e2: 0x08, 0x4e3: 0x08, 0x4e4: 0x08, 0x4e5: 0x08, 0x4e6: 0x08, 0x4e7: 0x08, -+ 0x4e8: 0x08, 0x4e9: 0x08, 0x4ea: 0x08, 0x4eb: 0x08, 0x4ec: 0x08, 0x4ed: 0x08, 0x4ee: 0x08, 0x4ef: 0x08, -+ 0x4f0: 0x08, 0x4f1: 0x08, 0x4f2: 0x08, 0x4f3: 0x08, 0x4f4: 0x08, 0x4f5: 0x08, 0x4f6: 0x08, 0x4f7: 0x08, -+ 0x4f8: 0x08, 0x4f9: 0x08, 0x4fa: 0x08, 0x4fb: 0x08, 0x4fc: 0x08, 0x4fd: 0x08, 0x4fe: 0x08, 0x4ff: 0x66, -+ // Block 0x14, offset 0x500 -+ 0x520: 0x10, -+ 0x530: 0x09, 0x531: 0x09, 0x532: 0x09, 0x533: 0x09, 0x534: 0x09, 0x535: 0x09, 0x536: 0x09, 0x537: 0x09, -+ 0x538: 0x09, 0x539: 0x09, 0x53a: 0x09, 0x53b: 0x09, 0x53c: 0x09, 0x53d: 0x09, 0x53e: 0x09, 0x53f: 0x11, -+ // Block 0x15, offset 0x540 -+ 0x540: 0x09, 0x541: 0x09, 0x542: 0x09, 0x543: 0x09, 0x544: 0x09, 0x545: 0x09, 0x546: 0x09, 0x547: 0x09, -+ 0x548: 0x09, 0x549: 0x09, 0x54a: 0x09, 0x54b: 0x09, 0x54c: 0x09, 0x54d: 0x09, 0x54e: 0x09, 0x54f: 0x11, -+} -+ -+// inverseData contains 4-byte entries of the following format: -+// <0 padding> -+// The last byte of the UTF-8-encoded rune is xor-ed with the last byte of the -+// UTF-8 encoding of the original rune. Mappings often have the following -+// pattern: -+// A -> A (U+FF21 -> U+0041) -+// B -> B (U+FF22 -> U+0042) -+// ... -+// By xor-ing the last byte the same entry can be shared by many mappings. This -+// reduces the total number of distinct entries by about two thirds. -+// The resulting entry for the aforementioned mappings is -+// { 0x01, 0xE0, 0x00, 0x00 } -+// Using this entry to map U+FF21 (UTF-8 [EF BC A1]), we get -+// E0 ^ A1 = 41. -+// Similarly, for U+FF22 (UTF-8 [EF BC A2]), we get -+// E0 ^ A2 = 42. -+// Note that because of the xor-ing, the byte sequence stored in the entry is -+// not valid UTF-8. -+var inverseData = [150][4]byte{ -+ {0x00, 0x00, 0x00, 0x00}, -+ {0x03, 0xe3, 0x80, 0xa0}, -+ {0x03, 0xef, 0xbc, 0xa0}, -+ {0x03, 0xef, 0xbc, 0xe0}, -+ {0x03, 0xef, 0xbd, 0xe0}, -+ {0x03, 0xef, 0xbf, 0x02}, -+ {0x03, 0xef, 0xbf, 0x00}, -+ {0x03, 0xef, 0xbf, 0x0e}, -+ {0x03, 0xef, 0xbf, 0x0c}, -+ {0x03, 0xef, 0xbf, 0x0f}, -+ {0x03, 0xef, 0xbf, 0x39}, -+ {0x03, 0xef, 0xbf, 0x3b}, -+ {0x03, 0xef, 0xbf, 0x3f}, -+ {0x03, 0xef, 0xbf, 0x2a}, -+ {0x03, 0xef, 0xbf, 0x0d}, -+ {0x03, 0xef, 0xbf, 0x25}, -+ {0x03, 0xef, 0xbd, 0x1a}, -+ {0x03, 0xef, 0xbd, 0x26}, -+ {0x01, 0xa0, 0x00, 0x00}, -+ {0x03, 0xef, 0xbd, 0x25}, -+ {0x03, 0xef, 0xbd, 0x23}, -+ {0x03, 0xef, 0xbd, 0x2e}, -+ {0x03, 0xef, 0xbe, 0x07}, -+ {0x03, 0xef, 0xbe, 0x05}, -+ {0x03, 0xef, 0xbd, 0x06}, -+ {0x03, 0xef, 0xbd, 0x13}, -+ {0x03, 0xef, 0xbd, 0x0b}, -+ {0x03, 0xef, 0xbd, 0x16}, -+ {0x03, 0xef, 0xbd, 0x0c}, -+ {0x03, 0xef, 0xbd, 0x15}, -+ {0x03, 0xef, 0xbd, 0x0d}, -+ {0x03, 0xef, 0xbd, 0x1c}, -+ {0x03, 0xef, 0xbd, 0x02}, -+ {0x03, 0xef, 0xbd, 0x1f}, -+ {0x03, 0xef, 0xbd, 0x1d}, -+ {0x03, 0xef, 0xbd, 0x17}, -+ {0x03, 0xef, 0xbd, 0x08}, -+ {0x03, 0xef, 0xbd, 0x09}, -+ {0x03, 0xef, 0xbd, 0x0e}, -+ {0x03, 0xef, 0xbd, 0x04}, -+ {0x03, 0xef, 0xbd, 0x05}, -+ {0x03, 0xef, 0xbe, 0x3f}, -+ {0x03, 0xef, 0xbe, 0x00}, -+ {0x03, 0xef, 0xbd, 0x2c}, -+ {0x03, 0xef, 0xbe, 0x06}, -+ {0x03, 0xef, 0xbe, 0x0c}, -+ {0x03, 0xef, 0xbe, 0x0f}, -+ {0x03, 0xef, 0xbe, 0x0d}, -+ {0x03, 0xef, 0xbe, 0x0b}, -+ {0x03, 0xef, 0xbe, 0x19}, -+ {0x03, 0xef, 0xbe, 0x15}, -+ {0x03, 0xef, 0xbe, 0x11}, -+ {0x03, 0xef, 0xbe, 0x31}, -+ {0x03, 0xef, 0xbe, 0x33}, -+ {0x03, 0xef, 0xbd, 0x0f}, -+ {0x03, 0xef, 0xbe, 0x30}, -+ {0x03, 0xef, 0xbe, 0x3e}, -+ {0x03, 0xef, 0xbe, 0x32}, -+ {0x03, 0xef, 0xbe, 0x36}, -+ {0x03, 0xef, 0xbd, 0x14}, -+ {0x03, 0xef, 0xbe, 0x2e}, -+ {0x03, 0xef, 0xbd, 0x1e}, -+ {0x03, 0xef, 0xbe, 0x10}, -+ {0x03, 0xef, 0xbf, 0x13}, -+ {0x03, 0xef, 0xbf, 0x15}, -+ {0x03, 0xef, 0xbf, 0x17}, -+ {0x03, 0xef, 0xbf, 0x1f}, -+ {0x03, 0xef, 0xbf, 0x1d}, -+ {0x03, 0xef, 0xbf, 0x1b}, -+ {0x03, 0xef, 0xbf, 0x09}, -+ {0x03, 0xef, 0xbf, 0x0b}, -+ {0x03, 0xef, 0xbf, 0x37}, -+ {0x03, 0xef, 0xbe, 0x04}, -+ {0x01, 0xe0, 0x00, 0x00}, -+ {0x03, 0xe2, 0xa6, 0x1a}, -+ {0x03, 0xe2, 0xa6, 0x26}, -+ {0x03, 0xe3, 0x80, 0x23}, -+ {0x03, 0xe3, 0x80, 0x2e}, -+ {0x03, 0xe3, 0x80, 0x25}, -+ {0x03, 0xe3, 0x83, 0x1e}, -+ {0x03, 0xe3, 0x83, 0x14}, -+ {0x03, 0xe3, 0x82, 0x06}, -+ {0x03, 0xe3, 0x82, 0x0b}, -+ {0x03, 0xe3, 0x82, 0x0c}, -+ {0x03, 0xe3, 0x82, 0x0d}, -+ {0x03, 0xe3, 0x82, 0x02}, -+ {0x03, 0xe3, 0x83, 0x0f}, -+ {0x03, 0xe3, 0x83, 0x08}, -+ {0x03, 0xe3, 0x83, 0x09}, -+ {0x03, 0xe3, 0x83, 0x2c}, -+ {0x03, 0xe3, 0x83, 0x0c}, -+ {0x03, 0xe3, 0x82, 0x13}, -+ {0x03, 0xe3, 0x82, 0x16}, -+ {0x03, 0xe3, 0x82, 0x15}, -+ {0x03, 0xe3, 0x82, 0x1c}, -+ {0x03, 0xe3, 0x82, 0x1f}, -+ {0x03, 0xe3, 0x82, 0x1d}, -+ {0x03, 0xe3, 0x82, 0x1a}, -+ {0x03, 0xe3, 0x82, 0x17}, -+ {0x03, 0xe3, 0x82, 0x08}, -+ {0x03, 0xe3, 0x82, 0x09}, -+ {0x03, 0xe3, 0x82, 0x0e}, -+ {0x03, 0xe3, 0x82, 0x04}, -+ {0x03, 0xe3, 0x82, 0x05}, -+ {0x03, 0xe3, 0x82, 0x3f}, -+ {0x03, 0xe3, 0x83, 0x00}, -+ {0x03, 0xe3, 0x83, 0x06}, -+ {0x03, 0xe3, 0x83, 0x05}, -+ {0x03, 0xe3, 0x83, 0x0d}, -+ {0x03, 0xe3, 0x83, 0x0b}, -+ {0x03, 0xe3, 0x83, 0x07}, -+ {0x03, 0xe3, 0x83, 0x19}, -+ {0x03, 0xe3, 0x83, 0x15}, -+ {0x03, 0xe3, 0x83, 0x11}, -+ {0x03, 0xe3, 0x83, 0x31}, -+ {0x03, 0xe3, 0x83, 0x33}, -+ {0x03, 0xe3, 0x83, 0x30}, -+ {0x03, 0xe3, 0x83, 0x3e}, -+ {0x03, 0xe3, 0x83, 0x32}, -+ {0x03, 0xe3, 0x83, 0x36}, -+ {0x03, 0xe3, 0x83, 0x2e}, -+ {0x03, 0xe3, 0x82, 0x07}, -+ {0x03, 0xe3, 0x85, 0x04}, -+ {0x03, 0xe3, 0x84, 0x10}, -+ {0x03, 0xe3, 0x85, 0x30}, -+ {0x03, 0xe3, 0x85, 0x0d}, -+ {0x03, 0xe3, 0x85, 0x13}, -+ {0x03, 0xe3, 0x85, 0x15}, -+ {0x03, 0xe3, 0x85, 0x17}, -+ {0x03, 0xe3, 0x85, 0x1f}, -+ {0x03, 0xe3, 0x85, 0x1d}, -+ {0x03, 0xe3, 0x85, 0x1b}, -+ {0x03, 0xe3, 0x85, 0x09}, -+ {0x03, 0xe3, 0x85, 0x0f}, -+ {0x03, 0xe3, 0x85, 0x0b}, -+ {0x03, 0xe3, 0x85, 0x37}, -+ {0x03, 0xe3, 0x85, 0x3b}, -+ {0x03, 0xe3, 0x85, 0x39}, -+ {0x03, 0xe3, 0x85, 0x3f}, -+ {0x02, 0xc2, 0x02, 0x00}, -+ {0x02, 0xc2, 0x0e, 0x00}, -+ {0x02, 0xc2, 0x0c, 0x00}, -+ {0x02, 0xc2, 0x00, 0x00}, -+ {0x03, 0xe2, 0x82, 0x0f}, -+ {0x03, 0xe2, 0x94, 0x2a}, -+ {0x03, 0xe2, 0x86, 0x39}, -+ {0x03, 0xe2, 0x86, 0x3b}, -+ {0x03, 0xe2, 0x86, 0x3f}, -+ {0x03, 0xe2, 0x96, 0x0d}, -+ {0x03, 0xe2, 0x97, 0x25}, -+} -+ -+// Total table size 15448 bytes (15KiB) -diff --git a/vendor/golang.org/x/text/width/tables9.0.0.go b/vendor/golang.org/x/text/width/tables9.0.0.go -index 7069e26..b3db84f 100644 ---- a/vendor/golang.org/x/text/width/tables9.0.0.go -+++ b/vendor/golang.org/x/text/width/tables9.0.0.go -@@ -1,5 +1,6 @@ - // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. - -+//go:build !go1.10 - // +build !go1.10 - - package width -diff --git a/vendor/modules.txt b/vendor/modules.txt -index 5fdb23a..ccc745b 100644 ---- a/vendor/modules.txt -+++ b/vendor/modules.txt -@@ -216,7 +216,7 @@ golang.org/x/crypto/ed25519/internal/edwards25519 - # golang.org/x/mod v0.2.0 - golang.org/x/mod/module - golang.org/x/mod/semver --# golang.org/x/net v0.0.0-20200513185701-a91f0712d120 -+# golang.org/x/net v0.0.0-20220919225225-ca03788e71a2 - ## explicit - golang.org/x/net/bpf - golang.org/x/net/http/httpguts -@@ -230,10 +230,12 @@ golang.org/x/net/ipv4 - golang.org/x/net/ipv6 - golang.org/x/net/netutil - golang.org/x/net/trace --# golang.org/x/sys v0.0.0-20200420163511-1957bb5e6d1f -+# golang.org/x/sys v0.0.0-20220908164124-27713097b956 -+## explicit -+golang.org/x/sys/internal/unsafeheader - golang.org/x/sys/unix - golang.org/x/sys/windows --# golang.org/x/text v0.3.2 -+# golang.org/x/text v0.3.7 - golang.org/x/text/secure/bidirule - golang.org/x/text/transform - golang.org/x/text/unicode/bidi --- -2.33.0 - diff --git a/0001-use-local-promu.patch b/0001-use-local-promu.patch new file mode 100644 index 0000000..5424463 --- /dev/null +++ b/0001-use-local-promu.patch @@ -0,0 +1,25 @@ +From aff2dabb339e1b7a249ac60dd0b341a35210acc3 Mon Sep 17 00:00:00 2001 +From: yangzhao_kl +Date: Tue, 5 Sep 2023 15:52:42 +0800 +Subject: [PATCH] use local promu + +--- + Makefile.common | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile.common b/Makefile.common +index e372d34..52658d5 100644 +--- a/Makefile.common ++++ b/Makefile.common +@@ -195,7 +195,7 @@ common-unused: + @git diff --exit-code -- go.sum go.mod + + .PHONY: common-build +-common-build: promu ++common-build: + @echo ">> building binaries" + $(PROMU) build --prefix $(PREFIX) $(PROMU_BINARIES) + +-- +2.33.0 + diff --git a/alertmanager.spec b/alertmanager.spec index 8dbc56c..5f6a4a4 100644 --- a/alertmanager.spec +++ b/alertmanager.spec @@ -1,19 +1,22 @@ %define debug_package %{nil} Name: alertmanager -Version: 0.21.0 -Release: 7 +Version: 0.26.0 +Release: 1 Summary: Prometheus Alertmanager. -License: ASL 2.0 +License: Apache-2.0 URL: https://github.com/prometheus/%{name} Source0: https://github.com/prometheus/%{name}/archive/refs/tags/v%{version}.tar.gz Source1: %{name}.service Source2: %{name}.default Source3: %{name}.yml -Patch0: 0001-update-sys-and-net-to-support-loong64.patch +Source4: vendor.tar.gz +Patch0: 0001-use-local-promu.patch -BuildRequires: golang +BuildRequires: make +BuildRequires: golang >= 1.18.0 +BuildRequires: promu BuildRequires: systemd %{?systemd_requires} @@ -27,19 +30,21 @@ takes care of silencing and inhibition of alerts. %prep %setup -q -n %{name}-%{version} -%ifarch loongarch64 %patch0 -p1 -%endif +tar -xzvf %{SOURCE4} %build +mkdir -p $(go env GOPATH)/bin/ +cp -n $(which promu) $(go env GOPATH)/bin/ + export GOFLAGS="-mod=vendor -buildmode=pie" -go build -ldflags '-w -s -linkmode=external -extldflags "-Wl,-z,relro -Wl,-z,now -pie"' -mod=vendor -o %{_builddir}/%{name}-%{version}/bin/alertmanager ./cmd/alertmanager -go build -ldflags '-w -s -linkmode=external -extldflags "-Wl,-z,relro -Wl,-z,now -pie"' -mod=vendor -o %{_builddir}/%{name}-%{version}/bin/amtool ./cmd/amtool +make build %install mkdir -vp %{buildroot}%{_sharedstatedir}/prometheus install -D -m 755 -vd %{buildroot}%{_bindir} -install -D -m 755 -vp %{_builddir}/%{name}-%{version}/bin/* %{buildroot}%{_bindir} +install -D -m 755 -vp alertmanager %{buildroot}%{_bindir} +install -D -m 755 -vp amtool %{buildroot}%{_bindir} install -D -m 644 %{SOURCE1} %{buildroot}%{_unitdir}/%{name}.service install -D -m 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/default/%{name} install -D -m 644 %{SOURCE3} %{buildroot}%{_sysconfdir}/prometheus/%{name}.yml @@ -70,6 +75,9 @@ exit 0 %dir %attr(755, prometheus, prometheus)%{_sharedstatedir}/prometheus %changelog +* Tue Sep 5 2023 Zhengxin Guo - 0.26.0-1 +- update to 0.26.0 to fix CVE-2023-40577 + * Wed May 31 2023 Wenlong Zhang - 0.21.0-7 - update sys and net to support loong64 diff --git a/v0.21.0.tar.gz b/v0.21.0.tar.gz deleted file mode 100644 index 1024c83aa2577ebeac39647c7b348f84feb21e9b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5704209 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

2*y_IVt$}4$k9T7UH3j8E^=*td`n&%d?KlRz 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%0D}H$%FKeVW*bH@46m0rDDE#I9WT5+a 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 z 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

GSnVo{w+n)%C1(AA(kD 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

JcjmXz}|&oK9tvO-ItH^4_5+R^u|1M zkQDdAUVvo%9_Db> z$WDW=YWOchtu=i)i#p*U`~8i6N;;%G^|eD|3rsE5{S#ySaj4T*NH2rsAks1~y#C$( z?zI@NEs7+<-hm#g^q+C>C^XgIJU+HoX>~ecHfKcrc&0gaMB_qRtOb^DKEDZrHC>Fl z>(VuL&W}OrDe+jj_Q?ph;x?%pphtPHQu^t+Na?0*6^aA!`F6jZ0VaCm zr}Fm8Mz{d#Cdp_WlSGJJWScE8P9thZMMof3U;4W?wxV7%KQ1F&ZWZ7&zolePjPs~B ze>ruZCu>$al=KNo=M*Z_y~v)h_4Wgo87Zt1h%ll#iSaHHk`(hk=K)_#w+Dv6%gwIe z(J+4Eina^?sY=ho(!GVA#!122g#V?TLbiCAHuRl-h`P{6eMCu}iLimXVAH_~mx+#|c#+=x2b9KA0B8YCN3x%X2k~v zZC7eMtT{Hrj|q!--l0+(@OboS;C~kPJ5ua zC(KhrXq#OE^Qgf)rT>tg84AgDem7)CA7F>}hQ8XGo&axypCL`lY3gmI33tOE0-MS4 zGk7LEW$ajSiBNs*p%D_Z39HflmR!Di^>Eo zDJ7;&6X%Wjxj^8m({6_K44%}d+=-kT)1`L`vkWhopdVOuiu1ocAv7n>qiy{m{m?^;u+4*+w$iu+WAR*C>T{XKq9|wGzQWaUCeuW^zRp;@ zmamKHR2=m1?vli6)l3@tFrD{2`yY>RyLMpY+Vti;%#EF$FV4g-y_7Jq+*A=SUGP3~ zjK5s^PT+$j9R*zk*%*QDh#uTtlGvA=u)6KT3Jp0kxuJKmraSJTyE71I7U$OkJXGFf zWqOI4&tI?d14-%_Z*R1aSksxyySS&F53O{hA%!Cgje((Ri2?F(0D6Vbs$)M zPt%{FLf{lnZ8z04qG5fYDZmDSl7SXAe@fQq)M!{(XE%gbc zP5YGfA@8bF-DR*gj$54ny~4jCUY&Yjl;g&kU5%Uwheu~)+O$EKUcp+(nI#L_#=?zF zGZ#j~B9EU~291qfHk?2!E05)9oVLHZV%f3*B&&&M@wM*lQRR!1omg8F+JNy#Rq&CZd2av zovB4ds*tEH0b!w#IyKNkaVL~=D2+)r>Kj#>%2LRiqnC?;Yph*MP`~)yLMj_UnjZFe z#3{CpfaNmRw=WezU-X9tZCOU*-A(P#k9A5dSF$5WQv6idm6_ZDL1~}&tpgC1PV)S> zNl;g0eDqJyJ<5PK;!}09af5Nk*@XZzz@7Y(r-GYAM~^c77;h4@ z-9%g3nzoUT&%#*xxasIau(6{g6no2t^9}1(ucnN-DGFFm5V7jFZs*pNAwR676X{0Z zhPBE|J0qPT=6J7Y?s)qdkiKz)AMxB9w=Q-GUxH!gOZhM;jHlN6PYdG`?r?IdWFT#; zvSiU}Ij#(Q8yoEcG8;Dh{+IjgsjVEvmB}6L_+3>4$X7+k1;VfyK12=BFDvr+_>o$( zYKt<~o^rk^gW^&o?UOqP1&`^uyLw>W)OVF1K$qqZ=u?^>8+3RF4EmNcYYFUK=4emJpZW_1>ebMZ;C&4zgxN zFuwbMp*k!~S1EF^hjh~;k{D_u3wx)LU5Kr2gSoO_AJHCZHxAlQ*R~wa-h5g7D150b zx=?rEa7Axt572`YuVgi3@wjcMq8)$YE9wX3%xFReV(D3FLv{D~Tg0G>xbA~vg~1!< zSNIX14jG$}%`aPKg~Knp^rk8bsklZ>#Y8)jNBy~oy$T(HWFuh+-e}g6-QaB=9>Tpo zQrNwB03_M}sI5q6Is;7U$^8-tO z+8O)oTZe~c82ctx*DyL_g2eEX;|H`xL2OFfG6wo~9CxjZTlIthD+fpUq$X+Xdgy@q zsn9_fKYVENZik!G(0{m{{|JWJ{s_vs$Z$iz12xaL-I61WFA7O~U)pP3y-u$uq9q}h;{ znez;HIp0$~Fw0nV0rcxsw?`M|hBrJXQrcIen@vsqt}@^>dYA;*{wmN}QfFERC21J8Rg%gr$(;#h<<4SeY?UJSq;j{S+%L&t zge|${GE3%u88(~yFl;v4e*66spZDkWdOe?y#}!=s6-ne2z2GRvq~H( zVWmd~+5$Ly34}fQ%_0V;NLc}_v7Jrtl8X=IeMSCz`0JsiTB1~A2BDoNQ}cU)8Jb$%zDq=rI5S>rmrJfeYf{=r4Wh`t zeJi}%0lDCn`&436_RO`qf{vEY;D++js#wORR!n}%Yw`XBAEdiMT?u$Gpmo#6i3fc?Oi zw+VfF;dM@1nh?Z2Df2jmx*>UHf08b;ooKQG2)_hdPmV&}y$Gz6U3zVz6I1heP-m6< zYs@VJs%6)VcyB z?>-UK+S0ZP(sC;#AwOapvj-`LW0k9=LNEaMjWPoIAO~>T&0ODzdpY(0__T*Co zcOS0FzB4oiO3jm1KBf^u&9p)*Sd(uL=XQ+ zrkFVGcD8c&H4G0bUbXDCqyXoHCDlyE!)SCa;yu>2?{Mb%)ASzW6SPZeUfN+-F-tnX z0z9aUH8`cqkwqb)xO`;~R+VyCuGbCjJqW$9^U7KSVeU$!R_HOR+BSGee@pBrBUm<6 zO7pUO@9QtP-6G)KVdbj1Su4dcA!Z}$ta)k?q-?^frhXSrUXn}AJhU5|ch>@!EerAm za$ODoX34CbQ0vr6+pjr(W_0gz9EeJ4o!L}xA2;s5zvB)~eguqrZ*o(Gi0GST^W;CV zmt;#_DSyG}eTb#~^CFu^J%0MZPmR4(b=UDQAs%0aRLTE-ZdoTA2D^lKHImh*8_SVg z(&}`Y*d>vEGot=zlm!hK3`Aub&yLH7X$P$@rJqDP;Iw_$`^HDlU@-G!gN>bY%&wJR zdi{6SbeofQt}-tGpKfI=#@Wx3^S?s4$lQ&rp_3H2$qKII5zM{APxEeD9{JWxpx>xI z+cAmSx8zDYRBuRmETNWf%<4%oa0o!XvwJZ7E+QXn$i?E>lf~!LMr^yzs`s$ow^$}1 zMa|sJi{8Ev)vcALIm`R}-J<%oypanZrq4|GVeqNO6MhxTh0G$t^N_E<9svNiBVJu2 zh9%YAU}i}58)uCXq>`?5Kk|b|6BZgF@p6G-dv@0Koz9vJDnf59>27_P{;Bh)7%n2s94M{y$-lE&Ewq|iI|&@A0R8x4^8EdexfsKczfpAU zAOF^zf)!16>->tl9{@x}6oLBFH)AI{04lJWgN_LSz&c(Cq_aCvU95an>;|9rE~`@njihHlGx4 zr4~h0W8cD@s&UbCR7jqRFJDYG;F$Pw`h4CeW|7CskZbk)(0}Q*^04l15lc4Ci_n43 zaMKOh)SphBg)IOYTy=`@S1T8^gBo8+eVq18CZWhJCDnjH`!Fop8m1eiNB3V!uE;Xl z%Qsp1mr>Itu@;kKku-<$agq$FSMi=LSAMI9S10)mA4jB}ee+S<3?xp}Ub6kS^Q z<5jncokg*Bc=`Kaaa?=j>8@s4&Y$X}4P$4G>rzW3<>TxaUe=-5PeN>e~;K`_al zT&fjxGV;AW*jo?NL_S|;_{R9`#0K#Qs^fEUcnC_}ywSy9w0Nps57gP}(Fqw|=r-zX z+JblGE=<*pwGsZ1esE(3OqSo71M84Wx8i>J1@YO`riXdjd<~+XtnNJkG>ui|>Bw*V zC7b{2pctROs3+kYwRJn4y^1kVFG?pccmH--^$ENvD{}pbA-nTcQ}EK;PBD?~GO)bp zthNm1QY*0d^TgyigKI$>27BXApt&sSLKrIXkT~4RPqIYGWd0+TGikQ^8u1iT3vot^ zvl5u=ru?K_`uourH7tA6Rl`i4@3;YQu1x>jnve3^=BvZ*gZnL-?`;Ld%f59iNPUgG zu;HT8RAM)^)@`5>Dus=$uj5C#hj#T{neZZx*}%VFn+%VCRbCT$_i$uV*pSoT&>X5# z*{GjI#T6Bg)HW|@qddbAK0?p-=el!!s%kz=7M?$f`0bZe&PN1>1Z*_JR6-(SL}Ry5 zLel3LPaZ!^DP9k7 z)9a@IN>=xWOi7{qW^H_cvUBrFyp2rUkxdP9bN`0r)Q-W1avi|b1S7qlF&Vhzov|J_ zrSj1|r!Y#-EvZH+C{0gt7LlOn4`FNV8jU348&RW=cugtAqwNiXOxPvXQZoD>M3|BX zv(46{(I@|sB0>2Ub7NbqdFbyfE5lboh34xrekP*&>WEn~J*e_BTzY=xcjpKvYR-li z(rTr79kiqf)M1HftZv8G3KQlRw>?+nCr1XH+M;bpC;0oO4GUvjKy~mTOf|P@n^8S; z`Oc`h9(~2@GAGe}57G%{=lVEI+$8cQY^GZnaDu zk0|t;Z?2U$indDf+oDALW$|@~i+45&chNCTrPvEr;tfI0iT~?5-PNKD@B_Bo)DoOOQoUF)^+kUk52m7;%m4CDUDxJxEy_zV0Wm|fDx&$pm z9Dzdz9zyfv?^eMugy!BGEh#k$RZmhBvyF$B;L%#&2wua_?ct9bvgGwIElt!qu3jJ+ zl^&F-(P2}DXr&rCLt*5bzsF>2Y=G#NAx1>k%KL2grP=DP^)cXb@|bw&tQj5v^zwNU zKOs&P6ub8%BQUq5l7V~sqq>lLkzSf!3#aE?`yafLf_9vyYa>TepvIzgiTSU5-SsyX zqtd`}`DIBDRqf37;F-$a2tROp{w|!iNj`@V1vaUu5cubKk;Rq{Q>mv&cHP%9j!6gZMo- zJ=5Ssj=pQo*WNIy(1w+A-oLyne2wMSIWNESLb6F1x{-V65B3CM4i&=KGs0&>d^6_# z;IWT~C8XiiUoHGSB(C%*#pro#f9sC8)X@amETm}%(E=U_o&C=V#ciCZjRtV%C9@z> zEH4t49iO=O zhH)05%_6w3E0hNOCaKUuKcw=rWop3f#$>xvK-gy@lN0Ix?$^Fh8CAWA{2vNU*@4rG zaatd0@8U!Qj5%%f9&GlxfuI~sZvj{|S`4$`U1 zpm%I2K1*k=&#cL)a$vL%QliC@a2zS&826pc5-j+nhD63Y^(txV?q}zPlb}cVIss|< zLeXrW_vmJ}pnx~inyW-Ch{b+Ed%xNLL3Ig>Z5fVVW{6(>9_U3YE8N7bw3wD973H0O zJfh;SHB$Vh#~~<#k*s?vn)EXhsX4tT@2K=ytz1vb;IT6c%5i;MGcnrj@O*kB(?nf%l% zM}DkTL+i_|ENK!aalcO7OFgenX$P2&-$_I~nEs(e>Bwsz9DT}fsO)meH#z9mb;jH< zQI_o_&iQr>gU$BaDKUjbcvHgRE|G=rBj^@Qu0$PU>(6*v8Y!*KaxK%PU29mpSxbt7 z`C#O{eDpWpr*T+sZq$HhN_>Vo^hyCEU0cnk-#2g<%zdNk-AHjwotKzp6Jf)af?UYFdb!|UHjPSm0HU>E9EbU?%kdT^-a%-P8s0Xy@q(NGyz~tIf62bnq8U0P}d_^1I{e71zz4qu${?GZ} zq*UQ+?TXP-_oUQ|?{&Em5B~nLv;HboangJGde9TTD&m~UMB(Img@9FZ{vN}1%WSP< z6?(ibt-X8d!$OmK_^0BWaRdByi4C?hXZK>1@%FPJ#yyDh{IP)qa<+=M4_-Cwo?o+g z3y}1+W~`-9ilMN<(H9F1>H<&$HTIh7v_kxesd2s7|WF8HDDpTb%rK9M_ROg zWYjxOAa}T1bUJ+~nKk}n2Aa|ho6cvR-puu>V#zbRR=d8CywuiXQUApgf0-L#pn2eE ztKs)W^#A0`dE}2ZNNlR}qzF1dv#u4t+pqE&`cvo=*zvGmx2sl4 zPMZ9KJHEv)6#o2|(%bw@hL=|NB-kJw-Fp(JaF`X?dOm2hJ$MZE{g<>Yuc>6DH0ug= zH+L_5E@6<_{8JX}D^EV2GV9n{iEG}LCe>#nrs(vUce@;)x=@48+~@L703fba;PcAr zcK0E-kBd@_h*(-v14)N;BX8pPvIOj-PJssHI7|e{(2Y9M*eOjiGs&NWi#L87$o;2z zkY+!vf*a!pqpbUPL@jEj z=^_Dl&0{1&)*bor6i`T|39?qBX55`ml4 ztTIYnP-p&)yGQe(iI6~$_UVw~NBof1YNY591^6Lo#RyvJx(dCUd@_UDWd3`^gi&FO z`g3N-a*@0aL|)D;8#ivwB? zyH9zoY6U--Hd`TG!wx&TO_9C+dvyW!CVEyq#1Pox;)SVNxt7NI=0i0>k5{XewhK(*4Yo?dWY)nwKkw zwq{W)ewP26PAyl7_15crX!9d?EIr!g$Is&M%N>ZHrbI8AFVrVQNK2Kh* z*nEb{-AA`}d#-a6d5(K06_PZLsmCzA^2MzwZPkD5?zOzp3k3bI&cU&QN@ccEy8)8E z3_iakIf%e9_R$>s`GH5W9SQCbvTKP-X}0~oGK|-!6Oi^e+qrL1CnAR`pnz9Xxt#|# z2T$)^4PAWvar1KZ-ei?fVd$^$8gJhmBIvIia1DXnS&hB!%%ZX^)9Zx9HzO)1FowvYh>@cp{6n`)*AO1@0 z-DKkUXho&1j`vy{C=99Z)4Vvcc=QUlLdz?{gNJ93+wh{@`o{Z?@)O(OwT!hcgTr}|<=61xY5UW~_xT0Yu=&Eq-dQw( zovQk)NgBi~3cS6Sxh+lmS_Rp=B}#894(RwUuy%t$5cR>J zVcsy^)M@@p$#w+I)pteBkP#2?ssF8j{KxH6Ll&>m-eY?wXNJYMYKc<@ z$n+GuG8bEn_|}!Wd)%&yqp2m&?ckC()zsfg^-3OQW}E1ouOG z(FTv>s*SqkvAEaQzQrN|Yipac>j_$y)FK@E-;dg!(Z9>Ou;V?w<{hY-@viX{s<9op z+K{py-bpgmg_82b#P0Mnu8oXO9*+O#oQs>eG=TK>IPl z+)*2y*^v_IfK6xLljPx*rG&OrMnCYt18+E|Td^Qp>f6oq+!1N!AKkl{*o{5UGrq+= z8^mJ^;d%-=jfLk@y1$d{-Cr5~kXg=c5hyplS%GI|7GQ?G^555XH+XBB-&8Ilyz~YS zC3I2Cn@G+VXAbz?bZB(l8wiU6y_6lffSNhRWKfqc-X=k|&3qo_FxprNBV4?#N`zky zqN3NY3jbQF)a;5wUTC;dHA8d8tmU7;&e|!AR6v9zWnlNRPXNv-CJ<%6*W}K&DZ|JuyzX#%pMzv8RUz8_C-Z-bzCnp!7^MH&WihU{aZJ0ld*?;`=YOmJ! zHKqHp+#S5101TMRW<<2;?sKqd_bhOjj&S2{8svXsYOt>-*=!X!dx5xYM|gfUhF%^} zme?Gs>mgLGu^b*x=GhP?X?EZG%don1pB@8G?^@v8anjYGX&IhPWqku@!!2o?eW6;6 zeV1DC^L9eV%-k?1-yJ%0U%D4koIweWf?u@QY$-NGN=Uq_es`Fu&;Lw$mpI@5u_4Ym zw>;#wb)5VkdnF70>!#Cwxg#s?UtiD0@nk77yRV+`7R}fDwfdcfCTsr?YrtFQ6z4SG zuye=n9C9TgWym@5I1j2jZmNG@E6mcX+Nb}t9Dxr_^+j>yM;)V>kO3s7s~`Vf3R`(bI3)6&%@XWoWDbktD?&Zp>Tmq@J=;E7KJZ*LSq9YtQ!Yr(_0^c< zMR`@f&dcy?==O{E_|fXU;s-fA+0;0vJvqxwZW&gr@9~jcJAtO+-#P3vE(m)x`CHI{~HW$S)&(Sn}nlfp*Zr9Z3}Q_yG)e^ z!l@%XI;ezo?kFaR^B)F9uL2g zT@6`^TX;)fO^?_=d8OQjbhNmE#P$_B$66Wd1oJH3V4yd(Wy2HZP- zvZk90A_K$t1MPQ{df%t$D9Q2oT#f7>s`zPD>&p|c|Ej*kVk^8hCrogerXjL{>##K^ zl~BhTs~wFuC)lAttY^`3fVTw$sn%WW4iPh=D=!0$!cm%P_UM3 zGxd?+g$$%r`bbEBE7!4Ici6hmGI~KlR~H~qw|Uh`=%@`Rd@reas(78)MuXeT#TxI- zDPaWJsH^E*vdn05)G`R1EZ@?f%dmv*4N*jbC5}^tA?}ULx~&8&jw?aI8^@nP4xTGzV@Bc@1)a(tu73{NB{&2G*E$y_{S%OtwMfZd-s)0gf+ymQJ@^GTSb0q$NS-!g%wQN~}K`_n}Eq zVRwVrdF%YS>vMv0%1>q;xy}r2)-eM6b%?<>ejqBjNzC+t(cbKN!aHEkzsN8)t`8QW znlG`$sZ}(oqb$`foZ|kq`Er-TH7tCRFveBBY-1Pb_Xf4H5yO+x^4h0Y(HRjplxyhs z-)y-I@)jjgpv!ew^56FCi@a^3-|M~Nxx6r!3j5lLXjQ_~@1kbT?@3s5leB{ zPp$f)&T#OmZq@YOo77hR0wqOARu`kO(Wy3J47;lGuB(xkZRSiVye-Aw3iBzMHUXnD zJBcZt`I{V|%1tcD+`Gc&JrCJuW7O#iG7svU<`wTR$mlsbpC<}%y)jPd>=|SGw1@!` zmN}97FhaFWp=(<)oAqq^zjl;6-7a{*ab>VlWetsSAT2Im>fV=T-ZR)zdbCV9J-#2v zxCljgO)c1BR6L01qW`(Mo!}0QBzL`|4)U9XCLnWXKRt#03wfSZy^R^-#rQAn46tuE zhPlev8(Lz%Rd{_^C3;TNAg9G+VfXZhee6t;(8`{+H~yGC4>Wk&6sorJZ_|D0FWQeC zuv28}hltL;!k}$j7a=FPW+oMoZ(IlTH6Ulz;zcFD3%FWtt;dmO3H!<3xneU#Ad}5TSA&%oK3(! zzH44g_6s_!pB@F@L+{9RpqEoAeS(aI2EQotR7SdqpbYa#woTEnrrIv`Nn+IhA`6|~ zu+*Skgdm7jO*gg`V>##JjaY(Db~Jmp)Y>QlPUWkuS+;CmrEdad#a6@OK?UN8Kxmf| zU*ZyGDT%3~*LkwHQ8qYByw~-Tf)!Xy;MCkXIpR8POBf7D7hSS4t*+sY#L0zaZhleL)ZUvT20~ZzQE$d3nK;$~M@RHD8- zwGPR7oh;SucLmv~SMvgSjvcg>Y_EKpmzhVGAMHQsm+a#~)0kezEI1J}_r&U5le;;b zYkYHsX1iWDFD8N#aNpH+i?yD$%L_$utTqCqaWLXYI(p6oKYenN1@!i)395mn4HoE! zNnsC~+YS9BaTxW=r&tY+;7=v{B-TLal30pjl4oBc-YZW7If0ifHVodZK;&H5C7lc( z$6|BMlJdh`CLcw*%Z4cL&1=h^O~vwTcxB~Sa73DoHN3!OBRZj;Wg0CQ)WiHHci^m$8J ze!psnhlM3kzJy|(-^K)czmJ*z+2u2}y*icV=U0#W&TB% z_AE!`^C&68ruySX)6wAmu+`O4H0 zrs8fIIcn3{c`W>e{yB89Ph)rCvd2b-A1B=%osjFRJ3Z|Mt#M5qKr-==AVFXD_bh-5 zP=W3s`=YjNV`Zye7OqCI!sN_zd}If@77_p_Ma5TOZiUCAn|6t{9|&!tz1tjSP@}N8 zw}T137?y)tSw83Z3#109#OH54ur18~Z*|Nq8yr}^(Z`Bc@fV$043<|_>U=pg<6*|P zeld4X5$t1n1|G6iHZ3?CzRq+AP=ea_%Y#stQ>~Buj2QI3!mCsCkTMS@DhQs+sI*D< zhx)kYwp|dmw)7kmUSWL}fUCg~Z`x??2__RV%aPqw$GYf9;U*a~s_ZGlG3_LD2MZ?E6|({gIQBu2H(>ubyIA zMIVY~^cOBFBlWqdYqLRtb!WJ5k~b`su=-RqMSMvD>%^NvyAm+=;4{+8k7`)v6Xrmjv)EUy_5zk{#z4$K(RgV zmZGC5l0+#;xgJz(rF0eY40|E1SabO6Z#L>5iM}XvOdJYrvtm04qf_Sd8U#(zR#mj8 zB&VDeslP~MbVO{{3pB+qfLIRN9?c6|C&RhST-a3=b0PYjIT3k&k~HSV8bd^-FwuH? zdbo8s?T?z*Nx0+)wP`Svf(b3WxPo@Tou>z^D|%O8Af%bL?#%CI61`wz7KWin;WBD- z4Bs1HS6gYpNGcA>;Ei~s^=2=9U%mcy1M**wl)a&^By|(L$&hdQEj(lHJGq?oQo76f zkNiUdG#GF6bZOY2&Uia}KrsnmP^>uV7kO}M81Qg<(yNju=Q>}MbsDcsa7hHM?AL-; zTu*&5xMykoy1{+Ee4dM7|1ar&ofPu!mXY_tnh|EJy6@iPN2YR}s&51BmXTOLUN(v@ z6OPh`g> zmsG2cZ+N>u!^dzl&-pA^G7z73Jv}5n|1^VTQg~c9bxw~VsXZ8XrH=Y z>LZBkCKv?U8umrZ(@y$pCpElf2jcfMAL2H}4`xfR6Y0B?9`ajqn}4S=swa&2l`zrL zeA@G<-EZ$%NfpZ!n3WAu_!!gqMc_|PDnC5f1xsPI=DBS1a}nQ`+tgVBOE>eKFv0hB zH}c78?>xYlkmxLTU>2{AYJiFY7Ena%{Iw1oDDslcjJ&VS1;-GD2 zsP8mBS;x_P=RCA5zt|oBLf|mRWL6OcK{In_D_bLOxE(; z&ep}&y4BT>1>|Sni0h(ssD;q5qq?$tb({=AJc2XO zZBhwQtt}_pd=nmPd~(?1AS|?uDzRi{w;~SMr-e_=V#7y|)TM{EPa>VjM~7fs$dq#E zhwIbTjoV#YaJfEI8Q9kd51q;JtNT@K8>A`2T&_V{Tf-&RR=VxJNG41#0Vn4d8{y!N z-7kVw+uBA96HtN)?y{LyMK!ePO)Wu!IC}tUnaRI(zfCK8PwDGyuJTpZ4!xExVQ(-? zC&uSY2K>;RF&%zJ#>`kFOFhm?I7&49SaeG;gUlUj&$9i>A8u?&;Ul>4HF^;eVZdXe z8Foq^fd5;H#EpxA)aD5@VlsT*i3ZkyxP4fgS&lic;V0o^btdAjM_3$@UIFrn4+v4` zjzy8diw40f5Me4eL)X+tVM%&F6&a!sWZhE{R%dYDErfeY zvnICCEdpcU8%#Uu0dH;JN(Hu+^(PM3bTDG(L8?uo|8sAjMA;@j5G!(-`iNac?e2~Y zk+5gP1~optBJ~6%~rHJ_JN5KH}E0gfTQsU78*k$|^u>oT$l z5Cg!~weM41Bh?ZWm`>$~lHXi|e#%R3_-{#MV-y$O)q~o_yXEJjw)MGQM&*iOb4;EIB&DN}$BApAhv8pm*P(s9u`5cKYW28lB zWaDBHA)1CYV5v5I5(Ng+LsUpY%DlQVV0A_6hA^#zq5a&vCWxiu`@21-!WD?m_nMJt zoW(Aa&kg8VJ_;& z?Rrry=La`=P7baU>Qpy70O+3P(QHC%aEj8=Oa_~46q(GGmU6azw!u_~r<^Cc+W9it| zfhRTit=x1CF1@JaNH}H?t|c;+ZS1bRk5n*9+96YGn`4IOuclAA%5?KNHm``DPSJh3CD9a- z%IxpCKx%eb9vo3+ZENl3u5y-uuAS2WFMA=h-_{tfY&?}xOZtm_-DZ1(Y>4~1xRDA0 zC+8FcUHWNw5fvBuQO+c!|9i5vKyv%!(zzz!nYu;*nw=*8WhZ2)zjz(igig+#Ng-jd z5a8emKPg0{GM4^5p-G0XiFn9-ZNsN*RkBq!H+B0xt)`h^e7@vj*Y}_=+C~Avmv2sm z)>?47=SUUtQobCOOPz8kQzo9=i-2n)6D|5-AIuLc!g%Cnu7O@%}y zj=?&)X!sWC((-ld#!nS$-ox)AZEKaq!H-fvMJa2?5o-A^XwD1y4v+xUBOGwNW1Y|S z-^OE%&~DW9sNWP_0cidTszD7Bva0^ov!fkmsr(aT1)IaYko)Aa1pEuJ0GI$s5_uUvcQV#nqj);&_u6g zU}NtE$-6cMI++m%+!1wPn4N5%cR+2>efEGo`X8&ugFD64oTi+Rd}R?}zc|~ie!%>xcT~8V?v|W#@=(B=`Y-m5*&bTPtyTWSB!ALy?J>9 z!1cYJiy1U_wOq{+xA1h^sHGti7^NB>vNKk(m+ zTkvOM-r8fdjz$lCj#8@0%84EG{_iRt0e`cvF$|eox@9#6ee!A8Rc3QMvgGi0RrUT* zTwg1Cj^9L_>P#6TJsQqFStsY3y%DiF6^gd7Cltz5w2!BZ2X|gHOb4#K%0IBF+BDhz zariHY?t#F$z;(?yHEVCl6vj*LicG`yI}gy%@lww;_!@fVeiyXEb5hHB&MlhVp`n}a za=m}EZ1Z@v+m8oIKXW!bQZi7tOq;1+!dX451*TKJKbGFkWQ0b+!*}z}SPx>Rmpu4+ z-Mh&bw{9rKFcwg#?!(%?`=>s9=ffpGtk2KEZdZ3a@a^2{h*M#o>?eV8xPj%^ufl6W2~4?uL+SR>-YRMiu9f*E z&sq9fUb`GDC3m52?U&+;KGbd4dB$5jgmnUAedOb=F~64bS|`X?CZ~BpffvdfBkz3p z`o3M=EdMz)iMv=pK~IrjyB$$q^TY8?H-rD7-wAfLdw^RTOcDiXGpN=(>BF!zy z{XgRO&r(?`=M-=G5wZJ?+iSPOD7}|0VVKK_`x<+3f(W7&_=Vi%;cISadI5c7_5v_r z2?`EXp&6l~rr-JrUMjW8Lb?oGS3*FE=*NK6;`-HZ;fwK3;W;>4>B=LQCft>`?3b4X zL6(AE#pmb{du3)4|D)8Tvd~JY_ZTGvcI0X@>x0o5qq+^ztb}}!DC}=K##dVOC|WZO z$eJWCy130rZGqW`@~H`oebU;qvUo#I=NNsjbR#LWljh(@YeEv<8+EkbtvZbs{$u=b zEkJ~TQ=3e?;Ayax{7&Jy-Gs<9^>8QiU|axK39#!JpoJQ5#hN^q!;c+Mi@MNq_ydQD zcBrlYcP~7a|1j0F;Sp7_wk<9MwY>O7=ee;c|9e94NWuteg!(qhbSCm(F zWg$Brt5sdHb2*WQ05`3b1I;EbFnDLvangxVeiFQopDS8D2UO+TM;?kl@(ul5?&wnH z!t9elGjvIbqg;l@uGZQo=<}GYLo-08zDb$Fpfn$hms=+8{nJt__|M7fQHW00I)AL3 zablusPCN2X#@FgVl`Z4)8j^j}63kzhSsnThQ2G?|CVqsoJE8$g_2IB-U&#znIICr&CF-;YzCU&*os#1Zdi6y{$Ks+7TJG+v^g2eI8cytllr1QsN7atB$1 z$t6!V#un7RF6HDnVJ_`FT0?b3etNVh-C*uMhqP|&nG(?iTJG9_JDm-Qi`gzxApSh& z8%48rhGy3oXWPcU8|2|#ow?sTu%&x|HVO2hlwxfe&KU5sCVA7~V+*=-83QJVr~Kb) znCur1(ZRpUOXVgK>wJ`-0P#(?n@lFWqE?n~2>{M~nf*I*6bgot0!o1i)5PlfjauB#GW{1S=`qvfb0zbWe;MCZ z&;~1#;V|s-@kHpdjmAoNhF(=^Y5pAJ$7QYHy|T_mO-M^%9|6)4N!r-H;Mw^w5v1JC z92=a!NBvIQC}rG*)lGNj%sZ4wT z#JG@mr2$sB)8A6A=l^p0{^lsoY37|lVc^50+Wgvko62|7yFRO|YX%wqdhXoxEqi3A zA*!3W-Ta~PUjWzuu$Y^77~6a!Nkej4WG7+1r7rJYV%z7d6km2KPeX`{ZC_dIUFmWR zvYq$Osd<)NO=RDyXlkFXd;+)1kiS?>}#dw6c5idzUqJkN34NKhP@5oPzf{HU;RdG_qr;P0az>>&e7I5@9|j zd^>$MF11@c&S@|uz-9P^31lkjgmkd^4Y2=Py&gPty)q+mK>-u%bLo}n7o2GHyr`-P z=D*R$cKcuSw3`;H@=9H7D=0SSo>X^s`)y(zcT(%pBAo=A+Bf>}$ewx7XL(UJ8RSn7 zpHjKYervKOEwln{sklpO(vg{4-3Yp7#_m+1j_Vw9A?Wk!4~irIdA&t{bEor-<%z$R z?;h5D4a%qHP=O1M8>{rSv5XJRca#fwl53CLHxH^Aez@kpA9J}kJzgyCkKBjH|`(! z*$E3d5_U>Wpv`-ju_ZS`!f)7^uINRZY~dFC7#rnw27-^y<<0|;(pXXNX^o(Gz@$3- zZjutvvFP=Cn+>P_`XvGHzOkun9<{l!2I?uB;o`)OTk!C%a2#OL_xf6!FEd`!71IQ} z?ca}Kt&-R1jq+`D=q_=K=WNiS^bRoR!_xE*UFmxxml{MLTyTCAyQF0kW#0Tnd_F3Q zAIC!-CAp3ov8VJY&QZP52;}dw*tG3)FO&x=OW^M|HFXf8r3|85 z1CqR@Xg_%j6S{{z)}umB^+WQk-;53^LOBvNLQoRd^=Ab%rdlA66gC!B&=EY3NZmrsB_cx#90 za32)i$I@hKj=N=LYQapSLEMDzbcNlvdD0hrySp^Pd@0CR0cekU37URAOE_4+OE zW>fYdrS!hgr&|N8-1`8@$ltGJOF>F#j${&Du3Pz3)84_bgt^zna(!JmCbnZ({DOaRWk@VZ1Ur z6;@~t-gxU;!00*dr=M^TM>`ENC?z6z1?Vo98ds>O6kIwnxt&AZSe{_F>j}+AvmV|~ zSh@Su;@QAjhsJ}GJddA{@UVkvfZZ4)`}cCQlEb%bn5AR1o@_%YiO?)~$gAXWySB)` zy#E+qQ#9qH#vMpT#9Sq(O{l^>0*0sK%4;;p zXWT^CyZN>6X|*N^&OwcckS9A;i;U=@s=%eGEUA0#GO381%n_1TRd zFr7@xo#HQa{hlq$rLORx&sD?WEx%zn$^_&C(jfHFdXFzSzD0f2+Cwk&AK%dzrfvry zmDcf9Rq9DfgOGH;hbCPswHNcHv@DfNn3T#O3eoiWMATf;kCv=nMDJwtMrUVS?Lg0*~2Nit}{t+lXBe| zjU-}go%yK7oGFmBq7k8>N|k!cvdp7zHJaGr#z!6`-3rXj?l~u5$T1?SR(Rt1DqfWX z(l`#gQu$tzXcwK1R&P{*JvbN~vwH|gJ*gPg35If)4B|d@GT6~YanB;Htd9K7e1^Ow zSME>15sd2WmYJ*94))s@PV{vYihpdj6f!S>Up2|0nWAm3&L>D=8CbhB_; z?hyHk;s)4cP?er8{R_R@?&p{bpQ#HCjLMSh2 z(8AU?mJjG&tlXP+c^o;XL@+2m5*?gSdwXq8I{b)LSSn}%t6N-sTqS>*f$JpSOjh`Y z7aftK9qpcMz-T_bloJFPd3Xz8-J-(`7!KFxTM762N7m-4hs?cyvp5k9^U7T4epilB zXx!FrqEYYTm1~smfPNLcpRM%hoQbVYT}OUF@d@Cr3?X$&#xLCl`HC3OX_(<+jqayU zS-R>cu%&ii?in}y*kmxOD6Yj5Tl>>>(Tw{gt6)r!$7^$AF%1e>m|$bS+$rWq>4em< zOIJG`d&1Ib5l#WqBAl^RdS@D`$Oq{%Kf1OT)@rZ@?7dEJj}vM(@xa7}z)g@(}Nr^dH6 zhK-kxl{SHrCX|uSHP%i6<$w ztMWr2&ulY$O`(9x=Mvmgo@{_#OF6L4kSz>Eb!XJ8rX9qOxk5%uCli(`89XEHbUf-@ z{>k*FDM+Q@N?bvS<1@2Zr$pPzmn}eaP@Y($#~?GuIcsv~ctkwQY~S6xmA$_jEiz#wup&%;fz zQW1Z7jLcK-4LECu6h;)Ni?w*!WY)U=#5qQ*Mi$CT8GXuCQ2bM>a@3%n<~Hl;xCv)$P0&D1VtB|&-HJlLR9d&~VI8XI*MpjjIC#BUn-c}=Qr!XmfT z{770iW8imAn@b&ADqWIkIy;h{eHb(&li1| zLI&QhGtKb}A7_q!9Wgoi@N|`7vzaY3Z1dB!J;VD+fCip$UV$m8q)yb8U_Z2PsHW0t zL!#qk?b8s8ncLzoz&x`_cke; z*1g9bSEK8KJdd4tElGI025j3_0oJL5#CU5b$Txj*eiYhz<9eU($fwDvNemNl9sfPw zT~-FJyal-|i_*SyM-IyU*A1=Dnu`E4~dPkTa?2!0< zR%dH7>F1FuX1I%6_`m+YrHK;3t0YRhIj+7Kr51X5;m-LDv0ztFWrYuGiUEl+4Bs2? zwO-SU+zWMTl4?jnhfn0QzF1s`8ASPDYaC4wDNQG}cBFTO!rl}oaS}{S6txe$0Bc%? zlxkw*^~naS3s;ryD^*?GzYOw2NAxweHsj!`>;mG2V85h@P9&PvZ0GTyrsVMhlv}#oAvaHT{0V;t%$ogn%-dD3%{vWDD3nStQr%#skWiwuYR6^gq_W& z^ZI3Ea#sE^YLlt0B?ixxRwuT8+kA=69xQABm(&elY+lmL)^0cD?G#`}nWymv^Ga16 z(x4Xt@{#h6F_9Y%%64WE31i<{9lB)hZvzH(&Ot|!;lj?u&zsMOPEpz=7S8#>%(ANV z8l`;N9W2BPqQPBLXfyv0;}15El#;9nbEilrb^V+4yKVA6bzSveHlTThNkI0NhV?d5 zmGFHBu6iHd{_91v&j4}$H<1Ko4E$82jvKHPiwMV}g~r$5Z{9Cn zF2>7$frPTE>}oKp`E|?2@w>7L5BtRY@AFX~1O*HCExyJ7;+46G~?%GM1m8b6t3eLH|zT+c<4B)WXH4m@(-oW)5>zoKU$|@{^tGzWX;cs7YTd ze3ln%rq056Bj4|>Hh>Zwf6Zmd@n@cpuHaAa7~l+Lpig4!JyT78jrh;TEY`Tt(Ct5g z>)k&4QAr<>cPzXTw;E(bcepu?x5DWP2osG@hN6`vY#dlK!qG^3500zsycRQ_$^>rP zZoX)R)J@pNha~4#oFQ3QRys0n)TJ0@cU`~dZ|N6ncoTZP<`$=>*SdhP_eU*JNzo!= zHhu85vJPJuVd3stZ+~r#^bxX={d+~ux!nd(uL*92+1UZ!Hj}z>rWMJuP|^)D69rlV zi&Bp+uR7*Bg;kUjgF)e^-B`>Cnsa8}tyZ`lFveICR z$J-~PI0N|+ay3HFq0;2dP8Ewvw~X4x?$e&kiPg&S2Ai z3B(=ooo(*&U-Ml19XHs!M3(@M6TVSR*CTHAMLj7XE9lXa)9#R7aE>s?OTcS%FMxly z{4&2`%m+{&F1oqnlSH}s%Q=5 zpA7kBspuYKTy_G@+b26*q1`B7P$ka5O8h12h^^n2Y|iae?=*&*B3U@hnWe1>?&LQ@fhi+gbU9jf9m0i^(hU+TI*EEz%yhd(2E->Le+79Y$;HVkz$%nK zj1U!tc4*sr(&mq=9B(TzG z_4p@K7e}QqA{u-l z=Ai=fmg$=@T8dll_OMm%7Ls5EWB>zCdo1OC%BV{1s_-UOSpJRoNVO8tu9yJV_-~`t zN6__u>LIYTPJ@5_J$Lb2Le=&RbVCR5;*i@H_q<15fV&p={$a<9ZkhW{|#2YVOp!~vb;-`JaH z45((L;VTPi?TLO}RXa^yg5$3;RT!7q|9;yYu!1G6)S2#9T%s3|+N6>&VjlNaKg!#K z57AC{st*rY#pnruF(n?WJ=&t8t1cv&%iB4d&a1I1>AS(K8dn>i91jT*;Hj5)6Y*n1 zEk9FirD)JSGcGRT%YvQxT;k8`z%e!lTr)u%k;$g@DvwDAi(mf zyC3W^W=#3zq9iNOnplwj=}3BC17SMoVT{)*CR5HA+1k*B(Cb=Du7CZ* z-q%I2LomQLO$H=r=$1$k*tZTDPYn!88~S`SZRowny8#Jtai2q?;LNU+Y!ER*b#w;a zoR&B15t}maQMz$0Fcjq0f0aR3=305=7ktk#A%B^SS>4LhM*j&;8w7U%)hA+-%zoHq zfIPgp>th*>6qz9EAA+@%3h~j-k=|bh2M6b;T=eAD7BzGrs%D#lxzijMjb*uZ1=_0L zEcou$=^rE5P$}cFwDHI553DZQyMgjBy_48LJt~6BHS!ijxQP3SeaS8hycT3FjsD{zDQMfe$^bW*ZF695U|bE|PAF zRq@DEQ>!oHF>XUoGtkC_RMUwTdRok7#mB9GJsL2>kAYEQkntipM=UUmO4m|?A}~Hv_gOSqedi{tjv#2(*ZxTKJ>(E_x#G^q3`RO zoV@8w*0%GUnOW1|6@G!DlfsrF0si;5$FW?u;cbx(nW}RbE4M<@`j+Wvru*7#QbLv} z)R-lqqUjySj%Fk0xJypYEl(j`F)lY;hPT!FG1yNu*8+9Y zL)OcARL@EQ%a~}eb$cljzYSSiA)PQ_e=sQ5{CJmk+$}poU=^`cGHpzhp;GFm{^uqd zW@Wz7U+8!a_<$75iqrpRB(`o3CpI+Df7(ChnZZTQ-IEg{Du;@m253~ zK?&An)$I0yX^+h#Q|+IOnF>VO9e))p03BP+dx?*YwAJ@#ioghuor1o{zx?~jz|F_} z=UTL`;_EE9WfC$r@N>U;;stubU`23Z&2;Nuz0DJC@6y7}kA;uZGQX>AKF*C*Cq(H# z+v|1GaA#F5O>$bp+&C9t%LSCly4^Ese`4;tNTGhb(e$2sXT4T3SwA4HWT-2B_6E^j zNmbMmnTq7`dDPIHn&!S8Wm8lVE>-$m#6yh_gtsuY+#_25qZo&cU?Kr&X`RlumL<~H zU)U;DtFT>%drBLVn+BernDp>{*}jE<#BIYH3tSw*U`u%-ivNWJVj zv1unsjRb&Dj$p>EEfbv8--Y9IIBjB85hXuN5{I98PZz|E38SH`#= zu)Z)f-EP{RjMmZHYPAeCUv4X4GS^)uUM*)0A8J&ZotlOjIE4poQtKXn;B*@B`6EgX zZOS#h`MQAG<$rmW+w{z~55TkM)ZG&!Zg?9;HJs`a6<-#S$+(5^NvJv^>fDmfUprmn z?J?kl9-CD0i))nC{yvn4BZ9Yks`hQ+YsIs-`OT)XM9o6TiorrBC)#E!BRm#n_6dw*2Fz)%yoO`_byVka{{~6)8GWw^iY?aQA+;;K` zf?(pZVZQc42mLWLBc0+DRU4}Y3A|j-Q(;9K5L)R!Jx*-M4`Jk?k{eNJoc^Md+QD9D zVrHPiR5GROcI zRxt(^$L<1-&shTeTFaQxf-F=3S~+a1^o}+20t(($k>->Y^5VE$ykE|x=C zMq1tXK&1^A4*(QST>@|>rOW^k2yoB3bg67zP_m5QGP(7}JoVrYsjJeTx-9&j3bKGr z@d0%dr$G_&DQsmB$B*;mJ!LW`+rXiv-^+#XDwv8=XC)aLYYEFIo8)q|PGmkgZm1ip z`A)mAzOX8H;C&{p&A3@h{%d>fj-d+V7*K^2fq5Hzeqrw?NzY&iS!}=$nT) z;^x!r)BM0B`dFW4r=sdMEo*LH3XphB^^#JM@W;?ICwF!+?CEuywJEi0)!|?D*IZGE zhJEVR`n!9H#8^`FW3HM1Hj59y#%JC|ymP%-DpnpjJXUdipRUoN8`~kiLjiaMgr@mJ z21;{S%;T%o-JYL5f!*`g*sS7D*nf{1#9-|AA$$0$Ls{&aU7iKwWjr{)y@0m|5#Wtn z(eq$|`G(@OhS9|RmswMXjlOD(KIoSO8y&gpFoeu13~$A`k~ezB(DE}X{Wd6!jrb9e zb8lAF!%kqtTrju6d(%D3!=jw82uAZ<4rY8&L`P`b0*2S{46?+dVh*9o*jxG$e~c86Lt4b*;nYigWm2zh@M>Lt^Ml zKh?d4)r|M>mrIBOouiV(U#MGR%fhE)WXDwE5f!y2N8} zbTXBJ{rx(oKHi9sFB$`B%B*{%=(!5RNdfaeV{N=!ZR-B8Sb~C##$bQ@fM<-4hBq6A z_|uoLW7{6I{gLk%dq-~a8}ZshX%@4iu6-dKymra&&m-$Ht!pnvOXSz&=?He{&-E?l z+OU~r$At{NuCEEFt#-EFeH-7YTVdu&e1C2n)+@r8Iu!G{5=^Ws7vo>u8v*q9-LU^x zV&D#lb*#yxFO0Lh!5(p5+tlB_Am3(U)`XhqcWS!nt$eF64Fux`XK;W*sE*>=*t4c= zs0p!$c1R&|O*G=##E-{*=QPjN#7&N!?XBuQq`0x#D!asW%)J_Rx3<0q4pURd6rvRI zp%vc)rzsDW8oFON6Lqbk^|NG=N1UyxQz=fWx}ApjS@uHgqe@k+B^AMsx8K5B@8Pl) zwe<}>)`Pip+>Z*a-JlUEmv$=b5l#zS6DI6vf+6*83$vgwzrv<-;i-;@K`F%vYp&m7HM~WllSgO?v76_BK>}h}S*tB@UGT$w45#Y3V*crRmw zcN{Wr|2ehJgc}O3)tW28I*S$B8+rZ@C6*nowA%}M-({hgxphO)jp{&~oII+G?uMV1 z(g7?n(_?*~&~Vm-Hvs9^ck+5!s_-+dk6bm+?k{)8W{<6;$R%qw(ZD&Cx)IMrp}o7a zM(#0ODttgciDH0AeylD4*6d-b>e$U!bq(&8nF_?ICtpPYMx@N`cO>Es1*cd!+0I}& z-1%^cT_{`#+kWo3RroLvj4AX_968BV6zs*ZZ9GA%)qyLmxNr zJM4Z$uVNNYe5b0qR4J8Mf%<4i6VI{INDmvHr9%?`^cW|cCO!zLU>2aBeNgUxT(?gq z-{!f_O~%xVZvXcv|0ydhamNf3nHB2Ylc6=@YuF|)v3F;AvSYX0n2}1jwEVDRW7h0t z-wpy|-4c5{;@7Dl4;RqtZB=`fQ9`WQyBdGMZ*35GC3+En=b}ksQcryKx;m`dmA9)g zV8sJ{6a;9A+l4-7^TX09_s~LnkINY)@4_^n{Ms-cUOQYn!`l(e=WCHW8*+>au1wOS z*7I`0#}sv9=!6zmbJ)FgDYISMn<24)&*Z=aL`p<{@g3F{tQG*JpCR$yRV_w-Z=1O3 z_M1!W@+5E4vXoMxyaNA;HF3SWIsc0=)3S4$bERUv8cj$kSaO56omD_-Z?uPABi*z(%;vyn(QT_v%$PeTEH|96n>JLKj5+Hf~f{ zt<8REzw9>3oO$Md2wuTM2*YoLJ*G z#0Wz_#9npaT<`4GEo27#7Z&pr`x`OrcgsGfp{#-IZZv1O_GAZRL&9?vVEFBO!k=A^ zRDTpd zce@C?x^Ld#h(yIe&71I8h{m!+oAxl&q@yh=>>OT>Ny#a_-R*Y6UCldccp)>O+*P}n z^uV-Hgv?<6{mnfV(&d`dd%k=YG0-l_u8LlJ%4d}L17)d(#JYgnJgp)5%mc#*v65OG zq4?4;S}Z~CN`j)MKm=7@jlQYL;qr^CkN?% zqd_X{sEW<(~f*$sQ`N}eVw0f_QZQ^>sNvlmJWQZ=#Jonf>Q5_;Cxwc#)xY3U5!{s{4 zNdJSvl^$U6`t<$7s--qav@CW4ZGS5Fw5j5<`sln2O z!uEy9IlN}5mG9qL3#q2dD>ZUf@CAlmaD?XXAt@lLW{(!Uh`80^I)5W-Ra3%}@XKxo z7h{PiR_MB;y709wFp;@Te=ByR{XL z#tba6`#l?~nZ4@r{0PFJbR4dXq(b_i;s=5^$H-e8UEiZ%?Cz7`)BLW5x#kkq9q+=p zXOZ+OK^q=t-}yq9{8wqbscER%rvA`WL&oOo_jHw*hOJ2~= zaBh1JpCa0@-PPNe4hREE zxhrVuy#9-nCA1Rvo#%#zbx2Z=SGNQA#gLxKx;xG{3yVWc=XtyA^E%&AirTRg%x^tv z{1;E_{Qbc2;~E=f6HJ4&#RPh*Nb%bTQW5)PSEs5*i;>CGX|Zmme&=~}nw2#7-fKGZ zdD?DY+p@^5cwQcdQrJEn@mCOp2Lm)J99hXk!@Py8ok307i5zoMt=j4tkW+4V1S(vj zro~!Fe;#D45aX#!h4`*dluA`zaO`!>h976xpSVYtCu{3H7K@ChBHRyAWfmS;Dv1=e zzwiC0iHi5f=$$PdoICNyZ5;58jOF*|wn_4%94l<(R15He_9_btXo`^3 z#nc5dYz<6Y|44$ZTs)TF!#sx`Qz{F4gKR1&;h0qqaTNQoxN2SKi8ABFwx|6+Hxb<1 zCl~Szz28@98B`|jO3H=!pB2*J$&uFPl%7(lAJJ0r&ZZ^hW-Zl$Z0H{Hpa>O;`UQH0N263)lu4p zZ5cJ%2+cE|gWuiDptj7sv|S#eT~n&m$^EK~5p($@a`%oVLAkaWvW5z&R6(lJ542#1 z#^{8g!jSZE*qZ+S>j`N841)!+W~(WdZ}d;w`ystp2O#3>H*_yau0hwX*kc;1%BB^h zU#6!$Q5{->0BSyJtpXg$3hXkJf1T2_+RcjZ`(#k+_Wf6=C7Z_9U=JnMcd;R|L}ii# zDhlKz+;=Oz{P|6g8vju#W#3nDL+`J>aTjD(uGpT)^6i3pxpfqVXCiOdsr!*D0YYs4 z_Q`dd^CTI!gNkw3<*6qe_5LSw80$XdQ2GEmOdKV~4(o2AJVgam4waz#!Y5a8DcYDW zNFH_d57Q-QT!2-~M$_3k9kX!&%y6MU)Rwqa29GtUlIh7^9-&#IBd?1KxoPn5u!`B- z_^JAR(jwMxu6)2S{SIdDjHx*+wJ>|V1a(nlJc43NEKNEr;zZlj811T0*sn1|R^D}CID-EA7v5#OK53cOg6wvYe{{!gA%zI{G>smwAL__1Yjut)umn-eRaGqpm zggI?#{?4i!gNK;-={gUc3;K|&v!NCW>yqhzYNPMJOh=qGfY&8#*fBd*MpP+`a|o*q z86IAT9m$_@=M~h3#TWkeQUWB-Q52x<+$x)`x^{w{0J&iV9EIe5FhhN);&+yADJ^uL z+(2yqe30|GHaLE#%k>G52@|<7)#{OZNhwYtC$YuUqev^9=6&N2=@|h0w#q14@DH)^ z7sGjTrm7ZKJh&5l1$J`?LMJW3@3NEh{#|XjY+3ZQN(vrbq@_nKbA=sG(>a_g2tnqs zeG{s5WvzVMuar6;#9u*=jhdchrVFFZO_?9UT0z=}d}HZN!}a!9ZG?AuyVi5d9QlE- ztnjvpW`tWM`+1JfSoa-`rANjwQf}4giNIIvJBbg-Z=K_9R~t&Pb{+WWfhFArw(NGEU!PU<}$4z;yE|Byr$F2g^cl}KKGi37x z7C=02UP+O;`y?E(gf1G?@B5%-={-ldbK_orCM2FO@2#K$l=5q3?2!mD)9uY)OEVP6 zsO6VQ>ozf3&r+N&DK+nAX02}K&%|kin3>={_^_0Eah6*pW&2CkoPt^d-a!$Y9nzp5 zrX!CHP#GPei%9itX!rI`v_M*lb4q`7*I<^rr;ectWe&Y&s(MV?s+Yf=zEEMtD=ax; zZKf=_1WCtV-;h~fC>}iltwv*eS#xNI@$G zJ(uEO5pZAQ0rLFh_}o5RTsZKpC8gKJob;Kv?7Mk}Yv%l;Q>lEmW&Opbzb#0gYYLIL z>h-TCG?;@(YDX2yw-&oWD*E-L9Ij8d8r4k%_FrI<^h)zRE%z?yu0Lz~C}}~;P#Xzc z_wRLwE*MCAD7hb-I~q8h+B730KvqM?L;`Q?wQGOZWA!i(iX!@dJC1x;8x`xmUVHnE({b4RuH6L84g0ZpwY>!ZV`L4hb)AU@5xN4CdurOJ$*pdN zg&XD{a=aAgr_h`>RF3|El?SiUdONn;>eFrF%TG<*j&>kA9M4|2oO^S})ta&RK(ukV zoTK>rI{Qy_LkGI@*8c9L3g}z>@x}%FQQh!>FcNK^c8_SX01=h%`lFc90Vl9ilb5e5!k==#V)r<}Mm!Rh4VjM3cO=VH$PBWE@-3Kl*zpd#>{ z4xzL^J6PQA2brQ$B&^M07p6xo8ROUNEhul4`*pX@IZbKT=a^dfCvi;#9j!_hQ@}R=gw`?IH;uM16{&)4n z(66EK>`IFiH&uUf!ZEc`d~^i^lGL=P1rnWJ-WT$le|~{HAvA}~pA&02&)kFw-FS7~ zoZ6DSHDnIAl>A{U*b;DT)3b;9Epe3~#Sa~%U^k|=_2lNV20X1oPx}2@%5ohpb*KZZ zit}#SGlS1YHAds0C-GM$00#lbLxj@}OH)m%E#yP?H+6z;sNFt`g`hw8%(DgCZ&zxm zR&bQvch6)#8|e2^ytHAJmY;4#%8IAG>TJ>Is&j#Mj13Mowq5Q$1Kv3>$LfHn#F)xG zpw;C}c?}f)Hdu+nnJ1weWS?|iUwv+tw8OyzOmIPI6X&3p_f%EproDT~Lqx?5Y1!Ac z8BJ!;=jA>h*jHiFy{qZUsGU4XND9-f^?ppSgZu==Pdgw^@i6VksG@26M!G$983zyT5p)uf^+m5dc*b-E-IP?h$HQ z{nrG8L;8!lngMC}^a}9C4S|kio4w5B(}2lBhxz?pq)uZVn09*h`}~N`#tUyJlf>iX z!1wm*?j}2xx%c=Xik6`-<~|s?+ukly_dTse-9sRr_H8Z?nN3A@#j+DBem9lZLvmJL zNgF`EvGT>U8?NxOa;BJ16I$c}YdQdMsq?>SPNSCFxXrp~sXWW+g(gsfj7jvJqC2Kgk}@O{@`X}(iDIenz5&>K8$<=AwB$2P)>y?N)4zmW z^!J-q&hNgL|JpYdz4_uNF64D~+!;fSus!c7h-< zyzJm-#=-&H9hV&oM%&fBNc_(Q%-!l5qfQITzfWc*w( z+)do$I>%{c64vh7QA%?=8Hw0!uyy_4REl;zh0ONYH>|{jt24nqX~K&ECpQs|FxZJV z*X*$*@Y{gTEEoI-%)zvfF=?b7{F2&$f$dQJ685X)j~?TXg&dbCJq?6I|3vkzaK~Gr zSLYGfq!=%fJ4+3_b9MWz!7o$VJ_9LQBzjIcvbf-#5*O*l-@k_Ll{sxX=&_qby3_G6 zUZq`O&Y@VV{#V@%q>?P&aO4v|GuM)TV?Q|<$MyDJ(yZ}>-sCwh)RSld(oSsVPmn+C zM=8tpq%uO}(T?88U7W)_=ch`Sk~-|)_#jZk?C17M9@+ISTAn&jR_8c{g_U{tAa;fQ zUX7j0M$eQ+C^#fJOjdd~OL%NwQKf0Oz zrw_4qqQNe|Ffg6+5VxDGC%M&~b-Oa#PC{;o8t@YAoFdzb`(qF2U|>;E17xgy4fuk3 z`oUPrt=YEhspfCejyi7tA#3)tWk4cjIzh7%k|zST;k8)m~wLl$y8{}wG(Q4vr|ex5=+9j-1pbti8Ttc<^$|PpWa+K56Rv?=r=Mi zD@-ScugS1}px6r}i-lAFeXXfk46$eu7HNK7BQ0x&D(=VV^9@+u>;8p0x8vj2w_;?M zC4HRd-xTYn*D;wxm7OYrCPblrt*6GI&~|G<-GHms+z0%%iJyP@qocQ++@0Ip%mdEd zC?`y&7=D$G+u|1)%UTW6Swc%kdROH0jo=7%%Z91dVchemB9-Kpg6OqfJYLXz6ox<( z2yu{&Pr>_&HB)uDrG}lHaIL@CxHkB2xrwnX&M6_b|9e~Z=#bs~$~%Z~9xv2d`iN>4 zRoZA+yz0HSt>oI4kQMObFyCOPBHQp4ToB~J?(h25B_qMA8l%KCCS4_qIek^?z{F={ z>gvDc#dHkTIeS~ta?r3%o3X5E_60Z7GO%3XU`#^d}3r*2Y;QBvEmZ1odnKlaz=*8G{@ta45Jr`Bc{&>o|1Lh*6tnB#7* zQ$MaV56h6rCY=pZhbLu2u!O4|w>ef<{mSo*6GYw7`mLz(3~ASU{h_xqK4HIgAW%#B z-=PbVwt>gI)aC5I%_(x)%_~KpXPf383sVU|v9_%#a$wNjAM8z^e|d-bPfrm4WiE^h z>|*}*$UMl_iZMnRWTF2~OhRTNHB5I8hgBp{vhp=kHZI|%jRYC`!Ybpi?e5V?Hwfty z#~R>Y>Mp9+)rVMad?v_UvASVO$PJ>iv=^luP|SS_lBCOH51IAz{;&cK z{`WnD3Ayhkv2awU3`D7gke9!x-vOO6|j`YZ#H%WYPtFQ#?cDr0{ zq_OCbR-NUy>~L`py6{HrlaY1#(m+2s`La+cG{W3yMjjE-eeq028SK5sZmeRIR?Ley zA_SA#*y`Oo!Y<<~hrL;yV{EX8jn$#)oz_a!eRTPC!}*=r2mRrD9?W>Xz>J<-l-K)D z{ci48G#ttmrR0P+sm@3t&->f^T)GFsDRd5UQ(O;n@Ou;V34I4r>)6k;Z4cMbLa{ZtfxaDqvc-YeD4~kAiYFpkmp?Gdo zk~B@a=s0;+hk(7hT{Wy-(@jx-Dlzl0?dRzF-oPa=T-L{vaAHe1h23jC(;f%hDxdtE z)I760bTIP+usw{HyKB!bhK^`ZEBH*q!Cvr9sadVULRsaOEyZQ6azwRKHq?I8oF+R|f411dcN6*iL3`>hTG@R{RTHyfqS3Dq^fr9| z46A^01lC^d&^icd8s&G`|2}&MvtVcCI{f0H4atE%7DQ4CdX)5J$klD`)X3aGZAgZJ zsR=gWlASfBXxV)x{US1>-dAkWZYOU@oB_M-&CEr3Aj7y>PA|hUW;0mdk7P{TL%%Sv zT-15v2;PHwCnuCPZ?-=iLWD}fK<;i5Fgs0Zc8A_0ia0y84d=z6f5mpo9I~*~VUDVR zK_xBQVC7Nocyhthw4 z83FJ2pF>$`baOV0>MFTeT2L{$yAsXUM^a@lrc-GDL%2Q>;%W<4FBZ-V{@SMH(X(0oCG8m>%Y+*$ECzzS{czL8ijh`>>l@hf<9H@25 zHC>3R3BmBoRw?IL3umn6-=@WXGNlP?zXe)IeP1xQ_pEG7jMkQW zQn2$-SEa7~{t3Xzc{XcCVSaMpJDM^{$)}#w`*w9*mpjMyUoc9k`$WEjQeY>9dYO&2 zGOz=9nwiL&NTBl4Sz+SP_=lX?pqpoUDGNmN)wta#ONazWx7=ObCKNfNF(n4LxX%-)&_AOFPGH}VoKn(3IF1@$9aA9gWeLX6t zeg`_;ZWZvF>RVZ!<7~%rT7$fLRQ1)3sm#nr{c^QjzQ(T0DB~*ZMu+{mI!F2p!t5Lb z3KFF4Zk%*m$UY;dQdfCca+L%smAQ;U7f^a_ABq*vCFkZFV?k?&wf5!N6%}%UsxZ0U zFnPmKr+qLGfRxyJ)?qcdhK(->Zm=3b)&||sQeepe zz^omc#OjM%AuY;1SLx>O_X{gpE`m)Bi+?vZy79d$7@Hu@F>y;XOR z@UvbA@;ccnJRI@{@SEs`!spfzWQcH*W0`1#@#wC$`%3Fs7_ds#v<|W^W^bs}!0?#a zF?M;KWtA3UBPTIhnMwUoWR*w^=4)s7t6It<1KhgJA`T>Y^a8@bl1%dyQlt}Rjs!1f zTx6zJ`m^cdl#pAs6`U5+6EW(Nha%0KM{RiZ0>j;=;=FHI1%`lFLa}ixw!>CwEpFKm z*q?)A=)~fllMEmb(8KII^wsi#!pF&vX2|G9G2rpr5Wr7cP$-PTrGGlz%QxqRTTr-g z0pTpe-qn4pKeggzkzXyUfnh!Q8vkBxqV-3YpA{_n3B#t`EaJT)-=;N&Chf~0m4lVs zQ3hW5Zj zmzC-bjp6##MybaQ#)LT!={@=!w^^F_Tr^YZB5E2cgV&;EbuFdYcQ@qa=N_-}^$#t- zgI`I4pSZg@ofYYV3}7f3#h~>hXs)G)KEF_*gG(yplzv(7Axe?eRMKjEE4#SjQ3J*_ z@y1@anTrxo z@GkTxlTL|ef?DG#OTkwTf=+v==39QG_Rjv%Lb}5f{y)RD5>PL35+FkBp`1|TgT-!t zAyUgd2}{>Rjij~hfTl1LHBy2W7)d{dO9R>)w@Vf3-BVoDQH(B~m>Rs+ex*|9Wwp9q zb?yEJWUiTS#rj*B*+paqZ9W`~%2%JgUZm>-y<6;d(@Ra_{#qmVBZA*DpOj*Mvoj{m zqlr%j0e1V884I7q!xqg-YQxV#1j!5% zwU|4abC2|4Hr_2b&|#G-gRKi&$Q)F)3hAMEf-f&fB~{w>&f(ni0(cAL1H7W8b6(zA7^yNPXMB3G&-8+J0tWH0kbi zyFzVF1E$qp52n!{K|6|)Hr}Xr5uWUh14b~9Nhk=T^OGM*HZbhgR3&EHPOJRw%6na9 z_Op1z-&Su8Fm(doh2@9Fk6I+3Nt|4MpaZ;IgTF@((Q04O5p!9K11l|e82pJ^kE=@O z$MNCxLcl{gwos>p7lvJ^TsRjT*W^iZ7gVVRRB{lDXWZZN{a+dbMw0i-Eb!a!upayZ zdCjfd`@0twdTRAdU*0ZPr~%oc0?2=Z#kNNX{F(1<(p#K}2(&$$e?p*@9mp9?i? z?C;goB6um{w028s?^?{95mMkp1`ZXrgQwk+)wDYA$jCjd7_z#{HX2ofn{`=Xr?B3J zwH@5#o(56Zo+g(t*NV#Wq3P#o9BvS5V5qH#2&U!^=%P*tvLjL&`wl8MYFH?~mEAk@ z*!=_dZ>A&7t!Be!f^Oh@u)z_{+E0p5sLmTUILR;Dh)@B1Z{|8jVcin;*xOqGhEO8d z1tH4*7_>r`SgLUIB3xR27q>a#gAF721n52aQVTP$&6GSWy8+^TXftf0UkV1b(ZAY> zW$d&@TxwUSe!F>YcXo55YWGCVf!ma;{fD%#YOKwDlDvvV#)8B4Git=UBFp#=19oY~ z;cpZyagP#X*T3fPUEZXlozITZ`MWt5a^n%b-&8FbzVVRD8P5~g|1cfg!SASvc~zqK z`rkPW^@@8mB3+BLieNV6JKj2?Jn~sq7V;xv>X27QG5Wva`6sb1x+pjEJf6^+eT%^0 z^q=JxvO>Gtl07aa;rnzW4IY{1i~F5G#RdhwGoEDjoxkH0MqmakB;Abv^oFT7-yk09 zw|oOz-;?iihsowrXW-)2{S_aXpIN~VnO&fp+h}t23S2mP{(*-x%1NK@TJN_bo@Zpe zsPD-BT7Fy!ESi2N=Y7Q|S3B{KG8GRx$`bV=toq$I)!Gw=?o`*)OBLAd?{2>Xqkei(X`$T&OaVVt)S!#TAUDm$ralGdwF&8 zJ{=-F3_j4jSi!2Ye7fIo&j0o~A*6zCiwiH!b6a-K1q18v`0G=J@PWIE?H}8(iAI!a z*#We0ST~ac^k_JMMNr>BBv!2+)-rq11HlAz4#l(;OA?VCp!FVspp{w z6K;3f=&}{B01|8?YC?Tc*)d!XWAC3p>KbM^o4WT5J-by~1VhC?PTNbIc*t3~v9Vg` zO!jLUhmy+jPMv4xS!d-uiX&-EgP~=>l(x8G`-q^Ix3 zWF7M`WM9-cIJjgrlQbG)dXp`WJW@V;H0ijX|8GKf@wvT&Bjs%hmX!BA_-uH|nBW)+ z`dqDx=e@!7+|Q2(mk(SP#i8^K*+f2B{*d>tHcBb$uan#)_;0MIoxP9uTUx&^^&by_ z`_90aop=W5vf1iJG9l1L6psoZ7MtyxFxJWog4?P{?bvOK{_yJXqb#2b#5U)JGkUSR z&a1UqkQM<%u|*LK?t$Beioy20_9j|0z0-$GPApTFu~94|E^SAkw3A=qRo|-3<^oG< z@PYe?+|Y$Wod)cg$4_q3{~{0I03}h|H80qOp1-v>;{wO$?~g_8u=`#QGt6Q37IJA3 zS70MDm2Ff98}w_V*q8Th2|+21bWjsE97>P4^01A!vmFDy=moKl7`+ZF$hqVsS_dVkyS zuhS_{C&w|%mE)ADr=e!#N|4IT%GAnA%~hIGZXrcQA+y{wD;G*-xpQO=RKSTFGWP-# z6bFi;h=Rb&`$xd%`99BmUzbrOMGl%#zhlBqS!hvz){x7%CLJrZcPgiyD^yFa%;jf+ zG}l#Ov*BJE7%KjVcJ0o&@T=mE`$vOO#XV%Ud6k9pI5$(}N$o8rwUE-dD{0~15HnDY zmkYMmVJZd(JxD$onK5}1N1qQ{{D$Zd%&#RuImCxWjX>U`coqx3WT+PQV@!$VEQBwd zQo#Q4!Yyc9cg&!>9>k9BU>lImtiXGy<#QO9Y0Xr-q=}OK?^ep@UY${o^oI3(J>FjV zZYvLtKD0bbs)A*r2kDG|WYjiDD6ogYhp%{#^&~zpEVi)Od^6U?fy>*y7~X0xvH_Yt zZ@N_YQSFI>B{1s1Pt^}H1+AvfHGax1?4Wp8`Z$A$UKa|H!#cLKEBXVPF{~Bq{AU2X ztA}5YCK#`HL~_I(WGunx;$ol<&-C3lT-L<;@k;i70iZi-l1At`pv#UM$QW~` znrb4e{{b*6st8-<_CsxkD`#7!Gs6q2-AB(QyAvM>e-umHMeG%8NG|{DG5giR6;~4P zMYjJ@2tXDQG-}B@Yp$egbJGb%6V%VFfDPw*;GxLTwNT_TxoBrCX+ACzl(D5w*c$T= zefCA1Huj{Bon)voDPk_CDgSsI_W9U0qy0(8Z!wO>+c8If(cibB!!;eAh7s(fh!{26 ztGBmXDwOQvHf0QAKI?VkkBu}D(Z{%I-!8kvW6!PW1!tL$PYEM;yu-E%SCu&F0W&U~ zerH*|RQBn9O~ZiK&VO^G@$VBi_(#a8@{vTmHLnz14^VQ0sU^F02S1|WotLfYJ;OVj zB#9Q)b3xpNh{Cg@Y3MKWQ#E!o6&@p&DF>2*L=?PX|FBa>)AG&P?gdsNq*~TvI?>7&R(DsRTYPj8be3MhxSTeKLLS=jv`2X_SM>iFvQf{^o#8(DfD5y)H%yA?=5rVL4CW;!>quQZ zewcV>y+eno6nv$f5YaJJ^icSY625#qj7y%U`DSwiOTxMdzgAF^nA*}OKN(Ek)-zsc z@6C*WER);pvOwABMyUHejGSpr7kF!URNZi6pWuGcx&cT!nygoCRugn#voqR2S43ZPpx@Ejk`dTwn@F=V#w`=TRQwO3NM(N><|ubPbv>qdlMB; zgz00gZdy>4gS}pSbEMcK;%qkeD2+DZH5Xa08e-IX*R+AJg*kh|u7;aBIcjrO=qU?H z%YY^)n-Zjtg=*PGB=OVMeO+WK`dsA1@G&jwiQt~D@ryn!-)&vD4U158q(NS zwbbChm{YMW@E%)NMpqw%%9umi2bto&XWH8R4?a+Ry(mZ`?2&n(tF?b=j)EAec1pc- z&t`WA@3xhfDS93+JE9lAB(|Xv)p5V$V3f$^5Y32b+zH{Tb`Nn$L+Xx60}%>f3700KnhMY8M-G5#;r{3LQd+A2hG~B? z#oanf?>B%gVozLT`#({Co!Q2N^U=qyg}*M(=o&B_=x8IV19^*m~@)U)>-qZ zmkSI;pb1Rb`m%|^P4}c4Yh=3`H%B;t08(>|JucRl#AkMHju6N|{i>a3Ypt^U^Gg7j zPKkb?YVO`XNK*%b@#s^@?P}efDr-b(h=i*mO_vEp4;vKc*)r7kf;z*%^o^!fPt1sQ zPSE1%{K9Qf0{0WQQ;l(YlfiGgV0j0a$ZBraf@uRqOIrob^D<_dkri|G4aqC7}XI`T}|6{t+A^XV{Y=v)TcZuIBV6eCx z;YwHT;@3R4Si^!>mdrMFVa-;Pe|jJ4uzc3_0Pn1FWlz6@N14RBJDZzD8c;51OGIkW zH2l_1c=d!QP6hiDeN*fHax0T=d$htR3Hwi70oRaH#;q#u1ocRiTH+^ToiBjc@LC#Z z?O@m&4nLNU?40;BBR&zbJ8TK$g%-`)$pjzaGF%Cmq6ME+)2tfRhe17l=mFT8Y+ssP ziH;TCe>66q*qd!@T&h9Puim>OnjYFQK@9(*mK?}$9zN}8wR;%Kt}sp<$LQqy*!W#{ zlN6mlC|$5nA)p}to@O+g5>I4oxQ>=TtljVRuPw&rM#|T41%sCr9G%!C+-Aj#Tx=P@ z4{sESyS|%nmUN#4gV@xM=TXj$gt8K9OQDgmlWLK7@^^0UNO>^3KwneB;&4dTPYwdH zBgND6(kP9zp1iiTy)6KTHNgV^Tx?_im767L^RW{!=rnt%>0r^%xuzaZdpGy({(ptW zdtCPX?cj4)-AYc7wslj1y+#jAQb%gPxFQn_Op|4Jn;8Wc!zvi5ndTVZAlKXon|yc` z75TY;f7IpMS)*h(%e^LX{@gdiVTX z&Afq(L204eW8%yn0%2&lx~U6?Jy);c&Q*+l?-|hX)_i~_m&a&t`^whb1r&!&j{P>Q z@JhLoEU2siJ!*FNDgy3ic(ZD_Xkfer(kVGx<+8rk9#uZ*Z=WB1_N7A?cV7xYCVH^U zvg`E?;N*q$&Cm|K3FIxh^z`16M$z^BUS+tFu5Jt00iN$5@@22o zRT%`v(^#uALxK$*(Pb6!(e9@AP{H<*e1zafGPCu%YCNiokwdeach2%0YZF!wfsuOZ z0vQJHAqKp^X});^;33PA@r_`w5nINKOx8R{m*v&yzLWke67H?EftFv8x`)T4O+%w+H#JBT8eqd=zg zUFo2Qy4Cbkw!=Yfk0XK`Y|Bjk9mn0ZUQ2RN6D%fBHDu^JIM~@HDUA>Bx!3rUNb25I zv3B}wH*0l6rMdm1o*1D9zQLO-i=I_arJ5?dA~){0qO#2c(HPb z`$D?B2Pn~I5=Sze^&>lDTNHOrdl2?a8ZrRL%zSe6G(KlPZ0g6&XNRFr`fnSHcOi@K zF73)X6iw-}ZzpkkjG&dJX!^6H+u&Pd6`un6PL=V~+eyy3XOSTpw!JD6fi8zcttvCh z!{*~}9*~}luC*Rx2IXgU;$90Nb)WU+VWXQW-zMG!e1Hx zf>#9;wAEthf9n!wyc;Y`?*cQ{z1gLzXaCV#hG)A0a@|g9o98c;gbd;x(jC2_H?lpX zv~V;QpzD41KP8<>L4`cEG(d2ldEW#XZ^T(}NA6AiLkUp&3up>%F(|HE2?F%8Dp z{UGfyy3YEc+WDI4$Xy(#M%B`j30kJk4rI8EqXPV|ACs7O`D!0HBHzpK3|PBz+uYha z8GtV~Z}H5B8WbsdD?o}jg88OOm_h9wNyO#Kg`UtM$aF?Q!%U?2r zoC=x$i5y#B$}>F(9$sg4?)cnO$n88Mn8@1qg9vL^s9av`Vy&LOMtB}(4y~0Lt3QYu zWE}_%i+3nQnF%tzs4n<`_m%yw_FKXcTP87hadom_4w<@ay$k9%-IGy#K$RW2Wmc?S z=zb8#qvsZQ?iutc1QEE#xx+fg`Gd!=NweAI;5pP9A!2eF=Z<`%nC+_L)9fT$kS2Fx z^z_^>B(*qpoAH*>qb8+l`B8hC?ZjuTS`Mh(sSX(}IO3E#ca7HTZ~9X>vR)-+G2ojB zdo+LVg1Wz5!73zX;-O`P>%yI1eg5K7*N?KgI1_xX@l8tR-ivAv68nVF12sKJK}JBJ z_x{nHlm{sv2^#R(I9QsBv_Yazv&Xh8P~5Ykg%$_sM9pMJiz{l%?iZiXZtT20!bng= zrHvUBic3yX{vQ%!Gade@zgx-cz`BCY3P{_KhAm7}HHQh4WdAvyFqiF2LvB%jSJ;QO zT9WRl_e^gWs!jb-|5mT6OQ<^clbLQyE;^lGBXadlqW`a#|0%t6-x}0sM(8}Zh%TvC zF8d8G8dumFKRc@KY;Z9Dcrq8_K{U_3A%i&yUpD>N>Q)UIK}*b0>9tcz5KO)I;10 zM8PCo;rDTpas8}>L29A&4C@N@thYf?sJ8EeLz0NEF-4WCoe#&CG)JXo9{B#`hKvNP zGjz=AF~Om94c`MCdAn)Zxk&82i@wv`0y z(&mhFm;3Z>R;su$JPqE`$9iR4QUui5uwFZlnl`nWUTtnBPRz_NmiUxCG3s`^h4H<8 z75pS@wj(`bZy#@jsXWqRT~>!2w2xB7RDoir_fGm}cf2T2c_1c!QY+Y*9?hlz>03KT zq1H~1!+Az-L5!tLMmBa>uThGXbs7;OopmOF398zC=|Hhm6>26cl=ja5yu|F$2V>X2BZSq0*WX7i>iNtiHU>_wJdd zdOKgCBnjnj7pOmWOEK0MH)0K@>#xXeoafQR;atDz$#ECA7U1j=atj)?acfll0__I! z6`r?zK3ZQtIK7LNH!rc^&=zuU^Wh%_`WhdJoA)xpJHlKm!8t$h3;w9}3Bl4*$$pQa z3rJ(UV41K#*2N6z^Rx1|1g>V>n5M+OL7x4)Zdh!PDI(%1b+$gAAsG=?+mpcL)vU;j1^-mT1Hgc5ZJhR1j`Pz8A zMt*LNDF=__E}B;tTk!+DKhNK6k_oMik`MVj)$t%Xw&7DJ?A4$&t8V3n;9BBl&t5RL zu-|9Rr;Aw*3e72%TGjuj_PO02DLphS8PJ6rpG(277)3?{{O}V|2y>_i(%0TP}88pA}*iqsbr?tJz^$dEUX^ zU|&86o5A5X2_=UUcNx(@7p|papMg?r-ZE}xZ431fi-U(YJPT? zf5SB_wI;krr;<`@ksKF_dIuoToFBse(Atoy?vXVs=56j$YYa0Zpuzun`&X`44u4Zc zt-o$wFEb63UYuEAd7Zo0*&m?0d7@}DBIigLdRff293^<7PA(G|RHK0F`6-hy8oCv6 z^R|AtUSX)^+&h4f|E{lZLTfzT#d>P54FAx2AkER>f$o<@J@QUUze#N3Luyg|l$_7s z((lE1&fmkw8q5mz^Z*WP#+#jxWyAN_B6H?phA0VVwo=qS4>UgC`sIVB_BaN0k%&(c z{hnpD7}6ia1#5eNE(V*JZ&e*ZVPL10u55R}wqWUv$C{fXuGJfqMNE`#|60AbV8$dy z^?yORi!RtcB|ETFFa;G3eu05fJsRc9L6h>^?tdM>PKY|;j`i1oilsFV(~UxhPYioH zR354OgIT2*O%aA2q7wIlHa&SWr&4$0YL`MXoSh8F)~IZpHXJ6iH~^2q{Q=jTa|n`| zG>?b9Zw@3aPS^6SC{w2ACr-u=4mNSE z!DNvBLGuiCQ~*wn(*>Jtu_DE}S}mVW#HuVh5ucZA{>nHRH1iL>gqmm<@vdgNiQM#- zi<^_Y5I_P-EO_~{e=Xbh7u`U?iQ(xA--&sRoY;nk#py%`jbAZ7Y06uZEfym?F z9)H+Y-QF9G`Sb)Fq-9qhB{HU0Sv@Ybr;g9Bkm5i!sj4-D#Hs_T>i43tLW($lJJg-{ zN}VN>N@1r=s9)NUL3rQBXW9P`bH?bMK)&pe0q3w)guL;K59YFr&(S$nX;?`(yK$^* z-%yj2TCVa}kg&O%j4qjZW|U2?i7P5pyKUM4&cQ#{F?aTM?T}wtto0WL?hK(-AMt75^+PntkU{ZX`QvaKOerr6EqK z7ak#F5{-Bq)$SlEeCVd%je1L{BIZ|R=I#QxtO2K~+Bbo|b`h4F6D8>?TQlv9%CcQ` z0pfdo+d12YxFLz!A9r=X(2(p&nV>~ks)b)X3#w(W-{lyd6kLW?4!9kblX}9-I{yS& zVZ#GjXB%;F`+Ik?CI-|2@$@?ky724ZOqAU3z51Q<31jHHg0KF5sj%u$L-Ccs3U!!h zr(kU(nfpRO!SiZ1ranv#%WuzB;yxGJd;@uyy7OFw&5C^~)tP}84YrjA{H3X6=9$QK zO*Pddeiq=-9N-oaYc>9ioj8BwIyTn{iQF{(p5h5(NeFa6SUYV;cNblObZ}h{KRmYB z&aq8*P(tu4la;R@ym*t49@!NCys}Cr@Gwy&7n!2G%Q3C*h=$KHnYp{$T4wHkjcS+O zI=5osKy`+>-$6ncG4iB*&K!^cg31SXo8#;R`ZQ!!`X2p@j9b!!MxB4R8~P9ZqSC=I ze3MG&3ESJ0HhKL^SUT@$XvXO^d$6U6eM;!2WRu-isuJTPA4I4}*@G46pH}p;HEM`8 zKl^U!ypOn6dwPqhalYdlD_Z8^VWxgC?*^NhVl2}{9^@vuYAv5DfEXj-uLOFv_fTrd z{3L@I)+EhD0eco&HMVnmz2)D^3cYdq%SG%He`yeS0KPaLd@ono*_85$I5V9DZc1Ka zbzMq{T5)i~;)MA#g=saQ_(3Q1X=D6d|NExS!*MkPD^lpdw4JX=sV;Z={aGaH?n*Sj z(YXMyMmvY;aBQUE@AbK#voXV)1h%WYX2X_dJk$o|%t8VAXWaA4Ym^3LF1ghEH>vFo zE^zgP%u}|%f{4X2JKZyZm0Ow5RxNinEkQ4C=DQGP#@6pyzHFaHvY7vc=gdHt++Xa7 zb+(9<$bV%5rTee>2S7(A9UIat_-Dq9d#hg%dUAY&2t8vC?G?WmZ&-H4e9dw>5=yF3Q2}fub+Y~CJ+6D}Ci^XJ zgvEQ1TEd3aG!;x@T~5k)0=Vue1h-ypWdF&@IaW)dEqcbBX|v|X$H9z#+ZR@4?^SI7 z&-L=^Kg?+$b-tZ5Y@YYqb_oobzC|hwi3FH^uJGsMA{R@nROXzMi3e*`P8$f|5z@Th z$H?f-+TXK!VM2NMi;GAP|5yC>y^lkYl=c{|=^t<(VHb6$ws=XNn>IOTo$QF%r(WrH zilV!*yOYFe&ni#`;RG@U>0Ka~lf;u<6p@WTCfi;oVqjT`I&7p{+wbHw?r}3bt+ewK zO3gcnZJjYqJMJ)IrtiOIJ09e+=rA$4v)SwyB1=}YRH2SS1>mCpm8?c%}$ zdn)_cCBvq9-ucAfbp~Rbb5mqn*~RCQu93n51wyF${GZYW-CC@)P5I)P=hcLMuOrki zqH=Go*lE{=eViujsemBl-rUz1YqRDcm5l%jM?AK_3FwMlh3X#Ob+q4u*FzvYTh<>n z8qQAZHE8JQ8IDMTD^{65yD#@y>uZPdQ|i=KyrB7~Oo!r+-mYKTjju5XSe>1M^IrDw z-?uufqC+bP$0O4Q+>A4f6g!KF=qBU*-7h^R%84yTb)g5>H#a-SwxDV_sx3Ot@iqoj zT8z{AEh^S|K)W72F^A4Diil)gb$#os3^VkemHhDnTjFZ_OqU{A zY}R@*$JT~?6l_j@cUGA1JPHyQ>AZ}*hFtFy)W@o}X_f7>tvHkuJNbZg*2?T%emm5t zuDO*i5j7)29XMtF*gX7jzqg`yM?ECKUP3Wxbv7_jCEY;>wg6K* z&inf4RL$QNEf+xeFgjY-gxEiFLVaBt(bz)^_H99jVDCbcJC{oyw5#?GtZ^B!zc<9$ zOMX;-dcL|ZUv3&?2I9QdT-*A$@)h#Z@hO+6uqBIs85et>hnNERfQ$`b7|{D=tNMG5#s|QrUHM5o{!JAOD6;!&w!7_Hh=oihxIjCm+F-gI`Ee@6 zB3WmpLSpkGiT>ip>G3+&?6s@gRl+Y<=t)IZb#lrDRW7GWKz;D*PZxY@BnorwM~aB(O7S3&C$Qq!ktp ze3ozHBM@#&a8Jq~@TX$>?TG-+wEqg+ATEVarH|OTuSG^z#A*8fQ&Bew%Kd{GriEyS<5 zJn{d11bK23nPqT-qK!etaafSN27Us}Jn8%a>71>i=@pZ;^Jb5l`)>E?@BN2+Pp)#z ztR6YV`swlNvu-jjYvBKXdu$a!^A`CxqV~P&*wIKs?7uq9tEBrU#oAHUm##qm45TZ9^;P)zwAxU>6zfLLm442a}qR0pN!%q zg+`o%M5ozH`hQ2pi@Vcsb2a;9#wm%OV6xglr`@$9K(ZXXR3tbZaM{0cr=mA;8(~&_ ztc8{xJA|r4S&ICjW4F+!m-ly=G?}G60+{H8-+$Ngu>=<7WaD>7&c3%#v+`1z%ulza zf9e-GD@$}`c(aT0z+lqph~Ae<#j{+BSV-f^x#z- z*x6Eg_NadAf1<0Rk0zAlu!9!n~BNF6~grj z=23@3`0yQEEeU0S@?zu##b8s}28#t{IkAMkz2wv9_wV)Vf{n{ev@uQDm=NVYLu{I* zaQiR*ogXJyDw~c}*ZmBa3daR8;`Dp$#(vx_64exyEj(Q|eh-8rCm>k>*~J<&6d92K8Z0E+mR*(ma9C4DH0T8+ZcX0eZP`wi>G-mj1h{0+!H~My zrorry!4Q)O<|o6~T#S2U_j`Tau;FZ|wLi^yl+Xdv#;m0T7vk;nOc3=Mn~sEr2n9kv zw6zHx1g1`Fvq-1v+w-#KnnDC8Fh(5{6ZB(h9*`fy+c;C0J-NzOP_vm=$lJ{*K%(8i z`<1AJD9dt7s%P+csh730b31v^_Ng$kcE5K^uD;{8?ul496vd#L79AzM0Jti)34hhw zsJn5<8D{)@1o3M}vK2CEtV&$lT#pn30+vny7mH zcM%gLwFZFUj98$WwUmZbI#NeWf=FW31YtRSNb1SqR!?HZbeWi*)_kwXpf|c0t6!!O94EHBu)GKd z*vkiLe4SCn+!sXTtAgn!`W$Rc$;`goQmTnyE1X^L%+ElJ^Gd^FLQ2YPqPS%n!S<~f zkRxA94iMlbpxYXPGnUW=-wEpV(HchB!jq1h< z;~>AY>5A8DTjoHd#ykyHN%Ph1CD-AXEobb;|NLQVQqg~CK#es!Xb`BN^4845z+b~Y zK!1!O4Zfk9HT`Ua0U^OUWeR ztSV*QBA0)i)pNxkkxIZMZ6=N{q$v>S_(iKMp|6qaEt|Q7+Gro~js+#qsop+fT-)vV z)99KgC~lKa&10v=3S%0=-*tiUoLNN5c;-#%W=w0LSvF3#+vVP22fFP~r>w)f8E@O72yhaKgbBn`20+Bm01SK&%U zg8nnG!Z1wSK7ZWha_#{Loay`+=9jV_OFuBMY-EZ4WL4pPfpQ==A<=N``P~8#?(DN4 z=Hn;k5ZF^|?TW~`G<#hC#ASw0kUX#E34$aZ{<@F4y@i=}U{7Y6mq)C~Jmg@Rhph3d zrz-#lR~esKVC2uutXjAA?XV)BJrzc6Z&Xjzul+Yu>f;cWe*f$x`}{?|&;bEY2JNLp zJhGA$W4$TxX(OyOsiJ%f44 zwF>&G;S3#rALz74`2o0?BrggZD6}4_7 zIv!~gzV}($66!IMS-g9&Oho?tySP3&TgKqMBa;{EZxfbiLAasUKLewY?SszNn3Ik5 zI@Dniqa~wLT;w}j8;Y^di$n*+k@g|63j<+cv#GK-`6S75ZStQn7r-{L>Woz1l4gW@K0Rmg_~W{+ytltGfZb;GQ8rs1mS7U)`A^%Z)Iw)Z`!k zXmwnjMoltUQC9=PSPo^HYcgR##N!q8lU|h%8u=hZO4~*W$UxwczWI?Hx*G|*Ganf* z`V}y;J`mezj9t#R_L3KqNey2+m^;5A*iD_NcgB3r_6Sm9RG78vaD$3Z46e9gEN#(% zQMEktrrtbLcTA(6X-8UO_+gbjjI*4#i_duC6i6$@K6({ji86%rHc6rEJKt;W-F7>? z{Fo6scEv2I*@QKHg7Q&e;AHHj4(y*(;e=UwQff`+HIf$TQmvN%<(hO+Q3WauX64k- zqo*5GIVd2-C07M#&edoY9RSxLAjt~irReJlgG3n%<4*q;BD6l1y+J_&91O4Oiuzl@H#HBnz}b(i(harLtfG>7xX1=| zBB=L^$j|$dN#%m9lPfg)!N6b5gg-|$8~H!yf6KC-HEBn8o`IA;6gXSb@X+!3iMxq=i60F6K>jwWVN|1yQKFp6c4b_e1Gn$ z7zrcgXcUEnbt)}|xRV>&LZ829tx^pVcM(aKu$09N;)~Sq8z>3yq%ksOXw&t0NU0kn zwPA|kO7Hxx`(-N7D^XfDy5D_)Y02h&Q069FD$(37C_N$egZQT9tet`nQNP9~mQphi zH~hj5=Vt4h!u$D_D79TFuX(@U9giEt8Imhn|_ zjLJ6IBKZX2mlO1e;eaKY9PegT*Y4BDiuy^g(K9UzikSkaNSYR80F$YbSUAcni@Frfc6_Ph*3!IwWwo7eEl{9v}(As%m@Be|Qe}ASf zsE}`_X3LYUnEz#7!EB#46JKFNzV+~pB6paMcvQdubhCNT!#xp43-kB;`3bq;GCk}Q zw>nZDDzaX^BK`7G_Yp`P>|{X>=Zt+Otbg`32r!}WdNQ-U1}UIKJm%$OI%uyCsruZc zlvf*Eg2vZm0v)z@5kF8h)fYh6GI2Atd)1MCo66R-(3y`%>3ZnwpiFkr`|=t=4)pk@ znuPh*J38y?Io9lbWY$Q3w&;5&US(Oan7)iA1Xr$Mbgr$voQE}z#o!>Aqb9`C;eL4z+1)KNXQQU-rk>8t$uXweL%NLiost!_|%(=_#kA^y&k z2J5b?x(M(_RcRoWrfb`J*bn+D5*LD1aTgw8heBkf0y zwrt045E}1veMPTok7haha}q7Bbww`piFoafs-_L4&9}d_wPWi$;RBPs5%S)uBbUFs z9mw)Y9#6x1@H$dxrSQiFDW6kgovpdM^pR448T-)mS4*9{tChWdl;r}kl70Qku!|Dm zXZz!XCbQm7>p6J%P;#|AY7-@glIH0yyzD92hIhM43&>vjq1&f5Vtjw=4JIe8E_q%c z!ax6}1__U}Q=#*8XQ_qg(ELSJFaP}jmDHA3j{CE4Uc5#d;{P6x+RfC(_-iUlYl=sJ(sYc={u%Z_-`FI>;q{A`O#M3^WmFo20&k#nwxt$c3EU613%AA4*9+u)w#z$F;HujD4zrj;O5jRIYNG+#IiVi*HDjk&}5Lz(Mwkjqob!&lT+ zlfv(k$R{bF;r)Va|A0X`0VT!UKKN2-Al92_)o4_{sS@-8^#LEyVH@piag6*e=-|@+ zQi>Gj2|A>S(O-0C0~F2k?vk5epz%F(>E@&_)DqKOBiiS;$}37NyAgX5{dndq=w~B0 zlN+9mtE z;oY#bvCC({cy3W;nX?Nx)xz(vzwzpqhLyXfO2fe^?7XuV|HryR(v_%Ore5ETLHaK} z_~ETLFXqGWr^b!>XQJE^RT3l4M|KXI_8i90AUs#{a!n@s=NW}tNY0U+7<7p;LmSe- z*lR@^*%8_yYfnVowko*XjK*0NZh*nTk0SO?XR%HYaq*HL`+nJ8hiXWQkh84ZpOe;p ziU=f(gZZ9m(Ur-dTC0xisV-KqI=I+6?Xal(i8>{c^S`P}eWjWt%sAggH#+Nyecw;B zib>h?xsWe3LMP(Ed_yVF8$8w2c-R?gH&hXX(cQ2C+gqpjrtNpW#|WDfo-YeaM4)$t z7KpqCz)B6ksDM9RZWOKk)9iCzvbQ?U zBs5lUY1~hNoVpe!eib2hHBNML-41rxeKGinzt};Z40;^WCfo2|ZHy4o(=Nj{rfc?# zDYIv+Q~1)NzcL9W;4u5&&bhpoj{-BmQ7hlph7{`{=heQ1!0rIjJjOw1hXwuW^*AlP zLe*K)h?u`4x*z>^SiCgGav%YlCN(Q~uP9Dj66wtoAi%HBxx8*8fO^-rS<(oTqQaE(_|*4&3gpa-fYvMGY4 zL`?;yO)Y0BNQ>K}QKIHHq?fHQ#dcg>pQlj-U8-*k8N+BpZnVGe*`HpcVRWICkhXHB z?p3`bEo>G@mwLGQb+M%8HSXG!dSs?P<$%yr3SrbO`k1aVN7XUYrn&Fjj5G|sX^Cc) zH`%HNT_Emj?_rUMKh`fT9~DSz9VCZ)Lk)-x8T93IlWnI-vdTjz@M_77dRqGYw((My40N zF3#qp6je}~xq>hr+#R#Meqe&S%HFlyG~l_mX-X36)uNO;rRPXPSd!qyvp?JknFI)w@8 z5W{=Nx0FhsfT0v!!PAboa=QnNBgb1gD;i5uryvQD+)(N7 zucY|8k2Y}?fCDKXC3xka5qRMBX7#P#c4Jh5D;rZ$H8^pWnb(OeIpJSz`CzI);`51! z_ERw|t~SC5f?CuXtq>#PK+!YJbAl3Z?sV*bOm?-=#aO%o0krieB#{R*1;+(X#+3;9nWRFrIJ+LhIC8jng%zp7}VaiKlaF4wLCX9y@q!bMU zlPtQwP0}i?$GVolb3e6=Y>~a?*E1WDQtIGvlr#Zxp|BM^+Mp*ebLJIT+sKm07~H&k z%e_Q&)Xov9r#rY{*!c5R;u)KQ6gzP-P0og$M%M$2hl+!0=}I0(jlOQs6JT zU|G_rJ)|H}AZ3lA+T>EE^?b?Ysyad7tlg%Lob&trq!3pt-h^QIP$30BA`r!!a;O0T zOHOKjhX@97Fn^Zy^8E}mRnuR{0QJ5xLlvU1py6K9I5o&#qjVYCALv>;Kl$>mna8@n z7)n(Aa5y@7BR_i2Abi<7=>;+0ld`YoCGdEOogQ>1Hex^EOl1RR(VAQoe3xqcC&{?> zc-dYkN9j8uaI@*BW=yCW>CMI&ZgtP0HMWHJ9{tF0i*1>4@-*JmS7xtl@3;!DLe(eg z=Jnv`Rs3DV$}%62M)PcjcGDQXro1ny8~NoK{40Lk6B4==Ok^HDNawtDm$1WvsQiG> zRaD>xtI(xuh;e9HgKG;@dQs{Mn^GZRKvKss^7I~m5P<6$;sg^qifbmjPlB(hr<$x; zJ^++1SLWjXAhjF+b#7#iX;w1k>)uVH)s=A0{YEIz{)}ia`SZD6&sQayu6w(jXvehw z))CfG6JF94dzL|1r?@+CTtDDmuD-JRMXWyiTTX*(#0}PeK`NWqf0Sh?9#iH0(succ zC`mPLk5yxP7CAeL;83gpq`ew6@=#~VN3>Wh9##zv1;V`PG}aI|mh$)HJ8PGs-le?V z-LfpPiXt*?$qCp6mu-rJW##_o|KuQFiQ%<%o3m*!pZ$o2SfHmoDmRM!-$6gIR<&2i z_Xa29c$ZwDS^aI>n^{ZuXiaYqS4`e#-)=6N@xNomU8HSkPBf{gy6@q_;)eU)rz(62 z$lQL`1AJ}p9h!eRRZG6)D4^@km*@qhazqDTP&=ME;e^@7j9~ zZgv-kPe=R(oY+Ai{+ExHk4AFiM6t2?z~dHp-wfM8Tp9kyvek8gekf8Jd?>c|pw~-S zV{#|AiZu@LvtN!C%V=8uNDTU^8>4~OAzrjA*V~wRdd}pH9%;I`FeSE7I{>RpXxVsI zHQy2M{+LHFt9Dx&gVlAop93E!|3W=aLcDm!nq|4L>;~ZL0(*~Zq`BgS(1V07U@sei zIO2<~BVOt>B}J5J;JHwdI{83&jWK`2d7uJDh_${=9Ufbh(U;gR94iVx(HtmtiLlB# zw}ns5^h}z(-N#GKg@}LTY-P`;VSJMQ$p5)^&rS5&+Lwa0@OvxN)7*}Cq-c`F!o#{~_NEQlKS- zdAHs`_4uGR8Di<9+EG0>b$2EgEy>L`DKc1>!M-5s(euuEe@^8?m8s`81c^YP{vAH9 z=8%FPAiQm3>BiQ+dm1P0uTEc2Y5PaywKgUP=dI(P>K>u4G|3%Tg}(Ngbz=AB?BVtv zrP^Yn#n~`915aNgWSHf!ZvfjhRmCY0a9hMNW&UZBXkZ3U=k`%pTV)p+uZ@d|j{lXk zOFe?W0^0pslK9q|xdaJ%928OKM6{hZ7OEE-LJQaEH?6opW^RH1_k0AN~*e>kd z_tt`wJHDkF2(K4S&Z#c#YB8>{$VVWO)X%~R)+4vFWr1d_%{N0x91Wlw{0Tq_2nx{U znlO&}=U3iL5!i?d)q5w`${!TSq=ml1qbUTJZ}b2u1qU%(5CrN@ezxHn8v#OIQ$3K2 z>N3fVq&%p&2zziZwq2U)&OW1#eEsdqb?*f6>7+JXSYR_rKW(&1E!0CXxOFY_jv9hc zwZ%$AOmeqUWZ+$U=Gi?PD6-^GuEgbl`YS1p$WO~d*-hU|EOr=U9D&KsGoBEG-RCpi znH0qrfPjbsmM|njnG!3 z?nkV{X{>L@EmGwG^Gpfv1+oL-%-B`4OoxBU0}r?^IlmZv+)}N&(Yz&*JvY&Px;JYW z;zrtbu})759eD zdaq4rYr_gB#Eo7OEzj1q4s3LZ_;K_cDsB7S?m%wC{d_IRQ&r+lf9&&WTl$$&3or83 zW#S{WY3M)t;i5dD+PGVAI+B#VVe;BVTkpA~6QYk%gwY;*YS;80l@())dL8RJr zFBKZ}XcKrlkAaWoEyOU7vo`(pz2vuGM9j>ogU_msrU@>$S9bd&bfL{j(TS5zBN)u` zLGfYisjqG2Oy~4R9Xx|=l4bRPh6C6f{{bpcxjCwKx8VN^8{d(rMBe}EEF#N%u37Iz zl#OuU*rbWyzvpjvA5f%(%U!?@ z5NV5n?rr`M87zSJJxsgUWsA(unRd5<8r>@YeFC2|k`&-UVQLzb(b7y!g0jWS}Jcf*y%~ce?a+6`+M?X|${vSo>{g+h#{_*?1yUT`YWx18g)P^G? z2g$h0%uktGnJZUHNx79Ah(KjIa%GkirLr`)W^Ms{PO(=&JX9D z$K$-ub-kX?7wg5=HkUijZ`Pl;kHkud!Mw}_jT|d{%f=H#1fm(er^NBJ2QeO}(%v z;@@_Mcobds8Jt$JF#cXc4b0@_UST2$T;>%6+8*NHC1r{AYe)6B7rvQIf#CD)M*4_; z5Ark4{h8>ld6NW=Rzv_L%nNajOY z$8*yxZcMDsy?{N9&ZK91|z=r5R$w zbh!lcnn%y#Zrh@Kb9WEnX>6skQ^#E?BICklx_;={?oP$v*LBDs_)Kf`VBy%{xzs;2 z$yvYHH1Ffmhbb&!eQfzTq#uPbYIShuf>~I{ZcpJ4Y{S&!ojZL}by=ShD^ZdlW~h}f zZ$BeZL~bQIvl@pZEl>?4S|hwWu?w5Xsgx< zcksx+q-(Hx^pmoLb-O2ZBZY|HCCK;mSz^+IA1PzCzi)C$c2)wAmPNp{#FZ?!cvd2fSeYLbqIH zjnx>S`**I!g~3ZP3iH<5nzu-}?PrBRW*21O%64WWpwC{3Gc0Z%!u)!=W887T-Eh!o zPhQCLT9EeA)>n<&(B@-{LqRbsyZLBH-yJLFLuMXwTjany@$luiyxSU)O91(sZ8YcR zCCC%yFR%rhcLAo-|1obZd}qn5aRbNtoZB>6ovVhWHG!gjSmouju-n}!ipr?Ykz|MN!e0S1 z*+&h#0&>d(IDo#f+Z2+gB#ZCz0*F8*cWyg(Cpw-NU;T|z6M1E7#KBjJe2Idc>^0E4 zc3`xJtmK#n$s1f&oxOUJSPJl)*sDc9G35@?&KIII&qZ*UxXMo%c~Mak|e2dEey z8+3Lv^ex{wm3K%dIkS69Xyl$hq0OKxAoaR;y*zCdmRFDK&-O2yyHmO*1`dm;_B3DVXFB zi@Dm2Jk4EKND=)!BddH^q!i%N~CIO;HGXzFdnps zHNRW_R&59ajWCvK^z3wb4{v&6MmW0oL!aec!yYQw>iuU}4pi+ZoVnzZF?}KpShTAq zu^7W{3lH@SPhgDBh5&v4cC~Qls$Zm@)=YuW8t-$g9E>Xu)Q5gGc%EFsOi}i8qAmU4r~e; zgDiLuhJb;E(~@(gn>%y`yH!`ap_g`u_jcD4KV-U8>6Xl~_c6e&6~wL8^zF442l$P& zool;e8nedVP)I*f3w_IFtNY=k=EYF5b)U2oB{R^Se5nKgmUiijTRs7gMV{YG9!Fq@@Jr`SOel; z2}a0qoqJ{@Q@+;Cn%ErCTnzuwz)kCBqh^;QCd!l2vX$y#|7E6@wS7Iot-L`v47n3` zJKHgS{Y>|&a#Q~}{S@5i*<0gPol3sr4!AbF{e$kB3&`&s(yQS==}NtgWE9j4jMxBV zcb0#wUQi@wBL9sozio}sH1w5Jx=C=}J!OY{x5sC#zVD4~<+ttFJOoWOchQFOJ2%Ht5RhJq1U|> za8da!SaS?+qx7!yqqKF*dRIDc$uEiB(2~pf$3i6$ipzIS6+59!sJqI5S;rp;mJy8N zBqq&34nIyjl*9N_b@S)%qX08XbifK+wONK1pJh3E<(1VbIn;sr%(Ww9MSNX^!5KcZ zEviQ|Od9sGs=y*|c4=dH&&=Vma{7c5S33=JZwk}?VXSH8WvLfftxCuX&o95YJ0Yn= zt_$W3*c$#1qK&*i*FWN}?NVG$ftC;CY+q{Q%i~@uC9EC-6+Ys5dq9RAOMej4IYZoR7zSa&O2b&D9t%0JP`DP+APaJ=A4!f!r!UhFXL;cbg~4xT`+ zUctUImtdwQa+NSTHD%{T4O8ehPU~8O?`TuqC(H$qPDsbjqT9)4(#l)D)W(?&H(^P4*46p6dKd*-~KBy)Ze5h@Hs2 zHI!tk)an3kn)!`Di8fJ!nZ(KFMs@h6Z8*_ugdc|n)+bDLoMvB+8*tCBmZvILkNoltmnP@Z9#c|rA&b&C%JsO?o)7f{&HE1g zTr_L(EgU;AG9yoVO=9Kj;>$&SuiEsoMuZMpCg3|vREE>lKoE#8ZHb9Bepm7Jd!hp7 z7>$vs7TgYhxj4=8TWiZ$L+V#C#4aw7|4;ai4mp;AoAUlXYxl6hcQNL}Xx;^2G9m#v z+;`sI1aofPQ*ePpt*S8_&RJb+n2yW9FaKqz9%TjD(UQ~OR<+yod6uYQka?}tYsDHU zJ1;s*TV8NJC4Clks*;3%+5@)?J+Z79faD~m>pqn1!926p>=Jow#yOMA!=j=>OM8rB z9L`XVcADKYS0~r)&_(Y}b=dddzJf{<{8idXr1Eb=skLXG|GIx;z0V&$=bo=UP`}N; z>CM0}KQ4cj$S`{CbX?Dv?6p&0!2ZqWCXh8@!Sn+vCwM=62Lp2_BQ(;G?@8ydA{b9*XM6v-y61P{1xcB(pYZl@*`AZAE@y> z;jc(%ID`(B3mok1lQX9{$-PTeTYjXn&qGSkXe417-@2@qbM0|900-sSS08HI`~mumS8dJX@8~hl%cgmz?!u z-TYys8E&7%d4OZ?4y7Qv)M$$u`cH}r&|kGrPgI?o6l2!j`>vPUG3f@SuKzI zb?6RyH`>|^^ik2kfcuXvGq%@g-d3&+RKdHG6k%B$>rj{(?8{Tgjvi-(Wsh&xv}72v z_Zhj2S1=oFaAK~Q`%-MXFQ|$>R}iYe(8qx#gZ|~R`)5F2>e!UD>#ow-Z&OQ0)|!QH>sl?zpKsZvG~ZFxT3C)yP0|_+=P^9 zi@5`s7~Oak4pCxj$;Q%G2EYT_^y!&X9*ctzGLf$7SU*)0SDHEgKixy1t1HWj^55X^ zt^%%>zWQm;F#0~K=jrOihA^@7JY6IW{D$omt*Yk%+z}%_BPXPYi527zvMwz>8leWDinIW13;j~*-2VEW7Au}57kfv>Wr{t= zy+TFHl}qxUzNH$6OMsrwC_W}rQq5DSTJC`)^Wx`MK03k{W@R#?*A19C<6KgVE^@{d z2CIKC#sXS!!h}w$ftf-^4qqnIzIi5u5LEbS+R2DhRRHeVK%>LPp)lZLLUiS~Q%~1A zht*c@GEv*pTJ*a@q1G-jpP1n3n%*4LZYsqwr|wJ^l2n<(`7)MQ5x}E%`tBP(a9bYf z!rG19If3#ubp%mVFCv|lufuqbA`?+sm>MRGdMJ^!_1llm(N7Gw;ZHjpatW7PfEzCJ z{k4PRC!NZ#;ZJUH`lq41$NxX z&9KE^xJSi&_!3RnUAa;6IFVuEv;XkDqFa7%)k$*R@5Ul&y|m+1_qpxtH^JD>w4ETPjcfvL}j5S!wd zP3Hx@l%F~sKGGZ?Q*80>k_$8;4yw4#M-;^>|0k0Q=KRIN42DVz?zE5daDUicCH&8& z*CL*hLsB%u*eX?vdX``LO=79JPgPAu!$El1jP*81;ZX0kt#572xwdnJCaDwUYPH#3 z4Qj+!xzh0Guk%*fDw=GHA9`Dq=@Nn7?9By`8uEnDZ1rt|L8FMJUhN7 zj>3wTlF8;4pNFC!{L98xEAUR#Oc8F5nS>LcN{hjLV`a;mCTaDQ^ub) zez(~|)o~p=)$|&49Dk(md>U7bV(G&r2J0D*H<@CyImnC|Koag`(u2Wh+M*7m`$DR3D~;K8YP;yXj%gQ@~i5z2xu2G@kn z2VBklX4ShD(^!`cGO%pr!J-S{@QYjVpGovJAVxCI)DIU)*Xm_2{~erR_Xn4t{9St> z-NBDLYdit+U~(LGrWgna{nX6Ac}tVA6PA$OzRWEZ9#iW@mpIH#&m-YFi6pqTE{NiY zi4Zxtn}*q@GDc%xiJSuKqwuswF5$Fl9@q9A+4wen(R$C1m<);s0EQ-}D z6}OJ_tU&0nOUj;x6gMH?mv$Zu|ImAxl->uIT3cQ*vEW6O8mOQ zO8{OIwH;%mhHq$SO8K$VKjVf^kT5_O>P(^TECJ^J#J!(uY+kK5hSyvBEKGsbw32zU z0JvYK2sHbP$3Mm2I*PO!F=Xas)ZC^&OHtFJL`Phas15F7H?WvHm>-SX%q#h?xlqn- z$PNyc?4ND6H0zDGiQi5nI}It*UfnoLh_1TSk~JE?S2jQnJ=RiX6BqFBKz1v9a5G?E z>=k;x3tfEw%Z;&-E<$D$Hyv0Yx~lzU^Y!pxp}dWfZDn!}O*o+JLt#z1d)#fiiGY2Z zsdecK1zPcsGHq!W13rZv-NM@~AwSfgrB5fQ?_++jQKFzS8ze%&hM)n@gMH7oW>;%H zBZS)(R$$~M9n>J?;#C;3!9=(@oblim=K-oG9-PIHC z9A$TbG^H9RxDeXBSP>H&u)4sWx&0eUHV!^5tBmt2y>XeK81nFqgQ%U zMC9g8{-_QuY0)2ty)e!ULv8(Nz6<@Uc#;R4Zf%PPiM<0&1*Hoi)r{62@R>5f4tn;d zhtHf(!eRaPDg3zbx~@3X27{1HNHEZ?(1*94U6E`KBby z6Q_whmAz`tdR3TZi2SDwXK8tN8BPlwaoWe>B{TXodaJuCP#v(O#Tu*^orW@37PsO( z0dQ*92n&BfRIjXG5Z23BH**PsB)z5MTf}NGScDeOQ-4wyZcB_Eh2UB0Zm__OoXWNh-B3AP2t z4m?%(z-neYf*cDLymb)t$Q zlx6Ea4<*!BQ64nIVMl=;oxJEz9+i= zR3a)|mAY=#*eME(*)oJtGj(#l` zQkk6i09O7c;NLBOc+p|>6^iJtmv8vJK8rcsS@vvEPy1$8_z5=kOfI3nb}rU!%s7+X z7{09zO;(UJJ^VmPzaZ(4Yp4Ea=?Ibk&9UVQ$tgX~yVA`S{PZnXrAi@IXZyij=8!uk zP)a_{Q8n%521J^I1uF+J~|#|@q<|4XVjb9_%wovx^n zR?oh`UDFAe`MNJysd}A^?gV_KeZYDrahtF@WJANZJ9vvuyEFh>m#OzJLTVqsEK0>s)!#kZc)PCkZnZ-O!4v?E`KBZIYF6RvwV#F z&Xo&Tk_yoaulsxLOBM5Y^IK~e#X+0XQE#9sysaZLp!~C_yEf*}Z03g#_5L*a4O4?z z6@O~8=%!e&N+VbO>uEp4U({ip1xwyX!-1UOiQ@o8w&9jUceLI(5?iBcIsJxR%d;NW za9f0Ef|9k+evcEpcl~(h*p$x@&y`kntN*fkj?X^T)1BDRQkl~C3`?~~*35$j{_=4t zjtwJoV})}xTx+ebrzVfxlfb520ddhAh)M5TJ0ZJy1@jyHuP)xH5`6k|f*)q*6l`e9 z*C)GJPw!jZANAB9zk<3bTK;BJ)6MpuLq%)VQAT$TPyDv((M2C2FH?BQimyY<6&aQ* z%}nlNK#Yw=g&^Gl=>Nt>ZauYMpTN?L{zRSdSsh=%&h1~1#cgAgV71gbOHY?VCl88% z$39N@(xqBy?yqGIZq~B8N@$f0J}j#K7jV@F!#RUq{cNN1?6^!48xpM!)*Ty#?3}pr zX(%j7X<9V5xVEcJSKrz%_+1<;>dr;{P%~C&^SzVV$q7- z)UQv5XT3p0Im~(ut(xDy25nX3CxkOJFYeoNO+*)OTrGC($0;w=ij)2muTiutC_JgqU?fe@xyY!6mC4i;R>+n;kyGZ=0u-Bb}_mCC-XQDdn zNen^LR@M~|s3i1uL;O%^M?)wfynZ9BD>ixT_*joyc=3RQtESY*wAN&_?)swa?2EcM z^%cq5=jx*Ed&d8wV`Q$_7SlVfsuHksaJ*j4C&9Kyy^m*F>J{FR5QEu^*4#;vRiKSn zTeKFE3_hcuKk}caO>Sexu=I1%-<}st0mQbiKbapG#%3v7mYHjVT2VD^y@@Xl#0(cU zP&Uzvx`hGWoUip*k3mZ|op3V&ZfD}*B97A`)wa2B{oqd6M>?IwzCa4iQh-<*Ri>F? zTTdATb_tL(S_z)uTcj?9;E5!^HhkaGp^$>n7pORLG_k6NnyP$fApLXekFuyj#be=| z&olZhvj!-2&tjcQdw9xMOfvOS?Mhnk$bsb~2{3_JLY_t9wk70j~Yc8s(M?rY87iGi3{g z3JMl>_HwPaa7yDwr^AE3Tj-7QPwE5Z`BeV4rL-UNh$<5h)}*oqw#a5)mRd%Lj^#Mb z{CZTBSY_~f*Ieq<+IhV^Q7JX@;kR?4uRCupAu__pEnI95KR&_MtH4Sc--H$~0u>jv z0zDi`Z@KPUJGN;Guw(73Vzs}suE+YRNQ9IYZ2j1j@+_r>RxPb3+Llqq=eEn+7|Dqt zzpN4{Ujv^w*wwTVok!a60kKuzDGu{PUa5wstj-Ff5r`f`1NdE!0E+;R$x-T1>`qj} zDZOKm@?0aYRUJ;#d>)&XR#K+Bx=mvj?-^w|d{1pw7q=!t5X#4X9d{0Al)DCDX zJO6?&xtj0QebT8vKP}m)CF@Ie=zxS@_MURB%J-B3URqB!c;UH2^5CM*9!}*e;G1s5alU}^if|ebQFR%h)7QbBEC4=oEsi_1eI?>l3q5Dn z&yLwCz)hWD{u_E1)NVo+k2l9l<0*$yy{<}iZK1b~l3s}?(U5GiW$?YmGl z1mILn?`sE^Qp~lx&mrAyYyYUzLFh$Zkju36xB0AaS*C#pMTcCPM^!NZl&njkN8?bF z7ZO(shnb(b_Got<_>tA;M(=lisO{X}fXs6>enIB^s}Gf1dde z)b3wK0$`BlV7|vr6Xe3$_?V`?#t+BZCYGg)TyInde<|1}MS5!G4M9Wi0ojk2`++&d zoz@wW4jS(CBQ{)^Fj(KaL^P5~;Ouw0W%WUQAPTDC)xh@w2Wz-+ii$j62rYdUn4LS? z3tzRvSEp*#<@h^B+JTmDHaYvrd!;W^wz~0u67IHdJ5C|&%ArVWO%TnIAWmfU#rpb; z6(>koDx9vm(Q8|p5!Woi9@DB)AN=}6x3!5U)6jxJ4*gOKn&zOr3JZ2*YbK87%`@+9 zFK$GRbwbKy9^8yU#yVdh8|s#}?|FVRw+xUN@|=XB$aJd60#{Kqu|M|D;4BAW09wQv zOi~8z2Swm|Je&gRMANbCG0&P$5Nsr<5sv?aRn2_Rb<(bJ2L(UMxjt*;8f7oIul6g9 z$HExGi58GIHJ@8%lk>u#=&l&$u%z2+5%F6^32ol&V*~>2*;C_ohR;u`2l(a+bB>r? zsLr=Q(|v%IshpEfsdEyWEh9i(pM%D&w+l@ji=1nI)vB`I z5Xx@|b=UNo+~me^FCMAg)NzeO!+<$32n#EX zzS~XY(96Oown7Q+!T!)~1w}~5ldlv#mh3M-KD%I{vgoVeYLDo#s^|+rCGJ$4nSqP* zpS=74ZAvTe?nS@P?U{`Hr|8J?{^mUEXJlZ9aj&si!r>(p72+DNP*Am}#A(U0yVFgw zLTq8%Tp=K_$57W38+xXI1=4F;dGhE@A|^?o@R#(G`?O=0TP)fX`vQL$@!;@d8<~@( z)e0eDq)fy?JUWb)*Z8*D$#3JoLhh{Ye1ubTiPj9@_hMKAxnp>=bM&pDCE<+@zXh_$ zX83eFBI!-48%F4hzB8yOu_W?rtpM-UPJ}h*j&b%y48a!FS8KWK4yEFsrDtgWgB{$` z3{=0hdB~%#otxK%J;qg`6s{aVjwUodst9KoU$9f&D+hh0jlN_lqonNlFNnRb3%1^- z-Tn90=~PAg!{Ilysl^5?q8iSsxN?+b!g%R-Jn9bLgWj!1|6k`d0s$z7c6G07l8Igs z1_KZUo(gN&26O|}=1l${vEwMsk)ztaS99YGc_s$k@GGm>vp=@MYRcRL$}R`6uH}ib z@zPIjo|$vj7oP&mTaNeTF1^@$ixLpk@NrBM|4Y?N?1&oP78U8p>p8{F`8 z*39R;)6x+r*WYKNI!-@^yuvVMM%L8;2R7G8J#vGgDcH3bWcDUEH{p8cmm752BZeP` z;yF}FvUK!(C-C+3=$F*+kyqroHSk|$eUwfYw;hcOPwRNPk=uH?z``->Cy*VJ*NMe!3Yl3lMe+ktI5@!Ee&hd5r62BcbnH8+Yq-71CvVktE3 z)#$yB&mQb|($1vK6!|UjtRl5GhvPF5VGXqrx|6dwuwVyFnB@@ zc;xGfDTZM0qbG}D$(z9s%tW6-FhRNt2GtU z$Tw`yA_+7(%K2q#M_RAZU!&hC?91yk%^>bM@0PDK|B;4@BLBqYb(h(!9_9R;!*T(; zT5L1RPj&Wz4`N(Jfj+EL&;WWMly@owRd|XWcus7`y|^KZkZSM?9|e2$z4EHCsy!I~ zIqaxBla}4H2PqAJ*6FT#iti5li!1B1YV|AatoXckvw;EYsA8Wss7xm^gNQB^;qDxg z(Y?Q{ABx=m@o1qjl96eJf1tBfM)}@1ub{~bm2z>A{GhxaQ{}iLJeNAUJpWDS7M-Ii zdXE307(BVf%#57f=91W{_Z%{ zuxZqZL(c&k40sGsucKm0Mozy7=zValTXx83ts8>f?xTeb;N0vg)i4lg{%OR`4L*w3 z%=^%%%JR+uZWU9*bIdGR(d%dAs@nB@0;C9>;gi@r#RxpKTJb#Qfp{M3m$IcnIb$K3 z2rizJ4tZl1$Nla8VDq`C$fEe*D2#$|b8OL!$~eHk<{Fpv0iH99PYdj5cn--9SOxz! zDQg|pn7vN`d6i0RHFTP1#Lor?{G<2g0qbPK9+~4Hws@L+-njK_=i7!R93L$mWye&# zte=};GI9S0a_*~1L$em*f3D=K#5xgOp&|-<5n*h&enn8Ef%t;`UtIOCztK15*X^f@ zR6W%T9}HO!N|QcjfckAz$MJ?61H2Ht39{gAfyk!ee#_GObt-3 zvbWHheS3+pdi;WO0M%G@YxyZsyL~(4uqB(O;n5+wI-bj~r#ajAj|_xv^w&&n<*4^$ z{%^cKH{}u)+K|z&VHW(VxHT9uX_DUIJ$BJc#tcbpOMM1IpdyOyDqHU!lX>S?(=iYI zIUmm-Elll$A8by#L{!Xdj$wV%ydHx`;!p+wK@>2{ zqKN*u9QvR`5r=zPIG=txk=WidA<;j_|6!bm|Cn)zXwdi6ul(u>FL>gu9j(eKlcDdv z@CsL1q;0>{Y~MpL!NKIM{{3|7by_rJ%2LqSS0>j-E}_>tTJi-%;Jt(fljO0LdH!Hy z9f+(K3YFk^0EAfn8L+vP~SWy+a$2n+B%!bvhrFhzq1!kS}}E zzNc)bguuJ`Vv8^}tnVc|AWERR&dw{jcX%J+QVS|CHJ=}yZt89@RdiMRmr;yz(s_DN z;&-`T#)#a)yOrqFyvgl^B1f~>(3bxRG91YVs{K293N_yqo_961oKQeWxOfft)p-=% zJQSV@>fMYKs~xFV{B!JDnuazUSDwbs&g<<3?s^Wna~wR!g1nb~z0Z|~KdJv&X;Rec z-f+13W4yR?E2|l^9b_>HoY>QH7X%aITlrhqU zHRGW<0&mul@ky^V;|btJvydHPP)hycbKi5-$z$k^AIu%Vi&Kqvw9D3>;%|);cYq+5 z1=QyG<$Y`IvV>u_lKdsyN=*G;Giz4lpuL3WX>pTSbu{X>;I%p7J!Cz0>))qQ-^TA( zC{DX;>eFtjzHhLmorW}I^38>3kbdo%GGw3(Ji7i5;{#NaQ`#5#%k)micZ!NqrB7$@ zMJb2Ay#*O<>V6-Dl=P$(2X!m+28oTNoMGo()x}4UBdE!!@`+D0JJ%YPdcMLj!@Iyc z)BR#EoKmuCU_|+dXnr~;ExmSZsl0W5`ZXEV&8k(>{iLJ41eFQaisLGumNMA?Ng=x?NNjP4`aFO z4Y?ah#AEYOzo(S7IbK3v?FD?FqqnEOdUlMCkC6! zEhqhAZZ?>0epT~7xqgI`-hN>^%od}9f@r&63LU!OuTFf)I$6rP16JeRwIM6;aDA0t zu>8mN>&~@Rg`%fD*{~P1-!Rtjw-??4(wE37VfI_^+u7mUfBU%keKVm?A%U{5ksuRV zo5H&mgTTk_UDLOvIFG19z=b0jq>U|6_N>ZjsDrpf)NW*I=`iO%zujHUi-#(%88BDw zX8K54^VmEi`>7qEqx&12FPv#j$C{5-VMfmJong1Nu7puz1<$d%+naCApka9>HJUcU zm-K&;6NQ~Vc$QFt|6N}9Qqvvekj6*a-e-w& z`vzxsp50s6Ux05^bsBMi?f#V9oNoR)mmIaYUL&EtYMR7n&PFnfJ5-&qvD^Xne* zIT5K3PJ^^V#^e^JQjGkD>rq6~``qtNlFcWsAsg(aVk=T>5nE}oe|AIG#ibmNw0n&wv5MWQAt(~~Xi+Ahc z&!R02hOILyCGRVxI#R``HKNezpAqNy*^ji>_L*$wCTt_2eVcDQ;^Vo2eq=kSjEmCH zjk=QWW)r0JZ2T@GD2zW?Q;|IMbyTvUV(_zm|Z?8a^X45u3p5XHgkTluj|3lk8m z5hQQ!WL~goJtT~l0hX(%BdngttGl_O=(o_w^Y5#E2mC>W^@VHV#+s@&*vrA$qLcL3 z_{FeaD1_C|$HEQK@&%&&Vt0UC&$<4JwimZu!y+N>kcM5MIKoxlD(KyIEKyzwWY+56i+Q7L7x!7hKVJ%#34O#|vuw zDM6NJV2y>d=c<&&LQY}18ItTrW^*vxD9;50aUNSDGO9ifVjjLR&)1!LTXa~BfqbWy z&WjMZ2VTkmS1XUsVA^Ug3(0oOaT1AFuJ7XI8Q)@KgPl53npjS90A2%Zp1Y`7w;{{- z`XKSi!21x+Chj$&(jx3Gq+AzNIwecCDVNytwQJA>K94hvel6w*)#^7_9yY3bTWySf zqLRnl5}#UP+^Qi8qeom-IUCykw|5-^lOU!3SL^FaAB=pl7~81apPzj(me7#OnSj$%f2LtBi880s>$5&fQv_)J34HP1#HFo|v+Gmi z_q`Tz-Lr9PaTPo0n7*=bG@zkHL^^&E>znbg}mF9do$y z*Sk5`>Q)Ek>EqE|1;O6?VLu8L?!zBHE4(RX;rx+0V$~C z9-IpQlXp!?(%^*dr__A%9g`Ban?cunwi5d{vL+M|IpkRL0RET*u40VBiy2YY!mJR# z5!K2r$GEk&eh`itMdi4g1>K5Imtv!=S7p{UicEnF*p@_CfK3=Aw_H;tE;(?P&GhFhS= z7^Bxd6M6ZKRiqKlrlhj;@7ih4p7dr**TTEw^KqEGm2KOc@wlX1hH>&t=k5SNFVFq= zj50YycW+T1sy{$2z^` z%$rFxU*JhKh5R(uurRWW`>rq-%pie?@_Pm@R-l?THlE zo0jZpmJG1%Em5UtSJx@7XPfVcR%ki66*uF7K8z}}$<$(QztWrHi`_IA1aE)%6f|je zX}H+4a;`;is%8hW!MyDlF2+FM6{7sw8#!r6Yh;A$v1B}*>j3@$%CL}Z!lTzaO%o7F z)$Ri`pKc&Jart=k#WC*3i%-m6nZbHKPPIV9poPhal(^6vb*7_^-0wK4^|BLyJ)M z3Sg#`rMB^0w~Kbn9HHyVNnVM@)Q_Lp^^XSj5M*3t4+4yrUB@t+s8}O^=Usek-{@fD zA%tgIU^nZYm78@Y7=-HUs{cI|ekboP*01Z#)>-qh(vDf@WF?n=H`Xyhy>;xzgpPC= zwCh!v^ztR*swX~KB&x_zQQVdfd8cf>zVkEm#cXZ2mXtrSYo=`9w%om1wTGf zIMeVO?>FYtl)F#D3{540IdLq1@T8v=v&M1MnG^1`06>DhV56qKawJQsin-=MN{@C_ zT}Qq;!U90>Q0+Lfd4AC#6YN@DJ(osfXXPaG0hU#*s2kE`X2W!6DV{9kbLWOpRA&Tb zVTx2eRC=?!y7cE1^ih@$@lbZ74wwwOlDB1r(KQhFR%@V(EV?UN{9+MSm6O)KFGas= z`T84a4+IU;)6Lt%*5uugjqmLadq9Ba_{Yo|yj88dnKkSa{qh!tbuo}7_4J+dupQFg9+UI=$n|)BmCFt9s186&43S=lUdjBp7w#K zhvZNnJhcAj=SYA9eZg^%`C&9w#g`;e@nQBibzfzsZ|c5f70CZ)%92}ag1Ge)_KA%Q zUg(8@NI$;k{nQR@3h%6aQ;N@&R#=!eg&)Oti{<)n)z%^=Qm1=$zG>Fs*pibgu}Cb$ z>1R%HdY@>vs6#J7^eq0}kYCs{y#Eyh z{uT=>0+j&lSdrH;zX;=2*(aqWO=1i+GzDLnib5cdsVPN(s5wt zj6|`g)SLtdph69lBG^ZeO3XbEAy)t4MUOWz#ulE|>otFZwAc5rb+^>}w;iTvKmRdb zf)SNBj0Rcz3;&jGFK%bdfZYQB?*9tdQV~2-$YD^PU|hdbS01|T!CdH_VYrS3zv*w> z(C>cAKbIIjm2YvCj|N{5MZ=-;~rwE`KsiL*PE!;4_3# zbC952lEP46Xy>1CxKF11{_KSq+}vQH%eBM4*$7aLXelD&Hl?~6{A5=QaRR*|7?_y3 z!Ic$wk%_Mf3}bW_cz*y-gT61dzwvKVQlhH4w!cxpQyWKAUw@xuddEy{8_3kg*BI%E z(31|>ILePsyDpW{@D_sgJDPZc5G1SA9SFn3r!R}6GFumiinPNOAoxDXw0dX@cWN-M z_B*M5^o4`ZSDfa$L_lCR#b_%}Bv`>Lwn&G>pOl#_zajw8-}s%xhf;Ch=aT#2!6J%6=^Oj}73^fOjT z*_op|2g}~CK`O;tGOmcIe=fBu@PwIE_O3bPGYU2^8(UGxH`rDyUXDeq&PENjFkGW_ zNvCvch2jDl_R@Dp;!{ajhOofaN0JETuVRF^f6gkXJwHJ;D$R8IN4b-SMmscwTOM#s zt(a)XW#jy;9xQ#?kW~4fq)8W7J4Ddp!mrOF<_KUGqL-kdnXpEc>=MUh8e~dka$}KQ zOfx;CpWr;LHh%y@F+L+p=7IXG{mQB1gnOg!#|pRYk_SI{EwFF75Cs9_u=)KpjlC8y;7zQ&np{raegUXsGW<;=0tjLI5f@QEdhs!8 z;mfDw(l*(vbl(+6J+o3;G+zQEiiD7dsW4?Gd>Fc5U0>5 z5mxf+T&@Q+ZHW0+X6j&(YLhS>O@z-xjRContpO9|t(zh7?3}1AZPoWm znd`OndWUuz)vJJ(FRAZL&M(L;-Sqq~3hGjlu9&8|@x1QUMgT7{!+FMCYvEuH+j<&b zp?d{Huo{x6nddT7wq|!kZtT(;nTO=N1Y9fEL;91ol*TMHM_;g0fqjxJ*OpP#sq!)9 z(ZSKoy0b$b@#~BhTg+h~Op0F7R=7aku3H)T;JiY>FU!(MiiZw!F87^En3S;$&<-<6 zlBs8U{~jIN)D@~#R8UrXS!Q0n!9j<@)ES=lty?~^G`a&)qytuy5xV*@K>yQ~M-ljl zh2c*GR6JzLmloI&vI(EzbOp#t2VJXqr{}G3Wp-=re;^aqZ^F;3zqIey;soYxvB3#N z(c*2;r9<93M51a)(Dl`>kA4dMohfD8QSu*lT()j57&fVKdbMBR=w#(jy4Yh2WsHpGGup%``A$v9%Kf)7+Lns_QFo!x$s;5k9e@ zQGDZO+dHvN(}yKMvBm=*9vm1B>j|N=jyjjwqECR+w9nCQx4_Jf z3fNkD>h|kmxsaU7<3XLrV8A!RbU&oBi!ZSV|SM#0f0S-7k6Xz zc6H3^!<|?&AUHtuWbMf*#L^x;+XJ_6Smk+Wi7QQiW>+8rwlMlkv!TrMCFZwnotjOH z{Wwti$dqY=wCn}9oVh_QLJFo+Pz#7#D{~&@3-juh)$+12(SX`?ZRT_B0qsHQZUJqV zAF^bB8oirrZKpQ#0^K|NhcUUY57lN-aVj3cf}TyjD8y_`p# zDVgvt3cM|_5>$_^)ekdKA7~lVONBU>hC%l1WmJ@L_PieB4GFQ{Je-M=1vtEQ2ATn zVV?nQkq)Jmm0T;`xs2XHlMT5a1hc9OG#o*APxGtl6B)HOX&ugMQ|R>aWSzWOYFTn3 z$TWspr!v~m@gyry(E@W8S%9L-R#i~JExS28_A!i{ePT^t_7{J9>msF(O?T32aZ%`?dJgj<5#YTi*{hET`27^$FY zUpoLwAuLIXo_P#g6tfjvyVHqt!bk`>C7`P=i-H08XztDGJMp4W8 zQ>*Q1F{A>Dz6CUce#pFm_9^nE1|~G`$IpKKJl$0Lqr(5XH!eb{bWfAeDp2=>F8PfZ z{z|a4a{ad;=-NtbC^hkqIlr={|wa_lA0``*4 zSouG-0h~8B*~j92V?s}8iCziSsq+c!&$}6jm*K*mP_%%EOqpLd64If1nGH=MO^pS9 zilRTN+9LBhKmmC)aK`Ke;>7ZiN+++Pr+i)3Sw(6H8K#H^c+L$~8E^R8z#3SWHpHgm zmT_9%ZkBwEsx&=l;oxASd4(5kEYaBe203rSVr#&La09xmu%?f6uminN6iHbG0$1+j z8BK40+qKg*yD-+w_6dY_N~AZtG~fNOi3}X-JFBt2W47{mkk(r`DZrqrt?+iw9y0a( zH>N~{nXmC{7);l9fX!}+bC-hS1DGg%M6@vSjl8n(0Yup8Auqe*yVzfM^v1y(<_U zNNk_qw@)vsOGAS_qf<81HE>b62=NYL+r{(G5MJL~VaPJvidJWBu@l42EuGFG`a9Ph zh8r|u&1e)+@+akA;Xq)>Ftee_%@66UzmDdVGFA|nw0_KK0Qp>P1 z7W-n3MNAm^8IRjE3%UsXd9L$mx3HWfEVz(Al=y9u^)0W2Hn0;Ekkn)RP1{F6uzd6{ ze{>YDua$|tAfDQf-B(uWbZL;X6Asu+H;7p2G~S%X&ygY*mwv?-B^cEq@3JRbu~s&C zzcMrds={-Yw07bgBRUhCqnEy#u`Z0|4nwY7!>B8t;~Q|v*635*E!YoQD<#zeS&m)o z4W4B1#y(tA8Sia-e=o&DDMoMsmG4!0 zk);$D-|EtIblErsZ3?s znh=O>EMdD^S7LvzUQYi)qMY<85H%+UZ4ON)Hne1fAu&3b<+C-@X(S`g#)+7~#fvi$ znjSlzgI}Mr^~1%2X19Tm59Wz+=e~H(5Gd+%Q+A=-X&f)0TIJNjDH8Ncr=!gqYRz1< zz{PM5@63Ym38Ly>Pv&hS-#)zI0~~GNV?zDzG$y16mn)w0^BQmO(6KRQ zbjC9lE_c7WN!IRq@Q=s;ny&v@xrMjM%?9*AOttz%yL`3_9pzK3pC5bqh3*cHJR@(} zX)m`l1~PG7S)WYYF0@B{+8*50v83-T_Crn+EeZt1hOECuj|wc$N0^ANJx2b7%Qe~~ zxy7O>Po5qEt4dtpEv^o(mf4qxVIR%Mg@mo5p6r`gvmGi%8PzC1Gt4NT z>KyQV>VZauWhGpO-FBT#leXz~8L;nwLNWZSQ-XDIbjsTaP6qC~2>Trh?u4v;Q-?Nm zJsXK$3x}qJpI9eG%ZW=miH^Rv7t?#3fr~BvJ{<^6p|pCwPf7QBj{aha`S5$LNByuz z6+2{b=47YMbfvpyKDzJ}8_-wly{ONZPhh;zyx=jR8PP#tKT?HEV~;hN^-Ru{bxl~s zmXCcsTgKSDB7bS-aOmb<(&KIvXd_ZomA28l`3rgMZ6e#%_P>z$Rww%14L8%XrxiZ* zinOTX`X=9$q3P4F4aZ`#+wfSj_$>2=AXjVT|EJ`3j11h+Rtb^mTt0A;jm-W(4N4% zZ9LKGYCK4#%ul^BCNJEvsj^J<==qyOD9VP?GoUI9xY>&ZtJ_H;%Q|mv4 zH=Vn-pA-dqRE%uimGJ%G3TfH-k%+1~iq^`EB%Nbv>$bEb(CMagw%lbD(>$cHR>oOFv0R9;2n3 ziQAD`2fY`BtZhKRtYN2SM3o3?HE%bI;cfTxQMQz%^T^0tMGeVv(YN73y4tpCd&I3{h-EHQd zGuLDK54f;Rxw6pgcS1Q?tU|VVz(f zDoF4bC?5FR&I7F>IO7wq8?js2`j`6ICFc}nnRq^}3>))t^Ccwe7aIV}tSm=>-z{<{!s*@a-$_;DxxYpOEZNG_q(((UH_UD!6p2>wlpI8)wxA9)W)Rm6G0CwTW;UsL#dF$cHuc7u z9vlp#zrT&PBXgygW?3dIU$|HEkkx{<>tLgagR_3?4yV*O0TvkO3X@V897c2k=#ITJLi@wN8Ul7RId?kOHDe!>&M3Trr%2!dW(!=LwXc{_(Y?~Eu&49 zvAgo4%yv7}K!@2F5;WlGR!fcZ2JO+Y&cpLZD`J3CU*`Sg{ggJK?W|4r&~Joy!dPxD zEGiMXByA4P!&%P>V4UTpy2dX4RimvTURxMy7SdKKRoinMI;f5|LqK`>sqK500&cG= zIn}iV8htMcp>xK6(~^g!f(hYiq{n=@bz9T+YnydxPGo!$rOrz{DzzwE8Xx2A`~1>( zUEKuYR+Sm2ZOOD<>$_*uW;CX^G6hE_{oO$?y7Rb6w0SyoPB*3yjk70^w)abpu`iGn zP5yx|bcj=%A7$I%Risi-V?}k3C2iB-;eM=K#NhS~k^LAYV?}1AJF+8$VN zK&Yx_4kuR^_D=pivbzDr(bm0y2pb-!`5FcXCPS!k$d&pIExhV^kapq@?-*)VS1}E2 z^NIeH=u^f^kIOtjj_cDkF%SH0-9MXS&u+iZ`j#Dw;_tqz{iNYSO=6r&%nN|o2UT8a z59En_3cAD5^A?@A>}V#T^4&B5waDnjO_V6_*QRu>@PY7w7@LB#iz|kgHjQE9(la9w$Bb@{zZ%X6A9aY}X7Ep6D_U}(+~%sc@2bM$ir z=H_6d{rDF@ugY_Z;qPp!=;;@{<^7S-J1xh!$JwqtbZGuhrn|srsg*?s#VD@*q}4=^Q}!5t|Ia;-O;36Kwz4k96=Q^_@vts zKWg#z&a#jPHd>^i$7W!J%ArlOxwK^Mj~;b|G|rCn>5_Wpmet5Gl>{B5 zRPX-W%MJhqMH@sC1ghu_;C!8NxY)Sizr~~ADdliSXOeMXTK4t_Y`o*l##{P5FKJhR zKB2q$*48zFYV6^H>9!*@5QEX%g%L2F4fTR{%HLeQ*0@9TCODvP2&TH@tC~rU2q`m% zMZ4nI#E@=p;$b5yR-I%qaOBP{{=hnq`{!|1PQh`|1)s~vE}$>HqO^dpm6!Yr_7vGQ zLGhCRAh9JIj4L=rq+pjx0M&!Q4Rp?qw}Yc626|Y_P;lI0;{dsne-jE^FrLf-`sUuI zKD*Olx8~XYsGQLQYOD2>_V_$g`AKIN4rJ7X$zG^k*Bw+7G`L0cs)kT*p((MI`oCR} zj7G#n!ntFd6Q<)?>R(3D@zS@EMqi9&a+pv6wK8KNKYeP{=Ny;veq2+v%0ouHvvbyn zna199pwSb@$3K8^ae;?4YH7)nWfuCIk=ZhRtrQ1r5^Ltq+9JY3h!fo>_Mr9tvd0Cn z+x&hV5HidsJv7l&Vggyn3OXtOv=ZU#D1`oOqFTXJd|olmw3A)^vJvENxYc*@0a``& zjp5Jmb+b6zbo{HBsP>zVu*%R(_@Qp4kN0p(e;cv|=34h|fsb}7dR$k?zca6L_I-3? zqHq|oWPSu{SwcO+y=?0Ra(u0By&kMc`?hYgvd4_26#YnnhA1fvoi+YCXOAxLr28G8J(iG3>7uk$==BK$uI541@2XXJ-i4hQ0EzDMkem%>lZnA*1lJ-<}& z!R}|b_UBvF%M;iCYzKyere!t3)~_siZ})$!`1f@nta?jAGlwi%Txwk>hFgqgwrIh^ zFZB;2O7m-3BSf)(_4g_`nZ3PhC}rTyWty-YBkCT!Bv@w#g`Y4Y()m&AD~8~6 zo?1|Q4XM5{tyUD_gJo6&iyO-&n>QCjt-}Mp1}y5H!JF*-dg^Qal*F9FU^>Hk^yQ~o zy&Q?%Z+aoz>pW&VZ73~P^GkIWU7ZOXOFRP`8~n@innRVzmUbszh4H>a2ZeiH zZPA{vlom9dAaxXuFRgbhZ^E#2^=yh;V^hwM-gsMnKgDX_qqmX$s%Ej{vQx?JT~ev- zSm?~C!cx)e{ON)7i1p<_-xf-QmsLpp9?bw zy5^_1zcHp3BCqlzP)k}TLrdAiJF~c9NXcL{it{Mt#%%V&!e=5qOIJtX0e|cnT*Dgb zS_K!p?Zfs>m$x&vIogjbMKm5$I(f=b4ADbq z^GcU|xI7_E;Kp_!rbj-HSLHt;|8G)Ghb`-Fd z=~+uN?-2XAtohO`*B_87#9|$?ZuN-nrGeggK64J(ZTD|>=IZhBDGdCtaW-9FqBt3hZ7kX0?mncubBq zEgubsu~Jlv!;b=-)9rF;iv(TXMZ9A_zW1R)9dh1b86TNJ`QT*QeSsU1w5`Z@*^nbZ zn26H}n?qQ3=i1`kpH25OM79p6Sr2G!liNd_uQB+T-H^2>i&OyYVqpS1`g@{QxnXX0 zVTT^KD*zz~NGAz~PcH5?kHXy7m_oUe!R?la+*>w=@O~Xk`b1VAX2hdU11_jtFg7??2g*)j) z1&ye5_7z7%VV4pw`%5K_YBQP$&DFHRlg2xM1DX%==m=Gr`uaGu8&ku)J~Q3 zT}Pr$Elya+zxbtw`P#ghejW9pHlwlaLcn_f} zo_(zX##mVpjfjX-@Cx z+ex8r2Oowt0c=@i6MKQkbh8ge@H89-(54i=n2)wwJeb7mF#JOstFKqq+-O37+X74Wh z@fkANSiz+Lq;(y;UAB!oc+05MQA*r)KsVb9pCc-23+JyLZZKLLy|%u?oTTth+Xw7T z*MR{~N4jb}pSon0?@b}AkLZmZ)STR|SFZgIOs`XV^mCZYy;8oSK3{3j3GCC7m`Bwr zgH<`NNVx9(H53o&o`M??V!$OS;A!R1Lk+SUom(3Cv*woTwi#xO%#n5aa!-%XcPA4+ zzZAxmwPcqsFAdS{s_tE9dYLyBis9(`d*vL60YIgURnA^Y4YT|;<5n1#GaBl2Hc zV}U>2-vXsOsHxhcEC#Js%sO(ToxT)=!WhN?XWky4XGXfTf`*?cRqw$oPVo1Ia&d5D zM(G%!gnH+g_$lOOsx(edkKE0q84VVLSBzZmVO+uqxba}TtDG*48e`FGG^VazAIN^m zWHQmfgvw4)*FVexFthqMSoE^pWDDK|lKG(he1#;~@Gz1DBL-vwA*Yil3@5nAJ4`^f9zVN0fDh6e=@)oK6eC<@&&QIzA? zMp91rvFa`S3pCn=y@4|FK8D)R!ggU4Ce}T+tZ*I)97q|t5MZ6MA$B^0|3h5=R zS$fcC8ZA$FjHLpXiTzkS;G!D{eZ}wdRS9h00#5|_9TlXEgA>8mWF(+=?*_9ES{|Kw zGhA-u6?kjmvb(4OX#9j_YrQY#L*aCTK-n#D2$8IDI3`w*RyE7`sNvQo|1Ye%PNDx4 zHU0hkrCf+7UA@g@t4_1f0g~kd`HH(YZ>6#4KAwPzC=LJc8n470P z2{Lka*nBOCU4m`@S86-6f&d>d_$3T*y4mV{(MPzV)w>vUxDiDqOajbz_$%xb$>JmG zgI#amtAeJFvub{sq)#7h3o-Wm(TdRaNsi5cug!0#J#pr}m50dIPfA_aG@#B*;FBU} zbX4~rcg-%2Igzpvd3`+OOa>Dq^{e=Qx^yO4YF5!=wa zlpt7;RjwcB`G9g7A(Hr)YTO2sV6r9d_^YVy2-GW7%LbOr)2^*TD4W2_h7)H~cx0RN zOk5A+OPf-^AZ>Dj`3R+3=ZxQHskK+ji$3$ivLhaE60>;cvw1`&lb7u01s15kjg}9v zGN=P5w!m=795!4P!E#=gt^-SJ|B3{#LaI8R5m-_GU+-zq2xTUW-$4~B^Ukg|Yg zE1-rDS)T8o!NV#x4LHr69MjaPIIRM}xda z=2K{x(QW{u<7=Yl?b|XR#%tZ8xYiAkZyMfIwhYW^9D|H)|1vT6d#oiLi9G@QGaG&# z{Uh;Pi%v@bnAt(!(W98e{LG`l=OSORCh&d&U);2`iN&rkq8AB9ls*p&#gYrX=w1|W zKmo3uvFUq$F_Qdk;GJ5E%m!zJkyqQIhWF|;E(^LLN;4sXkcb0*CgA?<7sN8c6yDk$ zhaZ5REyyy7S~)kuub7#c%I(X2uI!#>OC}wit1}}fvho|8XtNL zg}lG$T6`qVSe28U4KdV0UDF)Dm)6u7v&LXoU5C!ce5a+{`yr^;?*A_ft5YjwS7+y- z>A^MB?2&a^-nWQD&X`0a*2Eb&G-%A*RG%|JRp;7iH1LCWx-=1Hu(JM$^4kXFxDlfr zx#q?)=$)P2?7%b!k}dp4vFIV}bgH=wJp(OgTIvHz81|K4Q03*LSGVYgaiQT`vOoPM z-ROndvsMS_{r8Mxogy@J6DAhJt&c}Pn_zMEE6nN@n0x&r=r`f zxPEUAUW^3Jv3pD`{nD4Pyvlp>_kyN`&mQ6x_C4MpyK9dv(>@w2nLmz*%;Bre1HggL zH&hAJXZVh|=7TG@29mqVDia9(l0=tWI!3ZhY>o^hcZW32%B68@g@P+l)7O0=#WpG@rLwQ?V|#W-Cjx zc;AZNq^44Y0Ih3C?%>7B_`dafbBVWiK6`@hz#^&;KJ3`D!pT%QH*ok3JZ*rB4&1f* zcO;eq@Sal@SdLia{Q5m3h1tnGQ4CaQmqRHhY^gUvsXyoNsJRO3uqt~J0T-}DJJZS2 zAdz$sJweKT)6B&wa;^S_nHLv%*awlxPs7Rg(|RLGqr11Aytwg0MyRF$>q* ztYVQ@4+$Vn#J+J|8M&YA!Tz-mK(gkToqKZRcLCC#T@1i1a{&+&>$q3YWKVvd8MaM6 zJ5tmRa2YS2De3|)KwkbfU+eooELr?f`QjGut>)oMWRnmIM;DEJ-|p{VYb=CxxjAs# zY3$b2-%AKdac4ZKa$WtADP-GgQwbUM8#tu`j6;q11b`B4_AnCjengA#qh@LyvxRl{ zJj&(-nqmWvT3~D2g66#N-J9r8=Y0>O{vMpf?INGDvBe^N4e`@bl1)3?%9Ym7ah+0!0Z6t6xPvPJj>Gk(<4%_eUKVSA(wzO9yvT?DRk%v`we8i%6a!U&Z zab!!-@Rt~_=V9_TlLjqMR{^bCMc_6Ka(7jZ%rf{|X0_h5hHbXlVBef-|6=fn^(s}y z;*E!zj?8(-GRTR@gylVij|7@c7aa=?JX*Fhps|`CwRwxqY*iAG3nxYR3z941Y#J`f z-HirV3!i#Nr6tttP^dv9Am5m2SW8NcQ@NwP&*j46iPyMpAgw` z?ru^0;x9Fa6pxS4M~r9d~YRkWRZ9ON+x24lEIkasj9 zoEGwu^kl{%kC7vvvR1FrdhXPGGx^kr;w>gO#QZd3;Q082@O@@;P3x-%8LYzQWrTDf znV>d1-v<5UW|EafvX-lXgZ6`y$59NyPA{Fev6f1LZR2x-rjZPb2Bwo*%Qn7f+lo;i z5CUeX$_IK8kSI-IJM2Dk!`sU`By7~h2~*O692B5CAm{fH{1h%TqXXBEF&eBv10-Y@ODZUY$cM2xIk*t7-cAJZA~&XL$pH$QTh83C$N&Y*AW~lJN!1HDD5!b_WpEeIJ>F2*96aP)M!gia zVl+5a;Cd!b^{B*qzJ2ujIZM$6&458H8EG8vu(-qb&fSDx3019KT? zF14O{fX&6-^ef!9+Dhf7-S#FqYnNd&>s;x3_;??AMg|!TR|o)A5N=pm^p$9=T!*eRdP5zQXtB5_U?J&VFIl=h+8Hb6C zl|o=Uz`d_7mWUfWoZ(EA_ck-}*&+y-%nP=fi{fzHrf@`SXmv4b96sMs`l)CDVT$BX zsWyj4T67SbG3Bo?tqwsGal|s|6zebwI4}NDk+A~H%5F)ulBo+ZA+)cXBC8b#w(8> zT~O1mTLuL?=QvJ;Abi~XhZC9k)`D#fNf0?*f}Q5+4NktZIj;~s9`S1UzUG)J7Qbp- z!HAz^`eG_VpSg^yfTF@Rv$D@E@YT3QodXS3z75>8ZB4ejRZjLgXU<(?esh`K+z#m{ z+H!BMHQ1F!wRRkxho?TN@bp&PN*oy-Ww6V+eSn*KE*7dav#sQ6sj#V8FBXYcT zYiHjDov~!0ZiaH2WVu<;;8AkuimGlo4$&UBPKiV3GXEymk0q^^Q_VZY? zBmk}UUZaQ4&|Gi(hY>(e?QqlG2ocN8d_|PHGjIsHbi?%+dx~5@P-_bMwid!q0h)MA z3SV(E=GUXy>wjN5L}gmdJ$E3cxaUKDRe0@u7HTkw z_0R$9)Hdtan+|q_+1IYSv9G`W^=R03;%_P9{(Yrc+BaEjq%bxXdavv!(L`&0n(8e( zk=5>}GpND8k!(4$E8rYQ=7r?Red-ke38LQmW-~l|?H1R$>D4VOIRYt>F3v(J9MT1N5Z}!*fawf7a z2;JuL){&j>2OyZ3#f9iRoro9k_oU`1vvGY<#}RLhKBZNKIZnW;7CmE40gHH(@86&v zYy0-={bel*uyAvE^Tqm_f$y!w-=($gba?K98(sF1LOZ9QVkG^RJJ;6`c#&D!<@DriowAl4M&97D_E2TgB(_RPL9$GnxcJtYR21R%1$IH$o zi$3;%)eE+R)7ZV#ijgVIy+lCh1F>A(M=$0;!+Rge`@@Yd4dDW^%evSM1KH}&gnoGm z*UjOdg$9^vEoQI>JTC~=XyIi`uD}%J_?Nzs4K?%O1m849k8(a_%SqAin8nm6&$-S0 zCl|&-X%&2}DnEK!Wy`w=f^DS$?GGM)@K+27S!Uli#gQi%17M`rb9=%+>h zh;AS7kSMQLE#SE_p*OIDt<{#khfcR2IHx|{PDiT2+8`_7CAdkq;#f4h zaj*oTerN7xbg}A0+;4enjH}>#ip~;Thg#w~rtbD|u*s{JaJ{2p?zYH1czICi=ay54{`ged3S9db#7AV*uIHz&YT06EBy~tRL z5BZdrh<*w=3VGPX@BvCTtvrYpZ#5%)KhHOGOD6$<72m`rPaAP${928k2{89O;rP~; zlKl*I=m2a0!w$!WHq!#*+`SwE$Xj(Tc0#gEhR;r)0kNWbh&r|rY23$MnM>srnEl)3 zjQhZTCx8ERW5qq0U-ZLR#{#fducA#h|FMwUMGy^sef;Zx<8ar6j~g}H0WnQcmw)Ib zewqvkl<$a8bWI z5)p?aE_!dpn;pzOhz3Db56J)OyxcmbdG{NzQ29kmS}uaHy%`j>^HnotAp$W zJlyxuuy7Y;sPY3!qLX7+-KJ;W(4NOcM2~n49yK$GXbt60)|-rTx%z+6nX}Nm$)7=Z zd-9AT5qcBi(+~7D8q(k;BU)KQ57f~d444tkf$mi=6Y{myRnmIo!yg|zK~j- z4FGG(VV3vGMyvKQJRe5pYU@^8e}j7?xgJ73=1CO&V$9gVw%r--&E z{}-D>3#S>!pc}=HWH6&uwlQhuk=}Rlj1Y}5@_)Fx9JCf94u!L`w(9iKU+FD(eY_Gc zS9aZFGP&dguT{BHQ!6p$GHf57J zb2BBpA1a;`C#lsN-kS-arY40B54>;Hjr3#+c_8rWuj!*=E4a5Ai;R)R)mMpx7F{Vh zb~`2N1jKK_!-hC>FSbr4o9xSKuP(CQMX=CZkDR2cAV!#K*oc4;-PE|_K*zCYvX^AI z($P7nC5}D1#tbx)F^S^M3QQV&E!AT|C``d%uC%Ncg-i=leHpJdGzg&ldW*fY@DE_O zC!M`K`~lpZn>gvb%$u>@z7_+I)$H{Tu^jT{{TYF^Z_X+-u48Py9t6EcJH1)kb zldtw#T%P+j=A5eEvyMCo+HKm4%3 z`@N{fxGu6zs4~GhMD$B}w7UhXyl`gsi7uRiPkLDXv+TLnw0qj05**N7?Ndzkdf>nm zYkhmirSpHXE`8{Q3 zciEe5>qiXr)#i$xO=&qWt*Cn74oEGZa7PUjEX*?TUpd0eTV~ud$TnO0^`A)b$+szw zouNapa23k!@c#x4UpSn0Db}R4Zo3m7xnhmxLIV>t;aId9Ftb#_**kEoN59m&HK;7l z)~W~T)fp*xx}$!^Abb)_G`@pvu`|hdj{9O`n9@3F$qF5Fl@I(M4uTf%oBHPr+so*t z$B2!Z?5iM)ZGM6^M$8n=*sO8rHVv?Gs>Wc%o77%)E5BJurqt23x(7eb;;}?`qq421 z+1L`|RpU&cue!jKPuq0=@~7<~lgN$TlWj3uh^+CbSd_?0aNKD;}3V;G59g4ZWgf09rP;=y@a&tRvRj6 zNQIuN*@ak1k(dN|g23oghmX`y=r9`InB=y=frOjHUX!eQGFuhI=D5A--+IQg6V%f} zBDi}Q6~SRXMMxSFlm`3S=IazZy;03rip}!bkR%|H^}{HkL;rSrp0*Y|9X7=RS!&Gi zcn{T*6!0K1AQt)NlYLKR#>OG0(bkGYj`xII27Y9mPWhPK16#x_y0?t3=9L^%Y6w*L z_BT^#Byt`q?LjT_h8Vr24sW{y3Nn*a-4?}Q^{8b^;Oa&Ayl@2DkdGK!@evRu<{&GRziGH2 z^OmId<=ERwOZ9rc(E4jEeO4K1#{bTj&FBP4xPV2L7g2QMjOC1ExN zd8*D6&%H9@r>@Zz1@@{w!!lkOG8jL>PI&5jSIhdfrf*eafVsmP&rF1AqpuN}t0 z)lG5#I!Cm?5c05W<8@INnU{lQ(~v|7XcJdZ3tBj@8NMG_$4%<%aqJ~aQzaOz*#{(% zcgSEYZZLSdVaJ**8DJQI*yqHps{;HOnT)pqVF^2N+;z?*ah1cF>?1?8K-fZnX%GJ< zqUShxYI4`Lye8#AmJ@A4lLT#xj<>cV<*tcM<+9{k>ci z=XbmEE~`adUo6;z|MA-xcsA!#5mPiJiC8>A_;caP&^sl%Ir60{PS@h(3IM;&?y}w= z&A#Fj)2r|shg`>s7DxgdNJyKK@KZ_RF65MCnLS7nHzA=rTO0-Cb{Uc&!3(t{vurjJ zC>q^x)j)2dc4#{sBvgwDlC01~ZJeDB+72JN0Rl?4X*0-ekeEjjC6Xj;Nuu=NI#HZT z5;pOW{6wk3Fpd=OfP`&g9#49NEfJ*9 z5@8>R&6j9MK;jqJ?OMqIZNnSM1&L?lu+kgHOBS%8!0MUP(x(VS@E8>8TXjsy)P*@T^^~7D)UK?xtcXSDSQG$<2cqwjE*LwbMI3dz`myQCKN@Q<6`JCh=?P0*pJ zg_fa~S_KZKMM#UF=?tB#RUJs6C&U0WYIzrr7>d*haN8IPk z5lC}Z5o{F|GbGzW<-}tSRLg~S&!y#E;SQaY^XSIy*yJqM1y}BKeVtp@3E#tnU8+&* zRJn*~utjO%b43!IGvP^GQQmEl+ zX~Y{Jj&wXo1K4?ZJI`#;t}vO}$ET2DYfAfklH1j-21Y%tg^slpn3NX;BU48f#Y5hH zyk^wXeT1Ni@547L^eK~$rJ?m4_npuOhuK#%@PYq+#M>00m;WV|KO0y)y_dCT0=$R( zD`w?|X>VUnX5N?vbOLnqvo$Bp>CIvg@^Zz^CW8N`w67L(asP5(Z&#_~%%e3k-x`$^ zNXwQgn7MEA<@L_rNjkNE-fGd}bm!p7bnns+$N#eT^=zvB`*qeqZCLTi(6$k1I?qk} z*PM~Tn?HltlkWi4t+f^hw;AEEu1EEpI29+a-uN`RNqVrN&a*iIB-QXie?@&%*VIL& zQ$zI(TT?7(PiDQ!QD*tfaSiz42nUpz@Ye9zSVY7n|FU@shB?ABz2k0uA;?Xyd-!o_ zurc5&mVt43Xnb+VU2r$c$>KHEv8gu#t8R8lsH5Y@h3!Q;{bLe{!hQlz+MpgkcXlsL z{q$_})VSVz;k(zAI3v9z=rpN*ys{ojN%WW=;iBJ4d)snw~X zeDQmA>_*Co`E1pPQKT0Mqov9HCsCCu1|O1=8Bvk_@S!6zMq zj@n-ONmXbA=|O)+%Y@w43aWFcKDeR!*1zxe{p{kclDKcC$=`A^hc_@c1`W3Ca^H%} zIoDQkuXf9aw0|ZryY^_vlzjhohN!bt%bmnE<|2LOrX^w&uCYrs^Wv>J#h z!+x&YM~V~mS;ox2f~Ff@2gsZFbnbgtWSSm(BcjYO?Y&J%Q`eWE;_yLA!PsctflPn@ z*GCm7l(RTBP)rq&qI27h0$;|}_ocPuy?({`q~hh9um4;2aexWo{eQ0b%~liizgy zHyZ|zCk*_L+Wj}>WPG`BPV+?d1g2=%rV-Nr7(8`4eOBwMU9S|e=P<2RKr&RNqw4vSAZ@2`u(0)Y*%YC7NHcAL(x%`nxOeTp<{nMRo5pxpyGdfu zz?WjH;Lu6XmGrkncwA`B{wxnOjk_tFA<4viRG1Y#h`aU=5*vhJ-n+tK(q|MzcW#8< zML%1XZI(}4Va>H>o*0uF&hV43QLReFLiRo5cWqZE?%$d9p#gphID3%}`3oOIPIF7r z+fer%CMoKxua=>N*ZXbk1vXum*YZx4%v+=+n-<&4mVMEObvHw(B{#ph}9_>F6a{SK^MR65%*bK&a! ztStR|+8)979*?owl<2gdqWYiZr3be$xK?oKv7vl!vXukB%uN$ignUSb{->}QZ9FeA zp}yc@z8k&rohKAIj_t40&^c?D;-i*8ivE-R10j<2IBnyj`m+cahLBZ#BC)7;i20y?W^N$T^>;IMs%dX=sT^Sy$CS3hD;QVLw;T#$3(dUBveGym(2J&D{gLU?}GNns6p zV59a%UTa5C`)Kc2@g3Cq;H1<0LjTKCn&Hs*bygtzjJ-|+BMFU=M`6R&}W@F4!?oR{vpQDbpCriqv5SsTT3Vw!3r$0jN}++xN;*9ki%E>m3MnaqMYr>xh6{%#G}v2{Y71I8C0j_Ld=0XH~JL05jI6o?r;2m zb_bLSBO)uevrVb`YnKGm6`r;&RyRO4wF{tM4NBIY>bqr$tw0y5?I z=rPD2rJ1xNn2-BqOhY|0LiW=Ey?5WrD1Wd0N|vn?ryZDh6MYq(XIqtNqRLbgeno7b zX(k54S_+S%&r|q*yyDlKL3e zFP1ZpdpXOV&wmVwD@qUJedNev=5o14^%%YIv&w+huDsTC!!Wwq7Y2akmeH&;rZH#v z+3tpLElTp$R>aLXqTIm$?H#mcve9T`z3%>s?#9pxEqaM^Pdj)MaR2$DCOgrqaL&_n z?#DbRi3D%-a{42*blAA>!th+nZlk9@dII7seM+X;`>IFac97VnL9q_PdGYHO@~!e* zGCr~0`}<|*s71>MjcVx?yPX1|FL0Ld-1x`ceOAqC_+E2}@>c8n`LB zPN<8;l_c&&_k7Xg2Zx+4`N!E>hDi|-Ps!wXdb70XAI9Cf)PrJRT|>b&+h~209!1st zg2;6dV6=N{DUBJqCeqeApF*(q#IHsQepD2yEUdH}y?$>H4puh%zWA-8pt`s8OfedwI=h01Tx`I_VtMHu6(CX<6ps| zN5Ty5!IvrA6nHBQ=W$iLj)@g`!pC#MFSDKX`WizkH@oxhdI ztj-eV+V%Xn&O5H~8<4d>5ZE>ue|@nHyO8@fD_i^YZ_Lho38JXeblyrM+~j!cx z<2-)2Agzc<$2+ly-yfdgW(|3Or}zC-fS5^fG*89`|Bs?`@n`z~;`p~4_01(z?o^U) zZpmdXTYZH}Zpr-?%G@=}bw*eBYsz&trQ9#cWtdHcA(xT+%;qxYHpAF3=I8e>d>)_2 z`@GM2zs~bXu3Y?RKY_y*9L^>#`Q2uHSFDv^(PeLx*EH!>Z(bIFAEwU27UwQ#&!+n} ze)7|x>{}*$RwNfNU^6>*E$V%ud+#M8GY$?tLB97gs*v7`8gQ#U&TcKnUEAZ8ciu>C6P_*NlzXSz5GQq3hc2^tdBanF zjs)Ht+;$Dv`&BV=F#y#pniH>mB=j&0Q62n|nWNd?^*o749n5OUOkbu3hcKTK!RF3a zD+~3gXMFgSad>ALGQ(8qt3(G2gwofw`Av8lh51Py{}Jby57?uAlA!M{Vq$Xa>L2!L zWV|?h(XQ_zGnwq|N-Ijg@5Wadlbphc1-TYjLi(?rz@eh*BRj$P*H2%&^}W&7Rz%hv zo7{2*68l#sbiPzf|F%q=^zHNJ{#>xH3o2^cNeCL zW*i0eG%eEQ^S;X^k<*PasIVER+4|PAl@a9JB9O9G4AOMT zi2x_3>a@*LjdWe325hveNkT1V574xdbcZ%t0;cO)2{%M^d92TC{*edn((IYYzN^bR z#S@N1-&u+6I$_%Ro1EkRRo<6t`96U!Ql|T57hS9yHykPwHI&E>8&Ayk3nGZ_k8*Zi z7i>qL|JQ8nU&FGzYM!#ly74R9h#^n7A<=x8E=jrFkYeBfJZ|_~*(;$xN*Ss!q%uuI zes{`j1_7z39_hxZO&t|&teNCs+X!fswu!4@O=n zyUp%lG2e$+pE%m*xCCp7gJjYUKFlsviHkwgSO}?m-Us^R9LZIb9sj}GZ)nO{WKb6((1k&|ft1+^ z@XGbJFiBNFGH-?Vs&2yb=2A29Bu1f zk)v2RR}g+CV!Qzhn2Txtkp1GGdAxIwtcI>ph#OE1(ZQ)5wX#MV#? z(>UwbGyR$|U*7Hib4(g?V7fD8+Uo@#pEhxTvvBeg|2UXD`66#4g}j&Fr5n@Nkp5vx zA{b+-?4&14eIJW1)3`Z17<@igw$Lg;`ymrhqN9edh=%93Ct`DekkNCr8xs+OBmVJG z0Y0RaeI-$Is%)6jx-Kr@?+AV4R;9>JSY&WbE1lMtz5^AD5Yn+mEXS!eRW=Tb z0M|FA+40Q?^0qdh?#9aT5biiRr{HcSZXeFk)2h>1bA%a%n$}fWQuf^jwVM??_(3%!8nIx#Xi;XH8QrDDZGpacE!#3V11z6FxlmpKB#{HMwL$Jv6a4~i7gb3#1;o=#3PDEWo{=2Gb z#d-rD~m}_bztKhD&GF6y13bPi6yW~OtU^TP0RbkTNgPpxMlu3 zBr{w{>Ld6yDcT(d)fNw#2L5yi!Dlb^m4OfCx%J6qlypVkerD|{>PA^np0^yGM%?$N z73~PPb>0{ePYxGUM69y{e?1*;g{ftk1s?ZbY4<}D5~D%wPO_tdm|yM-jH$nEUkh^j zOCq;oQPzzzOPBCkl(8ORtpG+W`k{l3#EGUGUtRbO(MdzE;$n(DO&jdxdGr_1A} zq)LNSiO_h=J*Cm>f@HW>j-W0G~IHcbBPgx8gabzUe54L3wlM^yjw?0^6fQ4s9L1 z=-*gJh%6D~p*N_Me5ER%LMDE$PfoEnnqXMzVZ`LnHBc{+A5LDw+;W_mvVY`qWyW_u z4CJhC88_BZVO9{|J^A`m0>|(MWcGV-(Q0#9(cubkNZB=WNp;DXo3a^~6qe2$OWt@C z7=;E)16_xlgC-n&-bj~2WIVw)*r8o6E=&IcGLjH$7gsw!>%9SuZPo0A%{sO8vgFqOsYdRe&ayTQe{B5xQP*y}NT$7X_@q#<^0GHhHbPS6L<8#6uUHC-8PHYsCa?2y=DGu3L{lR1smXLoD^O|ebhHL_*)w-rmZ0rPMe z)XCGpt~K)udbptmfInJc9Ql1*+}p1(R0hvHw~hwtb<9nr)TWIK$7pM-3x#6keaGhP zMKI3mJN&d-JtM}L+<9P<>a01FQ5@h*~A(i{d{1?IctIE*9*c~=q+R0eJ969F?GXh>_d2RduHM<#D0w}!z zb9@F=q6f@!iTo9lK4J= zXg$iSJBRlc9Hf1xpt4OXt-8;>{Iq*>MAQg8dHX34sJOBLOWth9^8kQBAD~rB*SauP z3}%VR*H7P?MSSYSP)i+z#MS^v2{32-zQ8+srZD?R@`Tv;@kvXaPjorx%hS5yqGS1@ zqXhgP_|n&ydTZH0F@|M8eOryZ*~9K8HI?9G>-+eRgr8~ znYt$ybk%3?5&nGdNIwe}$4s~~79%UMnVH8%rOAej(FdVvJJ0 zIT8W@tw5(0f$dvW+g^_UBd$F&Us-Xwbi=6jXv`taWq#)bN5LeKTR=v)ZdY> z)0y*wGEC`Wn9}-6%HB^z6X9G4`-})gG>K8eT3Bx+>@^w#*@*{fA{S%|3=M#9DC_=~ ztrzF>rR#T(1b;rQlQWB(aB@o|NFTsqBRcf^MXPTLeUQKBP^}^%-r}nRUQ)qvI}L1f z$l-~4&w&fvy9~ITonSunj|~8Mjf>rBHO_4*#DCCG5A&(J9r%k8YW=cbVGYjNiFOCi zuJ&k-&pj)Kl&&LVsypT|ufK7AUP<3m1ypQ&qa*rL47oQN!z11`wSF`ChP>mF5=?m z7rERF2RJ!RJt3N+AVoiTO4!-!=$Wi~=b=<@bofr$0~gJ*oxkyLl~K1u__w5~V*a5k zt>;p>ebmG3yU1OU^}KbEO@xb%&D$L8>!dE0BMMW^1+%s87)-c(ENxvYWn zrLdL`X;PB@1k4dn1CZTK9JJbizq;7#rf9^a3TMJv5uiR@SK4pVo6H~NEWi4kbv|2d zgwYl^^Qn|yvR#}6Bgi!N2ToxbhJpn~z%aIWkyccS?zOrutLBTD_xWIWws`=hUCpg~ zOOblSd$449;EJV>T`zyu?~wtIpxgBiO#U-@*QBieTYtsS>7^(u7kL?q$n}7#Mb)NT zmThmfr_OgDJUc7ucU>`%Kt^h3oqaP z6BmqR8~D8to*1O9B+_WjJriYu&$;Jz-lB;HNo@MuDbL{*4kT)>&!)~F=rYN35ZM7B z4__0TpdtsNo#=wH-+3}`b&anEt|i)JyYb7YzjB~wWIZ2H?wS8qe9;;I+>R1PLCp`Y zT$flX%>z;`qUpnp;iDHgE=l;jgskfE6D!?cDYxt2>qP$U`$b6(bm(9uXS#o!7S4)c z&4z4$D90!mnYO%)J=KpPnA!M_xlOiUJ!uKt6Z#RNK#2Ot84NN|t(PSo7A#BnA@vIq zAw@(q`UNi0^}1%wVfu`g%`_}xSY-Xlth=fD{av59BROU(iC&#X{Q(0$rUxT^%Ze=+ zjxL=>uAi`3nS9!_$2!zHE{tA|%Bk~4bDJz-movuE=quuSQ;ATuB`BDA(Hick8BzT= zJshb@yx@}5mn-ps)PA#1UbH0z8awhbb~>28ag)t0{`SY})iirMu}Azu268CLa3^1< zkAMGJTijF*3|3cXFo~vHz)TxNsy$URI`{OK{s}*HteGYjCOd7W4OPX$N}Dwt9c58R z!0YL)Kf!$KQUwU6Twzie&4^|lR^2Y!*3o7c(`2)vaL zeqH?^^1%bW42-hrn*fL3jC0k&$y>m=H#PE#a@IxL&H9yh}#>0%A=8y0?Q?baChzS z2do(=gXfSY(}t(wiq{1;{0x+yZE`6~c58F$tAA6)9P^kTMNIrzX-wEg`5`cRO#}KA zxk*V(x8~$+hHR$TyMqh?LE&#Y6PmFl)_#l9I7QBgdQVu`Y7T0tU2QYjwzhRXUu72> z7t*t5{Jq%zI;0t9WI8OxeuoKeQ&ai9|F>#!7FK<8|5TNh>{_2$1Y3y}q1)m47YJra zbV-m_ju=WsL;|jFQU;AQa}5Q%6~n>w)S~yGrib-ZQ}uE3Lm9Hr2o1b7--1eCXFBPT}pas?)^OTaiojmeZQ;<3b2c zpMxXU^mbE&KxwAq z20jL;>HbGOsCB@$dwXZ2`8->hQ`hfagr|M(DqWXe(%eMc0^WDtPIWhS`hXVdbUw+*KM;&UlLipC?Zz#2lRXuRF@{da$G74a>6|V z(;ztJs@`j*^Pj9F!Dxg>$hgZXXyXsy-y@D-cUK+35UTuQ=eocLjCRtoV!~SELcot0 z#Udbg@3sK`W#;#-62Q+YkoRItuzNiCUhC2pueTOPLRjyt&)962+C%46X_&rQC19jw z{Qgq3Kgz~=?*sEo)q5~H4|My3FuQC46?fXK&aaws0e$?6)+`sNRi%c1Jopnm9EvvL z!!*Q%EZssA+t1a1Q;W3K)rp7{WsJs|@NN}KiJNbA#RZ6*uCF;F8~NU;6ZmGqRekkj z&el2bYe!IHx0CbqEe$Wif2R7PD6=H4I8LDQS-kqU$U^+CyKw;hE^)hO^lJ5LUbuP# zSUsb3L%t}BwaM2v9kUQ{%a>t$vhQOvu`h zC|aNW`Gdj3etFBktlDL$*`;#v4D7@1U`|NzIN8~JynAbHHGLEUkC^w>eTS>=pjCO- zdO9q@GHF;#&C9$&WSoVZ<@W8DBI`?Es~F8XDa3ml3F-DPlZU-A7fr3IPITf)W1Cb}&((aT?^h!^@ioDi;NIw3y~{{7 z(>pZ_a}~X(Y^nCQ6f$+)-M5Fv#Sf*svyVVyjql7P2ZMKfGsW^_qeeHS)mJ+%3f>hM z6JkmCg$k6bc2X=`+$;Yfgtkk}FKo;J&(cp<8Q9dN{}=r9V`jte;AcvQC#yqcG?0r^ zt2dKDgg4%p(VfXr*c;3TX|*dAF*;X}IwP8#qkVy@y~)nra#I695gJDN1p{Y zIoR%$ewNa0fX#9&)fw?LN6FDRs-UL_Dkt|AE_hh+76kO2;lz+BF)bI3N>a9ZKrt|Q z?Up-9J}`NdE}ewjlBbhY6Wj$shLQQ&OTK)`E)M7rjZ@kYMZjDBjBVeSD{|lOV<>H1 zSe#vXV^fvqS+lmZ@yvIae5Z@F|B~aHbiQ2huQn6Xgb!Pfs9aC|HMPu$v9lU-w8UCYjPy9RY=(Kg(wm?Y zzijXOWNzxO;a_msDC>&N%ZTu2RvixnWMsb<8btj=2dc+)utv`Ps-pi2QX$Np)U7U- z_Ani}Y<)qwECEZv&8I}ZAA7Ls*6-rD6wn19(AR+s!I4y z?$C+!w@uC9g#)5~?SZAsoQy`UW(lllUMs%a2(bMHmy7*XeFE>#A0tgBJTT=Y!SMtz zYITLFUzyKN)^0JniH(ThCvJT~2KfhIH!fEe1|S?mXJ4pYadj*WDVYTAPW}Ni$v!J4 z$^oC?@=#spku(ibo7R)Cbt3`rkTZ>Dy0P4|+%Q91w97_JeV)Y5BnHoXE#;;I#GdwZ zCnQ(a{Yl|v#>Gar{xXF0l^{lo-IcO_tXt50OA+5)6P;s2Fz4MCb@I1AUcjXg^q%eE zd1V=ySmvY48-5Rs-LH<{g)FhM^-bVOjtT|+Az>Rjt1cKd&&Zl>`${kK8(KqZ#l3l( z3f|3V)T#3(q(7g^Ghr83DyRd&pZe>igvwOT!)qFKxIaZre>hR(0I7y~m zifuYBlBlW8lnw@P8qzYi-}!wtOQfMQk1Y&6n7TY%FjYFd46CyWmk6y?2%7SssTCeN z)`x;C*L4yHZ&%8jO37LOL13<1->Z47j7MdDk5M#@h|~%&Os%T!qlXkT@{S#-3L5&y z$snQI*#>#9iNm#x7{-_6iM|DUAPUb{;Q)ih==I6eTKT`;_BJ0J!1tB({wW#gesMT3 zbq&n(K`eSBUW6%4g!S&7t)`%UKZzvLzdjr`#@&f0C=yEg;2mT34gZ+r9$fwmttW#_L-tbCl zX=$cx)?I@rn*v&bGbQ~05S7DSHzD9DumXHZ(daU&xqCR@J;gi@MetL#-C8tBss`1A#^p5k>IJn~w zuH*(59k9a2VRynaHFm6Nt|ODe6v&@%&!uOtlRt}Y3)6nk&mDfRf(i<7(p%ap_rHpX z0s)X8Wv^viYdI12K(P@*$ya)$9G$pjOgf+%mJpC~^ZsB7AdW(ARGm5;-`;|A{sVd{ zpf4)am5RP{nL8SX@kSWDjF(#_c$4lrMs-A{CCoKm+t?*Fc8C>Dka1^=R8NH2&}a?| z(wc2i>4$B`jghHwqI4;~o~k-(n_!W5B=^$!OE#WQG@IuB1lPIj*l$v=mP>5pP3f@A#cOn<=SVxp1W)(w**XHsCz3ZjucbqRl_k(w$ z=Tm-E=Inez%7&`WUh-}Gl1!KG8106f4dUZsQ?~MwAf19aJx-}DkKpbjqS8dpkmt`p z^|giTA$P0(Q7;_Ma{q|>cEvYI=agU}?iA?Se0F>6&__w= zH?cIX25+_^ucsrhWk6B$IsJp}?-0@#vIXU6L0_QebDuzL=Sfn84z+L5DY7Lld)lS6 z5WIDQ_PpXjV1k)t`fKGZYHH#3j#V!omrVnd`WOqIoh`Y}Bi(i{&cOpBzV0R)>E90o zS6I&<)YjaS-C1NxZnNYfL~8sBwS0<}O=LKASa>RVJWD+D&+Idq7x;`AV98QKu|b%d z^z?KDc=eqWX~qdbilK^>MQ)8;IrMLO3?W{h>T(qy_BDQbYc+tFsmJ;!X)Wz=^AcK0 zx-M4T7V?U&uoW-&;(nS!=!+M=tS)2WQ)Xm6ssL@=;mt8c#5vW$XAQOY~Wm62$EW5bikJs zmZVODZJsMRNb6`k4!#452-Dvvpk7czK^|5p?^jCM6a_2}%d7ETgvAaR+u zVY88aXt9DxyS3DvQ#y_1Jp8yIxEW1QnUFyY|w8S!z)U+Jj4a z(rt;}y#{=ClLY+;wS|KLzPiu70{Pv=EpKL#W;*w=wVB;t4YARFj6|WIOH0W;y$-FS zd|ixkNMQmZ$RY(W=TD5Z7*q%Vl@304+FxZ;eP0b@L36!7wTlj^T~RC+T4#vO`B`B{ zu$+6*|Av=duxA3Piqq+hBF^arhZP5H?|IB#C}w=n^f0}pt}kmor{1AImQ591uz2wmpnt;=j6&*XQ%e5B#OcjhaB@%u0G$B};dwc}P%ZW6p>4{(QGe_pCs^E!Ayu7>q{ZLW1Ju^Gpzo8LSlxIWu|g?W#9Alo~M?SN%a-bL3P(Qr^SbyuK;#i zVGHmoZ`LM1a;DteCHTF`FPYd}BJ>G62S-nrh)7~6Ev2T6#n;qD*sF&)ktWK@hnV{G+T zG6*Bcyu*D#KKc5>;Kk$?S-rtEWSm;9%|f?Nxw@2b62X3GwRk+N?Whr=#lr?FHg*iYW@L)oqE(bB^UcuPAvIBPCvSwWmVW!0rV9y~$obsT3o$Lu z)pk38sT0bxwGt;nAQzfqqD*C5^nfYixyCD2RZi20OnR?^WMayK{7XFXr<{!IjW|UG z!s1t4F_Ppvm8R_>x~v%&Q!G)%w3L$)D*{O-o9&G!jn{vT8F=I&8+ zF-&G}D;H8&wk@Ez+fS2$1T4NMb=0Wk4vyWRugGydfWcK<+r;cM=(E`__C z0}QCIjh6W3C5mRqVuB9YYfPogfj+>F(9)l=dA0BJjgjl&OTsk>J+VL%8L*5Fp{KQa zqw@A&$JPvIOpPfM4AM>`T6vzEp;@%{F{!@0Nj0UsZf3@$+2He?{AI4Ki_*7ZdZTGV z%5MO@(o0F7YtH|$JbeNkyxx|m<5CXrJyIi+V%r+Iy~(=~ zJpVIw9EAwKe1MQ>yY|9tHdU#P5FEXDH>3@t@^(5F?1oIkd2i8-AfV=%FR~3zAoqMH zZ0M&dMv{BUfc7kEN}7JRE8@3o(kmU8qk@kEFm2&7;xyCO*Baice`kC083}H+H>cg` z^I&y!?S7t&IJ(hL*w8_>EGv5knrT(H?^*n(<`1t>s|nf1PoIIx3w%ID!3;Z@TGX(_ zqAt7CRv%gcR_^d^@L}j07zTTuyy5jiIzen+;e6??=x$$U5Wid2O28T`TZ`(Zyt8S% zio-L1kCq*%y9g58{2%s(bc*LC_}qsdNON-?@un2DHnpS;%v-T{5<2^lI=oYR#yZwB zksoUMI{?~AvLXBb)&%wll>tvfKY>+?svTK;&Pje#>Iz$PcEF%`=-q(J?iL$D_-zIY zF@;mx6AGHOL6nTwXf?V3Xu8n+c-nJe%o&m7^%f%mPpjECB18TzZkpf83>%Wttb0bLht9Dt_%`HwMKTuycwpt`a`s#O>MZYX_>%xo8-~V^s;M8j1LSl2-GSy zuNDEoIu0o>?1PNZxwyKHU-_71%gSid=5;HnDzx@zWf3iqiXyWN4BAcjsKyd4Ycz0pKf z4G+7z>QkiHG}{d2BEO4MeZ5XwuWKU0@Cvi6ksHsddhAvJk|4dnb9qhcGuZdCn&-bU zsvVC&X+>I0{$p<^jmMl`iUD-I)%s%JE9}c^K=@$Us*6v#C)fW-fT?FkTcZS~1C$v5 z?95_7qbHOUQeY=BC;(#f39dEZFKQ!IHk`U&rNwAhe~mhXy0EqPul3m;+i*{z=bd;n za#^EWmxypRbRp`gC}5S7Tmo699N&fn)x+81zA){Cj@lndA8`M8v*hL{DR)`q7Pw+G zG{Xw$n-&m*UUUzzD^e$y<$WF(t5g$cur#_c%}d;Ab`0=#5Y^vwv%S zNQ6D3L6`{yS^J%-`4rt?M0Lwn8;Y!&%td4$wTAE$_rHSwK10Ugj^Dfn8d%*?Bs?O| z$j}Z_)sElzBUv$H-H@ibr-nV-&FcNC=T>zqMNGOfVQXUel;nuK@_sC(Tk3YL$JVta zA*#3XR_UPbF>fD#x@{6Arpnymb0PcR#KC1|3CNQ3ma*(MS*C3;QFD#`;uP$^V{yKD+6(T8koH3;$et14VRjqYKx|2>d~0C$?Im8;9wg zMi$F&C3S}M_r*7BpTnRTL`s2R_qYe+WyGJk5WVWdxjvsP#5VwSeQm7oPUk3T+yd|YW*Txq$*kCS(tL@e~ErN;h+QFOVh)e zt{)5g*9S2kvC1MCWOol%Ufo#`oDo!-J~?|oct4A!}E^1FXoFQD_EU;UoV-SlbgHAAGjJo z|2B4Uxgs|yXHKruJv|^|D7N35WORGQn36m8AAg+PR9^6^wZ5f@)?d&~w;Z4^iz{Me zxi*{oiH@?{Bn%Pt0^hg8vAUTP09D56 z8U>YP-dLFRO+#Jhx(6>@2b<59Uts`Cr)$;Pb;0|L=VV9Lv#hO87Ratud%#@A`d*9cEC z+vCWmXvO&)Qo7Ekr#Yy>VYiC;Jr0~gtG}2+@x(fHZ^C_9F=ru+uP{ zA^{~v*A5;>%VipPdtbHBm@V_?2=<)IycE zr_C@>&`+qY9fK=t;}j%$ogOptyQ?|^qiXPm^;`O#^u3<>FyJwx?X%#Q(G9txt#=hb zIDYcLANaI$n~_YA*RZPk0xpMr+?h<-drJ1&cswV!(G$o^on8o%uX=b>#c(g$zd67~ z8XQ-5l#@K6!#+Xxwi>jXi8N18>$)h2KVG(%lXF@d6@E0RgG(wgldCck_~LqUcgq># zGJ$zSwhSLoqQDD-31SKMN~ja%>hGMoajgj6p!43VI$^QGIQB@4BNr%!;qe#SbV3Ad ziHFl258G=g{RwcmQ!u&A61W(z=0ZKCQ1{CMDa3za)`78`Zu{*xYjwC}0c<`a<&oGP z0S^1mdvd8`|7ZH75a_Yy6`O`_+|cYKB~sCQ+;6{FFCCmSyj#Of8nf#O_NnRAUw&&O zm45If=Bl_$*8?#8B#9z}lg%5|QMqEY0xuE_6FoFWnk3nJXXZ*%y=p|4m4crauACv< z;ZnU#e+&EE1r9Z0p*2@_(t-`A@`2`GysAKk;>k55B}N0S&yv|$ZIKCxh*rbR;*TjaD5vcfr(VyX$%Rw!_8cVM zq>KNy!(H-Xf#G6K%1r-2okN=gbKNV7L{lQ8;j41i*CI_Z$6jc>1=~x$U$y;>OPj5V z@(q?gC`o=VbJ5ysIaJKZTywO9K!>2>synu!^Rn_Omv{vZZ+=caFweuY0C*E0*rSuC z;}fh120vk*|AEUTMK9{0+I8PMNZt4Ue^Dl!r)zOtQ`C%;b0ki}DWdx$;N2@(lf|tI4x}RIdAwc`s1oP);Jf%iR#vIi>Oh0UQtqTe#NX~cV@bB zb6a?N!eINZO4NU{ck?Jmp>e`QHmu_|s;GaM2a_ugTFcLjLOwAcz%#@yG72)-yjf8oxSTWiY z_eoY*OykiWAExekfXMD&r)jyLwC6Bzcm7>Eirn~>42qMC5DaAdknZj-WoSW%QkB;u zVi5OOsh2WVaiJeEu6!SNu5I=W6n-{Retj`ECLk=u8Fs5wd}K_2L*OB)mqjX2rCukz z3^ls~S@UbwkIbO64MIB7We6oUiR{%KL(dL!SP>rD5sJ#R=j~@5h^wcJ9*l zJ*ShQDUFtvV=@~F;f>gF+lWNW$Nel>XhJ{qd?VKhSP@;d?AU5aM?_%c_GHDpH_CmW zQ>)GCo0nVME7IR~?G)GG4n9mcC7$d56|<(-xJtDSrPO4e(2MdOTe_R{2EKw0sXr${ zmV&UpAe&1qgYhLrA!2>?cuq6?!KjufAmNqWg#Nblu9XWn(Q)lL@+fJNyRKPe4;>Nz z`S#2evL5$5T6V0kmZ}jF3dIFGTM9CTf{@2(3@C$sNN?VrsSI4Wtfhr!|qAz)xUK}N4T)5p+x=EC_hNMW`Gq(i&D0dfZQjPS$Qsk!~&Z8Jot zEG7Ix&AFZ$AFvLzIZie_j3xn2BCZQJTwz9ahTSH6Y1A$8#)rJ!tGpJO!F{1Va&*%D z7GATkLAQ0N%h7FDj;sI$=9&A&6MC4>9M=Z5~_vSQg~ENLyjZAdR~O! z(nLxFXS6CRUCxX1=-|x{Y*2Aqm+_wS?tlf~_()!}plVNc#EKLckxiM&=4=Ow{{TJh zi^J6!A8M(CssdGwiE}!uJ2|$I{1`K`t%duc^0dpP0*~X?j6c{_CAn&5P{$3|yRT+m zwYdj8P-2Z}C=-L{HDX8OL%4Li=IBX3f^n53AYoieSWA>~3$7suAgQhx_tkiT-$f+r z?EShlk{zQgV>@&N+?Z#e#3Oxh7;B^yX+)SOeC6#pN6`l|&-gGy83{Rj+fn~cIB%M? zCCQJZ;<9ie%j`BiT;dKz{8vn<1AmaJlKVV7z|n1wzayj#SnXf4=Q-bhSe}(wwSPkL zTgzewWy7tzCEWHq=eD>rmPvUYTWb#<{Vg+44y^C__|j<&wsfpl2`V#pyGB7{-}#{~ z^RnQ7D73<=qIQTZ&hrB-Z}a^o8c~lX+-%+y18I7-{4xRSawdvwn}@seeqMCk{if6B ztWXu!Js!LfIpmh11xu$Lux?t4u11y>kAUFcUAF%2{WXHB1>glc=1+SB>wZIM3iDV_U!YVDIo6B4=!>Rf65 z#c{HoZ^GW>Rh0Sg%Y-aWMy5p4LCwKzdCN3cX2M}vr;{19WP-LoxMT+CY#EICkD}YD zirkgi{Y(Gl^JI%>Ub2ygE&ws3KL4pZ$m&bG?xy0geRH=&VNVP?!wTgZ@cW^F+`MKf zh&Hpc4K!3(JXg;IB>2U3Q)OcB!lQo$&E;*38^No`-ohu`T^6#*9oZh||DK`McW*h) zT}`Sf5vR*}_!90WKHIySatD4Kdxd&yLMCN5kE|t(@Jl|nzP^(EiP@QLHlBG6Y~~o4 z)Jql&oQTm?i1dv|xi}RVwHOO@TpMlVz}!iqFXn|bZgZlM?3kqZh8SXP5DeC7{+4+h z8TyzaO^s(p+{B-l8+;rK>(J`xFASF*;*5%0d7?-IXF{t_~F!9Vv{ z%;nLCO5fQ^^ndGWcRA%Q7Xqdep(rN4hHyToU(tW;n3^8$*uDW(G<;U+Wfv62`A`Q9 zTFi_qYd)Y0d_G0qg*8gP=us3sg!UM3XV%Nm`yA(0U#>>=dHWJF^!l@|UChXx8(u3S z7a91=ahB)HYlpXMn6$3AoZ;K-@7FR_*@|45w$Cpb0$tipi@TS9el7Gi?sO+)DT%SW zJ+2S3Y469ZpKn;;bNSm{VQJJ7gKZpsykH>De&9bMQSZinM3|W#&+^&a$(H*j-Bzdw z3BW8e*=vTC06oRJt{U7eTBEy5**Zl6c1&X}EEs^lEBmmbewSEU|0a^|WMES<RS6&bv=a2;&#bjV2TwAbe%f%0_p%{M} zJ2rRITPp&;Q`MiSc1hdLTF=T6Jd)XtfpDLQdBv*0Zg+E|X1q3<`JdiPQO*aFkRG_n z*3v^?2LF-G>H|l^>|0Hfyz??03190CllIST-=eeVd2bJ-W*7^@#UL~1*W}`5)(GL| z&WhP#k!f;7IhzFhQ@8JMaF33k)5C#!%px1Z9XR8N{Z?PI*~`BEMH;I>WjCU+^YOe@ zKHYytHN;!PC?(e_TrsfOXB$sp?w!Ky((!R4Y-R))ehscZvK@f4kyfRhMb69SuXpYb zf*c)=pl`P|cG|^fhAY(>`5+3uTrmRObkB8ge&?9vOr8*nCKJ+^ac$aEK4iC=F+pml z&UA9t+Uzn}2~uS<`eEm^yzfd-l>O6It!-jo!!((^m!>ae%0TJ3Dc$~{FR8TJG`t{C z*Jn4G(o|;Ta1AxVHJZ$*K3%igt8;b3WhhbCwa6@Nq^sezBgP%Z8K*Fd9A+rSE0dNu z#Oq&_=k;CUU>T*QQ;3>yRQQ(ahW2O!xYs!-P&9K_3@dL605tZk7??I!c^H7sxTom@ zSJHeGHwJoa&$e!Q`=LX#k?vf_n%*MTfyDv1@~3OhW!^jcBNup@+^{){coYG`n^huL z1mNiQ(9<+GrE8ShTUZ;>gHkPk3iV$vR7wGr-frGDtQGtv4Q&qY*7W}~xJo||; z4a@0{p%ym~)GwW8c{5I(>Q&Qkf21e^NHLD?{IYkXvv;)GIgb>PIcPP1Yxv;qsE({$ej6$2cua2wZ+@KVj~x z%>F|bNdfgGeRK$z+Fh0>4|e5mCIM06S>P2_fH0>+d8qB}sypi}a9IE6BD9%T^^X+z zNVAtO^v}R$7bE5Ii+!y(1zcr1&(cCiTKbk6=#C#kqN4rE@$Q?QpB(&`?^He9KNDuW z)JKO2s!w)>?hpHBHXO7mhadt1hqe>}a=E0}Fc=dPt;#g=as1LQG~Z)`g*WK>&kPWxX;Y#N&=`SFr0dvETq4=TYkx=wo{r)e6$ox zM|yBs7nKeBVw)WuZfx+jTlI_*=lpo!e`>JUrp8grh`!=V1HpMqpo3IQ{maD!IPL*F zH_~bTjAIu#o))0G#n@v5>weK%y}CCi!@_kA`7DGR&~8D>{)S%3d(aHC|Ide%tf5Cu zu{Kx2j?UX7ka_AV7j`nhh~Dx=ojH?*w*Y*$cW7+GyuhOqF)Hm$G{c*n$}En)>vDDW zNq9Pk)MFevGhVWobu>l^c`dw1>X*$gz!jF_I$-mp^b9Qvrp?23MJaE!=&ZCAAn#Dr zK``@K+d1qH&0~6XhYv0$hLz3%e1YxSS6Ym#z6mdry0NvG?7G4t+e9*DDRuLa$sV+W zLQBNy|Bs<_@n?Gfy}dB0xIr|?cHU41qs-r&ywjZ9he zg0uD71wd#b=p>iJsd2Z%C{|VIz-{oZOCoJg|FtK~@iGsJ#pt99kqub?hj#VT06Ny- zmE4Y2eM^Dhx3N54429x|EPN0quX$P)=MD41l~|Q`A)mV=gko+9&cY1%I$#pa^y8H6;KD3QJ1T5P|p z`d@7bZmB$S;K4s@zl~h^rhP2xo3l1yYOGp*)5YUxL%I$JYglQPjP(i8FAHAQO*L8M zo)}xq$nHiNCz>ZtjA%4%CCqNLqx2V^Z14n6*jCH(iil5{+w+CWMbBJ0ub_D2BHzK? z4i9wSM$yUI2c&GgfiiW?ajo7sFjZs=Bk$ry2sf-ucPSI&PW`!}b5pQENxNv?z4n`x zOLx1}MmWXijqI)!RMvQvMI9uVTa~w`qigp{do5EY`Q`d&3bvBBrc|=q+slb6p5u3X z@;U;Cy=(z}(FnvfD%y|KeiDrHfip~o=(<#AzaVGg{32(WI8+3G)qEo*5$|{mJhbj* zWH+ey@j&lH9nAeihrHN?X4%v9g~I&Yf)fY7aDRuwZU9j~}BAF)NeEtInDY?gnH}^z4T4EZLlSZp{7iB8|S%oCLQ$Cf*vpB8V)4XW~>l4|{;t zN;LPLhuPgYIAvo6ZTXXB5bZX`j=QdS<+U42L`{JDBcJBOn+ zxpZG#MCg`PXXzD=$4*u`xB zGGeTMO7SzvY`hW8ODb1kEJ=A8X|ZL~9PGVry)~Il3y0Zj#Jr}qYk~AKZKi}U$jj!kcc)@5VgzGyobBmt-2h6|{VHccRa5bdS?e+Gc{vmp~$pKoB-l?_o^Rs0Y+prrw#WfxFnDhWBFps(M^& zb|Vk4pYGs{za}k4DjKRzs=F=ZxZdg8NPwt#J!Pr_d0Ex<9fOt~ zgM?rQ&Y#z(D4l(wW(uKw%XGT&A4R{C7L)h~3eA=Tg*90YacF*@=zNXaX1rFAT4)C5 zm5m->iq!X^^4<@-@Akb;g{G^p)y~$0itZ*aL5dU$9HrJx`ypMxlG>C-bi{8@mw7}m z5Ak`P(}VT(|I;1?QPbj?TiqvH>fwhNrlua!`v!^!e%e!C)1Z0Vug>?-#d`IXcR1pM zpU`UJ-m&$k?o;2YA`vkR!g~oLM;Ekoh!>~Y&`~E#;Kz0u;5@FdF_r6>wn68KqV z9Wl36Zb-=r-7=JZ*{S8rN?u5oT;u&QE^K&6mBr{6D%RDf=DGgQd_%Hv95!8qzLmm( zzlbTS%6fkqmu^3PWBWUZ5mcq|kb_nJy}>5`%=&b$0>5M8Au0iIXn>NgGMJ#DHgeBW zbd6Isu$Lb9;3&QU6ma|e{1MX;hDyt)-jY7radZ9H`I356fO*L&{T zId92ObWfM?jvglXhLP*bG~~7>yOn3Kh(!+?^jdFEI854#v8S^b4LG@VGPdAxB%0J-OCKlRE?KO z4y^sn`(rEUm-^#;g-E+D4k^oHnff7r@T)V!GfCo*zumh`tJJ*NbK+559{Lji6ZjVV zRd!U32fO6@Fw3H908W2^zv?oi?mOI)*Ye-O9rn@Mmz&>`_)zn45_QCB_Z20ovr(m% zU&xB~vCMZKDkLDBjoD0`%ERFWe(us(<*WRVz0t?h7gr8+%_kHo55MnNA7+%o?kenh zXI53uQtwCZ(T2}3ze5KoTgf)a{mOWWn7iBZm;}yD$8Ta~Qd{nD3IuoEM?Jx0pSPn~ zEqv4R@x{z3_=U(htAVw@W;`}Ytj5Z=LOtx~0*A%WxtmKflVm%b-DbD^y@S9mU8FjaxCE89M0v|71vnjzDyS~tAJ&;E=tKVpb z>@Oa_%s2{u(@K!2{CzPjWVsNZ|A72Cz$V!=eM<^Ng}gAqcH<3lbCk)O<%kDplp zv%J6KM$f>*_S+9-*68@Lvf!ukUBTd}Egh1HllODPh7%i^-_-l~PS%$66#v11{K`@- zym2pF@B8<){((aoSn!%$>2$ArMA~%QCogVCQ(Jpk+Fe+&#blYprDkwx%J z6lNJY581G)WXsc%_YNmacgi=E_08u000(PW&FO8oxbB|`Kzf#31^ogS*lcRs`D#feY$&1wH6G>dnND9rc!|Sw&cGO9*U(8HzOf8xTZ{86JLXf>^n| z8fP_^(65u1oc8ldAOOEKRHPof>yEshwr}M3`vZ=Auqr>(7pbw68I9IzDSJ;oX?c^h z*g%M!Scz?J_!W`a3Qu|MY=G4)7+-fyDW}6}xhluIrh~z&PUq^kMrZrVq=-d@+;r4$ z0^5b6Zv<>okBe=gD^70i3Eet`T?h}l2R*xXrJt6Lz%Oa7(*IXq4_#c^szv-T8#7pF zn=#3J|Mo`Shvh850f53KnlMA*P0rPruH*#6UAGa7V^g}pt%G8|lGDVH|1a%+;+aC$ z!rcCQ=_u;u!8-1%`6&9x>AHDFQ|0Dd{bavtfjI-Uzgo9_Ba3_Ofclcqp8N4SK4sK? z*O}kf@xQo;i|bPJJyfrG`40I`6aH=C8n(R*I**kNlU;k5l1Z7g1FY3)Cp2}QZf$t= zW%a-}i{u{@z`A_6)lN9t96zqMVbTwjm*II+=B(3Tig&D0WgeUN@Pdv4Oi z>tL#fJno>tOtt3BcBM15E1OQYx#%sS;8_UCGk4PgY;hP$o}V5=Sfscp7t_p+$AzUbHb!&Z%8=F zH8i!8-s>H=+H111o=e@jC5CS7;pb}uc0KNe7{IsB1w%2g(JJ^CIzZK(<~k6J zirR@b>FoG!x$%TX4qF~gFPf5YHQUuz#&YtVUFn_q)3j4rA^KAYmypT{%i{smRMWQP zo1RY9bx1u>ZN!OAiL{!%^hujQ*Z(x&zwI{nIda_NWOslI#39&Sr+(LRs?8IaBeYR^ z`zj!Qkasi{Av;x5wk{_rQAcO*Dc=Y<7`@t`)>f)Rp`xr?}=v`19GOk;`_he}NBD4z3PWmzpPwlf*in z%P!K|u(xjt1Crl~SZz+Bypp?Se*}X415p6xk|+X}QQQZU4I!1Po}Jt(mC;fN?#axi zx>J#m9kqxPkuqM)#QAVfj3eatJIFFi5Q{nI&hJ8N+;WTHd$0??HdqxJoZG?r;$_h* zrDy2Cn~+$+1+p{8)4eWx@9)_Oarl&SU;Qp@iB>_}|n@59%mYb=Wlj;T5%&N@bSIl5+>xwYm2 zw0xeYJ?Jxup8N~%MW$9aBt)4Xqt zSSlLH6mmG%-BDgfhb|lcz6**G_Les;05!IC#Olf2r|)L7v-5^e$b`MEiyy`{>Uq2D ziT=^^FNiEoI6vvaj-8fZPt@W%`WEg8l+)&AOBGqaxGiBveK(?=T3z-&+sC+nWvelp zOIcn8Pko{b==oh%YFo4HeJ$Y7>y!ASCG$|%tIOHS4O&yPx+7BttuLTFr9;x!XlYr949Na=Mdtx2i3&?^g zaSMg-foRfj zeqlmA4~XDAtLKbcUc!J{lA@LXyHklWgW}3c0EpK9KOEMutKEM~}Oe7`N;&(eb zVXL>_UCDE3HX;d&Puw>|6|)fe560&WGj!O+%u+`*xXIs1qM?>Cv@BcmFDmFYIerUp zK=(%M+`TQ_KriUlq+)z!K5_vVNWIGV%}Hzj-MEv>}1}u^iae)}xcrzLHDAOb>kh zS>%?V>}s@tvB8Aj57iGzLyMCtd5T(#Y@^Y1%)RKjDjU&rkVHMNk_f+>XV$eGNjG)KSbFVtJL+F8%v-7($w zouObfp~SH@?eT?VE~$FVF>`kGkGz;p!}bCWQH!k~6zRhIGvp;iM8Hc#_axWPPJ=vO zU9HTBKJRW{<}5fRVFeU!chTMyF{g!@=`qNc1s(Q%PmJyiUC<%01l2RP!nDdfMX2+kT=xbb}KbpW@D62CDXr}L`+^Xm^qW2>no|#rA6Qa^qGEW^M z$AnLgK}51LJ&LBj@x?Y5ytK(%hw;|rMaS|t`>1H%#v9AE>B3v+;l9EUOQwmhr_Z~P z#Ph8$O;@qMx(X%LWeH(v*qfpT2ZFuZ+Kx2UX4<`A_2f{(`J2eY6pc;`;`@ge>0VQd zBxW1RdM&5tV3>R86;Fw$f`7v~cg}|dDaocwjs*th>-hRg-D39X`8iN_GNuz)YQBw# z*%{#pUucLTeeXxMtKf$Lrijnz%*k~8pyXLH(mzRzzg6md0O?Yt-csCCdKDTXw{q1I z&wbPQhY{l+!?Ul&jW`!mFf%!B6nHoS{y?tp*SgdekP6OlF4+Y`Q=aQlHduLPZ~LB;X!Qg_e`NWMwL zmy<0*dLtrAmdHb~y?{F7W!j|9&)}RTqwh305=^+@JI+4k*00)bgcO}(QcMOm)F_;y zGkbTWZ-d8MJkvF`0uVng*VDAfwTfLnNi1fFVEcmMiP&b~Vt|eQbf+-ZKRGN{Bhtcb zKf()Uw99dgYx;91*nIqQ)NEpBvApR5WOq64o+cpPpR$x49tn+dm}aF$FL1O;Tj#*d zrB&=ogc&Ws><*)z+t6LZS<9KT-63-NH`A9tQ~SHL>ACo;A^VxriZte3W*+ra=bZN) zFkYUsFO@gWDJI0+4QzuZ`m2Z={H~pfHQm@jVRv+Er{=`I26!S`5V$P9*>gG&b6nev z6`JBCQB>+XDCwWP3y4D1ePk)b@NsPoEJ zq{$sa?)Gb=0%x)4CplLfg?lsfRbouZKx&+K#4U}0>bTF=7@mGD@y)fR^T#k4!~VX& zwW@f3PHV&|d zi8S(XSevKmgT3F;`Z1Q?O;+ees_PuT<03%eNI$%*puV+g!Fk!#HCSR5fa(xDF0fdO ztsK{8>{V)Pc&HU?JN#i>7kVxAh6Wq*(g)E#fKY(n0Z_tQ2^Lu^clITjU1 z>0R?09-5xa1CWkH7Nfefpn$SP{Fd!)JadhfuE2hw_T1ORqqXgPC~te&a6)KAS-oHx ziw|#? zbY+z2Rp`&Mu)8|@eoWoYWl#H^jPfS~jhBXPoP)I`$e|qfPl4S>$pgC$S`2AHIqy6! z)h6XR(%JJj_8B5iHHfKHFyOaswAYgh{85i;+Gsl=z4it2DV9;qNm zw}l{%+0@gV2jqL5^}Q}iVREgU+%#oo6ZFqS(VA3!5YP>Kq1uIRPu&)t2!YOwum4#O zV|{B_IOglJkhfvDTWp)&w+8!VL*sdrnFEoRmkYh_TJPT3508%0kN(j4Er^}KT{-IO zQd3Wd=SZHk3{!&JHj-_GkxAB*p*Td|6>Z+aFYU_U*;KqIG2DBTI6No4xVGGPv2}Ym z=6l!~a9s!BQRVh-r|yLQyPXSP+tU(RtHMIkt=2feXiB6(S#ZB<%O3$2jQvd}KsdR& zhGIdqdwZEDmvcN7ECZ|xO%%8R+&I>t;M8oEj_ z5>}_MGYI&DW=K}9g6B>EV!bfKn2dsNKWhAA=#sdF=+BX|Q1~TLPg5RtYy(oxUBDtb zq)tZOV`IA-B>G+1s#3(T3HZK2YWr+)mr;3`lH_1LGqL%GGuT2m=Ygi-XPQHmIZ10B z^S*VSrX3nMoF*gEY1x;W`bDV_xpE>@sd=kcPad+66Bim=vmJ;#fxZU{%1~D!Wo83s z6Rt5vz65C5-;u&vmgn&GCW;P&5U)d9yYI#s!9*gpy3h-$pWPC6`_?81DS4~1h5J;7 zqQrA#6OG41qPiT`Z6L45uU5uI{aJGk=RJuo zfAUX)?<=A3vtDDDI&6=(q(mQqVU4BGgqF9v`hddt>=L;*_UDMENvyWd>K96DhTz_> zBYb``gVQW=JEj!w+dwU7FY=uu&{#+e_xY9yFzr8Tvb)9FGM_O1Chk}6gUBZ#s)W3b zYil%KA|;19PEofg+sn);mo&@7!G|0Bq|*GFcdjkz=zGGWGG%ML`~$yPlmay(rVL+NJK)F*xZ&E|u?!CHQkLpYiZActYt8$R5L zu@A*nx+O1r<(@&Q;&isxJy`CDS4q|T6t15Cx=-?1i9d*-6zfzIxdFY8ZnH!md*mVD zm(hkPrgOK|KtM8FJK@tBOh2qbZ}YFPjI!Ma8ZonCOBQ0uAFIBV6{oH5A=)O}0^=tn zV7yQ0rOPF_`;n?_zk*jID~p$iw7TYRuVcf5#WYoAXRK{%^xGKky0VH9y*)qj#O^`< z&yd&Kvtdkl<5NMd67yFxiiQ5F0jL*Oe(hjAu9}IW48${Y@z#bUt-187-{N(-GB#3o z8ka1T<3Dj`b0l1CD{Ib-owp0b+bvJI%hGtNY^$&1#>?N!S&hRM%Gu9SECC;Hs1A3T zexH5I1F|nAGp7uXDS+FUM`Mav*dqH44Z_v!tKN}Xe%~{j##Co#H?@F@)OV1Yc0kM( zG3wm{#ZhP8?N}WCQ5BpjWAq>-+N^$VP@H)R$xQec=0Iqs2IsR#ob{kQarHQ#9J7Yy{njSl-2H(>K)ZJZ_;w~H!&vp0x{|LR~Gveji`y0T3- zL$i^-WKe$s8*&%&C%SRHRx2%b*}U=74~%ZTRHP5c!c8D_u*M1!e+p-?a zeMjv-12r$V;+l(^4iK~|tN96L7gc|#GL2UE3zApAZt^!Rj7TAZP>;*>HYztQB%xVo z-0hhRB7Y3O&KOf=-f)JOA(CSyrj&Y=D_khw+yPJ9wKlkV+&j#NT)*)1IkQ3UVZ$%= zzgkk&!e5J&Ix8!;bS-b8yyP`?DI z4n5jnj{x#HBR6*7wsKW)c*$a(N7^d%X$R`=fqw#H&!^L_#a#08sC${C$hZ!~fG+vm z3xY=P`i1SU36|csrIqgdFV3M3j?p(-jxM(!bsuVn##~Rk%xWtakGmpx>(Oc`%n8OjO%)}0txmpGN(kU58QN6?@bGJ{fSXA~F{6bghu z%X4nIF;LnO^|xn>o>78%banBNb*%j0uViNT0n>Kkp!Pp}sm6;wnF@Tjf;a*0?tWqZ zS7^uCDyCz^wsBen_1M&R;p=@K*OVbzeLv04-(Jx;Fh)b#Z_j{6J>J^P^mQ3LqDz}q ziD6&&j1p~;sC5{Yd{aM=th;0GTsZogIO`u6eVqSS5)z&W4&-J~=B&)7JdlS1^_kbf zy+BOpy+WVx4@0sVYr%6L&Q&|y<$kC5XwLf-M3DNLXBeIC(}dF4*%J3;_O?KbkqF)`MmD*Eg=EqqZP?}4M@VId3;XoEowEeQb0_j1|wVluX zN?Ddt;dk3#GPO;4Co8(SX9&P@z{?NJX2Av2ty-8;-d*3J8+UA|Q$3OCNjV*$LRHnt zK{?tpl#1t^S8Y|BqE=X}dAZ#}On*irRk?^>(d?=q$2kUgU($d84NNs}r?$$X`%3j`kPuvrM zVrk9YDRvIxB)2|7Hc!9O$G41gjAV;>Y<#(?*04XYpw5^ZA9>qmoK|j*#u*mYrQf*YCT{P^ zQ8DPlhLE;kQ@iK{q^BdsJ%IuK7VRg8FPMoL__@82KH2yK%qr;$(9{Q)KyXa&Dp#=B z-XODIN_oTQQ*l`hTzYQz2zp0{-2>2&+_kB%PaA&AiiPpsj=7F#Luw92pFutSBc!yz z1ThEn2VfPmH-*&rxAeY|!9WZI_4Z!dMzcd&!Y(Io>)N26kK63Ewvk13RZg0cc znoAE4vE-EB;DKQQY14hjxCDNf&$ukW+Q=^IAcOtDk~dcF$ymaYSeD#MmR>(7GojBh z4`BWtkJH}xgLV(yn=6)a6c}ND(IPHiavVG8Vj4Mle0FE;!eo5B<~Ny|ZlkYmeoWjt zbTwfkrhay*v9bZyv5ncWRGU9G^tcM_G1M^v5}s_i13XJ})AzB=rX}FXK$1c9LF&E9 z+$*)REB03C{SAYW-KBrhQYgPVT{O?+g7WKUOrORchsT>)(=PzbJ$ac|^W$k|f5-+w zWa-e5i&}eXD*os`LhI6l6XMUsRhOkom8n?H)IG+%FdMR44M5Hx5P>&aFf%GpRJ|{exe+ zqzAQdfTy<|txcwzKa+Ti$%A`MNyqXNufhOD2Bb#?D2J)ryVDY>-s5jtt{M5s??@5L zw_oOZ(pNx7J^ka)p*>|@CS3IrljeI>) z4M`V8kC&?#Cz$hgTPhu8`KSW4_!W@~z8~h?SYTqs zShdZt7iM0_!vJ={M&A(l134kd!#aLJY#W%|u7^ zfbl2&2O4ni5%`bLNK^@YFkwD$nMY|yAGnk%6waPX7)CC*LoAjpLe&`!h8_1a1wT|B zN@wI31~f@VqJvBSu8wJG-%qw*ZJX-rO7;nv+;{PR{05pZG^~9|suK{-R5=k?FoUSl z-+^ssg&{)EhaNf#H0yMsDsBW9gdBolr>H8FV1?oWHsPX#>_Bi<-|EP_CRr!@#vb&} zH8ocaRH|zmeEOtEIMb4(F_Dtp<2JR3{?&(F(JnP3DG8B22!!X<$w<9m&(YFH`49sy zYtS1|k9oOm(g=lV+Jb0U&zoyayL9j zmBRmSJh0sG%6^5lgqR_AX4g!3Y$SlPdCL?EpdgGFBrz?LZ}?JS%LL{mGi@|69hmHz zBgkp_2w7{K_%e`c#0pDrUOl=VEsRX4xqzQl=a?XdV*w+vlaT@YqGANj6xC;q!(Q8H zEiOBc+W)&QBi9Xz9_z&3CNWAO@D9R_JoN)*$;95_+WU(IcOj48X6tzT&}=E2_;W3R zYPB*E62P23y8EjT99}i$_(_3wJO;io3y9e+OcE^Wd5tdxtSaG%1k+*I_xZ{25M7!H z*(HRq_GS9bP{aOcUD8-cst&E!FcmcPvbA^OoWGlb|5V}LEz)a&Fdy*e4Ul8NSy-LH zx^VF8OmJoBAw!&{jTzUYd~kQ?U+8r|M^Ar+8b9n{c6h*BmDAd*(-c(Lgd0Zb_K4y= z6>yJ+E|HYIS3I-$?=0YT?5bo_7ksFB_jSx=@Xb5gsEL#@L+IoCecmt)=U^ovI@t18 z9cvcDbamOxGW6lRb@&B;44OF)HjE@K(+6BWs(*;D5HFBw!4nkFBWlrOw4W3K(GnUD z3-r4c_}`-J1wjC$?y_1HLGXCf30WqW3qJ&i7znH^EsmR?b_L8~nMXJFma z;2Aa`ZUMP`A(s#jtVGmL-?sI|FP7VwM|4KX<9fF{d44;pm!kZ)D^FaB;@E{H-zc}z zGp}NMU&9bASAebrxOcm>3 zE;JWN>S9{ zOkyTNbX(1nOI#kFcq*MNQG`WaaT99uMeto0Qu9CBO_>Lbm%AtbzAz=vsi*6VuixuR zx72J6d1W|FTB{V9BunRn`J%`DU0we6ZJWF$_~VpjVaT0#Wr=|J{Uk zMEV)#CSu&(3t#M#P76hu3H_bPN-;lNWkSriSBnKnAU{h)Y8_`AnO*Qz9l_&cwU91b zxk(0_k6eFuUR5Gr@Am=`^+5fO9sVwc+(h;7zPpSHFu6gH|75QlG0f8jMkl|7?aZzj zrY;|_7H40;)tSbH;VnsEZMSQxS1CB;-=fMadVWv0-~4g1Yf8mrv_AWP^u1QY5$Z^i zz>(9;9NwB=I|0z+H{Q^byi=3{-rYEr#_IO>1Q#`EY)=o54aHOzmoWuD&vBH6r(z-% zg@5x~Y!T8hJ57sbs*GjLZ3B>{6Twr%s}XMts&xNkqjyD!kfmVDs|o{af(`b%9sZI= zT=G)>vHuuow=AVf{Ne4C&nxF{L2CP7a6aIe(%CsHm0zx$ApP4(U%6D2#Bb9F3d zrsd$TP**aqkd?w~>5-$3#|(S;nNHq#J8CYh<~JjjxH`YFt=`(DyK@}$BGU3Pf@W>F z6*x(`V(t@M5CKKek_)~p3y*0;GO(QAASFcLNPt^OxkG=4I3VDg_e z9LZV2R3|XqHmlwPI1&jzp>2sPtT0* zzv_@2hH)UHZEvR$fE@9uH?GXVh1@X*AiqM6P-}rn*}HP%C8gFSXM zWF^IF12h|^{-wxgzcHQ&46Kq|JL8KkY9D_cX7We-QOm?HB?%iTj#oUN8t4eB9I(-{ z4)-ZC6%d(ss*n%$I&Q0WqR_+Cr>U{tMhUr0iTeQGu}%RK5LPIXnfgSzh_zGJQAX z6l`(qB;#7(?sp6~RyO2}VpOHFY0YbAZCqH7HG@TyPO6L6PWX>e10_xJgjte^TH*FR zJB|64b$E|0p@UZV;6<=zG;R1wR3o-)I<9}P5CQ~LZKn`TV8m1Gr}WlU*^~N+#I_O_ zmAZOM#8i9Ti4o?f6V@s+`-a!2^9;8wjMR3Cg`oM|Pu#Dd!zgk?KJP;sPBqyjt0UB7 z%5wIOKWN`u?+lV0EgF%Y%AT5 zIoW!CfvB&P7C@xI1_>_HBfm|)S7<~vxCfsGXo?@gJhy69*}zTM6QyInxPJRH3+B?f zlj|fbP7`+o1np%CnJU4rJCPjC#lJ%z{91lgaE^^%a=th8qlgjA#cJ#CS?Eq&aMp(# zJ)vPOA99|X=dHHalX7)VB>>Cd##8Tj>aB0laF#lGDsK^@p2Rbz<-zn$iArPv;n5O6 zuRhN5Cpm@B`jaCW$&wTMS`^uhau;uIT-2T^Dqc1BYK3@m5fpK`G*|{02J<||ulpA& zD|@EP(6@R1FD^ZQz+#Ur20kac>xJn@;wTQ8g6eZYJDRk}&4uQ|Ut{us%?*jL;*VNT$nM^svI(e5 zufKGS)8dUYocy>N=Zn&?Pb2C}y0+0Di=xK9edWJ_Iuf`Wi=Q5Wo%O_(!j) zmw_K-3k8paE^GQ$Xk)g1tv-Fjc9wQ;F=tzTV7XnpyR(4!rQb6H>!J5{GLUmL5QPyP zPr`VN-5|;8EhqC7(Z9;*Wr>$S2U<8srvDSgzMnaDD0*wgf{!q`IRb85HDkF9D~7XW z?KdQ%rPP@_R2SgzdWZ7Ldn3k80nxQmANKrL%zU!&20b}S33xV{DPeS7V6B+RX0{gr zcS1@sulz^y@7=YyWC$odVf8=5p9wQB0yk&1S?rbQCzo>^t~tdtk;}}$jsE$n=?$*b&Ub;RTkz{BX`6{Y{e=uaT z_DQ~Pw-j@VYy<%i7WJ#5R*gr_UhzM@H9m4EQG#Q#zWF5tK4AQeyyPZRqi$s3%R{5h z?aUUN;rI&6sx&6PIc)b*96IecJ#km6@!UxWqy+51Li@?Q!69x}JerLJHiNS0_x zjM&ji@NOv1gh31LZj-lRDs_RFEHia%xW1?e4YR<#G3|h3B z#@;2Qqmr%0<*U0E)!qh@Tq$!~Hv-mP88M~;WE=bf zt=IKnKQ`h{j@Bq3E}2fWz&NC73d_kXnF5ZFez|y4Mkvz^E>;+{Dw0gT*Xg_AxfbQ& zY4XynRSZXcGnX(jR}58O0vFK->?d&tw=*#_^~%gc#(J+1}S^U5UdenlSEKxZPzqx`4)+=g|a9RFO*M0xBFHx;= z5pBHx3naX6IX$AU!M8_Ng7-N~_h93hrpyKB=lh+_adn4L*BEI?Aquet>G>Em6M`}l zR@9|$IZZkG)La5A*#-ptWolOX<`c9hPObpz<4gPn7^<&0rs)1x^1DU{0CV$g-@tpt zkQgF;VCcmZ`p5ExeP-&;V^HS$JyA=K>IttK`5_P(+Bl?rcly+*7)RgFY-}gp_cZkQ zV-Z2haCQ@_uPN>D=dw%}e)H(vv&;s%SS`YrJ^S6UbNWmZOCF5h>ec5485oayPz*wn zH3L3!S;yfC$kd&rI6LyiD^K{yiwz+=yYzXvU&b<^1CetA!f^21MXPb&kUZ+iC_wF? zbF9SxJrF7EY+7L>&egGY0qc z@db59!1p@he75L%XyQA1-wlesq5)8}QssZ4pLp2eA4p+miJ zfAjyK8#;Wjk5gP=JoOmAD@zAY2sPWEWLv|oY3Q>Mx5USxR|NzY%c6N0*|N{D!8qfZVGQWJzeo!F9LhkCo~k& z`_udWamx%F>+iZ-@El>cPn!nKyLGo4Fg{nY#U0a0c<8lB!>5?VzVYN~Y3BB0UCV$r zEmSMJ`K8i!kPb5bS{oeF8&`s<&<;2h11RbQmIrzk~>=^IVB{y z<+7rzTr)Au=17s;D!H>I)yOTm4x5A_wvo9FTWrj2#%5-lZ9l(1V$YuE^M1cyFTQrr zU*A#q*^Ljd`hNc+%jUN;!!zy}B}k9cdVB4H{^!TrPQ=Qqlb9dL=TiZ^tA_iq!AKUN zJ+vKVWHoc0Kzr0aR=)E@^yaBIimp?~wc}fRcGifCDN2mPFD=PWuNkKg?0QJe*pA=K z0uw^Tzf}1K;CGdf8(1N00q)an!16|tnot{U&D!%XmOW-QZ!UerTAlVTR{ulr7AVQJ zggx#YGmww~ghx$~*bqIJL+^X|hiSu`7eugIP*Z%XaVspfFPHqZg$*5i*MPZ4cck&U z3K-jGmZ-#L(G%T>dnshiQ(^;wA*U+Uq*_U#QS`55_DrTxpp8>)&9c1{TMXNzL1iu3 z_}!c%3*yC6Egmkd_C}i$=AzxWLZEg$LJ?&kP4L+X&JYc~GCqEuvs#grOVd4J13N5S zIsLm-P5AuVCi4b!iq6(E>&*he1!$3|C~Tsi3BnWdLFZFC`rZ`HwF{#gUG!Ru3rpf! z4zEl8sg>Vme~|e2OSKFUmM&;j8Ef72`}y$NE_g^g$rA>!PT9Ie*xsyLm@!K=NS_$g zPIp-^hRj!NtAyj#H)U|AYBx3ch1ASMVcmLv!8&b~`cpeAxp7Cgq=>tvA27&=IL>)f zF(gR+#J+b^H0%13p*Z=~ugcHclFs0ovh2{BAaD4h=o{O>EINbxuZEx`;7rXV0%abb zHT4ql73-f$3otGwe=ZM;{=xQH`nVB3IoE=J**Oy<*7Um+sl(|Xan=%S&%y%OtG1Kx zj1q<}lHZ&{9+r{`VQ*;P)}kYj;fjmyxkc22u$VlT9E>|F zn6bTL2OCS#Ue7)G-y=QB&5&y2&*jusBplw1#>cFwJ zu}>z^ub}yz%bHOL=KWwfX>EVgE8SjjHh;WZkA;Q#?^zjF#+_YOJ2j?;t4)o7_JTGc z+1SQ=*FzE8=e1*;b|A})&(Qq!P?T!2#RYFKr8eHAK@^2L;fpreDDErM)3Iyp$_J!l z`}UnXQ0gi;9jGveSnvvw_Zro69&W`Wf%r1AH-=>ezPIIX)$3da$hBx*%2J)D=$ZUR07AJ zA*wUddyk+PKUZ0W%RaLi9oDIf9pwIGo3%Ro@k{kTJ;mN?hCbj#;MCx-1{v=VRc9ISs2`#mUF)!f3 zNx#)em#Vt;_;KA4Z~NQ3tR3|V^3#`S8{@fjUq;uOiocZ?@mm03zRcKuwv_qu1QXPT9U>78TCWVsAmceNVs3mH*}W+LmGT2+4> zkd#kf_6sD1y3&H!-_NC=+151Qv#2%I<7br@XOk+P6tL2DQgS~>6IXn8AxHFYFb!*$RMK{E&KI(WUzdf;UGvL@*UkyRFWH&yikSGH^a&gK(l!hvV5Wiza; zgwKq&PpCGnujXw_*E;+83E8y=;Nw3!nJ0k38OEXBa^Bw%e~OQ?I}b2dZUCZR!knr{ z4w!6Qz`@K<)gEj(9Z}TaIB7Sa)AK)cT#v;O)>$T;LiG$_!1I!K>5QkgcY_vEI5`7z zu-&qak)OfzL$smQJ6K$EX_ftG7MS!;EL%B|$azY*=EDU;b#`2*bocOsf@YuJd>7H5 zT1`Cy)sgx-r{n9dn*H4)e&RCnZFW0-M2tUPo@lbwoSC3{&sH9b>xzNnQz_-Pt<5lC ze$TJI$&LF=#|GSd#pkp`JXiAVetTD5xbUUZ?4r(Qd2go%M1^cuBP=qM0ATiSffrz* zjt!q;V9dE+_Ra(y(X=xduB!IV49pOps}0~Wdv_J!MeV(09zQfzb?o~c(1o18#6IHRk!tqJZ zjH7I2?&Fa+I`Gqm=(ye6L>05+%mWDr_*<(15#`dhAJt9Z){U4AZ%w-6FH=JF?vE9~f+ok-U3Lf|dc{mLe}JO36{_}~q3epdimHHRXHg|Cjc7u~;NJ$_PuU9hNh zG!&Qa?kJF58#{oq4W*T6x{mY;UsjddoL#Tp_%%ub0K$l8kPU}+o@v5-_;$_24y8U$ zwdYsq*j6$k*rlj}Oj~q0w)(MY@?c{U4%dS&9ZqGvHudR5eK>FuS}A{dH4|g>yVbAK z9Z;QMT5JJIFpTJJyWt|V>c zlY0vd+8By^F>Vlky1=Xk`rDR+n7gBI>>Qv`R*Q~jxmcPVr=FpV=+XoHv+eb*V4xEHX`lI@|gp)Su#wl1J{GLQkoQIaM(xz3tXn4+647gih2Oi`;{5k+NXe< zLfiQ6D1-`zE>G&Q$KvGI+l8K^M(&YymFb$~eQ5eHl@j~jCGCEg0gZVud1dxqvr~v* z(fVKck6BK~lOuOjHW^#8@$A>A&$Q3+jtV===OZ4quUNU!PUm;76XFRL_f6*+oEj?A zzc;3GK|tl7O(w7Y&_`C_<<`EYHlz2Q8%c2*-t_YiYIENVZQihP&5#WZqv9~xxdlah z^I8QO7SDdO{1G1NL4QL6BVv_;Y(Nu^)((=yi3<=&qOv|yp~Ssn{dGK3^|1e|D3F?4 zMRjKZKO{vwTNwpW@u@r(epR^a>J3az4~T{b zxcol1bTjs_(;X@9=gh-%QN8(3`yM0jYY+Y>?>~OMdg&$Dl8}23`5lYJeCkti!WWY5 z`|iJn-Db$7N6bVpw`gxXZp!CTU)XB)#rNRk)&(Ji-ps=7mEpL2qu?vyD1EVJsJ2XxitG@sP#q?Qw7s%#UM9oLCaH zk}sZ$NvSMFC%@c$i})YDx7_wEDXzk_V(f53Dp5Hfo>TZ<>tpya^8~_& zP3ceo(ZokLxju_wg02|lrJk{>lZa-~L%zjEg*8y#0)H@vkuZhA%CScuKd(_D4ICIWsYMvLAh1N@|u{0GDX zv7BQFH>C%NT$4H>ZR5>q;;<)A18pwD%D4rxzzbb6AGVx-+?D}*yOQ@^l<@S!m>HF!hDuT2Z zHDC9Hfa-db8|Hd8M-?cwGI2jK<`;NgtgNU;P&I%CSa$)b_bjs!qFXv>k0;x zVY`4+-6)4u)9^Hb5<1Q@=zXYZpU&L5GQT2QY=n|>!B%-H%07PN6R^0k#*`Ph;zMUr zrz*7Ll#E>h&GNOh(QU})5kV7ImOMXJ*?9XS914A6gp z&*Ae&^8S{)KTehWNWJTrjV?7|?Z~yixIpyk%$1v#p?K6AQjKQLwkKN>Ks-N{>m668 zGN1vHk$Gz~+O0z0e=Z^M<;m`k1fBQy`;@Y3s!U9NMppXulfBogX7_HR%wn?rE^BhmH=ST>!QZoAlJ>Itm;2Ky@^sjO1j{x$wr|8aNLG|RZo~;A zMQajo90C4>^6|E0I~9ZP9b+t(^W^ql*dK50FO2G#1{~<{QTmqBR?TOHd7*Jx_Sy$o9{wT}15-xB;)cuCx;2~8*6=3+ONA9?K@ zchkNXYWP)8G}{7ggAGlqG@CgqF9st6VLQWf#cZ2cAKina?Xh^Z}7|Gkgg z25J2D(a|oWIQ&QDXm`<)j}>k&=?bnKcmFL@Yj`YjHkyu^gr3ER^of7f%)9YDo0?=p zM%_NtZYCHkkiz#;L&15fI)=7v?rT(RpFs7{d7Vp>#B+m|Pj*>1Gmh<8)<=s_s7C0j zLwj5su_(N8`&J!nyr#<^zcuTH~`MuTGaSaB@Czb|Zb z99%9GD`*)P4n#J0XHO{nr!vlIep}1{}n!R!#+RRu)ddR%lhAWyYWR(u>LPz1%M@-!UY= z4B>hwVRX2EtQq>Q4uBn7doa8?`cNP8*44_6J#`G3jew%1cNDN)iW8(}tgdzKNL56m z8CI9y9MM;s_|T2_uX%1?+2hbjV z8jIJD+U+G-;Vlz(!iF$UHcZ7HL_xa1pR1o`>ulQWkB{9O(7^W8NSpWvwlb`}IzV}5 z8U~15HrhmO^PK_BE`@`jPFdc1+Qu;pe?5reQhD_yP>mt+KGFC?&B9k~LqcMlSssb@ zFp7O2cT3A7(nhNB(qqFS68>1vDmKOq4Sbb#m)bD<<#nMQRyY} z>zgM@RBGnb8&y90ZLYstpECIVokI0=?L4(lzE1HNo!|>`tOavrKa`^RzzTXd3DMgV zL&~>=b;CbHZM1@%b%b8}hBpt|gz}RcDj8s7n63Al^5AUyQYW=cHzh zbOJYTcn%~K`GxhJw3t2Tykk6PjnB0YS#{46+#ZBA*u$chQ7CaLwD0~hnU?YWuL_U1 zcT0|KpE9?FwvkTnJr+OV@iNjutqQK}UD&9|u>CU8#AMgojY~VsZdE@u96e?NCo3j> z4c{1lHyk=;A=s7Z-C_kLPFSa@q%0~4Y*<(3+g-+@leGX0wNP_2&LF`&uT5v;yfWRB zqH{ol7>C)5TZovyV||vF zZ%_K;pMeVzf%xqrwDGFG@|^Hud6BlAV_n{EM=wb|-&2wPV?y~aYHe5X9zp zEjOE9P3G%`+#sxVQig*|4{4EV!SJ>_h+zd|f4{@|H`VKqCN>aOYfC zJJkV$M-oMctyh)~p<^oRzx1`N``g<|rrn|d`Q?Yf$q1vK0+3(ZN>93cY%*zr_n4tn zmakEsxH>rrO;mqvxq4juJ(fgYiB)OO5MGY12O!bCXQrrf5MYlJ(<4n`rX~&A+h9Jc zf4iqBE(IzJ-$=8*&RTO8X)C=S20mTC*>y_@y=W=6GbRE@0`vPm;;*rv84|@0+HzE% zaEnu?)CG4>Zt~yO>EcVtspWm%cw z-=`Tqz9IjE`7#{j!wukoF4@*N9d1s;F#_>vU#7zSy0SwSe(6er06!4>A2a4(uzahz zVj$CZgHmg!Zi^bXV}Vv>;*KFcey;i{PH}hVO}k*r1m%@~M=w|9Zl!sl+*}Ts^BxMQ zkQoNQUoS#`^JQ%wuX%6Njre3|OITPKn-ypUEtk2lEWSO4p+gr521zH!w$osysxDBx z=c6H;@gEarX%kt(Ug9K{jgSFlU(3GrQV^V zTpf0vw;s1r*P4UNl+nDF^-ew~I2J#b7EjXr!znP@PcC53EB+U#mMHG0ZVWBY zx-F@AdSqH3E;tF|%o}C@w)x&Ly*c{mw$6gaM^Lu#xC!$wFG2L)aw#H?dIr&GkBf0N z?KP?jy*k~t&C@2~<3#2w|1($O_?KG!ZS@g=@-Q;|MaT7>G-|&d{I7wP|BZmdpruxr zl^UQgFCI!LZ}8~$HeS(=Te}zB+#*}5+JVJdyFiV5ia_H!25%cZr|i8y>3{t>vSvxy zKYvudHZ+T$0f-cyYGwe=AK)E=7?N*mCCI%jCeJN)kN5BgBgXPzN~K@J#*{z+s(tX- zkxdyr!K=CpFWG&%qw$-NjEz~9fxkU=+ufR^Bv(0VA~tY93EaS7X!NjE6dq@M^J%L- z<7j_;mVawk%qQ7_a{yF&HrPLe{&@aYc|-)RhsA1;zRXm_Bn@N{F%uh+G34|0a6-JH z4qy1hejdP1>26EzDg;+fpV$mr9{y^ybt$ws#>l_OXB(tc+g}MVUFe^Ty~EloFfvBU zXxz#0<2hP!_Ar`};Wg#uBumo;`i&y(<|=*S5itucwXy_teA3kZGU3yJZgfG(OZtT<%wxbTszGmUNh9PO~z1VCn zXY}_2BSrl_<35{<1N_YtjSb6gHtYu!Tpc-I@8&;t-2r;N{gLJY!A0Yh-pBiMVv+|2 zzl3MxdBX7kW^ig0b22|j+Ih__LOEc4gQ0N*3Yfn%*z@rGs+AwXVtp^zwsIK2&r!ln zvt1^O#p{E!pUrYh<4%hccqtoC+d4;YE*&goJ0Ks(RZdH;YjG`CImbi)ZozTh4 z*FZ?h^i#1eb@5%)kobUg`DWp*!q-3$ESd7#lWq7kJf zrxIEj9AJ;iD&B1&}d&r`0|BxRZyA`rM*k}m5gJ?aGd<@+DYR}@auYYRofK%Q1 z>-N82omn#yymwjg-y{?por>RWaG~Epi#z&I1zoc20E+9OMB=T==LnOQVe5uOzoccA z<-O=*Y#FV9q8spUxI_9kapF6NLckZ8$0~(Q1AAKM9=QtyQH{Oj7eD*nHqFuwX6~-O zQ~VF;XzqEmTWwE%NMrR_4GsUP2_S{U>yRjASV9Z8du#1=?nAcDf*dO^->lijVK)G>WjEXISU;jh9SUSsq?AVVlJJBXaSw9))w}S zdXQX0U)+tLFLrZL5rKmfjH^oi_h+Xpk;}Jb&n;TwzlZnDyqSCyH??{+>U*eZ0u$fI9W;fziH4fwB%0=TPOkD#;$G}KGaKhm zo;T`sa&)*&eKlcgcP}|Ev(oD@@pp6xr#`c`z7)P??i*a5F+jBWK}qzIV^MB zgNl^6<%)Damy(i-G}fux;Z}?sE6Q;?HA-Qjq6{7ytt=@mqy2O)IYbm*@L!6e?loR4 za{l(nPM(f+hQS{dW&s^V@5JWaD`zinYQrkuRS3P%n(E5xK*0$K%sbGq@-II?CR z=C+zLnKhG(_Q++BQ-wO<2e-0Rn!-j4@7h=8hpT z`AgqV=CW54GQWUrrtDTKl5E)ZXNVVgnb4IpK`!Zg(iZbBm-rBIs;&SW90AKIQgdS6 zLP$>Hv%*fg*ABClmpik!G&T^qHTHlEp@+ZO#{GuV#P0_siI{r#dm{r430c6-q#038 zG{Wz;_$npq?B+*-@+L5Wk{@mnlqz z=akQQ)GtD(PG0=aeDx|*gXGN}fxT%43I;zYj(@_DyKR;1&aj2D*FyFK`gB}*MUzDePjhsL_h8^=A3>|HcaGrXJr~S$ z($J*Ql<-tN#*%mo#yq>Xq|pmeZu(huZm_O>CN4e*5@huIQ){znUnWTyDQwaTr{)`c zLm;Z)3NeE=<1d`sY(kfhZ2j+MbdM!%_V;CC5{9|++m>D*i8*mSwENP=jg5Kzh7zpw zz+vf}46OdvzXglc$J=)u%s)?#T!{gluMqwXzEoT`J=4f;0vB!H2SRz3x0>|8S3r^U zTpvP~!=(xmR&1E0ep39LfVw38$8>DR z)nj&zeK=bBI>K4ugkzMJdw7`6CVZf0V&r*Y`@FYGT^I%X^8moQA~h=0lb+auKb~RE z+mk9BJC$R6idF;EOrH8;NxEfSyr=-*#%-%XK;5IIQ$`}=`OvpUW<4O+_K(w%z>$el zBpop@-B32zXLZ2S7oC^H=QI!+2BJe|5l^gBjwb*TV z!&h4HDBik{;5DsG}*&$VNx?a zGAVwwrd-dAZ9rZ7M$Ou;Ssa#g6u(o0U_th{9=b{(AEaGkrQTH(n_M&ej4M{{&{plz zcPzo*a;TUw;b?~$gTz)mD1Nc7)?@KJbp4vwij}!B1<0{A5nK_ZcxFV9SL@+8MsVO> z+fMO9xR_mN%U4`|U5A#xqgN`Z_;P50Ks%k*{1fAfP{bxlYCB%+1EWeH(Q6-s*=&p!BhF5R@FGP)Z4Z3Cb^|h)|#Pg)eo^$SlE4+`$n+hiksdE4_ydq}b zM!H*R{>b)Og{RyMml{7!o7D6{jT)LMH|P-5RBdF9LRU#hY)zb`{W_C59v8a}sx3+O zNQu5Ts^GwR$T`CD{x17UA*G7ZlQ&%Ewp%Owp+Q~^fa$sRI8oSp#FBp}uF|QQYqd?*-Cp=t%*a$~b|j74VoOoLM;$Wgv`I{ZtI9%>mL7OqhDp~p%V zi_j6&8B4Ofzpg73*34GUYRy<|TrXbNH7k>LCZNX^3GbzFu1rTWUCY!*@G_M>U6H(j zug}UmjM4#KA^g@XtovemuSrB3gZ+mI$RfSZG=D`?w?g4f84om7QBTkrH;63>0b}J`sQ7LYYy}pOz_F}ob%A79a?l1Jx4|VD3Y{M{Sok_c^Odac>ljSR@On5Mt&5p#_>cN*R>b&brO>Ao+P~gO-@k6Nm9J;= ze!Anj!y#g6YH?}Q*L~H~3=fNSE3w=Sr6qqSOM%+b!?eVFp9o2KXzKcdktYhXJ8juo zowy=!`%HZl=@sk@E@ll-MWuPEfBgyTnB1am7~Rpu@eC^rji51omaafV?4v0`WmK5m zx-QnPzWkHu2WZ*d1d|yB$d}z_On9l=IWFdr{^<9n%vuHweqDN`FT)MW7=P`B8eKUO zJMhLjhzYqfZ01+742I7uyufBnPBsJCU#p-tVR8Ab4x*gG`AXu8M zRBOK(;-gfwMcC_n=skYpwyb$PZF{5uYzr46*;)kc_ez4puy0HB-gdJQ)z+!{=nW`H~9+-DH-sHY|Jb0CSuq;=tp%8zW{6ejcfHQzUGBNiA zMx4uVgrj3+6|$4ba|jnZec3-84~_*(h=Jb!vdRs^!_xZFj>CH&O||x&#NsPzRF}$f zxLdU3@TaNh1t~ipojm#`!X|j+MboY@wc%1&l(|9{APEPf(>zZCVjH+ruIFS_bZGA< z4+JQ~z}j$ZWnTfUB1v1i>)KMp>K8>N#JFh8Picc`4$eTx+N}KL@h`E0>syjt94~=$ zd_Nolaaduac`c>(tyHFE085K^J}@r3=X+(MH5k2Q*TN#nj-F$?6Tx?YXuj_{HwdRT zeW~pRU|p0?(3haY(eyih7G9e%7v=NXf>Mj3CsSRkHZM{uqeCw^&LPrjlOIis*vpw-7VJ;* zPhhL%>>-k-U;ff{SuHmFvT06@7P)_Kc;7vBTM$|su<4qL;HBoajp&A5)*@Ilw?`2P z#-uLA5&tY4AneK1jCt^8v1f(<&ah*i^Nf5c-{!}(Hv%M4#5|xt1OJyEl%KM7!ncH< z;{B)kN(qhaNB3=q87C!4)zV$2v~i&63SHkZ7&Z7_jgRilG2$JaQztiXlhBPp@3cp% z8zW0Iu3LYe=*C_=VH~mqLB+|pz)+F9U5Y$w0!*EFU-%LcZ2pQ*dyPUzDKNpM)qh7S znKP$#?#15tW_cG$22PvLu8_0h5jKAOQu;ov)$x)M(Ca*8fH#{hM15Z6|GaKu`5a$m z{k~?Pxb?;kF)08CyNxyt^=)I45B^MX;v{*6vnWpUx0UOjsVN$!-|a4$Z@sf$%$SPhtZ1_m2P=~)T8cui%haiC$Zgmtikf&cF>{~F zqz7d_%n7**hoN!1Fb0%{S3@%yP|}d9$d$Y6_gluj1y*yH!F%q@Pnz@u=U`9sWA^Y( zbuS2}abQ=L-D;Zqq((d0V%>A2{!ooOs*nR`$sd7UQ@A2N zyWIqBng|ZKHQ;x_Ji)c<3%5;y^UHohq$}!;d*+S}`N_YvuXO?Z87LjDI1=77f(xka zhe^A`^j7ut)y~DH$Tqgu5$>AMI^Sqks^NDc*5rB%}2==T(F{XM*ujb?i{sE78p2NXi2G)ZWvr zP8naNfV4AqQq=ZKYY{co>G$kNMOmq@zZa!|@7MZ8XJH`dJ;F)-UkOz$ZOA=sUIQ%8 zJEO2;1gJe!C(;H}kursp?wkWQFp%O{_&>}dY|6i*Vd20Hf3q2QO~iM z&Y16e%19j`%;#dWLJJMJsrA>*@#}$;an*I0qD_$@~P)tUNC^&fL_2locyzD|}{>}041qA_m7#@oFZAy0&3+XGqyJ-Nrdnt zfg&k22HU6cs*+%UpbtGhBY|@hoLGMJ(|Jvv-ne#I;CbU{%`&hVPCA;cxE=_9b34OdGj?czytMsXAbMd#!h3m69Tv-#Uk$dHyUJcH0qSMHQ&?9ygSbsaQ*vIEHR?FB2 z9z1hAx4Czu^UP0@HD$_HBTOHD9gF4%dvgjIQEI8KsFVWnKKurE!Kt=;?|0Nxdkyuk zs!Df->xd)Jrm(_v-=7SW8$HDS!oJ z2iXi7_+lKTX-FHt|6Xz3*b0#X8=|~*TFZ{*ve`7M*u!nLpoO~5C#XiJk@DTE6yslN z_b$Wyn`YEPBlG%OIgCn!rDB$PE|m}`)Qt*0Pu=Tv)4X$_O_R4Mw2!_5cjU!hF)&Sf z92Irpb9}eky`Rp+M+Ecdh1hrysX-Cg7(wuiY14`rjWE!=?ORbbd0I*$X|)^FycbaH zrq%U$u1-gWBXHK>>>Ai|#M$`W;=qxx>G;@_>j^kb>s6vrPR9B|p=ro*!Rdxmel=sT zv`q-ZGB!kf+-_LSh3}^l4T1ljZ}0e!O1V*EBHqhJ2C|G(6FmN9z4nz2{FBB1k~x(N zjw}OWC%iZYR;dIX{lGs*DrSul@5lZta513SB1os$=h!q{CiafIjZ=JDq2u~S7FP~@ zp*xf4_p;l_6LVsmZW#{>zr(F!4FK^d<4h4GER1f*`Iqq@MWbq>siNpSzp9^PEFIc} zyQo>)H?7XvEsT`o)_#s0PPWm1lFPM@M&-+Hm9e68CoO)tJa9;JkHF;X>?kT+L`{X< z<3ulpAe8s2F?67C(XVMu0dnz$Yb<>EH2X5ClxnFXuUek-cG@$;qUuyE+T?xa^n2iFUc{t8oK;nu4 zAYgO|T2Tnuh8IkBVWfos%J5HXuaUYE3>O)C3jQ4hbrZ8`1sF%IOiSi-z-fqT2*?Q@ zP&d7GBj!g5L?sPvVIH^SKCK``^u0LHuH~l!WWLU2*YByxL(dzN(>#UgKaGrfV*93p zmjBbIJk)}*dRCZ_WPP#lA#Oa+=++eLY_hGldAIuz+IG^FmqC#I&Z~-#>p%DTKCu|E za7!jM>dln0KdS>C8ug-J&``9K?Q#Fhd{-E>EQi*YObje~Fyt#x|MGsG4lTv<={~+` z3Hm_x1^HQ#Nu&}6yk)wsW1iHbB?}T9Oa|lT!)}9gi6?=~QT_lP1;L;- zzw^LUcy3U6n-avoK`k*{REoH!;JdD2)yESp<;ufN%)sJK%iojTW}}weGQ)%ZFEKa^ zuUcnN8>y)7cAaLg5wgyaCFtur5MR$8rvX7A^BY}WHlzN!X@(N9RZO@$(I9en12{Ll zSRkA2o?x(sU{@1dwtEYh$E80kuOOtFX_Ppj8>K;bG}4Yb>8tl%i9QUwoVIr_hi@Wy zes|IfNPFVYIa_LWXh4iNdHN~cnlfzK_;3tA>P^0W)7J4d`;y$Ss`RQ>#^ts+2@aXY zXv_4Br`n}uN+Rb~7E8Z9kXt4d_>{(nD77UJ1%LYgM>C21ssn_n(%#$kHL&rIMtZ(- ziO4_`GFM^fbgz+bS7>37RZj-?A!%&entMK@&1nKEY?x|qj|rV)CtE3aZya3t`o-m~ zQynw(JBu*$*J3z)PM{wn9Wk=_0*s_w4LGSO(7gCr2L9wunsyeoEZ3EqzFtmeJRZte;XCh=YIg`4t&1^R{%_WqmnO_@fv_(2uyK< zSJmq_Ir9qvSNbzEcAyJ59s0~f^9u<@*hX!I2#5oAlTtI_7IK}`SYKzie`CJ#ef~72 zwJ6cGkRj>p?w1LMZV4L4t?qw z6mT$QS6}ii?dd7Yr`Kv->(oZvg-3FOA+S_R*!{Mh`BW+rnduM6LjG6Ll8z|B?(?2L z1J>5eXOJ9u2|qEb_32%Ooc+eh%dY66SN?^PH9h4SEu{1f$}eE~9k!X*P2Lfm{2seT zTH8Xu@D9AxWRg>G$=rRL`$ptI%Fx{`FRtmgdPS_ez1$>nT=)<;RCjl5nSU@hB^&4a zKe|@Cqdff$?>HDvB88)o+bZVr_yZfc7Yuf*8E9e3a(S~~m&PbxHNwjf&znE=Ynl{N zV2)p|;jqiqnZDS4Bb~32L_Vtha_2jC4Td~0jPa&Th%Kyj(Fi*L{5IHX?q%PemPENh z$m-4|EYsIAEEv2P6EX3KCoKRa%~u3i_1c6%T(Z1@V!b)F^-oJi&~7VEJ#$@Y`AvJY z6j$UpJ7HQIMp$0B0WD_uD){I1FsTr57@a@ddfg#Hs-)2Apw(WJsSw+Jr2Up4cZ7GE>IQz;uh`BJaX^X0`94sIhzGG8MZN)q>cFfZWQdEB4cda75NrNfPZC=s zxyT;jp-*vsG95@LO*6st0Dt@&U}NWacxQqVQ9($&zgLDxfeh;7GKu zmuYY91@J?~$q?kj5O^!-cbd`ifNHPIa8sZVE`Ae;G!ZB)T^;GH<><|Lj;{2vV2T0S zz$d*0cWQR(zcnpq8(fx>2Ye!G7E>2gpFL!pa;Lu@%Yz)Td@IGK%5{CJGdon}y!yK3 zcC80*{897fd6PiI9?9B(iXF^qZa=6tf9k@P+oY}cq(!{WOFFX2U)5?VE|&;G1CCu)HZJ z-nkA0e-BfZX|(>+Uklf?uAWi#7>F$SjK$71&SpN>eJteCL40}WNPtE!K zFS#jFgTTHwPblEW%>6E(WOs3~76s~$Mt8%x}QFi-A5dg=$6B0glkFiG}yr)N13D`UM) zMb8O${I$pn`wn$F=-2i?xdtbinPcI|nFA51BmDLWnw@wd67;g2y#75aXvL~QZbwEf z;yN^WgLve}fQ<`DXh7@$U_{-UYEzsdc{rE&|A@z3>vLJ)rGfsVe3wb9URY_5Mhuh_ z+ZD>#)xOkU11;Y=Oe+cecOfWr>L!Y41avVf`u&_Veq|mN1Uws0uh{3@lSjs1;~m_Z z(}hu}*Z}7l-JYT|Uvc4 z_0|V+`6*}G2Sg4tj}|T6`8=i{Ho6jtR;v7~WVdbn6cS`J1-3^ z8-3o^z@DOLI?ez2bmq0LQwmNd@M45GEvj{bGpj|39W3Pjzz>NPze{i26s)4==v zK#-x4%RhStftQdioU0UUX=oS`@WC^!y&dyxw$hEy^+PK?pCX{v+LB%0-{uHVs0KHA8to#DQ+B^^-?+jY>wL7M z`S8=AYXtsDR_^t@?Inaz`d5FV-d9260kuZ#M~Xpr#Q%<*unv@lC@j`aF!iH^5?@WI zYsJ0Q&O)%Bb^CmBI%M}oD3T-kJ)$cW^W5_McIdTlBXEr6JUv6@v&=QEFqRicw4rIg3RNSXIIjNNXTokp!U|Qf4>u5F6 z8kM9;*IZ@gG~d5XJK^Xe?_lkQdq5%193 zR^~O}(M*dS>^#xC$69cdWkkuh<_QLhZ+oew)fIv)=d408$2oiu{F}ECrUoBXB*P|bSD!Bf+=9Aad#1UUBijGG<^^dz)R0yrC3gPWXYqfYZh#k?= z$NcBWuMo{AH9^5MGt*a1V>#0U$d3y`xh9K4j^!n%brT?G*$lewX{eHzn#XbzR(PKq{t{%dWWJ z#ouC*E&D@!=%9i9@h!bWk?YsxCL6?EpVcvJLJ|n_lHnH%Dv+Lt50cV_`m7_+4;!i4 zn~lPc&q~S1CMAQ(+iPvglT-NK5V=CVO?;js*r>e+)%`Yv~vIDGxky${Sf@YuOjvWXbm7x|BZz)Ms~-lu7mC zHbz-W?*CDACVoj~ZyRrF%9$y3THUpNme#murlerylvAcwrerRdPGat2ii$wxq?wwQ z<&I=l?wXMcB9OVSZp>w7WuqbZO2Ke3!3gt*$=--MXHi#$YG(;`YOFmW&4eMZQ|Q9fThwlcD0jed3cV)xP9%Zr{}kA_@Zexh3;?C_EWsv$4zO^W8UU=U}*sd%L45L|^L1Mmf)k zt0+jJtB3XcNk1?bpu}+qi@)3aa3cXpE6U6ahz`9?sfiq=q0RhP>Y$m}85HygPAl+J zn`OFsspl~)pmY75!Xr?=B#3!MdH!i{JZ9c$)-Y9JGIo}9Lpb1(#x|oYjJ#|WIs?r8 zmf;SdOv#cN79Rk)z~SrCekI!k8m_yy68Zo-vhYU>p4}AH$ijVidfj%mxoVM$1K7KL z3HJ`%>zF~-7d&-@@DS-+$}=wcFZAk9Ztasp-4@z=iTGU>nGxBUA0hlx*-cD=U_N8i zY&IvWVAcEOhY9kKW0=`lUfW2}XJk-gT8;5#rJC(u1GglVu1fjd_u+*ps6P{e%8`g_ z+o{QJUbN_Du&6w`valsMnQMs=F);#UJ=xk!C8^lyNtkuKDC@nlRB}QjWJo1XahQp0ms;5^j9(`AWT^X}CD)v#i-F6WUsRxCL@bOGZ>?-9&c9Ff@?}i7$<&J z7ebkQU}zVT)Z__Oy4L?^qRyMcCC1l7pRt-@O3S|#XZ<0i!xj;2ZL`h-j{TmyhYa3T zX`tPL$5!d~3(vhF&g;EAI9$#h@jVm5twM*f)cbwX(lvJ^(E_)fy>X?@eR{UeH^|RB zDe-U*U2fw({)hwRPBQT>Il5_bMg-!3qV z-afBgjgQ{cxt(y2*#|f4Ekg~hDqN+eXfi-_7opZ>6@*(k9U&Z8xqlNGw)D!du&Ab~ zIi&w@dH&gG5__e2{%+hA<78gh0@ZuHuydvOtX%)UaMyoVp22PNo$G$SZYyUv|1+sq z&s;~jA*6$mZ1 zuf#M)=ZE1)`Ez=wjUChfJ0exq_P}plyAHT=(gIrFczaEv0U6Idyc@)Zsf^7Jv1}~s zPCEo|o>aK5lc-N|FuEUR2-rs<`Tic)$e$3bxWplxyA`zYN~6eHh;wUmC)DI8)l_lnCQSt zM$7XWr426}crytDqdiwl{Yablr%r2dMTKqOv*ULYcM~L9vG43@7<_v>k|va`Je*oz z@-K)4p(Vz=y^Os%r~bDO3ru-SxK8{ByB!BN>S9iEJ%b`%v~qgYmcOzcu_36hqUEBR z^$q^W4>jI7h`V``wb@|B)^*37ljq;+hUDBgRVqqq&xo|zRvWqevZca;D*4&x)*pf! zW$^kokPQ?^rS>D}JN&Keyh%@hgI)OGY2}-dy2m(YBKMB|=Pgt%lv&UYK|)3J756{9 zGs!;28wD0Mg?6|&{d*}C#m-Wi3*Q@O^>tfozQ-u~_bPHG9OYSJTx+`n@^X%2gaCT^ zGK}Z|F_EFry%7uJxNRVrzyEN)joG?s`*A>csMlmprAsSMYE=x@esAi*tOCpCAvUdkM-$#mfF zvz+mr1;2d0GiFlBT}~0rKS<@37T-#EFRPsXP&MDnb4CQ)idQt$ua-@yZ)REhA<9Xl zIOWWg6ZS6gAaPs@G{rU_4M{&8XRp+8tyo4b_v<>LB6Fsg35pj}Zqm_<)uT4UJ&_51 zu_#D2@Zb|!8i+?p5e7TARq{OAPP zz$)54aG$V2cWC;!hNNj%kwqE81#z}#c&qlw=1+B=d)ris&CoGxaMW!6lo zKph=fV;;a=x%PF^9h9|Sy66O8I&!SQn?Q5qHhB@EL@6^}Ny804OqOpZk^M9R-4Hd= zS4>ugg8t;Z-t06kyrSu{iZw2PFc;rhsS-0ML;`0AO$_u7AbU{A$ zKIIHry$wAMQ91 z<)Nf`1aU;={C_OJtfZW;utv89%Q)*zwC14C4F@N2b>V4~NVVQOkP0u_yScx84eLxr zw&g`%t@|Z!E*Z)CY}q^37ToBtAk>JVcD43HpHsYmZ<%tD9`I{2>$ytxxDxlL)51T1 zjh=->v?udQ^?2bHi!r_ys6|o+Dl(?*DSI?q)O0QwqXo-Zf{$B|{(yjEkI%A=(3a0X zmaQJ*xjHvp@@Bg^2T*8hzX>D2pltVb`++~q>Q>`>nM3xmJ4nE_BpV2>chhbx+f8ft z1)`aI2{}N#n;b16;rA|WCqzW+{alIlYx1iR`(6-y&P>7CulUi%xx4}qn`v=_Xx`>|2Kpp0pQjbY4;sN9sIYF#%oalU3+j~@ZmaomK6v7MUbA4HxY)kkmlWZNISK9 za@HF33~%Bb{M`s_RVJ$w952)wjbvcsIGz6SF2pl&9PKE5zX5IDZi%P=+Ey&7LEP!o z`+!<-F^&`sup8kMed|0>H7Uv_q+PaX=K5=D^gf&`X0_O9nuN7UJcWpUQ+@scusr?G z$oZP_XZDV`suO~M0W6qp>)EckreL|u3!axcAZ~4cVeh<$OgLa$%gJ2u<9QXbvd@Vu@x+PnY5kQmjm%-C5xkX zcK!$bpG;hS_@>I&o{(m8&EltX{;<7_LtUAIPNep%CL?vF z@7qRj>^{+?6YV4Sna98lzBHJ`h>~@u;c?Y$`52&MI>$AnJd=J~{~fKWH}`m0cti+u z&>nyDoU=UYA%rY>S?}z+n&#A?UQvpBTv1P_CNv{C3&am{V&11y)RDW9qE58AAc_Kb z4<0}6pNm2Rrv}!TRaY-!CZ%E#XE^;<_0wq}pG_T)r<#C7q>thC8}Lz^1EPPez6>HQ z&j+9X)%uEe`iWT=sJaH10dbMAztdXbL`yue|3grCPLDzsN>7MHzo(_ud`B(O?&rN*cG7 zQY5JR^f>{aso96SD;;!C6gcxjHJ$pGwA%`a&8p_RRM@DAvpmZeL3jJjF0v+C@hwLk z$ze3Dn8+?I7EmNv3-E6H>nem%J8NR2QCy$pz2aLyySp@~p9w7|fAIFBs6TcrT>Ay; zETOKQ#JhjIq7v2&RsJy?%6>C>8tDUEU_+gRvtddDMhcOgCFa>=(Tep>Iv^)-rk&X!#Yz6;)io99F6v=m1s!`Nm`T|JZKS|*JDa7PRLMtq4CrV| z-?B)(B`N5oh%aplm4y#Q2AX6O7FL@I6Hzwc`q2XX&HO_>7YLChshSUuyBlZw0wV7KLkqMG?Z$o{awwz~MPJR)5J@-A{?xQ9 zM2|w#S6nT0%NL6`%%SrF@PTl($hx|u;yVp!{?Vn*KuEMZ&N8%=6PVcJ~T4j8aJXv2*Jx{I6ii%p9=_FzIUYRUEmUc5SCY zhD5HWKztTEjRa;a_b&FNECw258JpKmd7L6|P7+mBJH<1knjL}P0R#rU75F-msr|BL zw`)af0U}cUYSbCiJ1QENX8xP>B&55#;1DmZD!7QG_?y)94aJb*?CxST`}pUw=~jM&Nm$%v;D#)qf$f&xfJxBj!XQzNclk z!m>R)Ds(_**l6CQX zgTh?lApXP66EQIFIr`Smy8-#o0h8ML3%UTI3oQ+GXY!d4>zN$w9XMvs8yxMGT7VN8 zT{NE#fEFni>P|n}J_SwIq+hyGQvCq}tC4OrS1csc2wXnvc0@;X=m~1-o zdj4&L62Y35IJ}2G*l^w0Z_qg2ysBi)bt=Jb=fNRz18{~Z$}=gCGx|BNf$r)%XvQkl z7R4QN!vN&Fprj z2J`ff&&LBs(Op1SKp=!Q+0eGtb7~zGG6?$q?%#nU6c0c4q?7>`wnUvHtJH*Rrf5%oJrwHH+ zjQL{@I(|kY2jU{)s`_>5pi*;F6Zp`1O?TeM@G68oB~18_Xk7z}>+~yB4vjEk>dA3L8m zJP9gF5}!z1{n9WElqV_F3Ku2sQj%Ts*-eZw|EM1h+K*Xg9ndWYnK*7Xgm%h`C>8Jv zNTG@MH zPeXnEeY)MiE}GjwQlS>N8s|B6!UWZA@~Y-^rw4H{NKf73$VZ2su*bt4+rq7Z;--GL z$*COirAquMrS;MHxec)-KH^qiFe0IBE-4Ln!LMc5+_LoW6Np>v7h})9vg()05H!7V z4-8sUU~XEjsYX0$iL9u9e}ZCB{a1Ef}*kMgj%?QgdwB=$IV)@T^G zh2BCQitl_BVNZW97R9*o#9a$a$!Ex311c^!L3?!J_RWRLeq0lM&3@q#}{US z=mCNE#Nkb%J)~KI?oB#eH;P#yN+_a$5y{I~hpz~@dUV=m@x@wa$9Fo+uS z-lOl_3$Z?X^Img{SS-qWJ5!@w#IVMop^sj%I3u@m(~ClHIKQ`Je@?-)BxwQc83Qlf zp`s9DZdm%p(80nd_ap$s<@8jq!r)%sD{v(!x@W(OiM2ZTxy&T$vK6}<{#rq;Pt8Y~ zZrfWxG{&Zf#BoE%(*c~AWR>pRdkMn31hduspV)^~2Dn=#pk&PfFQpy$?xgn@2 z2<+$E3D`XCS;{HO*>c2FI-^h@-7um4d0fMGdacC(el7HiC*`50kXhE7@E%xQ>yoc& zQNQfy*^A^bHRan7)oswKqScYV=wMp0)jbnGQguE1<09lGW3WDI{y6M^&b4;>`k~YD z-E$2{U1)TVH}!zPU+#lSv?VSLMGsdBh$LQYxcFBApzR|ITtqimeK*QSv>l%x0~`R9l`e-aW1IcpN-QfwEaH|ec}3Ttn6g%58Xw6SVm&m2C>(xi9XOOZGAto4zs<1EW;y$awn zImza|)Aab4m3N4c+lbE2I<#lL>kd9Hs|8sjOv>qQOz`|^07{tt?4S+pCk*a!^f2qS zJKO0?5j)ZrMpf6d4zs_$EshD!&>=GvR&35|g4NegCk+oA#2-ajMzyaPhugZKk}fm} z1pGv)D7(7QkAK#5@d)9Db}H)ro6H;u&J{=$Jqn)8bGv7k z^9ytDv_EimpT?cE?oWx~y-a!cCTNYX-C&lrDttZ_X0}fXmm-Okr80FCWX2Z7Nahqn zSF(WdBip4=cKaJYS_L<;e0}lH$c#PWHhoNotfW9~C$?Q-Q*{XR)DGL`+VA{IcWd9C zbH)kYrwIVdZ1nlS!=8r&`6c5#m#Qb4jud^1rj_ia;mBakC}Jz8qU-@FRkd;PikY3A z226uGtRE*z5yQ#tD39snWM@`?Eor-!m-*?3`{^2m|1#ipedSDe($$8;o z3rl)Sf(ZQrW?;9RDr0PxEjm8VHknHBz91pY(-q%s8-$>^rHg zhX3h9cN<@1f7k&*!z4(4KRfoWEq~U-(RY&r1)LyF0YMDMS%2)fdp!1@F5UHu0Pl(=(wu6LS!5EwfDm3-D{nAE&-d_)BPu~c%~R^kx?I75pNhf z5g5_{+6}r#d@y=dk!JhZxt+7<^mzGL)JuCYl^OfZbPB6H*K{lw;^FRdjt`(2*r_?%^my02BsDwAuFz#(N&o`SM0bX3vutv1P;3-a#-69 zFso_&J3j4`@VTsm4%WFmGiXr4ZG(KPQIn~Z>;p}C8X)zEuk1NtDmL{5mGQ?0wK}y! zL5BDs-K}lQz>U%5N%!fm1|c)$vaQqbKT1kIwZM-qzE-)SafezBI!@%=taIN!CYT%3 z(Sf=3J+|5DYf+_+|2staeo3A6x}@RxldB=rBf&RN1>;NSw_<=v{pe!s3?O0i`*K1; zP6)Z&ebaYtN)<0#Q0&@EfVp)?xqs=D6FDTA8n6m+=;Un_`fO-y!tipfKtdv!G9Csg zIE5%TB9xu&*SUv0I)v_Mx}hozz!~2!BC8)ZY}JXjSI$0sN(_T8{U;0|cpIJRP*1@zh71 zMwoWc7!Y_px_0P&y+uV-5AQWNyn|JY363QtmgF0eQ*osYpr=XE>;v_&U9>;*i5nZ) z)B9p4U|%*9&HyiJ{JLmK-)HP+x=x66UX6bbF{#~PWOYx~aXttVn}30?cWDJll|0G{ zFOyX_Vm%Ho?y(8{&1HR}8d##;1uq4mIouMwQ!7L=6#l5>>Jt#T>%pe5a0RfhbL>G# zckAi2_0*lf=u|>O2dlMMu4|*57M=*A`JE>{ambOylvB6o-qLq3KtSmdOJY6KJgA;q zp{PD`D0#3X01|Ml8t6Ijc84%hp3OTh z*)d{g`UTst5{7-31^bJ1Q|~o2k2#m8c>h?I>K?2`r-J5DvJu|A&oM_DyjQT@*W{`* z=Z<sw|}srB5eoPe3to%C=!|3GdJY^5c@k%`{J;As=dprkxk(x^zb?MJpBG5Bzrq zaa~6Y;`~kO6s2RW`(+tagLu0c9O*sxewq9j{2-u1oDbESZ{I)%C zZ;GpPt&!)^36VqxW507SixC6wg@o_6L=r|*7m!vRvxldBfgKlCcvL+@5cZR{7HH3i zSk2cK#+XhX?)x!T9z1c%mQqAxZ*z3jlX#iZj z^bi)=C95<4(sjm>mKNQ)wEuL8tZU*%cw?j7s|Zp=zeG79e1C2IXU5@jP$$k4jL51{;&oHbDhRp(1tX^2*W^M4 zjLlYYRV8X)`eYdI3?%HCljA?}W?ks7xJflJYUhoTEMABNWOI0(yN9tawy@Z{!Cfe z^u&~__a15KS_g*z9=#;jRWN=aK2TU3+4h*rfy>xLea=5MNycXW{GEk$qPz0BRuAJ( z>5dG~{*AfuNV5a@$-p|cW(J4bW~&*Px!LS-$o{?GjpUkWzw2?+j{sqtf8Bz1)<**l zk1S<}q1)<$;x+3o5<&NZFZYvCM3@~!h!W|jEdJzeAUm8!R@F>~T?mxi<2CLcR;3R@ zL`POC(vm6jXPCs?x2M1ZseeTD8Ps&$NScrOM9*#jRp4En%xvj$Nx|f;xN;Njb6R@U z=Z-g=iIJZ3Q6C0Wr5Unf6TYZneRLt>r`UMoo<8MksXYGoTUc+DGwfanB}aH(GM9S| z`*-?fiba%Iq~56MciI1R&#g@nYmry(pL(whr1`5RAS!K`N)Tj36rE-(%zi(=41fYiB;$lMv4#4e=dD_Kwb10r$BRChQuKyOFU{U&tF~( zyJ4GxSsI>xV4}YvJI&e5B7?Z%O{cX@WsF&?krV{YW zr|?ffV|j6JLG{pR%<|y~rrKY&?|7b>`tMPl5_gJr-sbhyNO?wsH9*lwwOu{{3p2eV7J0_`@^ULPw)wf!vLlBso(jbdh2KCVpGd+3C8r9XZMxQG1m~QUxySdG3d+ z2aVGcvzkgr`$*y}=*OgjpxAP+!N@t+qLhoH>6Uioo0;Wm%XKCJ(Hsg_KxU0zAxT3?wj|`(ryk|ZR#cwO zeTlPEV%*7y8L1ey{5cACZ^X3#eZh-QDXtzOE|2a(n4OKh(ow)(AzUsT-4@5aI%a7v z`P7k?Sht9D!V|Y}HIv^14S$wX&ZdAp&0}jO2}81LS_w2=5#F^x(bB;GBox|3aCK7T zM=x;l%hJZo+7@4@oHY3^R`<9`Jprzb0}ZNQ>i4HIM!&e~T6w_NgG_2X+Mf z|E$~A`UwC3+%iIS-%au!^czsk`)~S}C>gFcSJS`0u~Mia-sz+cJFLCYIlC3-S+j-Q zyx8p9Fo~SmG@6aYQ(CQu*M^rw&Yf7LZ-(l%zcnWa8i0Emk%u5Xn7;YD-1xZI0W(&m ze~99`1D|@rq)LVQJjqz746AF12ZM#bRhz|+sY3oaV5LTPsx|N1z5Fz}>s98eHuK7b zg-UNNvVVEKxF`1T6un*UW51TZ^(6%|HDaaU$L2mLLDf&F!URp@U3O$wen*;#xyl&&AnH2mjYJYeFn`C(LpR_j$W)ivQUFu z#4b)>s4CQTn^j}pnT&kL^uq5+iv43m4xq0pgy-;vgL%d!=Trq}l>@W&FW?$}8iB{6 zve3X))K)ET{Ee|da*OiJeu5Xtww{y5XUzcH!GW29ddlWT&BG&~dQ}cKCaAm^UZcmyDM=SPb$puD-0P- zYE@nXphpik1r{kF_iB#i^Y&r`)(@-Csy5pzp9Ca2ObtwDdd);r0Q&F;Z}y|UpxYwD zPzsu;-WrXd!N@@2R8X9`s_rd^YK(RoII#YjHC=H(Wd2+@Hw*5k-HIU=fuO%P+yvBF zQ2$7SSw6t%h*uPSxNr(78&&=0RrrJo z|IqNQ06{E^D0aNDk{o!$L1@K4%CTu1H>%^ig^elO$YawQG% z;u8%cG_2?)ThM=Eg+c6^@`&tE^80Z~<3?56PpFGZ$V0xx(&)KT#T;I4-B=|0ode z)W|Oa2{FX$(Gwlg-*{ZRQ972D}GrN zH*=Fj{}3uNCA)+J+@Z~V=bXv_g+$Q~+Uuqaqpf3A&Q(Q=YOgrq z48ySkz#?@8U8?vBQi?D#zkMJsIZ-&Z+#(*O8+OImYKgr>9n&kPP?mCP`Q zSryXskwfH`fQEuSO{?qf?%#_t(yc4lIn+JWs{SM~_NxYzmeT0+f_SoI_Led-o?=bk z59YSXO!fP=Q}H!Hg_(fMzC|7ySJ@=ev-tB!#)q(n(9l=#RZkt!hh^nu1fUeJ>6id4Hte z`&TM$YOg6)_}^|>=sM`?z2sW(RK5Sbo}kBlmLQf`3ROEQHgniK0R|L5+%cOT#*V}C zAM@hpGfVA;z$1ozt;hhf`ATtD(YQ4JN0r`{^demW!VDB7z7)R<@};yjyw#0SPcK}V zgecdZpr=ugUka0&r`IAAfCFtMnDZt6q957eFSN>}_`bjkX%6&lHn_l6V;Hz{-W6?j zR4*5Ieyue#rYgpbTaf0_RctK}1EG=ckMyKe)2f_>$ye41vesjY=ptU3t|cO+`W%yX z-`qKhZp;~`k*#*aP$Pq3btQw1Z-ti~!cX9b^KGaP5BywQyX7I0&M_|qx4LuMwJ@6h zKd?}Rd(~!-81=aaaitdo(thDy1%55DL6w;4@<08`{fl9!-^FKaM}^W#K_1T$_&t~M zP9Hkg12zsCKxo41R}+kqV-eO*CoUqA+Rr)|6P}KP^hIfTz)}KnEyutRa@SyccUe?-aPcXk%>- zC2VV3y==d`BWkrL!g2oPXIuO32Aw9|DKJ$vG3|v8XcH$rOc#%$A^aA>4K_lY!D?udxKiunGUgpjDz&xkB?ImaeOE#j{rn&+F?GAYjoImPgFp zstbPKEY;_XY$iA;*0diUxk%6(NuzMuCso@3Y=q z_$d`yyaVq9!(b^%#X`fkUl;m3ZxAFt*YuLj+8418uTu34TI>5s2?M?&u)56Pv-!b&|Nk#PZ#pQoy zznRPWZ|tu{Y&;35q`8Pfw+D!|!+(*`#MQPva*s*=b!lS+eQl=1cKEdb?dco{Y>zFe zU0WqU=Jy8PS;cHkTRw887_5F^Us`3?*>@b-biKd@Y?}PAv=RMR^0U&`!NfS^G%8qx zL^=oh$4mu{MI2O?kI%tKYX`nNPQZT)`IO!HkxWPcX7NlEss^s!w-$w0w$w9@kSFv5 z`$sH{7f6ory_(nRkXH0%0TbR@tVOQjNPMbWg;M4(b*#IaMGdT9ovI~qIv&@g?YjQU zt*d^S$`NIv131-}Z4X8+Qev~K*Phw@4zz7w|A`Vso=dc-S0xj>hp`xdIub@lCf_ zh84tS*!>i<#WjKNet0eSu+6aVow$1|x(YnGWa&pIy0t82s{8PrUg11uRlv+2q}&AM z+ORz&Rt#j7_aYCGq6cd)p~Fn3tHgp)^zCADSxPE?*cE$|uZjVE-gwB^_L_fV z08J9g9VYouVR_{3*2YE2SF|xle;Z-CwUlZyvXY}qYOB_oXSrh?=>;dCKhI~Wji6@- z8IdNj_|}-YqYba@%9ZZmzSdsLjFBBk{N&_wbC1Tto;jM>#s!!5k*>M&%cf$6ojkWg z?Q43C^!dbPSPe0T6nEIB<6VhJD@u?1s$u$w#rVpek6`6$+q#gIi|N?GRa_{3ZL4|H zXA+IZ>4n-Zbj9lFUo5z4^4hK+eMF-x{V7-vUtvveAYffx8dn{Hj$K4h?d8;)+V1^% zE|2$Fl`r=J_7{(*;rLw<(G%EcR?ejptSd6<4z?ie3Jq?Cy>EKVEb&0r9&cD7626Y?^%R;< zD+ppKq854>z9LY0f&EcmKGxD&zB4?$7LW7+{BYvwUgrknan!_o z=Z}hbvV)ZI8ge4LdB2if#Va1lf%-~eUP6+u&d;08Jgw#_lGu2sc`IfIxl?|1VZqV3 zcy8V6#&!B?XXEXcq2|)*Hu6Y!@WlT4%OP68zl;GFI0tw>P`=>;FlOeAfNkOZsey-q zSJ9j#>-YQW8HU7;PWIXm_MgI3n!u{ z&)5@?6@FU*8&EUvA!^>w0WjoT$+Ni0J(o}Z%l8A_bAtY|S#w6lY@xQwhRwlf{i zF_NuM=Ok05BP zKc}sjYpq(9081aOsHAA{;1tA6pmo5s+yf*!x6;TeAbSuSU=GV4Pdc}zzB5OCxc}2> z=K~QuV zu~h<8z&&y%LlE}p7iOBj?EEj4`rME4Li4PoX4t$%@P79F_hJjP7DZ{oHfpLWH+ z)minkpL?-yWBe^5g6CjnA$*6^OP@Asnk{t2?iqPt~|M;qFJl-lXZ{^8*Jq4Oe&tBed>* zn@J1Pp?8=iek&%L@w!))!PMF4&BzJgM1e%#^J=4FZNH5!wr4nlI_O^o7488Rl;W8= znpI=?X?#fJx*CoKjxviFKMnN)#tpt2@aeu)6?9sul#(|Wd7Xo2q)zi5ijpEddDBxn z4LT+F{$^Gm%XYnY$X1u*jxTi;hi^xQ!zS^Iy4~6QHLs8Tp7R1r>2IO@0k!7Micy6R zZ1EE2Y4H!G{z=EiSGr;sprIV&JCU8&=^%SzA)On+n!&?+v_3Y_)TIadt9ywh&ht5x zPjvc28(>OV+w~FSw^t49@9_JGF+M|`sq>g&Tz5ga8C(>lxTJWhvuk?0Gt#s|<}|rs z5cCgf`A-e1oJex-O$U_TX1`;GqO@D|#>bdYNXXl$+f3C7P zt98HlSI4Xz8xAGcbi^LD{F9#IJ|$>Pdr{Kz2s*I0aopUFHu>kvr-jqL0iQF?OhwYt z4wm;}gG%&;{u3N>uk}}pi@kVm?(DKItC(nK0=CzZ7S{Qo$LN-jH1$CCw=zXe`|UOp z%!QR#=JhLnIoN2H;h)NlXzTPE`vBWl zuB=*6nu8yft#j|s63+bp4S&HeDMC7&H~YE0icrsdL-t#otO^ae;htv*yzU+4!S3>| zt+i4>+G`y`1#ctyZJUC7ehMnF%^rO>v>w+#A$crd7cb3Fvvz_(aIp1mPJa3?Cb18I z-8yoIH>amnZUCw`lGE#Vk*D;tYDfw=(0}olLjD$uM`K=zhIZ1!cKl;Fu!xlASM@Ne z9@wjWMNL;{>j-aCnCn!SI9+KJ`L6x3|^vPI_jJ!SL3@LcH3dN6PuR_@*3-;7t6sg*?2iJ zO+*2sqRg%~kGwI#H+bcv0~Wd+`JQzYKZLPzwL#6bzujb_CQ8BT)?w{ z2J6VyB&SODMx)cfdUc;IIj*Rs-nThz=O;N%>t8o)Hocl*HMtm5Rcc7BZW5*M#!bqP z)3$$mHnvqKG$8zTA^lBgcGi<=!yNK<1t#0wQ`&_y>i9Ly!$(UZDZd05{i7>64h^9L z1J8Ud!ojh5O-3@u!YZs?$dXSyv8=PqT^>k^8!zS|=5BMEBMJLA$Fg`AD>86-?WtiK z1PXo9g>zmN(aqGEUnr+ns4;&ktV0OSt|o2G6`eWZefL^E+6IREYOUO5j$DmOj7Hbi zwnxgnF=4JD`D*_L(NX}Fvzu^<7%{g3 ztA8u_@j+|Tc(n3E-N3W$e+?@MP@~*oWRi;C)wJ46quN8b>&Ue`drA_iIg&e>euc|g z`PayV{_UGiwF3sR;u);=4cfmt>*7})&vfI_5TXTOp<{+I^n!KW_PFg8%zLm&vC4}J ze-m65Y&CtvGo8F^kg-dZ=1KZFOi)(}rnUGh^yI)AWL7`UdNrH6|BQeWIW$v`z& zEVcV)+H`#a4KCATWyV1**7A25W$iR%Dj3yTlut^V);C*P!FUB~4a_RU5mxE>Iu{WI zPjPZE#abfZfCcA2sbjT8bBg)_oF3CCx2(2@PYFDfAd?JJMv;~h^b#ude)j;ujh>}}55 z)l03Yh5R@^A8h<+^yQFFnA0>&gK{6MCoBeX9+igFQ%*wg;A}x~J@RVM3O6<+O@%U| zXP+>3Kb2NkyaPl^Q(Ko^fh@0FEej}dpI`5MlR;RMm23+1-udN3&yDaef~>$hVV$YBH&l6Hnk|rcACA z6@*vY7{+2+a|$OF@%OE&E${kLy-6J*n+~jg&92NRnV8#p`CjWGlJgzd&nrR!{+?VqOI-XnLm&Gz0#JrC1L(Bp-hd9%|t`5vci*3};;sqsHN3SOLQ@QxF+?{yZ=Wr(t2ZbCv=>ocxrS3(A50s?+mD6D&n8!tx3v!vih~)b=iJMD^H&GgJoD#@{l#dPXH!AQ*Fajxjl!lWsH_5_5>v zu=uMYbN|#E<3jsHPs&d@aAS|E%u*Az)5JLVTU-$3d8I|AZTMs1E8!#h9g}o(I4faA zzDUtMbH}o}@bP~UYXStns^tU<@CB!M!amBfI&Bwj)2X zV@Pt2YdL*K^EIrYsn{Xu+j`Obc$fQ_b-{P2dFXk+8eCJe*%Q2%c+HP+-cjAHr5u~}c{RrO1?YJd2svyjV&PcxYwwYs zo!z+~zc^esH>~R3?n!oo!SIG^4Hopbu4?fbCd(FhP=CDjlDGAm%F3*&%59~czrp-c zr$<_$+sT~4ZpbW>v_bC=d(M8V?1vbd(I=Jx_2ir(_08dCDnX;q6wR^eg3xxyXCSAT z0*AxFhX(usdqt^cnLCn%2r{C~pSGuSjqO;uFS7*qaK|w_kvuz(Q|iKf^=EpxEG<|& znJKjx{yP>cBSO{W4uJ3jsH_lzsef>L566y}nYv8*b3?2`qJx|Vl#j*!oKBuQ z*(??DgczlPxa$_vM{2XL4t{Pn9*+xHtceu0>$ulzz@50Fj$$8Y|I|{JW1UjbcF?93 zivHQEyg@jgS_E@$JChrZp&S{p5%zM$dIBCp=-^nP`^-?Pl>l>6ciKsR*r6HSy|$ zy;JYpW|of3CuZgaT^q7>#vCMV6im*s%O~S?MS*BILOvuv_%`q35Ry$Pj>akskuuvy z{X(2lc`i|Jj6tcJM>po^Z$tF94`8no@G}Q#FnUWV#K_|>-dLYP`!s6pv^h;Zt0qlb zS7QEe_OLy*hucmRaKRSvB>@-ns-#IrP`&Lw7yjPzhv zeq0UR$+52-d2zNgA~2I*9XYR?>9wN_FkeXaH?FHfQ)N)<`cB+afh8VZQL22`foUTK z&^><)@t=f~(3K(E`7G{nV&w6Dw^p7d^09vveQpe=9cE15oOf|e%mwVCac42?XAe!* zlMvVT2Y+RStXwsTNs&7k*D|A#dF7zKwN)fJCXaDvAp9fvm6JU>0Nxm>UIuDfRPBL} z;&sqI+>waV)5_#}^0y|HT;~LNJ$X(6;f{i0u=WDeg+8}~?6JB$Hwzu=|BoHV|7dg``a>zr!6XfOmm9wYCKYz+&Nw!GS-_=s`(2FyB8gk_@<}qf*+>a^v6Qa z*@Cr{#A~&)%i=>O(2DUL5@xyBf9pMNa35d4nhGz{T6k!-Q>mlT$RF7*)u4rFt%5=1 zov9XGzN^vWtP*C2DG=&)rFdI0jgDXO#Y|XUozv$WvmBW@#=Foj)af>Db<%~#&A{oA ziXB(UaXpd?wN&@^hFx9tBK@IPBPxtYw4);SY70rfM1H`3#$p3kaZ=!Ux`O&+kqgmE zpjJ#;eH(W7bJzN5+rrHcG3+sVd9n^Vun!ZWydv{UxV^-@-8y;76p zS#E=i-(}Kzt>s<}rgq@?mGNh6?_mhQab7uGa@ij-O-t1Xuj=>~Q7;94qM2cV;t zGK!tC?Kzq&f{mhxk4x;q(cF%Frae9wBE>zx?C<+z~c(coip@C+20hufN>FZf{O5 z$Q`m#W?V4a@_e4)P9*A%1-zG8bij9nimS4X-VjOp$er}ltz+Nkn-hsG-?g7J%Yz@e0L@=W&zHqKag!d`oq^)ow<3zYs`)GxVqy`&y4kcQ4WIvuK(@^w70&t~QkXdlk>4Hw%JSW7Bx=0LnQ#e~ViBvKLec;L4qM zHWm8&t_gcwkC*g`U{_>4 zR&IL_mTI&8v^=I~`OOK?g-7G=d%K3VzQbGXm)w|9%D(~vn!Ak&H{IZyN{YV(-P-O) z#s##0@Qz{rTT)KDeplY^U3>4e_vEPFKW<$iHwxPGjEYcJD2#5ey}!?Dhmko=#+jye ziWTq?6G}Eb8oV-kL^AkH=C$WTkOug_&;kHBM4kkcxs^<>ErX0VMIUO(_ce9>sVLg* z@gLU46NK4J2{J#?#tyXWK(ebnZvc7}bzON|GF|#M^vgx~FWUH`!{&01S^fXMeei|% z>%TwkH^6I2jg@^mZdvta+I+e-#%=RlUhjtR12vj_{&bi+#UehJlVZUCKI&T4jJH*d z*VCiqy_a5<^VntW@G19GeAG(9)3Q->0FOdretlxt{PeQzbhgXbyq5pwKU8bPaVVGM z-I(LzN4OVI=^Rk28dvj2)X!YRW?c<>1`sjMDM}0Z+~xO3dxH^!srkd1lpQkHFNxe) zX6IRZ4~yj{TO~|BWIWVx?<#a?FbDQ>|Kt+NS8dSFkX?YSjKs$&9*UG+#C3;N;4()O z`;)DLNtx6ZisEm3L{DV%EZC2bO)ray9W;Aj0+eWf1Ui*fk}aI7 zDAsUEQGd(tkeW2n<5yuTwx8^HeaElZgoxT#nGLyQCw^W<=e0j2Jva!XK8?8*G9}wa zeeQAnVa&BBS9Wv8U=;-z@6Yuiq0M&8kTIO=qQcexsO-U{&#AmKFju|%O8>JY56%`6 zmx`-2_w4fDK3+(W-q%lxJRJpMG5&z>zGGde+D=K1sk2I(c<1<2oq8H)i+ua`3P;3q z4jjpW*Y}f@Y0`NM8DV4~MzF&JmSoj4vJ*hmtrLwi)8~i$cWW34;bEWGs20dIUH%ai zrU$9q7J%XWuT@)HVpp;LxbM(&c#6s3=ZKR{o?*kCk4q?W!$eEGnZ=Zlzy7i$rREfh z-u&l&I9?tWR3=083yDgx==#*i?q;8Zc-tnf*3Mz%Ici;WtQm9N$Ylw@UO9Doh^Kz- zlX}CGkE;9dyrB++hg4k`mpzt9UmGM-IdbIt@zTBR3VYWQ`@{SR)4LM>e)jD)up+y= zM(Og3LRF)bZbSZgf;0CL^FU;9L3u{<+-u)Ge456Wp+~N3S1BdMME+mh(ZX5#Ya4CO ziAE?;Ibun5XoK`g1W#f+pd3W{2O%~`o+X9)lI)iLjA~AvteE5!b9FarI7*mH4P`OY z7}@{jAy!J3uP-FfH>R6}&+8KR7LJ!3Wt1_2D33T_?+f(j_frE%{YA_Kg%!ltnEj9~ z`I5duL)^#(lCaeO(?a>`tDCfmpW!MCdc^`Tm&zbA6Hh8wlVZrCZ3*li`LNnNb(iC= z^E0RRYG2S#J{Yf^nn9P_!KGUf$6rLZ^hUt=OBWJCmaTgFA1YKd#ZM&;QnOzP6O72i z~(#nCnza@ zJ{&U>XCb+xrDSfIpGwUiZw-;peQ*TWWmd_!R`~%i za^Cm`8XrvTDYKC-&3;gF4f6MhwF#3FoiwG$_?aOvj&@@6*K!?7j3@RPpq1K*@0{j$ zNzufw0rzPLZMIi*WWVn3)Th>-a^ID0sql4zX;`=IU@H*ft|jD*>Sc(urb`d$w;)q< z%$#71CUT^PS@zUxzO-4Pw!+8<&jrwwhEyJsvR3gBLu*eCCY)x1;($*qfiqOS3WW>4-D6NK>kVry5{`}NA42K(d;PGmgz$+)jN@*FBO zVH?`)8+DylkPOO_%ny%Oni>PIs;a+T?_7>!f0(%twmycr=l{$9sQbn}6u|#XO zVlz4(uregwu5B=%jG{(GTlUy_7~Z=aZ_LMjQsGWhfyS@NsYB*XioFZ z{8DfD*hbgdhd=0HdwWq7MXtzlI+$ZT&=3*qy>gZ%2r42Gj6l*8a{!LlsgZiHNiEQ| zf}Y=z-YsBf52Tkh+4$4mcV{I}n{u_TIz=9!-0!90f}I9bM^STc4qEQmnxewQ!Q#d3 zU%t_YS%Tn$TWFuS)NSpSPwcJt8tq*Lk;)8NzPoMImE^fhO@j1kJ40R-Ze&?`*xU?! z*X_4P!{-f0R%XC%*vZt(Up?P-=5F2)eSkkF>=)^aCdu#c-Yl2kAn72|XToHNa_QZ4 z>NNRSF+-x(kozgw?K{lo`BBf^sto4yS%JYq;CMHR-ctq0j^+?4?XP$vCvR8jD1g7k% z!H{Qe&x1gPHv`^AC+unO`N6QW^;JV2DoCrrb|u61)^{`l6`+dYl-nqZ%4-OVT9E{6 zf8R0XdXyRe0cjqX8LjTCM*AGMDdYMqJs&FDujm@rn+$=h*^kh;pPGMS6GAWP_9=TRMrq zo1Z4X4&0?~lg2#1sxxyteUOBbg45RBnktjVx&~YdtbKJ z5C_JLgvyZ>4Z9N>+YtsTgC%K%P1J}Jw?|l9P#TCaG-y_jlW*8YaIIircDvd*GfHpXX>D;$F9YDF>A zN43k-j2Nexiw`h`Dzp!T!d>VP*8R|G4r{9Z$x3izjVFqZNgByES!niSxB7@Gs65}f z{YLMHIwnU!%2P)`Cp?O-6RbSu%#H?~6ory!q!&*IKg$rO-zL^Qdk@n@5nn7wud7v6 zCNcwx=KiG%we;BOP%#hO#IK`OGDs!5r~Ht05JADoS@zowp-Hu5J6|xbVOd0<-pF@Z z{yKW;$jJD>T}pm(f<`mFBD&{nfBn2Z%SvgKWNX6e4{Z#;sn=9!#N z*DBYtSDgMKHribd>R}skh2ADT+fB;}dPI*5YU^m^?u=Jd%sZpf^<(-U@W2k!dib2+ zCe-p+SUE-S1^9IHcOX4JgGbIgG3}2>pZ4ZEZ#0Ukd#kZR7k}2^o^97W5}?;k`KU8YrP| z;c+RrB3wA6Da{e!3a*Vl&#}7U23^XfOuKFGM=W$rfcIMMbM=i^#w@{A4hnH82Gq;S zQ`4s^1P0w%#%r~_y~4LZ*+k6VysrN`v6l$JesT?{rP+9pTpbswzW9isn2eJ5PEqlZ(jF}d*I(XsPpk$*CFAwf^JZ!mH& zQQKvfrq%P=^ws5c6@=pTjRJzY8{b;}J+v!E48T%;2JqHUyf^z|qCUUq6!aG)R8rcc zpbl~b0p}W2WVYU^wRgV|w&gmTrg%N_t=T4fykU4r@X^Z7;O6NQBZMw0h8q0=U7dY& zM%6QLF=d<0>R8OqbWb+7P*fQ!+rKFa+%hRBds5}?)|A-jSmS(wl>jj=vhN2mEpqeh zSBE&i%``1@_k&CF&!&d==2&_lqIP{H?uo7?iS#|wDZaUy&)BaGiCVjF1U~^V!AYwh zUVc6#-mW#G#p7;W5n%Te79v0(?)~^>wK0FOF`1NCYijE@yBjaxPEA#qWXhp=5+Kt| z`GOWz-oML#C3T&hvhqvJ1IcHSEbf=9F-2*bz7$X6a^+1nJHAl%(LSJ;T#`a+aw`Dev#NHmD?%@+ zu1osSSx&bv^WJ&BojAtJx-b4^kJlki8?mLi>Bx{0 z^tSR>xTte(RI<+@y1vs#p;iC@fuTbH+>f2Eq&Zu+b)-IqNHcXZV5nOHxF=}`X1#MLXgrtzKc`VkV!uB-`?`%)Yz=k%uVD#x9q)EmzFc!gOGwZEyETm0exKe znD0?qSsuTu^Mie9y=Ul=f7|boL)<`t-dFl6KJ7G}))jr9T>L4G0UcuQeNeALVMiBw zvAI|SXf(a-twla>_RS)}$bKTYu% zyTEX9H5F5WUq6PwOETa(MvV_nO)RmAR^B}=)>N9&`O^V?dzFiWCdiwELj@tbV?)oZ zRv=T${A@V;K*@3Qb*r8ooeZOn!dkJMo=JE!ws8-A-kv{%a+})kO}o6ke{?+AL7#V% zwfK35z5Ex7QL%E1VM$J#Vf<+`B+n&HRTWoR?&T_~(GO!kwBUDI-T|(Gp}Q{&ifuOj z3^|cuNUc%}d8c27f`QA`ZRoW?dMg1mLsq+lE7tD)fbiwBWi<*5`>=H(vy16JU+SXM zjSu=bGQY`K&3RDQo?m%h5%;^30-pXkaD(d@fw?Og#6yHgpnhK%ecA-Ut!u=rU_Ao^ zJ^mJ$WkN1jW#k-Zf55FnqC5SM_P9ik`LhK_1*D8?Tj^HqbD_aLz8V_EM0V8vjm`}2Y=+&!ie!7`~fU#3K#@om(SaS z=sDJGS@R!exvImvPp?4Y@_JqQh;GZ{Au0(UD$K4}!M`E`z9Xj7tfU+N1aNikDgAj5gak1IY;$?M3(UMD-^y00Cm8V5d(yztB{ ze;q*%c&`!BG~^`sAE9aQc}-%pgklD+nxbaGV2$Y)&dzpq0vo&eDTfMO6kA38{J1-% z77B(a#L&6CZhysK0gk&RzH2`XY7ZYN@5j)B(>v{-$Yi=p@;aF{(5+KlH}fNs6uD>N zcatw8W`>#+8deoan|52wWu-yUOFC6|?@XOYM_BY)<#EdXgIaEG=2OHZYIORFl z^*;=U^U%p%li#7l+yuQk9@RXwDO_SI*O)J#w(G?=1zI)xZUWY))ra zD!-fWcbcX55_C@gew@qO(lvI^h?^Zf;dtMr8IqebTxNHZ_A>fh?H?V7n7D`PFI2Nb z=)Jv}_O#_j(=bWOWj1$bSG2--gZ&>pQs1n8v2EgbzUyFPrb+;AW5g**zw9O46CZ!F zOTd0Eh)hr@n;aGy2EV9iJq+5m@tC?>@P+sJy~f;m*MeoH{GsVFiSTAQhWC&=DV#KX zdinnJ>_7V6@fQDNWU99$I}EF-HGjRxJ}7l3CV%RtXQy>lF|fK2RZZ$|eF);ewfHgV z^H*w2bKQx97{r{UzIHr>2K`tD9GTZ3NGy}4Vh_59&znaD4- zNHrL#Lf=l5QNaQF-!_n8-V^g2H3`K^WswFYQTwpanGnW`6$rzpSEr{)#7ys0KC`o; zZC`YCNsjBe_^}@z?Y5@o;ubxS4k;^mMz$_+a0}hKNNQ}7env4LfA&BlI@znDxWJ&E zvH^fHxd@=T3M$o5hgsrc;gOJH#J{@}^VX5am!_m)DrK|H=J7{40Zf7!jS|pY~cj2QHj~#Z9W$bu6&QTaTS%hF-~>?`N+M?2qsumQDku&K1vv zga_1v1R0M%W9g-Pe~zo{Y>Yu$o*zi3k1V3F%&o<{B@<_SCL}hyW!$ca9jxg&LCrmu z8*Njp=8@WQj(e|xt50k#jQXFOQ->ilb|Sdp7co3+#j>(`_n|I`xvbY!Y#Q9>YE`h@ zCqfJ2hp=ze^E~v|@;tOL6WMEp4-viDkcLBM(Mc@VkG^O{AWtUIw|uXHm*GrF{Iptr_?Jxh2$AhjRQ0Vjda4=`!@?&T-YqGB z^~l(W0A#JJhCAhVET?|n_4n67zcwy}jHkgbg5$s{gocw9WATi(&ezC z%BaqK4F5o_R=zt=TW9O1Aplepf1mM~1>ZVW5j*2L8NlyV3}i`1HOp$)=0DgmVrDDs z#0*>=Rr~Rz0{OnEz6aPtJPw_mjJp$%>>L;(e@T?c+ZqEl_G>2`S)kA>Rhw@+1wJ)U z;0T6x&RPBGR)z(S(X>E<25N<&Oa%L(^h1MBw81bj0RBwZdN8pf#XG+B1!Aw9d!K2FyCy-HzmsEk4?1N_yxCllH= zUlO%UV|$EL&rdYi>B4KCh*jf#;hLDnhA6V_#cPT`<4r2pR3sQ6)b0G$7(|^LNp#o< zUpKS#SDvZeMe3N|P>=XN-l*6|28I;y^R)etC2EyQw_yrmQ)KfH@anpBLY!Wtm)LS2 zTIv+a_&jR!e1ANoWCDE$@oI9|b7*cEyB}P&4NToW5M_V*=p6x4h>N^ph$h&EJgxzkNqBS&cHy~?F=|7bKk1bkY6Fx!h{GOa~-Gj=GSOhuTmr{)h2qv-|)4HZRg6HFA%nctQ<&IOy8X?T&FUSNi<%zsn!C9%N{iE$_wS+BoMLQ@LO!Au zl2pE_j-U=1Hgz*YoEgGRB~x}0XR9H+C`&x~lnRE_)|_v;J0ryo71wev_d{Ch?xaOa z@5I;TPpH<1&?@#s%*!9q!OMybY{R<7bmFz1_3@;EJ6c@Z#6L}{k-G;5JDRrNL*Shs zZ4Jh@P8p3y5g#bW=^|p>hAtp}@Hm+e!IDNifqbjXD#U-wfpRXX%d`=&x@-V!Y>P;D zm^LYp!+O7yR3*WOrDr2ugP+HVbHE$FG9H+XQk&z~NB_-EYoWNhPSxcIUuX|Qbc&wp zbwzzwAHAl81W-S_PL4-@z!V;`krKVf6uItv=zr9%Irwd}ePibr^~q2+WUdm&zL@vf z1vdtKJYrG3*h7_Ks4(N?nll5{AYlVx&Iwk?p6KrB_H@ml{ z(1h8hGwLjh+Vt43Gnp@}z%kLBY-M9#ol8KDrS97i0(>VsF*=4nWFC|882Zj1)Jh=B zSDb9^8cF2?dH`aF3lzc4WY7RWUk=vf# z8biuU_qNHJt?yagZ8QCPn|Aylfiq*z-*0WZml$MPdzR!!2JU$b+W~=WN#hqPSvyu#aIR=( zs?9dnUc95&yH40$ki&eJ>iDaZEteZeN}8@neZs;X$lU}j4SdfD7HOz&egwWIY@xa# z0sO#HhZiK?%yW+tqnHRi*E{A$bz_*;k{sUIIqsS+nnY~(Plx{DCKqQdvD=~d!KMl! z^qy0m?B;U#^dY3D6DiPk>qfU*b&sn31JHi*AHCVhU1%0NAJQ~JYf}d^&OnCz25(Aa zhH=?M4f;bQK z_Il=blawkkE=K*+`3KW{kv^6ag;I7qW&w0fU8C4t#{tXA7;h`>dNz)8yC$4<=M7;x z#tm^}xxNvZCiCr(f>Kwq3n{1T?Q(+mkt!#vz{PtvQ;sFIN?>Mv zaxzXB3J!&3;aTqgki=mT)=10hgP;>kQ0j^}0rHXC|bmr29YWd8Ccs&!gY_WfuUuv=i+2 z`$Nm0404SqCPU5C{G1C$6NAF%^p2yAXK}T(%QZhTfO8uMx$nAKn3g)Id9K;g%qV)r z8tes@LgmvVjiBZNo!ZRAw2vj9NFN+Y0Rsl5hwZGa*Ur-BKa8NxsxuBZG$l!>`76}# z?`%_^G>BMMr8eYCMxBEpd4JS8cUKK}TX#pV?j*~F17=ov<43o4 zTg@jinp726OQqJ#v?{qLaiZ$h*KJLal@VUL#Y(~2R$P^9$yyNH>_WHV!L4R$TGW(g z(BCbr6Dq$~QPTwJuCG`WCULUd{;YEmgr7V4oh${NQs?ay;6*Hhg#a+O*<35~fv>;u zOV?r8uB=Kx!GS3D8CY$1YWQ5UtL2BiQ_z^bhs3WLem!y?xEF#>{oKeTdd_l`{*ptm z40Ll?VLD<}+@)M(W^l_5K!n@qlZ{5Jd(s@odWPH$1SRc2K^x2=ET>_D; z=3i06liOzD8x@KZXG-o5am#V##nnO&8}UP(PRZd<&?x7%T^t9i8cZw(v@!u}bhG-`L`=*IypcpK@EGH%7K{1h|rJT_()8=ai@>%%*$=hh_C;d;KPEQN2v?SGh5oy@W- zQryL4M3&e2Lq()q*a@)ia^$Z8J;Joo^fq*WB^IsH)+R>rUsJ#eKQN^U597}1!{2F^ z0vU?OGZSlJ;=X9DUKbg3g;GF4iM>&4l{hCn`M;>2IsMx{>hn{(oHUnBp9fSt`E%pq zDP{Jf+1Thl&54(DCo=c$`^W9^eXe5jgj$(IfekC5nl-~b%j}a2$ym6d?TH5=$2WM^ ziX+DqX1VNCy@uK26l^FSZ+t(vcc98JHfTjgS2U^PXTE%WX0kmTlJ#b!cM0!+%IPQe z7uu0_I+3LgGs`^zk&hyOSXTZ!;~25fOC8IPB9E44XCOb%*;ytU_Ozo`gQchB3XA)8 zu;nL*`|VS_PAY`@_%O-()t&{7{QH$yO13hf<7~mJby}T<*#>Nqj-(**ylxho z^{CXiixY`N$ys*|kJ1v^y^Y5eKAJQiK-)nVb7JRqtAYhNvwrOO$1A;v8}@++Ey7W* zjLXJR-pGIS3id=tOFsPu{lD(oGpP=suv`e`goK@9y@H8ebfeGd><`!WaFJb-OT+Du z0mSW0{CB#`_NA_`y1vPR6tkoZI^8o zZumqqD{o(`eDK`tjAy<&%^rawGj>or zFk9(si3`&ZY!_L#!MmS7)io#!b=rNONDfdQT%LsirGWn^Gfo(IBOHqe8w< ze7w!5yE=eVt_j_J1Io>mA6~-SN4g-4X7U6konr$!*Mmz=vu16Szw)#+8T(HX@Lm5x zgQT2ranYUnLHmG5U6)X_Wd05f} zBC)Cr_hJRIXSCBXG-1uD0zN)AU7;0ciS?;a4r+FWW2hKHH`T4}dK&M>V7(a;BpM25 zh2uvfA)t>=7JsLh8?Ekw;*n&hErgRX%+4yOqlY;OUecg0avCO7e5L|wggNwB8ymRz zl+0D~9`M}gv@|`ejL2RPyZfjmE694V?p(%iBs-XW65Rel5|5UW5cszaM9&gM+WDUS z+&gTSCFoQ^Xjgz6`i5ub&6(PAxe)uP%~2VJri!YM8pcmma)n0ZL)XLp@yIjSlOm}? zjmzOzFhQK99!vWF8ny@JKI{K}Z&X4gi{r8O^jx@Y80Bl*FH|5O0c=}=h6-_$y{X%j zLevw>ES^=tX-+EKxC}qcsh7gDI7rwozT`tW!~V z@MLYc>k86%IjJ5V-7j?M(kFNI)VBuD4WvJUKBd!0M0;g;U{5ju58YL$Zwh{amS4Q! zW^wtfU0mjB3@N%WTt7VM_dHjbJiL1MyxA?f&C-C)#$Hs3ROD@Mo0Y^>FgQNfPB_is z`1-z*h*fq_aGbhBlGTb)OM;U9k^{(%*Ms6lGFH2`{$wWGNEdZy zMyn`JE7M-ZoTLF*C23RReu_~NA&>SP69=cS>+&B*rjo-$Cs8@zD=py@TNm-t5?Uw| zbme(cdrQ@v=jI;>x;Ln5QEOQ*GKH}oY~GOsq5U2GL!6(VF-L!e{yu@@9|J!kr8U^c zH6%ro^nYgjsKVVwhmHILX|Q)d(qT1kAtayxSocaqie?=Bv0Y^+pz-TC&y9powWu*y!P7WV5$Bsi(6#OR>gT zb8H6LE3W78)DHI9+LWJPRl_SzXlhkyo;^c=t~84HA^R?}+tW{qs|NLx0hARP8_a%O{--83Lv1@}KGKLLp5=?Vnh&>jOflmYk`N9nJ406?!p2 z^xW3JBWH8-;`L+=5nf6?`6`|Um*QxT;09Rqvj7j-U?GtsPm7NbSZil5r%dg<6ru65 z4Nq0e8Lq$Pfyjbsu^ zB3APDIEOYY(Zv`_(nw>uv}*-VfM!pY6%QvI6e~1#W$^Np>!6Q#+kaB{p*qi#;x325 zt({Di-)Fo%&Q7k;4B^&KWuB?sMf4G zjHZ@)lj}n2GAu8n!sHavfWcjJRg7)s?FxPd6EjOSs^X6uQ1`nmhS zKmkr3ZQ+{gdSKaiv?x4C(XmM&CQl74&W5Aqjnz@ZSrP-*#ueWdvvw>kdFk|pNRib<_|7TtCD^hBZ+Eb zNji)xq`cI%bb_-42^;n7p-n@1jkC|p)Gf-hR1k*A{;#nrIy_<@9u;-6=A^Lq?Z)79 zMRSBxCjaK(_^~8#Z(F!{=wW8$(P@74N>5pf>3|+K__T_y#JAlF?KG=O9>Gj04YwJm z_$g}NUZAZf=6ekJTxE@tu1w%Vg;u6guA-)q8et-SQS4HFpxWdmX#h~(8_*>!zfs#h zr{^Q7+)DO8%{{huON$jpW3z4+X4rvasZDX&^ z`LgaxfYIXIN?7dn5hE?4`?|e{6A*~EiAl{P zp6By=pfhW#TkiIL2O0v?fDWA_p1aZo)3pY0?UkE|$PDs>mBuRq+~iY^obDT!+*v{7 z>iMD;bWbg?_UMH4FtVs10=2r*z8JcHHZ++ zX70)7=`}sMu_{SH@96mD+MbYV!=s>S6AZpwVmNJca1x?7b4iMrYL7h$G%K#uXtwEO z_g6F$E@@$c!`uKD5YPerGx`IDC$=VKT=NwhRbk~%%5YcTtAg!;RyB0!#&zE7toPBm zK;QA_3VLA7W+d9bLRR@GxKm`4xd~b|vLARN%P<~GgV~!bM~BwXnJnzmx^hVQ6nifC zS>PYjD6E3vj{TE7W60lb*H+Bmsp_VF_K}j_j%KYCX40QXy)x|gYfXl-6_3TG#?a-Q z;qs7$rTX(6S>eg%UWnlDy?e-*G6QQHYeA{=U4zB}lKiraRT$Sygk7di&;5q&4Z8l6 zw%}rWqw^Xd^PCpX#Zbyy;~K~)K{Hqi7I-l7C}e2t0@BK@*%-O|P7X#FQ}uFg8kZ*Q z20vu#Yp*&iu* zwEF7e^`CCCL}d?=X_5l>@+tT+x2F<5S+%9O}ZWKY6`;Lm| zqBgA8klnfloPI%`MvT&)N1lshQPfU7+WEWn_1}zKg83T^BCOJmO5YJaaAf>EJyy#A3fE@*$8))FCdM| zluc)oN6-^nZB1|YsAhpD5RqMmW`jA^&0jXLz6FxCDa%SzhyY*L+6{ef_}XCcM2>A< zJ4(UH4oR?e@z*=#5&qKg=1#&Uq?fuGQvB^Mwq-dTmHiH84T&Z*%TU&-Ssfq9+dZs0 zgE2T^rCVOZ^nWU=P8j2uFI{H3?k zqI5aGNJgXBQ!HI?V#0nk-7zQR)m~tV#}%f3^Dl?i6qR8yzWXRsJv)Sb$aCiRps%Y> z;_3>i&dbQPzB-&T|4=$?$R=O}QdRKRCakT*j7Ghz?WF6KC{Hh>eCzj0?KDgEV3=3k zj$!I~pC<%a7sZg3jYQ1JkF{O_s|p4CqtA;>==z%%qba%kMp>1CsdqNX`&CHezd7$_ zvW#GVAy$$%i;XMl4mE>=$BH?jI<&mneWWk0<3peZQ!UOZN`1PH83>Dkur(5-(`uLbTU z9`V8LH`?7L5ux(;k;@x()RMTZJnU0i`x;PrJ94yFxh*kp&nJp}TijuhxsPpw@Yk0* zlVXHK*`=bUJ)BmK1oqa*nHBZAO`R1UP!yKpK554m9Y<9c$WXEZkXZ>i-9~h`T8a6D zBybL?P-VI@)mglpV&5__fgYnDLip7s2FAk*ywZ+b>xfHqCY}`;N9p&7#K3d>Phyxs z1D^GDNWeiv?$<5Z8de{%ahKXNS{A{U+QYR?J-wn}R*}+-CqokzHZhr`<6_RH(T{@x zYo;aztgESq;M2=m50U6DY^k+vGSulb4UNmnW_j)&&$}YR8B$#pV1JWnlg4%M(MMcN zDz(&pX_{q`u3B(z=NTv!@6Q!33w$EF#E*wtWR z1qoDeuyh~vZ{*FP_P;mcV}KOQR=yR@47xGUIs>Ez$w=569n{t3Jz#F@qHao#U(N)P zF!pdN5SX2%Z`WY3?n&&rSOI z??CALCHla{Gw4bYqTU{}?tjBTjz)ukrA3@M7G>)ksTKu!Ms($VGIMRB zG+&t(qL9_dz1aeM&~@{m>r;9@jbb>7%>M3AS|c9Wca*R!7_2KTvKyLTG1LmCBD+yweY5~6+-mNt&`FWTCxcr^BSxsDneilh{n5VmV4NMU51{9Kz=Frr)RjqitrKs<+<1YCLv(`B-V$ zxY|!u#hUZWx$_o;JgCl_)+^0#rlPLNhml%J2FJHyh`lyrOy zy7!UopK`SM4n<`c=zRGA8ozws&Z_)fzy7uyB%EMG=ECX!0d}f0ZV{3J{C^3ppsYV! zeEJN2=hpRSt4dI$PCWOt9Ge&eMG& zO4eT?E>Akv)x=J1R2knO{kpgtTcG5Vj-}6*?YH2ib~Xjrk}iU~kLH|@2|TU<6S>#F zJ!?-mJo6@^g7I#32|-rUW+%HoFdt8WqYvTNQ%ivW;+IZxe#0p|saubB(jckrCy_&i zMtL@y=iQaARgF1?{hX#Ss?}IOkHerj&vuTS;!cWPHn=m4mJ+(1(d%ZFHQtIL?% z)0(HhJ#xwI{|udrKhygk$A70zIbCp0PRR9i6sIF3p~be-QJfMgxf?~S=9VpHW>)DW zcO`cw$(=1NcP7XEwk4MPCN^W(*wr?d-~NPs_x*k!-_QH~dcK~*iV{=g+OVwSc;ldg zF+48+(th9#-+C>SQs9#stj0;n9wtVSZq<~Q#=^U)p@i{HqH>7^9E@L^S_5?I6FNZz zuCh||UR1AC7OAQlGUKoF0YZ(-NF0tyhw11^l6oqUn~-)`G@DeJYj$y9z!-~m^hpY5w(YHytotk+x$Y*EP0PB>9OY6) zPW2oH+*&X8f#fw#!C%;(ILYv6Q(d$V9*)eA0x+&+ z^a-zo-3#zkf%_|)--`URux8)#naF+*cfOp|%T;df>C=YcGB$f_jQ%yiEGB&>4EZ`< zG0=^7AjzK*OAZ?ZvuD_|xrrIm0$q9gPq650;6_TF>H>>3dn7vO|E|yD_ z<1=^e+J08Yc0yh|U9s_or(VJsu{=UDQIj)8G#N9-w+?7cFy+_cE*I??$jM7J3(f0c zWdK&PB%L!?Df&Tl8_P|BSo-fcTHBHOOH(f-WGMLG4L=W13&J5))I#8~TdvJ7^ZIN< zx3}eD*m*j>jj~RIBNc?_gs&ZNuiLVXSeeqF=_Q8k_Xc)DrGIacEq9;cPT7-Vb^!cC z$w~A1ee~?r$o}?E#O9ZD_joy|>rDW?j;HJHx#5{7LLEonfUSf^d%At0T6ou%C z^p?IMp>|xCE8yXU4#S3Y91+biM7T(;HFwZxN^dT=3E0?EU*GzT)6K|L?|EJremd{t zwxYTd=9Sb}j-Rc!W2JMyBY(n9RaR0ZvkQApl20D(Nu;)t?a8wBOMG(v^d)t9%nMVe zP#0WY7Cn&i^gyKlgk{imMO?H7>a-hZF*CjxDJ-PC_wCKKYD|(<+g7VBig}U4zh6XT z>4pTbB=}f|G;h7AG8snF*w_}i87sJ+PgKq(VY4jf#v@m9PZ9ps4db79`7a}IU@uFT zFx#02bi;%?`6qR{uL@${VXMcK@iXrrVWM`GzIrR-fcf2c$B>Meo=``HZT26=>u~|O zW-WUU>jcY|sfFGCgr>*lO9rZMs`V^42R%A_NpLv_TR(UzguU9`C5Ff?C7J>an=u*$7rSP)>C#{ zM~A?VKCY2F1l<<2M2_firQv?PLN0fu{-lD<(K7CPZlrFTqxLu~rcxDR{<|Xb zjxty}Ss8LyjO%_>h-3>O(=Cu||EXuU`P!&Gg`(Pa~x+b5-$l_%H+kAcH6)LCybOX`6f9e%$ z5#`yP%!o2(H#(EoPR9~j>BnDaA{;B|)8j$y*^J2qvp|Gjhyu0+Zh#6K@ksUhszuGV5 zc19n?$-})D1j%m*FAP?A9)cUQ2-1q1m_Y-VIwef>D_n4W(2xqS$Z!u##;|+-AkuFk zkYAD;W({G??!3ahUr`L4E_*k7d;5>x2VlzfDwf<|){#3B;=UaQZ|w#Prp@~nGF7Im zGvbQI22$>{|L)F&hosF{+wDycwZ^%~=x!M|t)o1m|n;>57K zc<%8cL1L0)$OJpO3suE^XP7eG;^M&Q*YR0uO}COR-Jk}q-m2wgDL+Sg3kNW`%skKL zmkk|BT3>$0=QB?XRHw&VC89OD4`px8lophh}ew$x3% zwQWhy1zYTl%a9uS6Y*OMXP{fe%ZLyE2PM-`lhbB7qLr<1((a7 zq@D@0Em%jwzh$qTF`fT8-&yjUK?=&RON)1(0|r{WX1xKL;hue0iPQ^q6o0gDXDw3*EHGWK`|CV)U!N;2@8SPi1&u1&X#Y6GTcXsMaf*!yO2@ zrI_tm0}xl6tn)|AI=xahkA&z#o1b`qqk??xJKnP*!&x)FB%6`2+TAm4c5-_1&OoiY zA0g+s>5qN4hRT!_O-}VS3^it$nXe9Y&nMNLk6j_70Mvl0H1(XNOu|^UBRjrBE#=B~)@a~$YxFeg@ZfzBUS>7oLMV|oE{r=)5kmVbLx3#Bd*M4^7 zWMPAfP}wGE>hn*n<5`Y0q9L00aA@=_AqEsa`KO!p;G!m)del;SKnb?8@Ij=r9y=EQ zPim&e5a&#Dl|L!T=USt;v+fPxkl1w>EBr~XJcxV(3feq@y-HEV90Z0ZTP9$1g^`%Q zXJ#O{BeNfSdR>4&hEL?wpPIOvG*{J}T3zrL)vFc`7BJp4;(%g;^k+aiG{&Qqo)&dP zr-~nplW4=jcR9I9sZyf z7CGKp9py`iyUNCO)y+ne-M509SUv)7QLPLXOWv0Jjx9zgPuIWM`LNh!zq~qnj#? z(h)0Y9PG3?v@x*vUVQo8HpiGNYlzh`B+7jeu+f#rA79&h3(;4bHv5Mx%d@)aNxs9a zOnFPW(ennq&~W*v)yv$zuhv;xcz-FezC9-oE8RBJ%>LTQBU?GaRvV=g_h~jlR|b7L zuZvO%m?>=f)mtwXJnqw9h~>u$UI@4yxsk|)dl!p0)70*}P6%YtcfYlNqi)Nxb_rq+1+eH&YpKPT*rcF%xM#{Y$( z%Hu3O*xT}hHBvQ1wQfKKd&QxluICS=5An~c$b0FH9-j^fKt>#N<_xIb0M_tG*(unC z8uyu*7^L9;53J+c~w9RCb&hgrRtpf&N6j4QorsG zch(ydI?+k+OFp7({>M*Y3}cfeJ?jnvo`u@wfOliRkSb4VEeNPvPptnkRdbi6j=XjB z-^N5Jj@PV9vmK5~ms-ECz9?{tN;AavCBLxja5FnyaSzR#nn%?A+)lLPCKv3tcrXYx zTeNpLDid})8p(8_ru`AhO9#^%o6vi#$=D^>14#h}R^!#R41&cQkLMhLljQSxp=i7pIao!_9Ga@%2R)Pgd7 z#jn;tyu2Bj3^N)JIa@bItovPhS=?u1N_p3GaS;(Eq*|dFpio}qBfBt8uV>6$x_Mly z(V8fc;LUxpzaR0&+1uJMF8sjemazPCw$kiw#}eb+L$SQvVSTko`?OjwvUS)*9dnS^ zNwcPjzf9@>c*|EOHV%7>sCJ`IR( zw11o1(xz$o=qULTdxYunI`;dI%-I8O0Fsqla z&PiF1BAM-dE<~rTSfS;T&GC&SSf!wIYWKq4f0k5n2XL(H;15W%9cF(4&#Jlw4EWZ& zzuFTb94Z6%782>zfDyRGqY$2|qO6|y_sCQx|1h}Nq{Q{E6oU%vPMxluYqjAvT$Trk zPwU86$8<)Z_`_VUHIXG#b!v!Gax4)PJ8)2GweHk~Rg{UO`&MdkyMgDcIyJy(>+1O> zt+N3+r8hEaT5#pY<(-605#S%0bdA-q45 z+rK3X^n1-kF*qT;&Xe_)lv|#`=k=-gzir@Wd^uaF^Qk^9w!Qrb*s>qJCI6dJBxb!ecTI(lw{dlkslcOB z|AqEzn&9rf$8eR5rgRS{v?%b7IBNVoG$dp*u)8A&$9=49X}-Cn(0R04Jy3!HRJmBX zg{vaupC#HCr%to#CI7MkpS2F{V5uz_#3FvOW+tZrmJwD|%S-TS_LE-gzkIV5+cE(a zHLXJo)Gkx5)+cyqec`B2MjW=-iSB4aaU3}$jE~j+tuI$=ZDJ-*WRu|MM?>pKUlDo?)QZqf^ZJ(w6@F^UklCBk;40&?zsUD37&VFS!s3*%zfd1 zAC2rlVg1h6xf4iEwQaM8sK0672g8G)0-iUX_rG`~|5g!%DOq-j*!e!`0m>;@gVZkd zPiyr;2^MLzKw_OkIHXWoN@CWif1dntH!`jEs+G=oJZ|8bS zNzCa@>&ew*@B?JdCBBikybuNZ%tnNv+ReB}>5rRwor16MmFHVQL4WN{0%i5NU8WDg zw)`u9A~UUj*;!_u;4&{8DyPQ^5#+OxsQ&46zVu*_3t`p6xE|gawxbR_CP4lBFjSZ| zL%bZ?dCH_R(xGGHbX1HW_mZTCZSz;h@d#*>C!k|MJ=CCnw3bOAME?o9;5~NB zG5VE3{N6OLS#i;t%@lyMxd*w09fZi^1z~Fr*xZ>MG+FA?o4ZwI$tq?$sYX1ICJV5e zytid3#u1E|^G<8SkkjRjYEB*4aBcG^?33-JBI#z2IzN0Q<>9=VTLc=z_ufov)?f?{ zu{yPX_4VT%l#7F|!FKHYEp{GIPv60I&&<9oJMw9d&Mbdfo#Iw8!Xc_HUw7uXl|z14 zyG4U#RL_%)-~rVg*j2w$6TLCa@!ySzERdZVwAs zzcB*0%J!60k^chWqCHohQTO)ar*d+26nO`Rhi~uACL=G=Ur8=4=x(>xeG9pPa5H}H zo;MvVw0%T-4b-mhVHmb|W~Rkz?A{37yt(R`q?`0o9Sggb3cpnCZb1G8=$Zy zyao)~;AnKX6m>brR!>DNz$Nk|>d?j8G4ZY@k*HK~s1&!$(_cRMvHBXwgL0V^EVl9$ zej@YjxVI&7b|V2)C};W>r;U4SM*$jp&pM!9g5X&O-zwLDIX&4^U?dUx<{nMw{#+0F8?V`AgcOc>C@TESkN}0P~ zU^eT`Rl6li^Tp-`@NJ0bXDob&gxec_&fSZ`JILQd5$CzK+Lgg40Hv@i<>JUUC7(^i zsIaA~^-imv!giirwKXd~?Aw+z?-TRr%H`j(06kBZk4Sx^4-+`qn`Y1emkdjvGW{EC z|LO~u#4ADN7SDFyV%~=}&GvCFjZK85Pu$t>$-L*w4Q>S^B!#Velu!D|is?&ME-!;oJBkWlKbV{5gWi z!q)qf9Rh^NXl0%yp}3Hp7tlv0l@lI4Kf8S^B)uax|LA8HXhT3P*>HZ^ezc7-2p@da z`uK!p2Oiw~y*&y_Y0kBVwobm8ojtkBRkeQ&HWD3hu4QKiZJ#qctRsdxZufZGEJnc} zF&~b;mB(roLT_o}B`1gtS)kZ1ZvGE1j4!d2ZqYBX97Pex9?9M4X4ulHVaZNkPBTBb zgLB;4Bb!y@Z43KhTkDharh??o40qM#bMWM4P3JnI)`6A};m6yvm~|c#=55S-vmR#l z*Nf=&6NM7RjZHXh$~tFC3~*%sbsLHksZs&Eekme;~U>yc7gFgNg0k(&N1< z+ftP7_-y79n$l*AM<*YW^S(?piDgV3N{cgZYwNk(sgr(lv1NzkX$D(ryxYMun5{My zCl>r88 zsuP-oOz<4jVqgXorx=O4&;F0oX0k`}16PBim=ng*KjB`jV5Oz1c6MAgl%k1>X!X29 zP?n$frcbnW#}hTk#bncmR-CVyt#`#&clL$S>gm)ZjX-Pa$Dl|+%X=~6RW&>L>a>Pm zUsjBXDWM7e%8Uo#S=;6#3^*6Rr8_1gYDDU zi0ujWfM3Tl6drd+c6JRMN@iONuJiYlO@9Ztq_JF+Cm;1Zj3GsPJKfbThF35xDHb7|tUv8$rnoko(aoP5tq$)pvn&>cxTooHy_rL4I2sa;BB>R0c9G z?7mMMS#DvtlqVoN!kryzR+1hvWC=g=qhZ2TH~;pbi*UeEH+1hQ_GVx4i{OFijMZ}G5(C4$s7PpZo%84sP&@uEme{$1%$*C>2vv=)MWCA6WvS4ZDm6Cf2Ce|gd-uAWBFE*CG zOe+bEez`+p0+FabyAi^iT+;GuuxRP*xVJrA7#Y#H!|kZfc4qSKbg;^UOByn#PY7!v zN-M6}ovGH6P@angX5lqGUqBeIh~&L5iM5~UL)1=zqi~4%qF}uc*~0Y ziZtCHN+Ct!y1vpY!d>?lr#>D6y)vxpQLBZ!nX9DuxM6UM7s}8*AG2c)MD2_;v&T7q zittk>8F66?u6v~HiSpg`6cY|rHV||>f3Dl9d$BQ(l8f=}i4fFAQ`@Kk6@Wj0j8V6C zKw5kO=XX(5y>fNSO&OFwH8b_h5DY0XpkF3e7aRq?AxsWmJNhxnVI|=A_@TABug_`Q z01Zkh{z7jU&2KMn$A$mD>DtwU4+PR>=M{1?IsmJZt{U&CbhQ0I1?$UD&VX_-w+Dw6-siwN~4k?=dxmb(s7)uWt zp5Soa5kgk4`A(U~CTbNL(ai>dopH$?{L79BS^@s20#7K(v76+_0AhP&_N=~nRS(gd z|H?{Y7^pMHv*vjVHge%U)dz`E|1mTpdFP$mjNvW@9=1&UP51ixNSTfqdq1mY^X<3M z<8IMAByaK{>VFD_OM&YCDo$A@s!nElk+K`8$}zgDMK)~;J|VbmiO)F_rpf<$ zhE9ZJ>+Y8wmChSn zR8MKQbb7Se%Aj?o&iHPdRUu!2H-E(5&M)QMGAAP+*22JXMMzCKMR8&9sjJRGF?<_S ze`lP6>(z7nmIorbk;hI=OeP5{%5gkosaeTH^=WEzEDLPBuWi2hZdtv0a$db&xO($T z_@^E@s^K8=E$Z>e9xIi1JD+{@TYFs?A!|H|$~fvoFT{Zt%mQyZbY6{X>B5`nmD|NU zrJd>Mm&t3cYPYY4t+g`O(g`2>KzFQX$QrZxkq<}v8i`+rej)b)1pDq-K0|sfO!U*2 zyH2Oi(1%`WvmJtHDCe~Iq6g&IdLaQ2Ih^0&7dPgS_&y%`p}?q20Is zFz0pT0uSF1@tgRrvk8?;-SeN})+k_hSld&@z`x9_yIZ8COa2C2abVkwW`-EgT$qX; zHhmjt>vQ*3oSzPYKzVKXG-#99U*94ygy|G+z2=V{5En?7^NJz$5k#%)!eLm@tmb0p zrVPrsSLcbj@3%Ubp~R7$ zSz7DP>;8^@)P+yAHL5jL0dR@o^JPo&ByPbw5vx%YnQp(FjOmnCM|C1l%V1^9?r(dD z>OyKVWhpHXuo1eqIQ#uUclG%1G#t3zn+;{oh6&XJ6(F#hR#`FRH@Ag1``I6TTx3r8 z?o5gw?Xs@-SCQX@ZKD}gROsI6{>iyRI~5#TJ(uDEQUJNhJZEi2^shpTY1<;)BATE^6gTddGJ;4yVWr8^8RQht1gZ`{OH;4jfeS)y2U$D zZfca1-t#|uNvae_4Q`T9X0#l}>1LDs-7dazQLDxt2YczKD9rVv=7V0YPVWQbSFA#Z z&DEVuTYC|yFXpX$dV{kI0!E%JgbpB`S(TVos@azi>f=kBls~X3Bo@DIdd6P&`r3H~ zg&N)mb0lg4YZ2^?_~7cV%SK48>8Ef{!=m^~`E9qLXFb)Qp&?r3(0b?mr*ZYsxoAqlOHh&WUS& zK+){h<^s0=!jIP4BSMhfbuXVi!_m%ZSKTjm@-4*z>6-QnUEi|3UCSG89uftCla_vI$b_*wW4&%_w zG391q)qXUU{oO8Ef|Tfg3mv}Xro%A~tuVWO!_cC7TYC$*4no}jv{O!sFz9HqMJPpWeC>*PF_V*_ zzB4QxAt9&%H|@^Qa#A94jiyvW7^#Hlb&C{y1B=uCL=?c1YoU=!ZclC}#4 z16wkw?`Y#)$F|XL_ssPPKJAPVc@k_``%CQkk_S}V%Ke$P_OWui#l=(j5NIjyrlUEn z$2~B+<9FjrdkarRnBg-OW{4%Tfn3+3Ui^c`Y9%eJ(VnuqnxDED?qMFQRRK0((Qu~$ zZS*z}mFF=lFY4;=Smj$~Tr!>hdJJt1Q`T^;-u*PIjZm_v@2BoydwLiV+BAYGly&ag zJKEJy#D?yt6%VaP3As{m;WLW7Hk{ELL@^NF4YbY#S+Yo$H3vC=fMhRqA4WC@p8IC~ zJ}<}tNQ_Db!KS;HH2W)~#<^v5H?`)9z3tc$XYj;so4gB2}Tjuk;p>WhQN*CrxWp^~># z>KReDJ1$mMe{ap&_6|QGcyfu~>{UCVjlLNbXMJLDx1FLDHTb8P zdh6cOU25>!Z@zRIK^j`Ku<*htK}AG&TeJ!SuOyf=trclggDJ)Mm@N$dZk0jINa+aWaQI=zfstzDKqFxk0K||h0Vc}q71`#mI=t> z9mvRu|HVJt-^oRg{~4(_0BQ6rmK3a}%i4nMXFNHj&H|JjZp8X9IoO1PeXi%pJW?(0 z#w-2p?b;Aymi8GjN^7n)+~TN$@y%|S6$6f0_-y8moL05-c99$zfvR*J-3%{hl{QTb z78ir7+)r5JIlcU_I^8tW*pWx;-Io}t4?6}tj#X27>~Qi{h2TxvGwLVe@E@-z4B9Lk z);L`TTFOi!CDBLe%BA47DJ%BziOIJ%Mv2>xHup&$vV*&?BEE%X5-zK}F?~S=X`}Hq1)WK#)fpnmVp8RyYzM_-Hcuof&#Ux}5>UZGLLJKQ_;ri}`miyAa0=5ON zZt&Wry(#7Bb`t?G>ynaXOoHZaGxPf@NCkWr=7gZVl1`uL zaOVG*Gxj#MX~4WB4MlQY$Id86twV-ufbTl8Otm(90*F*?sj7Vl9E~%;c5zG3NF;OIz|w&-19|NRx^) z<2uLeX6tgt83kBY)>hO_XI*P9?^CxT1eYeQan@ejS;S4FzY;vj*&f007vtb6$Q=rP zlsm=HPzE@`Mwp4Cr+tMl*D0V3oUft! z7SEzO;dn>kVgfojMHgY9B!1I;PHrDx)9#$Tn|e9cOGjJL&FJAM{#Qpo($i>_sK6nX zb8BlLeYEt52_EGd2&@`%Ioeb3eNlPwJ2a&nMKHuV`Q$_q$%fFsQj+s#&!}t8P44_h zRxf!Ctsk(bplCKJbxS%=f>I}E$0mOPk5$^-=)6`6Y47O^fmxM{m?IkX$Y(=y2&hs$ zKs49>qA_|Qeg*-YPGCE^O70Yf!@62rOp>t25H4rEF-&O4Z+;KJCjwldsr~|$d|B^1`Y(xWe{ckkhZ1w=bQzS znMR1uA^bh_SZ6DB;mo5_+KH$SKnrF%Vt(!AJy%rH*B>h;__244JWWi#oZEV*`@o`Q z>1SjwvfydrYI1$mx2h?_Xx9qM&;=m88y$`+!s^r=H|L4D)j?GN?eTven%IW)7=xXG z5jg}ohNJZ}+db)s&Nw}}RN4~fFCxqlA8yIod(0efoMX+NGi)CM;%70@RA20@I7I7l zCAgM{lV>RC2z}8S^_xB=kht?`R{F_h)#iDJ{BCc>a5F#`dRGZt5wdtxV}BOVJ*5v8i=IL7ii_ykNL%1L zYvt{-mXrJdrA7M4WN0FJjC`Q^r`BB;nd2;rvMKWqJ{&&&-3$*4uxo;dZnvk#yq#)& zlmICL8#PUx6)4gh=iK0R^&tfWK;aB||_ zP^?d{d(Y_iMaI5dz(RWoIiR2N#Tk1PbT2eroOekV;0QP8SexyfOru*`W<_*7>-=)8 zeD;+Mu3)-gT|7c6D_b7c8RK&0JMK8I%_JxCzD?h`Fu?ObyTInKXvOB-(I_|jN=L8PB!Wk0)(z?C59rreTlSwPPl7cy{a>m?e;B7S$nX)4)h zf4{B!zK`a&wwI=#2v%RzJ&1Zv6_&sqSZ5YX$ky9ahJ}CiFR60(+sdd zXT1u99OjOh5G|Do<9u}_-sFtE&-dKg&TH88Kke!q_E3J@>mWl0=o*S&G^?`7<6)Kb z2IAko9w9e~hvw<Yw8=424Es;D*j^uJgNB|!rB&bLF>(msWti%mRw2n`4Be2( z#`tzVHF^6Y9>XyCpv3L(mvvc}%uH^~*pvAMh#R$$J$2>Q8BHl9`ojM%?mBi@F!=M| zWwXr7wTJM1W)~9CX&>E|G*f#A^F5snSW$xqW|#J*FV>R0_{!*z|4yk{YII#_bC+l^ zh;5x`G6^kJ{!gB^s|ccx`;y>Mg?nXmqIbj$eem)<3z=V==} zO7x>DbZ49Cf~&ZXwsCDb2xfa)Hnc|i7EjVM_0Bf?Us(pCfFVR~8a5xnh-xGuaDjAI zH(E6jfR;S@`b1aKo>wRc2g8qKw~hI&ZAFQeBg_Kk4C6nt|FE|T;-0HmKSywyog^>6 zvyDb`6VTMTd@h@D`rslZvRp0Vz=rrW_g&c1oAxjkVtm3)_te^Mq3j}x{w1#Wk&0mI z7d40JHfmH$A(-8(vooPipT@n47M~WQveb%qT~Zqh(;ROQD_7QdYOPyqX9}0n399~T zP8T%OZpM%HMH(;pT|nR5d0t)CxHNdvriqcN>=z;snTio1n0bwR0*{7oU2x+R$E|IB6dY6$0skfMEnE)|c=U zg5MeSZ7}B~E94M4;9J-U?{?!Z_JRn_Y^Vl3YnmVQpivtlH!t@X70#~JD%W`Y zyln2g(fc5IcKeFVLqHyCt))CDiqKR8Puni-8P#=W$G!puEzPGpA@1)1>=vHRvHm?0 z!ClGpny#}xX-2LGm@nQFlBqHIdEuxE>@E9uboFs^(A*c5#+ZYcU+juTk(JVV$k}Ie zC!Rg5PGeRXAJC1I{|w1LTdwO4%o=m6r`lrfpJ~fkT*J1H58|XUuGw<=N&N?)BA>hE zrjVi?8w1zu+(chbp%-WGec^ulkq!bWixiLayYaXbi1yiZ^un$UYP4PsyH8=ib8K2Q zyXZVaFI14>9s5;#GmiheO%&>0B^w>91t$_9J2K1F^c##!>wq zeb`KH$vbY&4v5DdSN{^sELaY&P<@1UO46K7X-tSqM7yQ^0ZN%V=1hx|Jg|?km2~)! zi>J;twVmElQi2`seXwd-VQ>SsD9Geezli3wrT-+@EFYQeD?`FY3ukxk2Rq?6v^1wA zQ!ZQ&K<#9|X;jG)%*+`Y&TU;&5dH|iEFcMYU28nlt1-~7Ck&t>HeBP<*H_$&pOE=Y z`R?)%nANzbUvf*~ZG&s;oi;!_M?f(zPohBy*5uVG*RTSCV*c#jDFX@HX?gzwU|$Ck z(5<`)kjtTZPwBN&KVZXWy|?>{H3cX@814HL6y$O3(N#{Kq%( zxfeQ}&Uz>MaPbP@xeaGs1j(r`enFX1AC5n_v^L`ZRPPesI)wgxyt1 zQ`iZ z<2AyUQuK8lI0L)TJ}0hvJxW^c5Zc0?syIoCyN9L-&e;A~)F!2QX)_0R^pH0B${kz% zNsvz4o|9cWm90kX@wBLb@iHA+hhxDFtit*%aVNZZIF$X-ZkXWy%-PqRV5i0JH~ZwC zualU@eII&m1v=B>gEuhcXw5hhq81k+SQ{|Ape`UWz5>Yix`kxaWnPNOM@rYo&no~R`@dZK3B|Yjm2%za~-2rv~@2@ zN8S*yyMEK~tnR?)nm2yW7FR{MrTLI^ zC!cD0)<;~(xOTL0uW!0&&9l+MBk$%+b7H#X&;R89LNtDt|5HNjSHIDm(}&M=wf}-Y zda@fB4xT-_3tFtJ7nxj1yQu}FH-LHux8MQ3LlMe)}~6nYFFDGiTryf zDoaI=%S>F~Cq{GUT~sm8wzNY36aH%h2GOnaJ?PiK)jfz!SW*K8DLP5?u`|z^X-l(& zqW*LoKtK1{I7rx}Ef`Cyf@G_d??T-Oj%CCB^QvzZL>aAL*CI#mR@1hP`utuumO-zr zFyc4+R7fe-0m9vxs85ft!64AZ51Y^~AB?D!3{VFv!9e+W>O_aES+#Hc*P3HK^^_9j zqRAI+X8sfFX}ymUR>QcfTe}`Ai(Qu$-}5#;ufWa>58rC_rW#fL`wRF>wvCd`+Bg%s zL4`MDu70SIMNdJ;|H8u! zy!;?PJ<*FaQnXRf)ng)Gw_!6k71}Omo7?2K#=4hVlJzLz11uwX&y0_Yp`CSmALZ={ zdY#dnbg{Tf>6dmd?NGyH57TZf-8*LKs9kf5r3;b!3@UXOCvetK;YrSLHh}4^DtUix zyFR+nXChZVn90AbTa6=`PrS*QMO-oJRt3Wc@_k}yp~G8+VYCGQOMuR+dw_0zNbhRF zgi+8pP~0Vja3jEd|Fv%Z_QuccW0Y9{?1?^L$2_upLd0Fr-`XGHwv>b-J2i`3&@-X{ zi*Kb$4^3apfjg{yP?uq$J(Lh%%Q|LI%vBIS*X$19+<4aDD>Fo}dHG+3t?VPCJjPLy z25O&)&?P;bE zVp_hnKeOiowr}p$qWp1lNqJ5?<`%s02R+H5#m^=ORjR1Lm=45oIypeghv;N=|Goj!!_| zm^EeKd{0HA7}wV0uyf<+|8yT8h;PJP&W;ArJwKED-kEVPD-}r$3yACdRlS&Q+JzaH zh#2z@m>3c5|CrPFzPHi9^$CTD;oL?Al=vC_| z+0g7pO8F5aolPxoIY4QuDA9qRSokt0^qnYjeUx3KP4uDbsEmc}%usZs2c_Ifg_{Zn zmZO(8FU)~+=HvT)@k$G#_jCFO);aKHHAFxu7vqdd+$ef zGJ_PkshNS&7(bxZY`+fhh=TwFhqV7S)8e;Mhgjhb0AIh&gsB_GjLy?7>zdZWYjl5b38pV|c zvOw6T)g^x9x)c9a+;*QKiN??xEy2xV;p5$g%dxQ(-uAbrvD1C58UH;~(E|(VD`!k{ zaV6p`*4Si*6IKrKPwAyJvciZ)=CYMLDwm{1763VOEqj1qLo3EaI5TKp&XTIhEF7LK zJpfRGFPGQ#;T?x#+;{d%6AKpgouTN#=2Y{gU=@7t@^Mx7w;E*8oFo9E*=LAT~?M> zUz>Ys{nR5C#+M0n<2O&C5V4?~27Bu(vFu~Me-Wx3+B*ct>rS`OHN73rP7Ta7gBW20 znl4U?w19MqA*OU_DjwO=uIbNN{X^U{d{g*`-?q`#bDSpp$Kl*)f3tZV@@%G?q6+Y% zWhhnWKmQdoSFRS|Ki)0Dn@89nTDRXU{Y1$fopa&c+F*CgsTn~2C-ZSol^O|-9bXs( z)ML|l%(z+gZ4T^46}i4TNR>7D?I)6dO6^;~O#lp_nx%lcEE5dV#R*t&Jr4#(zaIps?+w#da9iq zYa>@k8yd2zS!tePCcjX4$Pq_%cG?RzH+~J(Cru$5W;9$v6wUJLJ2M*IhNs6N1Dsbo zs8*2?pY2BWzCasVN$92AiQkX|v*pf?wjC{1ipPsQcQ7(>pJn^PJE-*G0YTzK;QGRa zVBu*e3oNPq3>1)w-kpQ8=ave3UL5zj;RrTdw-aVnZLjC`*(sOXg$zqZSY z=7{a)zHnN)`rhW*^!%6@QoF-Ubc0ZnSr1+J6#m2R5w~jnws!+o9kh_@vzt#t6QW;v z`%O_UgBE$A;~sJ=ONF?--7PE@D$PJT7yS@+nv3lZ=sX@dRc&7oF7q(=#pS)bsvSN+ zr12c$J%ts(XEvVLt;9=jJn(-*;!qFmIREtgG7Qu5Q;8P7aI~TYds!LCiO%fm%I5m@ zP#{frsa;SM#yP*EfZxuSM+$*LAn){ec|UL-t3V0WE#OtDJynh`xOP!tQDf=j;CE9Z zFQK+=oa8~LHKE>^74c*nnO>Yxef`Sa_sBgfwUJ&+FB=lIU=Om>x*TU6Lo$=jpJ3!y zbX*9`WoxO?*V>!M%{$CHTc_WIi(%H3S<0CCS+GHvLa+Ift(vaC{XDUJTdCOyjoZ74 zEn>v!0JglW+LE%Z{GFp|zTfAovZP<|7q;zn2lXh36Jwtcw@e?Q<8R4qoL-*{N{qCw zY$R-=y3NN}UPV1Oo*5PKHGJ#zq2wRT*PKKuzLmEO&C`- ze4k{L5Iv!~x8Lq0*O_RaTl{u6iIR`lbq((e@i_=Cr#z>;0f%sJ;8&|LSh%QCcJbNC zoFk&Zx#)0>i}#a#@5T;hhidEpC5?)MoRT2B z4~%8&>pt!UHK3&Ol)gQ zuJ=}qYgAMNg@81T7c$%63NQh+-KVr-_HM80b+~MQFJr z0FD3hVf^1^qS1?BXu4;lc_Z8A@rlNaFs{aDE>|)of{tXJ_aBYgNA^$MX`@De&r(JG zym%@4WtBgYCmMd*#_Tw_Q&4c)>j^1DLE`Kof@vI6i)2^cO=>ky}qBX z*tb>wLSfnWd-N9qYr{uVZ;S{VZ2ufeXFn;$hWVMSpFl?cq~D$8>o;gwG+>=&EawSn z1|m+6uR#4gEtKvOeSM_2cw+WAsg!+JQ|ZN+H@w#*!ts-n|N5;O#WdOdl$EDe&yf#0 zz=;uDu(d(>%xTNBuJ3*SHZZsl$o-(!t3Co6>l5tsyqSCsqPv+{SL1)uVZ5HPFplfX z7}C>Gp)|Da=iE`L@`#+=A8rK%yqG`C`7g8Gj^!OgJ`?0PvRxpX+71|TZl!7_X!lKq zY~fA^eTV`jtY%xY^u-5#ZwA#vfu6%nQ6vTbr;udp73V4%F;M3`GEf;;6{}q!wsgmH z6wLozHSqx_Q(&C0KGs98&E{wr6)R(&!tj|QFrCJZm;SaT*;z3g{@pUQ?MRol1QmGP zcSk;ul#kT zUU@lkWkc)Cl{s+0byi-v@=VQKrJa;BAqRqZE?Z(OVJxHp+K#Ji{+jz<#h-djujL!;Z> zz6DX8laB8lth>tdzXn;3GcUDilBb7kj&V{@p-5(cr$?82uIV)Fc)NzeYY>9?qwS$# zGd+mc0HTU3?1`Q@+d?@ve^p1|+$JoR8*Y8j830g6Td@D8(JE}NBVYNcLF0dQ{M==Q0%b~Hv`6D{H9w_3f6Yz zbn*tLI#h7U#Dazx5c3!K-#7EIdVnCRN=WpNIXlHZcCq!*tKC1ssCQ?}Ge8NF4CJZxvvr+~Fgz^W|&f(J=KfZQ-6` zboQQQV?%Jg!l0^@pP#>{{f=#y`S|0yBWO_E-p&d9=Rs=%LVbNk13z(ggs^$t@Pkrz zey?70L2*Qj=j!EHObkYFy=Lc9OGuEn(Z|o}Li%lsTl)Wt*?IUVr{TFrch#)+VZT{2 zxo>$%Ka_6X9Xwd%a%v1&UgUQp@oq3qNn}`79nGzpWzke5mn)?j+<0cpD_c&?H|&JcbWM;yCb4^sPo`yehBM&MOHIQT5(I@2|0gKIqx3i%(*Zb%vZ5*rP+uobaajJDm@k39>T z)5i^}!{3y3zQL~c>TJOWL7QJ9(v*(qP3N8j!r!uc)hV3?x0k%E$i1VTHkPRCsWxWn;P3tSEKWLv_ z9D1dk!f!u_Z}-w0iZ^vT4`ttm`~XF zRWMd$K`Yln|KpJQWejzeZY6>U5)%|=xLjdaz2Q_Q2PrNF*E zv<}h*6h?k_>~N!5JnD3Rq+zx*b^M&$M-~VmmjwJ9bJDgLC46%kyn0{WllMHUCCO@6 zcCzCIE>dH8dg%ENK2;>j!%w4sbV`@|*TB{@ z^FcHY;qo|_KvV#HD&hWZgq;rJm+Con?c~jyRK~WMQgw#Q(TuM_&{504HH?X1zd0nm0TtKMnbx zRj7q&0WhyHZG*Gbwl6m~b5%mk3k@(q5bKr-did3zzw95-kwvqiP1j(Fw(4QVAs3nV zp_T4qMSNMrwTKYRZzrB(#Af5?p^o2X{(uVlQR8~C;7;z#P+t!tesWpV6|ro zxTm&Jc)1O}EW@m2{O4Biq*z>e99q#o+E8R{ePEE_{5Ye&K_aHlNb?NBuX$jW5bzQ=gkYmVQ6(fq0?xscP%=%z99O z*+;QAFZwD*QhpuHa9CjPb`7KfVq2wZ=m5)}cS(q!+A$Fss#~UJuguScf2iAxLZSWW zI|ck`ZX403vB`dK(opm_b`2UiIGK5P0ZGJn%bfM0DSrU(i;|M^W6X(!Is8~=3!an0 z789zj?PO6ql}?UpJQUeEyn^qo>zMGuh3dezz`bam$AP%dXZl>G;(6(bVYL!D;J2}n z*@Yf}8}7*NP4z70i|al;a&rMf9X{aV$o6`ingTj`=&sVivqyx?TH$wNk(byNaMG<9 zr6l-i%BQzAr-At&-d}6IfMwNdT3tA~iA|L8)QB#SZ8Ifh@xc~rEv@avrIxO!$j3|% z0c2&UvxD(t&ATos%t7go+3n#k6gzwOTb zN7Z2^dldd-J?5#}J?QV{3$MdnjqeLJ>}PXsdrlVfw_^hC%zu0np|VnvH5gL^A#e{) zm)i+p^pLH9mp1!7A4YxeWbMY0NFvUbGxE8|Aar(xvb0iMNXbXVZ{;mBs+n?~+N_1a z!yBG1;*7*6IFkN)V-Jzg6XmlO4oE!K-YGgCd+_$GtRNMa+rj>2&B*PrwkVb)+8r5r z_`ozuydZha`*?Y08@NKK;=C~lKGfJ+C@uTV&Rol+Oq;5NiWxRM(_artm8*Lg^2R-C zJxIp!W#4&(8wzz1w06qJQskXuu4(y~V!_y^3r%`Vv8FXiH!A4tMH%+zelm~E4tIqAJKMhJ0ZD4oElj%_^>i+F&Z5hO7~u%G4bdZ1 zue!%7rOEm3-}Jobutoi)+UEzD=-+8V%~ub0#p+)+IHjFwjvzj7k^7eya!%7~)PZ;W z@Hr;o(QjL9P3-4^NE!0o&!LBcDfkmS?UgM4yz1-rV^)D>Gv8cfvmYG^GvWVc*H6m6 z%5U^v*kxZKz`bF(A?x_+2Xb0{F4gWQJ=*VZBa~_HBaMkxAUWyr!LupkGV4kmYuC&oFzE*lJJy45&5MCby3To!p_Dbq1oAnHg8=zw!p8pGVElXd2Z^un*M z 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

H!O+0 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 G$d=v2nHKh0`g&E^DT-5Td><({p!PM5 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�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

wH)KNUx#}y_dpUKZl~pbXZ@uI-U67K<3)W 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

XF%rN#%#>y`m6vfxT8mLq@@*~ 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

MkG0$5EzS|PN>3b-p){dm2V9N?E${WKg#2YBVy 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

DM^8Nuij9( zgmf=9xyZf7E4_D{bt0V{#__0Dhdr92Eig+|yiQ%yd>@Aq%UO7*B7vb)@Q4opO9irH z(3*tSdTA9VmIJy>4m%WZv4e3wJFso5j6jrQhck0g_T7SMmO9oYx4N5WGwps53_%Fx zj6>SdvQAqB#)~}UuJk3n;{T|=!c z#s?|ILOhfov|zb`=H7UqOV#SOrrS!+qO|rflhDkoo^BQswI~VP>Yy$z(E^YPvqjnL z$k%`ou3*>=1}%Q4o*V{#S3RwLMWv^J4Jo4YicQQcz^FP&37z^Bt)y3JSsSgZbea|h z3@{R1$+o>ADoY!T|Y{9#!8aWO8;j5U^ITsA+3B29sm(w&hibsC`Rj>1E=#SIj zRaDU80lqoHa(g#x5}p+_hXlHwAt-YC;>fPrT;wFU@E)%tO{F^Ur_}=2e?sOr-bLaM zJwHJ&3-(5b;@{AI1!sLMEwY{Yy~;r}8Hfl~7I+fq#?kGOmtv4`pl~wriM;uxW!316 z-Nd)6_^O~~?0p8_EpZRXS3+jCy3|8>@(mV*FJjR`6JQ2OSl>&J!!Mzem()j5nk5VG zC6h?c*gG{3rw$T|vMsqh@nt^yFOW|NOinkr%+UHB>lCQI zk^Q9QF8~0OUl7IzfKlF^!?*zOh1~zq)}I4qC>#5K=ll0R`|myP|4CIdW%`Hf?7#0X z6y<+j{_OwzDgLJP|D|*fY|4#cs;v|b+HcXeOQd9{n7GjP{FUSiV#ZBzSD>mGU1OF} z%LzEsG>c4Y?2D^T3@TEm+EkdYg%lhX+gFjZWw+Uuixp62V+bjtK))CcTwt;`;bA3#T{iIjVU~OCUFKO{Drr_j(ym= zR9TADduy7zGpp45!O2^mn;zMsOA4&jR&Rki(-eq5Wy*7FY4dy$>hCzOr!z*G_y!t}El+is`(D`iz)M_enT$Y9DskHYUp!k*=&gz) zm&-BEL~S*3{L=7NMb#&#R*9)CtWHjEVq#U&$9rFJi#p4)s6IJm!~1EBany0X5Vq+| zaV7weH*lHI+w^8Gfbg5yxs>-4eDXg3js-2UOFD4geZx!1y(2IzJUrL8Ni_sr3C1Jn(CYe17TO9|D_rX zl&+apNb_X(yXwUJ$c^OX^jikqSLRSYez7U1r@)&ILoLQUOY+oh}BlKMCa?m}XU8 zb9QoR4xP(>#WV#RravGlQb}U8g@AY*4++s2OCRe9@>cHMt9moQFjSNe&hDZx$&jJF z1$9D41#Ecer_}T*P-^d#U|<-lez%)cZ77}oFjsnMk1{bueYS%R<*?`RmUlukS=57- zTcT`CVK0i4pi8f%F;)~;sa&-y*#W9~Tn|Xj3{>VZl?oH;hFx~%;;Jcdk|1!iARve7 z;?bs`noI>bLaV`|ZH*Eg4z46|#aL&Az(r08A*5#gy3`NwNMBAb2)>jgn9<(&`NG%y!2#7ir; zv>~GXmupVDS74T{G-#rw1M(^*c+sBV+AlUx8KvTT$7xeNuiVObZ15i$Y(`u;7Hee34{I!IG^OudNGYlkf68__RHabK%C>zp=-bWP zN+^>>5W@zawUe5E4#2!5t;~mbvVRv@V zZQJhvUrtr{iBrmi+3Uw`SSIE^fw4))M1H4`#9I{m{9@P27Ner>HN%lM!Z1ey4t-)& z!%E5KpT}XB1!~}GPEQzCA_;0=se~0+WySl-(FMMF_fF?9VIq;;%*uzI`ca@rNN+WeI8e@7a{7>^WQg@2>8ZS9qIR4dz-oO7vpoqmYnVDx?_WuOhUK{~Ot zyeee_bhjN<0&VLWPHD4e=uL;YiEhK)D^@19p;)BeH*_mzGhkTA!myEPWg|?f8CqN# zj4Z!jF)Vu*Ht~>6*$H1%l#kSC;A!3hjbu6hipBa{(uCfcVh|40V1jczMW&KQ&Sgd# z^@Uj3Akzj}+XZ|{8ABW;lwi3hX=;q{z|snN_gQiZnizGApT?@kg;hL$qXu!LIX=6o zw0(x@sb#2+v^6AkMY;`MaE4XEiB>IK`#cMSBLcUQ#K0r5OQV!8@Qt5QgM3cq2gT;^ zSRreb+@NKcwIPMOfg zy6_tr#RPZyzH_M`NtO$0hwB^tgrz$u;=j^N7CE|UWmK5NmsdJp6x-vbDtEfOgXqnL z207)Ohzr_I?00MRrXF{_X*ZMcef{7Yk!ky$sF+sJOm_!zU6}Np1d?Yon6T5 zf0t)J>wiDR-%aAb_T!$|13G4b1<`>(1f~q$*bH8861D95mpehEa+NW;~#Oqe;WtmKnIAG zP)ID_=kBvjJlM$YhWuN7yf7x<h>G$V}ra^A67tSWzFR@dxEwH^|RKjU{nmarWzF zi5v?Dv$T2AAE&1(&xeT;o7yL`bqq$D3!F+d$t_TmHe0Hso;8NL*E$`Ky77gC7UjUE zY10DJGIGgQozjS_@1ulHce(il;AwNHhgfrxWqp~he0lP=N8u5r4VFN!hv@ySZi->G zB`$4W^HCw6(je@EP0)Ge~LN25%5!+o_!EL2kCpk^iP4#QrO=+ zBV}f|Q>CQ*B@QDFK;k&9QUw(XR54;HufV1OE@>B zUAhFxRKNSW0&c!)uIf%IH`+Iwv>qjf>6rv=gHpSn)E_^rMh{C)K zhRXaf0+eAQk`BvBsMLo6ZNQ1URvmYTu*%aW3PpwHVQ>Iw9tdYR-aI^f>5=i4YS$5K zzQA`FN4ZKJ)k&ufZ=bJi9~s|CT8f!?={z&ai~XA!XJS_*&ctKXWvDw|o%w;O=+-UU zd0qPb+cWG}GS!$A(3JETgtQBCvB5w)Cw)mV#zHPJj zue4elaa|PW8B5`V!ypYtHU6DP`K@xSV??0qP=3q7x^UxE z)+x~uuX2l)wk+Va6O_IjV~*NV-MeF7^3@9oobG{%N`?Ee1CqIEZUfQ5;1r@?OAfbbGEVl2Oc`@hXPSLG1%XR9VY|9yhL57Ga@+MP-Rc%A?6^8MLd{-?R6 z<9=_U7PRLaYNYuiPVJ}rhhJlVG&sW6f=E8@c*fl zhIy#|DNy>ysSWjjKPwJD6mS1MRfl?@pHg{fVfUk|5AhX?v_QpoNGjKh#p?%FYFK#|T-h^b+SQcU7= zistRciml^uK&65{P$vtVt@{F)6&9w%>Uy2{Nm^N{{(*@ zH2+N~!cj6N_Hm8=cXnZJDLenm^K+l=KR?A^JB;pCnqfEa?^XWdJqjZ~3B{axn8dxr zAF#jXus`mFQChjv3@!uy{4e;Y+wa3?8spcie%P)+BS!%SKf#u+(DNwlkNCjyx)+ls z)SKzNhVu9oi|=#FY6;%bL*es0NKhv|q7dv7LxrP(lQFnaOzwaTvAwYgt;J(#?9WE# zzu?~ot$z?$jt;jUJv-Xod)yp!%leqS{^w@rm*#Wpe{pH)^ZNe;e}92Luf^e~D%&UC zRXp~(G5TBJSqm@lldwG|UkN#O%Z*XPI|+imhf&WR<@~|8-}eqtj7B&7gd#1a={RV@ zTF1Vg;|&8JF}dl$bcqrF}6|p$S1Lvh6?{Xb8PLd!Rkw=V9C?d0< zN0`Qan6cv!QO%9C$G!9>1LCT6X^|aM6r{%rRE_W(wEP#WJQJVH=*pQ+bnCjxjhdHl z0be`K%-0!h{<$Ca$;}%#v)4aJsTP%b%|QsdUA#;ZXtq&tiYcP#g2}+L;=SHZxBj-V z_qu`Kws$wT`P)GZyraJkL?v%p+p0|KaQ(Fxj5^r#rQP(gv}>Z{y~iZo1L?S)gZgCr z+iyf40c8ivy{F~FNV*68-t&{h2bvm%eURdUG*{k~F)-%}wS%a03iN(f)MML6RVhqt zaLJ*ArNmAQCu5(^@MkP*AjaL5jgD!;GS<2jh+wOL-w>lf=5gU;n0oYcJ_~{&d*wqj zBro9m(3xD-)d~QF^QQy0b^3vWK4kHCY*2$w_AfbroTy({F(cocsfU^W-G0K{TQ{ioaP#2+hp0hE)yXWXK zn8xTUPI388iVNbHPH=yq_~1hTDC%5cq8}KicN`CcNcqTz=Yd%k_`*D=-nNduzcJP#jc}Fio5@kABm&EnZ#YcZy+sim^A&gMK_D>JTv$`WPUNuACT7)j^Q- zf^OAQVaJ1RkCV6H05b67^5&+JAkX4yCk>Jm27hrH6WCn`P}OG=goE}t!F-ApngrNG zVDC!l$6qiwmTtIGIXd;DGop76QzPBP7!(-0;cdN-w0&jmz(htCO24Rl<9nw`aI#vR zo;AV7H$0`Kp#iFX`%O6Ld1=xy4Naa*r+PCz?|pX>c1NeH55AtQdiTEl=AQqp4EzyV zXBLhb=c3JTzwnNaA91KiU!F}%R)68*^_P`AGN!7TR=p9rtBzKyuiAZp@jb91EoBg4 zqoFl~byYm~h=){Of8o`D22kk;bBBdc7#a+5-BW2;yAp$x#S5ZkVLu{`AUz*b+|7`( zElSf<<5S9Gc9 zj|bku9{}FM#{+Ni4*+lR*E^z|NLx${rCLB>}UPoC-|dmPTNP`4xF&@ z*inNYXc!U?uadBLI`V3rx;H;Nx9F|)gG;Za=%7+L2$DgVrl`mOfe}xbARxja0FSZ_ zKBuE@>l8UcgEKx|sUuI^#?(zLM`D(^N-StY~uI!rY{lE$+>qO*bHxQDSNf_}dOErhH|u%T=4c`!!Y zVEQOV5m_C;k!|3PBt)B|B!Vva(AEXHJ*FO26gMn>5@X0192y!sgmm^^!4pD&0dLL& z8VgTv6pt`+FCR(S_Fm1Zyh=}fK8e~nt$k}a33gBF5IpeX8G_FGnPI}|_2|i_*V^AY zdcJnJ>20^XgTwtFwl_96yy{vDepegb^X;Q2`_GO%C~>&9cl49DzvZp%{p3B}-rHz+ zn?D{LZnj$9{$XW%_h4sx6P|7Ft?xYB*xq~WJ%W0B`#{OtK*G@I(Y}WrN>kgLEo^Le z^KktM{9Jpqy|aDvQ=_uAeYA&dZtWj>Yu>@y;nDW`vz@g=@8H?t!G3EKy5E3i_qO-8 z4xyLL-OatDCiDu=yv-lrhu3Ro0#X^oIzax4wVy)8Y2xCr93s{hf_Xc=%`& zAX|I1v&mh-pw@TRws#xe#@g=M<4vly53L+luoy${BCRVS=q7sy$~$pa}kc*4oq!dK;T- zJJ41OE8`GV;pU&sw?6-UoWBp+|Fs%&avziT|E1;S+55Tue`$X1^Zx${{;cV&teU^d z@fXLB!_mmrm$m(FFG$hm1Cxq}gL`O2{pI}Z`l&xcF}?0wWJsA}%K2_Q8oXll(keCk z6+RdQ-Ecgx9(4S{&<}gj>M)t1r*#kEiZ|kp)mIF{K{HNz*Awh_Xm>bHo5RQfcKQaW z|8-@b(4y8%LvYqtEROt=eJCI@FNdZ zu9fpJxR|~X1WOd{culj9TH*B@-_R&EHV;9_UTMjx52eNakWQ4U+wDa?rEa$NTdlPm z=^;&@#A)i|!t;lrBI*?9?aTQ`Q=y7z6I~%!nFG{I+JB$6zeA-Ajp~&&Ua71p3jp`t zoCNvQ$FTOl;iR3!$_EltP0`&imr;ns3}D_PA1$f?_s3>DzZBm~cTSTqjqlmz>dLfZ z8!tuseZDB(_0Qn!Fy=(-BM(+xD3O)>eeO)(LX2^*s9@yw-05X7po>T;Ji^0C2D-k)VD1<6wwc%N>8Ah+|&g5Ace>$I=g_$8o z=5XY+8Kxdzx=Hq!ib5HCTkB#nP@$5_TDNPVqaQ}5$m=`JUi_Ml!Yh^6uK`}=x?Q~% zCsnMV%x)+zTyzRls-W}8$>_CJ;dMi!kWQQ!KARyr3+UXK0ijm$m?)o`m(EG-Ne_g7`0WLZ;;{GJ{2{&g!DZBf}nuHAifCBgJx!$2rX zqg@;GsfH45Rveh6D;P0Gxs~IuRf*2Nh(3HBTn^#TAEKEKnnU1qehLrCqo&4&JFltg zN_D3C8f&Vb!2mjLa5_G}UwvI~!b!9j$7povb5pFme=tfUe*L2>g_ja^U`oFtbjauc)vpuX0-0w~&TaHhz?69mXO}ZAbgh{o zo`ePzA?)B$=ZdX1$T&sDl(**MYz?U0VHSYoF}er3_7&n!4XgpnjZtNDpCtCs{Z@YKbA_~B(DZ>PsX@v|Se{?Ve zfop~R{l%b%s~U%Y&*MZ|;w=cUd)_9Jw|-*NeD$@s)gjmo?-a-qMBoO4OR-kXlH^uk zbhx0d#IP`on8{FU3UAT0xs=p9i?#lz8U8Pp#G zxW!l$IT52h3_4_@1=|vNR-)4(F1;Eiq&)u1-2B2#?9ztge*YfSsn@CXzj*6#u8s#r zGBGR)Q&5og7057X?Gao8CV*G6ag$EUgqll}QnR5XnK7G1GIzm}lE0!I;2@MKVAuOU z{RSWKA-MN%5eB?3}`2a zdZSY;sUwrnGD;CFRf*_}s;t8T>#u_td=x)}6_TWAuV&SDJ3wSGN<}@}!P9l{6%N=k%KDx|YX3nxeq4h@)jg(A;}!|RGXKZT)C2!d(K?86RPQf@msM7Ac&!$DR*I2pN5 z_)06!NbQ!kIQRuO$c?CqI&MdCrRBxaO1NTkm9~NY3o4X>m#($ex3|mCkgoNIr~c%( z(RhF<$4d+0F&_p|`ns5TfVkbjX#GrAc7^rrjlk74y4jJSZ$k(pPCSo0lOOKB(=339rt}Ng7@*m%nU1+H*z;hYvPq$Pzl1oSU84(A>g=*ZT`| z%geMx%U6V5YGPZ9^KWS_D1>paeow2P>`|` zdw9NpMVOH#ogzWcNA>x{GI2Czv4c1buP-**1D;e4^yHV5x3mK|tW0=$J#-YQ1a(4_ zci+RU^@W9nudjRmoGpodj-&EPI(+bGqF@S40bo><{y;z z#wC`^+1p|2AB@{KSlnEpA9gULlU?mBxatQ5{I&IDZLYL?csajR&c)&N!h`Z939pyt z%2{EnRnBT!!Qeb7pQfX*7bKG~%LOJNmJ57c4jqPnauCRYzKYAjfwgw-%EObV2}!4{ z=VwP-8zJz~NdH25nrB{Z<+MEoIvPxIoo~~g_oIW$P~Ed zFtnZiAZ~+`Wv=I#GP;~o?Z64*Cx_>BsH z-t{kA^zeo%hutuGuX=k({g|vfFK-tfcMtsTqd3=ox8?raQ5?xe;{iTD8NFxKLp7_Vzogv7#nO!#+?gba5`C+gftQ^IU;91~D?t z-BCmLZg?UUGL=a1kK4aw>J%;QqnOc?FYXL&3Sv7-;L{(u%coCMg$+Zu5vkrM)P>)) zR!`hBbJC+(a-g#otHrfnab~6+2Z#Yi1YX*v4#WCX5ohz0Wj#a0d*|lEa;o4Hctn^MdUvrzQz#D&5mXWG z-XR9XjI#*yG{SCeg-JTHkXE_1dBCdO&4bby^!&_*0u-h%Yt6&)4lgJsKZgrJz28(VvtUDcRqNre#$Ok9KZj&y~ z5Fj`%MvRmX1JY$<(}8MJvPn;2LG9h~769;9o;%;T!D-m>DwWC2D}Z{r;eFlk<^cG) zrFS0G~W?7K?=Ro4k%;08Z8Ev3P*YKNQbqFbwqdEIU`Gm0#2?>53))F zi@@*|kQFzBW)L{XTQOVK_JdK-zsg&Ccr{H^Gi@~ftv5Wh`=Mbp+2D-L4D*47tX7Oo zjxr9c8C1>ioFV*(>bk;#*i-53D*PvxXpKr0a|&f%dMwJo%P#EIB1^1TFU@5hltHV+ zTpPB+RFw(K%WOj#A1_GqaMHaA!Z|wWlYYxCVyV4U3(e2C*-yQqZHe?tj8Stl3@ z+eM+iph0L+y_PScwQf)ZWxxW00pT59()lz$iFA@BjP~=?#&;6f`8ezryhW9vyggsY z(GaU6)%(Tb_lxTNQt|sGc;BH*aP%c{Cez%F4&C}5#jo9rNRNMZ8`WHPXO=D35lC_ty%k^-FRG|!jv_p{ z#OAll#c!7ptSBv_b1{TK48>_t*Lbszlj(Pgs_(9?<4Tlk)y!H|x2?2R4i zNz*(n@f{1kq}!An()p4Fxy4BbZ_u(xmy0!1z`A0CvPCy7#%3$j<&XZ zAzQCVGt9a|(bbv~qC_NKDQC&KxBTz?+h(&V-}mZ-(d`JKO8w!uUE>=&Xue+cR`k{0 zbvV(|9UcWWg6JfRAKVQd*14g|8XU7uMdU~a=;a|s&?tF~F$sfn7{|Dq*4gqX96?Dh zXBn+_--dEifaCM6T~6wdD~#e(gPD{mHJ@uTA|sb>OlR?1Yhxg~Wcwgnj8-|k-#}5g z0J0f6$PaNCn0yY$qsDx{lsNB;v*w+Nr~Jph-W8ggPZG8LDzXBXygCk7p$Zp{tV1f?1|WC-siUUSa_y z2jp_cvoGm|J18lJqbdULFz5xBSr`+1IBf2MP`(Z_de{$Y)xY!m7cXkH7cVaE)?d7+ z|FsI3nqJv6q(qM&S+is5o!{$(xUle`{EUdPZ!-r(a$OpV(~mLcr(iHPc~BvWjm-AQ zthhmK5)lp^Jm9H|B60e`ZrOc|yOG*>weGzxR-glmYQDAXiCD@Osm#Zj)7DCOT^ z3RQr(x>8mAslg|X24-CK2VwuJ_??`e%qxC?uR1}$KQla~y-}YQ@P)XZR98xYxm88? z!ns_RcqnP8*RYpX-KRr}fjom=Np6?#i0dFW!e}@iAq7o=3Q|_u<8KXs(wt$R#PNT& z{iNCUf4lL}+>sQGz<@r*(nD>PHP;P2)Q`6i)k@U2FUHx6?{Uc~5-(%?4sX4fpi1@| z%FPk7bB}tj9OtTjmDW}Dw`!r9-CXxn{RMwym(<$>-$&>~5Vi&abrcx9)Tk$BXr10pIS8;`qo?tO@@_RA zb2o8zvF@<6+lY6(Oj){6%O*M&ES9o1O5Nm$7CCZwT1Dl}Mb3o6Yqn|YvSE9}6{)jD zl~_^c)Y9M=yJ5tlqVaZljgZqR57CrY6X7_NmlV2YT>yWf;i%}u0qQr2N8<#c_9W^A z+8@pQ*;gg_m-VevgVHcMS0;81mYqJ0i;r?oD|YmeOpxcu9i(KFU7Myy^a%>d1f-eCP6y6T8;ZH##ojNa6OqM@1+(S`$>V^H>Z zlyA%iAEWF89iXorJM*8$Ax%HS4&Cl!uZU<3FZxD#o=&YOPciB>=LNKYMZ|sQ9i1le z#l0a2NFCmS*?kxakFhJD1$Qb!XA%mKZ)+^e@Lq^*$$S}@te5A~396)x=98vEoS3mg zViA0yB&uWb_k``D88qoPVi7%%L6T%@$L#|*k695%Ey)u-gXP(~iu%O=<^2gT#DLt- zrd=ZijNwzQ5gT)q?UQH4CN_250<>+>upqChJ88%dg z+Je1}_H~^!uu}LmvoV~9K8y;6CE*0xS9o&}QjU+nd;MRp)s+UR)2H9pi0CN~sN@}@b;sjrjl;#O1R&wHhQ7uZ7fb`9gUtMS8y%=VD-#HVRc++Gxg z=>X)G=(jMSDr+NHK)$!%|NZ}QT3m$+#C`wN?&4{jM0V^-tHOrgm9|?W43ptK5BspZ z3d^Qc;(`ir^Feq4l+*H)U;JW}bg2Xt-i!THuXT!t=d0r8`{UjqZUg;sc^`4_ZTRQF zFA6I}P~w-_`&4=tMh<|WtkW$lJoqi;w>;Qz06ekN>Ces0Eft4$<99{*S^ibC|NQ^{ z@Bg>|^S@CFpq8D&$4c9i&)U=UenLd`<6g|VoD>fd;~}50>EZ=#e*m?BRyx~Diif6+ z&i73LbaRA$P66~e1<>adK%Y|p<=Xt50_fi;1yH5JDG()DN##?8^zGx2{-B7y-1eUq z|NVpF|I_g`ZT8~HeO#0OXJILy|7Ur2`E&gLPw}V1$T|^|@7**0E)r%@9bHBF)9D05 zID-aq=!c_m)@=q3vg{V&ddsm3MaFqz#5O@0N0SfkSriSZx=-m0&KK)N&UqzZIYHMD z#Jp3;$Az-ZuDB(Rlx0xrIFplHnpnj#9QLowWMCXwy=yY#4HU>L#~H8GhYtmO?b=rqd=Qn6K|7v!kZr@Gy)C<%~`ZN z4MrBNWtzgo7;JLpQ z^vwHkJaS{JGKjn0To!lq0#Ns7@B8ZSgXF(X9Ki$vHYSUJ*X4g)URcPj zdSV>rA-Fi|;xX&O&G!mR!@F;vHUXw~H2fV0`zPE6kozrV-^5hoHHAuSq-z$S9NU^xM^tj%V+`W4 zA_uehL?Xfm?f+<*b)E9(Kd#;XXXlpk`JWf&7C-O*pWv@d|MUL&#k7ryonq{tM&AAW z=l*@r`X^p?JqNgE{m(7W<=6lH+4;}w{}cR8lK;i;IOS9?97RnM8}WGlrX9^q$7Hj*P|DD7lm`8i=Jf&HtlboSF)P=Fh*NqMsGOP%7`O8F z{m{Z2mNHVK8^K>t%6M+&#Q3y{sd1%X^)ZqqA1gGwOOCA`vbjekBh80Cn>4r1{(sH#~t=rwjr}Ie-7ZIJ@w9{eObL>-4{s~N@;&@9_Y zuMONSqJ?hOmL%pXO2ZXe?b{`0OcCqpthw_xiCFXi(XZ2KaGI1Y*+`RAPj#X4pOkd* zt?6P?rj%S4-&$Q*sbb1{S+zzoIk8N>r&YJBYXoWyR1gJ9 zK}Yr*l-jKwCtXGNH%tO2%H}afAoE_KL~3cPL6*eInOFD-??14?%qx0U7iktN!lX$# zB1qMmdbaB6R``{DrV+4kHl(qyzS0lB(N+Hl>`j}jPgW~6C?nP5R22kJZY4K9H99>u zJ+eP+TvOx|{1+Hk!|MeRN&)(k<`jzb<@!Tr36HA!eu>9s9t zO-Le?m9-8r@CqiNP%LP!u7Xp`Zp*3U%Da!GfZV8I{4w5}S%DR!Puulr=`6S$=<7Hk zS-IrT)RX*o{rjNvp9Grxu=C&C{e{`N{P}Ng>GS#T6Z}oo|8t~5R{uZpQ`qC-$+(Z2 z^UEOyT_ay+RGTXocAY3Et&kHpo*}cbpma2-Rj>N@8vGsmGrz6P{QUCmix=Iu$6x&A z#f!gw`PJJXF;EtE`^K~3Few&5P zFK555-@#wAUHtIt_3xZ_cj0#pd!C)c_GTa8M;kvn_z~d4xfA%fe}ZGVoS!2&=NItB zQk$V(>f*2a!H13EEdXYN^0f;J_i^%JeZb$H8)AoXTCe|Sj+8!VtRJr}x1|~QY`%T< z_P;);%{w0tym}n~f>mK!{8)(lm`MAG2>W1UefQUD<(7%VUc}bETUk7wo%#CZo4NUS z@PofEysLlrcIkL-X6dE8TzvPoHa|ZPkG_8S7XDp;f9cg*{Jt#3=HI=YzkfVCr(WHk zpRMcG-!4P@vvYIM@T{tBy!<-#}hREO4axGUl!Z{`I>b-%7n%tKPzO^#EcjjWO|^!ggsa>d&0K zeDmPljQ+m(Ze~IMSa4tH?|>iG`r=JnUvyf3@U`E5S=gV|$I?yvSh{&1MR&au`?&VI zG)~dbOB zs@xfFFyF1f8kZ*MO|bd$n8gCOBsOnl#VAGk+RPRYLuJP(gyk>a)vWR`!Ef!K%e)d) z_Kd<7k{;~Fupg#(YJvz@x!=8=gHQT04-GEjv$yk0!~^PBw(*BoplH@W7?|v#l!RbE zpPc~#LQtiXOcWG8{<|rRGpw>i6c-)Cc>)T! zc(X9ySe$+LRX18~-u-Hnz$Z4YGE)@O5-n*U&j&9-g72cd5C4Fy`1b2r{4on(2@5)V zMR_Z*6RIj8+ROn_-$(ieIfuv}+ppJ657exr%Z5`;9dcDeP{igdHH6xu{{5- z4v%ZVg03%k=lDhQ)ywbx`Wjf|ftUF+oz@)AGS^sqw^Dy|zj6Ov_VL@If^$%CrR2@> zyOk;1SbA5>6~*WCWfc}nDlC*$SSYDb3etQ@g(a8uQu$hOQDDn&%ii68_jaZJ_9S>P zyW$p@r2_c*<*{J~Py;Hg)K1{9wlXWt%r@o_Sp26}6Q&9>Bk|d{bM%~rIO{8j^KTXq z9aEMsoq&};tjju3?6bq2R_8Pr_=OaEG8(=eb%t-p-QnAdH2v-^MPK-?zVhPUi+fTX zlR`#jrCHTqwC>hcUbJ8X|4%7v?8|apy}0-G#dmN2QishVg*{)&qY9+3{7MbwVW1K< zip5O7L5_?x=z{^E=q?& ze-4g&mv3+lzN5M`-_3ldaZp^OE>luch88w-1V_iF8b1-2g%2W5{EeKv)!HjZDV@lU zXFS+>xRcF=i%rEpgt`Mt7Ty-NB|D0AwY>~+~P%{#}(E0pqX<>gB* ztJByOmZjWxx-2DRNQW3KzMw3@busB_XMO|TOx(Z9Wf;U|SDxX(y6qcuArh=pAD6b&J zs9s*>QCM%!s*+cK6i-M*20@p3l}BN5Dn=FZN{qq^RxwpAql_r4M#ZR3UV%|qM-^jC z=M)FUn8spMA%D6ptl$=-nt8QDVNG3(@tspZ6ysYJW8~%33dP7%#i&wVTTobui&2gI z*}bra6k{CZ4(`P`P{pWH{y<(>NfqNdx#M?n9aW46lsjA(4~UB~E6B;H#jN0Phl=Or zufpO`jEd)luEOF{i~-6CRK);EF@`E9R24%-#e~AL!bo8aTV_%9GJ;82JzY%I%LplD z^-QsRMUq&quZYF!AS(RX7wG@ue;;K3K|5{S#M8vxTA163dydSU{O(*9yt6y>F&R-ZQlksPfPGN;a$)3kKs+ies>n zZNDo9S!F5a)VKx+0+2K6vL}B?p$LZ@x0xk0*#C>c)Qvi@-Vw2m6(|;n1>)Z8zvH_X zwOaE|{YCw+uj^_6AA)KEwiK0l4085!J1f1Ny!{queRq=9OWOBaR$_Pc-cIU%%gO4_ zC0b5C_ggBVyVZQl&F6lr8b(g%9_6o(4*d&)fReb|1xyBaXdP4RIUwwYQ67ZLY$5;B zE#yv$OH4N*p_@`p2K9wnJSxLkwY!*A`>pzd>9rgA`7LaO%S>t|Gu6eQ=rWU9${@S2 zCA-X|wlcI)xWvLpEwI=10+K7NBW1ASU9~cE#8!+0Dr3Q{K+V%)Vf{?8qK0zxTHKIZ zEZ30QQ9GHmnbvk?1x2#Rv_MuvF#rVR=Hc_*F$jkys>NvF-N|-P_Z|nMT4Yi%*1cLm zn+=j2D2&)>&^+9UJ7?&X)D2EBYzRDg7WL)XIS7U%v%q5m^D%bu()fyDq3a-PxsWxy z&gi^II8|WfpfW%ez=BazN9QW4Y!>gue4Z2dacX5s`tGO9Y;Z&U!AVJ{Yc=J@gR|t= z3F+aaJB-I5-D568JDqbj`yqR{bvec~N$?o^qem^jW>E)~&&P9|9{M#P6#KeRCk4B{ z6-x)prgdh9IRvbFUu9?HjX~iGhX$TZh;<2SHvyxK_e3dzT(qG&d#Pk_&u&+AzkzFa zoaEl(`)7wc__iDReQwn%w4H9iW8RO52?f9ATY*iF6J|t$5se220q3jr$*OrN^Pgs6@Zi?HGQTbrST_h_u558l!Bi&VN^fjQQ5_%)=Cn{c(BNq z(HcnJ@J2-h1hOfrB465F{+6?PzW`*9zbN=>mB``MM7aP%Pm5 zKrwPI?ZN7D#GNXAXF^LO?S$DSh)V-6V(|S?UCr19w^R4VhGrFzPkGVY&h%XiQK{cQ zDJY|_RhhRm;51KNP^Q%)>PqQ?BR2tj??DXbq_eQF@O5?q4!73vu~h<7gU931&vC?u zWGP`i#=_gJ{e`*ZWn$X%hA^DR*>VfT60!lE}CH)Q&R7^J-jy#@BJkW{G@Yw4~KS-bH%cME&hCr|IE%V zR^K(KX1@(3eR@Y<15;y%KOb?82dW0JrUV3{4p)+2AXJ!&f1}T%HL3_qSasC{R7zL9 z-~W+VeQo^ApHgLBRUzd2n2K}|Q%(Bf`2(!p@xurRrq%~}l3H!?=Poz0tO4%EAbc{k z_|<}RgFg4@pV@g0Y1E7RQUSl2^857pc%REJ8kB^+u}?bnM}E>CcNK2%@k}t9v7bI> z?C?a)Yqb6rByB(ZMP`tG{rluHxxYn{=OVxpIa6&d!j<^c_GrOpe`N%)@2OwU<=^&tT`hl9aN7Tuq zC*0TKqN$j`3`>$$fY0X(!dQsXiHDIg8GHsa4$5;j~??}FX_2X27y`t z36Pbu0(Kd7Oi)X6x+|EQZk%#Q_#LbG+zYLiM~A#AEAMNrd&C=|$#`Wn~SimD>?nFB>`Xm0_;|dzbaX&l{fxr*?u$xD| z+<#!EIaED!RVoAU{{BDUu{U%|cBT1!{^T(%>q&`Iz%8wdCqeRC(2LK7PU%fBgHM0| z2R*hBLR{d{Hcj;GeLc8%lwSC%I)69gd(NNCK<;b2$K&&01RGBuVBm`M0A~32|C6fv z1Aj8z-q)x}{NLaphp&>~|B;4$)7K$?N?&He`r&VZOfh^jU{}3jG*4n`*FYL3uBV+7Ck-YPnx#5 zSv8{FD?b|e2|kpsx|iKu{*)Se#>N0xH{?#}tAT5qdCWG~cwlG($3X9X{|9|HReoZ! z;7;_Ox9$(xahHd}-+P9Xo<8BvU9Pii>I6v~M^XpAkIm9w-{nv4M{jcLuzb4G3w|@@ z*Z6af%P;Ek?b!PvNV);naemPfT0fwF<`&FQt_HqEGm4_uVP}IEIU0FN7+L>`N2fQP zb=c7`2+P_D3j>G2aNO>P9n;|9@Bg4jxEMNA`b5M7O$6&(JSzHUPVY{wB=mOt=!}I6 z`^U~x{#@e<8V#pDF_NPWe9<^NqFv=^eS-@>(1pW3BM812Vp%6Px&DOynbVsD6k_g% zUo6P?xHQj)-XD(q@B$h9L4w?qZwjde1_)5>z6K^i?egpA{3&f3coUEsadS2t(>$}8 z=K7EP$walRhY)vSDEKr04v1Ra{M2&+Gw=62DV!yS^>zMy$~|aeKql6f<-y-ARPFO8 zBUbMm>%ilZ*nwg|XAQldKIJvC&y=V4fL;G89*t-Qt*<{3U)|+@=I$@)UO-s1`=Fl+ zUyr$i$6V(@u8y}64B}1#`)bD!I7gRun)5xI*t@^~Lu%2lF&Ew7zL*#v7%aqRMH2!~ zv#5W{4KV8UhP4jIW9VKafAh->@{m872|mz+Okx0#E74aoVJyWxIb_E1wUV&b$89dI z{(Z)ukGPnowyU8q*Y#8Q$}3HH$N?ACWb<3lIW6EEqt5B?|5Kzf8?!u~pZSvnwE5Wu z&D0|iOHo|3WUTM$b90Z2E3|C{xVN0)!wo+Q@VlN^YbZ`~11fO)AhgJ7W-ZX^Z^*fBZTIp>UjN>3DOUKc8_O z1^Xt5kADAL)yw>B(M-2?=%4v{1^Xs89>WIS_a2V{NE$hQ`~4q*_xnHeTZ4qhbjWnH#Y#^`F40_ytr|oyo2?_Rq3CAIPvRiI0=M8S8~^@~>>}KvDcL&Q=SCKFBmFaMz-`An-UTEB z^G{z=Emg>7v```*>l3rx6H(t5Z+P3f;jaa2QdhKEW;z4;-@Y6c>$+CTb6wM z`#-QKvLUZE?&7gm_hTyXOEZmh=xgym^9x_AQHH;en6(vle+dnn-uj+Dc`6p?b?Hd$ zR`S)*$<{W1@}gW+bn^TEZX=Oqo}Oe-vqsz8+72%@y{~U2K5VJfFnu$<9r7oa*N042 zNFiy<`Q`B#B+kG)f!e?Szx*)eRmm733FYy#EpB4bZQ>yAU%?bI-O&#`n`B#}h7PEO zgP)|K2W~?&k3nKi92f&r(}i?dF^H1HPU(wgjgQy(^AVR;6DRcO5S%8aP5$I1qfeoaeH0kX;OMtiYnMN{BP}!> z;J8tf($L3Y!l!x6=V6wB4_f@mTZNVh9>dAqkFE$!{eD340F2UWlRue(>T~4dQ$-}F z_6hg#6aHk<(wpn!unjXb;&Y7qW1ByDTzb=d8YW@e=NWOnZ}aCN7uV1vLBOQ`IQjj5 zTBOd$smF)33oPhU6_(el@i8#GNHHR=wZpY`xYnYnrA{OK)#_)1Yiw{0J#N^U0$^xE zhE4x6^$xf{`e#A!l2CFWHTd6W{JG1;mQAq{Ojlo4tNbv-IO0#PrO#CPy-P#0$CI(g z74*1~4;YSMb?_5|^%Iv@qkiItJX=pdzL#%D{7KWdptq+d0Xonze0^@lb7JmT8Rx^~nZ zCq6?V-*p{6>O5h!?1Db4LAjpy6h5Sq_2VgjKIRG<#BtQ~lPgu+)(Jd$#-BVNnz3(p z0!6!wCbL?%Tl~qCs}F6Yy`eWw;XVH35$H1;l!-O>rXS3`b+rxtWT-Sl-A?c%hX4)S z(*akaxAv)kOVWuz+CAh?X?M}I`>V9@tAXKfT=s8VR%0eHm`O62+2k6G8LfNUP7^=q zGb$7R_y0G4-C-;qa#@X-k>96z!Y?*Lj`)*^Xu%w1e*gcBaB$n_s0+h)?h|t$+~&_8 zxV{?r_x`{a@fyGW{=aPT`g@}H?^*e~pc(D={*YCx@WtAuzCYkkMy=tp{%`)-sk)Fc zzl*g1@c^)`2eS!_!WX#-r1i-tkvcqs5=x zgFYqg_@i@XLTGyv+f>FUvmIvJi+bY$K-A?Oe8t;0Lu#zS++nr&;=-({a-}LPueK$h=?hgzY{j<1i z2HjU+SwQXZCj+%?#tky46c+6ntIT*J7Vn$UCL>mEaB20+jNorv`)^#&jCxF04Qkx- z%c^(CpVHq0r(QTtbu|`k`5tYTZ#x(DHnSUCh8><@_{MO_z=c@zOoC_lTSn#yA;s zdG+OxKZ$yl^eJF382Tja?7>9%=H77cfIoM*_@XY32l0$j=m1vr%p?1jd~b(8H@LP| zu7czY2Xn%!^PTv``ZM}x$ubrYm8$tdCDtBEL8Yu}VMg*@AC@HEJ#LIK0r(JpS&}}l zSFeVT0eyJhp<$qwfQ$XepNz-_bLkx64hZLJ>|+ysQ*lkwDW&DN<$_n0p{}S98XE*7 zQ-qkpqs^zFcbFNotzoY9;;rKG(X=9c@gS=pD{E{_nMpU#mPzBKeO(R z)D!zSxwpliPr34K>2yiD!)LDXLsyDaYr9Y z1rC_I(LYO??>~#eQP5?zPm2CRapLWdNBt|jrpoogXXgQ&{3$6kOn4mja4|r)_#3rE z=?t`KEoN3XJloyoj@9bi4Lb=R5WU(~&Q%p@$ge!hynF8!S;ZLSjy~`Z{nU9%C_5Iiy)dBI4gB@li50-TKGi{ot zzH5>@AUZf$V{*{83I{Nu16Fd0h%2+IXmq0zy>vv}+So@VrN%&KJ$ zh~N*H?w9n&c)-i=id*6D1_F|*4i4#`Wxc;01iUF6pgQ01i-S%6Jmk_Ehj<}89I`rI zGkyD^M(Pv(+~Ec^h-d*FCX7`3J0a$PFO8S=c6Sh~H3{G1o^`#<+tC5vnJ(+y4oz{# zJ>JLEcQdFXMgje^oKb(xJPOm42}IB>PmD5*2;}kJBd)G+aug2YWCo5fEHhd^%{}`L zf3~=$26h}IqZltEV+F7E>ySTbtu5>0$=`g@lhPO6!{65UlZU4FERd{7>@^zfXdf8hx=SbA1w~YX^O@`viPYJZRCLO_>8>8>zxb8 zif1Y0kY(8AMYZA&FK|buSM*H}^zb=Owr5!lJA(*(kA0@o_0gUx=bn5H2gPAAL@bCW<)#|1SZ1#mUp71A= zxZXm!`{3*3uEGY>}?qnv*SLO7Hu zdA0Z~w|w8sbL<_(10Ef^N_0ZL1dtcM{{umAUL5h~0XL*CIQ?-q^wtu;t?WO2JO-qG z49`bK3E5iXPhP7J^c3RJi5X;z&rKGGY!Pj>SpBwaOz?t4I-_qEKj3>%wi{j6O2<}k z1yV2UT#RS^%WMxVLTu|N`e#|2>$Px>eQzf~vwtjL{nnkbF1xj}$#pe?LCk@zGm(n) zW6ZbrkNJ}jd4E=8q7MhpGZ`0t|8;B)twmdV>xZXYNfGJ~AuR7bzJyWVjg-B|pSxUV z(dtN9>*9B1t}7jFb4PnzNr@jVV8e3I=C4+beg2egjG-jnakIG@5e9r?`x?2sX1ZW& z^`ChK-q&i$pTj}hZ(k7h)OS6wpP%#RCfCtD4#m=WGaWj2gnYW$Y%#|5Rw=jeW6>4E z&n_}a1)tC$(^PAN>uQ>!vgX!?>*`7y{K-h1S4{CaZo>&0;-7*%bcdH4e)Zr`A9i8g z3-Qyd%_j^s{c~U6Nwvswc))Ze-%ZD~%v;aspZmr@@7(XV@hS^f`}f2yt^yvkdIPk> z=L_@RwE8`N@(k;nq1FW&_liWMf0$ZyNNYX+nQLjxUBI@?eUE?tpVpy{uYFrGt7a>_ z2uHv1nV2hq7-Zc|JmF8Nq)Fil4=u!&w2p^3gr(I1ytjc-LCGMp*Yi*O$tcu2)RF&7 zXe96>zpH*4vFdyNxYt^i-G;`{u`gsX3sK!AwCuFv#y6t{f=4j+$r ztKg?*SV#QHpk@z+G%uTjFrhPdX)0iVDwn~xVJ`gyvB0keSMHR!cxqc_^X9m z8paXdPu|!2!O=K53$D0A;&9ocL$1JcuhooL0UaFl?Bj1_o9_JYGOBr%e7$5{Q3Or;nTWdz-($+dd#8>`!5TG^!4T2vhxS(eqCBcYx9pI$h+vr1i`F)T`0qff)e@anvgWM;x=3S;;V(|c& z{M_E<&pocRpt)W28y>qFo}kK_Ip%-#K5+Eph!CYLKl+(JnWFRw&{YZnRN|aw^8lmi z>E2!=A2m@}i`J*bpWL$1HfCHao;6!dmV(5uqDYNoyH;%TCr^yNN_qrq6Si1y%TI~r z*}wIqKHB0>21%c#o+V?Y|B$a{`OqXiWA(=at%`j1TRSkD%>MYd_V52Vb6pUh{mh?4 zM-TM&^aIGzzrisCFiEaPq_oSeH>;Gr&e~Fg_Cc|K{$Z0pnK1Nj_T2CHLuO}NU1L=Te8Zp> zYn$u|xkWfz+hNzwU2%_OkH!5p-o)6;@)^H-&hLJPdeF=xzB73wzIGezbjG$%kDlzn=lTYFcd#tA{zQK9 z6$sDcIvawm@3DROKL29<%Q_petv{20_#Knc`p-|Pr;YEanT@AxvCZ{21dL5S5pA-8 z&E^q}W)t^fc)9gG!MKH15%BZzBQ{K9f4|4<_4s(3A2L=RvyS{RUwc0Oi9311TgMZ= z2ztWS6;D{OdV=Pn=ytuqmOiW?+vW?Z?Z2^E(INk8@qoVPzP@KSf$veP2~VH$f#WF~ zk| z<{e!2$6eVi_xRqJvAxSmvt5>Pc7Nc1o^#0``O5T1zP)A>ZBP&yWWLM80*=zR4N9+6#HSi<5vHZvs{o_7Y zKj4Q4@{30GV~ZO*qM`oC^4*U={z(1)w8_)*Gh_beT{(awmNXw-{(8ZQL4f=dHe=ZL zdO;=-fmKw+A>iNvZSvCBD85`YPQdE zHQR2@_Sq?%v_V2Bs(zC1_$1SD5}x^flonPer#-j&nOps=q~m@&TQmLDt;sPGifa!} zbNvq7+JjRc;}jKDPVzt}Ze>(SmelR#>PFeRJ-kc|imMN@)laW7)yXlwc+_dGHktBT zwbRrel=Xd{ANILh`@9ro=RvM+kf|Gx6k1gIDi3yM&{qSTl%l%7@_RSt8Dt9|NL4smg5UR}r<+H~9Fwi0GqL4)aH+{O9IE~RsfgW|y_ zIhtv^>l;tradF*o9`QZ5uK2u{RL`-~!BwVuQno-lWXR=I?zp774m%Mb{UOH6gF{9M z5S`Q9Lhrcqw|)v|sU(SuYv-`n2{N?yf_q+5xj_{ZDk{{q}JzM-UQ>GY-^BffCSt!ndXB1YBbMt?8;Z}~5C@ia-BYL_@ zcPgjoYFb!3PxT#_>erK?81H!=+i@2gx$zcN<%9;rsle^t){1!(&5U7f32T@Kq2wbi! z-wG=ab6p4S>~E&SAn~J7;j)F@H&=a>sZO4=g}4hYawHJAi+=N>kakY|9MmT+)Z~6! zyx>p5UviayaVv+vlt6qE<|ywZ%+!s_Nbe-SR!-ct!lnVmb+2-DT^6q{?Y5GzY=1t< zZ!;&Z*u6FG`-T1Yf*i)r+$ATznuQ(rf*gbD2ASIEJ6Tw_pW9b@UAL|u^pW$nI`N2t z?C^u)#&T28bBD2=l+0eQpIc_Veg=+yShhR%`Z>1KbJ@~w8ON#1 zIG%(UZK$Z~Ah+~R<4jc$i+AJExUhPXqrB7X4ox9D3hDNAoQK<;b@sa~sUEg-u!pW- zyWMLSB8;6i+?uX)~0B zL_-&E+tK(8gNTj_tLOPt7-Xsgx5rRA;{b$AZI)5kSd`KvwR5C@mSnpgm(~3(SNAMa7rko>>z?M+CTFhN zM8y_+dO8RSH7{pjj`Ggj#s3r*_SG2BPyZITk;8m)k!d5k@)I`IEo>lvn!Cz0K+dcW zJ@#=eY$VPj!=>b>@t}AL;ymT_GBu-KA@4jZIETiWs!341^v=e)b$jMYUikwb zhJC@`irdM;h;TEdMH@Q*C5ef%g~S~;eM2974>+96VMOys2F7`i~nx%kVZKc(08vEjPox1 zhOq>r-vSy~T6}iuk8?6#f1GKt?aw^*M?PAc6}FI*{rm2kcwDxcF}!$IH|KIRZHrWh zj)9+3iw;gR_1T%HWM3KN_mx3E(?H+9qHvsr)pJW?5N4{!#msz=zg`+7S&n&S&s#{5QIzl3om+Hk3{VH+?OjE2lAb+OUubmvuCVDi z$DtyZ=RJzg2EYG5`&K&-%~wy}7B`(+gi%}!bz$|Z+_oIK!pQn51_r|OcM zFNN5LQ$x0~xZ^a22N|*=8^-C#n_HTltv~cIs%e1UFogq*f5|uM3J&|fgzbxBfRcP& zm*Dr4@T#P0Zs&~$nX2)iaGAwvPP~p?*0!If0V_lJTcLoMSaZcUL-y%XHSmJV_5nnY!r1I4)t*!*LG( zLl^%CGJDD;J zZ~4V1y)>^_Oa~bp4&svT^E#!}C7IS~92HW3npY2{-7NCE#ZqCKKh~x$@w3-gaowC? zmyR-ZN2hT^N6Rd1WSARw;PQ^vknSE~JM`00SSIPENgfHE4DR8WS~~klPL4_4jf$k0-R0f_PEo4kN-y$MbCK;C{o;!&=PCX?Q#mL**^lzasF5qj z96`rrTJTZcB4^}hY7fFf@nn?O42(vZs-t2fyHVa8XXGyNqX15(g~x$WFQ>^G^)lW5 z5*9M1Q7_+ZKT{PB|8cLda^4DL&MAk1h%)d>rO>|FKJ=&%)m6IC*L<+0l=uaq&&@RhXlVD;L*4h2664<|=Xsd z(;nHL!M}xVR+2#M3TUfq7 zzp%8(&*zu!&qMi7fdCAjmOz(D9FHcIyY78!`Q%Y~1F@O-@m+s@C9X!@Si=(=k0ddZ0*tbAhQ@QmrlyFT0%C z-hxM(m6Z1c3XGU+$7OF9cX(i;yj+zpI57z{^O4KEyd7h%5-a1G!D z4$WX_8<+^7tRR)yQr+_?vG-JuQ7{an1a$MO)m5)r#V6V6!#1$3EohY660&M;r!DLd zM*j{F;G$|h9t^{NP^MI479U|omA z1j~E`ERH}9>*vs@A@~@0q{iM8ky$+c^+t%CfWvk?Iwka_ABH~%ZP#N=K-Xkigy_2Z zS4Qz1PQbwqx{h(5&S2nVH}bl%7sVsb9}WXx4Piv%xxi{5R*VEV-OOYN6=#6Ss2=}4 zOU9)$CDm>+JCES)*~D?V18QS=Ye2gG4F>c_jt8F(cjAkp;aq@-ZCIMU`hkFnkpS7q9vhpAbFHlX1}S;1NEtJMjSyUarya*~^W(U{gVlqY~^jsKdSBVu!lJJ;FvT;}OwX zC05`RMqVJi!K=QwoSmJ4kFVkXNAUkT{J#kg=C)p3-rs`S?>so71cjAM89fz66R&wE zPtt)*dcr@8_D#J9hKgMY?{ivkw#$ZUuV`g|ARS4|Y8;zs#~%g;{%;!Iw+-(rnzbsE z)03m!9S<`Nk3!@?=w>RlRy`D+n*579sqoO9 z?+1VZE>K4Y-it>}X_k}9S4*(!s%28K$di&LFX8dIZq|;`zX;3HqF@l~& zU7&OH#65~J-)4Uuo6$ zig301t+#uH`xc|Fu*2E}Ca?BDneUq36T?y8{K~zJVG#yN4Yz^nD>xihJ@}ZJtJmdg zm46BvG$co{0WgDx%t&$YrI;~j;IShX1R)|17jIeCKXNIqatr$P zUcm~Wu{KiYV`FHa&>%HH)ZV8480>(4DW>x!L-oy6zu=6 zkG-#6t=?UE`I;vkORW;mpy^c|=yvkbf%G>cQ`^UYr{%r<{dmRi1EXAdIn$inCpA>s zo%DvxAg9t$5CKTeATm3eDMsM)u4Pdtz88wvgPq66gzcLHIF91fqem`10Zsr%FMJ9t z5=A%Kp^i|G5ThWCk$Ke-&MAlDaUbWqLjgT-BuM1lcz}a=NEJ>&;wI=ZC{_Q$zjCSo z55m4i)Ag0Fk6mI9>NEqJ?O7CGM7RM1Wn-Zk00kp0k3u+0);L}io&n+rJ|6Ev7xku% zAPzTu68E7SVOaoIGN$~H&>gow#DvqhH?MfQ$p$y4Acpd%6d5lbDJIZW2Q6!`f&v5` zrx$j$E+GIpMJ;IdnqC?Yf@T~Acj4K8_7Ewk$c6F2CvtcAgtz8Rome~0#DDhUxYrMK z6$2S`SD~F>sG^G)Gfl{e#U&bt2NbYjln=I3T{OpCPX?prCYC;_RllSOr6aWvUsb8R z-r<1~B`b@s$o4{~!T-dCLnV%9UwV1oqh9G!bLFMxUh?`i1wnq%Sg7K*;l6V4$@&

+meUzo*Ub<4`IwHtc=p2!xCdifz8;^f6If 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℘=6z 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 WCFWJ;J?2l$pP9cfpEG|YJg6HH1AQG7syH99 zBy|f#z={upvI9vZ-U{*bKv-02dBe)YHdzw!yiYl5Tb9CxdG!!}^CVd75FCfh6#gH_C>A@V?6B1+lCZ32*isY9(WjE5$E5EMq_JLm~{A%abD zJQDrawiK+~=;AGsyU1WS>cB?|wMBGttc}+@gxi(I0;B$i0NiP9oN|boCWRRQ{jP6EUT;&{hD?-PMwizOFf|3*3r)4dHrLuuL20lE(M(s!EOcR*|X{ zoeLoOzZ6wZ*nY;O`nB;Ecf8FIxbgT?*PH=aPRRv?LXEp1VD&oMN_%jhP#KCQTeS@> z7U+mB-g}*yb!@a6^ft6sXVt1$4g#&m7_b`kR#akeJl0?9FGgm&!6a66IXniW)B1}N zu7Z*hsMi0IvncdDCg34rLAl%OsB+F!Dl1(8uRu$eTKpkfrLjTm(JP~K?tGyfDOE}_ zCa4EzIm(M-RrOq@8u>L3)=01GfuL6_1W*pO0^Djg0!@1NObuTP0DZE|XDR=~bEvyICQap_Wy#Jc4?i-pI2WP;ITObj_RvN*WtW0Jvf0#)#QCZb|}xmabNS zimOU@yn2W9=O3@%@-yJ-pMUr6P2Gt?l_Fp+vAgC^zadyS)v2|QpLEXN`%P#bI|1~vFbwyOVH_qgM;4I8^=@0dT{S~X5{tvV10 ztPZ%Zz4aN*F->6gxyvS-t504t``jfHT@{@)%j(Pv-HGF~)mvEG zl&$L7k9B0qo4M3c>F8c{t{k^R#>^Pc%wrZZOPMp7wag*rb|TLSR?|>*A=#KSl(A5Z z2g!8En`J{z{GU1<6WdEX7KmPm+IY$)n}`}{`be%g)rQ6EI9mt=j2y6`5T15zfHUGx zNM1n^VPv@oy_dLdC2r*ED)2>%5nc{#W^+Zk(8+dmOt-T|i0`qS zr!#g!#VSR}4I$thHoHm10zRN_tX=_C?P_HK%R*G(LIsh8W)H_|UqgZ>=yp47Iu;uHzGz zUO8J|6i|U{22beHRf3iy2GM%V{#HTE=r*xt@DdUfN^>C>g=bD(s)sCO=h=VgbRSZJ zVyIRSyE_#p2&|DeLLM0mKImhS3IL4-)-`Z-(_MT7f?6=3*V^FYjb6@N*`ir`g6>5q%f9*3G92fI%gwf*fg3p7)!1SOt2OfXPe=ogHbkxric`M>#p zXaQtnO2Bh|9Z0@#_BxBSg!&t2u@{I>-$Z6E?g`tO3z=(~yP3zBR8G>93l7T-hb$-b z1BvZq849B(A zqTKGr|MD39m*4Zd^pBB1KL6Y2{ogDfM~ziZ%2q0=p|Atryh(o7j6)m9&UXRk zzkd_Y1RY;fITw$&QXb^&-@h&SP%b$(1k%{alN2+BZs31$+u(nZcNh#4<~0+i3~Y+) z!=ofbB!(l5>WHp0Yb<25nzLS}>>bj38QVJPJ(sI+n(G6w@dH<{%O&;826pdB?+w04 zP3w|UlA6}l13$^&`rrd{!-ukM9hZr{OyntrRBJSy=)YvX2h)y(F9C9_7?4>)xjNQF zJSy<)=PSk+NYI!-UT%U75}>hRWO54AXPV%=mY&_scspfRv-G`LQ+f_epc`=UIl%OI zaa((N=U>~}(~}?Dc=zjIQp>zx^R6jmyBn;SGHb$t9(wX54aEQI z6az^taEpw&C|Wbl?sDOA*sD$hDn!LpOA;p2$prjSdO~^vcfwzkPPp1# z=|qvgDhN~73M)(ns}_UBaQ9y}NsYO;9j(;WN^p z^eLP%_o8iW_ix@>J9Be#Li#55_-^UVH4C0iKbD9~uK>lbUI*euzdvMjZ#cK^?nj>K znsVi@TpfECK03p5*SX!hW;Hr8-!LoBbTa{_0@q|Bjq@{NH594ziO3d+paJ=!m{K)o zb{x**jYWsheF!uWs%`dfg8Xz z=OypB`GQwkFIIQeZc;!{TE z2C4gU3>P{!BnWHCG9H1t%y$wHseK?TUzXd1Fo(a{+`nm4zhu}tqkc(2q^fyGfj!(Z z!)l&^2IVhtzxl}0)z_=Q{G)HZb@b{t;rmLlyH)y?{DJ;+`HPobwqoUFsI-66=4ri~ zq!;hn(pY0Q<7YJQuzNXpmi#fV8^37BrDqPlbiQyU-!&JQ$b?TwC2##y1;{;F_YCMjZkhq${n3s3G92pX^^GXkeps{-Q}&t(j%9fR&DBqp5Ar zob)Hsb%j2}3fvuF16X_9V6~!$+N4XL)PNO5E*6@t6$LTrdFh(KRG+!nYE_xgB(VP3 z&u2=PnCHyDesPCZ3y@QI0LW>Z+xU~ooDdf)NJC1s@4y4&YBDnoX z_plKY1~9PX;F2W=_oJ`oL%TA~DD9B@Kg_*(U=&5#Ki*Z{Jw5k*&tx+9)UwupAMQbKMcOch?o zj~K94`!59+ah5%4k60E%#%>mzu6sI0a8KEC-l8W(RJoFu7$4 zsYHSlKOr7ZSE7foSv{mG$W5CGY!(}!?@4-z`2jaxqx8`FF@7>oT^X!DA_OAt)8eFN z{YTNCFi|2Dk9<$ij>16hx1nyEUk*^%9yEYGU(n<8vk;lqO1rm+Sb z>!{?r_G&j$vorpi`txG?<+n_c$JAL1xm#^Jl;c_J@~+Dhb`H;*@~=f_ZOiMK7%OTENslu&GZiJOtMt-u;B8Rr2}A|3P= z6WiXng(%`gL-8_9?OBUp^wIbT=Gjl*$WANn;0t_51`L9cdPX8HlFjk6ufz+{F1!M; zPQ4bHz`;xW+7E_nOdy|Dw!GNDU>Ry zR;mJWg+!)S$Yj0W7>!U3bvmf-u-l;v*sPO-mV7{i4w|X3aOxm+??B1^?j$(JI8kZ4!CsDidDDW@(-wxtJU(< zPydjs%Kiw4Yo$Cd)k;!NfxiQ}ppXeFuqe4fCfksdHNEkwO#aFnGCVT>{?oS##kW5x z`M!UtRR8KzW&iDGtxWj&ZxR_Y!^LRp&w@h#Ggz-zj6wzfk}3@U0&g1>ZY259Wcm@D zl&MrH9sC=D-^(>>#rFUy)M^(pexuN872kkwlv*v4{#B*dtCp{V>sgIV;HCQ1-c`3k zy^7spk$cgJZu4zS2A_bTK8zg{fs|p~{x~KzL_%K!%>Vt0qu|uyWmyawzz5*^HOJ8n zs1x0Ad=0q%SFVqO!(hho%=K}W88_xGQ6J;3F@1LpxBz(rF1S2=N{UzbG(etfVC;;K znTp5GN<4P9W14iXyv`!%Jj9kt!>!4jK; zDj25r_qf{lfH?~_01^u(a>V34ivNd<0!xyHNG=jS=p$pYj6deg=?73w=5#u@g0*rb zdQk~x5?iwr1Cb|ERe6<5tA;>QUvhEXM|WR4L8Gz)Ue3v;j#bNGS-jD2RjCx&CSXzO zWyBa>8Apz?v5{e5lSYM$LlG*JVEy)e(9E|)9OW*!#=5elM9pzqsfaBD!<^%6L_4yS zph9_4&oRWH?IZ(7+g(Db885B?2`Wb z>%zgeAcythoDOzf-b5k5=5QRq&zf<2q~^yQm?<8#c-+!*h1CfFb4EWCztNcA_H7I% z0%(j|KN=yzbsVOUeyl_Td}T$%H5&m|C%l~xw>TS#{%T9lZ@T4BQeYv+0-jACx}^!d zJ#i)vA%{yZfmbZQ0`h?4AmnFG{0+^xn{-2pb&0kyP+7+YXkeMjQ|RP zt$8jl=W(Su$P4Vk7T{~_{@oz-_3*izlEuA?lPDInppP4$dhRzg!`~JxxKS`jISD7o zxEmKN06Jh_xbTo*;8>iG@(^y5AJ7*W9hrgkFQ>Y|zqJMMic<8`jX4d1>0fM2t=EW5lm`?po_c8w+3HhQhYurT!wumYvt(>5Vn zbG|y|G2!1xd32s=+yXdJUCQ{YRp63+Og9mJv>xulJn3&JH|R#)-Q*1HV?|WD=9Ix6sWFTl?b0?KVdp7?Dick)8Ty z?ALi6@U1GC7OKtmo8}2q#%pB1fjrsM?iJ2VY zJMy+IWMQ!7HZ6EK+puYqHfA*Ox>>Vyyh;C*!#IAtJ{E+AvN8iS7=H_ODw3L0J;asd z?Nn}jyCyZndI(%|$RyF}qNWSca~GPTTFqYLl)fnj=#LsJ_Es39dfj>YbmX^=)3aqm ze5TbX8fGN?>r)~1LX7B$;!G4eHcn}bkq=Di-{{7k0 z>tDX9xV6n$KY!MW&hZZ5uy%hNFo;+*Avnf5EZ? z{dl9jutXPKe)*?B088HZ09}o~f1&fvZ-;`MquoFKvHQ?Qz$ruSxueHVoH^-G8_cMz8@4Ko{WSAsGl{1kQNvrsD&cN6{J6PQ}QQL|j6@2PdHi(Id}3 z%SLeMpXk96K#M1@A9jL~sav_%pGA)VRq9qY;_Z9gRAB0R-Ror|IDjL-QnUoj{lvd% zQ{RVR&%>Ww{OF^PPWc4PMN824n*j7b4ECUF^HU$^T2ddYRM2b5h2C5X^kPo_V@n3F z6<35`i~Hqxu}@N|ozIgG=?+IffCtgL*W;UjE}n_DLIy9~#YfUoJRze4=JSePwWLcg z`Q~;`!}bmVkiYAjC6kr6teQ5W8H66X4OnjmCttf`{Uvj?b;>~_;v+^x3r5%14;#I# z{({@@xbX5BQyN;zT8CHUkE(AN*0!{6-CeM+=*4xnd=2D(y>-bGu~7bsn<}q6b|d=c zW{DO3u9(-uq+;uXc;#?dP9QV9izTwc?%}Mg4qaPIal=`cB8F#Ki76w+jG7Dc+Tm3 zZX#>|>&1vy(yn6JSEZuGP$0l*1t&dG=4S{#fxDK7{6kSQrkT24x{eBUh*7hJ^m5;DDBsF4*KY$ zMNYLlLpk(Dqb{pFXHg3Ct@yjNiF)cZn;7F z-t#<=<|N8J{IH?nc_V7I+K^M@P^sm)g?Vb#ywFIa0fbD(8xMOzEN33&bj~ekGZ?bH z#$wNe(L>Cp>S0#SomZNxR;dMfPT{E1#{3ee0k9vVC8v&}hyT6}?tdSw!y`l*nX~4a zeYXt>hqT!`ZDh;xS*|QwsmCsntk5;t9VJWM*^fO^w9M-X4AJRUsE1}{l^-~oD9ko` zblT|pHS4?Pw%6!%DmKg85N;hlXWr%^D1~Nyx%U^)Ch|SBuPO05H-~9urZ9_`3z$oo zYl**&pr3e7z<+pAC*WgH8@EUVqIONJ7=>so9*V^+F;*akToR(XW5Hc89t;t!ZPG2t zU3?7V3~)A>P^OcGVtz)8kD~4+ejrXBp-+*nzzi^k;Y8z@Gt}VO1#hAo7F1>x)bIUJ zSD*T<-R!8CF{8p|X!G&X$_40#H_PjFAMUL$SogJB{Z;m$qZJcN$|jeUOsqIMDElk5 z`fE?a(W;J;f<*--9aTpgP+omGNgni7EC8LHc1DH6-0t_a8C(_S3SW@Cq`dwu&w6Oqaq9^wdRe>Yn?pera}6D$mRdg54vf@WEwT4<)%jc4|4er`o^1D zV6Xuy#^v2vo>%U<=Z)0eXwJi)vTEnt#a*+U<>j8B2j93eZ=3?+SL3;plx+LJ(!xXM z)6PG=mnAS-%=Has<})jZc4NRuc8MclHhnh7qY__6?cPMt|H*;Ci;!gpA;WY95{elj zbk^_@{)Uf=xbb0gB`oKD&#n_5)UnS8w|4@?ZkJ zR5G+Q+*Ar@4crp@yrC`u_Kh7gF%q~aD{J|<@H`ExYm8diz?{NCKJBqV2{oT>Es$!K zjIugqXu2Z~wiH<`C1`C}c7dtwQ@EVdW+W0IBZGQUr^qb4N$c@a)#NByJVev`_?9s65v}@A zgs9pFOcd2Bs*6Ou6tSPc^W!@a6LA%$Gp04a#rY4m-+IG6S65Y6tzW+esQmfbJ?nEq zg+s=T8&Zh&4PLjT{?S2oL#I8xtFvtec=ThA`DcM-`aHLCMoCF<G4Wu1Ko>d3-Xj;tyAE27c?Z@4VK)5J8A|C!@K4+o3MPYcWI)H* zOV9K@TXBlvUc}!hi(&&hiAf5v5U1EM6n2tm?~1@eM956RkBMRh zWnC52=RtjX9wbQ3X+_yMffgZ_+mdXewNAz{Fr~RF zfzN63bB!*TA-GiRY0dcdeP3K+qRXqRfoOV zMkR>rS#HGmkY8rfnG{-pnXIZ|#`d@ra(v>u=!($^jZ~eG=HA=pYg|31-k7bZGIDYV zOV+A*PO2Z43pkFozz+-_W2M$ytK13ls~h5`Smns3nXQ$4`yh3h67W1&{_>*y1p(7{qO{o|I?1j<}1v4xPAuq=T3~aaTG+x3f{@-{d>OSMGAoJGrJAnc4GBEJHsehn%^;v3}!HjYOEbEgb zedyJXPR;?X>@?&({q{ehqbBr%q;+_j;%j8tX(a5p1q2x5{nOOJz_# zZ61F7O`OY+hD%+c9HL7|JaccFy>#92Yf!&7UuQ;t?X>=igRCpmP)qr6Z4o%bnrt)b z6FFLbmBB7@>(ZT3l>; zRW~q22)7$S9tIh=Pk4mU)f>?|HyOy*o`=vPLs_T@o<9Z6SF)$zNMXSP1y;Mapi=7r zKov+$390}HXcOTao3;38QT|I-f zms>9F8@mAZFlII+?h? zo%T&nv?+-95Zs0YXAe_yJdXxQ=XB$EOr3bV65?ZA_qHdWL_a?X(KVAd;NZ3mlfgVl z;ND0OT>~MQHyJV{$&=fZ=7-0TTjL%!E5*lf$ciJ+7^?v$$}oP>1~!J5Oy-CvO2$)- zka3O|rv|a-nDX(=MIB>m{sG}XYQ}V2bkPGF;6G~HaiF8U_8)M=1K^^8tWxTM4V7!P zYVF#}4G-WXf_81iMGst5u~sW|T*USasqFT>0oBz)dRy&u`iYI(v69D z3|I)xo`xbIoLuAW4a%5gHgT*h7(Hp&ZbTVyMd^EqQSc@^N^ zqJK8x3==m#dU@s@z(sIhCnOApMo^G`5a;apo*rd1=1H3O;q}3n;s#D#*!5of<3;{SDWP|L*=pcWt42WC2 zZ_W>O7w`W*iatf3M!(;`z4nJW`&^)D=gL(-uUfeiG{HCDd=ovuCC{_K?H&4RFFT+9^?aKYEYw#=g0~w_z->;?o_4}S^8P8E*hguHLfG$pVRuWym<4_=ai4!mt6Lf6avqTR=aw8{Z#--9dZMjxa$!Az0y81m0G>#FYFFtI+p8 zfjR{L|cdp z0X#tk^>x4k$VQ|<&yqg}0%+;}!#AUQm;e(a$z?j}az zJ!6)z3)b>@)aym-yEsd?{nP#u4Al983s}-~fJqmRnc4XpAKZxlz|R{dPT06{!o&@q zCPww%(O#85X~?9=1m{@T=#X%BpRkm#vor>WM26K2f8m1OF$)`3%^Nw615%FwxbdUr zt*W2j-g|*9FT`osse`z$2Te7F@>pm4nltVI}S9xkD2C? z=!y5=N6Qy;Bhg6kAo-=Fh;{V-_5Js`yZRJpBtBmZJYpZ7a0>8u@hQ9#%*Rw~Br}^( zDoC1|GEw3xm;!i)BpSd`yT%~C#*-1*;sRs>3fG3K``s8Y#pKNpTLCeRqSzptF2bLGAm+ zeVpVOwhs=*hxu0Gvj%@X%H`=O%wzP7AK_uCkkF$u3THq%c%mGG$WDHWT59kN!c5cY zA7=7`WkE^uB%|P8#XMbC>xpD*7huRkr!aTNGW0p7e?Ol7`Vwrn2qerUdb>T@LGFWI zs;kN+lK9a)MkTyU@fNZ%Z5xgGvh=7m8RK5OSV>#a#EHHi1p=e^S3WOsMoignJh#wz z1Lk0GIE@Q-I-WD;?767zqIs}oeCwV)Tjfd|sgWH#bm*XrBz)qv*Pb8=i548So1t>dfxA+5 zOf%EY%w!fa7vjNrmQOh5e|RR?kRqyGI5seDAl99BfDZOR9v38=iCzSFm7b7zVw(qE zoi~zgZkgAD|4`=nj5!{Uk2LDlma>y{=bXpK=mPO+@&{g}C-myTtMf*tlHm02Jv=4e z>ZY*N;(7z!O5<4OBtz0k$dP!&JH_zdO9-ysU@8ZJ9v^|pBk%##2#N?Ms{nO>LkS2` zvJhQ58GRwV2xMs!#WNb|m?`~UZyt}l1-2m1#UUTE^_r}#%%}Iu_~4dpbMNn(6SXP; z%WJ=e+^J*MC}WL0Hh z3?9e^@#0S+KsFZF8}uYb2DB{kZxa-C5A@)u#{lG=sA1y|O1+W2rL<+#ksR)ipZ*=> z`%q0TVz_y;2cZvbqd9{X%r*J=6>O&+^R9EiQBbD!p#v{I2V%ha(dXzMa5*}bGN5Jf zS~isGMjdE9EP)D82pn3Q-H7Ijdm}Q@ZbZXa87E%jP(Sp*7b81}aSPAlzA114>K4cl z0c^zJ+JtbEP7I z{sloCXl~NkR}bBOKi~tm&ASa=Gr0A_>jBtP608o5YcgAgFWr0)?kX)PEozEsKzFj< z{PTUjw|UKV$(FKTXm^t0BlHF?lgZuk_*xK(sYXpk!zVPY$wClrN^O9fwT{(O=M1&@ zO)j@bafKJGowcCR<~5l;z$QHqOFi6a9?m}3OEcqX-?a9(4Y8KUXCh1juk<@GC78=B zW7aX(GmkSbGG8z!fCAWXn^uG2paWb8b`mLc#yJOG90s92E`fSWObqW5E*Ygr_m1?b6Si4Z8J%rd(U z;5P@!4NF{<{8BkOUXGIT$Ec8(cuV%-Y)BP|Bkhcp7r7TAZ;G6L3(m!yz8MltifF!P zzx0d;(l;~r1h0>Xe26r_NQIMevM`R5&DCItv{UdLe4lB_Yv(?-WAx}9$L3v|+%k3A z%^N09+PHDjvH$4ep05>OQS4+1>cd(CEp z-fY$zz^&DM6WDIX{Eb0>(&D#R{M(7nBuPhP?tp{zAqY+$b7k4w8g;f+<8paiSsvGI zSy?(eaWvx8JXox@*eph+*<*JVtE|~Jqsr#V@@$r>REClgm(y8nnw=F4xjbgI-sBZ# z`?pw>E?1UZDwF9$o-Bh}uhUyBdV^MNbb5}vTpCAKD3s+?Z?h<~vPd%N#;hz&c_`$} zQja7W!;o;KkYhPWu4oBKspk$HK-}G9aZ}AD%`$c&r~%dOGtnQ>+cRf^0#JD2Li9WI zy9Ff0ytz0<-}@}9GpbZZjY@?oAS>qqX$2Ku5VYF#2J3itwivMaZRC^%I9duQwhvLd zC1t>c7>n;&tw!zkX1~9g{2B*ojXAYBMypo>Ik`q*Ra=c764a?JI;+|ym}?xlxsICf zWjWdIkio3+DBU6ae2b5Ba`-{5RRyd;tJ137naOHh=Jw9UbwiA~)wxENd@<4@kd}h{ zBi|fSU24F6F_099{^=<#kYj262umG)8)<+ihVZ(K zb9g?zha5XSq^P4%5#ySUD!P}PR`iKx1_jWmffDkb)BHk!dZIVP$>>Y}K!j>uk=I4f z*);?e{;X=9uEyz?{E#ph>rS-K8Z~X&@WN_WeLYCz#{1P7l{~htzKXhcP%4RPgJ_S7#j7$I{ zzRD>u%Jpik$x#r9=lF89Dv8o;bQI(yYH~*e>cb_2f+LKx_smW`1~oYydp7MV3Buo# zmoAWkaXmfgE?N1+^5GTepcsqb z5U)l@F_W0%%x9Q_^FRjtpbpGn7(*lk;)EDux)!iREoFrKh6CaWh$lW0B2L`}U&!PO z`2?Q<&vFq<92nJ{H;4&hNWhG~C5|66`E(JJm|4FOmkv*i7E0?e+aC`TS&R$DGLbr; zDMbD#DI{|*y%PG@xbz18c})0olb=9sknpp(r;&+5#7U2nLK`K53uNIHKIs~yC}Fxq zN8`$3MJ$c95UJ3BViE*5u>%vtyCM-)+C=v7%`q2<6 z2GtzJzKGM-iLRMY2F@S4rdt)*B=>7Mv*}Ip2TkKm)ZE@QNhGj;WC6@z> zC6PN;W-GV-#rx>PwxgC4gLCe&mZo;)=f7aSbEMb}*G61N;uiG#?DDrPjem=U(am6d zyzGyrs_gruQV!}WvhS!)6 z33-}qrB34TXHA~Ic;<3;+@jRQqehj+V}W1{!n< zfX5$Cy=`k9BcGyXSydO^WMU^_{fnrKe{tE@y9S5-|=&6&wb$6KwvmK>SPn-wecm}UZv3*2GF z*B)0?=F^zv!VI7RS*exyt>yTw@J{p(ph>M9S83DAg`hu_S7Fo2fFz)v?W?q@lz>+R zTqM%SNniu|@zqzWtG8WRg{iAtmt_d%yo0|cbL0};>KJQrA~;7oV=!}R*Hs;B|YlgJHAq;eKc{|xXFxhH4Qu&O4jQ7O{` zlUydhe!o`6!{uAKE~!cmy2{g!s8*i)2+(p`a1T%`P$%SN24L`+@#`$$lQX7bB4g>F zi#1G`8H#7(Nz5WhLM7ZU?~Bn{n9jTDX;(-iauZ%QNT=O+48(m=4I4?D zQHly(Je`0s@zq5LuB3s^;MB@Bltz<`pI*Sz8H5cBIjUoN@`37k42y5tN@QL zk%S{BzG-OmyMvVt`ax|Yic0DSg|bVs+OqXSJ4cs9@M5cTlfFn-TM!)PE_N&Pz$F@$ zyI3yYvfo~=E#AK$E-B0zl88#T?)SUfBQ>a?sG+E+fqkGPJhgLaU3|gpDs9D(e4~Z` z1)jM|x?pg?C+l&IoAGs3y-j6S+dW>UhrFY=fa# z4Ue4h;aEnE*Tg?c7&^`gvXb6H8i>e)LwvZ5j%6~-05gFpA!uwd;-9LPBW@%z!Y4d= zS%|8=#9Z@jOBqV+e|sMQj8fh|* zyhpZ8xpra+*PW^8KKRpZHA`#2pfSH%(Ff9%1Am9VbgZhIu_%I)C?QsS)003u9bM1e z(fL~|-j8w2C;Rug;zV2zJz7T_VWQ@8klzRIlz79XQYpM-Xk&jLZRvoROL)5LN3BL%NldqL2QEF#Fvq z8HBQZINaCLe!;4C_Hp`}+XH1~f!p;1u#5|+rX$fsAdo|h2J#kvhc*Z1Yai`WY9xtscp^*emgW@R;fGcO%*A`B#TQ{R-;q=bKV`16w3wJe3 z48pWxCtr4G>WxRXeztA=jv!P38NZsB@^CG0b2}?L8cNVD=);UA{O3m$c4@8@K>3{B zZPbq+_0I=7z#Z_!qIETkZkyh{=Kd#Vn&=7{RFo=}Dp~tPk|ihy&g1J)N59?{mFxM4Oph^ZiA|7E1IT_p z@d(0)48$vDdeffxyO4npFi9GZP5pG9T>b~ST|Pf`YasgSDJGE&z)ADPxOtyU>3bd~ zx>MZ}<{0|-luzd2$Un$w+GGMSuSRKF8aMCLsV5UOZFgFa4AFha+_aAlfyv0)L5ww-yz)`dubV$m+{?IfJbe#hYGwQJ79sSk&szGMjTqnsXna zckwe_tqI~6LHwU+?doNQmPeZnPOsAtoCyEpMUrglI2~4pS* zULf$Y9si`vFAOFJfH{!_-7tZJCzBl0mxQ?QrMmllqjb}GP>W|m2DAUv>l3DG5rc>L z0m0v&)3XfpEAoGl7THda({YXoN{e zQ)Lo~X+rw6za@d;#xtFSlO(vsoTxJ_2@&tg{h%eHjR>B*pr{T_oS=wk+Y$=uN_IJY zE@%;gA<9VdO1a!s<`00uf819!e`HIz!d0qpS9Ppy>%4EyI|q-9E_aO4WPvT{)Kx$2 z7=Pu9^T%H?cYI}4UZuVBlF=)Ib#3E2hL+NDs1K!34D;~x@}XBk(t3fj(&EUCtsYv(JQt|;C&XU)*kuE%GAMUO69;;=4m z9eUrY`FAW_W13busiHCD*a^Ql)8K(k@9~Nlq7mjy&%1si*!K_>Cc%R*^;%59h@pcP z_Yw~#gIqGL$10v!suhbitl7D94cI*IsY~A?b6bkZ%yKLVLF?%UGN*~?U+6XTuZg2C z1-GBY9}KW3WGGrbV+G>dVY)Pc>sRZ?OW*$Y%;|qO_uv_C1Sp+#hKIQFjKWa*PgFec ziCAA+F?U2zx$t+cBU>R7Eg2i32xjwvM=)DB3d&Dx52!yl!Z)}v32_r2W$_T1MoGWH zF=Wj~-P1&L`k`Bo9oxF%ft#PuSAb=}jodTmn|S`%*6N!3 zG;*`X`SO>B}jsY#(pd+MtY1u zF=_TukZf}IW*1rg-VdLWMx@U(p6Lhm*hB|InLCi)UC;Ab8|E)9^s^}rQn5;tE;P5 zk3^Mo=)AB4_q|{6yii221sHM2({G2@&?1gi#6wV^s2PDr+{p5nIkGbb$ihHWqQre5 zB+`#6Kp9Ryfeym7gnumTPc`_%VLyD@52Tj9JQ8Mib)XOKJ%avtzlD95MD(rf0HJ%g z{&?R!up;c=qTBKzdgJz=(ZZQek-J;*H7LE~C$MkkF@G5Tr703=ii{gKChYTvFTdk{ z^!AZVc<%lG09$?Gv14yXZ+x@`$lnk9=@lsbXbbxJ{V=hsP@H18pVHsff&2d|iYd-o z^ijMvq_)yUxM~DT$wDCZBrJ7KO*XH{ydq)KTUs$)8L>w3i-HOl7Y|eTBoUGvj}sG) z4u&MYwCgp@mD$6;w~XtM8hnUHd-ZE=G@=!0!f?_jR>O^K4KM*ljb=1UV0;edz1^$$#4}yV^R^ z-8v%?LkDx~uDs>0I|0luY0;NP6}-z^<}`2|G#LC&yV+W_V{rBgmr@Dk$DyE(4!eG| z*OO4r(4AkE6$X72t_xJk_Cz>u;RWfvtf9Kf| zEswtOQjJuphjn$FMkTF&@vS#stdXkKyvJS7snxRT7uZ)%60((KsPUKv zNDmJ1=txI8^*F2snaMum*)f*6V0)-<$-`af2O7W&_BXeGz6~U|eZC!)kZT+Xv|Wd3 zfV~1~X__Cp4)-QWh{wzFZJ&c-eOKV8^lDaI#50Gx*e=lqgd1Q3QcE>>n6tHGc@e8x z$N*O3xXi8dT?L~3iaPXO8gKn9jwah-eZ}f@;)4U3>!aHmozBM1(Rx!Hv+h%^PE*Y6 zv`)v|ecS{`G(^!a(FPpMu6rihuwh4M@0*=Fc64$jojc&8%SkTefKEp1%gXAbC(Y(B zN!*wH=hfFm>+7Rvj>+_JUOhZ``sp15eHTJJH4`mDj{|tff7v;9g;${uuKF6p(J?d> z9RqQ&5iYoEbzfrjU3aZ!yI0=@o`a#jt1G-=ycd+#1F^*uyGSiuP%wlFa zvlg!cw=$P7S2FvV>zTvMEzIrAUCjN=PTw!RS9hVHr?-38|9^ZF(M_@?IAlPWE|1Fe4==Ao~&1@L~rC3G%x zA9}A2tkKq^v0#L>uZsuc&`u7Il06CZ>cMAkzJmkOyIt3U+)qB?UVlcyuFEfbp)ss=;ec;@|%yP=$GLyLuJpW`RIA{EQn}!qt8Do06TgiZU_@@FR&JH zs1zLqKYxP0?7IYg0UUq%OB0wc=kRCFNnPK@it-YQ|4%UQ7~1{&2Lt}r0~GNd+XBA? zosVtl``4DoxHlh26d`9(qP~#r*zydRbFyLU(@$^pKMd|980N@WG)Sa3Tkv?hh>=sz z-b5b5F)U$RFyF#swijREMJCWQ0r7$-NO3VHE)mS^ZRmH%yT6F?o7(+L&fI2WUM~yy2i8XWCH=ez3`+>z^_-m%tdVawLC<{G1Vf>q5`s&IAL2hB^a*?NDPHb@!n-&FUPP;!Il<%jN& z3|u>(+Z-;nwy_ zD<sf`r0GmISYA_kG>Vp&6E1= zEhhiZ<@3=F4wf zHfLlZ$a`vE-&N}E_uL9UGPzu)l#e8Y269Y&OOD`PazyPkynu%Hf6^)?)fuAv?ZBSwGz>GM)cEWqMq73)K^;}Q_4h{3Z{msX9hFFFkK#v zDf0wo3Z~9;nT5H8%m<*z^a65I!GKKat2UAkffYBM9sk3~75y0pQad(1{`jWNk3ELo4^=l-hq|WQ+3Z2nvf|~wc`zs#k!o0VDds7Jz_yaL?^+UnUG`evXH_?(wtM(?gzv3J1V<=$eC+FRr$ zKb5D*>n-vWPc8Bmk>8YJZxQ#F|Ez!Lo>42#j9D?te@348&-d77v9#bKf3A!N22*LI zE>CVQ$Sx`tfWm09O3ao@pkWoP1j;Ri8UF$+@c7$J@gDNdTEm{tI4|u+mM|LA4)xq{ zLl28?=s9$#2lUhx{_wwb!&?_q#U_&3bPv?{-Snrs~<~r;Xb_-3}bb*S>SZmD?`9b>f_D zo2I$u>WtaCKOL%ESQD0NOtz{AraptX3ijx0&+j?-R($f>t=ra4jz4zo!6%w)xGaN7 zZH;y;TKVq9uLJG)owwhybNq#~rzHa}qkg3E(3^pRfJtL;3>wz^bRbKU=4FZhabio5 zPcWjW3Ip{?nFXk-SQVfkBLs^igJsX9&j#vYf%+A|A0b2PYC)XM$W&Y$S%!1OK`)V7 zP#?ZDkor>8As1E2Uv=AhzX1YoWv?Mg`WSoA9Dqk&6U8Q4n?}J2fIDIjvS;Q(0;z$D z;3cvO$%w!q>L!hyl)K&lMS{wF&0J(wwyvKlZKE)VFe%}9i-9?;RCepEF z+gukRZbnT60+je@V0EWc|Jo~oDZod`G$R=BM@~*`Z`a54?d>@H9}gtaf4kp)vT#7E z#2<7<*O8>S4FFR>tiO~z;xg*~U>KOwe|;TD0Ak{UaDNdqH2kOEf4O@Bx!cxeFtjB= z094v*A>GD&;kH^aA>`9^Y*HubFUm5ppv#{`ib9mqE;GhVdA1OByr)q@6%| z)4m`@H;yvmfSPD$u{aAtJa~nCR>z4Uy~w z421G=P16OZFuiGRSKQnqVg9R@qRzXvNoAzAL zxBr4YvaF)f(TVSx;d6h`4feYWT#Kp~xeDC=!MZ;@Cpg}1tDBIg1>MO6F_B6nVVHwb z1B3=CY#E~9O5Lj8?%@;{*FIh6({$V1a zH0G37R0Qf9 zAovdU+l0HI#S4$ctwdWI<-d*pFR7o(o!29%IvTgJU+i`Ou0j zS6u$eFK@4Sz=B@z8TGoWiVLKx%LbF$E7aXIHNH{jRWgZI=q?C+;~uUwk#&c-V`B6vS`wzxg*--u80J($NG zMP@>eQ4QTiP{h+P6D1opC%8D`37rCKP!mR0lvNGXIO*5ROV1d5^1|1DLMMNE{lbQo zYlqkiI6m86*;$dJ0c^>P&Ck63%;p&-EYRdsbXMB4d9J`dWbMiZlnmMvqKOl3z2+!L zMw>gSudBM*HQCuUv+GJn#e7Pf70yuZuv)a7BHQOO8eRTuC8xGp9CDl!&QIx!jbcY3 z;!rFp?njVcw7D7FA^OCE{XT0PRC~%pApArO%a8|ue+LkKxfm>Ffag2{Oe+x-ct#+* z37#}YB(&7BM1anKQeMunsVntm`qUM?7A!OS_@<{NUbD$7*;B5Ep}FYtrBa`vP_gOv z5?_IrUx_BnMLo5fmbUu+txGr6_8`beWGt7uL$8Muq26Hvw$yB+-EIV5boszNS04CC zXM}t%YJ>L~?G6(vIdJ8NzvK@~`2C4t`M(ez4xVDTB;QAEYZzc;1YIQ4tNR6Y{dl{& zA^@rPSx)aKdqw!iCDHru_nZce5rg~xxk;(m`RTU1K;C_QjM(GI-VfXT5ju+d(txC* zIuWP659kkE{N)~vVGsJ7Ufj(gPYv7$CANTP`h=w3kfFB-(hXn>NCV+S#IiA3zS|z8 zFF>0&Ogiw+-`+Ve37=NIdOg^Hda1B-Zl-AH1dqQq64jO@Xw&ttt`bv|hcG@Fyj z({<_BMd1i-t`TkL^d{VdrvK7}(I7)L&M?IxDmyMhH7F$!B$-09wO1a&jVdBG(ASE= z_tE=DuDrEQV$cmXNejBa=`N6F)#wb8y3{SFE5ZGKDEj;Dq?NZ0c$5aWTEUQyZU?5J zokz3|xTx%ku#FQ31HxD)9Pyaw_u z>V_tySNC=f{93Tzwsavu5BcBJjeNU!Na%+gHk~1D&rAmKex%}<`^-k*f4vd#N8V62 zTV|J+$boGBQhEmyAvd|XZNa$ojfoXEfIT<-FI$OpgO_iJE|mjmfz%;i(RDHH^OVKlcxy7>GHG+~`2)_2YNnef)J0>bnZFF5N5UUU%Kx z6?A5WCoWmD<`S4VN@{VG-eA8!fWEs=dj=^wmmnPng$C1#6($4vW9pSHV9}N>XfOJ? z;?~c4Zm$rV95dvcX4EJR>H}%oP;qKDviSB8I!^1N_&Q{Pi7j+l?C# zN1z{Z1lKvRuTA?d`6%kMXMOODWbVx$ui5^$eHw8LCI+S&K25d)$DzZFc*YloY{Xs&*B)|hLZHY#&Fz*lbLz{r44bP`Avk0x*HLjlJ-5y z>cxXv();@RoECSv;m#xV_>G-JvRq96xZ*6#A7Vg)?W*_-T#F|2U7nvr8r`!bE7-$TR2Dk@tx4 z_q_Ap=hb(2$?Z6yZ1<=$=hu<0K^`FVJ)J~ zbx1 zxENO$eIVXADpEl_58Vgy`rAj0JSx7W@7r_cRr+m+d`RRW`+?vXvLe7NZ$BGA*hN|r z{DSnyPYDBBmokW{>#0uoEHYE2dr9imv)+jbY?32*!UViM&5Sbr-I-{4G3Z1;AG!T> zZ^b7tV9tcm)A9Jk48URY5Ae0Ai^PfIYa~up2?@Y(MAr`-cegJb_Mr=2bbV3WxUO!+ zj+ISE+mPjd8v(lYSRZ=vxcf2_x$Q&P<(- zdV?XggcwKRm+IrE#qOdmI7fx16xdwcwJlq;G}KR@si`j;)s<}yP~WK_PHy?fC!m(45Nh7NZ=e%GcE ziSp1@`7`s|hJ|_g!R*OjfQhd9dF^{f*EXE2t!odDo40Cy@x9NY)QbgeCHXSvL{`(b zaB)U1y$-kC#dtkYOAt#K5t)SQp3`-9Ty#ffrrL;rR*2#Z;Rtph&aDtP>oYK91nyEDxKCK<~ z;|-Xs1IsIG*S>%_p=mo7t$hWCJ7m1vlOKxK7VharSkJsXysb7~g{+NgtWS}zQ5N-v$ zVu^dA9v%Mmn<@-%v=s6QI|BPzZO`AOX6t>xvdC#?f6#J_7!FhrM{{E`%u<{El~ zb7w+OOqp^Mfgxm0AN%(mDHeA=v7BMtK`p@*1Zfs_fEGz+9`IzeN2r5yQ%0D?M=~oI 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�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